From e8c77ae0bb035e344e94288374c776a825532bb9 Mon Sep 17 00:00:00 2001 From: Alexandru Stefan Date: Wed, 3 Nov 2021 11:42:25 +0200 Subject: [PATCH 1/6] added new search engine lib, created new indexes, display search results --- Desktop/UI/Globals.js | 7 +- .../externalScripts/flexsearch.bundle.js | 33 + Platform/WebServer/index.html | 1 + PlatformRoot.js | 4 +- .../UI/Spaces/Docs-Space/SearchEngine.js | 179 +- .../UI/Spaces/Docs-Space/SearchResultsPage.js | 54 +- package-lock.json | 7954 +---------------- package.json | 1 + 8 files changed, 255 insertions(+), 7978 deletions(-) create mode 100644 Platform/WebServer/externalScripts/flexsearch.bundle.js diff --git a/Desktop/UI/Globals.js b/Desktop/UI/Globals.js index 2bce6ff39..4fcff6c27 100644 --- a/Desktop/UI/Globals.js +++ b/Desktop/UI/Globals.js @@ -7,7 +7,12 @@ let UI = { running: {} } -let SA = { projects: {} } +let SA = { + projects: {} , + nodeModules: { + flexSearch: require("flexsearch") + } +} /* We will use this to load functions originally intended for Nodejs */ diff --git a/Platform/WebServer/externalScripts/flexsearch.bundle.js b/Platform/WebServer/externalScripts/flexsearch.bundle.js new file mode 100644 index 000000000..dd0c08309 --- /dev/null +++ b/Platform/WebServer/externalScripts/flexsearch.bundle.js @@ -0,0 +1,33 @@ +/**! + * FlexSearch.js v0.7.2 (Bundle) + * Copyright 2018-2021 Nextapps GmbH + * Author: Thomas Wilkerling + * Licence: Apache-2.0 + * https://github.com/nextapps-de/flexsearch + */ +(function _f(self){'use strict';try{if(module)self=module}catch(e){}self._factory=_f;var t;function u(a){return"undefined"!==typeof a?a:!0}function aa(a){const b=Array(a);for(let c=0;c=this.B&&(w||!n[l])){var f=L(q,d,r),g="";switch(this.G){case "full":if(3f;h--)if(h-f>=this.B){var k=L(q,d,r,e,f);g=l.substring(f,h);M(this,n,g,k,a,c)}break}case "reverse":if(2=this.B&&M(this,n, +g,L(q,d,r,e,h),a,c);g=""}case "forward":if(1=this.B&&M(this,n,g,f,a,c);break}default:if(this.C&&(f=Math.min(f/this.C(b,l,r)|0,q-1)),M(this,n,l,f,a,c),w&&1=this.B&&!e[l]){e[l]=1;const p=this.l&&l>f;M(this,m,p?f:l,L(g+(d/2>g?0:1),d,r,h-1,k-1),a,c,p?l:f)}}}}this.m||(this.register[a]=1)}}return this}; +function L(a,b,c,d,e){return c&&1=this.B&&!c[q])if(this.s||f||this.map[q])k[w++]=q,c[q]=1;else return d;a=k;e=a.length}if(!e)return d;b||(b=100);h=this.depth&&1=d)))break;if(n){if(f)return ta(k,d,0);b[b.length]=k;return}}return!c&&k}function ta(a,b,c){a=1===a.length?a[0]:[].concat.apply([],a);return c||a.length>b?a.slice(c,c+b):a} +function ua(a,b,c,d){c?(d=d&&b>c,a=(a=a[d?b:c])&&a[d?c:b]):a=a[b];return a}t.contain=function(a){return!!this.register[a]};t.update=function(a,b){return this.remove(a).add(a,b)}; +t.remove=function(a,b){const c=this.register[a];if(c){if(this.m)for(let d=0,e;db||c)e=e.slice(c,c+b);d&&(e=za.call(this,e));return{tag:a,result:e}}}function za(a){const b=Array(a.length);for(let c=0,d;c +