@yongdall/web 0.3.2 → 0.3.3
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/index.d.mts +2 -1
- package/index.mjs +2 -2
- package/index.mjs.map +1 -1
- package/package.json +1 -1
package/index.d.mts
CHANGED
package/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import{Signal as e,Signal as t}from"signal-polyfill";import{ArrayStore as n,ArrayStore as r,ObjectStore as i,ObjectStore as a,Store as o,Store as s,renderStore as c,renderStore as l}from"@neeloong/form";import u,{default as d}from"dot-request";var f=Object.defineProperty,p=(e,t)=>{let n={};for(var r in e)f(n,r,{get:e[r],enumerable:!0});return t||f(n,Symbol.toStringTag,{value:`Module`}),n};function m(e,n){let r=!0;if(n?.aborted)return;let i=new t.subtle.Watcher(()=>{r&&(r=!1,queueMicrotask(()=>{r=!0;for(let e of i.getPending())e.get();i.watch()}))}),a=new t.Computed(e);i.watch(a),a.get(),n?.addEventListener(`abort`,()=>{i.unwatch(a)},{once:!0})}function h(e,t,{immediate:n,signal:r}={}){let i=Array.isArray(e),a=i?e:[e],o=null;m(()=>{let e=a.map(e=>e()),r=o;if(o=e,r){if(r.findIndex((t,n)=>!Object.is(t,e[n]))<0)return;t(i?[...e]:e[0],i?[...r]:r[0])}else{if(!n)return;t(i?[...e]:e[0])}},r)}function g(e){return new t.State(e)}function _(e,n){let r=new t.Computed(e);return typeof n==`function`?{get(){return r.get()},set:n}:{get(){return r.get()},set:()=>{}}}function v(e,t,n){let r=n;for(;;){let n=e.next(r);if(n.done)return n.value;r=t(n.value)}}async function y(e,t,n){let r=n;for(;;){let n=e.next(r);if(n.done)return n.value;r=await t(n.value)}}function b(e,t){let n=e;for(let e of t){let[t,...r]=typeof e==`string`?[e]:e;if(!n.length)continue;let i=[];it:for(let e of n){if(!e||typeof e!=`object`||!Object.hasOwn(e,t))continue;let n=e[t];for(let e of r){if(!Array.isArray(n))continue it;n=n[e]}i.push(n)}n=i.flat(1/0).filter(e=>e&&typeof e==`object`)}return n}function x(e,t){let n=[];for(let r of e)!r||typeof r!=`object`||Object.hasOwn(r,t)&&n.push(r[t]);return n}function*S(e,t,n){let r=[...n[0]],i=[...t,...r],a=r.pop();if(!a)return null;let o=typeof a==`string`?a:a[0],s=b(e,r);if(!s.length)return!1;let[,c,l,u]=n;if(l===null){let e=x(s,o);return u?e.find(e=>e===null):e.find(e=>e!==null)}if(typeof c!=`object`||!c||Array.isArray(c)){let e=x(s,o);return e.length?yield{fields:i,operator:l,sign:u,value:c,values:e}:!1}if(c.filter||c.table||c.placeholder)return null;let d=c.field;if(!d)return null;let f=!1;for(let e of s){if(!e||typeof e!=`object`||!Object.hasOwn(e,d)||!Object.hasOwn(e,o))continue;f=null;let t=yield{fields:i,operator:l,sign:u,value:e[d],field:d,values:[e[o]]};if(t!==null)return t}return f}function*C(e,t,n){if(!Array.isArray(n)){let{and:r,or:i}=n;return yield*w(e,t,r,i)}if(n.length!==2)return yield*S(e,t,n);let r=null,i=b(e,n[0]);if(!i.length)return!1;let a=[...t,...n[0]];for(let e of n[1]){let t=yield*C(i,a,e);if(t!==null){if(!t)return!1;r=!0}}return r}function*w(e,t,n,r){let i=null;if(Array.isArray(n))for(let r of n){let n=yield*C(e,t,r);if(n!==null){if(!n)return!1;i=!0}}if(Array.isArray(r))for(let n of r){let r=yield*C(e,t,n);if(r!==null){if(r)return!0;i=!0}}return i}function T(e,t,n,r){return v(w([e].flat(),[],n,r),t,null)}async function ee(e,t,n,r){return y(w([e].flat(),[],n,r),t,null)}function*te(e){let t=[],n=!1;for(let r of e){let e=yield*ne(r);t.push(e||r),e&&(n=!0)}return n?t:null}function*ne(e){if(!Array.isArray(e)){let t=e.and&&(yield*re(e.and)),n=e.or&&(yield*re(e.or));return!t&&!n?null:{and:t||e.and,or:n||e.or}}if(e.length===2)return(yield*re(e[1]))?[e[0],e[1]]:null;let t=yield e[1];return t===null?null:[e[0],t,e[2],e[3]]}function*re(e){let t=[],n=!1;for(let r of e){let e=yield*ne(r);t.push(e||r),e&&(n=!0)}return n?t:null}function ie(e,t){if(!e)return[];function n(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let n=e.placeholder;return!n||typeof n!=`string`?null:t(n)}return v(te(e),n,null)||e}function ae(e){return e.map(({field:e,sub:t})=>t.length?[e,...t]:e)}function oe(e){if(e.children)return[ae(e.fields),e.children.map(oe)];let{fields:t,operator:n,value:r,sign:i}=e;return[ae(t),r,n,i]}const se=/^([-_\d\p{L}]+)((?:\[-?\d+\])*)$/u;function ce(e){let t=[];for(let n of e.split(`.`)){if(!n||n[0]===`?`)return null;let e=n.indexOf(`?`),r=se.exec(e>0?n.slice(0,e):n);if(!r)return null;let i=r[2]?.split(/\[|\]/).filter(Boolean).map(e=>parseInt(e)||0)||[],a=e>0?n.slice(e):void 0;t.push({field:r[1],group:a,sub:i})}return t}const E=e=>decodeURIComponent(e.replaceAll(`+`,` `));function le(e){let t=[],n=[],r=t,i=[],a=!1,o=!0;function s(){r.push(E(i.join())),i=[]}for(let t of e){if(t===`,`){a?a=!1:s(),o=!0;continue}if(t===`)`){(o||i.length)&&(s(),o=!1);let e=n.pop();if(!e)return null;e.push(r),r=e,a=!0;continue}if(a)return null;if(o=!1,t!==`(`){i.push(t);continue}if(i.length)return null;n.push(r),r=[]}return(o||i.length)&&s(),n.length?null:t.length===1?t[0]:t}const ue=/^([-_\d\p{L}]+)@([-_\d\p{L}]+)/u;function de(e){if(e===null)return!0;if(e[0]===`?`)return{placeholder:E(e.slice(1))};if(e[0]===`:`)return{field:E(e.slice(1))};if(e[0]===`@`||ue.test(e))return null;if(e.includes(`(`)||e.includes(`)`)){let t=le(e);if(t)return t}return e.includes(`,`)?e.split(`,`).map(e=>E(e.replaceAll(`+`,` `))):E(e)}function*fe(e){let t=e.map(e=>{let t=e.fields,n=t.findLastIndex(e=>e.group);if(n<0||n>=t.length-1)return[e,[],[]];let r=t[n];return r?[{...e,fields:t.slice(n+1)},t.slice(0,n+1),[...t.slice(0,n),{...r,group:void 0}]]:[e,[],[]]}),n=Object.groupBy(t,e=>JSON.stringify(e[1]));yield*n[`[]`]?.map(e=>oe(e[0]))||[],delete n[`[]`];let r=Object.values(n).filter(Boolean).map((e=[])=>e?.length?{fields:e[0][2]||[],children:e.map(e=>e[0])}:{fields:[],children:[]}).filter(e=>e.fields.length);r.length&&(yield*fe(r))}function pe(e){let t=Map.groupBy(e,e=>e.groups.shift()??null),n=t.get(null)||[],r=t.get(``)||[];return t.delete(null),t.delete(``),{or:[...r.map(e=>oe(e)),...[...t.values()].map(e=>pe(e))],and:[...fe(n)]}}function me(e,t=`&`){let n=[],r=[],i=[],a=0,o=0,s=0,c=!1,l={},u=[];for(let d of typeof e==`string`?e.split(t):[]){if(d[0]===`=`){n.push(d.slice(1));continue}let e=d.indexOf(`=`),t=e<0?d:d.slice(0,e),f=e<0?null:d.slice(e+1);if(e<=0||`.!@^*<>{}[]()+|;,"'\`\\/`.includes(t[0]))continue;if(t[0]===`?`){l[E(t.slice(1))]=E(f||``);continue}if(t[0]===`:`){let e=t.slice(1);if(!f)continue;e===`sort`?i.push(...f.split(`,`).filter(Boolean).map(e=>{let t=e[0]===`-`;return[E(t?e.slice(1):e),t]}).filter(Boolean)):e===`select`?r.push(...f.split(`,`).map(E).filter(Boolean)):e===`limit`?f&&/^\d+$/.test(f)&&(a=parseInt(f)):e===`offset`?f&&/^\d+$/.test(f)&&(o=parseInt(f)):e===`page`?f&&/^\d+$/.test(f)&&(s=parseInt(f)):e===`total`&&f&&(c=!0);continue}let p=t.split(`~`),m=p.pop()||``,h=``;`!`.includes(m[m.length-1])&&(h=`!`,m=m.slice(0,-1));let g=m.split(`:`,3);if(g.length>2)continue;let _=ce(g[0]);if(!_)continue;let v=de(f);if(v===null)continue;let y=E(g[1]||``),b=p.indexOf(``),x=b<0?p:p.slice(0,b+1);u.push({groups:x,fields:_,operator:!y&&v===!0?null:y,sign:h,value:v===!0?null:v})}let{and:d,or:f}=pe(u),p={};n?.length&&(p.values=n),c&&(p.total=c),a&&a>0&&(p.limit=a),s&&s>0&&(p.page=s),o&&o>0&&(p.offset=o),r?.length&&(p.select=r),i?.length&&(p.sort=i);let m=d;m?.length&&(p.where=m);let h=f;return h?.length&&(p.orWhere=h),Array.isArray(l)&&l.length&&(p.placeholders=l),p}function he(e,t){let n=t.limit||e.limit||0,r=t.page??e.page,i=t.offset??(t.limit&&(t.page||t.page===0)?(Math.floor(Math.max(t.page||0,1))-1)*t.limit:null)??e.offset??(e.limit&&(e.page||e.page===0)?(Math.floor(Math.max(e.page||0,1))-1)*e.limit:null)??(Math.floor(Math.max(r||0,1))-1)*(n||10),a=[...e.values||[],...t.values||[]],o=[...e.sort||[],...t.sort||[]],s=[...e.select||[],...t.select||[]],c=[...e.where||[],...t.where||[]],l=[...e.orWhere||[],...t.orWhere||[]],u=[...e.or||[],...t.or||[]],d={};return a?.length&&(d.values=a),n&&n>0&&(d.limit=n),(e.total||t.total)&&(d.total=!0),r&&r>0&&(d.page=r),i&&i>0&&(d.offset=i),s?.length&&(d.select=s),o?.length&&(d.sort=o),c?.length&&(d.where=c),l?.length&&(d.orWhere=l),u?.length&&(d.or=u),d}const D=e=>encodeURIComponent(e).replaceAll(`%20`,`+`);function ge(e){if(Array.isArray(e)){function t(e){return Array.isArray(e)?`(${e.map(t).join(`,`)})`:D(e)}let n=e.map(t).join(`,`);return e.length>1?n:`(${n})`}if(typeof e==`number`)return`${e}`;if(typeof e==`boolean`)return e?`1`:0;if(typeof e!=`object`)return D(e);let{field:t,placeholder:n}=e;return n?`?${D(n)}`:t?`:${D(t)}`:``}function _e(e){return e.map(e=>{let[t,...n]=typeof e==`string`?[e]:e;return`${D(t)}${n.map(()=>`[k]`).join(``)}`}).join(`.`)}function ve([e,t,n,r]){let i=n?`${_e(e)}:${D(n)}${r||``}`:`${_e(e)}${r||``}`;return n===null?i:t===null||typeof t==`function`?``:`${i}=${ge(t)}`}function ye(e){let t=0;return e.flatMap(e=>{if(e.length!==2)return ve(e);let n=ye(e[1]);if(!n.length)return[];let r=_e(e[0]);return n.length>1&&(r+=`?${(t++).toString(36)}`),n.map(e=>`${r}.${e}`)}).filter(Boolean)}function be(e){let t=0;return e.map(e=>Array.isArray(e)?ye([e]):[...ye(e.and||[]),...be(e.or||[])]).flatMap(e=>{if(!e)return[];let n=e.length===1?`~`:`${(t++).toString(36)}~`;return e.map(e=>`${n}${e}`)})}function xe({values:e,where:t,orWhere:n,sort:r,select:i,limit:a,offset:o,page:s,total:c,placeholders:l},u){let d=[];for(let t of e||[])t&&d.push(`=${D(t)}`);if(a&&a>0&&d.push(`:limit=${a}`),c&&d.push(`:total=${c}`),u?s&&s>0&&d.push(`:page=${s}`):o&&o>0&&d.push(`:offset=${o}`),i){let e=i.filter(Boolean).map(D).join(`,`);e&&d.push(`.select=${e}`)}if(r){let e=r.filter(Boolean).map(e=>{if(Array.isArray(e)){let[t,n]=e;if(t)return`${n?`-`:``}${D(t)}`}else if(e)return D(e);return``}).filter(Boolean).join(`,`);e&&d.push(`.sort=${e}`)}if(l&&typeof l==`object`&&!Array.isArray(l))for(let[e,t]of Object.entries(l))d.push(`?${D(e)}=${D(t)}`);for(let e of ye(t||[]))d.push(e);for(let e of be(n||[]))d.push(e);return d.join(`&`)}function Se(e,t,n,...r){function*i(t,n,...r){let a=[];if(n)for(let r of n){let n=yield*e.build(i,t,r);if(n!=null){if(e.value?.(n)===!1)return n;a.push(n)}}orFor:for(let n of r){if(!n)continue;let r=[];for(let o of n){let n=Array.isArray(o)?yield*e.build(i,t,o):yield*i(t,o.and,o.or);if(n!=null){if(e.value?.(n)===!0){a.push(n);continue orFor}r.push(n)}}let o=r.length?e.or(r):null;if(o!=null){if(e.value?.(o)===!1)return o;a.push(o)}}return a.length?e.and(a):null}return i(t,n,...r)}var Ce=p({asyncExec:()=>ee,asyncRunGenerator:()=>y,exec:()=>T,fill:()=>ie,fillMatches:()=>re,merge:()=>he,parse:()=>me,runGenerator:()=>v,stringify:()=>xe,toWhere:()=>Se});const we=Error.prototype;function Te(e,t){if(!(t instanceof Error))throw t;for(let n=Object.getPrototypeOf(t);n;n=Object.getPrototypeOf(n)){let r=e.get(n);if(typeof r==`function`)return r(t);if(n===we)break}throw t}const Ee=()=>!0;function De(e,t){let n=[e].flat();for(let e of t.filter(Boolean)){let t=[];for(let r of n)!r||typeof r!=`object`||Object.hasOwn(r,e)&&t.push(r[e]);if(!t.length)return[];n=t.flat()}return n}function Oe(e,t){if(!t.length)return e;if(!e||typeof e!=`object`)return;let[n,...r]=t;for(let t of[e].flat()){let e=Oe(t[n],r);if(e!==void 0)return e}}function*ke(e,t){for(let n of Object.values(e))for(let e of De(n,t))yield e}var Ae=class e{static build(t){let n=new e;return e.update(n,t)}static update(t,n){let r=!1;return typeof n==`function`?(Object.defineProperty(t.#e,`hooks`,{configurable:!0,get(){let e=n();return typeof e==`object`&&e||{}}}),r=!0):n&&typeof n==`object`&&(Object.defineProperty(t.#e,`hooks`,{configurable:!0,value:n}),r=!0),r&&e.reset(t),t}static reset(e){let t=e.#r,n=e.#e.resetFn;n.sort(([,e],[,t])=>e-t);let r=n.filter(([,e])=>e<=0),i=n.filter(([,e])=>e>0);for(let[e]of r)e();for(let e of ke(t,[`reset`]))typeof e==`function`&&e();for(let[e]of i)e()}#e={hooks:Object.create(null),resetFn:[]};#t=[];#n=`Hook`;[Symbol.iterator](){return this.entries()}[Symbol.toStringTag](){return this.#n}[Symbol.toPrimitive](e){return e===`number`?NaN:`[${this[Symbol.toStringTag]()}]`}get#r(){return this.#e.hooks}get(t){let n=[...this.#t,t],r=new e;return r.#e=this.#e,r.#t=n,r.#n=`Hook(${n.join(`.`)})`,r}call(...e){for(let t of this.values())typeof t==`function`&&t(...e)}first(e){let t=this.#r;if(Object.hasOwn(t,e))return Oe(t[e],this.#t.filter(Boolean))}*plugin(e){let t=this.#r;Object.hasOwn(t,e)&&(yield*De(t[e],this.#t.filter(Boolean)))}values(){return ke(this.#r,this.#t)}*entries(){let e=this.#r,t=this.#t;for(let[n,r]of Object.entries(e))for(let e of De(r,t))yield[n,e]}*entriesObject(e=Ee){for(let[t,n]of this.entries())if(!(!n||typeof n!=`object`))for(let[r,i]of Object.entries(n))e(i)&&(yield[t,r,i])}named(e=Ee){let t=Object.create(null);for(let n of this.values())if(!(!n||typeof n!=`object`))for(let[r,i]of Object.entries(n))e(i)&&(t[r]=i);return t}listen(e,t){if(typeof e!=`function`)return()=>{};let n=this.#e.resetFn,r=[e,Number.isFinite(t)&&t||0];return n.push(r),n.sort(([,e],[,t])=>t-e),()=>{let e=n.findIndex(e=>e===r);e>=0&&n.splice(e,1)}}};const je=/\{([^}{}]+)\}/g;function Me(e){if(!e||typeof e!=`string`)return[];let t=[];for(let n=je.exec(e);n;n=je.exec(e))t.push(n[1]);return t}function O(e,t){if(!e||typeof e!=`string`)return``;let n=typeof t==`object`&&t||{};return e.replace(je,(e,t)=>Object.hasOwn(n,t)?n[t]??``:`${t}`)}function*Ne({constraints:e,organizationField:t}){if(t&&(yield t),e)for(let[t,n]of Object.entries(e)){if(!n)continue;let{value:e,values:r,user:i}=n;e===void 0?(Array.isArray(r)&&r.length||r instanceof Set&&r.size||i)&&(yield t):yield t}}const Pe=/^(?:(?<scope>@[a-zA-Z\d_.-]+)\/)?(?<name>[a-zA-Z\d_.-]+)$/,Fe=/^(?<pluginId>(?:(?<scope>@[a-zA-Z\d_.-]+)\/)?(?<name>[a-zA-Z\d_.-]+))(?:\/(?<path>[^#]*))?(?:#(?<hash>.*))?$/;function Ie(e){return typeof e==`function`}const Le=g({}),k=Ae.build(()=>Le.get());function Re(e){Le.set(e),Ae.reset(k)}function ze(e,t,n){let r=typeof t==`string`?t:``,i=t===!0||n===!0?`[]`:``;return!e||e===`.`?r?`:${r}${i}`:void 0:r?`${e}:${r}${i}`:`${e}${i}`}function Be(e){return typeof e==`boolean`?!e:e}const Ve=_(()=>{let e=new Map;for(let t of k.get(`formFields`).values()){let{type:n,array:r,renderer:i,input:a}=t,o=ze(typeof n==`string`?n:``,typeof i==`string`?i:``,!!r);o&&typeof a==`function`&&e.set(o,a)}return e}),He=_(()=>{let e={},t={};function n(e,t,{not:n,value:r,notValue:i,named:a,notNamed:o,field:s,notField:c},l=``){n&&(typeof r==`function`&&(i=(...e)=>Be(r(...e))),typeof s==`function`&&(c=(...e)=>Be(s(...e))),typeof a==`function`&&(o=(...e)=>Be(a(...e))));let u=Object.hasOwn(e,l)&&e[l]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};e[l]=u,typeof r==`function`&&u.value.push(r),typeof i==`function`&&u.notValue.push(i),typeof a==`function`&&u.named.push(a),typeof o==`function`&&u.notNamed.push(o),typeof s==`function`&&u.field.push(s),typeof c==`function`&&u.notField.push(c);let d=typeof n==`string`&&n||``;if(!d)return;let f=Object.hasOwn(t,d)&&t[d]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};t[d]=u,typeof r==`function`&&f.notValue.push(r),typeof i==`function`&&f.value.push(i),typeof a==`function`&&f.notNamed.push(a),typeof o==`function`&&f.named.push(o),typeof s==`function`&&f.notField.push(s),typeof c==`function`&&f.field.push(c)}for(let r of k.get(`formFields`).values()){let{type:i,array:a,renderer:o,filters:s}=r,c=ze(typeof i==`string`?i:``,typeof o==`string`?o:``,!!a)||(a?`[]`:``),l=Object.hasOwn(e,c)&&e[c]||{},u=Object.hasOwn(t,c)&&t[c]||{};n(l,u,r);for(let[e,t]of Object.entries(s||{}))!t||Array.isArray(t)||typeof t!=`object`||n(l,u,t,e);e[c]=l,t[c]=u}for(let n of Object.keys({...e,...t})){let r=Object.hasOwn(t,n)&&t[n];if(!r)continue;let i=Object.hasOwn(e,n)&&e[n]||{};e[n]=i;for(let e of Object.keys({...i,...r})){let t=Object.hasOwn(r,e)&&r[e];if(!t)continue;let n=Object.hasOwn(i,e)&&i[e]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};if(i[e]=n,t){for(let e of t.value)n.value.push(e);for(let e of t.notValue)n.notValue.push(e);for(let e of t.named)n.named.push(e);for(let e of t.notNamed)n.notNamed.push(e);for(let e of t.field)n.field.push(e);for(let e of t.notField)n.notField.push(e)}}}return e}),Ue=_(()=>{let e=new Map;for(let t of k.get(`formFields`).values()){let{type:n,array:r,renderer:i,filter:a,filters:o}=t,s=ze(typeof n==`string`?n:``,typeof i==`string`?i:``,!!r);if(!s)continue;let c=e.get(s)||new Map;if(typeof a==`function`){let e=c.get(``);e?e.component=a:c.set(``,{component:a,label:`=`})}for(let[e,t]of Object.entries(o||{})){if(!t)continue;let n=Array.isArray(t)?t[0]:typeof t==`function`?t:t.filter;if(typeof n!=`function`)continue;let r=Array.isArray(t)?t[1]:typeof t==`object`?t.label:null,i=c.get(e);if(!i){c.set(e,{component:n,label:typeof r==`string`?r:``});continue}i.component=n,typeof r==`string`&&(i.label=r)}c.size&&e.set(s,c)}return e});function We(){return He.get()}function*Ge(e){if(e)for(let t of Array.isArray(e)?e:[e]){if(!t)continue;if(typeof t==`string`){yield[t];continue}if(typeof t!=`object`)continue;let e=t.component;!e||typeof e!=`string`||(yield[e,t])}}function*A(e){if(!e)return;let t=typeof e==`string`?e:e.type,n=typeof e==`string`?``:e.renderer,r=typeof e==`string`?``:e.array?`[]`:``;if(!t){for(let[e,t]of Ge(n))yield[`:${e}${r}`,t],yield[`${e}${r}`,t];return}if(typeof t==`object`){for(let[e,t]of Ge(n))yield[`submodel:${e}${r}`,t],yield[`${e}${r}`,t];yield[`submodel${r}`];return}for(let[e,i]of Ge(n))yield[`${t}:${e}${r}`,i],yield[`:${e}${r}`,i],yield[`${e}${r}`,i];yield[`${t}${r}`]}function Ke(e,t){let n=Ve.get();for(let[t,r]of A(e)){let e=n.get(t);if(e)return t=>e(t,r)}return t?null:(typeof e==`string`||e.type,()=>document.createElement(`div`))}function qe(e){let t=Ve.get();for(let[n]of A(e))if(t.get(n))return!0;return typeof e==`string`||e.type,!1}const Je=()=>document.createElement(`div`);function Ye(e,t){let n=Ue.get();for(let[r,i]of A(e)){let e=n.get(r)?.get(t);if(!e)continue;let a=e.component;return e=>a(e,i)}return Je}function Xe(e){let t=Ue.get(),n=Object.create(null);for(let[r]of A(e)){let e=t.get(r);if(e)for(let[t,{label:r}]of e)n[t]||(n[t]=r)}return n}function Ze(e,t){let n=Ue.get();for(let[r]of A(e))if(n.get(r)?.has(t))return!0;return!1}function*Qe(e,t){let n=He.get();for(let[r]of typeof e==`boolean`?e?[[`[]`],[``]]:[[``]]:A(e)){let e=Object.hasOwn(n,r)&&n[r];if(!e)continue;let i=Object.hasOwn(e,t)&&e[t];i&&(yield i)}let r=Object.hasOwn(n,``)&&n[``];if(!r)return;let i=Object.hasOwn(r,t)&&r[t];i&&(yield i)}const $e={api:`/api`,file:`/fileCabinets`};var et=$e;function tt(e=new Date){let t=e.getTimezoneOffset();if(!t)return`Z`;let n=t<0?`+`:`-`;return t=Math.abs(t),n+[Math.floor(t/60),t%60].map(e=>`${e}`.padStart(2,`0`)).join(`:`)}function nt(e){return[e.getHours(),e.getMinutes(),e.getSeconds()].map(e=>`${e}`.padStart(2,`0`)).join(`:`)}function rt(e){return[`${e.getFullYear()}`.padStart(4,`0`),`${e.getMonth()+1}`.padStart(2,`0`),`${e.getDate()}`.padStart(2,`0`)].join(`-`)}function it(e){return nt(e)+`.${e.getMilliseconds()}`.padStart(3,`0`)+tt(e)}function at(e){return rt(e)+`T`+it(e)}var ot=class e extends d{build(){return new e}method(e,t){return super.method(`POST`,t).header(`X-Method`,e)}};function st(e){return e.json().then(e=>Promise.reject(e?.error))}function ct(e){return e.status,st(e)}const lt=new ot().get().prefix(et.api).stringifyJSON(e=>JSON.stringify(e,(e,t)=>t instanceof Date?at(t):typeof t==`bigint`?String(t):t instanceof Set?[...t]:t)).errorHandler(st);var j=lt.clone().errorHandler(ct);const M=await lt.clone().get`application`.query({domain:location.hostname,port:location.port,path:location.pathname}).json(),N=window.yongdallPlugins,ut=M.id,dt=M.pages||{},ft=new URL(M.path||`/workbench/`,location.origin),pt=ft.href,mt=ft.pathname,ht=g(M.menus||[]),gt=g(M.userMenus||[]),_t=g(!1);async function vt(){if(!_t.get()){_t.set(!0);try{let e=await lt.clone().get`applications`.append(`${ut}`).json();if(!M||typeof e!=`object`)return;ht.set(e.menus||[]),gt.set(e.userMenus||[])}finally{_t.set(!1)}}}const P={get id(){return ut},get path(){return mt},get root(){return pt},get theme(){return M.theme},get route(){return M.route},get authenticator(){return M.authenticator},get skin(){return M.skin},get menus(){return ht.get()},get userMenus(){return gt.get()},get logo(){return M.logo},get title(){return M.title},get company(){return M.company},get help(){return M.help},get refreshing(){return _t.get()},refresh:vt};function yt(e,t,n){let r={};function i(...i){let a=t(...i);if(Object.hasOwn(r,a)&&!n?.(...i))return r[a];let o=e(...i);return r[a]=o,o}return i}const{authRequired:bt,multiUser:xt}=M,F=g(null),St=g(null),Ct=_(()=>St.get()||F.get()),wt=yt(e=>{let t=_(()=>F.get()?.plugins?.[e]||null),n=_(()=>St.get()?.plugins?.[e]||null),r=_(()=>Ct.get()?.plugins?.[e]||null);return{get session(){return t.get()},get target(){return n.get()},get current(){return r.get()}}},e=>e||``),I=g(!1),Tt=g(!1),Et=_(()=>Tt.get()?!0:!(!bt||I.get()||F.get()));function Dt(e){return new Set(e.filter(e=>e&&typeof e==`string`))}function Ot(e){let t=e.plugins;if(t&&typeof t==`object`)for(let[n,r]of k.get(`user`).get(`permissions`)){if(typeof r!=`function`||!Object.hasOwn(t,n))continue;let i=t[n];if(!i||typeof i!=`object`)continue;let a=r(i,e);if(a instanceof Set)return a}let n=e.permissions;return Array.isArray(n)?Dt(n):new Set}function kt(e){let t=e.plugins;if(t&&typeof t==`object`)for(let[n,r]of k.get(`user`).get(`organizationPermissions`)){if(typeof r!=`function`||!Object.hasOwn(t,n))continue;let i=t[n];if(!i||typeof i!=`object`)continue;let a=r(i,e);if(a)return a}let n=e.organizationPermissions;if(n&&typeof n==`object`&&!Array.isArray(n)){let e=Object.entries(n).filter(e=>Array.isArray(e[1]));if(e.length)return Object.fromEntries(e.map(([e,t])=>[e,Dt(t)]))}let{organizationRolePermissions:r,organizationRoles:i}=e;return!i||typeof i!=`object`||Array.isArray(i)||!r||typeof r!=`object`||Array.isArray(r)?null:Object.fromEntries(Object.entries(i).map(([e,t])=>[e,Dt(t.flatMap(e=>Object.hasOwn(r,e)&&r[e]||[]))]))}const At=_(()=>{let e=Ct.get();return e?Ot(e):null}),jt=_(()=>{let e=Ct.get();return e?kt(e):null}),Mt=_(()=>{let e=jt.get();return e?new Set(Object.values(e).flatMap(e=>[...e])):null});function Nt(){return I.get()?{has:()=>!0,get size(){return-1}}:new Set}const L={get multi(){return!!xt},get single(){return I.get()},get session(){return F.get()},get target(){return St.get()},get current(){return Ct.get()},hasPermission(e){return At.get()?.has(e)??I.get()},hasOrganizationPermission(e,t){if(typeof t!=`string`)return Mt.get()?.has(e)??I.get();let n=jt.get();return n?Object.hasOwn(n,t)?n[t]?.has(e)??!1:!1:I.get()},get permissions(){return At.get()||Nt()},get organizationPermissions(){return jt.get()||new Proxy({},{get(){return Nt()}})},get allOrganizationPermissions(){return Mt.get()||Nt()},get waitLogin(){return Et.get()},plugin(e){return wt(e)},async load(){let{session:e,target:t}=await lt.clone().get`user`.json().then(e=>e||{},()=>({}));return St.set(t||null),e===!0?(I.set(!0),F.set(null)):(I.set(!1),F.set(e||null)),e&&Tt.set(!1),!!e},exit(){St.set(null),F.set(null),lt.clone().delete`user`.done()},login(e=!0){Tt.set(!!e)}};function Pt(e,t,n){if(!e)return!0;let r=typeof e==`string`?e.split(`
|
|
1
|
+
import{Signal as e,Signal as t}from"signal-polyfill";import{ArrayStore as n,ArrayStore as r,ObjectStore as i,ObjectStore as a,Store as o,Store as s,renderStore as c,renderStore as l}from"@neeloong/form";import u,{default as d}from"dot-request";var f=Object.defineProperty,p=(e,t)=>{let n={};for(var r in e)f(n,r,{get:e[r],enumerable:!0});return t||f(n,Symbol.toStringTag,{value:`Module`}),n};function m(e,n){let r=!0;if(n?.aborted)return;let i=new t.subtle.Watcher(()=>{r&&(r=!1,queueMicrotask(()=>{r=!0;for(let e of i.getPending())e.get();i.watch()}))}),a=new t.Computed(e);i.watch(a),a.get(),n?.addEventListener(`abort`,()=>{i.unwatch(a)},{once:!0})}function h(e,t,{immediate:n,signal:r}={}){let i=Array.isArray(e),a=i?e:[e],o=null;m(()=>{let e=a.map(e=>e()),r=o;if(o=e,r){if(r.findIndex((t,n)=>!Object.is(t,e[n]))<0)return;t(i?[...e]:e[0],i?[...r]:r[0])}else{if(!n)return;t(i?[...e]:e[0])}},r)}function g(e){return new t.State(e)}function _(e,n){let r=new t.Computed(e);return typeof n==`function`?{get(){return r.get()},set:n}:{get(){return r.get()},set:()=>{}}}function v(e,t,n){let r=n;for(;;){let n=e.next(r);if(n.done)return n.value;r=t(n.value)}}async function y(e,t,n){let r=n;for(;;){let n=e.next(r);if(n.done)return n.value;r=await t(n.value)}}function b(e,t){let n=e;for(let e of t){let[t,...r]=typeof e==`string`?[e]:e;if(!n.length)continue;let i=[];it:for(let e of n){if(!e||typeof e!=`object`||!Object.hasOwn(e,t))continue;let n=e[t];for(let e of r){if(!Array.isArray(n))continue it;n=n[e]}i.push(n)}n=i.flat(1/0).filter(e=>e&&typeof e==`object`)}return n}function x(e,t){let n=[];for(let r of e)!r||typeof r!=`object`||Object.hasOwn(r,t)&&n.push(r[t]);return n}function*S(e,t,n){let r=[...n[0]],i=[...t,...r],a=r.pop();if(!a)return null;let o=typeof a==`string`?a:a[0],s=b(e,r);if(!s.length)return!1;let[,c,l,u]=n;if(l===null){let e=x(s,o);return u?e.find(e=>e===null):e.find(e=>e!==null)}if(typeof c!=`object`||!c||Array.isArray(c)){let e=x(s,o);return e.length?yield{fields:i,operator:l,sign:u,value:c,values:e}:!1}if(c.filter||c.table||c.placeholder)return null;let d=c.field;if(!d)return null;let f=!1;for(let e of s){if(!e||typeof e!=`object`||!Object.hasOwn(e,d)||!Object.hasOwn(e,o))continue;f=null;let t=yield{fields:i,operator:l,sign:u,value:e[d],field:d,values:[e[o]]};if(t!==null)return t}return f}function*C(e,t,n){if(!Array.isArray(n)){let{and:r,or:i}=n;return yield*w(e,t,r,i)}if(n.length!==2)return yield*S(e,t,n);let r=null,i=b(e,n[0]);if(!i.length)return!1;let a=[...t,...n[0]];for(let e of n[1]){let t=yield*C(i,a,e);if(t!==null){if(!t)return!1;r=!0}}return r}function*w(e,t,n,r){let i=null;if(Array.isArray(n))for(let r of n){let n=yield*C(e,t,r);if(n!==null){if(!n)return!1;i=!0}}if(Array.isArray(r))for(let n of r){let r=yield*C(e,t,n);if(r!==null){if(r)return!0;i=!0}}return i}function T(e,t,n,r){return v(w([e].flat(),[],n,r),t,null)}async function ee(e,t,n,r){return y(w([e].flat(),[],n,r),t,null)}function*te(e){let t=[],n=!1;for(let r of e){let e=yield*ne(r);t.push(e||r),e&&(n=!0)}return n?t:null}function*ne(e){if(!Array.isArray(e)){let t=e.and&&(yield*re(e.and)),n=e.or&&(yield*re(e.or));return!t&&!n?null:{and:t||e.and,or:n||e.or}}if(e.length===2)return(yield*re(e[1]))?[e[0],e[1]]:null;let t=yield e[1];return t===null?null:[e[0],t,e[2],e[3]]}function*re(e){let t=[],n=!1;for(let r of e){let e=yield*ne(r);t.push(e||r),e&&(n=!0)}return n?t:null}function ie(e,t){if(!e)return[];function n(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let n=e.placeholder;return!n||typeof n!=`string`?null:t(n)}return v(te(e),n,null)||e}function ae(e){return e.map(({field:e,sub:t})=>t.length?[e,...t]:e)}function oe(e){if(e.children)return[ae(e.fields),e.children.map(oe)];let{fields:t,operator:n,value:r,sign:i}=e;return[ae(t),r,n,i]}const se=/^([-_\d\p{L}]+)((?:\[-?\d+\])*)$/u;function ce(e){let t=[];for(let n of e.split(`.`)){if(!n||n[0]===`?`)return null;let e=n.indexOf(`?`),r=se.exec(e>0?n.slice(0,e):n);if(!r)return null;let i=r[2]?.split(/\[|\]/).filter(Boolean).map(e=>parseInt(e)||0)||[],a=e>0?n.slice(e):void 0;t.push({field:r[1],group:a,sub:i})}return t}const E=e=>decodeURIComponent(e.replaceAll(`+`,` `));function le(e){let t=[],n=[],r=t,i=[],a=!1,o=!0;function s(){r.push(E(i.join())),i=[]}for(let t of e){if(t===`,`){a?a=!1:s(),o=!0;continue}if(t===`)`){(o||i.length)&&(s(),o=!1);let e=n.pop();if(!e)return null;e.push(r),r=e,a=!0;continue}if(a)return null;if(o=!1,t!==`(`){i.push(t);continue}if(i.length)return null;n.push(r),r=[]}return(o||i.length)&&s(),n.length?null:t.length===1?t[0]:t}const ue=/^([-_\d\p{L}]+)@([-_\d\p{L}]+)/u;function de(e){if(e===null)return!0;if(e[0]===`?`)return{placeholder:E(e.slice(1))};if(e[0]===`:`)return{field:E(e.slice(1))};if(e[0]===`@`||ue.test(e))return null;if(e.includes(`(`)||e.includes(`)`)){let t=le(e);if(t)return t}return e.includes(`,`)?e.split(`,`).map(e=>E(e.replaceAll(`+`,` `))):E(e)}function*fe(e){let t=e.map(e=>{let t=e.fields,n=t.findLastIndex(e=>e.group);if(n<0||n>=t.length-1)return[e,[],[]];let r=t[n];return r?[{...e,fields:t.slice(n+1)},t.slice(0,n+1),[...t.slice(0,n),{...r,group:void 0}]]:[e,[],[]]}),n=Object.groupBy(t,e=>JSON.stringify(e[1]));yield*n[`[]`]?.map(e=>oe(e[0]))||[],delete n[`[]`];let r=Object.values(n).filter(Boolean).map((e=[])=>e?.length?{fields:e[0][2]||[],children:e.map(e=>e[0])}:{fields:[],children:[]}).filter(e=>e.fields.length);r.length&&(yield*fe(r))}function pe(e){let t=Map.groupBy(e,e=>e.groups.shift()??null),n=t.get(null)||[],r=t.get(``)||[];return t.delete(null),t.delete(``),{or:[...r.map(e=>oe(e)),...[...t.values()].map(e=>pe(e))],and:[...fe(n)]}}function me(e,t=`&`){let n=[],r=[],i=[],a=[],o=0,s=0,c=0,l=!1,u={},d=[];for(let f of typeof e==`string`?e.split(t):[]){if(f[0]===`=`){n.push(f.slice(1));continue}let e=f.indexOf(`=`),t=e<0?f:f.slice(0,e),p=e<0?null:f.slice(e+1);if(e<=0||`.!@^*<>{}[]()+|;,"'\`\\/`.includes(t[0]))continue;if(t[0]===`?`){u[E(t.slice(1))]=E(p||``);continue}if(t[0]===`:`){let e=t.slice(1);if(!p)continue;e===`sort`?a.push(...p.split(`,`).filter(Boolean).map(e=>{let t=e[0]===`-`;return[E(t?e.slice(1):e),t]}).filter(Boolean)):e===`select`?r.push(...p.split(`,`).map(E).filter(Boolean)):e===`primary`?i.push(...p.split(`,`).map(E).filter(Boolean)):e===`limit`?p&&/^\d+$/.test(p)&&(o=parseInt(p)):e===`offset`?p&&/^\d+$/.test(p)&&(s=parseInt(p)):e===`page`?p&&/^\d+$/.test(p)&&(c=parseInt(p)):e===`total`&&p&&(l=!0);continue}let m=t.split(`~`),h=m.pop()||``,g=``;`!`.includes(h[h.length-1])&&(g=`!`,h=h.slice(0,-1));let _=h.split(`:`,3);if(_.length>2)continue;let v=ce(_[0]);if(!v)continue;let y=de(p);if(y===null)continue;let b=E(_[1]||``),x=m.indexOf(``),S=x<0?m:m.slice(0,x+1);d.push({groups:S,fields:v,operator:!b&&y===!0?null:b,sign:g,value:y===!0?null:y})}let{and:f,or:p}=pe(d),m={};n?.length&&(m.values=n),l&&(m.total=l),o&&o>0&&(m.limit=o),c&&c>0&&(m.page=c),s&&s>0&&(m.offset=s),r?.length&&(m.select=r),i?.length&&(m.primary=i),a?.length&&(m.sort=a);let h=f;h?.length&&(m.where=h);let g=p;return g?.length&&(m.orWhere=g),Array.isArray(u)&&u.length&&(m.placeholders=u),m}function he(e,t){let n=t.limit||e.limit||0,r=t.page??e.page,i=[e.primary||``,t.primary||``].flat(),a=t.offset??(t.limit&&(t.page||t.page===0)?(Math.floor(Math.max(t.page||0,1))-1)*t.limit:null)??e.offset??(e.limit&&(e.page||e.page===0)?(Math.floor(Math.max(e.page||0,1))-1)*e.limit:null)??(Math.floor(Math.max(r||0,1))-1)*(n||10),o=[...e.values||[],...t.values||[]],s=[...e.sort||[],...t.sort||[]],c=[...e.select||[],...t.select||[]],l=[...e.where||[],...t.where||[]],u=[...e.orWhere||[],...t.orWhere||[]],d=[...e.or||[],...t.or||[]],f={};return o?.length&&(f.values=o),n&&n>0&&(f.limit=n),(e.total||t.total)&&(f.total=!0),r&&r>0&&(f.page=r),a&&a>0&&(f.offset=a),c?.length&&(f.select=c),s?.length&&(f.sort=s),l?.length&&(f.where=l),u?.length&&(f.orWhere=u),d?.length&&(f.or=d),i.length&&(f.primary=i),f}const D=e=>encodeURIComponent(e).replaceAll(`%20`,`+`);function ge(e){if(Array.isArray(e)){function t(e){return Array.isArray(e)?`(${e.map(t).join(`,`)})`:D(e)}let n=e.map(t).join(`,`);return e.length>1?n:`(${n})`}if(typeof e==`number`)return`${e}`;if(typeof e==`boolean`)return e?`1`:0;if(typeof e!=`object`)return D(e);let{field:t,placeholder:n}=e;return n?`?${D(n)}`:t?`:${D(t)}`:``}function _e(e){return e.map(e=>{let[t,...n]=typeof e==`string`?[e]:e;return`${D(t)}${n.map(()=>`[k]`).join(``)}`}).join(`.`)}function ve([e,t,n,r]){let i=n?`${_e(e)}:${D(n)}${r||``}`:`${_e(e)}${r||``}`;return n===null?i:t===null||typeof t==`function`?``:`${i}=${ge(t)}`}function ye(e){let t=0;return e.flatMap(e=>{if(e.length!==2)return ve(e);let n=ye(e[1]);if(!n.length)return[];let r=_e(e[0]);return n.length>1&&(r+=`?${(t++).toString(36)}`),n.map(e=>`${r}.${e}`)}).filter(Boolean)}function be(e){let t=0;return e.map(e=>Array.isArray(e)?ye([e]):[...ye(e.and||[]),...be(e.or||[])]).flatMap(e=>{if(!e)return[];let n=e.length===1?`~`:`${(t++).toString(36)}~`;return e.map(e=>`${n}${e}`)})}function xe({values:e,where:t,orWhere:n,sort:r,select:i,primary:a,limit:o,offset:s,page:c,total:l,placeholders:u},d){let f=[];for(let t of e||[])t&&f.push(`=${D(t)}`);o&&o>0&&f.push(`:limit=${o}`),l&&f.push(`:total=${l}`),d?c&&c>0&&f.push(`:page=${c}`):s&&s>0&&f.push(`:offset=${s}`);let p=i?.filter(Boolean).map(D).join(`,`);p&&f.push(`.select=${p}`);let m=a?.filter(Boolean).map(D).join(`,`);if(m&&f.push(`.primary=${m}`),r){let e=r.filter(Boolean).map(e=>{if(Array.isArray(e)){let[t,n]=e;if(t)return`${n?`-`:``}${D(t)}`}else if(e)return D(e);return``}).filter(Boolean).join(`,`);e&&f.push(`.sort=${e}`)}if(u&&typeof u==`object`&&!Array.isArray(u))for(let[e,t]of Object.entries(u))f.push(`?${D(e)}=${D(t)}`);for(let e of ye(t||[]))f.push(e);for(let e of be(n||[]))f.push(e);return f.join(`&`)}function Se(e,t,n,...r){function*i(t,n,...r){let a=[];if(n)for(let r of n){let n=yield*e.build(i,t,r);if(n!=null){if(e.value?.(n)===!1)return n;a.push(n)}}orFor:for(let n of r){if(!n)continue;let r=[];for(let o of n){let n=Array.isArray(o)?yield*e.build(i,t,o):yield*i(t,o.and,o.or);if(n!=null){if(e.value?.(n)===!0){a.push(n);continue orFor}r.push(n)}}let o=r.length?e.or(r):null;if(o!=null){if(e.value?.(o)===!1)return o;a.push(o)}}return a.length?e.and(a):null}return i(t,n,...r)}var Ce=p({asyncExec:()=>ee,asyncRunGenerator:()=>y,exec:()=>T,fill:()=>ie,fillMatches:()=>re,merge:()=>he,parse:()=>me,runGenerator:()=>v,stringify:()=>xe,toWhere:()=>Se});const we=Error.prototype;function Te(e,t){if(!(t instanceof Error))throw t;for(let n=Object.getPrototypeOf(t);n;n=Object.getPrototypeOf(n)){let r=e.get(n);if(typeof r==`function`)return r(t);if(n===we)break}throw t}const Ee=()=>!0;function De(e,t){let n=[e].flat();for(let e of t.filter(Boolean)){let t=[];for(let r of n)!r||typeof r!=`object`||Object.hasOwn(r,e)&&t.push(r[e]);if(!t.length)return[];n=t.flat()}return n}function Oe(e,t){if(!t.length)return e;if(!e||typeof e!=`object`)return;let[n,...r]=t;for(let t of[e].flat()){let e=Oe(t[n],r);if(e!==void 0)return e}}function*ke(e,t){for(let n of Object.values(e))for(let e of De(n,t))yield e}var Ae=class e{static build(t){let n=new e;return e.update(n,t)}static update(t,n){let r=!1;return typeof n==`function`?(Object.defineProperty(t.#e,`hooks`,{configurable:!0,get(){let e=n();return typeof e==`object`&&e||{}}}),r=!0):n&&typeof n==`object`&&(Object.defineProperty(t.#e,`hooks`,{configurable:!0,value:n}),r=!0),r&&e.reset(t),t}static reset(e){let t=e.#r,n=e.#e.resetFn;n.sort(([,e],[,t])=>e-t);let r=n.filter(([,e])=>e<=0),i=n.filter(([,e])=>e>0);for(let[e]of r)e();for(let e of ke(t,[`reset`]))typeof e==`function`&&e();for(let[e]of i)e()}#e={hooks:Object.create(null),resetFn:[]};#t=[];#n=`Hook`;[Symbol.iterator](){return this.entries()}[Symbol.toStringTag](){return this.#n}[Symbol.toPrimitive](e){return e===`number`?NaN:`[${this[Symbol.toStringTag]()}]`}get#r(){return this.#e.hooks}get(t){let n=[...this.#t,t],r=new e;return r.#e=this.#e,r.#t=n,r.#n=`Hook(${n.join(`.`)})`,r}call(...e){for(let t of this.values())typeof t==`function`&&t(...e)}first(e){let t=this.#r;if(Object.hasOwn(t,e))return Oe(t[e],this.#t.filter(Boolean))}*plugin(e){let t=this.#r;Object.hasOwn(t,e)&&(yield*De(t[e],this.#t.filter(Boolean)))}values(){return ke(this.#r,this.#t)}*entries(){let e=this.#r,t=this.#t;for(let[n,r]of Object.entries(e))for(let e of De(r,t))yield[n,e]}*entriesObject(e=Ee){for(let[t,n]of this.entries())if(!(!n||typeof n!=`object`))for(let[r,i]of Object.entries(n))e(i)&&(yield[t,r,i])}named(e=Ee){let t=Object.create(null);for(let n of this.values())if(!(!n||typeof n!=`object`))for(let[r,i]of Object.entries(n))e(i)&&(t[r]=i);return t}listen(e,t){if(typeof e!=`function`)return()=>{};let n=this.#e.resetFn,r=[e,Number.isFinite(t)&&t||0];return n.push(r),n.sort(([,e],[,t])=>t-e),()=>{let e=n.findIndex(e=>e===r);e>=0&&n.splice(e,1)}}};const je=/\{([^}{}]+)\}/g;function Me(e){if(!e||typeof e!=`string`)return[];let t=[];for(let n=je.exec(e);n;n=je.exec(e))t.push(n[1]);return t}function O(e,t){if(!e||typeof e!=`string`)return``;let n=typeof t==`object`&&t||{};return e.replace(je,(e,t)=>Object.hasOwn(n,t)?n[t]??``:`${t}`)}function*Ne({constraints:e,organizationField:t}){if(t&&(yield t),e)for(let[t,n]of Object.entries(e)){if(!n)continue;let{value:e,values:r,user:i}=n;e===void 0?(Array.isArray(r)&&r.length||r instanceof Set&&r.size||i)&&(yield t):yield t}}const Pe=/^(?:(?<scope>@[a-zA-Z\d_.-]+)\/)?(?<name>[a-zA-Z\d_.-]+)$/,Fe=/^(?<pluginId>(?:(?<scope>@[a-zA-Z\d_.-]+)\/)?(?<name>[a-zA-Z\d_.-]+))(?:\/(?<path>[^#]*))?(?:#(?<hash>.*))?$/;function Ie(e){return typeof e==`function`}const Le=g({}),k=Ae.build(()=>Le.get());function Re(e){Le.set(e),Ae.reset(k)}function ze(e,t,n){let r=typeof t==`string`?t:``,i=t===!0||n===!0?`[]`:``;return!e||e===`.`?r?`:${r}${i}`:void 0:r?`${e}:${r}${i}`:`${e}${i}`}function Be(e){return typeof e==`boolean`?!e:e}const Ve=_(()=>{let e=new Map;for(let t of k.get(`formFields`).values()){let{type:n,array:r,renderer:i,input:a}=t,o=ze(typeof n==`string`?n:``,typeof i==`string`?i:``,!!r);o&&typeof a==`function`&&e.set(o,a)}return e}),He=_(()=>{let e={},t={};function n(e,t,{not:n,value:r,notValue:i,named:a,notNamed:o,field:s,notField:c},l=``){n&&(typeof r==`function`&&(i=(...e)=>Be(r(...e))),typeof s==`function`&&(c=(...e)=>Be(s(...e))),typeof a==`function`&&(o=(...e)=>Be(a(...e))));let u=Object.hasOwn(e,l)&&e[l]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};e[l]=u,typeof r==`function`&&u.value.push(r),typeof i==`function`&&u.notValue.push(i),typeof a==`function`&&u.named.push(a),typeof o==`function`&&u.notNamed.push(o),typeof s==`function`&&u.field.push(s),typeof c==`function`&&u.notField.push(c);let d=typeof n==`string`&&n||``;if(!d)return;let f=Object.hasOwn(t,d)&&t[d]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};t[d]=u,typeof r==`function`&&f.notValue.push(r),typeof i==`function`&&f.value.push(i),typeof a==`function`&&f.notNamed.push(a),typeof o==`function`&&f.named.push(o),typeof s==`function`&&f.notField.push(s),typeof c==`function`&&f.field.push(c)}for(let r of k.get(`formFields`).values()){let{type:i,array:a,renderer:o,filters:s}=r,c=ze(typeof i==`string`?i:``,typeof o==`string`?o:``,!!a)||(a?`[]`:``),l=Object.hasOwn(e,c)&&e[c]||{},u=Object.hasOwn(t,c)&&t[c]||{};n(l,u,r);for(let[e,t]of Object.entries(s||{}))!t||Array.isArray(t)||typeof t!=`object`||n(l,u,t,e);e[c]=l,t[c]=u}for(let n of Object.keys({...e,...t})){let r=Object.hasOwn(t,n)&&t[n];if(!r)continue;let i=Object.hasOwn(e,n)&&e[n]||{};e[n]=i;for(let e of Object.keys({...i,...r})){let t=Object.hasOwn(r,e)&&r[e];if(!t)continue;let n=Object.hasOwn(i,e)&&i[e]||{value:[],named:[],field:[],notValue:[],notNamed:[],notField:[]};if(i[e]=n,t){for(let e of t.value)n.value.push(e);for(let e of t.notValue)n.notValue.push(e);for(let e of t.named)n.named.push(e);for(let e of t.notNamed)n.notNamed.push(e);for(let e of t.field)n.field.push(e);for(let e of t.notField)n.notField.push(e)}}}return e}),Ue=_(()=>{let e=new Map;for(let t of k.get(`formFields`).values()){let{type:n,array:r,renderer:i,filter:a,filters:o}=t,s=ze(typeof n==`string`?n:``,typeof i==`string`?i:``,!!r);if(!s)continue;let c=e.get(s)||new Map;if(typeof a==`function`){let e=c.get(``);e?e.component=a:c.set(``,{component:a,label:`=`})}for(let[e,t]of Object.entries(o||{})){if(!t)continue;let n=Array.isArray(t)?t[0]:typeof t==`function`?t:t.filter;if(typeof n!=`function`)continue;let r=Array.isArray(t)?t[1]:typeof t==`object`?t.label:null,i=c.get(e);if(!i){c.set(e,{component:n,label:typeof r==`string`?r:``});continue}i.component=n,typeof r==`string`&&(i.label=r)}c.size&&e.set(s,c)}return e});function We(){return He.get()}function*Ge(e){if(e)for(let t of Array.isArray(e)?e:[e]){if(!t)continue;if(typeof t==`string`){yield[t];continue}if(typeof t!=`object`)continue;let e=t.component;!e||typeof e!=`string`||(yield[e,t])}}function*A(e){if(!e)return;let t=typeof e==`string`?e:e.type,n=typeof e==`string`?``:e.renderer,r=typeof e==`string`?``:e.array?`[]`:``;if(!t){for(let[e,t]of Ge(n))yield[`:${e}${r}`,t],yield[`${e}${r}`,t];return}if(typeof t==`object`){for(let[e,t]of Ge(n))yield[`submodel:${e}${r}`,t],yield[`${e}${r}`,t];yield[`submodel${r}`];return}for(let[e,i]of Ge(n))yield[`${t}:${e}${r}`,i],yield[`:${e}${r}`,i],yield[`${e}${r}`,i];yield[`${t}${r}`]}function Ke(e,t){let n=Ve.get();for(let[t,r]of A(e)){let e=n.get(t);if(e)return t=>e(t,r)}return t?null:(typeof e==`string`||e.type,()=>document.createElement(`div`))}function qe(e){let t=Ve.get();for(let[n]of A(e))if(t.get(n))return!0;return typeof e==`string`||e.type,!1}const Je=()=>document.createElement(`div`);function Ye(e,t){let n=Ue.get();for(let[r,i]of A(e)){let e=n.get(r)?.get(t);if(!e)continue;let a=e.component;return e=>a(e,i)}return Je}function Xe(e){let t=Ue.get(),n=Object.create(null);for(let[r]of A(e)){let e=t.get(r);if(e)for(let[t,{label:r}]of e)n[t]||(n[t]=r)}return n}function Ze(e,t){let n=Ue.get();for(let[r]of A(e))if(n.get(r)?.has(t))return!0;return!1}function*Qe(e,t){let n=He.get();for(let[r]of typeof e==`boolean`?e?[[`[]`],[``]]:[[``]]:A(e)){let e=Object.hasOwn(n,r)&&n[r];if(!e)continue;let i=Object.hasOwn(e,t)&&e[t];i&&(yield i)}let r=Object.hasOwn(n,``)&&n[``];if(!r)return;let i=Object.hasOwn(r,t)&&r[t];i&&(yield i)}const $e={api:`/api`,file:`/fileCabinets`};var et=$e;function tt(e=new Date){let t=e.getTimezoneOffset();if(!t)return`Z`;let n=t<0?`+`:`-`;return t=Math.abs(t),n+[Math.floor(t/60),t%60].map(e=>`${e}`.padStart(2,`0`)).join(`:`)}function nt(e){return[e.getHours(),e.getMinutes(),e.getSeconds()].map(e=>`${e}`.padStart(2,`0`)).join(`:`)}function rt(e){return[`${e.getFullYear()}`.padStart(4,`0`),`${e.getMonth()+1}`.padStart(2,`0`),`${e.getDate()}`.padStart(2,`0`)].join(`-`)}function it(e){return nt(e)+`.${e.getMilliseconds()}`.padStart(3,`0`)+tt(e)}function at(e){return rt(e)+`T`+it(e)}var ot=class e extends d{build(){return new e}method(e,t){return super.method(`POST`,t).header(`X-Method`,e)}};function st(e){return e.json().then(e=>Promise.reject(e?.error))}function ct(e){return e.status,st(e)}const lt=new ot().get().prefix(et.api).stringifyJSON(e=>JSON.stringify(e,(e,t)=>t instanceof Date?at(t):typeof t==`bigint`?String(t):t instanceof Set?[...t]:t)).errorHandler(st);var j=lt.clone().errorHandler(ct);const M=await lt.clone().get`application`.query({domain:location.hostname,port:location.port,path:location.pathname}).json(),N=window.yongdallPlugins,ut=M.id,dt=M.pages||{},ft=new URL(M.path||`/workbench/`,location.origin),pt=ft.href,mt=ft.pathname,ht=g(M.menus||[]),gt=g(M.userMenus||[]),_t=g(!1);async function vt(){if(!_t.get()){_t.set(!0);try{let e=await lt.clone().get`applications`.append(`${ut}`).json();if(!M||typeof e!=`object`)return;ht.set(e.menus||[]),gt.set(e.userMenus||[])}finally{_t.set(!1)}}}const P={get id(){return ut},get path(){return mt},get root(){return pt},get theme(){return M.theme},get route(){return M.route},get authenticator(){return M.authenticator},get skin(){return M.skin},get menus(){return ht.get()},get userMenus(){return gt.get()},get logo(){return M.logo},get title(){return M.title},get company(){return M.company},get help(){return M.help},get refreshing(){return _t.get()},refresh:vt};function yt(e,t,n){let r={};function i(...i){let a=t(...i);if(Object.hasOwn(r,a)&&!n?.(...i))return r[a];let o=e(...i);return r[a]=o,o}return i}const{authRequired:bt,multiUser:xt}=M,F=g(null),St=g(null),Ct=_(()=>St.get()||F.get()),wt=yt(e=>{let t=_(()=>F.get()?.plugins?.[e]||null),n=_(()=>St.get()?.plugins?.[e]||null),r=_(()=>Ct.get()?.plugins?.[e]||null);return{get session(){return t.get()},get target(){return n.get()},get current(){return r.get()}}},e=>e||``),I=g(!1),Tt=g(!1),Et=_(()=>Tt.get()?!0:!(!bt||I.get()||F.get()));function Dt(e){return new Set(e.filter(e=>e&&typeof e==`string`))}function Ot(e){let t=e.plugins;if(t&&typeof t==`object`)for(let[n,r]of k.get(`user`).get(`permissions`)){if(typeof r!=`function`||!Object.hasOwn(t,n))continue;let i=t[n];if(!i||typeof i!=`object`)continue;let a=r(i,e);if(a instanceof Set)return a}let n=e.permissions;return Array.isArray(n)?Dt(n):new Set}function kt(e){let t=e.plugins;if(t&&typeof t==`object`)for(let[n,r]of k.get(`user`).get(`organizationPermissions`)){if(typeof r!=`function`||!Object.hasOwn(t,n))continue;let i=t[n];if(!i||typeof i!=`object`)continue;let a=r(i,e);if(a)return a}let n=e.organizationPermissions;if(n&&typeof n==`object`&&!Array.isArray(n)){let e=Object.entries(n).filter(e=>Array.isArray(e[1]));if(e.length)return Object.fromEntries(e.map(([e,t])=>[e,Dt(t)]))}let{organizationRolePermissions:r,organizationRoles:i}=e;return!i||typeof i!=`object`||Array.isArray(i)||!r||typeof r!=`object`||Array.isArray(r)?null:Object.fromEntries(Object.entries(i).map(([e,t])=>[e,Dt(t.flatMap(e=>Object.hasOwn(r,e)&&r[e]||[]))]))}const At=_(()=>{let e=Ct.get();return e?Ot(e):null}),jt=_(()=>{let e=Ct.get();return e?kt(e):null}),Mt=_(()=>{let e=jt.get();return e?new Set(Object.values(e).flatMap(e=>[...e])):null});function Nt(){return I.get()?{has:()=>!0,get size(){return-1}}:new Set}const L={get multi(){return!!xt},get single(){return I.get()},get session(){return F.get()},get target(){return St.get()},get current(){return Ct.get()},hasPermission(e){return At.get()?.has(e)??I.get()},hasOrganizationPermission(e,t){if(typeof t!=`string`)return Mt.get()?.has(e)??I.get();let n=jt.get();return n?Object.hasOwn(n,t)?n[t]?.has(e)??!1:!1:I.get()},get permissions(){return At.get()||Nt()},get organizationPermissions(){return jt.get()||new Proxy({},{get(){return Nt()}})},get allOrganizationPermissions(){return Mt.get()||Nt()},get waitLogin(){return Et.get()},plugin(e){return wt(e)},async load(){let{session:e,target:t}=await lt.clone().get`user`.json().then(e=>e||{},()=>({}));return St.set(t||null),e===!0?(I.set(!0),F.set(null)):(I.set(!1),F.set(e||null)),e&&Tt.set(!1),!!e},exit(){St.set(null),F.set(null),lt.clone().delete`user`.done()},login(e=!0){Tt.set(!!e)}};function Pt(e,t,n){if(!e)return!0;let r=typeof e==`string`?e.split(`
|
|
2
2
|
`):e;if(!Array.isArray(r))return!0;let i=r.filter(e=>e&&typeof e==`string`);if(!i.length)return!0;for(let e of i)if(e[0]===`#`){if(n?.has(e.slice(1)))return!0}else if(t.has(e))return!0;return!1}function Ft(e,t){if(!e||!t||typeof t!=`object`)return!0;for(let[n,r]of Object.entries(e)){if(!r)continue;let{value:e,values:i,user:a}=r,o=t[n];if(e!==void 0){if(o!==e)return!1}else if(Array.isArray(i)&&i.length){if(!i.includes(o))return!1}else if(i instanceof Set&&i.size){if(!i.has(o))return!1}else if(a&&!L.single&&o!==L.current?.id)return!1}return!0}function It({permission:e,organizationField:t,constraints:n},r,i,a){if(!Ft(n,r))return!1;if(!e)return!0;if(!t)return L.hasPermission(e);if(t===`_`)return!!(i&&L.hasOrganizationPermission(e));if(i||t===a)return!0;let o=String(r?.[t]||``);return(!i||o)&&L.hasOrganizationPermission(e,o||``),!0}function Lt(e,t,n){let r=e.filter(({authorizations:e})=>{if(e instanceof Set||Array.isArray(e))return!0}).filter(e=>It(e,t,n)).flatMap(({authorizations:e})=>e?[...e]:[]);return new Set(r)}function Rt(e,t,n,r,i){return!!t.filter(({authorizations:t})=>{if(t instanceof Set)return t.has(e);if(Array.isArray(t))return t.includes(e)}).find(e=>It(e,n,r,i))}function zt(e,t,n){let r=t.filter(({authorizations:t})=>{if(t instanceof Set)return t.has(e);if(Array.isArray(t))return t.includes(e)}).filter(({permission:e,organizationField:t})=>e?t?L.hasOrganizationPermission(e):L.hasPermission(e):!0);if(!r?.length)return new Set;let i=new Set(r.flatMap(e=>e.group||``)),a=new Set(r.flatMap(e=>e.fields||``));if(i.delete(``),a.delete(``),!(i.size+a.size))return new Set;function*o(e,t){for(let[n,r]of e){if(!r)continue;let e=[...t,n],s=e.join(`.`);if(!r.primary&&!i.has(r.group||``)&&!a.has(s)&&!a.has(`*`))continue;yield s;let{type:c}=r;!c||typeof c!=`object`||(yield*o(Object.entries(c),e))}}return new Set(o(Object.entries(n.fields),[]))}function Bt(e){return new Proxy({},{get(t,n,r){return e.value?.[n]},set(){return!1}})}function Vt(e,t,n,r){let i=n?.length?t=>{let r=t.root,i=r.new;return!Rt(i?`create`:`update`,n,Bt(r),i,e)}:null;return typeof r==`function`&&i?e=>i(e)||!!r(e):i||(typeof r==`function`?e=>!!r(e):typeof t==`boolean`?t:null)}function Ht(e,t,n,r,i){let a=[];if(typeof i==`function`)a.push(i);else if(n===!0)return!0;return t.uncreatable&&a.push(e=>e.root.new),r&&a.push(r.length?t=>{let n=t.root,i=n.new;return!Rt(`read`,r,Bt(n),i,e)}:()=>!L.single),a.length?e=>{for(let t of a)if(t(e))return!0;return!1}:null}function Ut(e,t){return typeof t==`function`?e=>!!t(e):typeof e==`boolean`?e:null}function Wt(e,t,n){let r=e.group||``,i=e.script||{},a=n?.filter(({group:e,fields:n})=>{if(e===r||Array.isArray(e)&&e.includes(r)||n===t||n===`*`)return!0;if(!Array.isArray(n))return!1;if(n.includes(t)||n.includes(`*`))return!0});return{meta:e,hidden:Ht(t,e,e.layout?.hidden,a,i?.hidden),readonly:Vt(t,e.readonly,a,i.readonly),required:Ut(e.required,i.required),clearable:Ut(e.clearable,i.clearable),disabled:Ut(e.disabled,i.disabled),creatable:!e.uncreatable,immutable:e.immutable,label:e.label||t,description:e.description,placeholder:e.placeholder,step:e.step,max:e.max,min:e.min,default:i.default||e.default,validator:i.validator,validators:i.validators,events:{input:i.input,change:i.change,click:i.click,focus:i.focus,blur:i.blur}}}function Gt(e,t,n){let r=Object.create(null);for(let[i,a]of Object.entries(e)){let e=t[i],o=a.type,s=a.layout||{};if(typeof o!=`object`||!o){r[i]={...Wt(a,i,n),type:o,array:!!a.array,component:typeof e==`function`?e:a.script?.component,layout:{field:i,colStart:s.colStart,colSpan:s.colSpan,colEnd:s.colEnd,rowStart:s.rowStart,rowSpan:s.rowSpan,rowEnd:s.rowEnd}};continue}let c=Object.entries(o).filter((([,e])=>!!e)),l=s.levelKey||``,u=[];if(l){if(Array.isArray(s.columns))for(let{action:e,actions:t,field:n,placeholder:r,width:i}of s.columns)if(n||i||r)(n||i)&&u.push({field:n,width:i}),r&&!i&&u.push({placeholder:r});else{let n=[e,t].flat().filter(Boolean);n&&u.push({actions:n})}if(!u.length){u.push({actions:[`collapse`,`move`]});let e=c.filter(([,e])=>e.layout?.head).sort(([,e],[,t])=>(e.layout?.head||0)-(t.layout?.head||0)).map(([e,t])=>e);for(let t of e)u.push({field:t});u.push({placeholder:1}),u.push({actions:[`add`,`remove`]})}}else{if(Array.isArray(s.columns))for(let{action:e,actions:t,field:n}of s.columns)if(n)u.push({field:n});else{let n=[e,t].flat().filter(Boolean);n&&u.push({actions:n})}if(!u.length){u.push({actions:[`add`,`trigger`,`move`,`remove`,`serial`]});let e=c.filter(([,e])=>e.layout?.head).sort(([,e],[,t])=>(e.layout?.head||0)-(t.layout?.head||0)).map(([e,t])=>e);for(let t of e)u.push({field:t})}}let d=Gt(o,typeof e!=`function`&&e||{},n);r[i]={...Wt(a,i,n),layout:{field:i,fields:Object.entries(d).sort(([e],[t])=>(o[e]?.layoutOrder||0)-(o[t]?.layoutOrder||0)).map(([e,t])=>({...t.layout,field:e})),columns:u,arrayStyle:l?`tree`:`table`,levelKey:l,colStart:s.colStart,colSpan:s.colSpan,colEnd:s.colEnd,rowStart:s.rowStart,rowSpan:s.rowSpan,rowEnd:s.rowEnd},type:d,array:!!a.array,component:typeof e==`function`?e:a.script?.component}}return r}function Kt(e,t){if(typeof t==`function`)return t;let n=e.component;if(typeof n==`function`)return n;let i=e.meta;return Ke({type:e.type,array:e instanceof r,renderer:[t,i?.renderer,e.component].flat()},!0)||(e instanceof a||e instanceof r&&typeof e.type==`object`?null:()=>document.createElement(`div`))}function qt(e,t,n,r){let i=Kt(e,n);if(!i)return null;let{relate:a}=r||{},o=e.meta,s=g(!1),c=!1,l=new Map;function u(t,n){e.emit(t,n)}let d=new Set,f=new AbortController().signal,p=r?.editable||!1,m=i({field:o,style:{...t},store:e,get editable(){return p},get name(){return e.index},get current(){return(e.parent||e.root).value},get required(){return e.required},get hidden(){return e.hidden},get readonly(){return e.readonly},get label(){return e.label||``},get placeholder(){return e.placeholder||``},get description(){return e.description||``},signal:f,listen(e,t){let n=t.bind(this),r=l.get(e);return r||(r=new Set,l.set(e,r)),r.add(n),()=>{r?.delete(n)}},emit(e,t){u(e,t)},get value(){return e.value},set value(t){c||(e.value=t)},get destroyed(){return s.get()},get nullable(){return o.nullable},get disabled(){return e.disabled},get clearable(){return e.clearable}});function h(e,...t){for(let n of[...l.get(e)||[]])n(...t)}let _=a?.(e,{focus(){h(`focus`)},scrollIntoView(){h(`scrollIntoView`)},root:m});return r?.signal?.addEventListener(`abort`,()=>{c=!0,s.set(!0);for(let e of d)e();_?.()},{once:!0}),m}function Jt(e,t,{enableLink:n,design:r,layout:i,editable:a,signal:o}={}){let s={enableLink:n,design:r};return l(e,(e,t,n)=>qt(e,s,t,n),t,i||{},{editable:a||!1,signal:o})}const R=new AbortController().signal,Yt=_(()=>k.get(`formRenderers`).named());function Xt(e){if(!e)return null;let t=Yt.get();if(!Object.hasOwn(t,e))return null;let n=t[e];if(!n)return null;let r=n.render;return typeof r==`function`?r:null}function Zt(e,t,n){let{type:r,editable:i,signal:a,model:o,layout:s,enableLink:c,design:l,...u}=n||{};(Xt(r)||Jt)(e,t,{model:o||null,layout:s||null,editable:!!i,signal:a||R,enableLink:!!c,design:!!l,...u})}function Qt(e,t){let n=typeof t==`object`&&t||{},r=Gt(e.fields,n,e.permissions);return s.create(r)}function $t(e,t,n,r){let i=g(!1),a=!1,o=new Map,s=g(r[e]),c=Ke(t),l=new AbortController,u=l.signal;return{root:c({field:t,style:{...n},get editable(){return!1},get name(){return e},get current(){return r},get required(){return!1},get hidden(){return!1},get readonly(){return!0},get label(){return``},get placeholder(){return``},get description(){return``},signal:u,listen(e,t){let n=t.bind(this),r=o.get(e);return r||(r=new Set,o.set(e,r)),r.add(n),()=>{r?.delete(n)}},emit(){},get value(){return s.get()},set value(e){},get destroyed(){return i.get()},get nullable(){return!0},get disabled(){return!1},get clearable(){return!1}}),destroy(){a||(a=!0,i.set(!0),l.abort())},get value(){return s},set value(e){a||s.set(e)}}}function en(e,t,n,r){let i=t.split(`.`),a=!!r,o=typeof n==`string`?n:``;function s(e){if(!Array.isArray(e)||e.length===2||!!e[3]!==a||e[2]!==o)return!1;let t=e[0];if(t.length!==i.length)return!1;for(let[e,n]of t.entries())if((typeof n==`string`?n:n[0])!==i[e])return!1;return!0}function c(t){let n=e.get(),a=n.findIndex(s);if(a<0){t!=null&&e.set([...n,[i,t,o,r?`!`:``]]);return}if(t!==null){let r=[...n[a]];r[1]=t,e.set([...n.slice(0,a),r,...n.slice(a+1)])}else e.set([...n.slice(0,a),...n.slice(a+1)])}function l(){return e.get().find(s)?.[1]}let u=_(l);return{get(){return u.get()},set:c}}function tn(e,t,n,r,i,a){let o=en(e,t,r),s=Ye(n,r),c=g(!1),l=s({field:n,style:{...i,quick:!0},get operator(){return r},get value(){return o.get()},set value(e){c.get()||o.set(e)},signal:a||R,get destroyed(){return c.get()}});return a?.aborted?c.set(!0):a?.addEventListener(`abort`,()=>{c.set(!0)},{once:!0}),l}function nn(e,t,n,{fields:r,showLabel:i,inline:a,signal:o}){if(o?.aborted)return;let s={showLabel:i,inline:a};for(let{field:i,operator:a}of n){let n=Object.hasOwn(r,i)&&r[i];if(!n)continue;let c=n.type;if(!c||typeof c==`object`)continue;let l=tn(e,i,n,a,s,o);t.appendChild(l),o?.addEventListener(`abort`,()=>{l.remove()},{once:!0})}}function rn(e,t,n,r,i,a){let o=g(!1),s=n,c=r;return a.addEventListener(`abort`,()=>{o.set(!0)},{once:!0}),e({field:t,style:i,get operator(){return c.get()},get value(){return s.get()},set value(e){o.get()||(s.get(),s.set(e))},signal:a,get destroyed(){return o.get()}})}function an(e,t,n,r,i){let a={...r};delete a.quick,delete a.showLabel;let o=i?.aborted||!1;i?.addEventListener(`abort`,()=>{o=!0},{once:!0});let s=Xe(e),c=document.createElement(`span`);c.classList.add(`FieldFilter-main`);let l=c.appendChild(document.createElement(`select`));l.classList.add(`FieldFilter-operator`);for(let[e,t]of Object.entries(s)){let n=document.createElement(`option`);n.value=e,n.label=t||e,l.appendChild(n)}let u=Ye(e,n.get()),d=new AbortController,f=rn(u,e,t,n,a,i?AbortSignal.any([d.signal,i]):d.signal),p=c.appendChild(f);p.classList.add(`FieldFilter-value`);function m(r){if(o||typeof r!=`string`||r===n.get())return;r in s,l.value=r;let m=Ye(e,r);if(m===u){n.set(r);return}d.abort(),p.remove(),u=m,n.set(r),d=new AbortController,f=rn(u,e,t,n,a,i?AbortSignal.any([d.signal,i]):d.signal),p=c.appendChild(f),p.classList.add(`FieldFilter-value`)}return l.addEventListener(`input`,()=>m(l.value)),m(l.value),c}function on(e,t,n){e.classList.add(`FieldFilter-filters`);let r=new AbortController,i=r.signal,a=Array.isArray(n)?structuredClone(n):[],o=new Map(Object.entries(t).filter(([,e])=>{let t=e.type;return!(!t||typeof t==`object`)})),s={quick:!1,showLabel:!1,inline:!0};function c(t){let n=e.appendChild(document.createElement(`div`));n.classList.add(`FieldFilter-field`);let r=document.createElement(`select`);r.classList.add(`FieldFilter-fieldName`),n.appendChild(r);let c=document.createElement(`button`);c.classList.add(`FieldFilter-remove`),c.type=`button`,n.appendChild(c),r.appendChild(document.createElement(`option`));for(let[e,t]of o){let n=t.type;if(!n||typeof n==`object`)continue;let i=document.createElement(`option`);i.value=e,i.label=t.label||e,r.appendChild(i)}let l=null;c.appendChild(document.createTextNode(`移除`)),c.addEventListener(`click`,()=>{l?.abort();let t=[...e.children].indexOf(n);t<0||(n.remove(),a.splice(t,1))});let u=g(),d=g(``);function f(){let t=[...e.children].indexOf(n);if(t<0)return;let r=a[t],i=u.get(),o=d.get();if(r&&r.length!==2){let e=r[0],t=e.length===1&&e[0],n=typeof t==`string`?t:Array.isArray(t)&&t.length===1?t[0]:``;if(!n&&!l||r&&l&&n===l.name&&r[2]===o&&r[1]===i)return}a.splice(t,1,l?[[l.name],i,o]:null)}if(r.addEventListener(`change`,()=>{let e=r.value,t=o.get(e);if(!l&&!t||l?.name===e)return;if(l?.abort(),!t){l=null,f();return}let a=new AbortController,p=AbortSignal.any([a.signal,i]);u.set(void 0),d.set(``);let h=an(t,u,d,s,p);l={name:e,abort(){a.abort()}},n.insertBefore(h,c),p.addEventListener(`abort`,()=>{h.remove()}),m(f,p)}),!t)return;let p=t[0],h=p.length===1&&p[0],_=typeof h==`string`?h:Array.isArray(h)&&h.length===1?h[0]:``;if(r.value=_,!r.value)return;let v=r.value,y=o.get(v);if(!y)return;let b=new AbortController,x=AbortSignal.any([b.signal,i]);v===_?(u.set(t[1]),d.set(t[2]||``)):(u.set(void 0),d.set(``));let S=an(y,u,d,s,x);l={name:v,abort(){b.abort()}},n.insertBefore(S,c),x.addEventListener(`abort`,()=>{S.remove()}),m(f,x)}function l(){for(let e of a)c(e)}l();let u=!1;return{root:e,add:()=>c(),destroy(){return u?a:(u=!0,e.innerHTML=``,r.abort(),a)}}}async function sn(e,t,n,r){if(r?.aborted)return Promise.reject(r.reason);let{resolve:i,reject:a,promise:o}=Promise.withResolvers(),s=e.fields,c=Array.isArray(t)?structuredClone(t):[],l=new Map(Object.entries(s).filter(([,e])=>{let t=e.type;return!(!t||typeof t==`object`)})),u=document.createElement(`dialog`);u.classList.add(`FieldFilter-dialog`);let d=u.appendChild(document.createElement(`div`));d.classList.add(`FieldFilter-filters`);let f=u.appendChild(document.createElement(`form`));f.classList.add(`FieldFilter-form`);let p=f.appendChild(document.createElement(`select`));p.classList.add(`FieldFilter-add`);let h=f.appendChild(document.createElement(`button`));p.classList.add(`FieldFilter-ok`);let _=f.appendChild(document.createElement(`button`));p.classList.add(`FieldFilter-cancel`),h.value=`ok`,f.method=`dialog`,h.appendChild(document.createTextNode(`确认`)),_.appendChild(document.createTextNode(`取消`));let v=p.appendChild(document.createElement(`option`));v.label=`<添加>`;for(let[e,t]of l){let n=t.type;if(!n||typeof n==`object`)continue;let r=document.createElement(`option`);r.value=e,r.label=t.label||e,p.appendChild(r)}function y(e,t,n,i){let a=new AbortController,o=r?AbortSignal.any([r,a.signal]):a.signal,s=d.appendChild(document.createElement(`div`));s.classList.add(`FieldFilter-field`);let l=document.createElement(`span`);l.classList.add(`FieldFilter-fieldName`),s.appendChild(l),l.appendChild(document.createTextNode(n.label||t));let u={inline:!0},f=Xe(n);document.createElement(`span`).classList.add(`FieldFilter-main`);let p=s.appendChild(document.createElement(`select`));p.classList.add(`FieldFilter-operator`);for(let[e,t]of Object.entries(f)){let n=document.createElement(`option`);n.value=e,n.label=t||e,p.appendChild(n)}let h=document.createElement(`button`);h.classList.add(`FieldFilter-remove`),h.type=`button`,s.appendChild(h),h.appendChild(document.createTextNode(`移除`)),h.addEventListener(`click`,()=>{a.abort();let e=[...d.children].indexOf(s);e<0||(s.remove(),c.splice(e,1))});function _(e,t){let n=[...d.children].indexOf(s);if(n<0)return-1;let r=c[n];return!r||Object.is(e,r[1])||Object.is(t,r[2])?n:-1}let v=e[2]||``;p.value=v;let y=e[1];p.value!=v&&(v=p.value,y=null);let b=g(y),x=g(v);m(()=>{let e=b.get(),t=x.get(),n=_(e,t);n<0||c.splice(n,1,[i,e,t])},o);let S=Ye(n,x.get()),C=new AbortController,w=rn(S,n,b,x,u,AbortSignal.any([C.signal,o]));p.value=x.get();let T=s.insertBefore(w,h);T.classList.add(`FieldFilter-value`),p.addEventListener(`input`,()=>{let e=p.value;if(e in f,typeof e!=`string`)return;let t=Ye(n,e);if(t===S){x.set(e);return}C.abort(),T.remove(),S=t,x.set(e),C=new AbortController,w=rn(S,n,b,x,u,AbortSignal.any([C.signal,o])),T=s.insertBefore(w,h),T.classList.add(`FieldFilter-value`)})}for(let e of c){let t=e[0],n=t.length===1&&t[0],r=typeof n==`string`?n:Array.isArray(n)&&n.length===1?n[0]:``,i=l.get(r);i&&y(e,r,i,t)}return p.addEventListener(`change`,()=>{let e=p.value;p.value=``;let t=l.get(e);t&&y([[e],``,``],e,t,[[e]])}),u.addEventListener(`close`,()=>{if(d.innerHTML=``,u.remove(),r?.aborted)return a(r.reason);if(u.returnValue!==`ok`)return a(Error(`User canceled`));i(c.filter(Boolean))}),(n||document.body).appendChild(u),u.showModal(),o}function z(...e){let t=`/`;for(let n of e){let e=t.lastIndexOf(`?`);e>=0&&t.lastIndexOf(`#`)<e&&(t+=`#`),t+=`/`+n}t=t.split(`#`).map(e=>{let t=e.indexOf(`?`),n=t>=0?e.slice(0,t):e,r=t>=0?e.slice(t):``,i=n.split(`/`),a=i.shift()||``,o=[];for(let e of i)if(e&&e!==`.`){if(e===`..`){o.pop();continue}o.push(e)}return o.unshift(a),`${o.join(`/`)}${r}`}).join(`#`);let n=P.path;if(t.startsWith(n))return t;let r=t.indexOf(`?`),i=t.indexOf(`#`),a=r<0?i:i<0?r:Math.min(r,i),o=a<0?t:t.slice(0,a);return o.length!==n.length-1||!n.startsWith(o)?t:a<0?n:n+t.slice(a)}function cn(e){return!e||typeof e!=`string`?!1:Pe.test(e)}function ln(e,t){let{promise:n,resolve:r,reject:i}=Promise.withResolvers();return e instanceof AbortSignal&&(e.aborted?t?i(e.reason):r():e.addEventListener(`abort`,()=>{t?i(e.reason):r()},{once:!0})),n}function un(e,t){if(!e||typeof e!=`string`)return null;let n=e.slice(0,2);if(n===`#!`||n===`#?`){let t=n.indexOf(`
|
|
3
3
|
`);if(t<0)return null;e.slice(0,t),e=e.slice(t+1)}return null}let dn={imports:{},scopes:{}};try{let{imports:e={},scopes:t={}}=JSON.parse(document.querySelector(`script[type=importmap]`)?.textContent||``);dn={imports:e,scopes:t}}catch{}async function B(e,t,n){if(!e)return;e[0];let r=e.indexOf(`#`),i=r<0?e:e.slice(0,r);t&&typeof t==`string`&&(!i||i===`@`?i=t:i.startsWith(`@/`)&&(i=t+i.slice(1)));let a=await([t,n].find((e=>typeof e==`function`))||(e=>import(e)))(i).catch(e=>{console.error(e)});if(r<0)return a;let o=e.slice(r+1);if(!o)return a.default;let s=a;for(let e of o.split(`.`)){if(!s||typeof s!=`object`)return;s=s[e]}return s}function fn(e,t){if(!t)return null;let n=t[e];if(n)return n;let r=0,i=``;for(let n of Object.entries(t)){let[t,a]=n;t[t.length-1]===`/`&&e.startsWith(t)&&t.length>r&&(r=t.length,i=a)}return r?(i[i.length-1]!==`/`&&(i+=`/`),i+e.slice(r)):null}function pn(e,t){let n=``,r=null;for(let[e,i]of Object.entries(dn.scopes))t.startsWith(e)&&e.length>n.length&&(n=e,r=i);return fn(e,r)||fn(e,dn.imports)}function mn(e,t,n){let r=!(n&&t)&&Fe.exec(e)?.groups;if(r){let{pluginId:t,path:n}=r,i=Object.hasOwn(N,t)&&N[t]||{},a=`/assets/plugins/${t}/${i.version||`VERSION`}/`,o=location.origin+a,s=i.assets?.[n]||pn(e,a);if(s)return new URL(s,o).href}let i=t&&N[t]||{},a=i.version||`VERSION`,o=t?`/assets/plugins/${t}/${a}/`:``,s=t?location.origin+o:location.href;t&&e[0]!==`.`&&e[0];let c=i.assets?.[e]||o&&pn(e,o)||e;return new URL(c,s).href}const hn=Object.create(null);function gn(e,t,n){let r=document.createElement(`link`),i=mn(e,t,n),a=hn[i];if(a)return a;let o=new Promise((e,t)=>{r.addEventListener(`load`,()=>e(r)),r.addEventListener(`error`,e=>t(e.error)),r.href=i,r.rel=`stylesheet`,document.head.appendChild(r)});return hn[i]=o,o.catch(()=>{a===hn[i]&&delete hn[i]}),o}var V=class extends Error{constructor(e){super(`${e}`),this.status=e}};function H(e,t,...n){let r=Object.create(null),i=new Set,a=Object.create(null),o=Object.create(null),s=[],c=new Set;function l(t,n){let i=e(...n);return r[t]=i,i.then(e=>{let n=a[t];if(n)return n.set(e);a[t]=g(e);for(let e of s)e(t)},()=>{r[t]===i&&delete r[t]}),i}function u(e){c.has(e)||(c.add(e),requestIdleCallback(()=>{if(!c.has(e))return;c.delete(e);let t=o[e];t&&l(e,t)}))}for(let e of n)e.listen(u);function d(e,...n){let s=Array.isArray(e)?e.join(`
|
|
4
|
-
`):e;o[s]=n;function c(e){return!e&&Object.hasOwn(r,s)&&r[s]||l(s,n)}function u(){(!Object.hasOwn(r,s)||!r[s]||i.has(s))&&(l(s,n),i.delete(s));let e=a[s];return e||(e=g(t),a[s]=e),e.get()}function d(){o[s]===n&&(delete o[s],delete a[s],delete r[s])}return{get:u,load:c,destroy:d}}function f(e){s.push(e)}return{create:d,listen:f}}function U(e){return{then(t,n){return e().then(t,n)},catch(t){return e().catch(t)},finally(t){return e().finally(t)}}}function _n(e){return Promise.all(Array.isArray(e)?e.map(async e=>{let t=typeof e==`string`?e:e[0];if(!t||typeof t!=`string`)return;let n=await B(t);if(typeof n!=`function`)return n;let r=typeof e==`string`?null:e[1];return n(typeof r==`object`&&r||{})}):[])}async function vn({type:e,scripts:t,...n},r){let i=Object.create(null),a=Object.create(null);for(let e of[await _n(t),r].flat()){if(!e||typeof e!=`object`)continue;let{subFields:t,...n}=e;for(let[e,t]of Object.entries(n)){let n=a[e];n?n.push(t):a[e]=[t]}if(t)for(let[e,n]of Object.entries(t)){let t=i[e];t?t.push(n):i[e]=[n]}}return{...n,script:bn(a),type:typeof e==`object`&&e?await yn(e,i):e}}async function yn(e,t){let n=Object.entries(e).map(([e,n])=>Promise.all([e,vn(n,t[e])]));return Object.fromEntries(await Promise.all(n))}function W(e,t){if(!e)return null;let n=e.filter(e=>typeof e==`function`);return n.length?t?(...e)=>{for(let t of n)t(...e)}:async(...e)=>{for(let t of n)await t(...e)}:null}function bn(e){return{input:W(e.input),change:W(e.change),click:W(e.click),focus:W(e.focus),blur:W(e.blur),add:e.add?.find(e=>typeof e==`function`),remove:W(e.remove),move:W(e.move)}}function xn({listScripts:e,documentScripts:t,...n}){return{input:W(n.input),change:W(n.change),beforeCreate:W(n.beforeCreate),beforeUpdate:W(n.beforeUpdate),beforeSave:W(n.beforeSave),beforeDestroy:W(n.beforeDestroy),beforeUpsert:W(n.beforeUpsert),listScripts:e?Object.assign({},...e):{},documentScripts:t?Object.assign({},...t):{}}}async function Sn({fields:e,scripts:t,...n}){let r=Object.create(null),i=Object.create(null);for(let e of await _n(t)){if(!e||typeof e!=`object`)continue;let{fields:t,...n}=e;for(let[e,t]of Object.entries(n)){let n=i[e];n?n.push(t):i[e]=[t]}if(t)for(let[e,n]of Object.entries(t)){let t=r[e];t?t.push(n):r[e]=[n]}}return{...n,script:xn(i),fields:await yn(e,r)}}const Cn=H(e=>e.clone().body({}).json().then(e=>e.options),[]);function wn(e,t){let n=e.clone().append(`/documents`),r=e.clone().append(`/options`),{get:i,load:a}=Cn.create(t,r);return{async query({values:e,where:t,orWhere:r,sort:i,limit:a=20,page:o,offset:s,select:c,total:l}={}){return n.clone().body({values:e,where:t,orWhere:r,sort:i,limit:a,page:o,offset:s,select:c,total:l}).json()},getOptions(){return i()},async options(e){if(!e||typeof e==`boolean`)return a(e);let{values:t,where:n,orWhere:i,sort:o,limit:s=20,page:c,offset:l,select:u,total:d}=e;return r.clone().body({values:t,where:n,orWhere:i,sort:o,limit:s,page:c,offset:l,select:u,total:d}).json()},async option(e){return r.clone().append(`/${encodeURIComponent(e)}`).get().json()},async create(e){return n.clone().post().body({document:e}).json()},document(e){let t=n.clone().append(`/${encodeURIComponent(e)}`);async function r(){return t.get().json().then(e=>e.document)}return{get:r,async update(e){return t.clone().put().body({document:e}).json()},async delete(){return t.delete().done()},field(e){let n=t.clone().append`fields/${e}`;async function r(){return n.get().json().then(e=>e.value)}return{get:r,...U(r)}},...U(r)}}}}const Tn=H(e=>e.result().then(e=>typeof e==`object`&&e||null,e=>Promise.reject(new V(e instanceof Response?e.status:100))),null),En=H(e=>e().then(async e=>e&&Sn(e)),null,Tn);function Dn(e){let t=j.clone().path`models/${e||``}`,{get:n,load:r}=Tn.create(e,t),{get:i,load:a}=En.create(e,r);return{loadModel:r,loadScript:a,getModel:n,getScript:i,...wn(t,[e,``].join(`
|
|
4
|
+
`):e;o[s]=n;function c(e){return!e&&Object.hasOwn(r,s)&&r[s]||l(s,n)}function u(){(!Object.hasOwn(r,s)||!r[s]||i.has(s))&&(l(s,n),i.delete(s));let e=a[s];return e||(e=g(t),a[s]=e),e.get()}function d(){o[s]===n&&(delete o[s],delete a[s],delete r[s])}return{get:u,load:c,destroy:d}}function f(e){s.push(e)}return{create:d,listen:f}}function U(e){return{then(t,n){return e().then(t,n)},catch(t){return e().catch(t)},finally(t){return e().finally(t)}}}function _n(e){return Promise.all(Array.isArray(e)?e.map(async e=>{let t=typeof e==`string`?e:e[0];if(!t||typeof t!=`string`)return;let n=await B(t);if(typeof n!=`function`)return n;let r=typeof e==`string`?null:e[1];return n(typeof r==`object`&&r||{})}):[])}async function vn({type:e,scripts:t,...n},r){let i=Object.create(null),a=Object.create(null);for(let e of[await _n(t),r].flat()){if(!e||typeof e!=`object`)continue;let{subFields:t,...n}=e;for(let[e,t]of Object.entries(n)){let n=a[e];n?n.push(t):a[e]=[t]}if(t)for(let[e,n]of Object.entries(t)){let t=i[e];t?t.push(n):i[e]=[n]}}return{...n,script:bn(a),type:typeof e==`object`&&e?await yn(e,i):e}}async function yn(e,t){let n=Object.entries(e).map(([e,n])=>Promise.all([e,vn(n,t[e])]));return Object.fromEntries(await Promise.all(n))}function W(e,t){if(!e)return null;let n=e.filter(e=>typeof e==`function`);return n.length?t?(...e)=>{for(let t of n)t(...e)}:async(...e)=>{for(let t of n)await t(...e)}:null}function bn(e){return{input:W(e.input),change:W(e.change),click:W(e.click),focus:W(e.focus),blur:W(e.blur),add:e.add?.find(e=>typeof e==`function`),remove:W(e.remove),move:W(e.move)}}function xn({listScripts:e,documentScripts:t,...n}){return{input:W(n.input),change:W(n.change),beforeCreate:W(n.beforeCreate),beforeUpdate:W(n.beforeUpdate),beforeSave:W(n.beforeSave),beforeDestroy:W(n.beforeDestroy),beforeUpsert:W(n.beforeUpsert),listScripts:e?Object.assign({},...e):{},documentScripts:t?Object.assign({},...t):{}}}async function Sn({fields:e,scripts:t,...n}){let r=Object.create(null),i=Object.create(null);for(let e of await _n(t)){if(!e||typeof e!=`object`)continue;let{fields:t,...n}=e;for(let[e,t]of Object.entries(n)){let n=i[e];n?n.push(t):i[e]=[t]}if(t)for(let[e,n]of Object.entries(t)){let t=r[e];t?t.push(n):r[e]=[n]}}return{...n,script:xn(i),fields:await yn(e,r)}}const Cn=H(e=>e.clone().body({}).json().then(e=>e.options),[]);function wn(e,t){let n=e.clone().append(`/documents`),r=e.clone().append(`/options`),{get:i,load:a}=Cn.create(t,r);return{async query({values:e,where:t,orWhere:r,sort:i,limit:a=20,page:o,offset:s,select:c,total:l,primary:u}={}){return n.clone().body({values:e,where:t,orWhere:r,sort:i,limit:a,page:o,offset:s,select:c,total:l,primary:u}).json()},getOptions(){return i()},async options(e){if(!e||typeof e==`boolean`)return a(e);let{values:t,where:n,orWhere:i,sort:o,limit:s=20,page:c,offset:l,select:u,total:d,primary:f}=e;return r.clone().body({values:t,where:n,orWhere:i,sort:o,limit:s,page:c,offset:l,select:u,total:d,primary:f}).json()},async option(e){return r.clone().append(`/${encodeURIComponent(e)}`).get().json()},async create(e){return n.clone().post().body({document:e}).json()},document(e){let t=n.clone().append(`/${encodeURIComponent(e)}`);async function r(){return t.get().json().then(e=>e.document)}return{get:r,async update(e){return t.clone().put().body({document:e}).json()},async delete(){return t.delete().done()},field(e){let n=t.clone().append`fields/${e}`;async function r(){return n.get().json().then(e=>e.value)}return{get:r,...U(r)}},...U(r)}}}}const Tn=H(e=>e.result().then(e=>typeof e==`object`&&e||null,e=>Promise.reject(new V(e instanceof Response?e.status:100))),null),En=H(e=>e().then(async e=>e&&Sn(e)),null,Tn);function Dn(e){let t=j.clone().path`models/${e||``}`,{get:n,load:r}=Tn.create(e,t),{get:i,load:a}=En.create(e,r);return{loadModel:r,loadScript:a,getModel:n,getScript:i,...wn(t,[e,``].join(`
|
|
5
5
|
`)),...U(r)}}const On=H(e=>e.json().then(e=>typeof e==`object`&&e.values||[],()=>[]),[]);function kn(e){let t=j.clone().path`enumerations/${e||``}`,{get:n,load:r}=On.create(e,t);return{load:r,get:n,...U(r)}}const An=H(e=>e.result().then(e=>typeof e==`object`&&e||null,e=>Promise.reject(new V(e instanceof Response?e.status:100))),null);function jn(e){let t=j.clone().path`formLayouts/${e||``}`,{get:n,load:r}=An.create(e,t);return{load:r,get:n,...U(r)}}const Mn=j.clone().path`permissions`;let G=null,Nn=!1;const Pn=g([]);function Fn(){let e=Mn.json().then(e=>Array.isArray(e)&&e||[]);return G=e,e.then(e=>Pn.set(e),()=>{G===e&&(G=null)}),e}function In(e){return!e&&G?G:Fn()}function Ln(){return(!G||Nn)&&(Fn(),Nn=!1),Pn.get()}var Rn={load:In,get:Ln,...U(In)};async function zn(e,t){let n=j.clone();n=t?n.get`menus/${e}/groups/${t}`:n.get`menus/${e}`;let{menus:r}=await n.json();return r}const Bn=Object.create(null);function Vn(e,t,n){let r=Bn[e];r||(Bn[e]=r=Object.create(null));let i=typeof t==`string`?t:``;if(t!==!0&&n!==!0){let e=r[i];if(e)return e}let a=zn(e,i);return r[i]=a,a.catch(()=>{r[i]===a&&(r[i]=null)}),a}let Hn=class{#e;#t;#n;#r;#i=[];#a=document.createElement(`table`);#o=this.#a.appendChild(document.createElement(`thead`));#s=this.#o.appendChild(document.createElement(`tr`));#c=this.#a.appendChild(document.createElement(`tbody`));get root(){return this.#a}get createUrl(){return this.#e}set createUrl(e){let t=typeof e==`function`?e:null;this.#e!==t&&(this.#e=t,this.#l())}constructor(e,t){let n=Object.entries(t.fields).filter(([,{type:e}])=>e&&typeof e!=`object`),r=Object.entries(t.fields).filter(([,e])=>e.primary).map(([e])=>e);this.#n=t.labelPattern||``,this.#e=typeof e==`function`?e:null,this.#t=n,this.#r=r;let i=this.#s;i.innerHTML=``,i.appendChild(document.createElement(`th`)).appendChild(document.createTextNode(`#`));for(let[e,t]of n)i.appendChild(document.createElement(`th`)).appendChild(document.createTextNode(t.label||e))}#l(){let e=this.#c;e.innerHTML=``;let t=this.#r,n=this.#n,r=this.#t,i=this.#e;for(let a of this.#i){let o=e.appendChild(document.createElement(`tr`)),s=o.appendChild(document.createElement(`td`)),c=O(n,a)||t.map(e=>a[e]).join(`$`);if(i){let e=s.appendChild(document.createElement(`a`));e.href=i(t.map(e=>a[e]).join(`$`)),e.appendChild(document.createTextNode(c))}else s.appendChild(document.createTextNode(c));for(let[e,t]of r){let n=o.appendChild(document.createElement(`td`)),r=$t(e,t,{inline:!0},a);n.appendChild(r.root)}}}setData(e){this.#i=e,this.#l()}destroy(){}},Un=class{#e=document.createElement(`div`);get root(){return this.#e}get size(){return 5}set size(e){}get page(){return 1}set page(e){}get total(){return 0}set total(e){}listen(e){return()=>{}}destroy(){}},Wn=(e,t,n)=>null,Gn=(e,t,n,r)=>null,Kn=()=>null;function qn(e={}){Hn=e.list||e.List||Hn,Un=e.pagination||e.Pagination||Un;let t=e.createMenuButtons||e.menuButtons,n=e.createMenuButton||e.menuButton,r=e.createMenuItem||e.menuItem;typeof t==`function`&&(Wn=t),typeof n==`function`&&(Gn=n),typeof r==`function`&&(Kn=r)}const Jn=[`uri`,`target`,`page`,`path`,`command`,`script`,`click`];function Yn(e,t){for(let n of t)delete e[n];return e}function Xn(e,t=[]){let n=[],r=[];for(let{level:i,type:a,...o}of e){let e=Math.max(0,Math.floor(i))||0;r.length=e;let s=r.findLast(Boolean);if(a===`button`){let e=o;s?s.buttons.push(e):t.push(e);continue}let c=a===`divider`?null:{...o,buttons:[],children:[]};s?s.children.push(c):n.push(c),r[e]=c}return n}function Zn(e,t,n){let r=[];for(let i of e){if(!i){r.push(i);continue}let{children:e}=i;if(t&&!t(i))continue;if(!e?.length){r.push(i);continue}let a=Zn(e,t,n).filter((e,t,n)=>!!(e||t===0||n[t-1]));a.length&&(n&&a.filter(Boolean).length<=1?r.push(...a):(a[a.length-1]||a.pop(),a[0]||a.shift(),r.push({...i,children:a})))}if(n&&r.length===1){let[e]=r;if(e?.children?.length)return e.children}return r}function Qn(e,t,...n){let r=e,i=n.pop();for(let e of n){let t=r.get(e);t||(t=new Map,r.set(e,t)),r=t}r.set(i,t)}function $n(e,t,n,r){let i=new Map,a=new Map;for(let[t,n]of Map.groupBy(e,e=>e.groupType||``).entries())for(let[e,r]of Map.groupBy(n,e=>e.group||``).entries()){let n=[],o=Xn(r,n);Qn(a,n,t,e),Qn(i,o,t,e)}let o=new Map,s=new Map;function c(e){for(let t=e.length-1;t>=0;t--){let n=e[t],{refType:r,refId:i}=n;if(!r||!i)continue;Yn(n,Jn);let a=s.get(r)?.get(i);e.splice(t,1,...a||[])}}function l(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(!n)continue;if(n.children?.length){l(n.children);continue}let{refType:r,refId:i,refMode:a}=n;if(!r||!i)continue;Yn(n,Jn);let c=o.get(r)?.get(i),u=s.get(r)?.get(i);if(!c?.length&&!u?.length){e.splice(t,1);continue}a===`replace`?e.splice(t,1,...c||[]):(n.children=c||[],n.buttons=u||[])}}for(let e of[`builtin`,`module`,`group`]){let t=i.get(e);if(t){for(let e of t.values())l(e);o.set(e,t)}let n=a.get(e);if(n){for(let e of n.values())c(e);s.set(e,n)}i.delete(e),a.delete(e)}for(let e of i.values())for(let t of e.values())l(t);for(let e of a.values())for(let t of e.values())c(t);for(let[e,t]of a.entries())s.set(e,t);for(let[e,t]of i.entries())o.set(e,t);if(r)for(let e of s.get(t)?.get(n)||[])r.push(e);return o.get(t)?.get(n)||[]}const K={fromDefine(e,t){return Xn(e,t)},build(e,t,n,r){return $n(e,t,n,r)},filter(e,t,n){let r=Zn(e,t,n),i=[],a=!1;for(let e of r){if(e){a&&i.push(null),a=!1,i.push(e);continue}i.length&&(a=!0)}return i},createButton(e,t,n,r){return Gn(e,t,n,r||R)},createButtons(e,t,n){return Wn(e,t,n||R)},createItem(e,t,n){return Kn(e,t||R,n)}},er=H(async e=>{let t=await e.result().then(e=>typeof e==`object`&&e||null,e=>Promise.reject(new V(e instanceof Response?e.status:100)));if(!t||typeof t!=`object`)return null;let n=[],r=K.fromDefine(t.menus||[],n),{where:i,orWhere:a}=me(t.hiddenFilter||``);return{...t,where:i,orWhere:a,menuButtons:n,menus:r,forms:Object.fromEntries(t.forms?.map(e=>[e.type,e])||[])}},null);function tr({model:e,organization:t,user:n,workspace:r,page:i}){let a=[e,t,n,r,i].map(e=>e||``).join(`
|
|
6
6
|
`),o=j.clone().path`page`;e&&(o=o.query({model:e})),t&&(o=o.query({organization:t})),n&&(o=o.query({user:n})),r&&(o=o.query({workspace:r}));let s=P.id;s&&(o=o.query({application:s})),o=o.query({page:i});let{get:c,load:l}=er.create(a,o);return{loadPage:l,getPage:c,loadConfiguration(){return l().then(e=>typeof e==`object`&&e?.config)},...U(l)}}let nr={main:null,details:null,setting:null,input:null,edit:null,copy:null};function rr(){let{model:e,modelDetails:t,modelSetting:n,modelInput:r,modelEdit:i,modelCopy:a,user:o,userDetails:s,userSetting:c,userInput:l,userEdit:u,userCopy:d,workspace:f,workspaceDetails:p,workspaceSetting:m,workspaceInput:h,workspaceEdit:g,workspaceCopy:_}=dt;nr={main:e?()=>B(e):null,details:t?()=>B(t):null,setting:n?()=>B(n):null,input:r?()=>B(r):null,edit:i?()=>B(i):null,copy:a?()=>B(a):null}}rr();const ir=_(()=>{let e={};for(let[t,n]of Object.entries(k.get(`configurationPages`).named()))if(n){if(typeof n==`function`){e[t]=()=>n;continue}if(typeof n==`string`){e[t]=()=>B(n);continue}}for(let[t,n]of Object.entries(M.configurationPages||{}))e[t]=()=>B(n);return e});async function ar(e){let{model:t,id:n,workspace:r,setting:i,edit:a,input:o,continuation:s}=e;if(s||i)return null;let c={type:`model`,model:t,workspace:r,id:``,input:``,edit:!1},l=`main`;n?(c.id=n,o?(c.input=o,l=`copy`):a?(c.edit=!0,l=`edit`):l=`details`):o&&(c.input=o,l=`input`);let u=await tr({...c,page:l});if(!u&&!r){let e=await Dn(t).catch(e=>e instanceof V?e.status:Promise.reject(e));if(!e||typeof e!=`object`)return null;let n=e.pages,r=n&&Object.hasOwn(n,l)&&n[l];if(r===``)return null;u=typeof r==`string`?{widget:r}:typeof r==`object`&&r||{}}if(typeof u!=`object`)return u;let d=u?.widget;if(d===``)return null;let f=typeof d==`string`?()=>B(d):!r&&nr[l]||null;return f?{ident:c,widget:f,page:typeof u==`object`&&u||null}:null}async function or(e){let{id:t,edit:n,input:r,workspace:i,setting:a,continuation:o}=e;if(o||a)return null;let s={type:`workspace`,workspace:i,id:``,input:``,edit:!1},c=`main`;t?(s.id=t,r?(s.input=r,c=`copy`):n?(s.edit=!0,c=`edit`):c=`details`):r&&(s.input=r,c=`input`);let l=await tr({...s,page:c});if(typeof l!=`object`)return l;let u=l?.widget;return u?{ident:s,widget:()=>B(u),page:typeof l==`object`&&l||null}:null}async function sr(e){let{id:t,organization:n,edit:r,input:i,workspace:a,setting:o,continuation:s}=e;if(s||o)return null;let c={type:`organization`,organization:n,workspace:a,id:``,input:``,edit:!1},l=`main`;t?(c.id=t,i?(c.input=i,l=`copy`):r?(c.edit=!0,l=`edit`):l=`details`):i&&(c.input=i,l=`input`);let u=await tr({...c,page:l}).catch(e=>e instanceof V?e.status:Promise.reject(e));if(typeof u!=`object`)return null;let d=u?.widget;return d?{ident:c,widget:()=>B(d),page:typeof u==`object`&&u||null}:null}async function cr(e){let{id:t,user:n,edit:r,input:i,workspace:a,setting:o,continuation:s}=e;if(s||o)return null;let c={type:`user`,user:n,workspace:a,id:``,input:``,edit:!1},l=`main`;t?(c.id=t,i?(c.input=i,l=`copy`):r?(c.edit=!0,l=`edit`):l=`details`):i&&(c.input=i,l=`input`);let u=await tr({...c,page:l}).catch(e=>e instanceof V?e.status:Promise.reject(e));if(typeof u!=`object`)return null;let d=u?.widget;return d?{ident:c,widget:()=>B(d),page:typeof u==`object`&&u||null}:null}async function lr(e){let{type:t}=e;if(t===`model`)return ar(e);if(t===`workspace`)return or(e);if(t===`organization`)return sr(e);if(t===`user`)return cr(e);if(t===`configuration`){let t=ir.get(),{continuation:n}=e,r=Object.hasOwn(t,n)?t[n]:null;return typeof r==`function`?{widget:r,ident:e,page:null}:null}let n=t&&t in dt&&dt[t];return typeof n==`string`?{widget:()=>B(n),ident:e,page:null}:null}const q=document.createElement(`div`),ur=document.querySelector(`head`),dr=document.querySelector(`link[rel=icon]`)||document.createElement(`link`);dr.rel=`icon`;const fr=dr.href;let pr=fr;function mr(e){let t=e||fr;if(t!==pr){if(pr=t,!t){dr.remove();return}dr.href=t,ur.appendChild(dr)}}const hr=new Map;function gr(e){let t=Symbol();return hr.set(t,e),()=>{hr.delete(t)}}const J=new Map;let _r=[],vr=g(void 0);function yr(e){let t=e&&J.get(e);if(vr.get()!==t&&(vr.set(t),t)){let e=_r.indexOf(t);e>0&&_r.splice(e,1),e&&_r.push(t)}}function br(){return[...J.values()]}function xr(e,t){J.set(e,t),vr.set(t);for(let e of[...hr.values()])e(t)}function Sr(e){let t=J.get(e);if(J.delete(e),!t)return;let n=_r.indexOf(t);if(n>=0&&_r.splice(n,1),vr.get()!==t||(vr.set(void 0),L.waitLogin))return;let r=_r[0];xi(r?.href||P.path,!1,!0)}function Cr(){for(let e of[...J.values()])e.destroy()}function wr(e){e.appendChild(document.createTextNode(`主页`))}const Tr=document.createElement(`div`),Er=Tr.attachShadow({mode:`closed`});Er.innerHTML=`<style>
|
|
7
7
|
div::after, div::before {
|