codesaaz-core 0.0.88 → 0.0.89
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/codesaaz.es.js +5 -4
- package/dist/codesaaz.umd.js +1 -1
- package/package.json +1 -1
package/dist/codesaaz.es.js
CHANGED
|
@@ -5718,7 +5718,8 @@ const Mf = { key: 0 }, Uf = { key: 1 }, ri = {
|
|
|
5718
5718
|
ce(le.$slots, "header"),
|
|
5719
5719
|
e.showClearFilters || e.showAddButton ? (b(), M(Ce, {
|
|
5720
5720
|
key: 0,
|
|
5721
|
-
class: "
|
|
5721
|
+
class: "mt-4",
|
|
5722
|
+
style: { "margin-bottom": "10px" }
|
|
5722
5723
|
}, Jn({ _: 2 }, [
|
|
5723
5724
|
e.showClearFilters ? {
|
|
5724
5725
|
name: "start",
|
|
@@ -5769,11 +5770,10 @@ const Mf = { key: 0 }, Uf = { key: 1 }, ri = {
|
|
|
5769
5770
|
"onUpdate:filters": fe[5] || (fe[5] = (Ae) => i.value = Ae),
|
|
5770
5771
|
filterDisplay: "menu",
|
|
5771
5772
|
scrollable: "",
|
|
5772
|
-
scrollHeight: "400px",
|
|
5773
5773
|
onSort: X(x),
|
|
5774
5774
|
onPage: X(O),
|
|
5775
5775
|
onFilter: fe[6] || (fe[6] = (Ae) => _()),
|
|
5776
|
-
size: "
|
|
5776
|
+
size: "small",
|
|
5777
5777
|
paginatorTemplate: "FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown",
|
|
5778
5778
|
currentPageReportTemplate: "Showing {first} to {last} of {totalRecords} items"
|
|
5779
5779
|
}, {
|
|
@@ -5886,7 +5886,7 @@ const Mf = { key: 0 }, Uf = { key: 1 }, ri = {
|
|
|
5886
5886
|
icon: "pi pi-pencil",
|
|
5887
5887
|
severity: "success",
|
|
5888
5888
|
variant: "text",
|
|
5889
|
-
size: "",
|
|
5889
|
+
size: "small",
|
|
5890
5890
|
rounded: "",
|
|
5891
5891
|
"aria-label": "Edit"
|
|
5892
5892
|
}, null, 8, ["onClick"])) : L("", !0),
|
|
@@ -5896,6 +5896,7 @@ const Mf = { key: 0 }, Uf = { key: 1 }, ri = {
|
|
|
5896
5896
|
icon: "pi pi-trash",
|
|
5897
5897
|
severity: "danger",
|
|
5898
5898
|
variant: "text",
|
|
5899
|
+
size: "small",
|
|
5899
5900
|
rounded: "",
|
|
5900
5901
|
"aria-label": "Delete"
|
|
5901
5902
|
}, null, 8, ["onClick"])) : L("", !0)
|
package/dist/codesaaz.umd.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
attempted value: ${l}
|
|
18
18
|
`+(s!==l?`result of cast: ${s}`:""))}return i}_cast(t,n){let r=t===void 0?t:this.transforms.reduce((a,i)=>i.call(this,a,t,this),t);return r===void 0&&(r=this.getDefault(n)),r}_validate(t,n={},r,a){let{path:i,originalValue:l=t,strict:s=this.spec.strict}=n,d=t;s||(d=this._cast(d,Object.assign({assert:!1},n)));let c=[];for(let u of Object.values(this.internalTests))u&&c.push(u);this.runTests({path:i,value:d,originalValue:l,options:n,tests:c},r,u=>{if(u.length)return a(u,d);this.runTests({path:i,value:d,originalValue:l,options:n,tests:this.tests},r,a)})}runTests(t,n,r){let a=!1,{tests:i,value:l,originalValue:s,path:d,options:c}=t,u=h=>{a||(a=!0,n(h,l))},p=h=>{a||(a=!0,r(h,l))},f=i.length,m=[];if(!f)return p([]);let g={value:l,originalValue:s,path:d,options:c,schema:this};for(let h=0;h<i.length;h++){const b=i[h];b(g,u,function(w){w&&(Array.isArray(w)?m.push(...w):m.push(w)),--f<=0&&p(m)})}}asNestedTest({key:t,index:n,parent:r,parentPath:a,originalParent:i,options:l}){const s=t??n;if(s==null)throw TypeError("Must include `key` or `index` for nested validations");const d=typeof s=="number";let c=r[s];const u=Object.assign({},l,{strict:!0,parent:r,value:c,originalValue:i[s],key:void 0,[d?"index":"key"]:s,path:d||s.includes(".")?`${a||""}[${d?s:`"${s}"`}]`:(a?`${a}.`:"")+t});return(p,f,m)=>this.resolve(u)._validate(c,u,f,m)}validate(t,n){var r;let a=this.resolve(Object.assign({},n,{value:t})),i=(r=n==null?void 0:n.disableStackTrace)!=null?r:a.spec.disableStackTrace;return new Promise((l,s)=>a._validate(t,n,(d,c)=>{Ae.isError(d)&&(d.value=c),s(d)},(d,c)=>{d.length?s(new Ae(d,c,void 0,void 0,i)):l(c)}))}validateSync(t,n){var r;let a=this.resolve(Object.assign({},n,{value:t})),i,l=(r=n==null?void 0:n.disableStackTrace)!=null?r:a.spec.disableStackTrace;return a._validate(t,Object.assign({},n,{sync:!0}),(s,d)=>{throw Ae.isError(s)&&(s.value=d),s},(s,d)=>{if(s.length)throw new Ae(s,t,void 0,void 0,l);i=d}),i}isValid(t,n){return this.validate(t,n).then(()=>!0,r=>{if(Ae.isError(r))return!1;throw r})}isValidSync(t,n){try{return this.validateSync(t,n),!0}catch(r){if(Ae.isError(r))return!1;throw r}}_getDefault(t){let n=this.spec.default;return n==null?n:typeof n=="function"?n.call(this,t):Qt(n)}getDefault(t){return this.resolve(t||{})._getDefault(t)}default(t){return arguments.length===0?this._getDefault():this.clone({default:t})}strict(t=!0){return this.clone({strict:t})}nullability(t,n){const r=this.clone({nullable:t});return r.internalTests.nullable=Jt({message:n,name:"nullable",test(a){return a===null?this.schema.spec.nullable:!0}}),r}optionality(t,n){const r=this.clone({optional:t});return r.internalTests.optionality=Jt({message:n,name:"optionality",test(a){return a===void 0?this.schema.spec.optional:!0}}),r}optional(){return this.optionality(!0)}defined(t=st.defined){return this.optionality(!1,t)}nullable(){return this.nullability(!0)}nonNullable(t=st.notNull){return this.nullability(!1,t)}required(t=st.required){return this.clone().withMutation(n=>n.nonNullable(t).defined(t))}notRequired(){return this.clone().withMutation(t=>t.nullable().optional())}transform(t){let n=this.clone();return n.transforms.push(t),n}test(...t){let n;if(t.length===1?typeof t[0]=="function"?n={test:t[0]}:n=t[0]:t.length===2?n={name:t[0],test:t[1]}:n={name:t[0],message:t[1],test:t[2]},n.message===void 0&&(n.message=st.default),typeof n.test!="function")throw new TypeError("`test` is a required parameters");let r=this.clone(),a=Jt(n),i=n.exclusive||n.name&&r.exclusiveTests[n.name]===!0;if(n.exclusive&&!n.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return n.name&&(r.exclusiveTests[n.name]=!!n.exclusive),r.tests=r.tests.filter(l=>!(l.OPTIONS.name===n.name&&(i||l.OPTIONS.test===a.OPTIONS.test))),r.tests.push(a),r}when(t,n){!Array.isArray(t)&&typeof t!="string"&&(n=t,t=".");let r=this.clone(),a=Aa(t).map(i=>new _t(i));return a.forEach(i=>{i.isSibling&&r.deps.push(i.key)}),r.conditions.push(typeof n=="function"?new oo(a,n):oo.fromOptions(a,n)),r}typeError(t){let n=this.clone();return n.internalTests.typeError=Jt({message:t,name:"typeError",skipAbsent:!0,test(r){return this.schema._typeCheck(r)?!0:this.createError({params:{type:this.schema.type}})}}),n}oneOf(t,n=st.oneOf){let r=this.clone();return t.forEach(a=>{r._whitelist.add(a),r._blacklist.delete(a)}),r.internalTests.whiteList=Jt({message:n,name:"oneOf",skipAbsent:!0,test(a){let i=this.schema._whitelist,l=i.resolveAll(this.resolve);return l.includes(a)?!0:this.createError({params:{values:Array.from(i).join(", "),resolved:l}})}}),r}notOneOf(t,n=st.notOneOf){let r=this.clone();return t.forEach(a=>{r._blacklist.add(a),r._whitelist.delete(a)}),r.internalTests.blacklist=Jt({message:n,name:"notOneOf",test(a){let i=this.schema._blacklist,l=i.resolveAll(this.resolve);return l.includes(a)?this.createError({params:{values:Array.from(i).join(", "),resolved:l}}):!0}}),r}strip(t=!0){let n=this.clone();return n.spec.strip=t,n}describe(t){const n=(t?this.resolve(t):this).clone(),{label:r,meta:a,optional:i,nullable:l}=n.spec;return{meta:a,label:r,optional:i,nullable:l,default:n.getDefault(t),type:n.type,oneOf:n._whitelist.describe(),notOneOf:n._blacklist.describe(),tests:n.tests.map(d=>({name:d.OPTIONS.name,params:d.OPTIONS.params})).filter((d,c,u)=>u.findIndex(p=>p.name===d.name)===c)}}}ct.prototype.__isYupSchema__=!0;for(const e of["validate","validateSync"])ct.prototype[`${e}At`]=function(t,n,r={}){const{parent:a,parentPath:i,schema:l}=Md(this,t,n,r.context);return l[e](a&&a[i],Object.assign({},r,{parent:a,path:t}))};for(const e of["equals","is"])ct.prototype[e]=ct.prototype.oneOf;for(const e of["not","nope"])ct.prototype[e]=ct.prototype.notOneOf;const jd=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function Ud(e){const t=Qo(e);if(!t)return Date.parse?Date.parse(e):Number.NaN;if(t.z===void 0&&t.plusMinus===void 0)return new Date(t.year,t.month,t.day,t.hour,t.minute,t.second,t.millisecond).valueOf();let n=0;return t.z!=="Z"&&t.plusMinus!==void 0&&(n=t.hourOffset*60+t.minuteOffset,t.plusMinus==="+"&&(n=0-n)),Date.UTC(t.year,t.month,t.day,t.hour,t.minute+n,t.second,t.millisecond)}function Qo(e){var t,n;const r=jd.exec(e);return r?{year:bt(r[1]),month:bt(r[2],1)-1,day:bt(r[3],1),hour:bt(r[4]),minute:bt(r[5]),second:bt(r[6]),millisecond:r[7]?bt(r[7].substring(0,3)):0,precision:(t=(n=r[7])==null?void 0:n.length)!=null?t:void 0,z:r[8]||void 0,plusMinus:r[9]||void 0,hourOffset:bt(r[10]),minuteOffset:bt(r[11])}:null}function bt(e,t=0){return Number(e)||t}let Hd=/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Wd=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,qd=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Kd="^\\d{4}-\\d{2}-\\d{2}",Gd="\\d{2}:\\d{2}:\\d{2}",Yd="(([+-]\\d{2}(:?\\d{2})?)|Z)",Xd=new RegExp(`${Kd}T${Gd}(\\.\\d+)?${Yd}$`),Jd=e=>At(e)||e===e.trim(),Qd={}.toString();function Zo(){return new Ua}class Ua extends ct{constructor(){super({type:"string",check(t){return t instanceof String&&(t=t.valueOf()),typeof t=="string"}}),this.withMutation(()=>{this.transform((t,n,r)=>{if(!r.spec.coerce||r.isType(t)||Array.isArray(t))return t;const a=t!=null&&t.toString?t.toString():t;return a===Qd?t:a})})}required(t){return super.required(t).withMutation(n=>n.test({message:t||st.required,name:"required",skipAbsent:!0,test:r=>!!r.length}))}notRequired(){return super.notRequired().withMutation(t=>(t.tests=t.tests.filter(n=>n.OPTIONS.name!=="required"),t))}length(t,n=Le.length){return this.test({message:n,name:"length",exclusive:!0,params:{length:t},skipAbsent:!0,test(r){return r.length===this.resolve(t)}})}min(t,n=Le.min){return this.test({message:n,name:"min",exclusive:!0,params:{min:t},skipAbsent:!0,test(r){return r.length>=this.resolve(t)}})}max(t,n=Le.max){return this.test({name:"max",exclusive:!0,message:n,params:{max:t},skipAbsent:!0,test(r){return r.length<=this.resolve(t)}})}matches(t,n){let r=!1,a,i;return n&&(typeof n=="object"?{excludeEmptyString:r=!1,message:a,name:i}=n:a=n),this.test({name:i||"matches",message:a||Le.matches,params:{regex:t},skipAbsent:!0,test:l=>l===""&&r||l.search(t)!==-1})}email(t=Le.email){return this.matches(Hd,{name:"email",message:t,excludeEmptyString:!0})}url(t=Le.url){return this.matches(Wd,{name:"url",message:t,excludeEmptyString:!0})}uuid(t=Le.uuid){return this.matches(qd,{name:"uuid",message:t,excludeEmptyString:!1})}datetime(t){let n="",r,a;return t&&(typeof t=="object"?{message:n="",allowOffset:r=!1,precision:a=void 0}=t:n=t),this.matches(Xd,{name:"datetime",message:n||Le.datetime,excludeEmptyString:!0}).test({name:"datetime_offset",message:n||Le.datetime_offset,params:{allowOffset:r},skipAbsent:!0,test:i=>{if(!i||r)return!0;const l=Qo(i);return l?!!l.z:!1}}).test({name:"datetime_precision",message:n||Le.datetime_precision,params:{precision:a},skipAbsent:!0,test:i=>{if(!i||a==null)return!0;const l=Qo(i);return l?l.precision===a:!1}})}ensure(){return this.default("").transform(t=>t===null?"":t)}trim(t=Le.trim){return this.transform(n=>n!=null?n.trim():n).test({message:t,name:"trim",test:Jd})}lowercase(t=Le.lowercase){return this.transform(n=>At(n)?n:n.toLowerCase()).test({message:t,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>At(n)||n===n.toLowerCase()})}uppercase(t=Le.uppercase){return this.transform(n=>At(n)?n:n.toUpperCase()).test({message:t,name:"string_case",exclusive:!0,skipAbsent:!0,test:n=>At(n)||n===n.toUpperCase()})}}Zo.prototype=Ua.prototype;let Zd=new Date(""),eu=e=>Object.prototype.toString.call(e)==="[object Date]";class io extends ct{constructor(){super({type:"date",check(t){return eu(t)&&!isNaN(t.getTime())}}),this.withMutation(()=>{this.transform((t,n,r)=>!r.spec.coerce||r.isType(t)||t===null?t:(t=Ud(t),isNaN(t)?io.INVALID_DATE:new Date(t)))})}prepareParam(t,n){let r;if(_t.isRef(t))r=t;else{let a=this.cast(t);if(!this._typeCheck(a))throw new TypeError(`\`${n}\` must be a Date or a value that can be \`cast()\` to a Date`);r=a}return r}min(t,n=Xo.min){let r=this.prepareParam(t,"min");return this.test({message:n,name:"min",exclusive:!0,params:{min:t},skipAbsent:!0,test(a){return a>=this.resolve(r)}})}max(t,n=Xo.max){let r=this.prepareParam(t,"max");return this.test({message:n,name:"max",exclusive:!0,params:{max:t},skipAbsent:!0,test(a){return a<=this.resolve(r)}})}}io.INVALID_DATE=Zd,io.prototype;function tu(e,t=[]){let n=[],r=new Set,a=new Set(t.map(([l,s])=>`${l}-${s}`));function i(l,s){let d=Dt.split(l)[0];r.add(d),a.has(`${s}-${d}`)||n.push([s,d])}for(const l of Object.keys(e)){let s=e[l];r.add(l),_t.isRef(s)&&s.isSibling?i(s.path,l):Jo(s)&&"deps"in s&&s.deps.forEach(d=>i(d,l))}return Vd.array(Array.from(r),n).reverse()}function Ha(e,t){let n=1/0;return e.some((r,a)=>{var i;if((i=t.path)!=null&&i.includes(r))return n=a,!0}),n}function Wa(e){return(t,n)=>Ha(e,t)-Ha(e,n)}const nu=(e,t,n)=>{if(typeof e!="string")return e;let r=e;try{r=JSON.parse(e)}catch{}return n.isType(r)?r:e};function lo(e){if("fields"in e){const t={};for(const[n,r]of Object.entries(e.fields))t[n]=lo(r);return e.setFields(t)}if(e.type==="array"){const t=e.optional();return t.innerType&&(t.innerType=lo(t.innerType)),t}return e.type==="tuple"?e.optional().clone({types:e.spec.types.map(lo)}):"optional"in e?e.optional():e}const ou=(e,t)=>{const n=[...Dt.normalizePath(t)];if(n.length===1)return n[0]in e;let r=n.pop(),a=Dt.getter(Dt.join(n),!0)(e);return!!(a&&r in a)};let qa=e=>Object.prototype.toString.call(e)==="[object Object]";function Ka(e,t){let n=Object.keys(e.fields);return Object.keys(t).filter(r=>n.indexOf(r)===-1)}const ru=Wa([]);function er(e){return new Ga(e)}class Ga extends ct{constructor(t){super({type:"object",check(n){return qa(n)||typeof n=="function"}}),this.fields=Object.create(null),this._sortErrors=ru,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{t&&this.shape(t)})}_cast(t,n={}){var r;let a=super._cast(t,n);if(a===void 0)return this.getDefault(n);if(!this._typeCheck(a))return a;let i=this.fields,l=(r=n.stripUnknown)!=null?r:this.spec.noUnknown,s=[].concat(this._nodes,Object.keys(a).filter(p=>!this._nodes.includes(p))),d={},c=Object.assign({},n,{parent:d,__validating:n.__validating||!1}),u=!1;for(const p of s){let f=i[p],m=p in a;if(f){let g,h=a[p];c.path=(n.path?`${n.path}.`:"")+p,f=f.resolve({value:h,context:n.context,parent:d});let b=f instanceof ct?f.spec:void 0,y=b==null?void 0:b.strict;if(b!=null&&b.strip){u=u||p in a;continue}g=!n.__validating||!y?f.cast(a[p],c):a[p],g!==void 0&&(d[p]=g)}else m&&!l&&(d[p]=a[p]);(m!==p in d||d[p]!==a[p])&&(u=!0)}return u?d:a}_validate(t,n={},r,a){let{from:i=[],originalValue:l=t,recursive:s=this.spec.recursive}=n;n.from=[{schema:this,value:l},...i],n.__validating=!0,n.originalValue=l,super._validate(t,n,r,(d,c)=>{if(!s||!qa(c)){a(d,c);return}l=l||c;let u=[];for(let p of this._nodes){let f=this.fields[p];!f||_t.isRef(f)||u.push(f.asNestedTest({options:n,key:p,parent:c,parentPath:n.path,originalParent:l}))}this.runTests({tests:u,value:c,originalValue:l,options:n},r,p=>{a(p.sort(this._sortErrors).concat(d),c)})})}clone(t){const n=super.clone(t);return n.fields=Object.assign({},this.fields),n._nodes=this._nodes,n._excludedEdges=this._excludedEdges,n._sortErrors=this._sortErrors,n}concat(t){let n=super.concat(t),r=n.fields;for(let[a,i]of Object.entries(this.fields)){const l=r[a];r[a]=l===void 0?i:l}return n.withMutation(a=>a.setFields(r,[...this._excludedEdges,...t._excludedEdges]))}_getDefault(t){if("default"in this.spec)return super._getDefault(t);if(!this._nodes.length)return;let n={};return this._nodes.forEach(r=>{var a;const i=this.fields[r];let l=t;(a=l)!=null&&a.value&&(l=Object.assign({},l,{parent:l.value,value:l.value[r]})),n[r]=i&&"getDefault"in i?i.getDefault(l):void 0}),n}setFields(t,n){let r=this.clone();return r.fields=t,r._nodes=tu(t,n),r._sortErrors=Wa(Object.keys(t)),n&&(r._excludedEdges=n),r}shape(t,n=[]){return this.clone().withMutation(r=>{let a=r._excludedEdges;return n.length&&(Array.isArray(n[0])||(n=[n]),a=[...r._excludedEdges,...n]),r.setFields(Object.assign(r.fields,t),a)})}partial(){const t={};for(const[n,r]of Object.entries(this.fields))t[n]="optional"in r&&r.optional instanceof Function?r.optional():r;return this.setFields(t)}deepPartial(){return lo(this)}pick(t){const n={};for(const r of t)this.fields[r]&&(n[r]=this.fields[r]);return this.setFields(n,this._excludedEdges.filter(([r,a])=>t.includes(r)&&t.includes(a)))}omit(t){const n=[];for(const r of Object.keys(this.fields))t.includes(r)||n.push(r);return this.pick(n)}from(t,n,r){let a=Dt.getter(t,!0);return this.transform(i=>{if(!i)return i;let l=i;return ou(i,t)&&(l=Object.assign({},i),r||delete l[t],l[n]=a(i)),l})}json(){return this.transform(nu)}exact(t){return this.test({name:"exact",exclusive:!0,message:t||no.exact,test(n){if(n==null)return!0;const r=Ka(this.schema,n);return r.length===0||this.createError({params:{properties:r.join(", ")}})}})}stripUnknown(){return this.clone({noUnknown:!0})}noUnknown(t=!0,n=no.noUnknown){typeof t!="boolean"&&(n=t,t=!0);let r=this.test({name:"noUnknown",exclusive:!0,message:n,test(a){if(a==null)return!0;const i=Ka(this.schema,a);return!t||i.length===0||this.createError({params:{unknown:i.join(", ")}})}});return r.spec.noUnknown=t,r}unknown(t=!0,n=no.noUnknown){return this.noUnknown(!t,n)}transformKeys(t){return this.transform(n=>{if(!n)return n;const r={};for(const a of Object.keys(n))r[t(a)]=n[a];return r})}camelCase(){return this.transformKeys(Yo.camelCase)}snakeCase(){return this.transformKeys(Yo.snakeCase)}constantCase(){return this.transformKeys(t=>Yo.snakeCase(t).toUpperCase())}describe(t){const n=(t?this.resolve(t):this).clone(),r=super.describe(t);r.fields={};for(const[i,l]of Object.entries(n.fields)){var a;let s=t;(a=s)!=null&&a.value&&(s=Object.assign({},s,{parent:s.value,value:s.value[i]})),r.fields[i]=l.describe(s)}return r}}er.prototype=Ga.prototype;function tr(e,t,n){const r=new We;let a=o.ref({});const i=o.ref({}),l=o.ref({});let s=o.ref([]);const d=o.ref(null),c=o.ref([]);let u=o.ref([]),p=o.ref(!1);const f=o.ref({});let{handleSubmit:m,errors:g,setErrors:h}=Ia();const b=async()=>{var I;try{const B=await r.getEntityRecords(e);B&&B.response&&(a.value=B.response,s.value=(I=B.response.entity.entityDefinition)==null?void 0:I.columns,U(),S(),V())}catch(B){toast.add({severity:"error",summary:"Error",detail:B.errorMessage,life:3e3})}finally{}},y=async()=>{var I;try{const B=await r.getRecord(e,t);B&&B.response&&(a.value=B.response,s.value=(I=B.response.entity.entityDefinition)==null?void 0:I.columns,U(),i.value=JSON.parse(JSON.stringify(B.response.result[0])),V())}catch(B){console.error("Error fetching entity:",B.errorMessage)}finally{}},w=async()=>{var I,B;try{const _=await r.getRelatedEntityRecord(e,t);_&&_.response&&(a.value=_.response,s.value=(B=(I=_.response.entity)==null?void 0:I.entityDefinition)==null?void 0:B.columns,U(),i.value=JSON.parse(JSON.stringify(_.response.result[0])),i.value.entityName&&delete i.value.entityName,i.value.linkedEntities&&delete i.value.linkedEntities,u.value=_.response.result[0].linkedEntities,l.value=JSON.parse(JSON.stringify(i.value)),V())}catch(_){console.error("Error fetching entity:",_.errorMessage)}finally{}},x=async I=>{try{let B=await r.addRecord(e,I);B&&B.response&&n("onSaveDialog",{entityName:e,recordId:t})}catch(B){B.validationErrors&&(c.value=JSON.parse(JSON.stringify(B.validationErrors))),console.error("Error fetching entity:",B.errorMessage)}finally{}},E=async(I,B)=>{try{let _=await r.addRecord(e,B);if(_&&_.response){let J=await r.saveRelatedEntityRecord(e,_.response.recordId,I.linkedEntities);J&&J.response&&n("onSaveDialog",{entityName:e,recordId:t})}}catch(_){_.validationErrors&&(c.value=JSON.parse(JSON.stringify(_.validationErrors))),console.error("Error fetching entity:",_.errorMessage)}finally{}},N=async I=>{try{const B=await r.updateRecord(e,t,I);B&&B.response&&(p.value=!1,l.value=JSON.parse(JSON.stringify(i.value)),n("onSaveDialog",{entityName:e,recordId:t}))}catch(B){B.validationErrors&&(c.value=JSON.parse(JSON.stringify(B.errvalidationErrorsors))),console.error("Error fetching entity:",B.errorMessage)}finally{}},$=async(I,B,_)=>{try{let J=await r.saveRelatedEntityRecord(I,B,_);J&&J.response&&n("onSaveDialog",{entityName:e,enityRecordId:B})}catch(J){J.validationErrors&&(c.value=JSON.parse(JSON.stringify(J.validationErrors))),console.error("Error fetching entity:",J.errorMessage)}finally{}},S=()=>{for(let I=0;I<s.value.length;I++){let B=s.value[I];!B.autoGenerated&&!B.fieldType&&(i.value[B.name]="")}},k=I=>{let B="";for(let _=0;_<s.value.length;_++){let J=s.value[_];if(I==J.name){B=J.type;break}}return B},v=()=>{const I=s.value.filter(_=>_.autoGenerated||_.fieldType).map(_=>_.name);return Object.entries(i.value).filter(([_])=>!I.includes(_)).map(([_,J])=>({recordColumnName:_,recordColumnValue:J,columnType:k(_)}))},C=async(I={})=>{try{await d.value.validate(i.value,{abortEarly:!1}),h({})}catch(_){const J=_.inner.reduce((ae,Y)=>(ae[Y.path]||(ae[Y.path]={messages:[]}),ae[Y.path].messages.push(...Y.errors),ae),{}),re=Object.entries(J).reduce((ae,[Y,Q])=>(ae[Y]={messages:Q.messages},ae),{});h(re);return}const B={dataDefinitions:v()};t?await N(B):I.relationType=="MANY_TO_ONE"?await E(I,B):await x(B)},V=()=>{d.value=er().shape(s.value.reduce((I,B)=>(B.autoGenerated||B.fieldType||(I[B.name]=Zo().nullable(!1).test({name:"custom-validation",test:function(_){const J=[];let re="";if(B.required&&(!_||_.trim()===""))if(B.validations){re=R(B.validations,"VALIDATE_REQUIRED"),J.push(re);let ae=F(B.validations,"VALIDATE_REQUIRED");ae&&(ae="hint:"+ae,J.push(ae))}else re=B.displayName+" is required.",J.push(re);else{if(B.maxLength&&_.length>B.maxLength)if(B.validations){re=R(B.validations,"VALIDATE_MAXLENGTH"),J.push(re);let ae=F(B.validations,"VALIDATE_MAXLENGTH");ae&&(ae="hint:"+ae,J.push(ae))}else re=B.displayName+" cannot exceed from "+B.maxLength+" characters",J.push(re);if(B.regxId&&!new RegExp(D(B.validations,"VALIDATE_REGX")).test(_))if(B.validations){re=R(B.validations,"VALIDATE_REGX"),J.push(re);let ae=F(B.validations,"VALIDATE_REGX");ae&&(ae="hint:"+ae,J.push(ae))}else re=B.displayName+" invalid format.",J.push(re)}return J.length>0?this.createError({message:J}):!0}})),I),{}))},R=(I,B)=>{for(let _=0;_<I.length;_++)if(B==I[_].type)return I[_].message},D=(I,B)=>{for(let _=0;_<I.length;_++)if(B==I[_].type)return I[_].regx},F=(I,B)=>{for(let _=0;_<I.length;_++)if(B==I[_].type)return I[_].hint},L=I=>{h({...g.value,[I]:null}),p.value=!0},M=()=>{p.value=!1;for(let I in i.value)i.value.hasOwnProperty(I)&&h({...g.value,[I]:null});i.value=JSON.parse(JSON.stringify(l.value))},U=()=>{for(let I=0;I<s.value.length;I++){const B=s.value[I];if(B.primaryKey&&B.primaryKey==!0){f.value=B;break}}};return{formData:i,columns:s,errors:g,backendErrors:c,isDataChange:p,linkedEntities:u,primarayKeyColumn:f,clearErrors:L,saveRecord:C,fetchAllRecords:b,fetchRecord:y,getRelatedEntityRecordById:w,cancleRecord:M,saveRelatedEntityRecord:$}}const au={key:0,class:"surface-card"},iu={class:"info"},lu={key:0,class:"list-none p-0"},Ya={__name:"EntityFormErrors",props:{errors:Array},setup(e){let t=o.ref(!0);const n=()=>{t.value=!t.value};return(r,a)=>{var l;const i=o.resolveComponent("Message");return((l=e.errors)==null?void 0:l.length)>0?(o.openBlock(),o.createElementBlock("div",au,[a[1]||(a[1]=o.createElementVNode("h4",{class:"flex-1 font-bold text-red-500"},"Errors",-1)),o.createElementVNode("div",iu,[o.createElementVNode("span",{onClick:a[0]||(a[0]=s=>n()),class:"cursor-pointer underline showHideColor"},o.toDisplayString(o.unref(t)?"Hide":"Show"),1)]),o.unref(t)?(o.openBlock(),o.createElementBlock("ul",lu,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.errors,(s,d)=>(o.openBlock(),o.createElementBlock("li",{key:d,class:"mb-2"},[o.createVNode(i,{style:{"word-break":"break-all"},closable:!1,severity:"error"},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.message),1)]),_:2},1024)]))),128))])):o.createCommentVNode("",!0)])):o.createCommentVNode("",!0)}}},su={class:"field flex flex-col mb-3"},cu=["for"],du={key:0,class:"flex items-center"},uu={key:1},fu={class:"flex items-center"},Xa={__name:"RelatedEntitySelection",props:{modelValue:{required:!0},entityName:{type:String,required:!0},columnName:{type:String,required:!0},displayName:{type:String},relatedEntityColumn:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){mt.useRoute();const{getEntityRecords:n,searchEntityRecords:r,saveRelatedEntityRecord:a,getRecord:i,addRecord:l,updateRecord:s,deleteRecord:d}=We(),c=e,u=o.ref({});let p=o.ref("");const f=t;o.onMounted(()=>{m()});const m=async()=>{try{const b=await n(c.entityName);b&&b.response&&(u.value=b.response,h())}catch{}finally{}},g=()=>{f("update:modelValue",p.value[c.relatedEntityColumn])},h=()=>{for(let b=0;b<u.value.result.length;b++){const y=u.value.result[b];if(y[c.relatedEntityColumn]==c.modelValue){p.value=y;break}}};return(b,y)=>{const w=o.resolveComponent("Select");return o.openBlock(),o.createElementBlock("div",su,[o.createElementVNode("label",{for:e.columnName},o.toDisplayString(e.displayName||e.columnName),9,cu),o.createVNode(w,{modelValue:o.unref(p),"onUpdate:modelValue":[y[0]||(y[0]=x=>o.isRef(p)?p.value=x:p=x),g],"item-value":e.relatedEntityColumn,options:u.value.result,filter:"",optionLabel:e.relatedEntityColumn,placeholder:"Select "+e.relatedEntityColumn,class:"w-full"},{value:o.withCtx(x=>[x.value?(o.openBlock(),o.createElementBlock("div",du,[o.createElementVNode("div",null,o.toDisplayString(x.value[e.relatedEntityColumn]),1)])):(o.openBlock(),o.createElementBlock("span",uu,o.toDisplayString(x.placeholder),1))]),option:o.withCtx(x=>[o.createElementVNode("div",fu,[o.createElementVNode("div",null,o.toDisplayString(x.option[e.relatedEntityColumn]),1)])]),_:1},8,["modelValue","item-value","options","optionLabel","placeholder"])])}}},pu={key:0,style:{"font-weight":"700","font-size":"1.25rem"}},mu={key:1,style:{"font-weight":"700","font-size":"1.25rem"}},gu={__name:"EntityDialog",props:o.mergeModels({entityName:{type:String,required:!0},recordId:{type:[String,Number],default:null}},{showForm:{},showFormModifiers:{}}),emits:o.mergeModels(["onSaveDialog"],["update:showForm"]),setup(e,{emit:t}){const n=o.useModel(e,"showForm"),r=t,{formData:a,columns:i,errors:l,backendErrors:s,clearErrors:d,saveRecord:c,fetchAllRecords:u,fetchRecord:p}=tr(e.entityName,e.recordId,r);return o.onMounted(()=>{e.recordId?p():u()}),(f,m)=>{const g=o.resolveComponent("Button"),h=o.resolveComponent("Dialog");return n.value?(o.openBlock(),o.createBlock(h,{key:0,showFooter:!1,visible:n.value,"onUpdate:visible":m[2]||(m[2]=b=>n.value=b),style:{width:"50rem"},breakpoints:{"1199px":"75vw","575px":"90vw"},modal:!0,class:"p-fluid"},{header:o.withCtx(()=>[e.recordId?(o.openBlock(),o.createElementBlock("span",pu,"Edit "+o.toDisplayString(e.entityName)+" record details",1)):o.createCommentVNode("",!0),e.recordId?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("span",mu,"Add "+o.toDisplayString(e.entityName)+" record details",1))]),footer:o.withCtx(()=>[o.createVNode(g,{type:"button",icon:"",label:"Cancel",severity:"secondary",onClick:m[0]||(m[0]=b=>n.value=!1)}),o.createVNode(g,{type:"button",icon:"",label:"Save",severity:"success",onClick:m[1]||(m[1]=b=>o.unref(c)())})]),default:o.withCtx(()=>{var b;return[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(i),(y,w)=>{var x;return o.openBlock(),o.createElementBlock("div",{key:w},[!y.autoGenerated&&!y.foreignKey?(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(a)[y.name],"onUpdate:modelValue":E=>o.unref(a)[y.name]=E,column:y,errors:(x=o.unref(l)[y.name])==null?void 0:x.messages,onInput:o.unref(d)},null,8,["modelValue","onUpdate:modelValue","column","errors","onInput"])):o.createCommentVNode("",!0),!y.autoGenerated&&y.foreignKey?(o.openBlock(),o.createBlock(Xa,{key:1,modelValue:o.unref(a)[y.name],"onUpdate:modelValue":E=>o.unref(a)[y.name]=E,entityName:y.foreignKey.referencedEntityName,columnName:y.name,displayName:y.displayName,relatedEntityColumn:y.foreignKey.referencedColumnName},null,8,["modelValue","onUpdate:modelValue","entityName","columnName","displayName","relatedEntityColumn"])):o.createCommentVNode("",!0)])}),128)),((b=o.unref(s))==null?void 0:b.length)>0?(o.openBlock(),o.createBlock(Ya,{key:0,errors:o.unref(s)},null,8,["errors"])):o.createCommentVNode("",!0)]}),_:1},8,["visible"])):o.createCommentVNode("",!0)}}},hu={__name:"DeleteConfirmationDialog",props:o.mergeModels({entityName:{type:String,required:!0},recordId:{type:[String,Number],default:null}},{showDeleteDialog:{},showDeleteDialogModifiers:{}}),emits:o.mergeModels(["onDeleteItem"],["update:showDeleteDialog"]),setup(e,{emit:t}){const n=new We,r=o.useModel(e,"showDeleteDialog"),a=t,i=async()=>{try{const l=await n.deleteRecord(e.entityName,e.recordId);l&&l.response&&a("onDeleteItem")}catch(l){console.error("Error deleting record:",l.errorMessage)}finally{}};return(l,s)=>{const d=o.resolveComponent("Button"),c=o.resolveComponent("Dialog");return o.openBlock(),o.createBlock(c,{visible:r.value,"onUpdate:visible":s[1]||(s[1]=u=>r.value=u),style:{width:"450px"},header:"Confirm",modal:!0},{footer:o.withCtx(()=>[o.createVNode(d,{label:"No",icon:"pi pi-times",text:"",onClick:s[0]||(s[0]=u=>r.value=!1)}),o.createVNode(d,{label:"Yes",icon:"pi pi-check",text:"",onClick:i})]),default:o.withCtx(()=>[s[2]||(s[2]=o.createElementVNode("div",{class:"flex items-center justify-center"},[o.createElementVNode("i",{class:"pi pi-exclamation-triangle mr-3",style:{"font-size":"2rem"}}),o.createElementVNode("span",null,"Are you sure you want to delete the selected item?")],-1))]),_:1},8,["visible"])}}};var bu=Object.defineProperty,Ja=Object.getOwnPropertySymbols,yu=Object.prototype.hasOwnProperty,ku=Object.prototype.propertyIsEnumerable,Qa=(e,t,n)=>t in e?bu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,wu=(e,t)=>{for(var n in t||(t={}))yu.call(t,n)&&Qa(e,n,t[n]);if(Ja)for(var n of Ja(t))ku.call(t,n)&&Qa(e,n,t[n]);return e};function Lt(e){return e==null||e===""||Array.isArray(e)&&e.length===0||!(e instanceof Date)&&typeof e=="object"&&Object.keys(e).length===0}function nr(e,t,n=new WeakSet){if(e===t)return!0;if(!e||!t||typeof e!="object"||typeof t!="object"||n.has(e)||n.has(t))return!1;n.add(e).add(t);let r=Array.isArray(e),a=Array.isArray(t),i,l,s;if(r&&a){if(l=e.length,l!=t.length)return!1;for(i=l;i--!==0;)if(!nr(e[i],t[i],n))return!1;return!0}if(r!=a)return!1;let d=e instanceof Date,c=t instanceof Date;if(d!=c)return!1;if(d&&c)return e.getTime()==t.getTime();let u=e instanceof RegExp,p=t instanceof RegExp;if(u!=p)return!1;if(u&&p)return e.toString()==t.toString();let f=Object.keys(e);if(l=f.length,l!==Object.keys(t).length)return!1;for(i=l;i--!==0;)if(!Object.prototype.hasOwnProperty.call(t,f[i]))return!1;for(i=l;i--!==0;)if(s=f[i],!nr(e[s],t[s],n))return!1;return!0}function vu(e,t){return nr(e,t)}function so(e){return!!(e&&e.constructor&&e.call&&e.apply)}function de(e){return!Lt(e)}function yt(e,t){if(!e||!t)return null;try{const n=e[t];if(de(n))return n}catch{}if(Object.keys(e).length){if(so(t))return t(e);if(t.indexOf(".")===-1)return e[t];{let n=t.split("."),r=e;for(let a=0,i=n.length;a<i;++a){if(r==null)return null;r=r[n[a]]}return r}}return null}function Za(e,t,n){return n?yt(e,n)===yt(t,n):vu(e,t)}function ei(e,t){let n=-1;if(de(e))try{n=e.findLastIndex(t)}catch{n=e.lastIndexOf([...e].reverse().find(t))}return n}function dt(e,t=!0){return e instanceof Object&&e.constructor===Object&&(t||Object.keys(e).length!==0)}function Ke(e,...t){return so(e)?e(...t):e}function ze(e,t=!0){return typeof e=="string"&&(t||e!=="")}function tt(e){return ze(e)?e.replace(/(-|_)/g,"").toLowerCase():e}function or(e,t="",n={}){const r=tt(t).split("."),a=r.shift();return a?dt(e)?or(Ke(e[Object.keys(e).find(i=>tt(i)===a)||""],n),r.join("."),n):void 0:Ke(e,n)}function co(e,t=!0){return Array.isArray(e)&&(t||e.length!==0)}function xu(e){return de(e)&&!isNaN(e)}function Su(e=""){return de(e)&&e.length===1&&!!e.match(/\S| /)}function kt(e,t){if(t){const n=t.test(e);return t.lastIndex=0,n}return!1}function ti(...e){const t=(n={},r={})=>{const a=wu({},n);return Object.keys(r).forEach(i=>{dt(r[i])&&i in n&&dt(n[i])?a[i]=t(n[i],r[i]):a[i]=r[i]}),a};return e.reduce((n,r,a)=>a===0?r:t(n,r),{})}function pn(e){return e&&e.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g,"").replace(/ {2,}/g," ").replace(/ ([{:}]) /g,"$1").replace(/([;,]) /g,"$1").replace(/ !/g,"!").replace(/: /g,":")}function Ge(e){if(e&&/[\xC0-\xFF\u0100-\u017E]/.test(e)){const n={A:/[\xC0-\xC5\u0100\u0102\u0104]/g,AE:/[\xC6]/g,C:/[\xC7\u0106\u0108\u010A\u010C]/g,D:/[\xD0\u010E\u0110]/g,E:/[\xC8-\xCB\u0112\u0114\u0116\u0118\u011A]/g,G:/[\u011C\u011E\u0120\u0122]/g,H:/[\u0124\u0126]/g,I:/[\xCC-\xCF\u0128\u012A\u012C\u012E\u0130]/g,IJ:/[\u0132]/g,J:/[\u0134]/g,K:/[\u0136]/g,L:/[\u0139\u013B\u013D\u013F\u0141]/g,N:/[\xD1\u0143\u0145\u0147\u014A]/g,O:/[\xD2-\xD6\xD8\u014C\u014E\u0150]/g,OE:/[\u0152]/g,R:/[\u0154\u0156\u0158]/g,S:/[\u015A\u015C\u015E\u0160]/g,T:/[\u0162\u0164\u0166]/g,U:/[\xD9-\xDC\u0168\u016A\u016C\u016E\u0170\u0172]/g,W:/[\u0174]/g,Y:/[\xDD\u0176\u0178]/g,Z:/[\u0179\u017B\u017D]/g,a:/[\xE0-\xE5\u0101\u0103\u0105]/g,ae:/[\xE6]/g,c:/[\xE7\u0107\u0109\u010B\u010D]/g,d:/[\u010F\u0111]/g,e:/[\xE8-\xEB\u0113\u0115\u0117\u0119\u011B]/g,g:/[\u011D\u011F\u0121\u0123]/g,i:/[\xEC-\xEF\u0129\u012B\u012D\u012F\u0131]/g,ij:/[\u0133]/g,j:/[\u0135]/g,k:/[\u0137,\u0138]/g,l:/[\u013A\u013C\u013E\u0140\u0142]/g,n:/[\xF1\u0144\u0146\u0148\u014B]/g,p:/[\xFE]/g,o:/[\xF2-\xF6\xF8\u014D\u014F\u0151]/g,oe:/[\u0153]/g,r:/[\u0155\u0157\u0159]/g,s:/[\u015B\u015D\u015F\u0161]/g,t:/[\u0163\u0165\u0167]/g,u:/[\xF9-\xFC\u0169\u016B\u016D\u016F\u0171\u0173]/g,w:/[\u0175]/g,y:/[\xFD\xFF\u0177]/g,z:/[\u017A\u017C\u017E]/g};for(let r in n)e=e.replace(n[r],r)}return e}function Cu(e){return ze(e,!1)?e[0].toUpperCase()+e.slice(1):e}function ni(e){return ze(e)?e.replace(/(_)/g,"-").replace(/[A-Z]/g,(t,n)=>n===0?t:"-"+t.toLowerCase()).toLowerCase():e}function oi(e){return ze(e)?e.replace(/[A-Z]/g,(t,n)=>n===0?t:"."+t.toLowerCase()).toLowerCase():e}var Zt={STARTS_WITH:"startsWith",CONTAINS:"contains",NOT_CONTAINS:"notContains",ENDS_WITH:"endsWith",EQUALS:"equals",NOT_EQUALS:"notEquals",IN:"in",LESS_THAN:"lt",LESS_THAN_OR_EQUAL_TO:"lte",GREATER_THAN:"gt",GREATER_THAN_OR_EQUAL_TO:"gte",BETWEEN:"between",DATE_IS:"dateIs",DATE_IS_NOT:"dateIsNot",DATE_BEFORE:"dateBefore",DATE_AFTER:"dateAfter"},Eu={AND:"and",OR:"or"};function ri(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=Bu(e))||t){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
19
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,l=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var c=n.next();return l=c.done,c},e:function(c){s=!0,i=c},f:function(){try{l||n.return==null||n.return()}finally{if(s)throw i}}}}function Bu(e,t){if(e){if(typeof e=="string")return ai(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ai(e,t):void 0}}function ai(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var $u={filter:function(t,n,r,a,i){var l=[];if(!t)return l;var s=ri(t),d;try{for(s.s();!(d=s.n()).done;){var c=d.value;if(typeof c=="string"){if(this.filters[a](c,r,i)){l.push(c);continue}}else{var u=ri(n),p;try{for(u.s();!(p=u.n()).done;){var f=p.value,m=yt(c,f);if(this.filters[a](m,r,i)){l.push(c);break}}}catch(g){u.e(g)}finally{u.f()}}}}catch(g){s.e(g)}finally{s.f()}return l},filters:{startsWith:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.slice(0,a.length)===a},contains:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a)!==-1},notContains:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a)===-1},endsWith:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a,i.length-a.length)!==-1},equals:function(t,n,r){return n==null||n===""?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()===n.getTime():Ge(t.toString()).toLocaleLowerCase(r)==Ge(n.toString()).toLocaleLowerCase(r)},notEquals:function(t,n,r){return n==null||n===""?!1:t==null?!0:t.getTime&&n.getTime?t.getTime()!==n.getTime():Ge(t.toString()).toLocaleLowerCase(r)!=Ge(n.toString()).toLocaleLowerCase(r)},in:function(t,n){if(n==null||n.length===0)return!0;for(var r=0;r<n.length;r++)if(Za(t,n[r]))return!0;return!1},between:function(t,n){return n==null||n[0]==null||n[1]==null?!0:t==null?!1:t.getTime?n[0].getTime()<=t.getTime()&&t.getTime()<=n[1].getTime():n[0]<=t&&t<=n[1]},lt:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()<n.getTime():t<n},lte:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()<=n.getTime():t<=n},gt:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()>n.getTime():t>n},gte:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()>=n.getTime():t>=n},dateIs:function(t,n){return n==null?!0:t==null?!1:t.toDateString()===n.toDateString()},dateIsNot:function(t,n){return n==null?!0:t==null?!1:t.toDateString()!==n.toDateString()},dateBefore:function(t,n){return n==null?!0:t==null?!1:t.getTime()<n.getTime()},dateAfter:function(t,n){return n==null?!0:t==null?!1:t.getTime()>n.getTime()}},register:function(t,n){this.filters[t]=n}};const Nu={key:0},Ou={key:1},rr={__name:"RecordColumnRenderer",props:{column:Object,value:null},setup(e){const t=o.ref(null),n=Object.assign({});async function r(){await o.nextTick();const a=n[`/src/directives/${e.column.displayFormatKey}.js`];a&&t.value&&a().then(i=>{i.default.beforeMount(t.value,{value:e.value,arg:e.column.displayFormat})})}return o.onMounted(()=>{r()}),o.onUpdated(()=>{r()}),(a,i)=>e.column.displayFormatKey?(o.openBlock(),o.createElementBlock("span",Nu,[o.createElementVNode("span",{ref_key:"el",ref:t},o.toDisplayString(e.value),513)])):(o.openBlock(),o.createElementBlock("span",Ou,o.toDisplayString(e.value),1))}},Tu={class:"my-2"},Vu={class:"flex flex-col md:flex-row md:justify-between md:items-center"},Iu={class:"flex flex-row gap-2"},ar={__name:"Grid",props:{entityName:String,showAddButton:Boolean,showClearFilters:Boolean,columnsToShow:Array,editable:Boolean,deleteable:Boolean,showPagination:Boolean},setup(e){const t=$e(),n=e;console.log("columnsToShow",n.columnsToShow);const r=mt.useRoute(),a=o.ref(n.entityName||r.params.entityName),i=o.ref({}),l=o.ref(""),s=o.ref(!1),d=o.ref(!1),{items:c,headers:u,first:p,totalRecords:f,pageSize:m,loading:g,sortBy:h,sortDirection:b,operatorMap:y,filterToSend:w,primarayKeyColumn:x,fullTextSearch:E,listingResponse:N,onFullTextSearch:$,getDatatypeByField:S,getColumnDatatype:k,onSort:v,onPage:C,onFilter:V,fetchEntityFilterData:R,fetchEntityByName:D}=Lc(a.value),F=o.ref();let L=o.ref(!1);const M=Y=>{i.value=Y.reduce((Q,le)=>{if(!le.filterable)return Q;let ce=Zt.CONTAINS;switch(le.datatype.toLowerCase()){case"string":case"uuid":ce=Zt.STARTS_WITH;break;case"date":ce=Zt.DATE_IS;break;case"numeric":case"int":case"integer":ce=Zt.EQUALS;break;case"bool":case"boolean":ce=Zt.EQUALS;break}return le.datatype=="bool"||le.datatype=="boolean"?Q[le.field]={value:null,matchMode:Zt.EQUALS}:Q[le.field]={operator:Eu.AND,constraints:[{value:null,matchMode:ce}]},Q},{})},U=()=>{M(u.value),w.value=ae(i.value),V()},I=Y=>{w.value=ae(i.value),V()},B=Y=>{Y?l.value=Y[x.value.name]:l.value="",s.value=!s.value},_=()=>{s.value=!1,R(!1)},J=Y=>{l.value=Y[x.value.name],d.value=!0},re=()=>{d.value=!1,R(!1)},ae=Y=>Object.keys(Y).map(Q=>{const le=Y[Q];return le.constraints?le.constraints.filter(ce=>ce.value!==null&&ce.value!=="").map(ce=>({columnName:Q,operator:y[ce.matchMode]??ce.matchMode,value:ce.value,columnType:S(Q)})):le.value!==null&&le.value!==""?{columnName:Q,operator:y[le.matchMode]??le.matchMode,value:le.value,columnType:S(Q)}:[]}).flat();return o.watch(()=>t.globalConfigs.appId,async Y=>{Y&&D(a.value)},{immediate:!0}),o.watch(()=>u.value,Y=>{!L.value&&Y&&Y.length&&(M(Y),L.value=!0)},{immediate:!0}),(Y,Q)=>{const le=o.resolveComponent("Button"),ce=o.resolveComponent("Toolbar"),xe=o.resolveComponent("ProgressSpinner"),He=o.resolveComponent("InputIcon"),Re=o.resolveComponent("IconField"),rt=o.resolveComponent("DatePicker"),Je=o.resolveComponent("InputNumber"),W=o.resolveComponent("Checkbox"),j=o.resolveComponent("Column"),fe=o.resolveComponent("DataTable");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",o.normalizeProps(o.guardReactiveProps(Y.$attrs)),[o.renderSlot(Y.$slots,"header"),e.showClearFilters||e.showAddButton?(o.openBlock(),o.createBlock(ce,{key:0,class:"mb-4 mt-4"},o.createSlots({_:2},[e.showClearFilters?{name:"start",fn:o.withCtx(()=>[o.createElementVNode("div",Tu,[o.createVNode(le,{type:"button",icon:"pi pi-filter-slash",label:"Clear",severity:"warning",onClick:Q[0]||(Q[0]=ge=>U())})])]),key:"0"}:void 0,e.showAddButton?{name:"end",fn:o.withCtx(()=>[o.createVNode(le,{label:"Add",icon:"pi pi-plus",class:"mr-2",severity:"success",onClick:Q[1]||(Q[1]=ge=>B())})]),key:"1"}:void 0]),1024)):o.createCommentVNode("",!0),o.createVNode(fe,{lazy:"",value:o.unref(c),loading:o.unref(g),ref_key:"dt",ref:F,stripedRows:!0,showGridlines:"",rowHover:!0,paginator:e.showPagination,rows:o.unref(m),rowsPerPageOptions:[10,25,50,100],totalRecords:o.unref(f),first:o.unref(p),sortField:o.unref(h),sortOrder:o.unref(b),filters:i.value,"onUpdate:filters":Q[5]||(Q[5]=ge=>i.value=ge),filterDisplay:"menu",scrollable:"",scrollHeight:"400px",onSort:o.unref(v),onPage:o.unref(C),onFilter:Q[6]||(Q[6]=ge=>I()),size:"large",paginatorTemplate:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:"Showing {first} to {last} of {totalRecords} items"},{empty:o.withCtx(()=>Q[9]||(Q[9]=[o.createTextVNode(" No data found. ")])),loading:o.withCtx(()=>[o.createVNode(xe)]),header:o.withCtx(()=>[o.createElementVNode("div",Vu,[o.createVNode(Re,{iconPosition:"left",class:"block mt-2 md:mt-0"},{default:o.withCtx(()=>[o.createVNode(He,{class:"pi pi-search",onClick:Q[2]||(Q[2]=ge=>o.unref($)())}),o.createVNode(o.unref(Sr.InputText),{class:"w-full sm:w-auto",onKeyup:Q[3]||(Q[3]=o.withKeys(ge=>o.unref($)(),["enter"])),modelValue:o.unref(E),"onUpdate:modelValue":Q[4]||(Q[4]=ge=>o.isRef(E)?E.value=ge:null),placeholder:"Search..."},null,8,["modelValue"])]),_:1})])]),default:o.withCtx(()=>{var ge;return[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(u).filter(pe=>!n.columnsToShow||n.columnsToShow.length===0||n.columnsToShow.includes(pe.field)),pe=>(o.openBlock(),o.createBlock(j,{key:pe.field,dataType:o.unref(k)(pe.datatype),field:pe.field,header:pe.name,sortable:pe.sortable,showAddButton:!1,showFilterOperator:!1,style:{"text-wrap":"nowrap"}},o.createSlots({body:o.withCtx(({data:he})=>[o.createVNode(rr,{column:pe,value:he[pe.field]},null,8,["column","value"])]),_:2},[pe.datatype.toLowerCase()==="date"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(rt,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])]),key:"0"}:pe.datatype.toLowerCase()==="int"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(Je,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,placeholder:"Search..."},null,8,["modelValue","onUpdate:modelValue"])]),key:"1"}:pe.datatype.toLowerCase()==="boolean"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(W,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,indeterminate:he.value===null,binary:""},null,8,["modelValue","onUpdate:modelValue","indeterminate"])]),key:"2"}:pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(o.unref(Sr.InputText),{style:{width:"150px"},type:"text",modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,class:"p-column-filter",placeholder:"Search..."},null,8,["modelValue","onUpdate:modelValue"])]),key:"3"}:void 0]),1032,["dataType","field","header","sortable"]))),128)),((ge=o.unref(c))==null?void 0:ge.length)>0&&(e.editable||e.deleteable)?(o.openBlock(),o.createBlock(j,{key:0,header:"Actions"},{body:o.withCtx(({data:pe})=>[o.createElementVNode("div",Iu,[e.editable?(o.openBlock(),o.createBlock(le,{key:0,onClick:he=>B(pe),icon:"pi pi-pencil",severity:"success",variant:"text",size:"",rounded:"","aria-label":"Edit"},null,8,["onClick"])):o.createCommentVNode("",!0),e.deleteable?(o.openBlock(),o.createBlock(le,{key:1,onClick:he=>J(pe),icon:"pi pi-trash",severity:"danger",variant:"text",rounded:"","aria-label":"Delete"},null,8,["onClick"])):o.createCommentVNode("",!0)])]),_:1})):o.createCommentVNode("",!0)]}),_:1},8,["value","loading","paginator","rows","totalRecords","first","sortField","sortOrder","filters","onSort","onPage"]),o.renderSlot(Y.$slots,"footer")],16),s.value?(o.openBlock(),o.createBlock(gu,{key:0,showForm:s.value,"onUpdate:showForm":Q[7]||(Q[7]=ge=>s.value=ge),entityName:o.unref(N).entityName,recordId:l.value,onOnSaveDialog:_},null,8,["showForm","entityName","recordId"])):o.createCommentVNode("",!0),d.value?(o.openBlock(),o.createBlock(hu,{key:1,showDeleteDialog:d.value,"onUpdate:showDeleteDialog":Q[8]||(Q[8]=ge=>d.value=ge),entityName:o.unref(N).entityName,recordId:l.value,onOnDeleteItem:re},null,8,["showDeleteDialog","entityName","recordId"])):o.createCommentVNode("",!0)],64)}}},Fu={class:"flex flex-col p-3"},Pu={class:"flex justify-center flex-row mb-2 cursor-pointer"},Ru={style:{"word-break":"break-all"}},Du={__name:"LinkEntityContent",props:{linkEntityListItem:{type:Object,required:!0}},setup(e){mt.useRoute();const t=$e(),n=o.ref("");t.getAppId()!=null&&t.getAppId()!=""&&(n.value=t.getAppId());const r=o.ref(),a=o.ref(!1),i=o.ref(!1),l=o.ref({}),s=o.ref([{label:"Remove association",icon:"",command:p=>{d()}}]),d=()=>{console.log(l.value),console.log("Function is calling")},c=(p,f)=>{l.value=f,r.value.show(p),i.value=!0},u=()=>{l.value={},i.value=!1};return(p,f)=>{const m=o.resolveComponent("Button"),g=o.resolveComponent("ContextMenu"),h=o.resolveComponent("router-link");return o.openBlock(),o.createElementBlock("div",{onMouseenter:f[4]||(f[4]=o.withModifiers(b=>a.value=!0,["prevent"])),onMouseleave:f[5]||(f[5]=o.withModifiers(b=>a.value=!1,["prevent"])),class:"flex relative m-3",style:{border:"1px solid var(--surface-border)","border-radius":"5px"}},[o.withDirectives(o.createVNode(m,{onClick:f[0]||(f[0]=b=>c(b,e.linkEntityListItem)),class:"!absolute right-0",size:"small",style:{width:"55px",height:"25px","border-radius":"5px","font-size":"12px"}},{default:o.withCtx(()=>f[6]||(f[6]=[o.createTextVNode(" More")])),_:1},512),[[o.vShow,a.value||i.value]]),o.createVNode(g,{ref_key:"menu",ref:r,model:s.value,onMouseenter:f[1]||(f[1]=o.withModifiers(b=>a.value=!0,["prevent"])),onMouseleave:f[2]||(f[2]=o.withModifiers(b=>a.value=!1,["prevent"])),onHide:f[3]||(f[3]=b=>u())},null,8,["model"]),o.createElementVNode("div",Fu,[o.createElementVNode("div",Pu,[o.createElementVNode("div",Ru,o.toDisplayString(e.linkEntityListItem.entityName),1),o.createVNode(h,{to:{name:"entity360view",params:{entityName:e.linkEntityListItem.entityName,id:e.linkEntityListItem.id,appId:n.value}},target:"_blank"},{default:o.withCtx(()=>f[7]||(f[7]=[o.createElementVNode("div",{class:"pi pi-external-link ml-3"},null,-1)])),_:1},8,["to"])]),o.createElementVNode("div",null,"Id: "+o.toDisplayString(e.linkEntityListItem.id),1)])],32)}}},_u={class:"flex flex-col mt-3"},Au={class:"flex flex-row items-center"},Lu={class:"flex items-center justify-center mt-5"},zu={key:0,class:"pi pi-caret-right"},Mu={key:1,class:"pi pi-caret-down"},ju={key:0},Uu={class:"flex flex-col mt-5"},Hu={class:"col-12"},Wu={class:"flex flex-col mt-5"},qu={class:"col-12 font-bold"},Ku={key:0},Gu={class:"flex flex-col mt-5"},Yu={class:"col-12"},Xu={class:"flex flex-col mt-5"},Ju={class:"col-12"},Qu={class:"flex flex-col mt-5"},Zu={class:"col-12"},ef={class:"flex flex-row justify-between items-center mt-5"},tf={key:1,class:"mt-2"},nf={class:"flex flex-row justify-between items-center"},of={key:1,class:"text-red-500"},rf={class:"flex flex-col mt-5"},af={class:"flex flex-row justify-between items-center mt-2"},lf={class:"flex flex-row items-center mt-5 mb-5"},sf={class:"font-bold"},cf={class:"font-bold ml-2 flex-1"},df={class:"flex flex-row justify-center items-center mb-2"},uf={class:"ml-2 flex-1"},ff={key:0,class:"pi pi-exclamation-circle"},pf={class:"flex flex-col justify-center"},mf={class:"flex flex-row justify-between items-center"},gf={class:"justify-start"},hf={class:"justify-start"},bf=Ie({__name:"EntityLookup",props:o.mergeModels({linkedEntity:{type:Object,required:!0},entity360Name:{type:String,required:!0},entity360Id:{required:!0},saveExistingRelatedEntityRecord:{type:Function,required:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){mt.useRoute();const t=e,n=o.useModel(e,"modelValue"),r=new We,a=o.ref({}),i=o.ref([]),l=o.ref({}),s=o.ref([]),d=o.ref([]),c=o.ref({}),u=o.ref("id"),p=o.ref(1),f=o.ref([]),m=o.ref(25),g=o.ref(0),h=o.ref(0),b=o.ref(0);let y=o.ref([]);const w=o.ref(!1),x={gt:"GREATER_THAN",dateAfter:"GREATER_THAN",equals:"EQUAL",dateIs:"EQUAL",notEquals:"NOT_EQUAL",dateIsNot:"NOT_EQUAL",lt:"LESS_THAN",dateBefore:"LESS_THAN",lte:"LESS_THAN_EQUAL",gte:"GREATER_THAN_EQUAL",between:"BETWEEN",contains:"CONTAINS",startsWith:"STARTS_WITH",notContains:"NOT_CONTAINS",endsWith:"ENDS_WITH"},E={gt:"is greater than",dateAfter:"is after",equals:"is equals",dateIs:"is equals",notEquals:"is not equals",dateIsNot:"is not equals",lt:"is less than",dateBefore:"is before",lte:"is less than or equal to",gte:"is greater than or equal to",between:"between",contains:"contains",startsWith:"starts with",notContains:"not contains",endsWith:"ends with"};o.onMounted(()=>{$()});const N=W=>t.linkedEntity.list.some(j=>j[c.value.name]===W),$=async()=>{try{const W={sortBy:[u.value],sortDirection:p.value===1?"ASC":"DESC",pageSize:m.value,currentPage:g.value,columnList:null,filter:y.value,fullTextSearch:""},j=await r.searchEntityRecords(t.linkedEntity.entityName,W);j&&j.response&&(a.value=j.response,s.value=j.response.entity.entityDefinition.columns,d.value=xe(j.response.entity.entityDefinition.columns),h.value=j.response.totalRecords,await S(),await k(),v())}catch{}finally{}},S=async()=>{for(let W=0;W<s.value.length;W++){const j=s.value[W];!j.autoGeneerated&&j.foreignKey&&j.foreignKey.referencedEntityName.toLowerCase()==t.entity360Name.toLowerCase()&&(l.value=j)}},k=async()=>{for(let W=0;W<s.value.length;W++){const j=s.value[W];if(j.primaryKey&&j.primaryKey==!0){c.value=j;break}}},v=()=>{for(let W=0;W<t.linkedEntity.list.length;W++){const j=t.linkedEntity.list[W];j.is_deleted==!1&&j[l.value.name]==t.entity360Id&&i.value.push(j[c.value.name])}},C=()=>{let W=JSON.parse(JSON.stringify(i.value));W=W.filter(fe=>!N(fe));let j={linkEntityName:a.value.entityName,linkRecordIdList:[]};for(let fe=0;fe<W.length;fe++){const ge=W[fe];j.linkRecordIdList.push(ge)}t.saveExistingRelatedEntityRecord(j)},V=()=>{w.value=!w.value},R=[{label:"Starts with",value:"startsWith"},{label:"Contains",value:"contains"},{label:"Not contains",value:"notContains"},{label:"Ends with",value:"endsWith"},{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"}],D=[{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"},{label:"Less than",value:"lt"},{label:"Less than or equal to",value:"lte"},{label:"Greater than",value:"gt"},{label:"Greater than or equal to",value:"gte"}],F=[{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"}],L=[{label:"Date is",value:"dateIs"},{label:"Date is not",value:"dateIsNot"},{label:"Date is before",value:"dateBefore"},{label:"Date is after",value:"dateAfter"}],M=[{label:"ASC",value:1},{label:"DESC",value:-1}];let U=[];const I=o.computed(()=>d.value.filter(W=>W.sortable)),B=o.computed(()=>d.value.filter(W=>W.filterable)),_=W=>d.value.filter(j=>{var fe;return j.filterable?((fe=f.value[W])==null?void 0:fe.columnName)===j.name?!0:!f.value.some((ge,pe)=>pe!==W&&ge.columnName===j.name):!1}).map(j=>({label:j.name,value:j.field})),J=W=>{let j="";switch(Re(W.columnName).toLowerCase()){case"string":case"uuid":j="startsWith";break;case"date":j="dateIs";break;case"numeric":case"int":case"integer":j="equals";break;case"bool":case"boolean":j="equals";break}W.operator=j,W.value=""},re=W=>{const j=Re(W.columnName);switch(j&&j.toLowerCase()){case"integer":case"int":case"numeric":U=D;break;case"date":U=L;break;case"bool":case"boolean":U=F;break;default:U=R}return U},ae=W=>{if(W&&W.columnName){const j=Re(W.columnName);return rt(j)}else return""},Y=()=>{for(let W=0;W<f.value.length;W++){const j=f.value[W];j.editing=!1}f.value.push({columnName:"",value:"",operator:"",editing:!0})},Q=W=>{f.value.splice(W,1)},le=W=>{W.editing=!W.editing},ce=()=>{let W=JSON.parse(JSON.stringify(f.value));y.value=[];for(let j=0;j<W.length;j++){const fe=W[j];delete fe.editing,fe.columnName&&fe.operator&&fe.value&&(fe.columnType=Re(fe.columnName),fe.operator=x[fe.operator],y.value.push(fe))}$()},xe=W=>W.map(j=>({field:j.name,name:j.displayName?j.displayName:j.name,filterable:j.filterable,datatype:j.type,sortable:!0,displayFormatKey:j.displayFormatKey,displayFormat:j.displayFormat})),He=()=>{$()},Re=W=>{const j=d.value.find(fe=>fe.field===W);return j?j.datatype:null},rt=W=>{switch(W.toLowerCase()){case"integer":case"int":case"numeric":return"numeric";case"date":return"date";case"bool":case"boolean":return"boolean";default:return"text"}},Je=W=>{m.value=W.rows,g.value=W.page,b.value=W.first,$()};return(W,j)=>{var It,qt;const fe=o.resolveComponent("InputIcon"),ge=o.resolveComponent("InputText"),pe=o.resolveComponent("IconField"),he=o.resolveComponent("Select"),Ee=o.resolveComponent("Divider"),Me=o.resolveComponent("InputNumber"),pt=o.resolveComponent("DatePicker"),Ve=o.resolveComponent("Button"),je=o.resolveComponent("Checkbox"),Qe=o.resolveComponent("Paginator"),Vt=o.resolveDirective("tooltip");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",_u,[o.createElementVNode("div",Au,[o.createVNode(pe,{class:"block mt-2 md:mt-0 w-full"},{default:o.withCtx(()=>[o.createVNode(fe,{onClick:j[0]||(j[0]=()=>{}),class:"pi pi-search"}),o.createVNode(ge,{class:"w-full",onKeyup:j[1]||(j[1]=o.withKeys(()=>{},["enter"])),placeholder:`Search ${a.value.entityName}`},null,8,["placeholder"])]),_:1})]),o.createElementVNode("div",Lu,[o.createElementVNode("div",{class:"flex items-center cursor-pointer sorting-filter-section flex-1 line-height-4",onClick:j[2]||(j[2]=Z=>V())},[w.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",zu)),w.value?(o.openBlock(),o.createElementBlock("div",Mu)):o.createCommentVNode("",!0),j[9]||(j[9]=o.createElementVNode("div",{class:"ml-3 font-bold"}," Sorting & Filters ",-1))])]),w.value?(o.openBlock(),o.createElementBlock("div",ju,[o.createElementVNode("div",Uu,[j[10]||(j[10]=o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Column",-1)),o.createElementVNode("div",Hu,[o.createVNode(he,{modelValue:u.value,"onUpdate:modelValue":j[3]||(j[3]=Z=>u.value=Z),options:I.value,optionLabel:"name",optionValue:"field",highlightOnSelect:!1,class:"w-full",onChange:j[4]||(j[4]=Z=>He(W.event))},null,8,["modelValue","options"])])]),o.createElementVNode("div",Wu,[j[11]||(j[11]=o.createElementVNode("div",{class:"col-12 font-bold"},[o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Direction")],-1)),o.createElementVNode("div",qu,[o.createVNode(he,{modelValue:p.value,"onUpdate:modelValue":j[5]||(j[5]=Z=>p.value=Z),options:M,optionLabel:"label",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:j[6]||(j[6]=Z=>He(W.event))},null,8,["modelValue"])])]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(f.value,(Z,at)=>(o.openBlock(),o.createElementBlock("div",{key:at},[Z.editing?(o.openBlock(),o.createElementBlock("div",Ku,[o.createVNode(Ee,{class:"mt-5"}),o.createElementVNode("div",Gu,[j[12]||(j[12]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Column",-1)),o.createElementVNode("div",Yu,[o.createVNode(he,{modelValue:Z.columnName,"onUpdate:modelValue":Be=>Z.columnName=Be,options:_(at),optionLabel:"label",placeholder:"Select column",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:Be=>J(Z)},null,8,["modelValue","onUpdate:modelValue","options","onChange"])])]),o.createElementVNode("div",Xu,[j[13]||(j[13]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Operator",-1)),o.createElementVNode("div",Ju,[o.createVNode(he,{modelValue:Z.operator,"onUpdate:modelValue":Be=>Z.operator=Be,options:re(Z),optionLabel:"label",placeholder:"Select operator",optionValue:"value",highlightOnSelect:!1,class:"w-full"},null,8,["modelValue","onUpdate:modelValue","options"])])]),o.createElementVNode("div",Qu,[j[14]||(j[14]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter value",-1)),o.createElementVNode("div",Zu,[ae(Z)=="numeric"?(o.openBlock(),o.createBlock(Me,{key:0,format:!1,class:"w-full",modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"])):ae(Z)=="date"?(o.openBlock(),o.createBlock(pt,{key:1,class:"w-full",modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])):(o.openBlock(),o.createBlock(ge,{key:2,modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,class:"w-full",placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"]))])]),o.createElementVNode("div",ef,[o.createVNode(Ve,{style:{width:"100px"},label:"Hide",icon:"",severity:"warning",onClick:Be=>le(Z)},null,8,["onClick"]),o.createVNode(Ve,{style:{width:"100px"},label:"Delete",icon:"",severity:"danger",onClick:Be=>Q(at)},null,8,["onClick"])])])):o.createCommentVNode("",!0),Z.editing?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",tf,[o.createVNode(Ee),o.createElementVNode("div",nf,[o.createElementVNode("span",null,[Z.columnName||Z.operator||Z.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!Z.columnName})},o.toDisplayString(Z.columnName?" "+Z.columnName:" column"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!E[Z.operator]})},o.toDisplayString(Z.operator?" "+E[Z.operator]:" operator"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!Z.value})},o.toDisplayString(Z.value?" "+Z.value:" value"),3)],64)):(o.openBlock(),o.createElementBlock("span",of,"Filter is empty"))]),o.createVNode(Ve,{style:{width:"100px"},label:"Edit",icon:"",severity:"info",onClick:Be=>le(Z)},null,8,["onClick"])])]))]))),128)),o.createElementVNode("div",rf,[o.createVNode(Ee),o.createElementVNode("div",af,[o.createVNode(Ve,{style:{width:"100px"},label:"Add",disabled:B.value.length===f.value.length,icon:"",severity:"success",onClick:Y},null,8,["disabled"]),o.createVNode(Ve,{style:{width:"100px"},label:"Apply",severity:"info",onClick:ce})])])])):o.createCommentVNode("",!0),o.createElementVNode("div",lf,[o.createElementVNode("div",sf,o.toDisplayString((It=a.value)==null?void 0:It.totalRecords),1),o.createElementVNode("div",cf,o.toDisplayString((qt=a.value)==null?void 0:qt.entityName),1)]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(a.value.result,(Z,at)=>(o.openBlock(),o.createElementBlock("div",{key:at},[o.createElementVNode("div",df,[o.createVNode(je,{disabled:N(Z[c.value.name]),modelValue:i.value,"onUpdate:modelValue":j[7]||(j[7]=Be=>i.value=Be),value:Z[c.value.name]},null,8,["disabled","modelValue","value"]),o.createElementVNode("div",uf,[o.createTextVNode(o.toDisplayString(e.linkedEntity.entityName)+" ",1),o.createElementVNode("span",null,o.toDisplayString(Z[c.value.name]),1)]),N(Z[c.value.name])?o.withDirectives((o.openBlock(),o.createElementBlock("div",ff,null,512)),[[Vt,"This record is already associated.",void 0,{left:!0}]]):o.createCommentVNode("",!0)])]))),128)),o.createVNode(Qe,{rows:m.value,totalRecords:h.value,rowsPerPageOptions:[10,25,50,100],onPage:Je,template:"FirstPageLink PageLinks LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:""},null,8,["rows","totalRecords"])]),o.createElementVNode("div",pf,[o.createVNode(Ee,{class:"mt-5"}),o.createElementVNode("div",mf,[o.createElementVNode("div",gf,[o.createVNode(Ve,{label:"Cancel",icon:"",severity:"secondary",onClick:j[8]||(j[8]=Z=>n.value=!1)})]),o.createElementVNode("div",hf,[o.createVNode(Ve,{label:"Save",severity:"success",onClick:C})])])])],64)}}},[["__scopeId","data-v-a358808d"]]),yf={class:"field flex flex-col"},kf={key:0,class:"flex items-center"},wf={key:1},vf={class:"flex items-center"},xf={class:"flex flex-col justify-center"},Sf={class:"flex flex-row justify-between items-center"},Cf={class:"justify-start"},Ef={class:"justify-start"},Bf={__name:"EntityLookupObject",props:o.mergeModels({linkedEntity:{type:Object,required:!0},entity360Name:{type:String,required:!0},entity360Id:{type:[String,Number]},saveExistingEntityObject:{type:Function}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){mt.useRoute();const{getEntityRecords:t,searchEntityRecords:n,saveRelatedEntityRecord:r,getRecord:a,addRecord:i,updateRecord:l,deleteRecord:s}=We(),d=e,c=o.useModel(e,"modelValue");new EntityRecordService;const u=o.ref({}),p=o.ref({});let f=o.ref("");const m=o.ref({}),g=o.ref({});o.onMounted(async()=>{console.log("linkedEntity"),console.log(d.linkedEntity),console.log("entity360Name"),console.log(d.entity360Name),console.log("entity360Id"),console.log(d.entity360Id),await b(),await h()});const h=async()=>{try{const N=await t(d.linkedEntity.entityName);N&&N.response&&(u.value=N.response,await y(N.response.entity.entityDefinition.columns),await x(),console.log(u.value))}catch{}finally{}},b=async()=>{try{const N=await a(d.entity360Name,d.entity360Id);N&&N.response&&(p.value=N.response,await w(N.response.entity.entityDefinition.columns),console.log(p.value))}catch{}finally{}},y=async N=>{for(let $=0;$<N.length;$++){const S=N[$];if(S.primaryKey&&S.primaryKey==!0){m.value=S;break}}},w=async N=>{for(let $=0;$<N.length;$++){const S=N[$];if(!S.autoGeneerated&&S.foreignKey&&S.foreignKey.referencedEntityName.toLowerCase()==d.linkedEntity.entityName.toLowerCase()){g.value=S;break}}},x=async()=>{for(let N=0;N<u.value.result.length;N++){const $=u.value.result[N];if($[m.value.name]==p.value.result[0][g.value.name]){f.value=$;break}}},E=()=>{const N={linkedEntityRecordId:f.value[m.value.name],linkedEntityName:d.linkedEntity.entityName,relationType:"ManyToOne"};d.saveExistingEntityObject(N)};return(N,$)=>{const S=o.resolveComponent("Select"),k=o.resolveComponent("Divider"),v=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock("div",yf,[o.createVNode(S,{modelValue:o.unref(f),"onUpdate:modelValue":$[0]||($[0]=C=>o.isRef(f)?f.value=C:f=C),"item-value":m.value.name,options:u.value.result,filter:"",optionLabel:m.value.name,placeholder:"Select "+m.value.name,class:"w-full"},{value:o.withCtx(C=>[C.value?(o.openBlock(),o.createElementBlock("div",kf,[o.createElementVNode("div",null,o.toDisplayString(C.value[m.value.name]),1)])):(o.openBlock(),o.createElementBlock("span",wf,o.toDisplayString(C.placeholder),1))]),option:o.withCtx(C=>[o.createElementVNode("div",vf,[o.createElementVNode("div",null,o.toDisplayString(C.option[m.value.name]),1)])]),_:1},8,["modelValue","item-value","options","optionLabel","placeholder"]),o.createElementVNode("div",xf,[o.createVNode(k),o.createElementVNode("div",Sf,[o.createElementVNode("div",Cf,[o.createVNode(v,{label:"Cancel",icon:"",severity:"secondary",onClick:$[1]||($[1]=C=>c.value=!1)})]),o.createElementVNode("div",Ef,[o.createVNode(v,{label:"Save",severity:"success",onClick:E})])])])])}}},$f={style:{"font-weight":"700","font-size":"1.25rem"}},Nf={class:"flex flex-col"},Of={class:"flex flex-row justify-between items-center"},Tf={class:"justify-start"},Vf={class:"justify-start"},If="",Ff={__name:"CreateRelatedentity",props:o.mergeModels({entity360Id:{required:!0},entity360Name:{type:String,required:!0},linkedEntity:{type:Object,required:!0}},{showCreateRelatedEntityForm:{},showCreateRelatedEntityFormModifiers:{}}),emits:o.mergeModels(["onSaveDialog"],["update:showCreateRelatedEntityForm"]),setup(e,{emit:t}){const n=o.useModel(e,"showCreateRelatedEntityForm");mt.useRoute();const r=e,a=r.linkedEntity.entityName,i=t,l=o.ref("Add existing");o.onMounted(()=>{m()});const{formData:s,columns:d,errors:c,backendErrors:u,clearErrors:p,saveRecord:f,fetchAllRecords:m,saveRelatedEntityRecord:g}=tr(a,If,i),h=()=>{for(let x=0;x<d.value.length;x++){const E=d.value[x];!E.autoGenerated&&E.foreignKey&&(s.value[E.name]=r.entity360Id)}const w={relationType:r.linkedEntity.relationType,linkedEntities:{entityLinkage:[{linkEntityName:r.entity360Name,linkRecordIdList:[r.entity360Id]}]}};f(w)},b=w=>{var x;if(((x=w==null?void 0:w.linkRecordIdList)==null?void 0:x.length)>0){const E={entityLinkage:[{linkEntityName:w.linkEntityName,linkRecordIdList:w.linkRecordIdList}]};g(r.entity360Name,r.entity360Id,E)}},y=w=>{const x={entityLinkage:[{linkEntityName:r.entity360Name,linkRecordIdList:[r.entity360Id]}]};g(w.linkedEntityName,w.linkedEntityRecordId,x)};return(w,x)=>{const E=o.resolveComponent("Tab"),N=o.resolveComponent("TabList"),$=o.resolveComponent("Divider"),S=o.resolveComponent("Button"),k=o.resolveComponent("TabPanel"),v=o.resolveComponent("TabPanels"),C=o.resolveComponent("Tabs"),V=o.resolveComponent("Drawer");return o.openBlock(),o.createBlock(V,{visible:n.value,"onUpdate:visible":x[3]||(x[3]=R=>n.value=R),blockScroll:!0,position:"right",class:"p-fluid layout-profile-sidebar",style:{width:"40%"},pt:{closeButton:"ml-auto"}},{header:o.withCtx(()=>[o.createElementVNode("span",$f,o.toDisplayString(l.value)+" "+o.toDisplayString(e.linkedEntity.entityName),1)]),default:o.withCtx(()=>[o.createVNode(C,{value:"1"},{default:o.withCtx(()=>[o.createVNode(N,null,{default:o.withCtx(()=>[o.createVNode(E,{value:"0"},{default:o.withCtx(()=>x[4]||(x[4]=[o.createTextVNode("Create new")])),_:1}),o.createVNode(E,{value:"1"},{default:o.withCtx(()=>x[5]||(x[5]=[o.createTextVNode("Add existing")])),_:1})]),_:1}),o.createVNode(v,null,{default:o.withCtx(()=>[o.createVNode(k,{value:"0"},{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(d),(R,D)=>{var F;return o.openBlock(),o.createElementBlock("div",{key:D,class:"mt-3"},[!R.autoGenerated&&!R.foreignKey?(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(s)[R.name],"onUpdate:modelValue":L=>o.unref(s)[R.name]=L,column:R,errors:(F=o.unref(c)[R.name])==null?void 0:F.messages,onInput:o.unref(p)},null,8,["modelValue","onUpdate:modelValue","column","errors","onInput"])):o.createCommentVNode("",!0)])}),128)),o.createElementVNode("div",Nf,[o.createVNode($),o.createElementVNode("div",Of,[o.createElementVNode("div",Tf,[o.createVNode(S,{label:"Cancel",icon:"",severity:"secondary",onClick:x[0]||(x[0]=R=>n.value=!1)})]),o.createElementVNode("div",Vf,[o.createVNode(S,{label:"Save",severity:"success",onClick:h})])])])]),_:1}),o.createVNode(k,{value:"1"},{default:o.withCtx(()=>[e.linkedEntity.relationType=="ONE_TO_MANY"?(o.openBlock(),o.createBlock(bf,{key:0,modelValue:n.value,"onUpdate:modelValue":x[1]||(x[1]=R=>n.value=R),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,saveExistingRelatedEntityRecord:b},null,8,["modelValue","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0),e.linkedEntity.relationType=="MANY_TO_ONE"?(o.openBlock(),o.createBlock(Bf,{key:1,modelValue:n.value,"onUpdate:modelValue":x[2]||(x[2]=R=>n.value=R),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,saveExistingEntityObject:y},null,8,["modelValue","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0)]),_:1})]),_:1})]),_:1})]),_:1},8,["visible"])}}},Pf={class:"flex flex-col border-bottom-section pb-3 pt-3"},Rf={class:"flex items-center pl-3 pr-3 justify-between"},Df={key:0,class:"pi pi-caret-right"},_f={key:1,class:"pi pi-caret-down"},Af={class:"ml-3 font-bold"},Lf={class:"ml-1"},zf={class:"text-right"},Mf={key:0},jf=Ie({__name:"LinkEntitySection",props:{entity360Id:{required:!0},entity360Name:{type:String,required:!0},linkedEntity:{type:Object,required:!0},entity360Name:{type:[String,Number]},onSaveRelatedEnttity:{type:Function}},setup(e){mt.useRoute();const t=e,n=o.ref(!1),r=o.ref(!1),a=()=>{n.value=!n.value},i=()=>{r.value=!r.value},l=()=>{r.value=!1,t.onSaveRelatedEnttity()},s=o.computed(()=>t.linkedEntity.list.filter(d=>!d.is_deleted).length);return(d,c)=>{const u=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",Pf,[o.createElementVNode("div",Rf,[o.createElementVNode("div",{class:"flex cursor-pointer items-center linked-entity-section grow line-height-4",onClick:c[0]||(c[0]=p=>a())},[n.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",Df)),n.value?(o.openBlock(),o.createElementBlock("div",_f)):o.createCommentVNode("",!0),o.createElementVNode("div",Af,o.toDisplayString(e.linkedEntity.entityName),1),o.createElementVNode("div",Lf," ("+o.toDisplayString(s.value)+") ",1)]),o.createElementVNode("div",zf,[o.createVNode(u,{label:"Add",icon:"pi pi-plus",size:"small",onClick:c[1]||(c[1]=p=>i())})])]),n.value?(o.openBlock(),o.createElementBlock("div",Mf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.linkedEntity.list,(p,f)=>(o.openBlock(),o.createElementBlock("div",{class:"flex flex-col",key:f},[p.is_deleted?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(Du,{key:0,linkEntityListItem:p},null,8,["linkEntityListItem"]))]))),128))])):o.createCommentVNode("",!0)]),r.value?(o.openBlock(),o.createBlock(Ff,{key:0,showCreateRelatedEntityForm:r.value,"onUpdate:showCreateRelatedEntityForm":c[2]||(c[2]=p=>r.value=p),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,onOnSaveDialog:l},null,8,["showCreateRelatedEntityForm","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-412eec44"]]),Uf={key:0},Hf={class:"flex"},Wf={class:"p-3 mt-3 flex-col items-center"},qf={key:0,class:"pi pi-caret-right"},Kf={key:1,class:"pi pi-caret-down"},Gf={class:"font-bold ml-2"},Yf={key:0,class:"flex flex-col mt-4"},Xf={class:"flex flex-col mt-2"},Jf={class:"flex flex-row flex-wrap justify-between pl-5"},Qf={class:"flex flex-col"},Zf={class:"font-bold"},ep={class:"mt-2"},tp={key:0,class:"flex flex-col",style:{position:"relative","max-width":"400px","background-color":"var(--surface-card)"}},np={key:2,style:{width:"350px"},class:"flex flex-col justify-center"},op={key:0,class:"custom-sidebar"},rp={class:"custom-sidebar-content"},ap={class:"custom-sidebar-button"},ip={class:"custom-sidebar-text"},ii=Ie({__name:"Entity360",props:{entityName:{type:String},recordId:{type:String},variable:{type:String,default:"item"},linkedEntity:Array},emits:["onSaveDialog"],setup(e,{expose:t,emit:n}){var V,R;const r=$e(),a=mt.useRoute(),i=e,l=o.ref(!0),s=o.ref(!1),d=o.ref([]);let c=(V=a==null?void 0:a.params)==null?void 0:V.entityName,u=(R=a==null?void 0:a.params)==null?void 0:R.id;i.entityName&&(c=i.entityName),i.recordId&&(u=i.recordId);const p=n,{formData:f,columns:m,errors:g,backendErrors:h,isDataChange:b,linkedEntities:y,primarayColumn:w,clearErrors:x,saveRecord:E,getRelatedEntityRecordById:N,cancleRecord:$}=tr(c,u,p);o.watch(()=>r.globalConfigs.appId,async D=>{D&&N()},{immediate:!0});const S=()=>{l.value=!l.value},k=()=>{s.value=!s.value},v=()=>{N()},C=D=>{if(!d.value||d.value.length===0)return[];const F=d.value.find(L=>L.entityName===D);return F&&F.list?F.list:(console.log("No related entity found"),[])};return t({getRelatedEntity:C}),o.watch(()=>y.value,D=>{Array.isArray(D)&&D.length>0&&D[0]&&(d.value=D)},{immediate:!0,deep:!0}),(D,F)=>{var ae;const L=o.resolveComponent("SplitterPanel"),M=o.resolveComponent("Tab"),U=o.resolveComponent("TabList"),I=o.resolveComponent("TabPanel"),B=o.resolveComponent("TabPanels"),_=o.resolveComponent("Tabs"),J=o.resolveComponent("Splitter"),re=o.resolveComponent("Button");return D.$slots["list-item-display-360"]?(o.openBlock(),o.createElementBlock("div",Uf,[o.renderSlot(D.$slots,"header",{},void 0,!0),o.createElementVNode("div",null,[o.renderSlot(D.$slots,"list-item-display-360",o.normalizeProps({[e.variable||""]:{formData:o.unref(f),columns:o.unref(m),linkedEntities:o.unref(y),errors:o.unref(g),recordId:o.unref(u),entityName:o.unref(c),getRelatedEntity:C}}),void 0,!0)]),o.renderSlot(D.$slots,"footer",{},void 0,!0)])):(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[o.createElementVNode("div",Hf,[o.createVNode(J,{class:"flex-1",layout:"horizontal",gutterSize:8,size:100},{default:o.withCtx(()=>[o.createVNode(L,{size:20,minSize:10,maxSize:20},{default:o.withCtx(()=>[o.createElementVNode("div",Wf,[o.createElementVNode("div",{onClick:F[0]||(F[0]=Y=>S()),class:"section-heading cursor-pointer"},[l.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("i",qf)),l.value?(o.openBlock(),o.createElementBlock("i",Kf)):o.createCommentVNode("",!0),o.createElementVNode("span",Gf," About this "+o.toDisplayString(o.unref(c)),1)]),l.value?(o.openBlock(),o.createElementBlock("div",Yf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(m),(Y,Q)=>{var le;return o.openBlock(),o.createElementBlock("div",{key:Q},[Y.autoGenerated?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(f)[Y.name],"onUpdate:modelValue":ce=>o.unref(f)[Y.name]=ce,column:Y,errors:(le=o.unref(g)[Y.name])==null?void 0:le.messages,onInput:o.unref(x)},null,8,["modelValue","onUpdate:modelValue","column","errors","onInput"]))])}),128))])):o.createCommentVNode("",!0)])]),_:1}),o.createVNode(L,{size:55,minSize:35,style:{height:"100%"}},{default:o.withCtx(()=>[o.createVNode(_,{value:"0"},{default:o.withCtx(()=>[o.createVNode(U,null,{default:o.withCtx(()=>[o.createVNode(M,{value:"0"},{default:o.withCtx(()=>F[3]||(F[3]=[o.createTextVNode("Overview")])),_:1}),o.createVNode(M,{value:"1"},{default:o.withCtx(()=>F[4]||(F[4]=[o.createTextVNode("Activity")])),_:1})]),_:1}),o.createVNode(B,null,{default:o.withCtx(()=>[o.createVNode(I,{value:"0"},{default:o.withCtx(()=>[o.createElementVNode("div",Xf,[F[5]||(F[5]=o.createElementVNode("h3",{class:"mt-2 text-xl font-semibold"},"Data highlights",-1)),o.createElementVNode("div",Jf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(m).filter(Y=>Y.autoGenerated),(Y,Q)=>(o.openBlock(),o.createElementBlock("div",{key:Q,class:"column-item"},[o.createElementVNode("div",Qf,[o.createElementVNode("div",Zf,o.toDisplayString(Y.name),1),o.createElementVNode("div",ep,[o.createVNode(rr,{column:Y,value:o.unref(f)[Y.name]},null,8,["column","value"])])])]))),128))])])]),_:1}),o.createVNode(I,{value:"1"})]),_:1})]),_:1})]),_:1})]),_:1}),((ae=o.unref(y))==null?void 0:ae.length)>0?(o.openBlock(),o.createElementBlock("div",tp,[s.value?(o.openBlock(),o.createBlock(re,{key:0,icon:"pi pi-caret-right",rounded:"",onClick:k,"aria-label":"Filter",style:{height:"2rem",width:"2rem",left:"-20px"}})):o.createCommentVNode("",!0),s.value?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(re,{key:1,icon:"pi pi-caret-left",rounded:"",onClick:k,"aria-label":"Filter",style:{height:"2rem",width:"2rem",left:"-20px"}})),s.value?(o.openBlock(),o.createElementBlock("div",np,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(y),(Y,Q)=>(o.openBlock(),o.createElementBlock("div",{key:Q},[o.createVNode(jf,{entity360Name:o.unref(c),entity360Id:o.unref(u),linkedEntity:Y,onSaveRelatedEnttity:v},null,8,["entity360Name","entity360Id","linkedEntity"])]))),128))])):o.createCommentVNode("",!0)])):o.createCommentVNode("",!0)]),o.unref(b)?(o.openBlock(),o.createElementBlock("div",op,[o.createElementVNode("div",rp,[o.createElementVNode("div",ap,[o.createVNode(re,{severity:"primary",onClick:F[1]||(F[1]=Y=>o.unref(E)())},{default:o.withCtx(()=>F[6]||(F[6]=[o.createTextVNode("Save")])),_:1}),o.createVNode(re,{style:{"margin-left":"10px"},severity:"secondary",onClick:F[2]||(F[2]=Y=>o.unref($)())},{default:o.withCtx(()=>F[7]||(F[7]=[o.createTextVNode("Cancel")])),_:1})]),o.createElementVNode("div",ip," You've changed property in the "+o.toDisplayString(o.unref(c))+". ",1)])])):o.createCommentVNode("",!0)],64))}}},[["__scopeId","data-v-12a444f4"]]),lp=o.ref("id"),sp=o.ref(1),cp=o.ref(25),dp=o.ref(0),li=o.ref([]);o.ref("");function uo(){const e=new We;let{errors:t,setErrors:n}=Ia(),r=o.reactive({data:null});const a=k=>{r.data=k},i=async(k,v={})=>{try{console.log("options",v);const C=await e.getEntityRecords(k,v);if(C&&C.response)return C}catch(C){return console.error("Error fetching entity:",C.errorMessage),C}finally{}},l=async(k,v)=>{try{let C=await e.addRecord(k.entityName,v);if(C)return C}catch(C){return C}finally{}},s=async(k,v,C)=>{try{const V=await e.updateRecord(k.entityName,v,C);if(V&&V.response)return V}catch(V){return V}finally{}},d=async(k,v)=>{try{v.filter==null&&(v.filter={}),Object.keys(v.filter).length===0&&(v.filter=[]);const C=await e.searchEntityRecords(k.entityName,v);if(C)return C.response.sortBy=v.sortBy,C.response.filters=v.filter,C.response.sortDirection=v.sortDirection,C.response.fullTextSearch=v.fullTextSearch,C}catch(C){return C}finally{}},c=async(k,v)=>{try{const C=await e.deleteRecord(k.entityName,v);if(C)return C}catch(C){console.error("Error on deleting record:",C.errorMessage)}finally{}},u=k=>k.result,p=k=>{var v,C;return f((C=(v=k==null?void 0:k.entity)==null?void 0:v.entityDefinition)==null?void 0:C.columns)},f=k=>k.filter(v=>!(v.fieldType&&v.fieldType==="ENTITY")),m=k=>{const v=k.entity.entityDefinition.columns;let C={};for(let V=0;V<v.length;V++){const R=v[V];if(R.primaryKey&&R.primaryKey==!0){C=R;break}}return C},g=k=>{const v=k.entity.entityDefinition.columns;let C={};for(let V=0;V<v.length;V++){let R=v[V];R.autoGenerated||(C[R.name]="")}return C},h=(k,v)=>{let C="";const V=k.entity.entityDefinition.columns;for(let R=0;R<V.length;R++){let D=V[R];if(v==D.name){C=D.type;break}}return C},b=(k,v)=>{const V=k.entity.entityDefinition.columns.filter(D=>D.autoGenerated).map(D=>D.name);return Object.entries(v).filter(([D])=>!V.includes(D)).map(([D,F])=>({recordColumnName:D,recordColumnValue:F,columnType:h(r.data,D)}))},y=()=>{const k=r.data.entity.entityDefinition.columns;return er().shape(k.reduce((C,V)=>(V.autoGenerated||(C[V.name]=Zo().nullable(!1).test({name:"custom-validation",test:function(R){const D=[];let F="";if(V.required&&(!R||R.trim()===""))if(V.validations){F=w(V.validations,"VALIDATE_REQUIRED"),D.push(F);let L=E(V.validations,"VALIDATE_REQUIRED");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" is required.",D.push(F);else{if(V.maxLength&&R.length>V.maxLength)if(V.validations){F=w(V.validations,"VALIDATE_MAXLENGTH"),D.push(F);let L=E(V.validations,"VALIDATE_MAXLENGTH");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" cannot exceed from "+V.maxLength+" characters",D.push(F);if(V.regxId&&!new RegExp(x(V.validations,"VALIDATE_REGX")).test(R))if(V.validations){F=w(V.validations,"VALIDATE_REGX"),D.push(F);let L=E(V.validations,"VALIDATE_REGX");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" invalid format.",D.push(F)}return D.length>0?this.createError({message:D}):!0}})),C),{}))},w=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].message},x=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].regx},E=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].hint};return{state:r,setEntity:a,getEntity:i,addRecord:l,updateRecord:s,searchRecord:d,entityRecordDelete:c,getEntityItems:u,getEntityColumns:p,getPrimaryKeyColumn:m,getFormData:g,createDataToSave:b,createValidationSchema:y,clearErrors:k=>(n({...t.value,[k]:null}),t.value),validateData:async(k,v)=>{try{return await k.validate(v,{abortEarly:!1}),n({}),{validate:!0}}catch(C){const V=C.inner.reduce((F,L)=>(F[L.path]||(F[L.path]={messages:[]}),F[L.path].messages.push(...L.errors),F),{}),R=Object.entries(V).reduce((F,[L,M])=>(F[L]={messages:M.messages},F),{});return n(R),{validate:!1,errors:t.value}}},applyPreset:async(k,v)=>{console.log("Applying preset:",k),li.value=[];const C={sortBy:[lp.value],sortDirection:sp.value===1?"ASC":"DESC",pageSize:cp.value,currentPage:dp.value,columnList:null,filter:li.value,fullTextSearch:"",presetName:k},V=await e.searchEntityRecords(v,C);if(V.success)return V.response}}}const fo={__name:"ConfirmDeleteDialog",props:{showDeleteDialog:{},showDeleteDialogModifiers:{}},emits:o.mergeModels(["onDeleteItem"],["update:showDeleteDialog"]),setup(e,{emit:t}){const n=o.useModel(e,"showDeleteDialog"),r=t,a=i=>{r("onDeleteItem",{remove:i})};return(i,l)=>{const s=o.resolveComponent("Button"),d=o.resolveComponent("Dialog");return o.openBlock(),o.createBlock(d,{visible:n.value,"onUpdate:visible":l[2]||(l[2]=c=>n.value=c),style:{width:"450px"},header:"Confirm",modal:!0},{footer:o.withCtx(()=>[o.createVNode(s,{label:"No",icon:"pi pi-times",text:"",onClick:l[0]||(l[0]=c=>a(!1))}),o.createVNode(s,{label:"Yes",icon:"pi pi-check",text:"",onClick:l[1]||(l[1]=c=>a(!0))})]),default:o.withCtx(()=>[l[3]||(l[3]=o.createElementVNode("div",{class:"flex items-center justify-center"},[o.createElementVNode("i",{class:"pi pi-exclamation-triangle mr-3",style:{"font-size":"2rem"}}),o.createElementVNode("span",null,"Are you sure you want to delete the selected item?")],-1))]),_:1},8,["visible"])}}},up={key:0,style:{"font-weight":"700","font-size":"1.25rem"}},fp={key:1,style:{"font-weight":"700","font-size":"1.25rem"}},mn={__name:"EntityFormDialog",props:o.mergeModels({item:Object},{showEntityForm:{},showEntityFormModifiers:{}}),emits:["update:showEntityForm"],setup(e){const t=o.useModel(e,"showEntityForm"),n=o.inject("entityObject"),r=e;let a=o.ref([]),i=o.ref({}),l=o.ref([]),s=o.ref(null),d=o.ref({});o.onMounted(()=>{a.value=n.getEntityColumns(n.state.data),r.item?i.value=JSON.parse(JSON.stringify(r.item)):i.value=n.getFormData(n.state.data),s.value=n.createValidationSchema()});const c=async()=>{const m=await n.validateData(s.value,i.value);if(!m.validate){d.value=m.errors;return}const g=n.getPrimaryKeyColumn(n.state.data),h=r.item[g.name],b={dataDefinitions:n.createDataToSave(n.state.data,i.value)},y=await n.updateRecord(n.state.data,h,b);if(y&&y.success){t.value=!1;const w={sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch},x=await n.searchRecord(n.state.data,w);if(x!=null&&x.response){let E=x==null?void 0:x.response;n.setEntity(E)}}else y.validationErrors&&(l.value=JSON.parse(JSON.stringify(y.errvalidationErrorsors)))},u=async()=>{const m=await n.validateData(s.value,i.value);if(!m.validate){d.value=m.errors;return}const g={dataDefinitions:n.createDataToSave(n.state.data,i.value)},h=await n.addRecord(n.state.data,g);h&&h.success?(t.value=!1,n.state.data=await n.getEntity(n.state.data.entityName)):h.validationErrors&&(l.value=JSON.parse(JSON.stringify(h.errvalidationErrorsors)))},p=async()=>{r.item?c():u()},f=m=>{d.value=n.clearErrors(m)};return(m,g)=>{const h=o.resolveComponent("Button"),b=o.resolveComponent("Dialog");return t.value?(o.openBlock(),o.createBlock(b,{key:0,showFooter:!1,visible:t.value,"onUpdate:visible":g[2]||(g[2]=y=>t.value=y),style:{width:"50rem"},breakpoints:{"1199px":"75vw","575px":"90vw"},modal:!0,class:"p-fluid"},{header:o.withCtx(()=>[e.item?(o.openBlock(),o.createElementBlock("span",up,"Edit "+o.toDisplayString(o.unref(n).state.data.entityName)+" record details",1)):o.createCommentVNode("",!0),e.item?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("span",fp,"Add "+o.toDisplayString(o.unref(n).state.data.entityName)+" record details",1))]),footer:o.withCtx(()=>[o.createVNode(h,{type:"button",icon:"",label:"Cancel",severity:"secondary",onClick:g[0]||(g[0]=y=>t.value=!1)}),o.createVNode(h,{type:"button",icon:"",label:"Save",severity:"success",onClick:g[1]||(g[1]=y=>p())})]),default:o.withCtx(()=>{var y;return[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(a),(w,x)=>{var E;return o.openBlock(),o.createElementBlock("div",{key:x},[!w.autoGenerated&&!w.foreignKey?(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(i)[w.name],"onUpdate:modelValue":N=>o.unref(i)[w.name]=N,column:w,errors:(E=o.unref(d)[w.name])==null?void 0:E.messages,onInput:f},null,8,["modelValue","onUpdate:modelValue","column","errors"])):o.createCommentVNode("",!0),!w.autoGenerated&&w.foreignKey?(o.openBlock(),o.createBlock(Xa,{key:1,modelValue:o.unref(i)[w.name],"onUpdate:modelValue":N=>o.unref(i)[w.name]=N,entityName:w.foreignKey.referencedEntityName,columnName:w.name,displayName:w.displayName,relatedEntityColumn:w.foreignKey.referencedColumnName},null,8,["modelValue","onUpdate:modelValue","entityName","columnName","displayName","relatedEntityColumn"])):o.createCommentVNode("",!0)])}),128)),((y=o.unref(l))==null?void 0:y.length)>0?(o.openBlock(),o.createBlock(Ya,{key:0,errors:o.unref(l)},null,8,["errors"])):o.createCommentVNode("",!0)]}),_:1},8,["visible"])):o.createCommentVNode("",!0)}}},pp={class:"flex justify-between items-start"},mp={class:"flex-grow-1"},gp={class:"tile-grid"},hp={class:"font-bold text-lg text-700"},bp={class:"flex flex-col gap-2"},yp=Ie({__name:"EntityListSingleRecord",props:{item:Object},setup(e){const t=e,n=o.inject("entityObject"),r=o.ref([]),a=o.ref(!1),i=o.ref(!1);o.onMounted(()=>{r.value=n.getEntityColumns(n.state.data)});const l=()=>{a.value=!0},s=()=>{i.value=!0},d=u=>{u.remove==!0?c():a.value=!1},c=async()=>{const u=n.getPrimaryKeyColumn(n.state.data),p=t.item[u.name],f=await n.entityRecordDelete(n.state.data,p);if(f!=null&&f.success){a.value=!1;const m={sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch},g=await n.searchRecord(n.state.data,m);if(g!=null&&g.response){let h=g==null?void 0:g.response;n.setEntity(h)}console.log(f)}};return(u,p)=>{const f=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",pp,[o.createElementVNode("div",mp,[o.createElementVNode("div",gp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(r.value,(m,g)=>(o.openBlock(),o.createElementBlock("div",{key:g},[o.createElementVNode("span",hp,o.toDisplayString(m.name)+" : ",1),o.createVNode(rr,{column:m,value:e.item[m.name]},null,8,["column","value"])]))),128))])]),o.createElementVNode("div",bp,[o.createVNode(f,{onClick:p[0]||(p[0]=m=>s()),icon:"pi pi-pencil",severity:"success",size:"",rounded:"","aria-label":"Edit"}),o.createVNode(f,{onClick:p[1]||(p[1]=m=>l()),icon:"pi pi-trash",severity:"danger",rounded:"","aria-label":"Delete"})])]),i.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:i.value,"onUpdate:showEntityForm":p[2]||(p[2]=m=>i.value=m),item:e.item},null,8,["showEntityForm","item"])):o.createCommentVNode("",!0),a.value?(o.openBlock(),o.createBlock(fo,{key:1,showDeleteDialog:a.value,"onUpdate:showDeleteDialog":p[3]||(p[3]=m=>a.value=m),onOnDeleteItem:d},null,8,["showDeleteDialog"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-bce4d0f0"]]),kp=Ie({__name:"EntityListRecordParent",props:{listItemDisplay:String},setup(e){const t=o.inject("entityObject"),n=o.ref([]);return o.watch(()=>t.state.data,r=>{r&&(n.value=r.result,console.log("Entity state updated in child:",t))},{immediate:!0}),(r,a)=>(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(n.value,(i,l)=>(o.openBlock(),o.createElementBlock("div",{key:l,class:"card rounded-md p-5 my-2 shadow-lg relative tile"},[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listItemDisplay!=null&&e.listItemDisplay!=""?e.listItemDisplay:yp),o.mergeProps({ref_for:!0},{item:i}),null,16))]))),128))}},[["__scopeId","data-v-f59ea2d9"]]),wp={};function vp(e,t){return null}const xp=Ie(wp,[["render",vp]]),Sp={class:"my-2"},Cp={class:"m-0"},Ep={__name:"EntityListHeaderSlot",setup(e){const t=o.inject("entityObject");let n=o.ref("");return o.watch(()=>t.state.data,r=>{r&&(n.value=r.entityName)},{immediate:!0}),(r,a)=>{const i=o.resolveComponent("Toolbar");return o.openBlock(),o.createBlock(i,{class:"p-2 my-2"},{start:o.withCtx(()=>[o.createElementVNode("div",Sp,[o.createElementVNode("h2",Cp,"EntityName: "+o.toDisplayString(o.unref(n)),1)])]),end:o.withCtx(()=>a[0]||(a[0]=[])),_:1})}}},Bp={class:"flex flex-col mb-5"},$p={class:"col-12"},Np={class:"flex flex-col mb-5"},Op={class:"col-12"},Tp={key:0},Vp={class:"flex flex-col mb-5"},Ip={class:"col-12"},Fp={class:"flex flex-col mb-5"},Pp={class:"col-12"},Rp={class:"flex flex-col mb-5"},Dp={class:"col-12"},_p={class:"flex flex-row justify-between items-center"},Ap={key:1},Lp={class:"flex flex-row justify-between items-center"},zp={key:1,class:"text-red-500"},Mp={class:"flex flex-col"},jp={class:"flex flex-row justify-between items-center"},Up={__name:"FilterSortSidebar",props:o.mergeModels({headers:Array,operatorMap:Object,sortCallback:Function,filterCallback:Function,getColumnDatatype:Function,getDatatypeByField:Function,preFiltered:String},{sortBy:{},sortByModifiers:{},sortDirection:{},sortDirectionModifiers:{},showFilter:{},showFilterModifiers:{},filters:{},filtersModifiers:{}}),emits:["update:sortBy","update:sortDirection","update:showFilter","update:filters"],setup(e){const t=o.useModel(e,"sortBy"),n=o.useModel(e,"sortDirection"),r=o.useModel(e,"showFilter"),a=o.useModel(e,"filters"),i={GREATER_THAN:"is greater than",dateAfter:"is after",EQUAL:"is equals",dateIs:"is equals",NOT_EQUAL:"is not equals",dateIsNot:"is not equals",LESS_THAN:"is less than",dateBefore:"is before",LESS_THAN_EQUAL:"is less than or equal to",GREATER_THAN_EQUAL:"is greater than or equal to",between:"between",CONTAINS:"contains",STARTS_WITH:"starts with",NOT_CONTAINS:"not contains",ENDS_WITH:"ends with"},l=[{label:"Starts with",value:"STARTS_WITH"},{label:"Contains",value:"CONTAINS"},{label:"Not contains",value:"NOT_CONTAINS"},{label:"Ends with",value:"ENDS_WITH"},{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"}],s=[{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"},{label:"Less than",value:"LESS_THAN"},{label:"Less than or equal to",value:"LESS_THAN_EQUAL"},{label:"Greater than",value:"GREATER_THAN"},{label:"Greater than or equal to",value:"GREATER_THAN_EQUAL"}],d=[{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"}],c=[{label:"Date is",value:"dateIs"},{label:"Date is not",value:"dateIsNot"},{label:"Date is before",value:"dateBefore"},{label:"Date is after",value:"dateAfter"}],u=[{label:"ASC",value:1},{label:"DESC",value:-1}];let p=[];const f=o.computed(()=>{var v;const S=e.preFiltered?((v=e.preFiltered.match(/\b\w+(?==)/g))==null?void 0:v.map(C=>C.trim().toLowerCase()))||[]:[];return e.headers.filter(C=>C.sortable&&!S.includes(C.field.toLowerCase()))}),m=o.computed(()=>e.headers.filter(S=>S.filterable)),g=S=>e.headers.filter(k=>{var C,V;return k.filterable?((C=a.value[S])==null?void 0:C.columnName)===k.name?!0:(e.preFiltered?((V=e.preFiltered.match(/\b\w+(?==)/g))==null?void 0:V.map(R=>R.trim().toLowerCase()))||[]:[]).includes(k.field.toLowerCase())?!1:!a.value.some((R,D)=>D!==S&&R.columnName===k.name):!1}).map(k=>({label:k.name,value:k.field})),h=S=>{let k="";switch(e.getDatatypeByField(S.columnName).toLowerCase()){case"string":case"uuid":k="startsWith";break;case"date":k="dateIs";break;case"numeric":case"int":case"integer":k="equals";break;case"bool":case"boolean":k="equals";break}S.operator=k,S.value=""},b=S=>{const k=e.getDatatypeByField(S.columnName);switch(k&&k.toLowerCase()){case"integer":case"int":case"numeric":p=s;break;case"date":p=c;break;case"bool":case"boolean":p=d;break;default:p=l}return p},y=S=>{if(S&&S.columnName){const k=e.getDatatypeByField(S.columnName);return e.getColumnDatatype(k)}else return""},w=()=>{for(let S=0;S<a.value.length;S++){const k=a.value[S];k.editing=!1}a.value.push({columnName:"",value:"",operator:"",editing:!0})},x=S=>{a.value.splice(S,1)},E=S=>{S.editing=!S.editing},N=()=>{let S=[],k=JSON.parse(JSON.stringify(a.value));for(let v=0;v<k.length;v++){const C=k[v];delete C.editing,C.columnName&&C.operator&&C.value&&(C.columnType=e.getDatatypeByField(C.columnName),C.operator=e.operatorMap[C.operator],S.push(C))}e.filterCallback(S)},$=()=>{e.sortCallback()};return(S,k)=>{const v=o.resolveComponent("Select"),C=o.resolveComponent("Divider"),V=o.resolveComponent("InputNumber"),R=o.resolveComponent("DatePicker"),D=o.resolveComponent("InputText"),F=o.resolveComponent("Button"),L=o.resolveComponent("Drawer");return o.openBlock(),o.createBlock(L,{visible:r.value,"onUpdate:visible":k[4]||(k[4]=M=>r.value=M),header:"Sorting and Filter",blockScroll:!0,position:"right",class:"layout-profile-sidebar !w-full md:!w-80 lg:!w-[30rem]",pt:{closeButton:"ml-auto"}},{default:o.withCtx(()=>[o.createElementVNode("div",Bp,[k[5]||(k[5]=o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Column",-1)),o.createElementVNode("div",$p,[o.createVNode(v,{modelValue:t.value,"onUpdate:modelValue":k[0]||(k[0]=M=>t.value=M),options:f.value,optionLabel:"name",optionValue:"field",highlightOnSelect:!1,class:"w-full",onChange:k[1]||(k[1]=M=>$(S.event))},null,8,["modelValue","options"])])]),o.createElementVNode("div",Np,[k[6]||(k[6]=o.createElementVNode("div",{class:"col-12 font-bold"},[o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Direction")],-1)),o.createElementVNode("div",Op,[o.createVNode(v,{modelValue:n.value,"onUpdate:modelValue":k[2]||(k[2]=M=>n.value=M),options:u,optionLabel:"label",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:k[3]||(k[3]=M=>$(S.event))},null,8,["modelValue"])])]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(a.value,(M,U)=>(o.openBlock(),o.createElementBlock("div",{key:U},[M.editing?(o.openBlock(),o.createElementBlock("div",Tp,[o.createVNode(C),o.createElementVNode("div",Vp,[k[7]||(k[7]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Column",-1)),o.createElementVNode("div",Ip,[o.createVNode(v,{modelValue:M.columnName,"onUpdate:modelValue":I=>M.columnName=I,options:g(U),optionLabel:"label",placeholder:"Select column",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:I=>h(M)},null,8,["modelValue","onUpdate:modelValue","options","onChange"])])]),o.createElementVNode("div",Fp,[k[8]||(k[8]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Operator",-1)),o.createElementVNode("div",Pp,[o.createVNode(v,{modelValue:M.operator,"onUpdate:modelValue":I=>M.operator=I,options:b(M),optionLabel:"label",placeholder:"Select operator",optionValue:"value",highlightOnSelect:!1,class:"w-full"},null,8,["modelValue","onUpdate:modelValue","options"])])]),o.createElementVNode("div",Rp,[k[9]||(k[9]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter value",-1)),o.createElementVNode("div",Dp,[y(M)=="numeric"?(o.openBlock(),o.createBlock(V,{key:0,format:!1,class:"w-full",modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"])):y(M)=="date"?(o.openBlock(),o.createBlock(R,{key:1,class:"w-full",modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])):(o.openBlock(),o.createBlock(D,{key:2,modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,class:"w-full",placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"]))])]),o.createElementVNode("div",_p,[o.createVNode(F,{label:"Hide",icon:"",severity:"warn",onClick:I=>E(M)},null,8,["onClick"]),o.createVNode(F,{label:"Delete",icon:"",severity:"danger",onClick:I=>x(U)},null,8,["onClick"])])])):o.createCommentVNode("",!0),M.editing?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",Ap,[o.createVNode(C),o.createElementVNode("div",Lp,[o.createElementVNode("span",null,[M.columnName||M.operator||M.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!M.columnName})},o.toDisplayString(M.columnName?" "+M.columnName:" column"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!i[M.operator]})},o.toDisplayString(M.operator?" "+i[M.operator]:" operator"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!M.value})},o.toDisplayString(M.value?" "+M.value:" value"),3)],64)):(o.openBlock(),o.createElementBlock("span",zp,"Filter is empty"))]),o.createVNode(F,{label:"Edit",icon:"",severity:"info",onClick:I=>E(M)},null,8,["onClick"])])]))]))),128)),o.createElementVNode("div",Mp,[o.createVNode(C),o.createElementVNode("div",jp,[o.createVNode(F,{label:"Add",disabled:m.value.length===a.value.length,icon:"",severity:"success",onClick:w},null,8,["disabled"]),o.createVNode(F,{label:"Apply",severity:"info",onClick:N})])])]),_:1},8,["visible"])}}},Hp={class:"my-1"},Ye=Ie({__name:"EntityListFilters",props:{externalFilterPayload:Object,preFiltered:{type:String,default:""}},setup(e){const t=o.inject("entityObject"),n=o.ref(!1),r=o.ref([]),a=o.ref([]),i=o.ref(""),l=o.ref(1),s=o.ref(""),d=o.ref([]),c=o.ref([]),u=o.ref(!1),p=e,f=o.inject("getVariable"),m={GREATER_THAN:"GREATER_THAN",dateAfter:"GREATER_THAN",EQUAL:"EQUAL",dateIs:"EQUAL",NOT_EQUAL:"NOT_EQUAL",dateIsNot:"NOT_EQUAL",LESS_THAN:"LESS_THAN",dateBefore:"LESS_THAN",LESS_THAN_EQUAL:"LESS_THAN_EQUAL",GREATER_THAN_EQUAL:"GREATER_THAN_EQUAL",between:"BETWEEN",CONTAINS:"CONTAINS",STARTS_WITH:"STARTS_WITH",NOT_CONTAINS:"NOT_CONTAINS",ENDS_WITH:"ENDS_WITH"},g=()=>{var v;const k=p.externalFilterPayload;i.value=((v=k.sortBy)==null?void 0:v[0])||"",l.value=k.sortDirection==="DESC"?-1:1,s.value=k.fullTextSearch||"",r.value=k.filter||[],a.value=k.filter||[],y()};o.watch(()=>t.state.data,k=>{if(k&&!u.value){if(d.value=t.getEntityColumns(k),c.value=N(d.value),!i.value){const v=t.getPrimaryKeyColumn(k);i.value=(v==null?void 0:v.name)||""}p.externalFilterPayload&&g(),u.value=!0}},{immediate:!0});const h=()=>{n.value=!n.value},b=k=>{a.value=k,y()},y=async()=>{const k=t.state.data,v={sortBy:[i.value],sortDirection:l.value===1?"ASC":"DESC",pageSize:(k==null?void 0:k.pageSize)||25,currentPage:(k==null?void 0:k.currentPage)||0,columnList:null,filter:a.value,fullTextSearch:s.value},C=await t.searchRecord(k,v);C!=null&&C.success&&t.setEntity(C.response)},w=()=>{y()},x=()=>{var v;r.value=[],a.value=[];const k=((v=p.preFiltered)==null?void 0:v.split("&&").map(C=>{const[V,R]=C.split("=").map(F=>F.trim()),D=f==null?void 0:f(R);return{columnName:V,value:D,operator:"EQUAL",columnType:typeof D=="string"?"STRING":"INT"}}))||[];a.value=k,y()},E=()=>{y()},N=k=>k.map(v=>({field:v.name,name:v.displayName||v.name,filterable:v.filterable,datatype:v.type,sortable:v.indexColumn,displayFormatKey:v.displayFormatKey,displayFormat:v.displayFormat})),$=k=>{switch(k.toLowerCase()){case"integer":case"int":case"numeric":return"numeric";case"date":return"date";case"bool":case"boolean":return"boolean";default:return"text"}},S=k=>{const v=d.value.find(C=>C.name===k);return v?v.type:null};return(k,v)=>{const C=o.resolveComponent("Button"),V=o.resolveComponent("InputIcon"),R=o.resolveComponent("InputText"),D=o.resolveComponent("IconField"),F=o.resolveComponent("Toolbar");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createVNode(F,{class:"p-2 my-2 border-none"},{start:o.withCtx(()=>[o.createElementVNode("div",Hp,[o.createVNode(C,{type:"button",size:"medium",icon:"pi pi-filter",severity:"info",onClick:v[0]||(v[0]=L=>h())})]),o.createVNode(C,{class:"ml-3",size:"medium",type:"button",icon:"pi pi-filter-slash",severity:"warn",onClick:v[1]||(v[1]=L=>x())})]),end:o.withCtx(()=>[o.createVNode(D,{iconPosition:"right",class:"block mt-2 md:mt-0"},{default:o.withCtx(()=>[o.createVNode(V,{onClick:v[2]||(v[2]=L=>E()),class:"pi pi-search"}),o.createVNode(R,{class:"w-full sm:w-auto",onKeyup:v[3]||(v[3]=o.withKeys(L=>E(),["enter"])),modelValue:s.value,"onUpdate:modelValue":v[4]||(v[4]=L=>s.value=L),placeholder:"Search..."},null,8,["modelValue"])]),_:1})]),_:1}),o.createVNode(Up,{sortBy:i.value,"onUpdate:sortBy":v[5]||(v[5]=L=>i.value=L),sortDirection:l.value,"onUpdate:sortDirection":v[6]||(v[6]=L=>l.value=L),showFilter:n.value,"onUpdate:showFilter":v[7]||(v[7]=L=>n.value=L),filters:r.value,"onUpdate:filters":v[8]||(v[8]=L=>r.value=L),headers:c.value,operatorMap:m,sortCallback:w,filterCallback:b,getColumnDatatype:$,getDatatypeByField:S,preFiltered:p.preFiltered},null,8,["sortBy","sortDirection","showFilter","filters","headers","preFiltered"])],64)}}},[["__scopeId","data-v-61921abb"]]),ut={__name:"EntityListPagination",setup(e){const t=o.ref(25),n=o.ref(0),r=o.ref(0),a=o.ref(0);let i=o.inject("entityObject");const l=async s=>{t.value=s.rows,n.value=s.page,a.value=s.first;const d={sortBy:i.state.data.sortBy,sortDirection:i.state.data.sortDirection,columnList:null,filter:i.state.data.filters,fullTextSearch:i.state.data.fullTextSearch,pageSize:t.value,currentPage:n.value},c=await i.searchRecord(i.state.data,d);if(c!=null&&c.success){let u=c==null?void 0:c.response;i.setEntity(u),r.value=c.response.totalRecords,a.value=n.value*t.value}};return o.watch(()=>{var s,d;return(d=(s=i==null?void 0:i.state)==null?void 0:s.data)==null?void 0:d.totalRecords},s=>{r&&(r.value=s)},{immediate:!0}),(s,d)=>{const c=o.resolveComponent("Paginator");return o.openBlock(),o.createBlock(c,{class:"my-4",rows:t.value,totalRecords:r.value,rowsPerPageOptions:[10,25,50,100],onPage:l,template:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:"Showing {first} to {last} of {totalRecords} items"},null,8,["rows","totalRecords"])}}},Wp={class:"flex flex-row justify-end p-2 my-1"},Xe={__name:"EntityListAddButton",setup(e){const t=o.ref(!1),n=()=>{t.value=!0};return(r,a)=>{const i=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",Wp,[o.createVNode(i,{size:"medium",icon:"pi pi-plus",onClick:a[0]||(a[0]=l=>n())})]),t.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:t.value,"onUpdate:showEntityForm":a[1]||(a[1]=l=>t.value=l)},null,8,["showEntityForm"])):o.createCommentVNode("",!0)],64)}}},si={__name:"EntityList",props:{entityName:String,listDisplay:String,listItemDisplay:String,listHeader:String,listFooter:String,listFilter:String,listPagination:String,showAddButton:Boolean,listFilerSlot:Boolean,className:{type:String,default:"default-class"}},setup(e,{expose:t}){const n=uo(),r=$e();o.provide("entityObject",n);const a=e;return t({props:a,reload:()=>{console.log("reload data")}}),o.watch(()=>r.globalConfigs.appId,async l=>{if(l){const s=await n.getEntity(a.entityName);s.success?n.setEntity(s.response):n.setEntity({result:[]})}},{immediate:!0}),(l,s)=>{var d,c,u;return l.$slots["list-item-display"]?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[e.showAddButton?(o.openBlock(),o.createBlock(Xe,{key:0})):o.createCommentVNode("",!0),e.listFilerSlot?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFilter||Ye),{key:1})):o.createCommentVNode("",!0),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(((u=(c=(d=o.unref(n))==null?void 0:d.state)==null?void 0:c.data)==null?void 0:u.result)||[],p=>o.renderSlot(l.$slots,"list-item-display",{item:p})),256))],64)):(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listHeader||Ep))),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFilter||Ye))),e.showAddButton?(o.openBlock(),o.createBlock(Xe,{key:0})):o.createCommentVNode("",!0),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listDisplay||kp),o.normalizeProps(o.guardReactiveProps({listItemDisplay:e.listItemDisplay})),null,16)),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listPagination||ut))),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFooter||xp)))],64))}}};function ci(){$e();const{get:e,post:t,put:n,del:r}=lt();return{getActiveUser:async()=>await e("/users/me"),getAppSecurity:async b=>await e(`/api/app/v1/${b}/security`),enableAppSecurity:async(b,y)=>await t(`/api/app/v1/${b}/security/enable`,y),getAppSecurityRules:async b=>await e(`/api/app/v1/${b}/security/rules`),saveAppSecurityRule:async(b,y)=>await t(`/api/app/v1/${b}/security/rules`,y),getAppSecurityRoles:async b=>await e(`/api/app/v1/${b}/security/roles`),saveAppSecurityRoles:async(b,y)=>await t(`/api/app/v1/${b}/security/roles`,y),getAppSecurityPermissions:async b=>await e(`/api/app/v1/${b}/security/permission`),saveAppSecurityPermission:async(b,y)=>await t(`/api/app/v1/${b}/security/permission`,y),deleteAppSecurityPermission:async(b,y)=>await r(`/api/app/v1/${b}/security/permission/${y}`),deleteAppSecurityRole:async(b,y)=>await r(`/api/app/v1/${b}/security/roles/${y}`),deleteAppSecurityAccessRule:async(b,y)=>await r(`/api/app/v1/${b}/security/rules/${y}`)}}const Bt=o.ref({role:[],permissions:[]}),ir=o.ref(!1);let di=!1;function zt(){const e=async()=>{if(ir.value)return console.log("User is ROOT_USER, skipping fetch."),!0;if(di||Bt.value.role[0]&&Bt.value.permissions[0])return console.log("User details already available, skipping fetch."),!0;console.log("Fetching User Details...");const{getActiveUser:a}=ci(),i=await a();return console.log("Fetched Response:",i),i&&Array.isArray(i.authorities)&&i.authorities.includes("ROOT_USER")?(ir.value=!0,!0):(Bt.value={role:["Admin"],permissions:["user","Admin","Entity"]},di=!0,console.log("User Details Set:",Bt.value),!0)};return{userDetails:Bt,fetchUserDetails:e,getRole:()=>Bt.value.role,getPermissions:()=>Bt.value.permissions,hasMatchingRoleAndPermissions:async(a=[],i=[])=>{const l=Array.isArray(a)?a:a.split(",").map(f=>f.trim()),s=Array.isArray(i)?i:i.split(",").map(f=>f.trim());if(await e(),ir.value)return!0;const{role:d,permissions:c}=Bt.value,u=l.length===0||l.some(f=>d.includes(f)),p=s.length===0||s.some(f=>c.includes(f));return u&&!p?!1:u&&p}}}const qp={class:"flex items-center justify-between bg-white p-2 rounded border-b"},Kp=["href"],Gp={class:"text-sm text-gray-500 block"},Yp={key:1},Xp={class:"flex items-center gap-2"},Jp=Ie({__name:"EntityListingSingleRecord",props:{item:Object,entityName:String,showAddButton:Boolean,showFilters:Boolean,className:String,listDisplay:String,listHeader:String,listClass:String,listItemClass:String,listFooter:String,listFilter:String,listPagination:String,displayField:String,baseUrl:String,hrefKey:String,listItemDisplay:String,listHeaderSlot:Boolean,showPagination:Boolean,className:{type:String,default:"default-class"},editable:Boolean,deletable:Boolean,linkedEntity:Array,externalFilterPayload:Object,roles:{type:[Array,String],default:()=>[]},permissions:{type:[Array,String],default:()=>[]},showPresets:{type:Boolean,default:!1},decoration:{type:String,default:"default"},numberVisible:{type:Number,default:3},variable:{type:String,default:"item"},scrollHeight:{type:String,default:""},showToolBar:{type:String,default:""},justifyContent:{type:String,default:""},preFiltered:{type:String,default:""},gap:{type:Number},fetchParentEntities:{type:Boolean},fetchChildEntities:{type:Number},relatedEntities:{type:String,default:""},fetchList:{type:Boolean}},setup(e){const t=e,n=o.inject("entityObject"),r=o.ref([]),a=o.ref(null),i=o.ref(null),l=o.ref(!1),s=o.ref(!1),d=o.ref(null);o.onMounted(()=>{var m,g;t.linkedEntity&&t.linkedEntity.length>0?r.value=Object.keys(t.linkedEntity[0]).map(h=>({name:h})):r.value=n==null?void 0:n.getEntityColumns(n.state.data),d.value=((m=r==null?void 0:r.value)==null?void 0:m.find(h=>h.name==="created_date"))||null,d.value&&(d.value=t==null?void 0:t.item[d.value.name]),a.value=((g=r==null?void 0:r.value)==null?void 0:g.find(h=>h.name===t.displayField))||null,a.value&&(i.value=t==null?void 0:t.item[a.value.name])});const c=()=>{l.value=!0},u=()=>{s.value=!0},p=async m=>{m.remove?f():l.value=!1},f=async()=>{const m=n.getPrimaryKeyColumn(n.state.data),g=t.item[m.name],h=await n.entityRecordDelete(n.state.data,g);if(h!=null&&h.success){l.value=!1;const b=await n.searchRecord(n.state.data,{sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch});b!=null&&b.response&&n.setEntity(b.response)}};return(m,g)=>{const h=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("ul",{class:o.normalizeClass([t.className,"space-y-2"])},[o.createElementVNode("li",qp,[o.createElementVNode("div",null,[a.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("a",{href:`${e.baseUrl}/${e.item[e.hrefKey]}`,target:"_blank",class:"hover:underline font-medium"},o.toDisplayString(i.value),9,Kp),o.createElementVNode("span",Gp,o.toDisplayString(d.value),1)],64)):(o.openBlock(),o.createElementBlock("span",Yp,"No matching field found for '"+o.toDisplayString(i.value)+"'.",1))]),o.createElementVNode("div",Xp,[e.editable?(o.openBlock(),o.createBlock(h,{key:0,onClick:g[0]||(g[0]=b=>u()),icon:"pi pi-pencil",severity:"success",variant:"text","aria-label":"Edit"})):o.createCommentVNode("",!0),e.deletable?(o.openBlock(),o.createBlock(h,{key:1,onClick:g[1]||(g[1]=b=>c()),icon:"pi pi-trash",severity:"danger",variant:"text","aria-label":"Delete"})):o.createCommentVNode("",!0)])])],2),s.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:s.value,"onUpdate:showEntityForm":g[2]||(g[2]=b=>s.value=b),item:e.item},null,8,["showEntityForm","item"])):o.createCommentVNode("",!0),l.value?(o.openBlock(),o.createBlock(fo,{key:1,showDeleteDialog:l.value,"onUpdate:showDeleteDialog":g[3]||(g[3]=b=>l.value=b),onOnDeleteItem:p},null,8,["showDeleteDialog"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-b7680fe1"]]);/**
|
|
19
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,l=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var c=n.next();return l=c.done,c},e:function(c){s=!0,i=c},f:function(){try{l||n.return==null||n.return()}finally{if(s)throw i}}}}function Bu(e,t){if(e){if(typeof e=="string")return ai(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ai(e,t):void 0}}function ai(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var $u={filter:function(t,n,r,a,i){var l=[];if(!t)return l;var s=ri(t),d;try{for(s.s();!(d=s.n()).done;){var c=d.value;if(typeof c=="string"){if(this.filters[a](c,r,i)){l.push(c);continue}}else{var u=ri(n),p;try{for(u.s();!(p=u.n()).done;){var f=p.value,m=yt(c,f);if(this.filters[a](m,r,i)){l.push(c);break}}}catch(g){u.e(g)}finally{u.f()}}}}catch(g){s.e(g)}finally{s.f()}return l},filters:{startsWith:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.slice(0,a.length)===a},contains:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a)!==-1},notContains:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a)===-1},endsWith:function(t,n,r){if(n==null||n==="")return!0;if(t==null)return!1;var a=Ge(n.toString()).toLocaleLowerCase(r),i=Ge(t.toString()).toLocaleLowerCase(r);return i.indexOf(a,i.length-a.length)!==-1},equals:function(t,n,r){return n==null||n===""?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()===n.getTime():Ge(t.toString()).toLocaleLowerCase(r)==Ge(n.toString()).toLocaleLowerCase(r)},notEquals:function(t,n,r){return n==null||n===""?!1:t==null?!0:t.getTime&&n.getTime?t.getTime()!==n.getTime():Ge(t.toString()).toLocaleLowerCase(r)!=Ge(n.toString()).toLocaleLowerCase(r)},in:function(t,n){if(n==null||n.length===0)return!0;for(var r=0;r<n.length;r++)if(Za(t,n[r]))return!0;return!1},between:function(t,n){return n==null||n[0]==null||n[1]==null?!0:t==null?!1:t.getTime?n[0].getTime()<=t.getTime()&&t.getTime()<=n[1].getTime():n[0]<=t&&t<=n[1]},lt:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()<n.getTime():t<n},lte:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()<=n.getTime():t<=n},gt:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()>n.getTime():t>n},gte:function(t,n){return n==null?!0:t==null?!1:t.getTime&&n.getTime?t.getTime()>=n.getTime():t>=n},dateIs:function(t,n){return n==null?!0:t==null?!1:t.toDateString()===n.toDateString()},dateIsNot:function(t,n){return n==null?!0:t==null?!1:t.toDateString()!==n.toDateString()},dateBefore:function(t,n){return n==null?!0:t==null?!1:t.getTime()<n.getTime()},dateAfter:function(t,n){return n==null?!0:t==null?!1:t.getTime()>n.getTime()}},register:function(t,n){this.filters[t]=n}};const Nu={key:0},Ou={key:1},rr={__name:"RecordColumnRenderer",props:{column:Object,value:null},setup(e){const t=o.ref(null),n=Object.assign({});async function r(){await o.nextTick();const a=n[`/src/directives/${e.column.displayFormatKey}.js`];a&&t.value&&a().then(i=>{i.default.beforeMount(t.value,{value:e.value,arg:e.column.displayFormat})})}return o.onMounted(()=>{r()}),o.onUpdated(()=>{r()}),(a,i)=>e.column.displayFormatKey?(o.openBlock(),o.createElementBlock("span",Nu,[o.createElementVNode("span",{ref_key:"el",ref:t},o.toDisplayString(e.value),513)])):(o.openBlock(),o.createElementBlock("span",Ou,o.toDisplayString(e.value),1))}},Tu={class:"my-2"},Vu={class:"flex flex-col md:flex-row md:justify-between md:items-center"},Iu={class:"flex flex-row gap-2"},ar={__name:"Grid",props:{entityName:String,showAddButton:Boolean,showClearFilters:Boolean,columnsToShow:Array,editable:Boolean,deleteable:Boolean,showPagination:Boolean},setup(e){const t=$e(),n=e;console.log("columnsToShow",n.columnsToShow);const r=mt.useRoute(),a=o.ref(n.entityName||r.params.entityName),i=o.ref({}),l=o.ref(""),s=o.ref(!1),d=o.ref(!1),{items:c,headers:u,first:p,totalRecords:f,pageSize:m,loading:g,sortBy:h,sortDirection:b,operatorMap:y,filterToSend:w,primarayKeyColumn:x,fullTextSearch:E,listingResponse:N,onFullTextSearch:$,getDatatypeByField:S,getColumnDatatype:k,onSort:v,onPage:C,onFilter:V,fetchEntityFilterData:R,fetchEntityByName:D}=Lc(a.value),F=o.ref();let L=o.ref(!1);const M=Y=>{i.value=Y.reduce((Q,le)=>{if(!le.filterable)return Q;let ce=Zt.CONTAINS;switch(le.datatype.toLowerCase()){case"string":case"uuid":ce=Zt.STARTS_WITH;break;case"date":ce=Zt.DATE_IS;break;case"numeric":case"int":case"integer":ce=Zt.EQUALS;break;case"bool":case"boolean":ce=Zt.EQUALS;break}return le.datatype=="bool"||le.datatype=="boolean"?Q[le.field]={value:null,matchMode:Zt.EQUALS}:Q[le.field]={operator:Eu.AND,constraints:[{value:null,matchMode:ce}]},Q},{})},U=()=>{M(u.value),w.value=ae(i.value),V()},I=Y=>{w.value=ae(i.value),V()},B=Y=>{Y?l.value=Y[x.value.name]:l.value="",s.value=!s.value},_=()=>{s.value=!1,R(!1)},J=Y=>{l.value=Y[x.value.name],d.value=!0},re=()=>{d.value=!1,R(!1)},ae=Y=>Object.keys(Y).map(Q=>{const le=Y[Q];return le.constraints?le.constraints.filter(ce=>ce.value!==null&&ce.value!=="").map(ce=>({columnName:Q,operator:y[ce.matchMode]??ce.matchMode,value:ce.value,columnType:S(Q)})):le.value!==null&&le.value!==""?{columnName:Q,operator:y[le.matchMode]??le.matchMode,value:le.value,columnType:S(Q)}:[]}).flat();return o.watch(()=>t.globalConfigs.appId,async Y=>{Y&&D(a.value)},{immediate:!0}),o.watch(()=>u.value,Y=>{!L.value&&Y&&Y.length&&(M(Y),L.value=!0)},{immediate:!0}),(Y,Q)=>{const le=o.resolveComponent("Button"),ce=o.resolveComponent("Toolbar"),xe=o.resolveComponent("ProgressSpinner"),He=o.resolveComponent("InputIcon"),Re=o.resolveComponent("IconField"),rt=o.resolveComponent("DatePicker"),Je=o.resolveComponent("InputNumber"),W=o.resolveComponent("Checkbox"),j=o.resolveComponent("Column"),fe=o.resolveComponent("DataTable");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",o.normalizeProps(o.guardReactiveProps(Y.$attrs)),[o.renderSlot(Y.$slots,"header"),e.showClearFilters||e.showAddButton?(o.openBlock(),o.createBlock(ce,{key:0,class:"mt-4",style:{"margin-bottom":"10px"}},o.createSlots({_:2},[e.showClearFilters?{name:"start",fn:o.withCtx(()=>[o.createElementVNode("div",Tu,[o.createVNode(le,{type:"button",icon:"pi pi-filter-slash",label:"Clear",severity:"warning",onClick:Q[0]||(Q[0]=ge=>U())})])]),key:"0"}:void 0,e.showAddButton?{name:"end",fn:o.withCtx(()=>[o.createVNode(le,{label:"Add",icon:"pi pi-plus",class:"mr-2",severity:"success",onClick:Q[1]||(Q[1]=ge=>B())})]),key:"1"}:void 0]),1024)):o.createCommentVNode("",!0),o.createVNode(fe,{lazy:"",value:o.unref(c),loading:o.unref(g),ref_key:"dt",ref:F,stripedRows:!0,showGridlines:"",rowHover:!0,paginator:e.showPagination,rows:o.unref(m),rowsPerPageOptions:[10,25,50,100],totalRecords:o.unref(f),first:o.unref(p),sortField:o.unref(h),sortOrder:o.unref(b),filters:i.value,"onUpdate:filters":Q[5]||(Q[5]=ge=>i.value=ge),filterDisplay:"menu",scrollable:"",onSort:o.unref(v),onPage:o.unref(C),onFilter:Q[6]||(Q[6]=ge=>I()),size:"small",paginatorTemplate:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:"Showing {first} to {last} of {totalRecords} items"},{empty:o.withCtx(()=>Q[9]||(Q[9]=[o.createTextVNode(" No data found. ")])),loading:o.withCtx(()=>[o.createVNode(xe)]),header:o.withCtx(()=>[o.createElementVNode("div",Vu,[o.createVNode(Re,{iconPosition:"left",class:"block mt-2 md:mt-0"},{default:o.withCtx(()=>[o.createVNode(He,{class:"pi pi-search",onClick:Q[2]||(Q[2]=ge=>o.unref($)())}),o.createVNode(o.unref(Sr.InputText),{class:"w-full sm:w-auto",onKeyup:Q[3]||(Q[3]=o.withKeys(ge=>o.unref($)(),["enter"])),modelValue:o.unref(E),"onUpdate:modelValue":Q[4]||(Q[4]=ge=>o.isRef(E)?E.value=ge:null),placeholder:"Search..."},null,8,["modelValue"])]),_:1})])]),default:o.withCtx(()=>{var ge;return[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(u).filter(pe=>!n.columnsToShow||n.columnsToShow.length===0||n.columnsToShow.includes(pe.field)),pe=>(o.openBlock(),o.createBlock(j,{key:pe.field,dataType:o.unref(k)(pe.datatype),field:pe.field,header:pe.name,sortable:pe.sortable,showAddButton:!1,showFilterOperator:!1,style:{"text-wrap":"nowrap"}},o.createSlots({body:o.withCtx(({data:he})=>[o.createVNode(rr,{column:pe,value:he[pe.field]},null,8,["column","value"])]),_:2},[pe.datatype.toLowerCase()==="date"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(rt,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])]),key:"0"}:pe.datatype.toLowerCase()==="int"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(Je,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,placeholder:"Search..."},null,8,["modelValue","onUpdate:modelValue"])]),key:"1"}:pe.datatype.toLowerCase()==="boolean"&&pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(W,{modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,indeterminate:he.value===null,binary:""},null,8,["modelValue","onUpdate:modelValue","indeterminate"])]),key:"2"}:pe.filterable?{name:"filter",fn:o.withCtx(({filterModel:he})=>[o.createVNode(o.unref(Sr.InputText),{style:{width:"150px"},type:"text",modelValue:he.value,"onUpdate:modelValue":Ee=>he.value=Ee,class:"p-column-filter",placeholder:"Search..."},null,8,["modelValue","onUpdate:modelValue"])]),key:"3"}:void 0]),1032,["dataType","field","header","sortable"]))),128)),((ge=o.unref(c))==null?void 0:ge.length)>0&&(e.editable||e.deleteable)?(o.openBlock(),o.createBlock(j,{key:0,header:"Actions"},{body:o.withCtx(({data:pe})=>[o.createElementVNode("div",Iu,[e.editable?(o.openBlock(),o.createBlock(le,{key:0,onClick:he=>B(pe),icon:"pi pi-pencil",severity:"success",variant:"text",size:"small",rounded:"","aria-label":"Edit"},null,8,["onClick"])):o.createCommentVNode("",!0),e.deleteable?(o.openBlock(),o.createBlock(le,{key:1,onClick:he=>J(pe),icon:"pi pi-trash",severity:"danger",variant:"text",size:"small",rounded:"","aria-label":"Delete"},null,8,["onClick"])):o.createCommentVNode("",!0)])]),_:1})):o.createCommentVNode("",!0)]}),_:1},8,["value","loading","paginator","rows","totalRecords","first","sortField","sortOrder","filters","onSort","onPage"]),o.renderSlot(Y.$slots,"footer")],16),s.value?(o.openBlock(),o.createBlock(gu,{key:0,showForm:s.value,"onUpdate:showForm":Q[7]||(Q[7]=ge=>s.value=ge),entityName:o.unref(N).entityName,recordId:l.value,onOnSaveDialog:_},null,8,["showForm","entityName","recordId"])):o.createCommentVNode("",!0),d.value?(o.openBlock(),o.createBlock(hu,{key:1,showDeleteDialog:d.value,"onUpdate:showDeleteDialog":Q[8]||(Q[8]=ge=>d.value=ge),entityName:o.unref(N).entityName,recordId:l.value,onOnDeleteItem:re},null,8,["showDeleteDialog","entityName","recordId"])):o.createCommentVNode("",!0)],64)}}},Fu={class:"flex flex-col p-3"},Pu={class:"flex justify-center flex-row mb-2 cursor-pointer"},Ru={style:{"word-break":"break-all"}},Du={__name:"LinkEntityContent",props:{linkEntityListItem:{type:Object,required:!0}},setup(e){mt.useRoute();const t=$e(),n=o.ref("");t.getAppId()!=null&&t.getAppId()!=""&&(n.value=t.getAppId());const r=o.ref(),a=o.ref(!1),i=o.ref(!1),l=o.ref({}),s=o.ref([{label:"Remove association",icon:"",command:p=>{d()}}]),d=()=>{console.log(l.value),console.log("Function is calling")},c=(p,f)=>{l.value=f,r.value.show(p),i.value=!0},u=()=>{l.value={},i.value=!1};return(p,f)=>{const m=o.resolveComponent("Button"),g=o.resolveComponent("ContextMenu"),h=o.resolveComponent("router-link");return o.openBlock(),o.createElementBlock("div",{onMouseenter:f[4]||(f[4]=o.withModifiers(b=>a.value=!0,["prevent"])),onMouseleave:f[5]||(f[5]=o.withModifiers(b=>a.value=!1,["prevent"])),class:"flex relative m-3",style:{border:"1px solid var(--surface-border)","border-radius":"5px"}},[o.withDirectives(o.createVNode(m,{onClick:f[0]||(f[0]=b=>c(b,e.linkEntityListItem)),class:"!absolute right-0",size:"small",style:{width:"55px",height:"25px","border-radius":"5px","font-size":"12px"}},{default:o.withCtx(()=>f[6]||(f[6]=[o.createTextVNode(" More")])),_:1},512),[[o.vShow,a.value||i.value]]),o.createVNode(g,{ref_key:"menu",ref:r,model:s.value,onMouseenter:f[1]||(f[1]=o.withModifiers(b=>a.value=!0,["prevent"])),onMouseleave:f[2]||(f[2]=o.withModifiers(b=>a.value=!1,["prevent"])),onHide:f[3]||(f[3]=b=>u())},null,8,["model"]),o.createElementVNode("div",Fu,[o.createElementVNode("div",Pu,[o.createElementVNode("div",Ru,o.toDisplayString(e.linkEntityListItem.entityName),1),o.createVNode(h,{to:{name:"entity360view",params:{entityName:e.linkEntityListItem.entityName,id:e.linkEntityListItem.id,appId:n.value}},target:"_blank"},{default:o.withCtx(()=>f[7]||(f[7]=[o.createElementVNode("div",{class:"pi pi-external-link ml-3"},null,-1)])),_:1},8,["to"])]),o.createElementVNode("div",null,"Id: "+o.toDisplayString(e.linkEntityListItem.id),1)])],32)}}},_u={class:"flex flex-col mt-3"},Au={class:"flex flex-row items-center"},Lu={class:"flex items-center justify-center mt-5"},zu={key:0,class:"pi pi-caret-right"},Mu={key:1,class:"pi pi-caret-down"},ju={key:0},Uu={class:"flex flex-col mt-5"},Hu={class:"col-12"},Wu={class:"flex flex-col mt-5"},qu={class:"col-12 font-bold"},Ku={key:0},Gu={class:"flex flex-col mt-5"},Yu={class:"col-12"},Xu={class:"flex flex-col mt-5"},Ju={class:"col-12"},Qu={class:"flex flex-col mt-5"},Zu={class:"col-12"},ef={class:"flex flex-row justify-between items-center mt-5"},tf={key:1,class:"mt-2"},nf={class:"flex flex-row justify-between items-center"},of={key:1,class:"text-red-500"},rf={class:"flex flex-col mt-5"},af={class:"flex flex-row justify-between items-center mt-2"},lf={class:"flex flex-row items-center mt-5 mb-5"},sf={class:"font-bold"},cf={class:"font-bold ml-2 flex-1"},df={class:"flex flex-row justify-center items-center mb-2"},uf={class:"ml-2 flex-1"},ff={key:0,class:"pi pi-exclamation-circle"},pf={class:"flex flex-col justify-center"},mf={class:"flex flex-row justify-between items-center"},gf={class:"justify-start"},hf={class:"justify-start"},bf=Ie({__name:"EntityLookup",props:o.mergeModels({linkedEntity:{type:Object,required:!0},entity360Name:{type:String,required:!0},entity360Id:{required:!0},saveExistingRelatedEntityRecord:{type:Function,required:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){mt.useRoute();const t=e,n=o.useModel(e,"modelValue"),r=new We,a=o.ref({}),i=o.ref([]),l=o.ref({}),s=o.ref([]),d=o.ref([]),c=o.ref({}),u=o.ref("id"),p=o.ref(1),f=o.ref([]),m=o.ref(25),g=o.ref(0),h=o.ref(0),b=o.ref(0);let y=o.ref([]);const w=o.ref(!1),x={gt:"GREATER_THAN",dateAfter:"GREATER_THAN",equals:"EQUAL",dateIs:"EQUAL",notEquals:"NOT_EQUAL",dateIsNot:"NOT_EQUAL",lt:"LESS_THAN",dateBefore:"LESS_THAN",lte:"LESS_THAN_EQUAL",gte:"GREATER_THAN_EQUAL",between:"BETWEEN",contains:"CONTAINS",startsWith:"STARTS_WITH",notContains:"NOT_CONTAINS",endsWith:"ENDS_WITH"},E={gt:"is greater than",dateAfter:"is after",equals:"is equals",dateIs:"is equals",notEquals:"is not equals",dateIsNot:"is not equals",lt:"is less than",dateBefore:"is before",lte:"is less than or equal to",gte:"is greater than or equal to",between:"between",contains:"contains",startsWith:"starts with",notContains:"not contains",endsWith:"ends with"};o.onMounted(()=>{$()});const N=W=>t.linkedEntity.list.some(j=>j[c.value.name]===W),$=async()=>{try{const W={sortBy:[u.value],sortDirection:p.value===1?"ASC":"DESC",pageSize:m.value,currentPage:g.value,columnList:null,filter:y.value,fullTextSearch:""},j=await r.searchEntityRecords(t.linkedEntity.entityName,W);j&&j.response&&(a.value=j.response,s.value=j.response.entity.entityDefinition.columns,d.value=xe(j.response.entity.entityDefinition.columns),h.value=j.response.totalRecords,await S(),await k(),v())}catch{}finally{}},S=async()=>{for(let W=0;W<s.value.length;W++){const j=s.value[W];!j.autoGeneerated&&j.foreignKey&&j.foreignKey.referencedEntityName.toLowerCase()==t.entity360Name.toLowerCase()&&(l.value=j)}},k=async()=>{for(let W=0;W<s.value.length;W++){const j=s.value[W];if(j.primaryKey&&j.primaryKey==!0){c.value=j;break}}},v=()=>{for(let W=0;W<t.linkedEntity.list.length;W++){const j=t.linkedEntity.list[W];j.is_deleted==!1&&j[l.value.name]==t.entity360Id&&i.value.push(j[c.value.name])}},C=()=>{let W=JSON.parse(JSON.stringify(i.value));W=W.filter(fe=>!N(fe));let j={linkEntityName:a.value.entityName,linkRecordIdList:[]};for(let fe=0;fe<W.length;fe++){const ge=W[fe];j.linkRecordIdList.push(ge)}t.saveExistingRelatedEntityRecord(j)},V=()=>{w.value=!w.value},R=[{label:"Starts with",value:"startsWith"},{label:"Contains",value:"contains"},{label:"Not contains",value:"notContains"},{label:"Ends with",value:"endsWith"},{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"}],D=[{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"},{label:"Less than",value:"lt"},{label:"Less than or equal to",value:"lte"},{label:"Greater than",value:"gt"},{label:"Greater than or equal to",value:"gte"}],F=[{label:"Equals",value:"equals"},{label:"Not equals",value:"notEquals"}],L=[{label:"Date is",value:"dateIs"},{label:"Date is not",value:"dateIsNot"},{label:"Date is before",value:"dateBefore"},{label:"Date is after",value:"dateAfter"}],M=[{label:"ASC",value:1},{label:"DESC",value:-1}];let U=[];const I=o.computed(()=>d.value.filter(W=>W.sortable)),B=o.computed(()=>d.value.filter(W=>W.filterable)),_=W=>d.value.filter(j=>{var fe;return j.filterable?((fe=f.value[W])==null?void 0:fe.columnName)===j.name?!0:!f.value.some((ge,pe)=>pe!==W&&ge.columnName===j.name):!1}).map(j=>({label:j.name,value:j.field})),J=W=>{let j="";switch(Re(W.columnName).toLowerCase()){case"string":case"uuid":j="startsWith";break;case"date":j="dateIs";break;case"numeric":case"int":case"integer":j="equals";break;case"bool":case"boolean":j="equals";break}W.operator=j,W.value=""},re=W=>{const j=Re(W.columnName);switch(j&&j.toLowerCase()){case"integer":case"int":case"numeric":U=D;break;case"date":U=L;break;case"bool":case"boolean":U=F;break;default:U=R}return U},ae=W=>{if(W&&W.columnName){const j=Re(W.columnName);return rt(j)}else return""},Y=()=>{for(let W=0;W<f.value.length;W++){const j=f.value[W];j.editing=!1}f.value.push({columnName:"",value:"",operator:"",editing:!0})},Q=W=>{f.value.splice(W,1)},le=W=>{W.editing=!W.editing},ce=()=>{let W=JSON.parse(JSON.stringify(f.value));y.value=[];for(let j=0;j<W.length;j++){const fe=W[j];delete fe.editing,fe.columnName&&fe.operator&&fe.value&&(fe.columnType=Re(fe.columnName),fe.operator=x[fe.operator],y.value.push(fe))}$()},xe=W=>W.map(j=>({field:j.name,name:j.displayName?j.displayName:j.name,filterable:j.filterable,datatype:j.type,sortable:!0,displayFormatKey:j.displayFormatKey,displayFormat:j.displayFormat})),He=()=>{$()},Re=W=>{const j=d.value.find(fe=>fe.field===W);return j?j.datatype:null},rt=W=>{switch(W.toLowerCase()){case"integer":case"int":case"numeric":return"numeric";case"date":return"date";case"bool":case"boolean":return"boolean";default:return"text"}},Je=W=>{m.value=W.rows,g.value=W.page,b.value=W.first,$()};return(W,j)=>{var It,qt;const fe=o.resolveComponent("InputIcon"),ge=o.resolveComponent("InputText"),pe=o.resolveComponent("IconField"),he=o.resolveComponent("Select"),Ee=o.resolveComponent("Divider"),Me=o.resolveComponent("InputNumber"),pt=o.resolveComponent("DatePicker"),Ve=o.resolveComponent("Button"),je=o.resolveComponent("Checkbox"),Qe=o.resolveComponent("Paginator"),Vt=o.resolveDirective("tooltip");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",_u,[o.createElementVNode("div",Au,[o.createVNode(pe,{class:"block mt-2 md:mt-0 w-full"},{default:o.withCtx(()=>[o.createVNode(fe,{onClick:j[0]||(j[0]=()=>{}),class:"pi pi-search"}),o.createVNode(ge,{class:"w-full",onKeyup:j[1]||(j[1]=o.withKeys(()=>{},["enter"])),placeholder:`Search ${a.value.entityName}`},null,8,["placeholder"])]),_:1})]),o.createElementVNode("div",Lu,[o.createElementVNode("div",{class:"flex items-center cursor-pointer sorting-filter-section flex-1 line-height-4",onClick:j[2]||(j[2]=Z=>V())},[w.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",zu)),w.value?(o.openBlock(),o.createElementBlock("div",Mu)):o.createCommentVNode("",!0),j[9]||(j[9]=o.createElementVNode("div",{class:"ml-3 font-bold"}," Sorting & Filters ",-1))])]),w.value?(o.openBlock(),o.createElementBlock("div",ju,[o.createElementVNode("div",Uu,[j[10]||(j[10]=o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Column",-1)),o.createElementVNode("div",Hu,[o.createVNode(he,{modelValue:u.value,"onUpdate:modelValue":j[3]||(j[3]=Z=>u.value=Z),options:I.value,optionLabel:"name",optionValue:"field",highlightOnSelect:!1,class:"w-full",onChange:j[4]||(j[4]=Z=>He(W.event))},null,8,["modelValue","options"])])]),o.createElementVNode("div",Wu,[j[11]||(j[11]=o.createElementVNode("div",{class:"col-12 font-bold"},[o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Direction")],-1)),o.createElementVNode("div",qu,[o.createVNode(he,{modelValue:p.value,"onUpdate:modelValue":j[5]||(j[5]=Z=>p.value=Z),options:M,optionLabel:"label",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:j[6]||(j[6]=Z=>He(W.event))},null,8,["modelValue"])])]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(f.value,(Z,at)=>(o.openBlock(),o.createElementBlock("div",{key:at},[Z.editing?(o.openBlock(),o.createElementBlock("div",Ku,[o.createVNode(Ee,{class:"mt-5"}),o.createElementVNode("div",Gu,[j[12]||(j[12]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Column",-1)),o.createElementVNode("div",Yu,[o.createVNode(he,{modelValue:Z.columnName,"onUpdate:modelValue":Be=>Z.columnName=Be,options:_(at),optionLabel:"label",placeholder:"Select column",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:Be=>J(Z)},null,8,["modelValue","onUpdate:modelValue","options","onChange"])])]),o.createElementVNode("div",Xu,[j[13]||(j[13]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Operator",-1)),o.createElementVNode("div",Ju,[o.createVNode(he,{modelValue:Z.operator,"onUpdate:modelValue":Be=>Z.operator=Be,options:re(Z),optionLabel:"label",placeholder:"Select operator",optionValue:"value",highlightOnSelect:!1,class:"w-full"},null,8,["modelValue","onUpdate:modelValue","options"])])]),o.createElementVNode("div",Qu,[j[14]||(j[14]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter value",-1)),o.createElementVNode("div",Zu,[ae(Z)=="numeric"?(o.openBlock(),o.createBlock(Me,{key:0,format:!1,class:"w-full",modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"])):ae(Z)=="date"?(o.openBlock(),o.createBlock(pt,{key:1,class:"w-full",modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])):(o.openBlock(),o.createBlock(ge,{key:2,modelValue:Z.value,"onUpdate:modelValue":Be=>Z.value=Be,class:"w-full",placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"]))])]),o.createElementVNode("div",ef,[o.createVNode(Ve,{style:{width:"100px"},label:"Hide",icon:"",severity:"warning",onClick:Be=>le(Z)},null,8,["onClick"]),o.createVNode(Ve,{style:{width:"100px"},label:"Delete",icon:"",severity:"danger",onClick:Be=>Q(at)},null,8,["onClick"])])])):o.createCommentVNode("",!0),Z.editing?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",tf,[o.createVNode(Ee),o.createElementVNode("div",nf,[o.createElementVNode("span",null,[Z.columnName||Z.operator||Z.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!Z.columnName})},o.toDisplayString(Z.columnName?" "+Z.columnName:" column"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!E[Z.operator]})},o.toDisplayString(Z.operator?" "+E[Z.operator]:" operator"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!Z.value})},o.toDisplayString(Z.value?" "+Z.value:" value"),3)],64)):(o.openBlock(),o.createElementBlock("span",of,"Filter is empty"))]),o.createVNode(Ve,{style:{width:"100px"},label:"Edit",icon:"",severity:"info",onClick:Be=>le(Z)},null,8,["onClick"])])]))]))),128)),o.createElementVNode("div",rf,[o.createVNode(Ee),o.createElementVNode("div",af,[o.createVNode(Ve,{style:{width:"100px"},label:"Add",disabled:B.value.length===f.value.length,icon:"",severity:"success",onClick:Y},null,8,["disabled"]),o.createVNode(Ve,{style:{width:"100px"},label:"Apply",severity:"info",onClick:ce})])])])):o.createCommentVNode("",!0),o.createElementVNode("div",lf,[o.createElementVNode("div",sf,o.toDisplayString((It=a.value)==null?void 0:It.totalRecords),1),o.createElementVNode("div",cf,o.toDisplayString((qt=a.value)==null?void 0:qt.entityName),1)]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(a.value.result,(Z,at)=>(o.openBlock(),o.createElementBlock("div",{key:at},[o.createElementVNode("div",df,[o.createVNode(je,{disabled:N(Z[c.value.name]),modelValue:i.value,"onUpdate:modelValue":j[7]||(j[7]=Be=>i.value=Be),value:Z[c.value.name]},null,8,["disabled","modelValue","value"]),o.createElementVNode("div",uf,[o.createTextVNode(o.toDisplayString(e.linkedEntity.entityName)+" ",1),o.createElementVNode("span",null,o.toDisplayString(Z[c.value.name]),1)]),N(Z[c.value.name])?o.withDirectives((o.openBlock(),o.createElementBlock("div",ff,null,512)),[[Vt,"This record is already associated.",void 0,{left:!0}]]):o.createCommentVNode("",!0)])]))),128)),o.createVNode(Qe,{rows:m.value,totalRecords:h.value,rowsPerPageOptions:[10,25,50,100],onPage:Je,template:"FirstPageLink PageLinks LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:""},null,8,["rows","totalRecords"])]),o.createElementVNode("div",pf,[o.createVNode(Ee,{class:"mt-5"}),o.createElementVNode("div",mf,[o.createElementVNode("div",gf,[o.createVNode(Ve,{label:"Cancel",icon:"",severity:"secondary",onClick:j[8]||(j[8]=Z=>n.value=!1)})]),o.createElementVNode("div",hf,[o.createVNode(Ve,{label:"Save",severity:"success",onClick:C})])])])],64)}}},[["__scopeId","data-v-a358808d"]]),yf={class:"field flex flex-col"},kf={key:0,class:"flex items-center"},wf={key:1},vf={class:"flex items-center"},xf={class:"flex flex-col justify-center"},Sf={class:"flex flex-row justify-between items-center"},Cf={class:"justify-start"},Ef={class:"justify-start"},Bf={__name:"EntityLookupObject",props:o.mergeModels({linkedEntity:{type:Object,required:!0},entity360Name:{type:String,required:!0},entity360Id:{type:[String,Number]},saveExistingEntityObject:{type:Function}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){mt.useRoute();const{getEntityRecords:t,searchEntityRecords:n,saveRelatedEntityRecord:r,getRecord:a,addRecord:i,updateRecord:l,deleteRecord:s}=We(),d=e,c=o.useModel(e,"modelValue");new EntityRecordService;const u=o.ref({}),p=o.ref({});let f=o.ref("");const m=o.ref({}),g=o.ref({});o.onMounted(async()=>{console.log("linkedEntity"),console.log(d.linkedEntity),console.log("entity360Name"),console.log(d.entity360Name),console.log("entity360Id"),console.log(d.entity360Id),await b(),await h()});const h=async()=>{try{const N=await t(d.linkedEntity.entityName);N&&N.response&&(u.value=N.response,await y(N.response.entity.entityDefinition.columns),await x(),console.log(u.value))}catch{}finally{}},b=async()=>{try{const N=await a(d.entity360Name,d.entity360Id);N&&N.response&&(p.value=N.response,await w(N.response.entity.entityDefinition.columns),console.log(p.value))}catch{}finally{}},y=async N=>{for(let $=0;$<N.length;$++){const S=N[$];if(S.primaryKey&&S.primaryKey==!0){m.value=S;break}}},w=async N=>{for(let $=0;$<N.length;$++){const S=N[$];if(!S.autoGeneerated&&S.foreignKey&&S.foreignKey.referencedEntityName.toLowerCase()==d.linkedEntity.entityName.toLowerCase()){g.value=S;break}}},x=async()=>{for(let N=0;N<u.value.result.length;N++){const $=u.value.result[N];if($[m.value.name]==p.value.result[0][g.value.name]){f.value=$;break}}},E=()=>{const N={linkedEntityRecordId:f.value[m.value.name],linkedEntityName:d.linkedEntity.entityName,relationType:"ManyToOne"};d.saveExistingEntityObject(N)};return(N,$)=>{const S=o.resolveComponent("Select"),k=o.resolveComponent("Divider"),v=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock("div",yf,[o.createVNode(S,{modelValue:o.unref(f),"onUpdate:modelValue":$[0]||($[0]=C=>o.isRef(f)?f.value=C:f=C),"item-value":m.value.name,options:u.value.result,filter:"",optionLabel:m.value.name,placeholder:"Select "+m.value.name,class:"w-full"},{value:o.withCtx(C=>[C.value?(o.openBlock(),o.createElementBlock("div",kf,[o.createElementVNode("div",null,o.toDisplayString(C.value[m.value.name]),1)])):(o.openBlock(),o.createElementBlock("span",wf,o.toDisplayString(C.placeholder),1))]),option:o.withCtx(C=>[o.createElementVNode("div",vf,[o.createElementVNode("div",null,o.toDisplayString(C.option[m.value.name]),1)])]),_:1},8,["modelValue","item-value","options","optionLabel","placeholder"]),o.createElementVNode("div",xf,[o.createVNode(k),o.createElementVNode("div",Sf,[o.createElementVNode("div",Cf,[o.createVNode(v,{label:"Cancel",icon:"",severity:"secondary",onClick:$[1]||($[1]=C=>c.value=!1)})]),o.createElementVNode("div",Ef,[o.createVNode(v,{label:"Save",severity:"success",onClick:E})])])])])}}},$f={style:{"font-weight":"700","font-size":"1.25rem"}},Nf={class:"flex flex-col"},Of={class:"flex flex-row justify-between items-center"},Tf={class:"justify-start"},Vf={class:"justify-start"},If="",Ff={__name:"CreateRelatedentity",props:o.mergeModels({entity360Id:{required:!0},entity360Name:{type:String,required:!0},linkedEntity:{type:Object,required:!0}},{showCreateRelatedEntityForm:{},showCreateRelatedEntityFormModifiers:{}}),emits:o.mergeModels(["onSaveDialog"],["update:showCreateRelatedEntityForm"]),setup(e,{emit:t}){const n=o.useModel(e,"showCreateRelatedEntityForm");mt.useRoute();const r=e,a=r.linkedEntity.entityName,i=t,l=o.ref("Add existing");o.onMounted(()=>{m()});const{formData:s,columns:d,errors:c,backendErrors:u,clearErrors:p,saveRecord:f,fetchAllRecords:m,saveRelatedEntityRecord:g}=tr(a,If,i),h=()=>{for(let x=0;x<d.value.length;x++){const E=d.value[x];!E.autoGenerated&&E.foreignKey&&(s.value[E.name]=r.entity360Id)}const w={relationType:r.linkedEntity.relationType,linkedEntities:{entityLinkage:[{linkEntityName:r.entity360Name,linkRecordIdList:[r.entity360Id]}]}};f(w)},b=w=>{var x;if(((x=w==null?void 0:w.linkRecordIdList)==null?void 0:x.length)>0){const E={entityLinkage:[{linkEntityName:w.linkEntityName,linkRecordIdList:w.linkRecordIdList}]};g(r.entity360Name,r.entity360Id,E)}},y=w=>{const x={entityLinkage:[{linkEntityName:r.entity360Name,linkRecordIdList:[r.entity360Id]}]};g(w.linkedEntityName,w.linkedEntityRecordId,x)};return(w,x)=>{const E=o.resolveComponent("Tab"),N=o.resolveComponent("TabList"),$=o.resolveComponent("Divider"),S=o.resolveComponent("Button"),k=o.resolveComponent("TabPanel"),v=o.resolveComponent("TabPanels"),C=o.resolveComponent("Tabs"),V=o.resolveComponent("Drawer");return o.openBlock(),o.createBlock(V,{visible:n.value,"onUpdate:visible":x[3]||(x[3]=R=>n.value=R),blockScroll:!0,position:"right",class:"p-fluid layout-profile-sidebar",style:{width:"40%"},pt:{closeButton:"ml-auto"}},{header:o.withCtx(()=>[o.createElementVNode("span",$f,o.toDisplayString(l.value)+" "+o.toDisplayString(e.linkedEntity.entityName),1)]),default:o.withCtx(()=>[o.createVNode(C,{value:"1"},{default:o.withCtx(()=>[o.createVNode(N,null,{default:o.withCtx(()=>[o.createVNode(E,{value:"0"},{default:o.withCtx(()=>x[4]||(x[4]=[o.createTextVNode("Create new")])),_:1}),o.createVNode(E,{value:"1"},{default:o.withCtx(()=>x[5]||(x[5]=[o.createTextVNode("Add existing")])),_:1})]),_:1}),o.createVNode(v,null,{default:o.withCtx(()=>[o.createVNode(k,{value:"0"},{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(d),(R,D)=>{var F;return o.openBlock(),o.createElementBlock("div",{key:D,class:"mt-3"},[!R.autoGenerated&&!R.foreignKey?(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(s)[R.name],"onUpdate:modelValue":L=>o.unref(s)[R.name]=L,column:R,errors:(F=o.unref(c)[R.name])==null?void 0:F.messages,onInput:o.unref(p)},null,8,["modelValue","onUpdate:modelValue","column","errors","onInput"])):o.createCommentVNode("",!0)])}),128)),o.createElementVNode("div",Nf,[o.createVNode($),o.createElementVNode("div",Of,[o.createElementVNode("div",Tf,[o.createVNode(S,{label:"Cancel",icon:"",severity:"secondary",onClick:x[0]||(x[0]=R=>n.value=!1)})]),o.createElementVNode("div",Vf,[o.createVNode(S,{label:"Save",severity:"success",onClick:h})])])])]),_:1}),o.createVNode(k,{value:"1"},{default:o.withCtx(()=>[e.linkedEntity.relationType=="ONE_TO_MANY"?(o.openBlock(),o.createBlock(bf,{key:0,modelValue:n.value,"onUpdate:modelValue":x[1]||(x[1]=R=>n.value=R),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,saveExistingRelatedEntityRecord:b},null,8,["modelValue","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0),e.linkedEntity.relationType=="MANY_TO_ONE"?(o.openBlock(),o.createBlock(Bf,{key:1,modelValue:n.value,"onUpdate:modelValue":x[2]||(x[2]=R=>n.value=R),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,saveExistingEntityObject:y},null,8,["modelValue","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0)]),_:1})]),_:1})]),_:1})]),_:1},8,["visible"])}}},Pf={class:"flex flex-col border-bottom-section pb-3 pt-3"},Rf={class:"flex items-center pl-3 pr-3 justify-between"},Df={key:0,class:"pi pi-caret-right"},_f={key:1,class:"pi pi-caret-down"},Af={class:"ml-3 font-bold"},Lf={class:"ml-1"},zf={class:"text-right"},Mf={key:0},jf=Ie({__name:"LinkEntitySection",props:{entity360Id:{required:!0},entity360Name:{type:String,required:!0},linkedEntity:{type:Object,required:!0},entity360Name:{type:[String,Number]},onSaveRelatedEnttity:{type:Function}},setup(e){mt.useRoute();const t=e,n=o.ref(!1),r=o.ref(!1),a=()=>{n.value=!n.value},i=()=>{r.value=!r.value},l=()=>{r.value=!1,t.onSaveRelatedEnttity()},s=o.computed(()=>t.linkedEntity.list.filter(d=>!d.is_deleted).length);return(d,c)=>{const u=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",Pf,[o.createElementVNode("div",Rf,[o.createElementVNode("div",{class:"flex cursor-pointer items-center linked-entity-section grow line-height-4",onClick:c[0]||(c[0]=p=>a())},[n.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",Df)),n.value?(o.openBlock(),o.createElementBlock("div",_f)):o.createCommentVNode("",!0),o.createElementVNode("div",Af,o.toDisplayString(e.linkedEntity.entityName),1),o.createElementVNode("div",Lf," ("+o.toDisplayString(s.value)+") ",1)]),o.createElementVNode("div",zf,[o.createVNode(u,{label:"Add",icon:"pi pi-plus",size:"small",onClick:c[1]||(c[1]=p=>i())})])]),n.value?(o.openBlock(),o.createElementBlock("div",Mf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.linkedEntity.list,(p,f)=>(o.openBlock(),o.createElementBlock("div",{class:"flex flex-col",key:f},[p.is_deleted?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(Du,{key:0,linkEntityListItem:p},null,8,["linkEntityListItem"]))]))),128))])):o.createCommentVNode("",!0)]),r.value?(o.openBlock(),o.createBlock(Ff,{key:0,showCreateRelatedEntityForm:r.value,"onUpdate:showCreateRelatedEntityForm":c[2]||(c[2]=p=>r.value=p),linkedEntity:e.linkedEntity,entity360Name:e.entity360Name,entity360Id:e.entity360Id,onOnSaveDialog:l},null,8,["showCreateRelatedEntityForm","linkedEntity","entity360Name","entity360Id"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-412eec44"]]),Uf={key:0},Hf={class:"flex"},Wf={class:"p-3 mt-3 flex-col items-center"},qf={key:0,class:"pi pi-caret-right"},Kf={key:1,class:"pi pi-caret-down"},Gf={class:"font-bold ml-2"},Yf={key:0,class:"flex flex-col mt-4"},Xf={class:"flex flex-col mt-2"},Jf={class:"flex flex-row flex-wrap justify-between pl-5"},Qf={class:"flex flex-col"},Zf={class:"font-bold"},ep={class:"mt-2"},tp={key:0,class:"flex flex-col",style:{position:"relative","max-width":"400px","background-color":"var(--surface-card)"}},np={key:2,style:{width:"350px"},class:"flex flex-col justify-center"},op={key:0,class:"custom-sidebar"},rp={class:"custom-sidebar-content"},ap={class:"custom-sidebar-button"},ip={class:"custom-sidebar-text"},ii=Ie({__name:"Entity360",props:{entityName:{type:String},recordId:{type:String},variable:{type:String,default:"item"},linkedEntity:Array},emits:["onSaveDialog"],setup(e,{expose:t,emit:n}){var V,R;const r=$e(),a=mt.useRoute(),i=e,l=o.ref(!0),s=o.ref(!1),d=o.ref([]);let c=(V=a==null?void 0:a.params)==null?void 0:V.entityName,u=(R=a==null?void 0:a.params)==null?void 0:R.id;i.entityName&&(c=i.entityName),i.recordId&&(u=i.recordId);const p=n,{formData:f,columns:m,errors:g,backendErrors:h,isDataChange:b,linkedEntities:y,primarayColumn:w,clearErrors:x,saveRecord:E,getRelatedEntityRecordById:N,cancleRecord:$}=tr(c,u,p);o.watch(()=>r.globalConfigs.appId,async D=>{D&&N()},{immediate:!0});const S=()=>{l.value=!l.value},k=()=>{s.value=!s.value},v=()=>{N()},C=D=>{if(!d.value||d.value.length===0)return[];const F=d.value.find(L=>L.entityName===D);return F&&F.list?F.list:(console.log("No related entity found"),[])};return t({getRelatedEntity:C}),o.watch(()=>y.value,D=>{Array.isArray(D)&&D.length>0&&D[0]&&(d.value=D)},{immediate:!0,deep:!0}),(D,F)=>{var ae;const L=o.resolveComponent("SplitterPanel"),M=o.resolveComponent("Tab"),U=o.resolveComponent("TabList"),I=o.resolveComponent("TabPanel"),B=o.resolveComponent("TabPanels"),_=o.resolveComponent("Tabs"),J=o.resolveComponent("Splitter"),re=o.resolveComponent("Button");return D.$slots["list-item-display-360"]?(o.openBlock(),o.createElementBlock("div",Uf,[o.renderSlot(D.$slots,"header",{},void 0,!0),o.createElementVNode("div",null,[o.renderSlot(D.$slots,"list-item-display-360",o.normalizeProps({[e.variable||""]:{formData:o.unref(f),columns:o.unref(m),linkedEntities:o.unref(y),errors:o.unref(g),recordId:o.unref(u),entityName:o.unref(c),getRelatedEntity:C}}),void 0,!0)]),o.renderSlot(D.$slots,"footer",{},void 0,!0)])):(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[o.createElementVNode("div",Hf,[o.createVNode(J,{class:"flex-1",layout:"horizontal",gutterSize:8,size:100},{default:o.withCtx(()=>[o.createVNode(L,{size:20,minSize:10,maxSize:20},{default:o.withCtx(()=>[o.createElementVNode("div",Wf,[o.createElementVNode("div",{onClick:F[0]||(F[0]=Y=>S()),class:"section-heading cursor-pointer"},[l.value?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("i",qf)),l.value?(o.openBlock(),o.createElementBlock("i",Kf)):o.createCommentVNode("",!0),o.createElementVNode("span",Gf," About this "+o.toDisplayString(o.unref(c)),1)]),l.value?(o.openBlock(),o.createElementBlock("div",Yf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(m),(Y,Q)=>{var le;return o.openBlock(),o.createElementBlock("div",{key:Q},[Y.autoGenerated?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(f)[Y.name],"onUpdate:modelValue":ce=>o.unref(f)[Y.name]=ce,column:Y,errors:(le=o.unref(g)[Y.name])==null?void 0:le.messages,onInput:o.unref(x)},null,8,["modelValue","onUpdate:modelValue","column","errors","onInput"]))])}),128))])):o.createCommentVNode("",!0)])]),_:1}),o.createVNode(L,{size:55,minSize:35,style:{height:"100%"}},{default:o.withCtx(()=>[o.createVNode(_,{value:"0"},{default:o.withCtx(()=>[o.createVNode(U,null,{default:o.withCtx(()=>[o.createVNode(M,{value:"0"},{default:o.withCtx(()=>F[3]||(F[3]=[o.createTextVNode("Overview")])),_:1}),o.createVNode(M,{value:"1"},{default:o.withCtx(()=>F[4]||(F[4]=[o.createTextVNode("Activity")])),_:1})]),_:1}),o.createVNode(B,null,{default:o.withCtx(()=>[o.createVNode(I,{value:"0"},{default:o.withCtx(()=>[o.createElementVNode("div",Xf,[F[5]||(F[5]=o.createElementVNode("h3",{class:"mt-2 text-xl font-semibold"},"Data highlights",-1)),o.createElementVNode("div",Jf,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(m).filter(Y=>Y.autoGenerated),(Y,Q)=>(o.openBlock(),o.createElementBlock("div",{key:Q,class:"column-item"},[o.createElementVNode("div",Qf,[o.createElementVNode("div",Zf,o.toDisplayString(Y.name),1),o.createElementVNode("div",ep,[o.createVNode(rr,{column:Y,value:o.unref(f)[Y.name]},null,8,["column","value"])])])]))),128))])])]),_:1}),o.createVNode(I,{value:"1"})]),_:1})]),_:1})]),_:1})]),_:1}),((ae=o.unref(y))==null?void 0:ae.length)>0?(o.openBlock(),o.createElementBlock("div",tp,[s.value?(o.openBlock(),o.createBlock(re,{key:0,icon:"pi pi-caret-right",rounded:"",onClick:k,"aria-label":"Filter",style:{height:"2rem",width:"2rem",left:"-20px"}})):o.createCommentVNode("",!0),s.value?o.createCommentVNode("",!0):(o.openBlock(),o.createBlock(re,{key:1,icon:"pi pi-caret-left",rounded:"",onClick:k,"aria-label":"Filter",style:{height:"2rem",width:"2rem",left:"-20px"}})),s.value?(o.openBlock(),o.createElementBlock("div",np,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(y),(Y,Q)=>(o.openBlock(),o.createElementBlock("div",{key:Q},[o.createVNode(jf,{entity360Name:o.unref(c),entity360Id:o.unref(u),linkedEntity:Y,onSaveRelatedEnttity:v},null,8,["entity360Name","entity360Id","linkedEntity"])]))),128))])):o.createCommentVNode("",!0)])):o.createCommentVNode("",!0)]),o.unref(b)?(o.openBlock(),o.createElementBlock("div",op,[o.createElementVNode("div",rp,[o.createElementVNode("div",ap,[o.createVNode(re,{severity:"primary",onClick:F[1]||(F[1]=Y=>o.unref(E)())},{default:o.withCtx(()=>F[6]||(F[6]=[o.createTextVNode("Save")])),_:1}),o.createVNode(re,{style:{"margin-left":"10px"},severity:"secondary",onClick:F[2]||(F[2]=Y=>o.unref($)())},{default:o.withCtx(()=>F[7]||(F[7]=[o.createTextVNode("Cancel")])),_:1})]),o.createElementVNode("div",ip," You've changed property in the "+o.toDisplayString(o.unref(c))+". ",1)])])):o.createCommentVNode("",!0)],64))}}},[["__scopeId","data-v-12a444f4"]]),lp=o.ref("id"),sp=o.ref(1),cp=o.ref(25),dp=o.ref(0),li=o.ref([]);o.ref("");function uo(){const e=new We;let{errors:t,setErrors:n}=Ia(),r=o.reactive({data:null});const a=k=>{r.data=k},i=async(k,v={})=>{try{console.log("options",v);const C=await e.getEntityRecords(k,v);if(C&&C.response)return C}catch(C){return console.error("Error fetching entity:",C.errorMessage),C}finally{}},l=async(k,v)=>{try{let C=await e.addRecord(k.entityName,v);if(C)return C}catch(C){return C}finally{}},s=async(k,v,C)=>{try{const V=await e.updateRecord(k.entityName,v,C);if(V&&V.response)return V}catch(V){return V}finally{}},d=async(k,v)=>{try{v.filter==null&&(v.filter={}),Object.keys(v.filter).length===0&&(v.filter=[]);const C=await e.searchEntityRecords(k.entityName,v);if(C)return C.response.sortBy=v.sortBy,C.response.filters=v.filter,C.response.sortDirection=v.sortDirection,C.response.fullTextSearch=v.fullTextSearch,C}catch(C){return C}finally{}},c=async(k,v)=>{try{const C=await e.deleteRecord(k.entityName,v);if(C)return C}catch(C){console.error("Error on deleting record:",C.errorMessage)}finally{}},u=k=>k.result,p=k=>{var v,C;return f((C=(v=k==null?void 0:k.entity)==null?void 0:v.entityDefinition)==null?void 0:C.columns)},f=k=>k.filter(v=>!(v.fieldType&&v.fieldType==="ENTITY")),m=k=>{const v=k.entity.entityDefinition.columns;let C={};for(let V=0;V<v.length;V++){const R=v[V];if(R.primaryKey&&R.primaryKey==!0){C=R;break}}return C},g=k=>{const v=k.entity.entityDefinition.columns;let C={};for(let V=0;V<v.length;V++){let R=v[V];R.autoGenerated||(C[R.name]="")}return C},h=(k,v)=>{let C="";const V=k.entity.entityDefinition.columns;for(let R=0;R<V.length;R++){let D=V[R];if(v==D.name){C=D.type;break}}return C},b=(k,v)=>{const V=k.entity.entityDefinition.columns.filter(D=>D.autoGenerated).map(D=>D.name);return Object.entries(v).filter(([D])=>!V.includes(D)).map(([D,F])=>({recordColumnName:D,recordColumnValue:F,columnType:h(r.data,D)}))},y=()=>{const k=r.data.entity.entityDefinition.columns;return er().shape(k.reduce((C,V)=>(V.autoGenerated||(C[V.name]=Zo().nullable(!1).test({name:"custom-validation",test:function(R){const D=[];let F="";if(V.required&&(!R||R.trim()===""))if(V.validations){F=w(V.validations,"VALIDATE_REQUIRED"),D.push(F);let L=E(V.validations,"VALIDATE_REQUIRED");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" is required.",D.push(F);else{if(V.maxLength&&R.length>V.maxLength)if(V.validations){F=w(V.validations,"VALIDATE_MAXLENGTH"),D.push(F);let L=E(V.validations,"VALIDATE_MAXLENGTH");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" cannot exceed from "+V.maxLength+" characters",D.push(F);if(V.regxId&&!new RegExp(x(V.validations,"VALIDATE_REGX")).test(R))if(V.validations){F=w(V.validations,"VALIDATE_REGX"),D.push(F);let L=E(V.validations,"VALIDATE_REGX");L&&(L="hint:"+L,D.push(L))}else F=V.displayName+" invalid format.",D.push(F)}return D.length>0?this.createError({message:D}):!0}})),C),{}))},w=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].message},x=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].regx},E=(k,v)=>{for(let C=0;C<k.length;C++)if(v==k[C].type)return k[C].hint};return{state:r,setEntity:a,getEntity:i,addRecord:l,updateRecord:s,searchRecord:d,entityRecordDelete:c,getEntityItems:u,getEntityColumns:p,getPrimaryKeyColumn:m,getFormData:g,createDataToSave:b,createValidationSchema:y,clearErrors:k=>(n({...t.value,[k]:null}),t.value),validateData:async(k,v)=>{try{return await k.validate(v,{abortEarly:!1}),n({}),{validate:!0}}catch(C){const V=C.inner.reduce((F,L)=>(F[L.path]||(F[L.path]={messages:[]}),F[L.path].messages.push(...L.errors),F),{}),R=Object.entries(V).reduce((F,[L,M])=>(F[L]={messages:M.messages},F),{});return n(R),{validate:!1,errors:t.value}}},applyPreset:async(k,v)=>{console.log("Applying preset:",k),li.value=[];const C={sortBy:[lp.value],sortDirection:sp.value===1?"ASC":"DESC",pageSize:cp.value,currentPage:dp.value,columnList:null,filter:li.value,fullTextSearch:"",presetName:k},V=await e.searchEntityRecords(v,C);if(V.success)return V.response}}}const fo={__name:"ConfirmDeleteDialog",props:{showDeleteDialog:{},showDeleteDialogModifiers:{}},emits:o.mergeModels(["onDeleteItem"],["update:showDeleteDialog"]),setup(e,{emit:t}){const n=o.useModel(e,"showDeleteDialog"),r=t,a=i=>{r("onDeleteItem",{remove:i})};return(i,l)=>{const s=o.resolveComponent("Button"),d=o.resolveComponent("Dialog");return o.openBlock(),o.createBlock(d,{visible:n.value,"onUpdate:visible":l[2]||(l[2]=c=>n.value=c),style:{width:"450px"},header:"Confirm",modal:!0},{footer:o.withCtx(()=>[o.createVNode(s,{label:"No",icon:"pi pi-times",text:"",onClick:l[0]||(l[0]=c=>a(!1))}),o.createVNode(s,{label:"Yes",icon:"pi pi-check",text:"",onClick:l[1]||(l[1]=c=>a(!0))})]),default:o.withCtx(()=>[l[3]||(l[3]=o.createElementVNode("div",{class:"flex items-center justify-center"},[o.createElementVNode("i",{class:"pi pi-exclamation-triangle mr-3",style:{"font-size":"2rem"}}),o.createElementVNode("span",null,"Are you sure you want to delete the selected item?")],-1))]),_:1},8,["visible"])}}},up={key:0,style:{"font-weight":"700","font-size":"1.25rem"}},fp={key:1,style:{"font-weight":"700","font-size":"1.25rem"}},mn={__name:"EntityFormDialog",props:o.mergeModels({item:Object},{showEntityForm:{},showEntityFormModifiers:{}}),emits:["update:showEntityForm"],setup(e){const t=o.useModel(e,"showEntityForm"),n=o.inject("entityObject"),r=e;let a=o.ref([]),i=o.ref({}),l=o.ref([]),s=o.ref(null),d=o.ref({});o.onMounted(()=>{a.value=n.getEntityColumns(n.state.data),r.item?i.value=JSON.parse(JSON.stringify(r.item)):i.value=n.getFormData(n.state.data),s.value=n.createValidationSchema()});const c=async()=>{const m=await n.validateData(s.value,i.value);if(!m.validate){d.value=m.errors;return}const g=n.getPrimaryKeyColumn(n.state.data),h=r.item[g.name],b={dataDefinitions:n.createDataToSave(n.state.data,i.value)},y=await n.updateRecord(n.state.data,h,b);if(y&&y.success){t.value=!1;const w={sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch},x=await n.searchRecord(n.state.data,w);if(x!=null&&x.response){let E=x==null?void 0:x.response;n.setEntity(E)}}else y.validationErrors&&(l.value=JSON.parse(JSON.stringify(y.errvalidationErrorsors)))},u=async()=>{const m=await n.validateData(s.value,i.value);if(!m.validate){d.value=m.errors;return}const g={dataDefinitions:n.createDataToSave(n.state.data,i.value)},h=await n.addRecord(n.state.data,g);h&&h.success?(t.value=!1,n.state.data=await n.getEntity(n.state.data.entityName)):h.validationErrors&&(l.value=JSON.parse(JSON.stringify(h.errvalidationErrorsors)))},p=async()=>{r.item?c():u()},f=m=>{d.value=n.clearErrors(m)};return(m,g)=>{const h=o.resolveComponent("Button"),b=o.resolveComponent("Dialog");return t.value?(o.openBlock(),o.createBlock(b,{key:0,showFooter:!1,visible:t.value,"onUpdate:visible":g[2]||(g[2]=y=>t.value=y),style:{width:"50rem"},breakpoints:{"1199px":"75vw","575px":"90vw"},modal:!0,class:"p-fluid"},{header:o.withCtx(()=>[e.item?(o.openBlock(),o.createElementBlock("span",up,"Edit "+o.toDisplayString(o.unref(n).state.data.entityName)+" record details",1)):o.createCommentVNode("",!0),e.item?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("span",fp,"Add "+o.toDisplayString(o.unref(n).state.data.entityName)+" record details",1))]),footer:o.withCtx(()=>[o.createVNode(h,{type:"button",icon:"",label:"Cancel",severity:"secondary",onClick:g[0]||(g[0]=y=>t.value=!1)}),o.createVNode(h,{type:"button",icon:"",label:"Save",severity:"success",onClick:g[1]||(g[1]=y=>p())})]),default:o.withCtx(()=>{var y;return[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(o.unref(a),(w,x)=>{var E;return o.openBlock(),o.createElementBlock("div",{key:x},[!w.autoGenerated&&!w.foreignKey?(o.openBlock(),o.createBlock(Xn,{key:0,modelValue:o.unref(i)[w.name],"onUpdate:modelValue":N=>o.unref(i)[w.name]=N,column:w,errors:(E=o.unref(d)[w.name])==null?void 0:E.messages,onInput:f},null,8,["modelValue","onUpdate:modelValue","column","errors"])):o.createCommentVNode("",!0),!w.autoGenerated&&w.foreignKey?(o.openBlock(),o.createBlock(Xa,{key:1,modelValue:o.unref(i)[w.name],"onUpdate:modelValue":N=>o.unref(i)[w.name]=N,entityName:w.foreignKey.referencedEntityName,columnName:w.name,displayName:w.displayName,relatedEntityColumn:w.foreignKey.referencedColumnName},null,8,["modelValue","onUpdate:modelValue","entityName","columnName","displayName","relatedEntityColumn"])):o.createCommentVNode("",!0)])}),128)),((y=o.unref(l))==null?void 0:y.length)>0?(o.openBlock(),o.createBlock(Ya,{key:0,errors:o.unref(l)},null,8,["errors"])):o.createCommentVNode("",!0)]}),_:1},8,["visible"])):o.createCommentVNode("",!0)}}},pp={class:"flex justify-between items-start"},mp={class:"flex-grow-1"},gp={class:"tile-grid"},hp={class:"font-bold text-lg text-700"},bp={class:"flex flex-col gap-2"},yp=Ie({__name:"EntityListSingleRecord",props:{item:Object},setup(e){const t=e,n=o.inject("entityObject"),r=o.ref([]),a=o.ref(!1),i=o.ref(!1);o.onMounted(()=>{r.value=n.getEntityColumns(n.state.data)});const l=()=>{a.value=!0},s=()=>{i.value=!0},d=u=>{u.remove==!0?c():a.value=!1},c=async()=>{const u=n.getPrimaryKeyColumn(n.state.data),p=t.item[u.name],f=await n.entityRecordDelete(n.state.data,p);if(f!=null&&f.success){a.value=!1;const m={sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch},g=await n.searchRecord(n.state.data,m);if(g!=null&&g.response){let h=g==null?void 0:g.response;n.setEntity(h)}console.log(f)}};return(u,p)=>{const f=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",pp,[o.createElementVNode("div",mp,[o.createElementVNode("div",gp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(r.value,(m,g)=>(o.openBlock(),o.createElementBlock("div",{key:g},[o.createElementVNode("span",hp,o.toDisplayString(m.name)+" : ",1),o.createVNode(rr,{column:m,value:e.item[m.name]},null,8,["column","value"])]))),128))])]),o.createElementVNode("div",bp,[o.createVNode(f,{onClick:p[0]||(p[0]=m=>s()),icon:"pi pi-pencil",severity:"success",size:"",rounded:"","aria-label":"Edit"}),o.createVNode(f,{onClick:p[1]||(p[1]=m=>l()),icon:"pi pi-trash",severity:"danger",rounded:"","aria-label":"Delete"})])]),i.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:i.value,"onUpdate:showEntityForm":p[2]||(p[2]=m=>i.value=m),item:e.item},null,8,["showEntityForm","item"])):o.createCommentVNode("",!0),a.value?(o.openBlock(),o.createBlock(fo,{key:1,showDeleteDialog:a.value,"onUpdate:showDeleteDialog":p[3]||(p[3]=m=>a.value=m),onOnDeleteItem:d},null,8,["showDeleteDialog"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-bce4d0f0"]]),kp=Ie({__name:"EntityListRecordParent",props:{listItemDisplay:String},setup(e){const t=o.inject("entityObject"),n=o.ref([]);return o.watch(()=>t.state.data,r=>{r&&(n.value=r.result,console.log("Entity state updated in child:",t))},{immediate:!0}),(r,a)=>(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(n.value,(i,l)=>(o.openBlock(),o.createElementBlock("div",{key:l,class:"card rounded-md p-5 my-2 shadow-lg relative tile"},[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listItemDisplay!=null&&e.listItemDisplay!=""?e.listItemDisplay:yp),o.mergeProps({ref_for:!0},{item:i}),null,16))]))),128))}},[["__scopeId","data-v-f59ea2d9"]]),wp={};function vp(e,t){return null}const xp=Ie(wp,[["render",vp]]),Sp={class:"my-2"},Cp={class:"m-0"},Ep={__name:"EntityListHeaderSlot",setup(e){const t=o.inject("entityObject");let n=o.ref("");return o.watch(()=>t.state.data,r=>{r&&(n.value=r.entityName)},{immediate:!0}),(r,a)=>{const i=o.resolveComponent("Toolbar");return o.openBlock(),o.createBlock(i,{class:"p-2 my-2"},{start:o.withCtx(()=>[o.createElementVNode("div",Sp,[o.createElementVNode("h2",Cp,"EntityName: "+o.toDisplayString(o.unref(n)),1)])]),end:o.withCtx(()=>a[0]||(a[0]=[])),_:1})}}},Bp={class:"flex flex-col mb-5"},$p={class:"col-12"},Np={class:"flex flex-col mb-5"},Op={class:"col-12"},Tp={key:0},Vp={class:"flex flex-col mb-5"},Ip={class:"col-12"},Fp={class:"flex flex-col mb-5"},Pp={class:"col-12"},Rp={class:"flex flex-col mb-5"},Dp={class:"col-12"},_p={class:"flex flex-row justify-between items-center"},Ap={key:1},Lp={class:"flex flex-row justify-between items-center"},zp={key:1,class:"text-red-500"},Mp={class:"flex flex-col"},jp={class:"flex flex-row justify-between items-center"},Up={__name:"FilterSortSidebar",props:o.mergeModels({headers:Array,operatorMap:Object,sortCallback:Function,filterCallback:Function,getColumnDatatype:Function,getDatatypeByField:Function,preFiltered:String},{sortBy:{},sortByModifiers:{},sortDirection:{},sortDirectionModifiers:{},showFilter:{},showFilterModifiers:{},filters:{},filtersModifiers:{}}),emits:["update:sortBy","update:sortDirection","update:showFilter","update:filters"],setup(e){const t=o.useModel(e,"sortBy"),n=o.useModel(e,"sortDirection"),r=o.useModel(e,"showFilter"),a=o.useModel(e,"filters"),i={GREATER_THAN:"is greater than",dateAfter:"is after",EQUAL:"is equals",dateIs:"is equals",NOT_EQUAL:"is not equals",dateIsNot:"is not equals",LESS_THAN:"is less than",dateBefore:"is before",LESS_THAN_EQUAL:"is less than or equal to",GREATER_THAN_EQUAL:"is greater than or equal to",between:"between",CONTAINS:"contains",STARTS_WITH:"starts with",NOT_CONTAINS:"not contains",ENDS_WITH:"ends with"},l=[{label:"Starts with",value:"STARTS_WITH"},{label:"Contains",value:"CONTAINS"},{label:"Not contains",value:"NOT_CONTAINS"},{label:"Ends with",value:"ENDS_WITH"},{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"}],s=[{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"},{label:"Less than",value:"LESS_THAN"},{label:"Less than or equal to",value:"LESS_THAN_EQUAL"},{label:"Greater than",value:"GREATER_THAN"},{label:"Greater than or equal to",value:"GREATER_THAN_EQUAL"}],d=[{label:"Equals",value:"EQUAL"},{label:"Not equals",value:"NOT_EQUAL"}],c=[{label:"Date is",value:"dateIs"},{label:"Date is not",value:"dateIsNot"},{label:"Date is before",value:"dateBefore"},{label:"Date is after",value:"dateAfter"}],u=[{label:"ASC",value:1},{label:"DESC",value:-1}];let p=[];const f=o.computed(()=>{var v;const S=e.preFiltered?((v=e.preFiltered.match(/\b\w+(?==)/g))==null?void 0:v.map(C=>C.trim().toLowerCase()))||[]:[];return e.headers.filter(C=>C.sortable&&!S.includes(C.field.toLowerCase()))}),m=o.computed(()=>e.headers.filter(S=>S.filterable)),g=S=>e.headers.filter(k=>{var C,V;return k.filterable?((C=a.value[S])==null?void 0:C.columnName)===k.name?!0:(e.preFiltered?((V=e.preFiltered.match(/\b\w+(?==)/g))==null?void 0:V.map(R=>R.trim().toLowerCase()))||[]:[]).includes(k.field.toLowerCase())?!1:!a.value.some((R,D)=>D!==S&&R.columnName===k.name):!1}).map(k=>({label:k.name,value:k.field})),h=S=>{let k="";switch(e.getDatatypeByField(S.columnName).toLowerCase()){case"string":case"uuid":k="startsWith";break;case"date":k="dateIs";break;case"numeric":case"int":case"integer":k="equals";break;case"bool":case"boolean":k="equals";break}S.operator=k,S.value=""},b=S=>{const k=e.getDatatypeByField(S.columnName);switch(k&&k.toLowerCase()){case"integer":case"int":case"numeric":p=s;break;case"date":p=c;break;case"bool":case"boolean":p=d;break;default:p=l}return p},y=S=>{if(S&&S.columnName){const k=e.getDatatypeByField(S.columnName);return e.getColumnDatatype(k)}else return""},w=()=>{for(let S=0;S<a.value.length;S++){const k=a.value[S];k.editing=!1}a.value.push({columnName:"",value:"",operator:"",editing:!0})},x=S=>{a.value.splice(S,1)},E=S=>{S.editing=!S.editing},N=()=>{let S=[],k=JSON.parse(JSON.stringify(a.value));for(let v=0;v<k.length;v++){const C=k[v];delete C.editing,C.columnName&&C.operator&&C.value&&(C.columnType=e.getDatatypeByField(C.columnName),C.operator=e.operatorMap[C.operator],S.push(C))}e.filterCallback(S)},$=()=>{e.sortCallback()};return(S,k)=>{const v=o.resolveComponent("Select"),C=o.resolveComponent("Divider"),V=o.resolveComponent("InputNumber"),R=o.resolveComponent("DatePicker"),D=o.resolveComponent("InputText"),F=o.resolveComponent("Button"),L=o.resolveComponent("Drawer");return o.openBlock(),o.createBlock(L,{visible:r.value,"onUpdate:visible":k[4]||(k[4]=M=>r.value=M),header:"Sorting and Filter",blockScroll:!0,position:"right",class:"layout-profile-sidebar !w-full md:!w-80 lg:!w-[30rem]",pt:{closeButton:"ml-auto"}},{default:o.withCtx(()=>[o.createElementVNode("div",Bp,[k[5]||(k[5]=o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Column",-1)),o.createElementVNode("div",$p,[o.createVNode(v,{modelValue:t.value,"onUpdate:modelValue":k[0]||(k[0]=M=>t.value=M),options:f.value,optionLabel:"name",optionValue:"field",highlightOnSelect:!1,class:"w-full",onChange:k[1]||(k[1]=M=>$(S.event))},null,8,["modelValue","options"])])]),o.createElementVNode("div",Np,[k[6]||(k[6]=o.createElementVNode("div",{class:"col-12 font-bold"},[o.createElementVNode("div",{class:"col-12 font-bold"},"Sort Direction")],-1)),o.createElementVNode("div",Op,[o.createVNode(v,{modelValue:n.value,"onUpdate:modelValue":k[2]||(k[2]=M=>n.value=M),options:u,optionLabel:"label",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:k[3]||(k[3]=M=>$(S.event))},null,8,["modelValue"])])]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(a.value,(M,U)=>(o.openBlock(),o.createElementBlock("div",{key:U},[M.editing?(o.openBlock(),o.createElementBlock("div",Tp,[o.createVNode(C),o.createElementVNode("div",Vp,[k[7]||(k[7]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Column",-1)),o.createElementVNode("div",Ip,[o.createVNode(v,{modelValue:M.columnName,"onUpdate:modelValue":I=>M.columnName=I,options:g(U),optionLabel:"label",placeholder:"Select column",optionValue:"value",highlightOnSelect:!1,class:"w-full",onChange:I=>h(M)},null,8,["modelValue","onUpdate:modelValue","options","onChange"])])]),o.createElementVNode("div",Fp,[k[8]||(k[8]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter Operator",-1)),o.createElementVNode("div",Pp,[o.createVNode(v,{modelValue:M.operator,"onUpdate:modelValue":I=>M.operator=I,options:b(M),optionLabel:"label",placeholder:"Select operator",optionValue:"value",highlightOnSelect:!1,class:"w-full"},null,8,["modelValue","onUpdate:modelValue","options"])])]),o.createElementVNode("div",Rp,[k[9]||(k[9]=o.createElementVNode("div",{class:"col-12 font-bold"},"Filter value",-1)),o.createElementVNode("div",Dp,[y(M)=="numeric"?(o.openBlock(),o.createBlock(V,{key:0,format:!1,class:"w-full",modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"])):y(M)=="date"?(o.openBlock(),o.createBlock(R,{key:1,class:"w-full",modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,dateFormat:"mm/dd/yy",placeholder:"mm/dd/yyyy"},null,8,["modelValue","onUpdate:modelValue"])):(o.openBlock(),o.createBlock(D,{key:2,modelValue:M.value,"onUpdate:modelValue":I=>M.value=I,class:"w-full",placeholder:"Search value"},null,8,["modelValue","onUpdate:modelValue"]))])]),o.createElementVNode("div",_p,[o.createVNode(F,{label:"Hide",icon:"",severity:"warn",onClick:I=>E(M)},null,8,["onClick"]),o.createVNode(F,{label:"Delete",icon:"",severity:"danger",onClick:I=>x(U)},null,8,["onClick"])])])):o.createCommentVNode("",!0),M.editing?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",Ap,[o.createVNode(C),o.createElementVNode("div",Lp,[o.createElementVNode("span",null,[M.columnName||M.operator||M.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!M.columnName})},o.toDisplayString(M.columnName?" "+M.columnName:" column"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!i[M.operator]})},o.toDisplayString(M.operator?" "+i[M.operator]:" operator"),3),o.createElementVNode("span",{class:o.normalizeClass({"text-red-500":!M.value})},o.toDisplayString(M.value?" "+M.value:" value"),3)],64)):(o.openBlock(),o.createElementBlock("span",zp,"Filter is empty"))]),o.createVNode(F,{label:"Edit",icon:"",severity:"info",onClick:I=>E(M)},null,8,["onClick"])])]))]))),128)),o.createElementVNode("div",Mp,[o.createVNode(C),o.createElementVNode("div",jp,[o.createVNode(F,{label:"Add",disabled:m.value.length===a.value.length,icon:"",severity:"success",onClick:w},null,8,["disabled"]),o.createVNode(F,{label:"Apply",severity:"info",onClick:N})])])]),_:1},8,["visible"])}}},Hp={class:"my-1"},Ye=Ie({__name:"EntityListFilters",props:{externalFilterPayload:Object,preFiltered:{type:String,default:""}},setup(e){const t=o.inject("entityObject"),n=o.ref(!1),r=o.ref([]),a=o.ref([]),i=o.ref(""),l=o.ref(1),s=o.ref(""),d=o.ref([]),c=o.ref([]),u=o.ref(!1),p=e,f=o.inject("getVariable"),m={GREATER_THAN:"GREATER_THAN",dateAfter:"GREATER_THAN",EQUAL:"EQUAL",dateIs:"EQUAL",NOT_EQUAL:"NOT_EQUAL",dateIsNot:"NOT_EQUAL",LESS_THAN:"LESS_THAN",dateBefore:"LESS_THAN",LESS_THAN_EQUAL:"LESS_THAN_EQUAL",GREATER_THAN_EQUAL:"GREATER_THAN_EQUAL",between:"BETWEEN",CONTAINS:"CONTAINS",STARTS_WITH:"STARTS_WITH",NOT_CONTAINS:"NOT_CONTAINS",ENDS_WITH:"ENDS_WITH"},g=()=>{var v;const k=p.externalFilterPayload;i.value=((v=k.sortBy)==null?void 0:v[0])||"",l.value=k.sortDirection==="DESC"?-1:1,s.value=k.fullTextSearch||"",r.value=k.filter||[],a.value=k.filter||[],y()};o.watch(()=>t.state.data,k=>{if(k&&!u.value){if(d.value=t.getEntityColumns(k),c.value=N(d.value),!i.value){const v=t.getPrimaryKeyColumn(k);i.value=(v==null?void 0:v.name)||""}p.externalFilterPayload&&g(),u.value=!0}},{immediate:!0});const h=()=>{n.value=!n.value},b=k=>{a.value=k,y()},y=async()=>{const k=t.state.data,v={sortBy:[i.value],sortDirection:l.value===1?"ASC":"DESC",pageSize:(k==null?void 0:k.pageSize)||25,currentPage:(k==null?void 0:k.currentPage)||0,columnList:null,filter:a.value,fullTextSearch:s.value},C=await t.searchRecord(k,v);C!=null&&C.success&&t.setEntity(C.response)},w=()=>{y()},x=()=>{var v;r.value=[],a.value=[];const k=((v=p.preFiltered)==null?void 0:v.split("&&").map(C=>{const[V,R]=C.split("=").map(F=>F.trim()),D=f==null?void 0:f(R);return{columnName:V,value:D,operator:"EQUAL",columnType:typeof D=="string"?"STRING":"INT"}}))||[];a.value=k,y()},E=()=>{y()},N=k=>k.map(v=>({field:v.name,name:v.displayName||v.name,filterable:v.filterable,datatype:v.type,sortable:v.indexColumn,displayFormatKey:v.displayFormatKey,displayFormat:v.displayFormat})),$=k=>{switch(k.toLowerCase()){case"integer":case"int":case"numeric":return"numeric";case"date":return"date";case"bool":case"boolean":return"boolean";default:return"text"}},S=k=>{const v=d.value.find(C=>C.name===k);return v?v.type:null};return(k,v)=>{const C=o.resolveComponent("Button"),V=o.resolveComponent("InputIcon"),R=o.resolveComponent("InputText"),D=o.resolveComponent("IconField"),F=o.resolveComponent("Toolbar");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createVNode(F,{class:"p-2 my-2 border-none"},{start:o.withCtx(()=>[o.createElementVNode("div",Hp,[o.createVNode(C,{type:"button",size:"medium",icon:"pi pi-filter",severity:"info",onClick:v[0]||(v[0]=L=>h())})]),o.createVNode(C,{class:"ml-3",size:"medium",type:"button",icon:"pi pi-filter-slash",severity:"warn",onClick:v[1]||(v[1]=L=>x())})]),end:o.withCtx(()=>[o.createVNode(D,{iconPosition:"right",class:"block mt-2 md:mt-0"},{default:o.withCtx(()=>[o.createVNode(V,{onClick:v[2]||(v[2]=L=>E()),class:"pi pi-search"}),o.createVNode(R,{class:"w-full sm:w-auto",onKeyup:v[3]||(v[3]=o.withKeys(L=>E(),["enter"])),modelValue:s.value,"onUpdate:modelValue":v[4]||(v[4]=L=>s.value=L),placeholder:"Search..."},null,8,["modelValue"])]),_:1})]),_:1}),o.createVNode(Up,{sortBy:i.value,"onUpdate:sortBy":v[5]||(v[5]=L=>i.value=L),sortDirection:l.value,"onUpdate:sortDirection":v[6]||(v[6]=L=>l.value=L),showFilter:n.value,"onUpdate:showFilter":v[7]||(v[7]=L=>n.value=L),filters:r.value,"onUpdate:filters":v[8]||(v[8]=L=>r.value=L),headers:c.value,operatorMap:m,sortCallback:w,filterCallback:b,getColumnDatatype:$,getDatatypeByField:S,preFiltered:p.preFiltered},null,8,["sortBy","sortDirection","showFilter","filters","headers","preFiltered"])],64)}}},[["__scopeId","data-v-61921abb"]]),ut={__name:"EntityListPagination",setup(e){const t=o.ref(25),n=o.ref(0),r=o.ref(0),a=o.ref(0);let i=o.inject("entityObject");const l=async s=>{t.value=s.rows,n.value=s.page,a.value=s.first;const d={sortBy:i.state.data.sortBy,sortDirection:i.state.data.sortDirection,columnList:null,filter:i.state.data.filters,fullTextSearch:i.state.data.fullTextSearch,pageSize:t.value,currentPage:n.value},c=await i.searchRecord(i.state.data,d);if(c!=null&&c.success){let u=c==null?void 0:c.response;i.setEntity(u),r.value=c.response.totalRecords,a.value=n.value*t.value}};return o.watch(()=>{var s,d;return(d=(s=i==null?void 0:i.state)==null?void 0:s.data)==null?void 0:d.totalRecords},s=>{r&&(r.value=s)},{immediate:!0}),(s,d)=>{const c=o.resolveComponent("Paginator");return o.openBlock(),o.createBlock(c,{class:"my-4",rows:t.value,totalRecords:r.value,rowsPerPageOptions:[10,25,50,100],onPage:l,template:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown",currentPageReportTemplate:"Showing {first} to {last} of {totalRecords} items"},null,8,["rows","totalRecords"])}}},Wp={class:"flex flex-row justify-end p-2 my-1"},Xe={__name:"EntityListAddButton",setup(e){const t=o.ref(!1),n=()=>{t.value=!0};return(r,a)=>{const i=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("div",Wp,[o.createVNode(i,{size:"medium",icon:"pi pi-plus",onClick:a[0]||(a[0]=l=>n())})]),t.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:t.value,"onUpdate:showEntityForm":a[1]||(a[1]=l=>t.value=l)},null,8,["showEntityForm"])):o.createCommentVNode("",!0)],64)}}},si={__name:"EntityList",props:{entityName:String,listDisplay:String,listItemDisplay:String,listHeader:String,listFooter:String,listFilter:String,listPagination:String,showAddButton:Boolean,listFilerSlot:Boolean,className:{type:String,default:"default-class"}},setup(e,{expose:t}){const n=uo(),r=$e();o.provide("entityObject",n);const a=e;return t({props:a,reload:()=>{console.log("reload data")}}),o.watch(()=>r.globalConfigs.appId,async l=>{if(l){const s=await n.getEntity(a.entityName);s.success?n.setEntity(s.response):n.setEntity({result:[]})}},{immediate:!0}),(l,s)=>{var d,c,u;return l.$slots["list-item-display"]?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[e.showAddButton?(o.openBlock(),o.createBlock(Xe,{key:0})):o.createCommentVNode("",!0),e.listFilerSlot?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFilter||Ye),{key:1})):o.createCommentVNode("",!0),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(((u=(c=(d=o.unref(n))==null?void 0:d.state)==null?void 0:c.data)==null?void 0:u.result)||[],p=>o.renderSlot(l.$slots,"list-item-display",{item:p})),256))],64)):(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listHeader||Ep))),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFilter||Ye))),e.showAddButton?(o.openBlock(),o.createBlock(Xe,{key:0})):o.createCommentVNode("",!0),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listDisplay||kp),o.normalizeProps(o.guardReactiveProps({listItemDisplay:e.listItemDisplay})),null,16)),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listPagination||ut))),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.listFooter||xp)))],64))}}};function ci(){$e();const{get:e,post:t,put:n,del:r}=lt();return{getActiveUser:async()=>await e("/users/me"),getAppSecurity:async b=>await e(`/api/app/v1/${b}/security`),enableAppSecurity:async(b,y)=>await t(`/api/app/v1/${b}/security/enable`,y),getAppSecurityRules:async b=>await e(`/api/app/v1/${b}/security/rules`),saveAppSecurityRule:async(b,y)=>await t(`/api/app/v1/${b}/security/rules`,y),getAppSecurityRoles:async b=>await e(`/api/app/v1/${b}/security/roles`),saveAppSecurityRoles:async(b,y)=>await t(`/api/app/v1/${b}/security/roles`,y),getAppSecurityPermissions:async b=>await e(`/api/app/v1/${b}/security/permission`),saveAppSecurityPermission:async(b,y)=>await t(`/api/app/v1/${b}/security/permission`,y),deleteAppSecurityPermission:async(b,y)=>await r(`/api/app/v1/${b}/security/permission/${y}`),deleteAppSecurityRole:async(b,y)=>await r(`/api/app/v1/${b}/security/roles/${y}`),deleteAppSecurityAccessRule:async(b,y)=>await r(`/api/app/v1/${b}/security/rules/${y}`)}}const Bt=o.ref({role:[],permissions:[]}),ir=o.ref(!1);let di=!1;function zt(){const e=async()=>{if(ir.value)return console.log("User is ROOT_USER, skipping fetch."),!0;if(di||Bt.value.role[0]&&Bt.value.permissions[0])return console.log("User details already available, skipping fetch."),!0;console.log("Fetching User Details...");const{getActiveUser:a}=ci(),i=await a();return console.log("Fetched Response:",i),i&&Array.isArray(i.authorities)&&i.authorities.includes("ROOT_USER")?(ir.value=!0,!0):(Bt.value={role:["Admin"],permissions:["user","Admin","Entity"]},di=!0,console.log("User Details Set:",Bt.value),!0)};return{userDetails:Bt,fetchUserDetails:e,getRole:()=>Bt.value.role,getPermissions:()=>Bt.value.permissions,hasMatchingRoleAndPermissions:async(a=[],i=[])=>{const l=Array.isArray(a)?a:a.split(",").map(f=>f.trim()),s=Array.isArray(i)?i:i.split(",").map(f=>f.trim());if(await e(),ir.value)return!0;const{role:d,permissions:c}=Bt.value,u=l.length===0||l.some(f=>d.includes(f)),p=s.length===0||s.some(f=>c.includes(f));return u&&!p?!1:u&&p}}}const qp={class:"flex items-center justify-between bg-white p-2 rounded border-b"},Kp=["href"],Gp={class:"text-sm text-gray-500 block"},Yp={key:1},Xp={class:"flex items-center gap-2"},Jp=Ie({__name:"EntityListingSingleRecord",props:{item:Object,entityName:String,showAddButton:Boolean,showFilters:Boolean,className:String,listDisplay:String,listHeader:String,listClass:String,listItemClass:String,listFooter:String,listFilter:String,listPagination:String,displayField:String,baseUrl:String,hrefKey:String,listItemDisplay:String,listHeaderSlot:Boolean,showPagination:Boolean,className:{type:String,default:"default-class"},editable:Boolean,deletable:Boolean,linkedEntity:Array,externalFilterPayload:Object,roles:{type:[Array,String],default:()=>[]},permissions:{type:[Array,String],default:()=>[]},showPresets:{type:Boolean,default:!1},decoration:{type:String,default:"default"},numberVisible:{type:Number,default:3},variable:{type:String,default:"item"},scrollHeight:{type:String,default:""},showToolBar:{type:String,default:""},justifyContent:{type:String,default:""},preFiltered:{type:String,default:""},gap:{type:Number},fetchParentEntities:{type:Boolean},fetchChildEntities:{type:Number},relatedEntities:{type:String,default:""},fetchList:{type:Boolean}},setup(e){const t=e,n=o.inject("entityObject"),r=o.ref([]),a=o.ref(null),i=o.ref(null),l=o.ref(!1),s=o.ref(!1),d=o.ref(null);o.onMounted(()=>{var m,g;t.linkedEntity&&t.linkedEntity.length>0?r.value=Object.keys(t.linkedEntity[0]).map(h=>({name:h})):r.value=n==null?void 0:n.getEntityColumns(n.state.data),d.value=((m=r==null?void 0:r.value)==null?void 0:m.find(h=>h.name==="created_date"))||null,d.value&&(d.value=t==null?void 0:t.item[d.value.name]),a.value=((g=r==null?void 0:r.value)==null?void 0:g.find(h=>h.name===t.displayField))||null,a.value&&(i.value=t==null?void 0:t.item[a.value.name])});const c=()=>{l.value=!0},u=()=>{s.value=!0},p=async m=>{m.remove?f():l.value=!1},f=async()=>{const m=n.getPrimaryKeyColumn(n.state.data),g=t.item[m.name],h=await n.entityRecordDelete(n.state.data,g);if(h!=null&&h.success){l.value=!1;const b=await n.searchRecord(n.state.data,{sortBy:n.state.data.sortBy,sortDirection:n.state.data.sortDirection,pageSize:n.state.data.pageSize,currentPage:n.state.data.currentPage,columnList:null,filter:n.state.data.filters,fullTextSearch:n.state.data.fullTextSearch});b!=null&&b.response&&n.setEntity(b.response)}};return(m,g)=>{const h=o.resolveComponent("Button");return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("ul",{class:o.normalizeClass([t.className,"space-y-2"])},[o.createElementVNode("li",qp,[o.createElementVNode("div",null,[a.value?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createElementVNode("a",{href:`${e.baseUrl}/${e.item[e.hrefKey]}`,target:"_blank",class:"hover:underline font-medium"},o.toDisplayString(i.value),9,Kp),o.createElementVNode("span",Gp,o.toDisplayString(d.value),1)],64)):(o.openBlock(),o.createElementBlock("span",Yp,"No matching field found for '"+o.toDisplayString(i.value)+"'.",1))]),o.createElementVNode("div",Xp,[e.editable?(o.openBlock(),o.createBlock(h,{key:0,onClick:g[0]||(g[0]=b=>u()),icon:"pi pi-pencil",severity:"success",variant:"text","aria-label":"Edit"})):o.createCommentVNode("",!0),e.deletable?(o.openBlock(),o.createBlock(h,{key:1,onClick:g[1]||(g[1]=b=>c()),icon:"pi pi-trash",severity:"danger",variant:"text","aria-label":"Delete"})):o.createCommentVNode("",!0)])])],2),s.value?(o.openBlock(),o.createBlock(mn,{key:0,showEntityForm:s.value,"onUpdate:showEntityForm":g[2]||(g[2]=b=>s.value=b),item:e.item},null,8,["showEntityForm","item"])):o.createCommentVNode("",!0),l.value?(o.openBlock(),o.createBlock(fo,{key:1,showDeleteDialog:l.value,"onUpdate:showDeleteDialog":g[3]||(g[3]=b=>l.value=b),onOnDeleteItem:p},null,8,["showDeleteDialog"])):o.createCommentVNode("",!0)],64)}}},[["__scopeId","data-v-b7680fe1"]]);/**
|
|
20
20
|
* Vue 3 Carousel 0.13.0
|
|
21
21
|
* (c) 2025
|
|
22
22
|
* @license MIT
|