@ibgib/space-gib 0.0.22 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/PRIVACY_POLICY.md +144 -0
- package/dist/client/bootstrap.mjs +36 -43
- package/dist/client/chunk-7LVERIWN.mjs +8 -0
- package/dist/client/chunk-JT6UUKP5.mjs +27 -0
- package/dist/client/{chunk-O6EUMDNJ.mjs → chunk-PJDAAEMZ.mjs} +339 -49
- package/dist/client/index.html +1 -1
- package/dist/client/index.mjs +40 -40
- package/dist/client/script.mjs +1 -1
- package/dist/server/server.mjs +100 -91
- package/generate-privacy-html.js +5 -0
- package/package.json +6 -6
- package/src/client/AUTO-GENERATED-version.mts +1 -1
- package/src/client/PRIVACY_POLICY.md +144 -0
- package/src/client/bootstrap.mts +1 -1
- package/src/client/dev-tools/vcs-workspace.mts +16 -4
- package/src/client/index.html +1 -1
- package/src/client/ui/shell/space-gib-shell-service.mts +61 -11
- package/src/server/server.mts +1 -1
- package/dist/client/chunk-772Z4Q4C.mjs +0 -1
- package/dist/client/chunk-XZM4L3U6.mjs +0 -25
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{F as j,Va as G,a as m,j as E,ka as y,la as A,lc as T,qd as C,w as I,wd as O,xd as D}from"./chunk-JT6UUKP5.mjs";var P={undefined:"undefined",preparing:"preparing",started:"started",inserted:"inserted",updated:"updated",merged_dna:"merged_dna",merged_state:"merged_state",already_synced:"already_synced",completed:"completed"},V={...A},Q={...V,sync:"sync"};var N=" ";var q=!1;function F({sagaId:b,statusCode:e,spaceType:t,spaceSubtype:a,delimiter:o}){let n=`[${F.name}]`;try{if(!b)throw new Error("sagaId required. (E: cfc923bb29ee4aa788e947b6416740e6)");if(e==null)throw new Error("status code required. (E: 4e0d232a9955496695012623c2e17ca2)");if(!Object.values(P).includes(e))throw new Error(`invalid status code (${e}) (E: 91d7655424c44d9680fff099ee2b54d2)`);if(!t)throw new Error("spaceType required. (E: 86e98694a56a4f599e98e50abf0eed43)");if(!a)throw new Error("spaceSubtype required. (E: 4857d4677ee34e95aeb2251dd633909e)");return o=o||N,`status ${b} ${e} ${t} ${a}`}catch(r){throw console.error(`${n} ${E(r)}`),r}}m(F,"getStatusIb");function K({participants:b}){let e=`[${K.name}]`;try{q&&console.log(`${e} starting... (I: 43c9a4f1fa1bbc944b98f8eed2f81924)`);let t=b.filter(a=>a.s_d==="src");if(t.length!==1)throw new Error("(UNEXPECTED) participants_src.length !== 1? atow (03/2024) only one src participant is expected. (E: ed4b3ae15f5da34c77655553aaf82224)");return t.at(0).id}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{q&&console.log(`${e} complete.`)}}m(K,"getSrcLocalSpaceId");var x=!1,U=class b extends C{static{m(this,"SpaceBase_V1")}lc=`[${b.name}]`;cacheSvc;constructor(e,t){super(e,t),this.initialized=this.initialize()}async witnessImpl(e){let t=`${this.lc}[${this.witnessImpl.name}]`;return x&&console.log(`${t}`),await this.routeAndDoCommand({cmd:e.data.cmd,cmdModifiers:e.data.cmdModifiers??[],arg:e})}routeAndDoCommand({cmd:e,cmdModifiers:t,arg:a}){let o=`${this.lc}[${this.routeAndDoCommand.name}]`;switch(e){case y.get:return(t??[]).length===0?this.get(a):t.includes("can")?this.canGet(a):t.includes("latest")?t.includes("addrs")?this.getLatestAddrs(a):this.getLatestIbGibs(a):t.includes("tjps")?t.includes("addrs")?this.getTjpAddrs(a):this.getTjpIbGibs(a):t.includes("addrs")?this.getAddrs(a):t.includes("dependency-graph")?this.getDependencyGraph(a):this.get(a);case y.put:return(t??[]).length===0?this.put(a):t.includes("can")?this.canPut(a):this.put(a);case y.delete:return(t??[]).length===0?this.delete(a):t.includes("can")?this.canDelete(a):this.delete(a);default:throw new Error(`${o} unknown cmd: ${e}. cmdModifiers: ${t}`)}}get(e){return this.getImpl(e)}put(e){return this.putImpl(e)}delete(e){return this.deleteImpl(e)}deleteImpl(e){let t=`${this.lc}[${this.deleteImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getAddrs(e){return this.getAddrsImpl(e)}getAddrsImpl(e){let t=`${this.lc}[${this.getAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getLatestIbGibs(e){return this.getLatestIbGibsImpl(e)}getLatestIbGibsImpl(e){let t=`${this.lc}[${this.getLatestIbGibsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getLatestAddrs(e){return this.getLatestAddrsImpl(e)}getLatestAddrsImpl(e){let t=`${this.lc}[${this.getLatestAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getTjpIbGibs(e){return this.getTjpIbGibsImpl(e)}getTjpIbGibsImpl(e){let t=`${this.lc}[${this.getTjpIbGibsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getTjpAddrs(e){return this.getTjpAddrsImpl(e)}getTjpAddrsImpl(e){let t=`${this.lc}[${this.getTjpAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canGet(e){return this.canGetImpl(e)}canGetImpl(e){let t=`${this.lc}[${this.canGetImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canPut(e){return this.canPutImpl(e)}canPutImpl(e){let t=`${this.lc}[${this.canPutImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canDelete(e){return this.canPutImpl(e)}canDeleteImpl(e){let t=`${this.lc}[${this.canDeleteImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getDependencyGraph(e){return this.getDependencyGraphImpl(e)}async getDependencyGraphImpl(e){let t=`${this.lc}[${this.getDependencyGraphImpl.name}]`;try{if(x&&console.log(`${t} starting... (I: 0e5fe807a0169224781f6c2833f34826)`),!e.data)throw new Error("(UNEXPECTED) arg.data falsy? (E: 45eba816295a97a0e55f981861a03f26)");if((e.data.ibGibAddrs??[]).length===0)throw new Error("arg.data.ibGibAddrs is falsy/empty (E: 70adc939c7b80c9938d8fa18fd7c5826)");let a={space:this,ibGibAddrs:e.data.ibGibAddrs,live:e.data.live||!0},o=await T(a),n=Object.values(o),r={optsAddr:I({ibGib:e}),count:n.length,addrs:Object.keys(o)};return this.resulty({resultData:r,ibGibs:n})}catch(a){throw console.error(`${t} ${E(a)}`),a}finally{x&&console.log(`${t} complete.`)}}async validateWitnessArg(e){let t=`${this.lc}[${this.validateWitnessArg.name}]`,a=[];try{if(a=await super.validateWitnessArg(e),!e.data)return a.push("arg.data required (E: 8ee544d7d88a45c6adcbc15838a283a7)"),a;if(!this.data)return a.push("this.data required (E: 64f80642d7de44329355d6f907e272c8)"),a;let{cmd:o,ibGibAddrs:n}=e.data,r=e.data.cmdModifiers??[],c=e.ibGibs;o||a.push("arg.data.cmd required (E: 72a11ee87a0d4896bcacd65a9c0284d9)"),Object.values(y).includes(o)||a.push(`unknown arg.data.cmd: ${o}. (E: 95282ce61e97429f8049e61ec9f14f0b)`);let s=n?.length??0;if(o===y.get&&!r?.includes("addrs")&&!r?.includes("latest")&&s===0&&a.push(`ibGibAddrs required when cmd is ${o}. (E: ee55a3f60b90423cbe054f27c34ab7d5)`),o===y.put){x&&console.log(`${t} validate put cmd`);let h=c?.length??0;if(h===0)a.push(`ibGibs required when cmd is ${o}. (E: b3a422169f7344a48a1d44e7ad1ba44e)`);else if(this.data.validateIbGibAddrsMatchIbGibs)if(x&&console.log(`${t} validateIbGibAddrsMatchIbGibs true, so doing so.`),h!==s)a.push("ibGibsLength !== ibGibAddrsLength and this.data.validateIbGibAddrsMatchIbGibs is true. (E: 6c6bf824ab32443aa4d6b8bf4f8113dd)");else{x&&console.log(`${t} validateIbGibAddrsMatchIbGibs, lengths match. validating intrinsically`);let l=n.concat();for(let i=0;i<c.length;i++){let d=c[i],u=await j({ibGib:d});if(u?.length??!1){let $=I({ibGib:d});u.forEach(g=>a.push(`(${$}) ERROR: ${g}`))}else{let $=I({ibGib:d}),g=l.indexOf($);if(g===-1){a.push(`ibGibAddrs don't map to calculated ibGib addrs. calculated Addr: (${$}) (E: b21b3a7a74db43e5a8722acc97274646)`);break}else l.splice(g,1)}}}}return a}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{a?.length>0&&console.error(`${t} errors: ${a}`)}}async argy({argData:e,ibMetadata:t,noTimestamp:a,ibGibs:o}){let n=await O({argData:e,ibMetadata:t,noTimestamp:a});return o&&(n.ibGibs=o),n}async resulty({resultData:e,ibGibs:t}){let a=await D({ibMetadata:G({space:this}),resultData:e});return t&&(a.ibGibs=t),a}};var X={characters:"characters",spell_out:"spell-out",cardinal:"cardinal",number:"number",ordinal:"ordinal",digits:"digits",fraction:"fraction",unit:"unit",date:"date",time:"time",telephone:"telephone",address:"address",interjection:"interjection",expletive:"expletive"};var v=class b{static{m(this,"Ssml")}static lc=`[${b.name}]`;static wrapSsmlSpeak(e,t=!0){return"<speak>"+e.reduce((o,n)=>t?o+"<p>"+n+"</p>":o+n,"")+"</speak>"}static unwrapSsmlSpeak(e){return e.replace(/\<speak\>/g,"").replace(/\<\/speak\>/g,"")}static p(e){return"<p>"+e+"</p>"}static s(e){return"<s>"+e+"</s>"}static stripSsml(e){return e.replace(/\<\/p\>[ ]*\<p\>/g,"<p>").replace(/\<p\>(?=[ ])/g,"<p>").replace(/\<\/p\>(?=[ ])/g,"</p>").replace(/\<[\/]*p\>/g,`
|
|
2
|
+
|
|
3
|
+
`).replace(/(<([^>]*)>)/ig,"").replace(/ +/g," ").replace(/\\n\\n\\n/g,`
|
|
4
|
+
|
|
5
|
+
`).replace(/^\n+/,"").replace(/\n+$/,"")}static phoneme(e,t,a="ipa"){return`<phoneme alphabet="${a}" ph="${t}">${e}</phoneme>`}static emphasis(e,t="moderate"){return`<emphasis level="${t}">${e}</emphasis>`}static prosody(e,{rate:t,pitch:a,volume:o}){let n=`${b.lc}${b.prosody.name}`,r="";if(t||t===0){let c=typeof t=="number"?t+"%":t;r+=`rate="${c}"`}if(a||a===0){let c;if(typeof a=="number"){let s=a;a>=0?(s>50&&console.warn(`${n} max: 50, actual: ${s} (W: 7fd9706e59f24dba896e2de149904677)`),c="+"+s+"%"):(s<-33.3&&console.warn(`${n} min: ${-33.3}, actual: ${s} (W: 90f4c21672034c51a8a95dcfcd281f98)`),c="-"+s+"%")}else c=a;r=r&&r+" ",r+=`pitch="${c}"`}if(o||o===0){let c;if(typeof o=="number"){let s=o;s>=0?(s>4.08&&console.warn(`${n} max: ${4.08}, actual: ${s} (W: 7db9521e6b3e418faca89d2f5cfa4f2c)`),c="+"+s+"%"):s<-12&&console.warn(`${n} min: -12, actual: ${s} (W: 49210d930272498e828d2c9a815ceea0)`),c=s+"%"}else c=o;r=r&&r+" ",r+=o?`volume="${c}"`:""}return"<prosody "+r+">"+e+"</prosody>"}static speech(e){return`<say-as interpret-as="interjection">${e}</say-as>`}static amazon(e,t){return`<amazon:effect name="${e}">${t}</amazon:effect>`}static audio(e){return`<audio src="${e}" />`}static break({strength:e,s:t,ms:a}){let o=`${b.lc}${b.break.name}`;if(e)return`<break strength="${e}"/>`;if(t||t===0)return t<0?(console.warn(`${o} min: 0, actual: ${t} (W: 6ff97060a6734f20b16a81a20d06630e)`),t=0):t>10&&(console.warn(`${o} max: 10, actual: ${t} (W: d57ed120e09c4fcaa19b864bdf9f1fc7)`),t=10),`<break time="${t}s"/>`;if(a||a===0)return a<0?(console.warn(`min: 0, actual: ${a} (W: 0addf6dbab1844a9906bd18a859be3d7)`),a=0):a>1e4&&(console.warn(`max: 10000, actual: ${a} (W: f46b9868ec6d4ef2abd4f2aefe879427)`),a=1e4),`<break time="${a}ms"/>`;throw new Error("Unknown break parameters (E: 1ae569301a354c28a54cc06b58c93b87)")}static sub(e,t){return`<sub alias="${t}">${e}</sub>`}static w(e,t){return`<w role="${t}">${e}</w>`}static sayAs({text:e,interpret:t,format:a}){let o=`${b.lc}[${b.sayAs.name}]`;try{if(a){if(t!==X.date)throw new Error('`format` arg requires (implies) `interpret` === "date" (E: 2a470b25ac284ec4bec9eb3e6a704b6b)');return`<say-as interpret-as="${t}" format="${a}">${e}</say-as>`}else return`<say-as interpret-as="${t}">${e}</say-as>`}catch(n){throw console.error(`${o} ${n.message}`),n}}};var p=!1;var L={upperfirst:"upperfirst",uppereach:"uppereach",lowerfirst:"lowerfirst",lowereach:"lowereach",none:"none"},k={p:"paragraph",paragraph:"paragraph",s:"sentence",sentence:"sentence",n:"newline",newline:"newline",delim:"delim"},M=class b{static{m(this,"Lex")}lc=`[${b.name}]`;data;defaultLanguage;defaultLineConcat;defaultDelim;defaultCapitalize;requestLanguage;defaultKeywordMode;defaultPropsMode;constructor(e,{defaultLanguage:t="en-US",requestLanguage:a="en-US",defaultLineConcat:o=k.delim,defaultDelim:n="",defaultCapitalize:r="none",defaultKeywordMode:c="any",defaultPropsMode:s="prop"}){if(!e)throw new Error("data required (E: 2f8db30fa9d71d76db616ab110392c22)");this.data=e,this.defaultLanguage=t??"en-US",this.defaultLineConcat=o??k.delim,this.defaultDelim=n??"",this.defaultCapitalize=r??"none",this.requestLanguage=a??"en-US",this.defaultKeywordMode=c??"any",this.defaultPropsMode=s??"prop"}get(e,{language:t=this.requestLanguage,specifier:a,keywords:o,keywordMode:n=this.defaultKeywordMode,lineIndex:r,lineConcat:c=this.defaultLineConcat,lineConcatDelim:s=this.defaultDelim,capitalize:h=this.defaultCapitalize,vars:l,ssmlVars:i,props:d,propsMode:u=this.defaultPropsMode,fnDatumPredicate:$}={language:this.requestLanguage,keywordMode:this.defaultKeywordMode,lineConcat:this.defaultLineConcat,lineConcatDelim:this.defaultDelim,capitalize:this.defaultCapitalize,propsMode:this.defaultPropsMode}){let g=`${this.lc}[${this.get.name}]`;try{p&&console.log(`${g} starting... (I: e4e76a6bb301010fc13cf4456efcdc22)`);let f=this.data[e];if(!f)throw new Error(`Data id not found: ${e} (E: 4a79897167714dd5a34df77953072aaf)`);if(f=this.filterLexData({lexData:f,language:t,specifier:a,keywords:o,keywordMode:n,props:d,propsMode:u,fnDatumPredicate:$}),f.length===0)return null;let S=this.pickDatum(f),w=this.extractLines({lexDatum:S,resultAs:"text",lineIndex:r});w=this.replaceTemplateRefs({lines:w,resultAs:"text"}),w=this.replaceTemplateVars({lines:w,vars:l}),w=this.capitalizeLines({lines:w,resultAs:"text",capitalize:h});let W=this.concatLines({lines:w,lineType:"text",lineConcat:c,lineConcatDelim:s}),_=this.extractLines({lexDatum:S,resultAs:"ssml",lineIndex:r});_=this.replaceTemplateRefs({lines:_,resultAs:"ssml"}),_=this.replaceTemplateVars({lines:_,vars:i||l}),_=this.capitalizeLines({lines:_,resultAs:"ssml",capitalize:h});let B=this.concatLines({lines:_,lineType:"ssml",lineConcat:c,lineConcatDelim:s});return{text:W,ssml:B,datum:S,rawData:f}}catch(f){throw console.error(`${g} ${f.message}`),f}finally{p&&console.log(`${g} complete.`)}}find({fnDatumPredicate:e}){let t=`${this.lc}[${this.find.name}]`;try{if(p&&console.log(`${t} starting... (I: 35e26d234ca2d0e987b39ee939f29c22)`),!e)throw new Error("only fnDatumPredicate implemented atow (E: 8c8babd2fa6fc4cb223b7b8c10ad5c22)");let a={},o=Object.keys(this.data);for(let n=0;n<o.length;n++){let r=o[n],c=this.data[r].filter(s=>e(s));c.length>0&&(a[r]=c)}return Object.keys(a).length>0?a:null}catch(a){throw console.error(`${t} ${a.message}`),a}finally{p&&console.log(`${t} complete.`)}}_(e,t){return this.get(e,t)}getVariant(e,t){return this.get(e,t)}variant(e,t){return this.get(e,t)}getTranslation(e,t){return this.get(e,t)}translate(e,t){return this.get(e,t)}getSynonym(e,t){return this.get(e,t)}synonym(e,t){return this.get(e,t)}getI18n(e,t){return this.get(e,t)}i18n(e,t){return this.get(e,t)}extractLines({lexDatum:e,resultAs:t,lineIndex:a}){let o=`${this.lc}[${this.extractLines.name}]`;try{if(p&&console.log(`${o} starting... (I: 0c21a7ed7c1b56251f39342380c47922)`),(!e.texts||e.texts.length===0)&&(!e.ssmls||e.ssmls.length===0))throw new Error(`Invalid lexDatum. Datum texts and ssmls are both undefined. lexDatum: ${JSON.stringify(e)}.`);let n=a||a===0;return t==="text"&&e.texts&&e.texts.length>0?n?[e.texts[a]]:e.texts:t==="text"?(console.warn("building text lines from ssml (W: cfb59a05efda475ab7511acc659a5ee3)"),n?[v.stripSsml(e.ssmls[a])]:e.ssmls.map(r=>v.stripSsml(r))):e.ssmls&&e.ssmls.length>0?n?[e.ssmls[a]]:e.ssmls:n?[e.texts[a]]:e.texts}catch(n){throw console.error(`${o} ${n.message}`),n}finally{p&&console.log(`${o} complete.`)}}replaceTemplateVars({lines:e,vars:t}){let a=`${this.lc}[${this.replaceTemplateVars.name}]`;try{p&&console.log(`${a} starting... (I: a756e7603d03d427c60c202cb4f6dd22)`);let o=m(n=>{let r=Object.keys(t||{});return p&&console.log(`${a} varNames: ${JSON.stringify(r)} (I: d9351cf582420b35eb3eceb923e64f22)`),r.reduce((c,s)=>(p&&console.log(`${a} varName: ${s} (I: 8c0e4261972945d2bb4624efad14870b)`),c.replace(new RegExp("\\$"+s,"g"),t[s])),n)},"replaceVarsSingleLine");return t?e.map(n=>o(n)):e}catch(o){throw console.error(`${a} ${o.message}`),o}finally{p&&console.log(`${a} complete.`)}}replaceTemplateRefs({lines:e,resultAs:t}){let a=`${this.lc}[${this.replaceTemplateRefs.name}]`;try{p&&console.log(`${a} starting... (I: 548949b651bbec84de5b25f3c01cf422)`);let o=/\$\([\w-]+\|?[\w-|\{\}:'"\s,\[\].,<>]+\)/,n=m(r=>{let c=o.exec(r);if(c){let s=c[0];s=s.substring(2,s.length-1);let h=s.split("|"),l=h[0],i=h.length===2?JSON.parse(h[1]):{};i.lineConcat||(i.lineConcat=k.delim,i.lineConcatDelim="");let d=this.get(l,i),u=t==="text"?d.text:d.ssml;return r=r.replace(o,u),o.test(r)?n(r):r}else return r},"replaceRefsSingleLine");return e.map(r=>n(r))}catch(o){throw console.error(`${a} ${o.message}`),o}finally{p&&console.log(`${a} complete.`)}}capitalizeLines({lines:e,resultAs:t,capitalize:a}){let o=`${this.lc}[${this.capitalizeLines.name}]`;try{p&&console.log(`${o} starting... (I: b0ec8263fd94c68ee53fdf61534c8322)`);let n=m((i,d,u)=>i.substr(0,d)+u+i.substr(d+u.length),"replaceAt"),r=m(i=>i===""?"":i.charAt(0).toUpperCase()+i.slice(1),"upperText"),c=m(i=>{if(i==="")return"";if(i.charAt(0)==="<"){let d=i.indexOf(">")+1;return n(i,d,i[d].toUpperCase())}else return r(i)},"upperSsml"),s=m(i=>i===""?"":i.charAt(0).toLowerCase()+i.slice(1),"lowerText"),h=m(i=>{if(i==="")return"";if(i.charAt(0)==="<"){let d=i.indexOf(">")+1;return n(i,d,i[d].toLowerCase())}else return s(i)},"lowerSsml"),l=e[0];switch(a){case L.upperfirst:return e[0]=t==="text"?r(l):c(l),e;case L.uppereach:return e.map(i=>t==="text"?r(i):c(i));case L.lowerfirst:return e[0]=t==="text"?s(l):h(l),e;case L.lowereach:return e.map(i=>t==="text"?s(i):h(i));case L.none:return e;default:throw new Error(`Unknown LexCapitalize: ${a}`)}}catch(n){throw console.error(`${o} ${n.message}`),n}finally{p&&console.log(`${o} complete.`)}}concatLines({lines:e,lineType:t,lineConcat:a,lineConcatDelim:o}){let n=`${this.lc}[${this.concatLines.name}]`;try{p&&console.log(`${n} starting... (I: 59e0a7b89457283751b376295b61bb22)`);let r=e[0],c=m(()=>{let s="<p>";return r.length<s.length||r.substring(0,s.length).toLowerCase()!==s?e.map(h=>`<p>${h}</p>`).join(""):e.join("")},"concatSsmlP");switch(a){case k.p:return t==="text"?e.join(`
|
|
6
|
+
|
|
7
|
+
`):c();case k.s:if(t==="text")return e.map(s=>{let h=s.substring(s.length-1);return[".","!","?"].includes(h)?s:s+"."}).join(" ");{let s="<s>";return r.length<s.length||r.substring(0,s.length).toLowerCase()!==s?e.map(h=>`<s>${h}</s>`).join(""):e.join("")}case k.n:return t==="text"?e.join(`
|
|
8
|
+
`):c();case k.delim:return e.join(o);default:throw new Error(`Unknown LexLineConcat: ${a} (E: e19f9c44217f4eb5999e2085d3f77b5c)`)}}catch(r){throw console.error(`${n} ${r.message}`),r}finally{p&&console.log(`${n} complete.`)}}filterLexData({lexData:e,language:t,specifier:a,keywords:o,keywordMode:n,props:r,propsMode:c,fnDatumPredicate:s}){let h=`${this.lc}[${this.filterLexData.name}]`;try{p&&console.log(`${h} starting... (I: 1091755e98f390954d296575d1096722)`);let l=e.concat();if(t&&(l=this.filterLanguage(l,t)),a&&(l=l.filter(i=>i.specifier&&i.specifier===a)),o&&o.length>0)switch(o=o.map(i=>i.toLocaleLowerCase()),n){case"any":l=l.filter(i=>i.keywords&&i.keywords.some(d=>o.map(u=>u.toLocaleLowerCase()).some(u=>d===u)));break;case"all":l=l.filter(i=>{let d=(i.keywords||[]).map(u=>u.toLocaleLowerCase());return o.every(u=>d.includes(u))});break;case"none":l=l.filter(i=>{let d=(i.keywords||[]).map(u=>u.toLocaleLowerCase());return o.every(u=>!d.includes(u))});break;default:console.error(`${h} Unknown keywordMode: ${n}`);break}return r&&(l=this.filterProps({result:l,props:r,propsMode:c})),s&&(l=l.filter(i=>s(i))),l}catch(l){throw console.error(`${h} ${l.message}`),l}finally{p&&console.log(`${h} complete.`)}}filterProps({result:e,props:t,propsMode:a}){if(a==="prop"){let o=t;return e.filter(n=>Object.keys(o).every(r=>{let c=o[r],s=n.props?n.props[r]:void 0;return c(s)}))}else if(a==="props"){let o=t;return e.filter(n=>o(n.props))}else throw new Error(`Invalid propsMode: ${a} (E: 216a926144d2436a900b81ffe0aa6174)`)}filterLanguage(e,t){return e=e.filter(a=>a.language&&a.language===t||!a.language&&this.defaultLanguage.length===2&&t.startsWith(this.defaultLanguage)||!a.language&&this.defaultLanguage===t),e}pickDatum(e){let t=`${this.lc}[${this.pickDatum.name}]`;try{if(p&&console.log(`${t} starting... (I: f95c8585a8274f78a1e724d6ab58ff22)`),!e)throw new Error("lexData required (E: cedb1fd9b67856c33b41c7dd4aab7c22)");if(e.length===0)return null;if(e.length===1)return e[0];{let a=e.reduce((r,c)=>r+(c.weighting?c.weighting:1),0),o=Math.random()*a,n=null;return e.reduce((r,c)=>n?-1:(r+=c.weighting?c.weighting:1,r>=o&&(n=c),r),0),n}}catch(a){throw console.error(`${t} ${a.message}`),a}finally{p&&console.log(`${t} complete.`)}}};export{U as a,P as b,F as c,K as d,v as e,M as f};
|