@react-typed-forms/schemas 14.0.2 → 14.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs +1 -1
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/util.d.ts +1 -2
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{useRef as n,useMemo as t,useCallback as r,useEffect as o}from"react";import i from"clsx";import{useControl as l,useComputed as a,useRefState as u,SubscriptionTracker as d,addAfterChangesCallback as c,trackedValue as s,collectChanges as f,useCalculatedControl as p,useValueChangeEffect as y,useValidator as h,useComponentTracking as m,useControlEffect as v,newControl as g,addElement as C,removeElement as D,RenderArrayElements as N}from"@react-typed-forms/core";import b from"jsonata";import{v4 as x}from"uuid";var T,S,E,O,A,I,L,w,F,k,V,M,R,G;function q(e,n){return e.find(e=>e.field===n)}function j(e){return!H(e)}function H(e){return e.type===T.Compound}function U(e){return{field:"__missing",type:T.Any,displayName:e}}function B(e,n,t){const r={id:t?t.id+"/"+e.field:e.field,field:e,getSchema:n.getSchema,parent:t,getChildNode:function(t){if(H(e)&&!e.schemaRef&&!e.treeChildren){const o=e.children.find(e=>e.field===t);return o?B(o,n,r):void 0}return o(!1,r).find(e=>e.field.field===t)},getChildNodes:o};return r;function o(o,i){if(H(e)){if(e.treeChildren)return o?[]:t.getChildNodes(!1,null!=i?i:r);const l=e.schemaRef&&n.getSchema(e.schemaRef);return l?l.getChildNodes(!1,null!=i?i:r):e.children.map(e=>B(e,n,null!=i?i:r))}return[]}}function J(e){const n={getSchema:function(t){const r=e[t];if(r)return Q(r,n)}};return n}function P(e,n,t,r){const o={id:(t?t.id+"/"+e.field.field:e.field.field)+("number"==typeof r?"/"+r:""),schema:e,control:n,parent:t,elementIndex:r,getChild:function(e){const t=n;return t&&t.current.isNull&&(t.value={}),P(e,null==t?void 0:t.fields[e.field.field],o)},getChildElement:function(t){var r;return P(e,null==n||null==(r=n.elements)?void 0:r[t],o,t)}};return o}function $(e,n){var t;return z(null!=(t=null==e?void 0:e.split("/"))?t:[],n)}function _(e,n){var t;return K(null!=(t=null==e?void 0:e.split("/"))?t:[],n)}function W(e,n,t,r){let o=0;for(;o<e.length;){const i=e[o];let l=".."===i?n.parent:n.getChildNode(i);l||(l=B(U(i),n,n)),t=r(t,l),n=l,o++}return t}function Y(e,n,t){return W(e,n,t,(e,n)=>null==e?void 0:e[n.field.field])}function z(e,n){let t=0;for(;t<e.length;){const o=e[t];let i=".."===o?n.parent:r(o);null!=i||(i=P(B(U(o),n.schema,n.schema))),n=i,t++}return n;function r(e){const t=n.schema.getChildNode(e);if(t)return n.getChild(t)}}function K(e,n){let t=0;for(;t<e.length;){const r=e[t];let o=".."===r?n.parent:n.getChildNode(r);o||(o=B(U(r),n,n)),n=o,t++}return n}function Q(e,n={getSchema(e){}}){return B({type:T.Compound,field:"",children:e},n,void 0)}function X(e){const n=[];let t=e;for(;t;)n.push(t.field.field),t=t.parent;return n.reverse()}function Z(e){return H(e.field)}function ee(e,n){if(e.id===n.id)return"";const t=X(e),r=X(n);let o=0;for(;o<t.length&&o<r.length&&t[o]===r[o];)o++;const i=t.length-o,l=r.slice(o).join("/");return"../".repeat(i)+l}function ne(e,n){var t;return null==(t=e.tags)||null==(t=t.find(e=>e.startsWith(n)))?void 0:t.substring(n.length)}function te(e,n){return`${e}${n}`}function re(e,n,t){switch(e.type){case O.Action:return n.action(e);case O.Data:return n.data(e);case O.Display:return n.display(e);case O.Group:return n.group(e);default:return t(e)}}function oe(e){return e.type===k.Grid}function ie(e){return e.type===k.SelectChild}function le(e){return e.type===k.Tabs}function ae(e){return e.type===k.Flex}function ue(e){return e.type===w.DisplayOnly}function de(e){return e.type===w.Textfield}function ce(e){return(null==e?void 0:e.type)===w.Group}function se(e){return e.type===w.Array}function fe(e){return e.type===O.Data}function pe(e){return e.type===O.Group}function ye(e){return e.type===O.Action}function he(e){return e.type===O.Display}function me(e){switch(null==e?void 0:e.type){case w.Radio:case w.CheckList:return!0;default:return!1}}!function(e){e.String="String",e.Bool="Bool",e.Int="Int",e.Date="Date",e.DateTime="DateTime",e.Time="Time",e.Double="Double",e.EntityRef="EntityRef",e.Compound="Compound",e.AutoId="AutoId",e.Image="Image",e.Any="Any"}(T||(T={})),function(e){e.NotEmpty="NotEmpty",e.MinLength="MinLength",e.MaxLength="MaxLength",e.NotAfterDate="NotAfterDate",e.NotBeforeDate="NotBeforeDate"}(S||(S={})),function(e){e.NoControl="_NoControl",e.HtmlEditor="_HtmlEditor",e.ControlGroup="_ControlGroup:",e.ControlRef="_ControlRef:"}(E||(E={})),function(e){e.Data="Data",e.Group="Group",e.Display="Display",e.Action="Action"}(O||(O={})),function(e){e.Visible="Visible",e.DefaultValue="DefaultValue",e.Readonly="Readonly",e.Disabled="Disabled",e.Display="Display",e.Style="Style",e.LayoutStyle="LayoutStyle",e.AllowedOptions="AllowedOptions",e.Label="Label",e.ActionData="ActionData"}(A||(A={})),function(e){e.ControlStart="ControlStart",e.ControlEnd="ControlEnd",e.LabelStart="LabelStart",e.LabelEnd="LabelEnd"}(I||(I={})),function(e){e.Tooltip="Tooltip",e.Accordion="Accordion",e.HelpText="HelpText",e.Icon="Icon",e.SetField="SetField"}(L||(L={})),function(e){e.Standard="Standard",e.Textfield="Textfield",e.Radio="Radio",e.HtmlEditor="HtmlEditor",e.IconList="IconList",e.CheckList="CheckList",e.UserSelection="UserSelection",e.Synchronised="Synchronised",e.IconSelector="IconSelector",e.DateTime="DateTime",e.Checkbox="Checkbox",e.Dropdown="Dropdown",e.DisplayOnly="DisplayOnly",e.Group="Group",e.NullToggle="NullToggle",e.Jsonata="Jsonata",e.Array="Array"}(w||(w={})),function(e){e.Camel="Camel",e.Snake="Snake",e.Pascal="Pascal"}(F||(F={})),function(e){e.Standard="Standard",e.Grid="Grid",e.Flex="Flex",e.Tabs="Tabs",e.GroupElement="GroupElement",e.SelectChild="SelectChild"}(k||(k={})),function(e){e.Text="Text",e.Html="Html",e.Icon="Icon",e.Custom="Custom"}(V||(V={}));class ve{constructor(e,n,t,r,o){this.id=void 0,this.definition=void 0,this.tree=void 0,this.parent=void 0,this.overrideChildren=void 0,this.id=e,this.definition=n,this.tree=t,this.parent=r,this.overrideChildren=o,this.id=e,this.definition=n}getChildNodes(){var e,n;if(this.overrideChildren)return this.overrideChildren;let t=this.definition.children;if(this.definition.childRefId){const e=this.tree.controlMap[this.definition.childRefId];t=null==e?void 0:e.children}return null!=(e=null==(n=t)?void 0:n.map((e,n)=>new ve(this.id+"/"+n,e,this.tree,this)))?e:[]}withOverrideChildren(e){return new ve(this.id,this.definition,this.tree,this.parent,e.map(e=>ge(e,this.tree)))}}function ge(e,n,t,r){return new ve(r?r.id+"/"+t:"",e,n,r)}function Ce(e){return be({$legacy:[e]}).getForm("$legacy").rootNode.getChildNodes()[0]}function De(e){var n,t;const r=null!=(n=null==(t=e.children)?void 0:t.flatMap(De))?n:[];return e.id?[[e.id,e],...r]:r}function Ne(e,n){const t={getForm:n,controlMap:Object.fromEntries(e.flatMap(De))};return t.rootNode=ge({children:e,type:O.Group},t),t}function be(e){const n={getForm:function(e){return t[e]}},t=Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Ne(t,n)]));return n}function xe(e){const n=pe(e)?e.compoundField:fe(e)?e.field:void 0;return null==n?void 0:n.split("/")}function Te(e,n){const t=xe(e);return t?z(t,n):void 0}function Se(e,n,t){let r=[];for(;e&&(null==t||!t(e));)r.push(n(e)),e=e.parent;return r.reverse()}function Ee(e){for(;e.parent;)e=e.parent;return e}function Oe(e){return Se(e,e=>null==e.elementIndex?e.schema.field.field:e.elementIndex,e=>!e.parent)}function Ae(e){return Se(e,e=>e.field,e=>!e.parent)}function Ie(e){return e.getChildNodes().map(e=>e.field)}function Le(e,n,t){if(e)for(const r of e){const e=we(r,n,t);if(void 0!==e)return e}}function we(e,n,t){if(n.control&&!n.control.isNull)return re(e,{data:e=>r(e),group:e=>r(e),action:()=>{},display:()=>{}},()=>{});function r(e){const r=e.children,o=Te(e,n);if(!o)return Le(r,n,t);const i=fe(e)?e:void 0,l=i?t(i,o):void 0;if(void 0!==l)return l;const a=o.schema,u=H(a.field);if(a.field.collection){const e=o.control;let n=0;for(const l of null!=(d=e.elements)?d:[]){var d;const e=o.getChildElement(n),l=i?t(i,e):void 0;if(void 0!==l)return l;if(u){const n=Le(r,e,t);if(void 0!==n)return n}n++}}else if(u)return Le(r,o,t)}}function Fe(){return Fe=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},Fe.apply(null,arguments)}function ke(e,n){if(null==e)return{};var t={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(n.includes(r))continue;t[r]=e[r]}return t}function Ve(e){return Object.entries(e).map(e=>e[1](e[0]))}function Me(e,n){return qe(Fe({type:T.String,displayName:e},n))}function Re(e,...n){return qe({type:T.String,displayName:e,options:n})}function Ge(e,n){return t=>Fe({},n(t),e)}function qe(e){return n=>Fe({},We(n,n),e)}function je(e){return n=>Fe({},Ye(n,n,!1),e)}function He(e,n){return qe(Fe({type:T.Int,displayName:e},n))}function Ue(e,n){return qe(Fe({type:T.Double,displayName:e},n))}function Be(e,n){return qe(Fe({type:T.Date,displayName:e},n))}function Je(e,n){return qe(Fe({type:T.Time,displayName:e},n))}function Pe(e,n){return qe(Fe({type:T.DateTime,displayName:e},n))}function $e(e,n){return qe(Fe({type:T.Bool,displayName:e},n))}function _e(e,n,t){return r=>Fe({},Ye(r,e,!1),t,{children:n})}function We(e,n){return{field:e,displayName:n,type:T.String}}function Ye(e,n,t){return{field:e,displayName:n,type:T.Compound,collection:t,children:[]}}function ze(e,n){const t=n.find(n=>n.field===e.field);return t?n.map(n=>n!==t?n:Fe({},n,{onlyForTypes:r(n.onlyForTypes,e.onlyForTypes)})):[...n,e];function r(e,n){if(!e)return n;if(!n)return e;const t=n.filter(n=>!e.includes(n));return t.length?[...e,...t]:e}}function Ke(e,n,t,r){const o=e.map(e=>e.isTypeField?Qe(e,n,t):e);return r.map(e=>Fe({},e,{onlyForTypes:[t]})).reduce((e,n)=>ze(n,e),o)}function Qe(e,n,t){var r;const o=null!=(r=e.options)?r:[];return o.some(e=>e.value===t)?e:Fe({},e,{options:[...o,{name:n,value:t}]})}function Xe(e){const n={};return Object.keys(e).forEach(function t(r){if(r in n)return n[r];const o=[];return n[r]=o,e[r].forEach(e=>{H(e)&&e.schemaRef?o.push(Fe({},e,{children:t(e.schemaRef)})):o.push(e)}),o}),n}function Ze(e,n,t){if(!e)return nn(n);if(t&&t.has(e))return e;null!=t||(t=new Set),t.add(e);const r=n.filter(n=>H(n)||!(n.field in e));if(!r.length)return e;const o=Fe({},e);return r.forEach(r=>{o[r.field]=r.field in e?en(e[r.field],r,n,!1,t):tn(r)}),o}function en(e,n,t,r,o){return n.collection&&!r?(null!=e?e:[]).map(e=>en(e,n,t,!0,o)):H(n)?e||n.required?Ze(e,n.treeChildren?t:n.children,o):e:tn(n)}function nn(e){return Object.fromEntries(e.map(e=>[e.field,tn(e)]))}function tn(e,n,t){if(void 0!==e.defaultValue)return e.defaultValue;const r=!(!n&&!e.required);if(H(e)){if(r){const n=nn(e.children);return e.collection?[n]:n}return e.notNullable||t?e.collection?[]:{}:void 0}return e.collection&&e.notNullable?[]:void 0}function rn(e){return H(e)?nn(e.children):e.defaultValue}function on(e,n){return q(e,n)}function ln(e,n){return q(e,n)}function an(e,n){var t;return Boolean(null==(t=e.tags)?void 0:t.includes(n))}function un(e){var n;return null!=(n=e.displayName)?n:e.field}function dn(e){var n,t;return(null!=(n=null==(t=e.options)?void 0:t.length)?n:0)>0}function cn(e,n){if(H(e)){const t=ne(e,E.ControlRef);return{type:O.Data,title:e.displayName,field:e.field,required:e.required,childRefId:t,children:n||t?void 0:e.children.filter(e=>!an(e,E.NoControl)).map(e=>cn(e))}}if(j(e)){const n=an(e,E.HtmlEditor);return{type:O.Data,title:e.displayName,field:e.field,required:e.required,renderOptions:{type:n?w.HtmlEditor:w.Standard}}}throw"Unknown schema field"}function sn(e,n){return fe(n)&&e.field.field===n.field?[n]:pe(n)?n.compoundField===e.field.field?[n]:null!=(t=null==(r=n.children)?void 0:r.flatMap(n=>sn(e,n)))?t:[]:[];var t,r}function fn(e){return e.flatMap(e=>{var n;return pe(e)&&!e.compoundField?[e,...fn(null!=(n=e.children)?n:[])]:[]})}function pn(e,n){return yn(Q(e),n)}function yn(e,n){const t={},r={},o=n.map(n=>l(n,e));return i("",{schema:e,children:o}),o.forEach(function e(n){if(n.children.forEach(e),n.control.childRefId){const e=t[n.control.childRefId];if(e)return void e.children.forEach(e=>l(e.control,n.schema,n,!0));console.warn("Missing reference",n.control.childRefId)}}),e.getChildNodes().forEach(function e(n){if(!an(n.field,E.NoControl)){if(!r[n.id]){const e=function(e){const n=[];let t=e.parent;for(;t&&(n.push(t.id),!t.field.collection);)t.parent||t.getChildNodes(!0).forEach(r),t=t.parent;return n;function r(e){Z(e)&&!e.field.collection&&(n.push(e.id),e.getChildNodes(!0).forEach(r))}}(n),i=ne(n.field,E.ControlGroup);let a=i?t[i]:void 0;var o;if(!a&&i&&console.warn("No group '"+i+"' for "+n.id),a&&e.indexOf(a.schema.id)<0&&(console.warn(`Target group '${i}' is not an eligible parent for '${n.id}'`),a=void 0),!a&&e.length&&(a=null==(o=r[e[0]])?void 0:o[0]),a){const e=cn(n.field,!0);e.field=ee(a.schema,n),a.children.push(l(e,a.schema,a))}else console.warn("Could not find a parent group for: "+n.id)}n.getChildNodes(!0).forEach(e)}}),o.map(function e(n){const t=n.children.length?n.children.map(e):null;return Fe({},n.control,{children:t})});function i(e,n){r[e]||(r[e]=[]),r[e].push(n)}function l(e,n,r,o){var a,u;const d=xe(e);let c=d?K(d,n):void 0;pe(e)&&null==c&&(c=n);const s={schema:c,control:e,children:[],parent:r};return s.children=null!=(a=null==(u=e.children)?void 0:u.map(e=>{var t;return l(e,null!=(t=c)?t:n,s,o)}))?a:[],!o&&e.id&&(t[e.id]=s),c&&i(c.id,s),s}}function hn(e){const t=n(e);return t.current=e,t}function mn(e){return fe(e)&&!!e.readonly}function vn(e){return fe(e)&&!!e.disabled}function gn(e){return fe(e)&&e.renderOptions&&ue(e.renderOptions)?e.renderOptions:void 0}function Cn(e,n,t){if(!e)return e;const r=n.find(e=>e.isTypeField),o=r?e[r.field]:void 0,i=t?n:n.filter(e=>{var n,t;return H(e)||(null!=(n=null==(t=e.onlyForTypes)?void 0:t.length)?n:0)>0});if(!i.length)return e;const l=Fe({},e);return i.forEach(r=>{var i;const a=e[r.field];if(!1===(null==(i=r.onlyForTypes)?void 0:i.includes(o))||!r.notNullable&&(t&&r.defaultValue===a||r.collection&&Array.isArray(a)&&!a.length))delete l[r.field];else if(H(r)){const e=r.treeChildren?n:r.children;r.collection?Array.isArray(a)&&(l[r.field]=a.map(n=>Cn(n,e,t))):l[r.field]=Cn(a,e,t)}}),l}function Dn(e,n){var t,r;const o=null==(t=e.children)?void 0:t.flatMap(e=>Dn(e,n)),l=Ln(e),{entryWrapperClass:a,selectedClass:u,notSelectedClass:d}=fe(e)&&me(e.renderOptions)?e.renderOptions:{},c=i([e.styleClass,e.layoutClass,e.labelClass,...Object.values(l),...null!=(r=null==n?void 0:n(e))?r:[],a,u,d].map(xn));return o&&!c?o:c?o?[c,...o]:[c]:[]}function Nn(e,n){let t="";return e.forEach((e,r)=>{var o;"number"==typeof e?t+=null!=(o=null==n?void 0:n(e))?o:"["+e+"]":(r>0&&(t+="."),t+=e)}),t}function bn(e,n){if(Array.isArray(n)){let t=e;return n.forEach(e=>t=t.children[e]),t}return e.children[n]}function xn(e){return e&&e.startsWith("@ ")?e.substring(2):e}function Tn(e,n){if(xn(n)!==n)return n||void 0;const t=xn(e);return t===e?i(e,n):t||void 0}function Sn(e,n,t,r,o){return[null==n||e>n?r:void 0,null==t||e<t?o:void 0]}function En(e,n){if(!n)return;const t=n.split("/"),r=[];let o=0,i=e;for(;o<t.length&&i;){const e=q(i,t[o]);if(!e)return;r.push(e),i=H(e)&&!e.collection?e.children:void 0,o++}return r.length===t.length?r:void 0}function On(e,n,t=(e,n,t)=>null!=n?n:t){if(!e)return n;if(!n)return e;const r=Fe({},e);for(const o in n)n.hasOwnProperty(o)&&(r[o]=t(o,e[o],n[o]));return r}function An(e){return null==e?"":"object"==typeof e?"error: "+JSON.stringify(e):e.toString()}function In(e){return pe(e)?e.groupOptions:fe(e)&&ce(e.renderOptions)?e.renderOptions.groupOptions:void 0}function Ln(e){let n=In(e);if(!n)return{};const{childLayoutClass:t,childStyleClass:r,childLabelClass:o}=n,i={};return t&&(i.layoutClass=t),r&&(i.styleClass=r),o&&(i.labelClass=o),i}function wn(e){var n;return Boolean(null==(n=In(e))?void 0:n.displayOnly)}function Fn(...e){return(n,t,r)=>{for(let i=0;i<e.length;i++){var o;const l=null==(o=e[i])?void 0:o.call(e,n,t,r);if(l)return l}}}function kn(e,n,t){return Fe({type:O.Data,field:e,title:n},t)}function Vn(e){return n=>Fe({type:e},n)}function Mn(e){return n=>Fe({type:e},n)}function Rn(e){return n=>({renderOptions:Fe({type:e},n)})}!function(e){e.Jsonata="Jsonata",e.Date="Date",e.Length="Length"}(M||(M={})),function(e){e.NotBefore="NotBefore",e.NotAfter="NotAfter"}(R||(R={})),function(e){e.Jsonata="Jsonata",e.Data="Data",e.DataMatch="FieldValue",e.UserMatch="UserMatch",e.NotEmpty="NotEmpty",e.UUID="UUID"}(G||(G={}));const Gn=Rn(w.CheckList),qn=Rn(w.Radio),jn=Vn(M.Length),Hn=Vn(M.Jsonata),Un=Vn(M.Date),Bn=Mn(L.Accordion),Jn=Rn(w.Textfield),Pn=Rn(w.DisplayOnly),$n=Rn(w.Jsonata);function _n(e,n){return Fe({type:O.Display,displayData:{type:V.Text,text:e}},n)}function Wn(e,n){return Fe({type:O.Display,displayData:{type:V.Html,html:e}},n)}function Yn(e){return{type:A.DefaultValue,expr:e}}function zn(e){return{type:A.Readonly,expr:e}}function Kn(e){return{type:A.Visible,expr:e}}function Qn(e){return{type:A.Disabled,expr:e}}function Xn(e){return{type:G.Data,field:e}}function Zn(e,n){return{type:G.DataMatch,field:e,value:n}}function et(e){return{type:G.Jsonata,expression:e}}function nt(e,n,t){return Fe({type:O.Group,children:e,title:n,groupOptions:{type:"Standard",hideTitle:!n}},t)}function tt(e,n,t,r){return Fe({type:O.Data,field:e,children:t,title:n,renderOptions:{type:"Standard"}},r)}function rt(e,n,t){return Fe({type:O.Action,title:e,actionId:n},t)}function ot(e,n,t,r){return Fe({actionId:e,onClick:n,actionText:null!=t?t:e},r)}const it={type:O.Group,children:[],groupOptions:{type:k.Standard,hideTitle:!0}};function lt(e,n=it){return t(()=>{var t;return Fe({},n,{children:pn(e,null!=(t=n.children)?t:[])})},[e,n])}function at(e,n){const t=Fe({},e);return Object.entries(n).forEach(([e,n])=>{t[e]=(Array.isArray(n)?n:[n]).reduce((e,n)=>{var t;return Ke(e,n.name,n.value,null!=(t=n.fields)?t:[])},t[e])}),t}function ut(e,n){return Xe(n.reduce(at,e))}function dt(e,n,t){return{deps:t,state:n,runHook:e}}function ct(e,n){return e.map(e=>ft(n(e))).join(",")}function st(e){const t=Object.entries(e),o=ct(t,e=>e[1].deps),i=n({}),l=i.current;return t.forEach(e=>l[e[0]]=e[1].state),r(e=>Object.fromEntries(t.map(([n,t])=>[n,t.runHook(e,i.current[n])])),[o])}function ft(e){return void 0===e?"_":null===e?"~":e.toString()}function pt(e,n,t){return wt(xt(n,A.Visible,e),(e,{definition:n,overrideDataNode:t})=>a(()=>{const r=null!=t?t:e.dataNode;return!r||St(r)&&!Et(r,e.schemaInterface,n)}),{definition:n,overrideDataNode:t})}function yt(e,n){return wt(xt(n,A.Readonly,e),(e,{definition:n})=>p(()=>mn(n)),{definition:n})}function ht(e,n,t){return wt(Tt(t,n,e),()=>l(void 0),void 0)}function mt(e,n){return wt(Tt(n,A.AllowedOptions,e),()=>l([]),void 0)}function vt(e,n){return wt(xt(n,A.Disabled,e),e=>a(()=>{var t,r;const o=null==(t=e.dataNode)?void 0:t.control;return!1===(null==o||null==(r=o.meta.nullControl)?void 0:r.value)||vn(n)}),void 0)}function gt(e,n){return Tt(n,A.Display,e)}function Ct(e,n){return wt(Tt(n,A.DefaultValue,e),(e,{definition:n})=>a(function(){var t;const[r,o]=fe(n)?[n.required,n.defaultValue]:[!1,void 0],i=null==(t=e.dataNode)?void 0:t.schema.field;return null!=o?o:i?null!=e.dataNode.elementIndex?rn(i):tn(i,r,!0):void 0}),{definition:n})}function Dt(e,n,t){switch(e.type){case G.Jsonata:const r=a(()=>({formData:n.formData}));return At(e.expression,Ee(n.parentNode).control,Oe(n.parentNode),r,t);case G.UUID:return Ot(t);case G.Data:return function(e,n,t=e=>e){const r=$(e.field,n);return p(()=>{var e;return t(null==(e=r.control)?void 0:e.value)})}(e,n.parentNode,t);case G.DataMatch:return function(e,n,t=e=>e){const r=$(e.field,n);return p(()=>{var n;const o=null==(n=r.control)?void 0:n.value;return t(Array.isArray(o)?o.includes(e.value):o===e.value)})}(e,n.parentNode,t);case G.NotEmpty:return function(e,n,t,r=e=>e){const o=$(e.field,n);return p(()=>{var e;const n=null==(e=o.control)?void 0:e.value,i=o.schema.field;return r(i&&!t.isEmptyValue(i,n))})}(e,n.parentNode,n.schemaInterface,t);default:return l(void 0)}}const Nt=bt(Dt);function bt(e){return(n,t)=>({deps:null==n?void 0:n.type,state:n&&n.type?n:void 0,runHook:(n,r)=>r?e(r,n,t):void 0})}function xt(e,n,t){return Tt(e,n,t,e=>Boolean(e))}function Tt(e,n,t,r=e=>e){var o;const i=null==(o=e.dynamic)?void 0:o.find(e=>e.type===n);return t(null==i?void 0:i.expr,r)}function St(e){const n=e.schema.field.onlyForTypes;if(null==n||0===n.length)return!0;const t=e.parent,r=t.schema.getChildNodes().find(e=>e.field.isTypeField);if(null==r)return!0;const o=t.getChild(r).control;return o&&n.includes(o.value)}function Et(e,n,t){var r;const o=gn(t);return o&&!o.emptyText&&n.isEmptyValue(e.schema.field,null==(r=e.control)?void 0:r.value)}function Ot(e=e=>e){return l(()=>e(x()))}function At(e,r,i,a,p=e=>e){const y=Nn(i,e=>`#$i[${e}]`),h=y?y+".("+e+")":e,m=t(()=>{try{return b(e?h:"null")}catch(e){return console.error(e),b("null")}},[h]),v=l(),g=n(),C=n(0),[D]=u(()=>new d(()=>{const e=g.current;e&&(g.current=void 0,c(()=>{g.current=e,e()}))}));return o(()=>{async function e(){const e=D.current;try{C.current++,v.value=p(await m.evaluate(s(r,e.collectUsage),f(e.collectUsage,()=>null==a?void 0:a.value)))}finally{--C.current||e.update()}}g.current=e,e()},[m]),o(()=>()=>{g.current=void 0,D.current.cleanup()},[]),v}function It(e,n){return wt(Tt(n,A.ActionData,e),()=>l(null),void 0)}function Lt(e,n){return wt(Tt(n,A.Label,e),()=>l(null),void 0)}function wt(e,n,t,r){return{deps:void 0===r?e.deps:[r,e.deps].map(ft).join(),runHook:(t,r)=>{var o,i;return null!=(o=null==(i=e.runHook(t,r[0]))?void 0:i.as())?o:n(t,r[1])},state:[e.state,t]}}function Ft(e,n=kt){var t;const o=fe(e)?e:void 0,i=hn({dd:o,useValidatorFor:n}),l=o?ct(null!=(t=o.validators)?t:[],e=>e.type):"~";return r(e=>{var t,r,o;const{dd:l}=i.current;if(!l)return;const a=null!=(t=null==(r=e.dataContext.dataNode)?void 0:r.schema.field)?t:{field:"__missing",type:T.Any},{control:u,hiddenControl:d,dataContext:{schemaInterface:c}}=e;y(u,()=>u.setError("default","")),l.required&&h(u,e=>!d.value&&c.isEmptyValue(a,e)?c.validationMessageText(a,S.NotEmpty,!1,!0):null,"required"),null==(o=l.validators)||o.forEach((t,r)=>n(t,Fe({},e,{index:r,field:a,definition:l})))},[!!o,null==o?void 0:o.required,l,n])}function kt(e,n){switch(e.type){case M.Length:Mt(e,n);break;case M.Jsonata:Vt(e,n);break;case M.Date:Rt(e,n)}}function Vt(e,n){const t=n.dataContext.parentNode,r=At(e.expression,Ee(t).control,Oe(t),void 0,e=>null==e?null:"string"==typeof e?e:JSON.stringify(e));h(n.control,()=>n.hiddenControl.value?null:r.value,"jsonata"+n.index)}function Mt(e,n){const{control:t,dataContext:{schemaInterface:r},hiddenControl:o,field:i}=n;h(t,n=>{const l=r.controlLength(i,t);if(!o.value)if(null!=e.min&&l<e.min){if(null==i||!i.collection)return r.validationMessageText(i,S.MinLength,l,e.min);t.setValue(n=>Array.isArray(n)?n.concat(Array.from({length:e.min-n.length})):Array.from({length:e.min}))}else if(null!=e.max&&l>e.max)return r.validationMessageText(i,S.MaxLength,l,e.max)},"length"+n.index)}function Rt(e,n){const{control:t,field:r,index:o,dataContext:{schemaInterface:i}}=n;let l;if(e.fixedDate)l=i.parseToMillis(r,e.fixedDate);else{const n=new Date;l=Date.UTC(n.getFullYear(),n.getMonth(),n.getDate()),e.daysFromCurrent&&(l+=864e5*e.daysFromCurrent)}h(t,n=>{if(n){const t=i.parseToMillis(r,n),o=e.comparison===R.NotAfter;if(o?t>l:t<l)return i.validationMessageText(r,o?S.NotAfterDate:S.NotBeforeDate,t,l)}return null},"date"+o)}class Gt{constructor(e=["No","Yes"],n=e=>Date.parse(e)){this.boolStrings=void 0,this.parseDateTime=void 0,this.boolStrings=e,this.parseDateTime=n}parseToMillis(e,n){return this.parseDateTime(n)}validationMessageText(e,n,t,r){switch(n){case S.NotEmpty:return"Please enter a value";case S.MinLength:return"Length must be at least "+r;case S.MaxLength:return"Length must be less than "+r;case S.NotBeforeDate:return`Date must not be before ${new Date(r).toDateString()}`;case S.NotAfterDate:return`Date must not be after ${new Date(r).toDateString()}`;default:return"Unknown error"}}getDataOptions(e){return this.getNodeOptions(e.schema)}getNodeOptions(e){return this.getOptions(e.field)}getOptions({options:e}){return e&&e.length>0?e:null}getFilterOptions(e,n){return this.getNodeOptions(n)}isEmptyValue(e,n){if(e.collection)return Array.isArray(n)?0===n.length:null==n;switch(e.type){case T.String:case T.DateTime:case T.Date:case T.Time:return!n;default:return null==n}}searchText(e,n){var t,r;return null!=(t=null==(r=this.textValue(e,n))?void 0:r.toLowerCase())?t:""}textValue(e,n,t){const r=this.getOptions(e),o=null==r?void 0:r.find(e=>e.value===n);if(o)return o.name;switch(e.type){case T.Date:return n?new Date(n).toLocaleDateString():void 0;case T.DateTime:return n?new Date(this.parseToMillis(e,n)).toLocaleString():void 0;case T.Time:return n?new Date("1970-01-01T"+n).toLocaleTimeString():void 0;case T.Bool:return this.boolStrings[n?1:0];default:return null!=n?n.toString():void 0}}controlLength(e,n){var t,r;return e.collection?null!=(t=null==(r=n.elements)?void 0:r.length)?t:0:this.valueLength(e,n.value)}valueLength(e,n){var t;return null!=(t=n&&(null==n?void 0:n.length))?t:0}compareValue(e,n,t){if(null==n)return null==t?0:1;if(null==t)return-1;switch(e.type){case T.Date:case T.DateTime:case T.Time:case T.String:return n.localeCompare(t);case T.Bool:return n?t?0:1:-1;case T.Int:case T.Double:return n-t;default:return 0}}compoundFieldSetup(e){return e.getChildNodes().map(e=>{const{field:n}=e.field;return[n,this.makeControlSetup(e)]})}compoundFieldEquality(e){return e.getChildNodes().map(e=>{const{field:n}=e.field;return[n,(t,r)=>this.makeEqualityFunc(e)(t[n],r[n])]})}makeEqualityFunc(e,n){if(e.field.collection&&!n){const n=this.makeEqualityFunc(e,!0);return(e,t)=>{if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!n(e[r],t[r]))return!1;return!0}}if(e.field.type===T.Compound){const n=this.compoundFieldEquality(e);return(e,t)=>e===t||null!=e&&null!=t&&n.every(n=>n[1](e,t))}return(e,n)=>e===n}makeControlSetup(e,n){let t={equals:this.makeEqualityFunc(e,n)};return e.field.collection&&!n?(t.elems=this.makeControlSetup(e,!0),t):(e.field.type===T.Compound&&(t.fields=Object.fromEntries(this.compoundFieldSetup(e))),t)}}const qt=new Gt,jt=["parentDataNode"],Ht=["definition","control","formOptions","style","allowedOptions","schemaInterface","styleClass"],Ut=0,Bt=1e3;var Jt;function Pt(n,t,o,i={}){const l=hn({definition:n,fields:t,renderer:o,options:i});return r(({control:n,parentPath:t})=>/*#__PURE__*/e.createElement(_t,Fe({},l.current,{control:n,parentPath:t})),[l])}function $t(n,t,i={},u){var d,c,f;const[p,y]=n instanceof ve?[n.definition,n]:[n,Ce(n)],h=null!=(d=null==i.useDataHook?void 0:i.useDataHook(p))?d:Yt,C=i.elementIndex,D=null!=(c=i.schemaInterface)?c:qt,N=null!=(f=i.useEvalExpressionHook)?f:Nt;let b;b=null!=C?u.getChildElement(C):Te(p,u);const x=Ft(p,i.useValidationHook),T=st({defaultValueControl:Ct(N,p),visibleControl:pt(N,p),readonlyControl:yt(N,p),disabledControl:vt(N,p),allowedOptions:mt(N,p),labelText:Lt(N,p),actionData:It(N,p),customStyle:ht(N,A.Style,p),layoutStyle:ht(N,A.LayoutStyle,p),displayControl:gt(N,p)}),S=hn({options:i,definition:p,elementIndex:C,parentDataNode:u,dataNode:b,formNode:y}),E=r(()=>{const n=m();try{var r,i,d,c,f;const{definition:n,options:y,elementIndex:m,parentDataNode:C,dataNode:E,formNode:O}=S.current,A=null!=(r=y.formData)?r:{},I={schemaInterface:D,dataNode:E,parentNode:C,formData:A},{readonlyControl:L,disabledControl:F,visibleControl:k,displayControl:V,layoutStyle:M,labelText:R,customStyle:G,allowedOptions:q,defaultValueControl:j,actionData:H}=T(I),U=k.current.value,B=l(()=>null!=U?{visible:U,showing:U}:void 0);v(()=>k.value,e=>{null!=e&&B.setValue(n=>({visible:e,showing:n?n.showing:e}))});const J=u.control,P=null==(i=b)?void 0:i.control;v(()=>{var e;return[B.value,j.value,null==P?void 0:P.isNull,fe(p)&&p.dontClearHidden,fe(p)&&(null==(e=p.renderOptions)?void 0:e.type)==w.NullToggle,J.isNull,y.hidden,L.value]},([e,n,t,r,o,i,l,a])=>{a||(P?e&&e.visible===e.showing&&(l||!e.visible?P.setValue(e=>y.clearHidden&&!r?void 0:null==e&&r&&!o?n:e):o||P.setValue(e=>null!=e?e:n)):i&&J.setValue(e=>null!=e?e:{}))},!0);const $=a(()=>{var e;return{hidden:y.hidden||!(null!=(e=B.fields)&&e.showing.value),readonly:y.readonly||L.value,disabled:y.disabled||F.value,displayOnly:y.displayOnly||wn(n)}}),_=s($);x({control:null!=P?P:g(null),hiddenControl:$.fields.hidden,dataContext:I});const W=Fe({},y,_,{elementIndex:void 0,formData:A});if(o(()=>{P&&"boolean"==typeof _.disabled&&P.disabled!=_.disabled&&(P.disabled=_.disabled)},[P,_.disabled]),J.isNull)/*#__PURE__*/return e.createElement(e.Fragment,null);const Y=null!=(d=null==(c=p.adornments)?void 0:c.map(e=>t.renderAdornment({adornment:e,dataContext:I,useExpr:N})))?d:[],z=zt({formNode:O,definition:n,renderer:t,renderChild:(r,o,i)=>{var l;const a=Ln(n),u=null!=i?i:{},{parentDataNode:d}=u,c=ke(u,jt),s=null!=(l=null!=d?d:I.dataNode)?l:I.parentNode;/*#__PURE__*/return e.createElement(Wt,{key:r,definition:o,renderer:t,parentDataNode:s,options:Fe({},W,a,c)})},createDataProps:h,formOptions:_,dataContext:I,control:null!=V?V:P,elementIndex:m,schemaInterface:D,labelText:R,displayControl:V,style:G.value,allowedOptions:q,customDisplay:y.customDisplay,actionDataControl:H,actionOnClick:y.actionOnClick,styleClass:y.styleClass,labelClass:y.labelClass,useEvalExpression:N,useChildVisibility:(e,n,t)=>{var r;return pt(N,e,t?void 0:Te(e,null!=(r=null!=n?n:b)?r:u))}}),K=Fe({},z,{adornments:Y,className:Tn(y.layoutClass,n.layoutClass),style:M.value}),Q=t.renderLayout(null!=(f=null==y.adjustLayout?void 0:y.adjustLayout(I,K))?f:K);return t.renderVisibility(Fe({visibility:B},Q))}finally{n()}},[S,h,x,t,D,T]);return E.displayName="RenderControl",E}function _t({definition:n,fields:t,renderer:r,options:o,control:i}){var l=m();try{const l=$t(n,r,o,P(J({"":t}).getSchema(""),i));/*#__PURE__*/return e.createElement(l,null)}finally{l()}}function Wt({definition:n,renderer:t,options:r,parentDataNode:o}){var i=m();try{const i=$t(n,t,r,o);/*#__PURE__*/return e.createElement(i,null)}finally{i()}}function Yt(e){var n,t;let{definition:r,control:o,formOptions:i,style:l,allowedOptions:a,schemaInterface:u=qt,styleClass:d}=e,c=ke(e,Ht);const s=c.dataContext.dataNode,f=s.schema.field,p=Tn(d,r.styleClass),y=!!i.displayOnly,h=!!r.required&&!y,m=u.getDataOptions(s),v=null!=(n=null==a?void 0:a.value)?n:[],g=Array.isArray(v)?v:[v];return Fe({dataNode:s,definition:r,control:o,field:f,id:"c"+o.uniqueId,options:g.length>0?g.map(e=>{var n;return"object"==typeof e?e:null!=(n=null==m?void 0:m.find(n=>n.value==e))?n:{name:e.toString(),value:e}}).filter(e=>null!=e):m,readonly:!!i.readonly,displayOnly:y,renderOptions:null!=(t=r.renderOptions)?t:{type:"Standard"},required:h,hidden:!!i.hidden,className:p,style:l},c)}function zt(e){const{definition:n,renderer:t,renderChild:r,control:o,dataContext:i,createDataProps:l,displayControl:a,style:u,labelText:d,useChildVisibility:c,designMode:s,customDisplay:f,useEvalExpression:p,labelClass:y,styleClass:h,formNode:m}=e;if(fe(n))return O(n);var v,g,C,D;if(pe(n))return n.compoundField?O(kn(n.compoundField,n.title,{children:n.children,hideTitle:null==(D=n.groupOptions)?void 0:D.hideTitle})):{processLayout:t.renderGroup({formNode:m,definition:n,renderChild:r,useEvalExpression:p,dataContext:i,renderOptions:null!=(v=n.groupOptions)?v:{type:"Standard"},className:Tn(h,n.styleClass),useChildVisibility:c,style:u,designMode:s}),label:{label:null!=(g=null==d?void 0:d.value)?g:n.title,className:Tn(y,n.labelClass),type:Jt.Group,hide:null==(C=n.groupOptions)?void 0:C.hideTitle}};if(ye(n)){var N,b,x,T,S;const r=null!=(N=null==(b=e.actionDataControl)?void 0:b.value)?N:n.actionData;return{children:t.renderAction({actionText:null!=(x=null!=(T=null==d?void 0:d.value)?T:n.title)?x:n.actionId,actionId:n.actionId,actionData:r,onClick:null!=(S=null==e.actionOnClick?void 0:e.actionOnClick(n.actionId,r,i))?S:()=>{},className:Tn(h,n.styleClass),style:u})}}if(he(n)){var E;const e=null!=(E=n.displayData)?E:{},r={data:e,className:Tn(h,n.styleClass),style:u,display:a,dataContext:i};return e.type===V.Custom&&f?{children:f(e.customId,r)}:{children:t.renderDisplay(r)}}return{};function O(n){var r,i,a;if(!o)return{children:"No control for: "+n.field};const u=l(e),c=n.hideTitle?void 0:rr(null!=(r=null==d?void 0:d.value)?r:n.title,e.dataContext.dataNode.schema.field);return{processLayout:t.renderData(u),label:{type:(null!=(i=null==(a=n.children)?void 0:a.length)?i:0)>0?Jt.Group:Jt.Control,label:c,forId:u.id,required:n.required&&!e.formOptions.displayOnly,hide:n.hideTitle,className:Tn(y,n.labelClass)},errorControl:o}}}function Kt(n,t){return r=>r[n]=/*#__PURE__*/e.createElement(e.Fragment,null,r[n],t)}function Qt(e,n){return t=>t[e]=n(t[e])}function Xt(e){switch(e){case I.ControlEnd:return"controlEnd";case I.ControlStart:return"controlStart";case I.LabelStart:return"labelStart";case I.LabelEnd:return"labelEnd"}}function Zt(e){return n=>{const t=n.wrapLayout;n.wrapLayout=n=>e(t(n))}}function er(e,n){return Kt(Xt(e),n)}function nr(e,n){return Qt(Xt(e),n)}function tr(e,n){var t;const{className:r,children:o,style:i,errorControl:l,label:a,adornments:u}=null!=(t=null==e.processLayout?void 0:e.processLayout(e))?t:e,d={children:o,errorControl:l,style:i,className:r,wrapLayout:e=>e};return(null!=u?u:[]).sort((e,n)=>e.priority-n.priority).forEach(e=>e.apply(d)),d.label=a&&!a.hide?n.renderLabel(a,d.labelStart,d.labelEnd):void 0,d}function rr(e,n){return e||un(n)}function or(e){var n;const t=null==(n=e.validators)?void 0:n.find(e=>e.type===M.Length);return{min:null==t?void 0:t.min,max:null==t?void 0:t.max}}function ir(e,n,t){var r;const o=null!=(r=n.displayName)?r:n.field,{addText:i,noAdd:l,removeText:a,noRemove:u,removeActionId:d,addActionId:c,disabled:s,readonly:f,designMode:p}=null!=t?t:{};return{arrayControl:e,addAction:f||l?void 0:{actionId:c||"add",actionText:i||"Add "+o,onClick:()=>!p&&C(e,rn(n)),disabled:s},removeAction:f||u?void 0:n=>({actionId:d||"remove",actionText:a||"Remove",onClick:()=>!p&&D(e,n),disabled:s})}}function lr({arrayControl:e,min:n,max:t,addAction:r,removeAction:o,required:i},l){var a,u;const[d,c]=Sn(null!=(a=null==(u=e.elements)?void 0:u.length)?a:0,null==n&&i?1:n,t,!0,!0);return{addAction:l||c?r:void 0,removeAction:l||d?o:void 0,removeDisabled:!d,addDisabled:!c}}function ar(n){return(t,r,o)=>/*#__PURE__*/e.createElement(N,{array:n.formNode.getChildNodes()},(e,r)=>n.renderChild(r,e,{parentDataNode:n.dataContext.parentNode,formData:{option:t,optionSelected:o}}))}function ur(e){return e.type===L.Icon}function dr(e){return e.type===L.Accordion}function cr(e){return e.type===L.SetField}function sr(e,n){return Fe({type:"layout",render:e},n)}function fr(e,n,t){return Fe({type:"action",actionType:e,render:n},t)}function pr(e,n){return Fe({type:"array",render:e},n)}function yr(e,n){return Fe({type:"data",render:e},n)}function hr(e,n){return Fe({type:"group",render:e},n)}function mr(e,n){return Fe({type:"display",render:e},n)}function vr(e,n){return Fe({type:"label",render:e},n)}function gr(e,n){return Fe({type:"visibility",render:e},n)}function Cr(e,n){return Fe({type:"adornment"},n,{render:e})}function Dr(e=[],n){var t;const r=e.filter(xr),o=e.filter(Tr),i=e.filter(br),l=e.filter(Ir),a=e.filter(Sr),u=e.filter(Lr),d=e.filter(Ar),c=e.filter(Er),s={renderAction:function(e){var t;return(null!=(t=d.find(n=>Nr(n.actionType,e.actionId)))?t:n.action).render(e,s)},renderData:function(e){var t;const{renderOptions:{type:o},field:i}=e,l=dn(e),a=(null!=(t=r.find(n=>{var t,r,a;return(null!=(t=n.collection)&&t)===(null==e.elementIndex&&null!=(r=i.collection)&&r)&&(null!=(a=n.options)&&a)===l&&(n.schemaType&&o==w.Standard&&Nr(n.schemaType,i.type)||n.renderType&&Nr(n.renderType,o)||n.match&&n.match(e))}))?t:n.data).render(e,s);return"function"==typeof a?a:e=>Fe({},e,{children:a})},renderGroup:function(e){var t;const r=e.renderOptions.type,i=(null!=(t=o.find(e=>Nr(e.renderType,r)))?t:n.group).render(e,s);return"function"==typeof i?i:e=>Fe({},e,{children:i})},renderDisplay:function(e){var t;const r=e.data.type;return(null!=(t=l.find(e=>Nr(e.renderType,r)))?t:n.display).render(e,s)},renderLabel:f,renderArray:function(e){var t;return(null!=(t=u[0])?t:n.array).render(e,s)},renderAdornment:function(e){var t;return(null!=(t=i.find(n=>Nr(n.adornmentType,e.adornment.type)))?t:n.adornment).render(e,s)},renderLayout:function(e){var t;return(null!=(t=c.find(n=>!n.match||n.match(e)))?t:n.renderLayout).render(e,s)},renderVisibility:(null!=(t=e.find(Or))?t:n.visibility).render,renderLabelText:function(e){return f({label:e,type:Jt.Text},void 0,void 0)}};function f(e,t,r){var o;return(null!=(o=a.find(n=>Nr(n.labelType,e.type)))?o:n.label).render(e,t,r,s)}return s}function Nr(e,n){return null==e||(Array.isArray(e)?e.includes(n):n===e)}function br(e){return"adornment"===e.type}function xr(e){return"data"===e.type}function Tr(e){return"group"===e.type}function Sr(e){return"label"===e.type}function Er(e){return"layout"===e.type}function Or(e){return"visibility"===e.type}function Ar(e){return"action"===e.type}function Ir(e){return"display"===e.type}function Lr(e){return"array"===e.type}!function(e){e[e.Control=0]="Control",e[e.Group=1]="Group",e[e.Text=2]="Text"}(Jt||(Jt={}));export{I as AdornmentPlacement,Ut as AppendAdornmentPriority,L as ControlAdornmentType,O as ControlDefinitionType,_t as ControlRenderer,w as DataRenderType,R as DateComparison,Gt as DefaultSchemaInterface,V as DisplayDataType,A as DynamicPropertyType,G as ExpressionType,T as FieldType,ve as FormNode,k as GroupRenderType,Jt as LabelType,Wt as NewControlRenderer,E as SchemaTags,F as SyncTextType,S as ValidationMessageType,M as ValidatorType,Bt as WrapAdornmentPriority,Bn as accordionOptions,rt as actionControl,Fn as actionHandlers,Qe as addFieldOption,pn as addMissingControls,yn as addMissingControlsForSchema,Mn as adornmentOptions,Kt as appendMarkup,er as appendMarkupAt,lr as applyArrayLengthRestrictions,en as applyDefaultForField,Ze as applyDefaultValues,at as applyExtensionToSchema,ut as applyExtensionsToSchema,Sn as applyLengthRestrictions,$e as boolField,Ve as buildSchema,Gn as checkListOptions,Cn as cleanDataForSchema,An as coerceToString,tt as compoundControl,_e as compoundField,rr as controlTitle,ot as createAction,fr as createActionRenderer,Cr as createAdornmentRenderer,ir as createArrayActions,pr as createArrayRenderer,yr as createDataRenderer,mr as createDisplayRenderer,be as createFormLookup,Dr as createFormRenderer,hr as createGroupRenderer,vr as createLabelRenderer,sr as createLayoutRenderer,J as createSchemaLookup,gr as createVisibilityRenderer,kn as dataControl,Be as dateField,Pe as dateTimeField,Un as dateValidatorOptions,Ye as defaultCompoundField,cn as defaultControlForField,Yt as defaultDataProps,Dt as defaultEvalHooks,We as defaultScalarField,qt as defaultSchemaInterface,Nt as defaultUseEvalExpressionHook,tn as defaultValueForField,nn as defaultValueForFields,Pn as displayOnlyOptions,Ue as doubleField,Yn as dynamicDefaultValue,Qn as dynamicDisabled,zn as dynamicReadonly,Kn as dynamicVisibility,rn as elementValueForField,it as emptyGroupDefinition,un as fieldDisplayName,Zn as fieldEqExpr,Xn as fieldExpr,an as fieldHasTag,ar as fieldOptionAdornment,xe as fieldPathForDefinition,bn as findChildDefinition,ln as findCompoundField,sn as findControlsForCompound,q as findField,En as findFieldPath,fn as findNonDataGroups,on as findScalarField,Dn as getAllReferencedClasses,gn as getDisplayOnlyOptions,Ln as getGroupClassOverrides,In as getGroupRendererOptions,Oe as getJsonPath,or as getLengthRestrictions,xn as getOverrideClass,Ee as getRootDataNode,Ie as getSchemaFieldList,X as getSchemaNodePath,Ae as getSchemaPath,ne as getTagParam,nt as groupedControl,dn as hasOptions,Et as hideDisplayOnly,Wn as htmlDisplayControl,He as intField,dr as isAccordionAdornment,ye as isActionControl,se as isArrayRenderer,me as isCheckEntryClasses,H as isCompoundField,Z as isCompoundNode,vn as isControlDisabled,wn as isControlDisplayOnly,mn as isControlReadonly,fe as isDataControl,ce as isDataGroupRenderer,he as isDisplayControl,ue as isDisplayOnlyRenderer,ae as isFlexRenderer,oe as isGridRenderer,pe as isGroupControl,ur as isIconAdornment,j as isScalarField,ie as isSelectChildRenderer,cr as isSetFieldAdornment,le as isTabsRenderer,de as isTextfieldRenderer,Nn as jsonPathString,et as jsonataExpr,$n as jsonataOptions,Hn as jsonataValidatorOptions,Xt as layoutKeyForPlacement,Ce as legacyFormNode,jn as lengthValidatorOptions,Te as lookupDataNode,je as makeCompoundField,bt as makeEvalExpressionHook,dt as makeHook,ct as makeHookDepString,te as makeParamTag,qe as makeScalarField,P as makeSchemaDataNode,St as matchesType,ze as mergeField,Ke as mergeFields,On as mergeObjects,ge as nodeForControl,qn as radioButtonOptions,ee as relativePath,zt as renderControlLayout,tr as renderLayoutParts,Rn as renderOptionsFor,Tn as rendererClass,Xe as resolveSchemas,Q as rootSchemaNode,z as schemaDataForFieldPath,$ as schemaDataForFieldRef,K as schemaForFieldPath,_ as schemaForFieldRef,Me as stringField,Re as stringOptionsField,_n as textDisplayControl,Jn as textfieldOptions,Je as timeField,ft as toDepString,Y as traverseData,Se as traverseParents,W as traverseSchemaPath,lt as useControlDefinitionForSchema,Pt as useControlRenderer,$t as useControlRendererComponent,Rt as useDateValidator,st as useDynamicHooks,It as useEvalActionHook,mt as useEvalAllowedOptionsHook,Ct as useEvalDefaultValueHook,vt as useEvalDisabledHook,gt as useEvalDisplayHook,xt as useEvalDynamicBoolHook,Tt as useEvalDynamicHook,Lt as useEvalLabelText,yt as useEvalReadonlyHook,ht as useEvalStyleHook,pt as useEvalVisibilityHook,At as useJsonataExpression,Vt as useJsonataValidator,Mt as useLengthValidator,Ft as useMakeValidationHook,hn as useUpdatedRef,Ot as useUuidExpression,Vn as validatorOptions,we as visitControlData,Le as visitControlDataArray,re as visitControlDefinition,Ge as withScalarOptions,Zt as wrapLayout,Qt as wrapMarkup,nr as wrapMarkupAt};
|
|
1
|
+
import e,{useRef as n,useMemo as t,useCallback as r,useEffect as o}from"react";import i from"clsx";import{useControl as l,useComputed as a,useRefState as u,SubscriptionTracker as d,addAfterChangesCallback as c,trackedValue as s,collectChanges as f,useCalculatedControl as p,useValueChangeEffect as y,useValidator as h,useComponentTracking as m,useControlEffect as v,newControl as g,addElement as C,removeElement as D,RenderArrayElements as N}from"@react-typed-forms/core";import b from"jsonata";import{v4 as x}from"uuid";var T,S,E,O,A,I,L,w,F,k,V,M,R,G;function q(e,n){return e.find(e=>e.field===n)}function j(e){return!H(e)}function H(e){return e.type===T.Compound}function U(e){return{field:"__missing",type:T.Any,displayName:e}}function B(e,n,t){const r={id:t?t.id+"/"+e.field:e.field,field:e,getSchema:n.getSchema,parent:t,getChildNode:function(t){if(H(e)&&!e.schemaRef&&!e.treeChildren){const o=e.children.find(e=>e.field===t);return o?B(o,n,r):void 0}return o(!1,r).find(e=>e.field.field===t)},getChildNodes:o};return r;function o(o,i){if(H(e)){if(e.treeChildren)return o?[]:t.getChildNodes(!1,null!=i?i:r);const l=e.schemaRef&&n.getSchema(e.schemaRef);return l?l.getChildNodes(!1,null!=i?i:r):e.children.map(e=>B(e,n,null!=i?i:r))}return[]}}function J(e){const n={getSchema:function(t){const r=e[t];if(r)return Q(r,n)}};return n}function P(e,n,t,r){const o={id:(t?t.id+"/"+e.field.field:e.field.field)+("number"==typeof r?"/"+r:""),schema:e,control:n,parent:t,elementIndex:r,getChild:function(e){const t=n;return t&&t.current.isNull&&(t.value={}),P(e,null==t?void 0:t.fields[e.field.field],o)},getChildElement:function(t){var r;return P(e,null==n||null==(r=n.elements)?void 0:r[t],o,t)}};return o}function $(e,n){var t;return z(null!=(t=null==e?void 0:e.split("/"))?t:[],n)}function _(e,n){var t;return K(null!=(t=null==e?void 0:e.split("/"))?t:[],n)}function W(e,n,t,r){let o=0;for(;o<e.length;){const i=e[o];let l=".."===i?n.parent:n.getChildNode(i);l||(l=B(U(i),n,n)),t=r(t,l),n=l,o++}return t}function Y(e,n,t){return W(e,n,t,(e,n)=>null==e?void 0:e[n.field.field])}function z(e,n){let t=0;for(;t<e.length;){const o=e[t];let i=".."===o?n.parent:r(o);null!=i||(i=P(B(U(o),n.schema,n.schema))),n=i,t++}return n;function r(e){const t=n.schema.getChildNode(e);if(t)return n.getChild(t)}}function K(e,n){let t=0;for(;t<e.length;){const r=e[t];let o=".."===r?n.parent:n.getChildNode(r);o||(o=B(U(r),n,n)),n=o,t++}return n}function Q(e,n={getSchema(e){}}){return B({type:T.Compound,field:"",children:e},n,void 0)}function X(e){const n=[];let t=e;for(;t;)n.push(t.field.field),t=t.parent;return n.reverse()}function Z(e){return H(e.field)}function ee(e,n){if(e.id===n.id)return"";const t=X(e),r=X(n);let o=0;for(;o<t.length&&o<r.length&&t[o]===r[o];)o++;const i=t.length-o,l=r.slice(o).join("/");return"../".repeat(i)+l}function ne(e,n){var t;return null==(t=e.tags)||null==(t=t.find(e=>e.startsWith(n)))?void 0:t.substring(n.length)}function te(e,n){return`${e}${n}`}function re(e,n,t){switch(e.type){case O.Action:return n.action(e);case O.Data:return n.data(e);case O.Display:return n.display(e);case O.Group:return n.group(e);default:return t(e)}}function oe(e){return e.type===k.Grid}function ie(e){return e.type===k.SelectChild}function le(e){return e.type===k.Tabs}function ae(e){return e.type===k.Flex}function ue(e){return e.type===w.DisplayOnly}function de(e){return e.type===w.Textfield}function ce(e){return(null==e?void 0:e.type)===w.Group}function se(e){return e.type===w.Array}function fe(e){return e.type===O.Data}function pe(e){return e.type===O.Group}function ye(e){return e.type===O.Action}function he(e){return e.type===O.Display}function me(e){switch(null==e?void 0:e.type){case w.Radio:case w.CheckList:return!0;default:return!1}}!function(e){e.String="String",e.Bool="Bool",e.Int="Int",e.Date="Date",e.DateTime="DateTime",e.Time="Time",e.Double="Double",e.EntityRef="EntityRef",e.Compound="Compound",e.AutoId="AutoId",e.Image="Image",e.Any="Any"}(T||(T={})),function(e){e.NotEmpty="NotEmpty",e.MinLength="MinLength",e.MaxLength="MaxLength",e.NotAfterDate="NotAfterDate",e.NotBeforeDate="NotBeforeDate"}(S||(S={})),function(e){e.NoControl="_NoControl",e.HtmlEditor="_HtmlEditor",e.ControlGroup="_ControlGroup:",e.ControlRef="_ControlRef:"}(E||(E={})),function(e){e.Data="Data",e.Group="Group",e.Display="Display",e.Action="Action"}(O||(O={})),function(e){e.Visible="Visible",e.DefaultValue="DefaultValue",e.Readonly="Readonly",e.Disabled="Disabled",e.Display="Display",e.Style="Style",e.LayoutStyle="LayoutStyle",e.AllowedOptions="AllowedOptions",e.Label="Label",e.ActionData="ActionData"}(A||(A={})),function(e){e.ControlStart="ControlStart",e.ControlEnd="ControlEnd",e.LabelStart="LabelStart",e.LabelEnd="LabelEnd"}(I||(I={})),function(e){e.Tooltip="Tooltip",e.Accordion="Accordion",e.HelpText="HelpText",e.Icon="Icon",e.SetField="SetField"}(L||(L={})),function(e){e.Standard="Standard",e.Textfield="Textfield",e.Radio="Radio",e.HtmlEditor="HtmlEditor",e.IconList="IconList",e.CheckList="CheckList",e.UserSelection="UserSelection",e.Synchronised="Synchronised",e.IconSelector="IconSelector",e.DateTime="DateTime",e.Checkbox="Checkbox",e.Dropdown="Dropdown",e.DisplayOnly="DisplayOnly",e.Group="Group",e.NullToggle="NullToggle",e.Jsonata="Jsonata",e.Array="Array"}(w||(w={})),function(e){e.Camel="Camel",e.Snake="Snake",e.Pascal="Pascal"}(F||(F={})),function(e){e.Standard="Standard",e.Grid="Grid",e.Flex="Flex",e.Tabs="Tabs",e.GroupElement="GroupElement",e.SelectChild="SelectChild"}(k||(k={})),function(e){e.Text="Text",e.Html="Html",e.Icon="Icon",e.Custom="Custom"}(V||(V={}));class ve{constructor(e,n,t,r,o){this.id=void 0,this.definition=void 0,this.tree=void 0,this.parent=void 0,this.overrideChildren=void 0,this.id=e,this.definition=n,this.tree=t,this.parent=r,this.overrideChildren=o,this.id=e,this.definition=n}getChildNodes(){var e,n;if(this.overrideChildren)return this.overrideChildren;let t=this.definition.children;if(this.definition.childRefId){const e=this.tree.controlMap[this.definition.childRefId];t=null==e?void 0:e.children}return null!=(e=null==(n=t)?void 0:n.map((e,n)=>new ve(this.id+"/"+n,e,this.tree,this)))?e:[]}withOverrideChildren(e){return new ve(this.id,this.definition,this.tree,this.parent,e.map(e=>ge(e,this.tree)))}}function ge(e,n,t,r){return new ve(r?r.id+"/"+t:"",e,n,r)}function Ce(e){return be({$legacy:[e]}).getForm("$legacy").rootNode.getChildNodes()[0]}function De(e){var n,t;const r=null!=(n=null==(t=e.children)?void 0:t.flatMap(De))?n:[];return e.id?[[e.id,e],...r]:r}function Ne(e,n){const t={getForm:n,controlMap:Object.fromEntries(e.flatMap(De))};return t.rootNode=ge({children:e,type:O.Group},t),t}function be(e){const n={getForm:function(e){return t[e]}},t=Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Ne(t,n)]));return n}function xe(e){const n=pe(e)?e.compoundField:fe(e)?e.field:void 0;return null==n?void 0:n.split("/")}function Te(e,n){const t=xe(e);return t?z(t,n):void 0}function Se(e,n,t){let r=[];for(;e&&(null==t||!t(e));)r.push(n(e)),e=e.parent;return r.reverse()}function Ee(e){for(;e.parent;)e=e.parent;return e}function Oe(e){return Se(e,e=>null==e.elementIndex?e.schema.field.field:e.elementIndex,e=>!e.parent)}function Ae(e){return Se(e,e=>e.field,e=>!e.parent)}function Ie(e){return e.getChildNodes().map(e=>e.field)}function Le(e,n,t){if(e)for(const r of e){const e=we(r,n,t);if(void 0!==e)return e}}function we(e,n,t){if(n.control&&!n.control.isNull)return re(e,{data:e=>r(e),group:e=>r(e),action:()=>{},display:()=>{}},()=>{});function r(e){const r=e.children,o=Te(e,n);if(!o)return Le(r,n,t);const i=fe(e)?e:void 0,l=i?t(i,o):void 0;if(void 0!==l)return l;const a=o.schema,u=H(a.field);if(a.field.collection){const e=o.control;let n=0;for(const l of null!=(d=e.elements)?d:[]){var d;const e=o.getChildElement(n),l=i?t(i,e):void 0;if(void 0!==l)return l;if(u){const n=Le(r,e,t);if(void 0!==n)return n}n++}}else if(u)return Le(r,o,t)}}function Fe(){return Fe=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},Fe.apply(null,arguments)}function ke(e,n){if(null==e)return{};var t={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(n.includes(r))continue;t[r]=e[r]}return t}function Ve(e){return Object.entries(e).map(e=>e[1](e[0]))}function Me(e,n){return qe(Fe({type:T.String,displayName:e},n))}function Re(e,...n){return qe({type:T.String,displayName:e,options:n})}function Ge(e,n){return t=>Fe({},n(t),e)}function qe(e){return n=>Fe({},We(n,n),e)}function je(e){return n=>Fe({},Ye(n,n,!1),e)}function He(e,n){return qe(Fe({type:T.Int,displayName:e},n))}function Ue(e,n){return qe(Fe({type:T.Double,displayName:e},n))}function Be(e,n){return qe(Fe({type:T.Date,displayName:e},n))}function Je(e,n){return qe(Fe({type:T.Time,displayName:e},n))}function Pe(e,n){return qe(Fe({type:T.DateTime,displayName:e},n))}function $e(e,n){return qe(Fe({type:T.Bool,displayName:e},n))}function _e(e,n,t){return r=>Fe({},Ye(r,e,!1),t,{children:n})}function We(e,n){return{field:e,displayName:n,type:T.String}}function Ye(e,n,t){return{field:e,displayName:n,type:T.Compound,collection:t,children:[]}}function ze(e,n){const t=n.find(n=>n.field===e.field);return t?n.map(n=>n!==t?n:Fe({},n,{onlyForTypes:r(n.onlyForTypes,e.onlyForTypes)})):[...n,e];function r(e,n){if(!e)return n;if(!n)return e;const t=n.filter(n=>!e.includes(n));return t.length?[...e,...t]:e}}function Ke(e,n,t,r){const o=e.map(e=>e.isTypeField?Qe(e,n,t):e);return r.map(e=>Fe({},e,{onlyForTypes:[t]})).reduce((e,n)=>ze(n,e),o)}function Qe(e,n,t){var r;const o=null!=(r=e.options)?r:[];return o.some(e=>e.value===t)?e:Fe({},e,{options:[...o,{name:n,value:t}]})}function Xe(e){const n={};return Object.keys(e).forEach(function t(r){if(r in n)return n[r];const o=[];return n[r]=o,e[r].forEach(e=>{H(e)&&e.schemaRef?o.push(Fe({},e,{children:t(e.schemaRef)})):o.push(e)}),o}),n}function Ze(e,n,t){if(!e)return nn(n);if(t&&t.has(e))return e;null!=t||(t=new Set),t.add(e);const r=n.filter(n=>H(n)||!(n.field in e));if(!r.length)return e;const o=Fe({},e);return r.forEach(r=>{o[r.field]=r.field in e?en(e[r.field],r,n,!1,t):tn(r)}),o}function en(e,n,t,r,o){return n.collection&&!r?(null!=e?e:[]).map(e=>en(e,n,t,!0,o)):H(n)?e||n.required?Ze(e,n.treeChildren?t:n.children,o):e:tn(n)}function nn(e){return Object.fromEntries(e.map(e=>[e.field,tn(e)]))}function tn(e,n){if(void 0!==e.defaultValue)return e.defaultValue;const t=!(!n&&!e.required);if(H(e)){if(t){const n=nn(e.children);return e.collection?[n]:n}return e.notNullable?e.collection?[]:{}:void 0}return e.collection&&e.notNullable?[]:void 0}function rn(e){return H(e)?nn(e.children):e.defaultValue}function on(e,n){return q(e,n)}function ln(e,n){return q(e,n)}function an(e,n){var t;return Boolean(null==(t=e.tags)?void 0:t.includes(n))}function un(e){var n;return null!=(n=e.displayName)?n:e.field}function dn(e){var n,t;return(null!=(n=null==(t=e.options)?void 0:t.length)?n:0)>0}function cn(e,n){if(H(e)){const t=ne(e,E.ControlRef);return{type:O.Data,title:e.displayName,field:e.field,required:e.required,childRefId:t,children:n||t?void 0:e.children.filter(e=>!an(e,E.NoControl)).map(e=>cn(e))}}if(j(e)){const n=an(e,E.HtmlEditor);return{type:O.Data,title:e.displayName,field:e.field,required:e.required,renderOptions:{type:n?w.HtmlEditor:w.Standard}}}throw"Unknown schema field"}function sn(e,n){return fe(n)&&e.field.field===n.field?[n]:pe(n)?n.compoundField===e.field.field?[n]:null!=(t=null==(r=n.children)?void 0:r.flatMap(n=>sn(e,n)))?t:[]:[];var t,r}function fn(e){return e.flatMap(e=>{var n;return pe(e)&&!e.compoundField?[e,...fn(null!=(n=e.children)?n:[])]:[]})}function pn(e,n){return yn(Q(e),n)}function yn(e,n){const t={},r={},o=n.map(n=>l(n,e));return i("",{schema:e,children:o}),o.forEach(function e(n){if(n.children.forEach(e),n.control.childRefId){const e=t[n.control.childRefId];if(e)return void e.children.forEach(e=>l(e.control,n.schema,n,!0));console.warn("Missing reference",n.control.childRefId)}}),e.getChildNodes().forEach(function e(n){if(!an(n.field,E.NoControl)){if(!r[n.id]){const e=function(e){const n=[];let t=e.parent;for(;t&&(n.push(t.id),!t.field.collection);)t.parent||t.getChildNodes(!0).forEach(r),t=t.parent;return n;function r(e){Z(e)&&!e.field.collection&&(n.push(e.id),e.getChildNodes(!0).forEach(r))}}(n),i=ne(n.field,E.ControlGroup);let a=i?t[i]:void 0;var o;if(!a&&i&&console.warn("No group '"+i+"' for "+n.id),a&&e.indexOf(a.schema.id)<0&&(console.warn(`Target group '${i}' is not an eligible parent for '${n.id}'`),a=void 0),!a&&e.length&&(a=null==(o=r[e[0]])?void 0:o[0]),a){const e=cn(n.field,!0);e.field=ee(a.schema,n),a.children.push(l(e,a.schema,a))}else console.warn("Could not find a parent group for: "+n.id)}n.getChildNodes(!0).forEach(e)}}),o.map(function e(n){const t=n.children.length?n.children.map(e):null;return Fe({},n.control,{children:t})});function i(e,n){r[e]||(r[e]=[]),r[e].push(n)}function l(e,n,r,o){var a,u;const d=xe(e);let c=d?K(d,n):void 0;pe(e)&&null==c&&(c=n);const s={schema:c,control:e,children:[],parent:r};return s.children=null!=(a=null==(u=e.children)?void 0:u.map(e=>{var t;return l(e,null!=(t=c)?t:n,s,o)}))?a:[],!o&&e.id&&(t[e.id]=s),c&&i(c.id,s),s}}function hn(e){const t=n(e);return t.current=e,t}function mn(e){return fe(e)&&!!e.readonly}function vn(e){return fe(e)&&!!e.disabled}function gn(e){return fe(e)&&e.renderOptions&&ue(e.renderOptions)?e.renderOptions:void 0}function Cn(e,n,t){if(!e)return e;const r=n.find(e=>e.isTypeField),o=r?e[r.field]:void 0,i=t?n:n.filter(e=>{var n,t;return H(e)||(null!=(n=null==(t=e.onlyForTypes)?void 0:t.length)?n:0)>0});if(!i.length)return e;const l=Fe({},e);return i.forEach(r=>{var i;const a=e[r.field];if(!1===(null==(i=r.onlyForTypes)?void 0:i.includes(o))||!r.notNullable&&(t&&r.defaultValue===a||r.collection&&Array.isArray(a)&&!a.length))delete l[r.field];else if(H(r)){const e=r.treeChildren?n:r.children;r.collection?Array.isArray(a)&&(l[r.field]=a.map(n=>Cn(n,e,t))):l[r.field]=Cn(a,e,t)}}),l}function Dn(e,n){var t,r;const o=null==(t=e.children)?void 0:t.flatMap(e=>Dn(e,n)),l=Ln(e),{entryWrapperClass:a,selectedClass:u,notSelectedClass:d}=fe(e)&&me(e.renderOptions)?e.renderOptions:{},c=i([e.styleClass,e.layoutClass,e.labelClass,...Object.values(l),...null!=(r=null==n?void 0:n(e))?r:[],a,u,d].map(xn));return o&&!c?o:c?o?[c,...o]:[c]:[]}function Nn(e,n){let t="";return e.forEach((e,r)=>{var o;"number"==typeof e?t+=null!=(o=null==n?void 0:n(e))?o:"["+e+"]":(r>0&&(t+="."),t+=e)}),t}function bn(e,n){if(Array.isArray(n)){let t=e;return n.forEach(e=>t=t.children[e]),t}return e.children[n]}function xn(e){return e&&e.startsWith("@ ")?e.substring(2):e}function Tn(e,n){if(xn(n)!==n)return n||void 0;const t=xn(e);return t===e?i(e,n):t||void 0}function Sn(e,n,t,r,o){return[null==n||e>n?r:void 0,null==t||e<t?o:void 0]}function En(e,n){if(!n)return;const t=n.split("/"),r=[];let o=0,i=e;for(;o<t.length&&i;){const e=q(i,t[o]);if(!e)return;r.push(e),i=H(e)&&!e.collection?e.children:void 0,o++}return r.length===t.length?r:void 0}function On(e,n,t=(e,n,t)=>null!=n?n:t){if(!e)return n;if(!n)return e;const r=Fe({},e);for(const o in n)n.hasOwnProperty(o)&&(r[o]=t(o,e[o],n[o]));return r}function An(e){return null==e?"":"object"==typeof e?"error: "+JSON.stringify(e):e.toString()}function In(e){return pe(e)?e.groupOptions:fe(e)&&ce(e.renderOptions)?e.renderOptions.groupOptions:void 0}function Ln(e){let n=In(e);if(!n)return{};const{childLayoutClass:t,childStyleClass:r,childLabelClass:o}=n,i={};return t&&(i.layoutClass=t),r&&(i.styleClass=r),o&&(i.labelClass=o),i}function wn(e){var n;return Boolean(null==(n=In(e))?void 0:n.displayOnly)}function Fn(...e){return(n,t,r)=>{for(let i=0;i<e.length;i++){var o;const l=null==(o=e[i])?void 0:o.call(e,n,t,r);if(l)return l}}}function kn(e,n,t){return Fe({type:O.Data,field:e,title:n},t)}function Vn(e){return n=>Fe({type:e},n)}function Mn(e){return n=>Fe({type:e},n)}function Rn(e){return n=>({renderOptions:Fe({type:e},n)})}!function(e){e.Jsonata="Jsonata",e.Date="Date",e.Length="Length"}(M||(M={})),function(e){e.NotBefore="NotBefore",e.NotAfter="NotAfter"}(R||(R={})),function(e){e.Jsonata="Jsonata",e.Data="Data",e.DataMatch="FieldValue",e.UserMatch="UserMatch",e.NotEmpty="NotEmpty",e.UUID="UUID"}(G||(G={}));const Gn=Rn(w.CheckList),qn=Rn(w.Radio),jn=Vn(M.Length),Hn=Vn(M.Jsonata),Un=Vn(M.Date),Bn=Mn(L.Accordion),Jn=Rn(w.Textfield),Pn=Rn(w.DisplayOnly),$n=Rn(w.Jsonata);function _n(e,n){return Fe({type:O.Display,displayData:{type:V.Text,text:e}},n)}function Wn(e,n){return Fe({type:O.Display,displayData:{type:V.Html,html:e}},n)}function Yn(e){return{type:A.DefaultValue,expr:e}}function zn(e){return{type:A.Readonly,expr:e}}function Kn(e){return{type:A.Visible,expr:e}}function Qn(e){return{type:A.Disabled,expr:e}}function Xn(e){return{type:G.Data,field:e}}function Zn(e,n){return{type:G.DataMatch,field:e,value:n}}function et(e){return{type:G.Jsonata,expression:e}}function nt(e,n,t){return Fe({type:O.Group,children:e,title:n,groupOptions:{type:"Standard",hideTitle:!n}},t)}function tt(e,n,t,r){return Fe({type:O.Data,field:e,children:t,title:n,renderOptions:{type:"Standard"}},r)}function rt(e,n,t){return Fe({type:O.Action,title:e,actionId:n},t)}function ot(e,n,t,r){return Fe({actionId:e,onClick:n,actionText:null!=t?t:e},r)}const it={type:O.Group,children:[],groupOptions:{type:k.Standard,hideTitle:!0}};function lt(e,n=it){return t(()=>{var t;return Fe({},n,{children:pn(e,null!=(t=n.children)?t:[])})},[e,n])}function at(e,n){const t=Fe({},e);return Object.entries(n).forEach(([e,n])=>{t[e]=(Array.isArray(n)?n:[n]).reduce((e,n)=>{var t;return Ke(e,n.name,n.value,null!=(t=n.fields)?t:[])},t[e])}),t}function ut(e,n){return Xe(n.reduce(at,e))}function dt(e,n,t){return{deps:t,state:n,runHook:e}}function ct(e,n){return e.map(e=>ft(n(e))).join(",")}function st(e){const t=Object.entries(e),o=ct(t,e=>e[1].deps),i=n({}),l=i.current;return t.forEach(e=>l[e[0]]=e[1].state),r(e=>Object.fromEntries(t.map(([n,t])=>[n,t.runHook(e,i.current[n])])),[o])}function ft(e){return void 0===e?"_":null===e?"~":e.toString()}function pt(e,n,t){return wt(xt(n,A.Visible,e),(e,{definition:n,overrideDataNode:t})=>a(()=>{const r=null!=t?t:e.dataNode;return!r||St(r)&&!Et(r,e.schemaInterface,n)}),{definition:n,overrideDataNode:t})}function yt(e,n){return wt(xt(n,A.Readonly,e),(e,{definition:n})=>p(()=>mn(n)),{definition:n})}function ht(e,n,t){return wt(Tt(t,n,e),()=>l(void 0),void 0)}function mt(e,n){return wt(Tt(n,A.AllowedOptions,e),()=>l([]),void 0)}function vt(e,n){return wt(xt(n,A.Disabled,e),e=>a(()=>{var t,r;const o=null==(t=e.dataNode)?void 0:t.control;return!1===(null==o||null==(r=o.meta.nullControl)?void 0:r.value)||vn(n)}),void 0)}function gt(e,n){return Tt(n,A.Display,e)}function Ct(e,n){return wt(Tt(n,A.DefaultValue,e),(e,{definition:n})=>a(function(){var t;const[r,o]=fe(n)?[n.required,n.defaultValue]:[!1,void 0],i=null==(t=e.dataNode)?void 0:t.schema.field;return null!=o?o:i?null!=e.dataNode.elementIndex?rn(i):tn(i,r):void 0}),{definition:n})}function Dt(e,n,t){switch(e.type){case G.Jsonata:const r=a(()=>({formData:n.formData}));return At(e.expression,Ee(n.parentNode).control,Oe(n.parentNode),r,t);case G.UUID:return Ot(t);case G.Data:return function(e,n,t=e=>e){const r=$(e.field,n);return p(()=>{var e;return t(null==(e=r.control)?void 0:e.value)})}(e,n.parentNode,t);case G.DataMatch:return function(e,n,t=e=>e){const r=$(e.field,n);return p(()=>{var n;const o=null==(n=r.control)?void 0:n.value;return t(Array.isArray(o)?o.includes(e.value):o===e.value)})}(e,n.parentNode,t);case G.NotEmpty:return function(e,n,t,r=e=>e){const o=$(e.field,n);return p(()=>{var e;const n=null==(e=o.control)?void 0:e.value,i=o.schema.field;return r(i&&!t.isEmptyValue(i,n))})}(e,n.parentNode,n.schemaInterface,t);default:return l(void 0)}}const Nt=bt(Dt);function bt(e){return(n,t)=>({deps:null==n?void 0:n.type,state:n&&n.type?n:void 0,runHook:(n,r)=>r?e(r,n,t):void 0})}function xt(e,n,t){return Tt(e,n,t,e=>Boolean(e))}function Tt(e,n,t,r=e=>e){var o;const i=null==(o=e.dynamic)?void 0:o.find(e=>e.type===n);return t(null==i?void 0:i.expr,r)}function St(e){const n=e.schema.field.onlyForTypes;if(null==n||0===n.length)return!0;const t=e.parent,r=t.schema.getChildNodes().find(e=>e.field.isTypeField);if(null==r)return!0;const o=t.getChild(r).control;return o&&n.includes(o.value)}function Et(e,n,t){var r;const o=gn(t);return o&&!o.emptyText&&n.isEmptyValue(e.schema.field,null==(r=e.control)?void 0:r.value)}function Ot(e=e=>e){return l(()=>e(x()))}function At(e,r,i,a,p=e=>e){const y=Nn(i,e=>`#$i[${e}]`),h=y?y+".("+e+")":e,m=t(()=>{try{return b(e?h:"null")}catch(e){return console.error(e),b("null")}},[h]),v=l(),g=n(),C=n(0),[D]=u(()=>new d(()=>{const e=g.current;e&&(g.current=void 0,c(()=>{g.current=e,e()}))}));return o(()=>{async function e(){const e=D.current;try{C.current++,v.value=p(await m.evaluate(s(r,e.collectUsage),f(e.collectUsage,()=>null==a?void 0:a.value)))}finally{--C.current||e.update()}}g.current=e,e()},[m]),o(()=>()=>{g.current=void 0,D.current.cleanup()},[]),v}function It(e,n){return wt(Tt(n,A.ActionData,e),()=>l(null),void 0)}function Lt(e,n){return wt(Tt(n,A.Label,e),()=>l(null),void 0)}function wt(e,n,t,r){return{deps:void 0===r?e.deps:[r,e.deps].map(ft).join(),runHook:(t,r)=>{var o,i;return null!=(o=null==(i=e.runHook(t,r[0]))?void 0:i.as())?o:n(t,r[1])},state:[e.state,t]}}function Ft(e,n=kt){var t;const o=fe(e)?e:void 0,i=hn({dd:o,useValidatorFor:n}),l=o?ct(null!=(t=o.validators)?t:[],e=>e.type):"~";return r(e=>{var t,r,o;const{dd:l}=i.current;if(!l)return;const a=null!=(t=null==(r=e.dataContext.dataNode)?void 0:r.schema.field)?t:{field:"__missing",type:T.Any},{control:u,hiddenControl:d,dataContext:{schemaInterface:c}}=e;y(u,()=>u.setError("default","")),l.required&&h(u,e=>!d.value&&c.isEmptyValue(a,e)?c.validationMessageText(a,S.NotEmpty,!1,!0):null,"required"),null==(o=l.validators)||o.forEach((t,r)=>n(t,Fe({},e,{index:r,field:a,definition:l})))},[!!o,null==o?void 0:o.required,l,n])}function kt(e,n){switch(e.type){case M.Length:Mt(e,n);break;case M.Jsonata:Vt(e,n);break;case M.Date:Rt(e,n)}}function Vt(e,n){const t=n.dataContext.parentNode,r=At(e.expression,Ee(t).control,Oe(t),void 0,e=>null==e?null:"string"==typeof e?e:JSON.stringify(e));h(n.control,()=>n.hiddenControl.value?null:r.value,"jsonata"+n.index)}function Mt(e,n){const{control:t,dataContext:{schemaInterface:r},hiddenControl:o,field:i}=n;h(t,n=>{const l=r.controlLength(i,t);if(!o.value)if(null!=e.min&&l<e.min){if(null==i||!i.collection)return r.validationMessageText(i,S.MinLength,l,e.min);t.setValue(n=>Array.isArray(n)?n.concat(Array.from({length:e.min-n.length})):Array.from({length:e.min}))}else if(null!=e.max&&l>e.max)return r.validationMessageText(i,S.MaxLength,l,e.max)},"length"+n.index)}function Rt(e,n){const{control:t,field:r,index:o,dataContext:{schemaInterface:i}}=n;let l;if(e.fixedDate)l=i.parseToMillis(r,e.fixedDate);else{const n=new Date;l=Date.UTC(n.getFullYear(),n.getMonth(),n.getDate()),e.daysFromCurrent&&(l+=864e5*e.daysFromCurrent)}h(t,n=>{if(n){const t=i.parseToMillis(r,n),o=e.comparison===R.NotAfter;if(o?t>l:t<l)return i.validationMessageText(r,o?S.NotAfterDate:S.NotBeforeDate,t,l)}return null},"date"+o)}class Gt{constructor(e=["No","Yes"],n=e=>Date.parse(e)){this.boolStrings=void 0,this.parseDateTime=void 0,this.boolStrings=e,this.parseDateTime=n}parseToMillis(e,n){return this.parseDateTime(n)}validationMessageText(e,n,t,r){switch(n){case S.NotEmpty:return"Please enter a value";case S.MinLength:return"Length must be at least "+r;case S.MaxLength:return"Length must be less than "+r;case S.NotBeforeDate:return`Date must not be before ${new Date(r).toDateString()}`;case S.NotAfterDate:return`Date must not be after ${new Date(r).toDateString()}`;default:return"Unknown error"}}getDataOptions(e){return this.getNodeOptions(e.schema)}getNodeOptions(e){return this.getOptions(e.field)}getOptions({options:e}){return e&&e.length>0?e:null}getFilterOptions(e,n){return this.getNodeOptions(n)}isEmptyValue(e,n){if(e.collection)return Array.isArray(n)?0===n.length:null==n;switch(e.type){case T.String:case T.DateTime:case T.Date:case T.Time:return!n;default:return null==n}}searchText(e,n){var t,r;return null!=(t=null==(r=this.textValue(e,n))?void 0:r.toLowerCase())?t:""}textValue(e,n,t){const r=this.getOptions(e),o=null==r?void 0:r.find(e=>e.value===n);if(o)return o.name;switch(e.type){case T.Date:return n?new Date(n).toLocaleDateString():void 0;case T.DateTime:return n?new Date(this.parseToMillis(e,n)).toLocaleString():void 0;case T.Time:return n?new Date("1970-01-01T"+n).toLocaleTimeString():void 0;case T.Bool:return this.boolStrings[n?1:0];default:return null!=n?n.toString():void 0}}controlLength(e,n){var t,r;return e.collection?null!=(t=null==(r=n.elements)?void 0:r.length)?t:0:this.valueLength(e,n.value)}valueLength(e,n){var t;return null!=(t=n&&(null==n?void 0:n.length))?t:0}compareValue(e,n,t){if(null==n)return null==t?0:1;if(null==t)return-1;switch(e.type){case T.Date:case T.DateTime:case T.Time:case T.String:return n.localeCompare(t);case T.Bool:return n?t?0:1:-1;case T.Int:case T.Double:return n-t;default:return 0}}compoundFieldSetup(e){return e.getChildNodes().map(e=>{const{field:n}=e.field;return[n,this.makeControlSetup(e)]})}compoundFieldEquality(e){return e.getChildNodes().map(e=>{const{field:n}=e.field;return[n,(t,r)=>this.makeEqualityFunc(e)(t[n],r[n])]})}makeEqualityFunc(e,n){if(e.field.collection&&!n){const n=this.makeEqualityFunc(e,!0);return(e,t)=>{if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!n(e[r],t[r]))return!1;return!0}}if(e.field.type===T.Compound){const n=this.compoundFieldEquality(e);return(e,t)=>e===t||null!=e&&null!=t&&n.every(n=>n[1](e,t))}return(e,n)=>e===n}makeControlSetup(e,n){let t={equals:this.makeEqualityFunc(e,n)};return e.field.collection&&!n?(t.elems=this.makeControlSetup(e,!0),t):(e.field.type===T.Compound&&(t.fields=Object.fromEntries(this.compoundFieldSetup(e))),t)}}const qt=new Gt,jt=["parentDataNode"],Ht=["definition","control","formOptions","style","allowedOptions","schemaInterface","styleClass"],Ut=0,Bt=1e3;var Jt;function Pt(n,t,o,i={}){const l=hn({definition:n,fields:t,renderer:o,options:i});return r(({control:n,parentPath:t})=>/*#__PURE__*/e.createElement(_t,Fe({},l.current,{control:n,parentPath:t})),[l])}function $t(n,t,i={},u){var d,c,f;const[p,y]=n instanceof ve?[n.definition,n]:[n,Ce(n)],h=null!=(d=null==i.useDataHook?void 0:i.useDataHook(p))?d:Yt,C=i.elementIndex,D=null!=(c=i.schemaInterface)?c:qt,N=null!=(f=i.useEvalExpressionHook)?f:Nt;let b;b=null!=C?u.getChildElement(C):Te(p,u);const x=Ft(p,i.useValidationHook),T=st({defaultValueControl:Ct(N,p),visibleControl:pt(N,p),readonlyControl:yt(N,p),disabledControl:vt(N,p),allowedOptions:mt(N,p),labelText:Lt(N,p),actionData:It(N,p),customStyle:ht(N,A.Style,p),layoutStyle:ht(N,A.LayoutStyle,p),displayControl:gt(N,p)}),S=hn({options:i,definition:p,elementIndex:C,parentDataNode:u,dataNode:b,formNode:y}),E=r(()=>{const n=m();try{var r,i,d,c,f;const{definition:n,options:y,elementIndex:m,parentDataNode:C,dataNode:E,formNode:O}=S.current,A=null!=(r=y.formData)?r:{},I={schemaInterface:D,dataNode:E,parentNode:C,formData:A},{readonlyControl:L,disabledControl:F,visibleControl:k,displayControl:V,layoutStyle:M,labelText:R,customStyle:G,allowedOptions:q,defaultValueControl:j,actionData:H}=T(I),U=k.current.value,B=l(()=>null!=U?{visible:U,showing:U}:void 0);v(()=>k.value,e=>{null!=e&&B.setValue(n=>({visible:e,showing:n?n.showing:e}))});const J=u.control,P=null==(i=b)?void 0:i.control;v(()=>{var e;return[B.value,j.value,null==P?void 0:P.isNull,fe(p)&&p.dontClearHidden,fe(p)&&(null==(e=p.renderOptions)?void 0:e.type)==w.NullToggle,J.isNull,y.hidden,L.value]},([e,n,t,r,o,i,l,a])=>{a||(P?e&&e.visible===e.showing&&(l||!e.visible?P.setValue(e=>y.clearHidden&&!r?void 0:null==e&&r&&!o?n:e):o||P.setValue(e=>null!=e?e:n)):i&&J.setValue(e=>null!=e?e:{}))},!0);const $=a(()=>{var e;return{hidden:y.hidden||!(null!=(e=B.fields)&&e.showing.value),readonly:y.readonly||L.value,disabled:y.disabled||F.value,displayOnly:y.displayOnly||wn(n)}}),_=s($);x({control:null!=P?P:g(null),hiddenControl:$.fields.hidden,dataContext:I});const W=Fe({},y,_,{elementIndex:void 0,formData:A});if(o(()=>{P&&"boolean"==typeof _.disabled&&P.disabled!=_.disabled&&(P.disabled=_.disabled)},[P,_.disabled]),J.isNull)/*#__PURE__*/return e.createElement(e.Fragment,null);const Y=null!=(d=null==(c=p.adornments)?void 0:c.map(e=>t.renderAdornment({adornment:e,dataContext:I,useExpr:N})))?d:[],z=zt({formNode:O,definition:n,renderer:t,renderChild:(r,o,i)=>{var l;const a=Ln(n),u=null!=i?i:{},{parentDataNode:d}=u,c=ke(u,jt),s=null!=(l=null!=d?d:I.dataNode)?l:I.parentNode;/*#__PURE__*/return e.createElement(Wt,{key:r,definition:o,renderer:t,parentDataNode:s,options:Fe({},W,a,c)})},createDataProps:h,formOptions:_,dataContext:I,control:null!=V?V:P,elementIndex:m,schemaInterface:D,labelText:R,displayControl:V,style:G.value,allowedOptions:q,customDisplay:y.customDisplay,actionDataControl:H,actionOnClick:y.actionOnClick,styleClass:y.styleClass,labelClass:y.labelClass,useEvalExpression:N,useChildVisibility:(e,n,t)=>{var r;return pt(N,e,t?void 0:Te(e,null!=(r=null!=n?n:b)?r:u))}}),K=Fe({},z,{adornments:Y,className:Tn(y.layoutClass,n.layoutClass),style:M.value}),Q=t.renderLayout(null!=(f=null==y.adjustLayout?void 0:y.adjustLayout(I,K))?f:K);return t.renderVisibility(Fe({visibility:B},Q))}finally{n()}},[S,h,x,t,D,T]);return E.displayName="RenderControl",E}function _t({definition:n,fields:t,renderer:r,options:o,control:i}){var l=m();try{const l=$t(n,r,o,P(J({"":t}).getSchema(""),i));/*#__PURE__*/return e.createElement(l,null)}finally{l()}}function Wt({definition:n,renderer:t,options:r,parentDataNode:o}){var i=m();try{const i=$t(n,t,r,o);/*#__PURE__*/return e.createElement(i,null)}finally{i()}}function Yt(e){var n,t;let{definition:r,control:o,formOptions:i,style:l,allowedOptions:a,schemaInterface:u=qt,styleClass:d}=e,c=ke(e,Ht);const s=c.dataContext.dataNode,f=s.schema.field,p=Tn(d,r.styleClass),y=!!i.displayOnly,h=!!r.required&&!y,m=u.getDataOptions(s),v=null!=(n=null==a?void 0:a.value)?n:[],g=Array.isArray(v)?v:[v];return Fe({dataNode:s,definition:r,control:o,field:f,id:"c"+o.uniqueId,options:g.length>0?g.map(e=>{var n;return"object"==typeof e?e:null!=(n=null==m?void 0:m.find(n=>n.value==e))?n:{name:e.toString(),value:e}}).filter(e=>null!=e):m,readonly:!!i.readonly,displayOnly:y,renderOptions:null!=(t=r.renderOptions)?t:{type:"Standard"},required:h,hidden:!!i.hidden,className:p,style:l},c)}function zt(e){const{definition:n,renderer:t,renderChild:r,control:o,dataContext:i,createDataProps:l,displayControl:a,style:u,labelText:d,useChildVisibility:c,designMode:s,customDisplay:f,useEvalExpression:p,labelClass:y,styleClass:h,formNode:m}=e;if(fe(n))return O(n);var v,g,C,D;if(pe(n))return n.compoundField?O(kn(n.compoundField,n.title,{children:n.children,hideTitle:null==(D=n.groupOptions)?void 0:D.hideTitle})):{processLayout:t.renderGroup({formNode:m,definition:n,renderChild:r,useEvalExpression:p,dataContext:i,renderOptions:null!=(v=n.groupOptions)?v:{type:"Standard"},className:Tn(h,n.styleClass),useChildVisibility:c,style:u,designMode:s}),label:{label:null!=(g=null==d?void 0:d.value)?g:n.title,className:Tn(y,n.labelClass),type:Jt.Group,hide:null==(C=n.groupOptions)?void 0:C.hideTitle}};if(ye(n)){var N,b,x,T,S;const r=null!=(N=null==(b=e.actionDataControl)?void 0:b.value)?N:n.actionData;return{children:t.renderAction({actionText:null!=(x=null!=(T=null==d?void 0:d.value)?T:n.title)?x:n.actionId,actionId:n.actionId,actionData:r,onClick:null!=(S=null==e.actionOnClick?void 0:e.actionOnClick(n.actionId,r,i))?S:()=>{},className:Tn(h,n.styleClass),style:u})}}if(he(n)){var E;const e=null!=(E=n.displayData)?E:{},r={data:e,className:Tn(h,n.styleClass),style:u,display:a,dataContext:i};return e.type===V.Custom&&f?{children:f(e.customId,r)}:{children:t.renderDisplay(r)}}return{};function O(n){var r,i,a;if(!o)return{children:"No control for: "+n.field};const u=l(e),c=n.hideTitle?void 0:rr(null!=(r=null==d?void 0:d.value)?r:n.title,e.dataContext.dataNode.schema.field);return{processLayout:t.renderData(u),label:{type:(null!=(i=null==(a=n.children)?void 0:a.length)?i:0)>0?Jt.Group:Jt.Control,label:c,forId:u.id,required:n.required&&!e.formOptions.displayOnly,hide:n.hideTitle,className:Tn(y,n.labelClass)},errorControl:o}}}function Kt(n,t){return r=>r[n]=/*#__PURE__*/e.createElement(e.Fragment,null,r[n],t)}function Qt(e,n){return t=>t[e]=n(t[e])}function Xt(e){switch(e){case I.ControlEnd:return"controlEnd";case I.ControlStart:return"controlStart";case I.LabelStart:return"labelStart";case I.LabelEnd:return"labelEnd"}}function Zt(e){return n=>{const t=n.wrapLayout;n.wrapLayout=n=>e(t(n))}}function er(e,n){return Kt(Xt(e),n)}function nr(e,n){return Qt(Xt(e),n)}function tr(e,n){var t;const{className:r,children:o,style:i,errorControl:l,label:a,adornments:u}=null!=(t=null==e.processLayout?void 0:e.processLayout(e))?t:e,d={children:o,errorControl:l,style:i,className:r,wrapLayout:e=>e};return(null!=u?u:[]).sort((e,n)=>e.priority-n.priority).forEach(e=>e.apply(d)),d.label=a&&!a.hide?n.renderLabel(a,d.labelStart,d.labelEnd):void 0,d}function rr(e,n){return e||un(n)}function or(e){var n;const t=null==(n=e.validators)?void 0:n.find(e=>e.type===M.Length);return{min:null==t?void 0:t.min,max:null==t?void 0:t.max}}function ir(e,n,t){var r;const o=null!=(r=n.displayName)?r:n.field,{addText:i,noAdd:l,removeText:a,noRemove:u,removeActionId:d,addActionId:c,disabled:s,readonly:f,designMode:p}=null!=t?t:{};return{arrayControl:e,addAction:f||l?void 0:{actionId:c||"add",actionText:i||"Add "+o,onClick:()=>!p&&C(e,rn(n)),disabled:s},removeAction:f||u?void 0:n=>({actionId:d||"remove",actionText:a||"Remove",onClick:()=>!p&&D(e,n),disabled:s})}}function lr({arrayControl:e,min:n,max:t,addAction:r,removeAction:o,required:i},l){var a,u;const[d,c]=Sn(null!=(a=null==(u=e.elements)?void 0:u.length)?a:0,null==n&&i?1:n,t,!0,!0);return{addAction:l||c?r:void 0,removeAction:l||d?o:void 0,removeDisabled:!d,addDisabled:!c}}function ar(n){return(t,r,o)=>/*#__PURE__*/e.createElement(N,{array:n.formNode.getChildNodes()},(e,r)=>n.renderChild(r,e,{parentDataNode:n.dataContext.parentNode,formData:{option:t,optionSelected:o}}))}function ur(e){return e.type===L.Icon}function dr(e){return e.type===L.Accordion}function cr(e){return e.type===L.SetField}function sr(e,n){return Fe({type:"layout",render:e},n)}function fr(e,n,t){return Fe({type:"action",actionType:e,render:n},t)}function pr(e,n){return Fe({type:"array",render:e},n)}function yr(e,n){return Fe({type:"data",render:e},n)}function hr(e,n){return Fe({type:"group",render:e},n)}function mr(e,n){return Fe({type:"display",render:e},n)}function vr(e,n){return Fe({type:"label",render:e},n)}function gr(e,n){return Fe({type:"visibility",render:e},n)}function Cr(e,n){return Fe({type:"adornment"},n,{render:e})}function Dr(e=[],n){var t;const r=e.filter(xr),o=e.filter(Tr),i=e.filter(br),l=e.filter(Ir),a=e.filter(Sr),u=e.filter(Lr),d=e.filter(Ar),c=e.filter(Er),s={renderAction:function(e){var t;return(null!=(t=d.find(n=>Nr(n.actionType,e.actionId)))?t:n.action).render(e,s)},renderData:function(e){var t;const{renderOptions:{type:o},field:i}=e,l=dn(e),a=(null!=(t=r.find(n=>{var t,r,a;return(null!=(t=n.collection)&&t)===(null==e.elementIndex&&null!=(r=i.collection)&&r)&&(null!=(a=n.options)&&a)===l&&(n.schemaType&&o==w.Standard&&Nr(n.schemaType,i.type)||n.renderType&&Nr(n.renderType,o)||n.match&&n.match(e))}))?t:n.data).render(e,s);return"function"==typeof a?a:e=>Fe({},e,{children:a})},renderGroup:function(e){var t;const r=e.renderOptions.type,i=(null!=(t=o.find(e=>Nr(e.renderType,r)))?t:n.group).render(e,s);return"function"==typeof i?i:e=>Fe({},e,{children:i})},renderDisplay:function(e){var t;const r=e.data.type;return(null!=(t=l.find(e=>Nr(e.renderType,r)))?t:n.display).render(e,s)},renderLabel:f,renderArray:function(e){var t;return(null!=(t=u[0])?t:n.array).render(e,s)},renderAdornment:function(e){var t;return(null!=(t=i.find(n=>Nr(n.adornmentType,e.adornment.type)))?t:n.adornment).render(e,s)},renderLayout:function(e){var t;return(null!=(t=c.find(n=>!n.match||n.match(e)))?t:n.renderLayout).render(e,s)},renderVisibility:(null!=(t=e.find(Or))?t:n.visibility).render,renderLabelText:function(e){return f({label:e,type:Jt.Text},void 0,void 0)}};function f(e,t,r){var o;return(null!=(o=a.find(n=>Nr(n.labelType,e.type)))?o:n.label).render(e,t,r,s)}return s}function Nr(e,n){return null==e||(Array.isArray(e)?e.includes(n):n===e)}function br(e){return"adornment"===e.type}function xr(e){return"data"===e.type}function Tr(e){return"group"===e.type}function Sr(e){return"label"===e.type}function Er(e){return"layout"===e.type}function Or(e){return"visibility"===e.type}function Ar(e){return"action"===e.type}function Ir(e){return"display"===e.type}function Lr(e){return"array"===e.type}!function(e){e[e.Control=0]="Control",e[e.Group=1]="Group",e[e.Text=2]="Text"}(Jt||(Jt={}));export{I as AdornmentPlacement,Ut as AppendAdornmentPriority,L as ControlAdornmentType,O as ControlDefinitionType,_t as ControlRenderer,w as DataRenderType,R as DateComparison,Gt as DefaultSchemaInterface,V as DisplayDataType,A as DynamicPropertyType,G as ExpressionType,T as FieldType,ve as FormNode,k as GroupRenderType,Jt as LabelType,Wt as NewControlRenderer,E as SchemaTags,F as SyncTextType,S as ValidationMessageType,M as ValidatorType,Bt as WrapAdornmentPriority,Bn as accordionOptions,rt as actionControl,Fn as actionHandlers,Qe as addFieldOption,pn as addMissingControls,yn as addMissingControlsForSchema,Mn as adornmentOptions,Kt as appendMarkup,er as appendMarkupAt,lr as applyArrayLengthRestrictions,en as applyDefaultForField,Ze as applyDefaultValues,at as applyExtensionToSchema,ut as applyExtensionsToSchema,Sn as applyLengthRestrictions,$e as boolField,Ve as buildSchema,Gn as checkListOptions,Cn as cleanDataForSchema,An as coerceToString,tt as compoundControl,_e as compoundField,rr as controlTitle,ot as createAction,fr as createActionRenderer,Cr as createAdornmentRenderer,ir as createArrayActions,pr as createArrayRenderer,yr as createDataRenderer,mr as createDisplayRenderer,be as createFormLookup,Dr as createFormRenderer,hr as createGroupRenderer,vr as createLabelRenderer,sr as createLayoutRenderer,J as createSchemaLookup,gr as createVisibilityRenderer,kn as dataControl,Be as dateField,Pe as dateTimeField,Un as dateValidatorOptions,Ye as defaultCompoundField,cn as defaultControlForField,Yt as defaultDataProps,Dt as defaultEvalHooks,We as defaultScalarField,qt as defaultSchemaInterface,Nt as defaultUseEvalExpressionHook,tn as defaultValueForField,nn as defaultValueForFields,Pn as displayOnlyOptions,Ue as doubleField,Yn as dynamicDefaultValue,Qn as dynamicDisabled,zn as dynamicReadonly,Kn as dynamicVisibility,rn as elementValueForField,it as emptyGroupDefinition,un as fieldDisplayName,Zn as fieldEqExpr,Xn as fieldExpr,an as fieldHasTag,ar as fieldOptionAdornment,xe as fieldPathForDefinition,bn as findChildDefinition,ln as findCompoundField,sn as findControlsForCompound,q as findField,En as findFieldPath,fn as findNonDataGroups,on as findScalarField,Dn as getAllReferencedClasses,gn as getDisplayOnlyOptions,Ln as getGroupClassOverrides,In as getGroupRendererOptions,Oe as getJsonPath,or as getLengthRestrictions,xn as getOverrideClass,Ee as getRootDataNode,Ie as getSchemaFieldList,X as getSchemaNodePath,Ae as getSchemaPath,ne as getTagParam,nt as groupedControl,dn as hasOptions,Et as hideDisplayOnly,Wn as htmlDisplayControl,He as intField,dr as isAccordionAdornment,ye as isActionControl,se as isArrayRenderer,me as isCheckEntryClasses,H as isCompoundField,Z as isCompoundNode,vn as isControlDisabled,wn as isControlDisplayOnly,mn as isControlReadonly,fe as isDataControl,ce as isDataGroupRenderer,he as isDisplayControl,ue as isDisplayOnlyRenderer,ae as isFlexRenderer,oe as isGridRenderer,pe as isGroupControl,ur as isIconAdornment,j as isScalarField,ie as isSelectChildRenderer,cr as isSetFieldAdornment,le as isTabsRenderer,de as isTextfieldRenderer,Nn as jsonPathString,et as jsonataExpr,$n as jsonataOptions,Hn as jsonataValidatorOptions,Xt as layoutKeyForPlacement,Ce as legacyFormNode,jn as lengthValidatorOptions,Te as lookupDataNode,je as makeCompoundField,bt as makeEvalExpressionHook,dt as makeHook,ct as makeHookDepString,te as makeParamTag,qe as makeScalarField,P as makeSchemaDataNode,St as matchesType,ze as mergeField,Ke as mergeFields,On as mergeObjects,ge as nodeForControl,qn as radioButtonOptions,ee as relativePath,zt as renderControlLayout,tr as renderLayoutParts,Rn as renderOptionsFor,Tn as rendererClass,Xe as resolveSchemas,Q as rootSchemaNode,z as schemaDataForFieldPath,$ as schemaDataForFieldRef,K as schemaForFieldPath,_ as schemaForFieldRef,Me as stringField,Re as stringOptionsField,_n as textDisplayControl,Jn as textfieldOptions,Je as timeField,ft as toDepString,Y as traverseData,Se as traverseParents,W as traverseSchemaPath,lt as useControlDefinitionForSchema,Pt as useControlRenderer,$t as useControlRendererComponent,Rt as useDateValidator,st as useDynamicHooks,It as useEvalActionHook,mt as useEvalAllowedOptionsHook,Ct as useEvalDefaultValueHook,vt as useEvalDisabledHook,gt as useEvalDisplayHook,xt as useEvalDynamicBoolHook,Tt as useEvalDynamicHook,Lt as useEvalLabelText,yt as useEvalReadonlyHook,ht as useEvalStyleHook,pt as useEvalVisibilityHook,At as useJsonataExpression,Vt as useJsonataValidator,Mt as useLengthValidator,Ft as useMakeValidationHook,hn as useUpdatedRef,Ot as useUuidExpression,Vn as validatorOptions,we as visitControlData,Le as visitControlDataArray,re as visitControlDefinition,Ge as withScalarOptions,Zt as wrapLayout,Qt as wrapMarkup,nr as wrapMarkupAt};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|