@earthranger/react-native-jsonforms-formatter 2.0.0-beta.16 → 2.0.0-beta.18
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/bundle.js +1 -1
- package/dist/common/types.d.ts +19 -0
- package/dist/common/types.d.ts.map +1 -1
- package/dist/v2/conditions.d.ts +41 -0
- package/dist/v2/conditions.d.ts.map +1 -0
- package/dist/v2/conditions.js +182 -0
- package/dist/v2/conditions.js.map +1 -0
- package/dist/v2/generateUISchema.d.ts.map +1 -1
- package/dist/v2/generateUISchema.js +14 -0
- package/dist/v2/generateUISchema.js.map +1 -1
- package/dist/v2/index.d.ts +2 -1
- package/dist/v2/index.d.ts.map +1 -1
- package/dist/v2/index.js +2 -0
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/utils.d.ts +3 -3
- package/dist/v2/utils.d.ts.map +1 -1
- package/dist/v2/utils.js +56 -54
- package/dist/v2/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/bundle.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{void 0!==m&&m.toStringTag&&Object.defineProperty(e,m.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{detectSchemaVersion:()=>yt,generateUISchema:()=>Ge,processSchema:()=>vt,v1:()=>r,v2:()=>n,validateJSONSchema:()=>pt});var r={};e.r(r),e.d(r,{generateUISchema:()=>Ge,validateJSONSchema:()=>pt});var n={};e.r(n),e.d(n,{generateUISchema:()=>ht});var i=Object.prototype;const o=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||i)},a=(c=Object.keys,s=Object,function(e){return c(s(e))});var c,s,u=Object.prototype.hasOwnProperty;const p="object"==typeof global&&global&&global.Object===Object&&global;var l="object"==typeof self&&self&&self.Object===Object&&self;const f=p||l||Function("return this")();var m=f.Symbol;const d=m;var h=Object.prototype,y=h.hasOwnProperty,v=h.toString,b=d?d.toStringTag:void 0;var g=Object.prototype.toString;var j=d?d.toStringTag:void 0;const O=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":j&&j in Object(e)?function(e){var t=y.call(e,b),r=e[b];try{e[b]=void 0;var n=!0}catch(e){}var i=v.call(e);return n&&(t?e[b]=r:delete e[b]),i}(e):function(e){return g.call(e)}(e)},E=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},T=function(e){if(!E(e))return!1;var t=O(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},w=f["__core-js_shared__"];var k,A=(k=/[^.]+$/.exec(w&&w.keys&&w.keys.IE_PROTO||""))?"Symbol(src)_1."+k:"";var C=Function.prototype.toString;const S=function(e){if(null!=e){try{return C.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var I=/^\[object .+?Constructor\]$/,x=Function.prototype,N=Object.prototype,_=x.toString,M=N.hasOwnProperty,D=RegExp("^"+_.call(M).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const L=function(e){return!(!E(e)||function(e){return!!A&&A in e}(e))&&(T(e)?D:I).test(S(e))},F=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return L(r)?r:void 0},q=F(f,"DataView"),P=F(f,"Map"),H=F(f,"Promise"),R=F(f,"Set"),U=F(f,"WeakMap");var $="[object Map]",V="[object Promise]",J="[object Set]",B="[object WeakMap]",W="[object DataView]",z=S(q),X=S(P),G=S(H),K=S(R),Q=S(U),Y=O;(q&&Y(new q(new ArrayBuffer(1)))!=W||P&&Y(new P)!=$||H&&Y(H.resolve())!=V||R&&Y(new R)!=J||U&&Y(new U)!=B)&&(Y=function(e){var t=O(e),r="[object Object]"==t?e.constructor:void 0,n=r?S(r):"";if(n)switch(n){case z:return W;case X:return $;case G:return V;case K:return J;case Q:return B}return t});const Z=Y,ee=function(e){return null!=e&&"object"==typeof e},te=function(e){return ee(e)&&"[object Arguments]"==O(e)};var re=Object.prototype,ne=re.hasOwnProperty,ie=re.propertyIsEnumerable;const oe=te(function(){return arguments}())?te:function(e){return ee(e)&&ne.call(e,"callee")&&!ie.call(e,"callee")},ae=Array.isArray,ce=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var se="object"==typeof exports&&exports&&!exports.nodeType&&exports,ue=se&&"object"==typeof module&&module&&!module.nodeType&&module,pe=ue&&ue.exports===se?f.Buffer:void 0;const le=(pe?pe.isBuffer:void 0)||function(){return!1};var fe={};fe["[object Float32Array]"]=fe["[object Float64Array]"]=fe["[object Int8Array]"]=fe["[object Int16Array]"]=fe["[object Int32Array]"]=fe["[object Uint8Array]"]=fe["[object Uint8ClampedArray]"]=fe["[object Uint16Array]"]=fe["[object Uint32Array]"]=!0,fe["[object Arguments]"]=fe["[object Array]"]=fe["[object ArrayBuffer]"]=fe["[object Boolean]"]=fe["[object DataView]"]=fe["[object Date]"]=fe["[object Error]"]=fe["[object Function]"]=fe["[object Map]"]=fe["[object Number]"]=fe["[object Object]"]=fe["[object RegExp]"]=fe["[object Set]"]=fe["[object String]"]=fe["[object WeakMap]"]=!1;var me="object"==typeof exports&&exports&&!exports.nodeType&&exports,de=me&&"object"==typeof module&&module&&!module.nodeType&&module,he=de&&de.exports===me&&p.process,ye=function(){try{return de&&de.require&&de.require("util").types||he&&he.binding&&he.binding("util")}catch(e){}}(),ve=ye&&ye.isTypedArray;const be=ve?function(e){return function(t){return e(t)}}(ve):function(e){return ee(e)&&ce(e.length)&&!!fe[O(e)]};var ge=Object.prototype.hasOwnProperty;const je=function(e){if(null==e)return!0;if(function(e){return null!=e&&ce(e.length)&&!T(e)}(e)&&(ae(e)||"string"==typeof e||"function"==typeof e.splice||le(e)||be(e)||oe(e)))return!e.length;var t=Z(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(o(e))return!function(e){if(!o(e))return a(e);var t=[];for(var r in Object(e))u.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e).length;for(var r in e)if(ge.call(e,r))return!1;return!0};var Oe,Ee,Te,we=function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i<o;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))},ke="fieldset",Ae="checkboxes",Ce="string";!function(e){e.DateTime="date-time",e.Date="date"}(Oe||(Oe={})),function(e){e.DateTime="date-time",e.MultiSelect="multiselect",e.RepeatableField="repeatable-field",e.FormLabel="form-label"}(Ee||(Ee={})),function(e){e.Header="header"}(Te||(Te={}));var Se,Ie=function(e){var t=e.toLowerCase().replace(/[\s\\/\\%]/gi,"_");return"fieldset__title_".concat(t)},xe=function(e){return new Set(e).size!==e.length},Ne=function(e){return Fe(e)&&e.type===Ae},_e=function(e){return null==e||0===e.trim().length},Me=function(e){return Fe(e)&&e.type===ke&&!je(e.title)},De=function(e){return Fe(e)&&e.type===ke&&e.items.length>0},Le=function(e){var t,r;return e.type===Ce&&(null===(t=e.enum)||void 0===t?void 0:t.length)>0&&(null===(r=e.inactive_enum)||void 0===r?void 0:r.length)>0},Fe=function(e){return e instanceof Object},qe=function(e){return!je(e.key)},Pe=function(e){return 0!==e.length&&void 0!==e.find((function(e){return Fe(e)&&e&&(e.type||"")===ke}))},He=function(e){return typeof e===Ce},Re=function(e){if("number"==typeof e)return e;if("string"!=typeof e)return e;var t=e.trim();if(""===t)return e;if(/^-?\d+,\d+$/.test(t)){var r=t.replace(",","."),n=parseFloat(r);if(!isNaN(n))return r}return e},Ue=function(e,t,r){void 0===r&&(r=[]),"object"==typeof e&&null!==e&&(t(e,r),Array.isArray(e)?e.forEach((function(e,n){return Ue(e,t,we(we([],r,!0),[n.toString()],!1))})):Object.entries(e).forEach((function(e){var n=e[0],i=e[1];return Ue(i,t,we(we([],r,!0),[n],!1))})))},$e=function(e){return e.includes(Ae)},Ve=function(e){return e.includes("inactive_enum")},Je=function(e){return e.includes("inactive_titleMap")},Be=function(e){return e.includes("enum")},We=function(){return We=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},We.apply(this,arguments)};!function(e){e.Number="number",e.String="string",e.Array="array"}(Se||(Se={}));var ze=function(e,t,r){return void 0===r&&(r={}),We({type:"Control",scope:"#/properties/".concat(e),label:t},r&&{options:r})},Xe=function(e,t,r){void 0===r&&(r=void 0);try{var n=r||t.definition.find((function(t){return t.key===e}));if("date-time-picker json-schema"===n.fieldHtmlClass||n&&"datetime"===(n.type||""))return"date"===t.schema.properties[e].format?Oe.Date:Oe.DateTime;if("date-picker json-schema"===n.fieldHtmlClass||"date"===t.schema.properties[e].format)return Oe.Date}catch(e){return}},Ge=function(e){var t=[];return Pe(e.definition)?t.push.apply(t,Ke(e)):Object.keys(e.schema.properties).forEach((function(r){var n=Ye(r,e);je(n)||t.push(n)})),{type:"Category",elements:t}},Ke=function(e){var t=[];return e.definition.forEach((function(r){if("string"==typeof r)t.push(ze(r,e.schema.properties[r].title||""));else if(r instanceof Object)switch(!0){case function(e){return Fe(e)&&e.type===ke&&0===e.items.length&&!je(e.title)}(r):t.push(ze(Ie(r.title),r.title,Qe(Ee.FormLabel)));break;case De(r):r.title&&t.push(ze(Ie(r.title),r.title,Qe(Ee.FormLabel))),r.items.forEach((function(r){if(r instanceof Object){var n=Ye(r.key||"",e,r);n&&t.push(n)}else if("string"==typeof r){var i=Ye(r,e);i&&t.push(i)}}));break;case qe(r):var n=Ye(r.key,e);n&&t.push(n)}})),t},Qe=function(e,t){if(void 0===e&&(e=""),void 0===t&&(t=""),je(e))return{};var r={format:e};return je(t)||(r.display=t),r},Ye=function(e,t,r){void 0===r&&(r=void 0);var n={};switch(t.schema.properties[e].type){case Se.Number:return ze(e,t.schema.properties[e].title||"");case Se.String:var i=Xe(e,t,r);return _e(i)?t.schema.properties[e].display&&t.schema.properties[e].display===Te.Header&&(n=Qe(Ee.FormLabel)):n=Qe(Ee.DateTime,i),ze(e,t.schema.properties[e].title||"",n);case Se.Array:return t.schema.properties[e].items.enum&&t.schema.properties[e].items.enumNames?n=Qe(Ee.MultiSelect):t.schema.properties[e].items&&(n=Qe(Ee.RepeatableField)),ze(e,t.schema.properties[e].title||"",n);case void 0:var o=function(e,t){try{var r=t.definition.find((function(t){return t.key===e}));return"json-schema-checkbox-wrapper"===r.fieldHtmlClass||"checkboxes"===r.type?r:void 0}catch(e){return}}(e,t);return o?(n=Qe(Ee.MultiSelect),ze(e,o.title||"",n)):(i=Xe(e,t,r),_e(i)?void 0:(n=Qe(Ee.DateTime,i),ze(e,t.schema.properties[e].title||"",n)))}},Ze=function(){return Ze=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},Ze.apply(this,arguments)},et=function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i<o;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))},tt=/[^\w\n\s_"](?=[^:\n\s{}[]]*:[\t\n\s]*(\{|\[)+)/g,rt=/"minimum"(?:[^\\"]|\\\\|\\")*"\d+\.*\d*"/g,nt=/"maximum"(?:[^\\"]|\\\\|\\")*"\d+\.*\d*"/g,it=/"(?=[^"]*(?:"[^"]*)?$)/g,ot=function(e){return{type:"string",readOnly:!0,isHidden:!1,display:Te.Header,title:e}},at=function(e){return(null==e?void 0:e.isHidden)||!1},ct=function(e){return e.enum.filter((function(t){return!e.inactive_enum.includes(t)}))},st=function(e){return e.titleMap.filter((function(t){return!e.inactive_titleMap.includes(t.value)}))},ut=function(e,t,r,n){var i,o,a,c,s=e.hasCheckboxes,u=e.hasDisabledChoices;if(He(t)&&r.schema.properties[t])r.schema.properties[t].isHidden=at(r.schema.properties[t]);else{if((Fe(t)||qe(t))&&t.key&&r.schema.properties[t.key]&&(r.schema.properties[t.key].isHidden=at(r.schema.properties[t.key])),u&&function(e){var t,r;return Fe(e)&&e.type===Ae&&(null===(t=e.inactive_titleMap)||void 0===t?void 0:t.length)>0&&(null===(r=e.titleMap)||void 0===r?void 0:r.length)>0}(t))if(n){var p=r.definition.indexOf(n),l=r.definition[p].items.indexOf(t);r.definition[p].items[l].titleMap=st(t)}else r.definition[r.definition.indexOf(t)].titleMap=st(t);s&&Ne(t)&&(r.schema.properties[t.key]=(i=t,o=r.schema.properties[t.key].title||"",a=r.schema.properties[t.key].required||!1,c=r.schema.properties[t.key].default||!1,Ze(Ze(Ze({type:"array",uniqueItems:!0,isHidden:!1},a&&{required:a}),{title:o||i.title,items:{enum:i.titleMap.map((function(e){return e.value})),enumNames:i.titleMap.map((function(e){return e.name}))}}),c&&{default:c})))}},pt=function(e){var t;e=function(e){if(null!==e.match(tt))throw Error("Special characters not supported in JSON Schema");return(e=(e=(e=(e=(e=e.replace(/([“”])/g,'"')).replace(new RegExp('\\"enum\\"\\n*\\s*\\:\\n*\\s*\\[\\n*\\s*\\]',"g"),'"enum": ["0"]')).replace(new RegExp('\\"enumNames\\"\\n*\\s*\\:\\n*\\s*\\{\\n*\\s*\\}',"g"),'"enumNames": {"0":"No Options"}')).replace(new RegExp('\\"titleMap\\"\\n*\\s*\\:\\n*\\s*\\[\\n*\\s*\\]',"g"),'"titleMap": [{"value":"no_option", "name":"No Option"}]')).replace(rt,(function(e){return e.replace(it,"")}))).replace(nt,(function(e){return e.replace(it,"")}))}(e);var r=JSON.parse(e);delete r.schema.$schema,delete r.schema.id,function(e){if(e.schema.definition){var t=e.schema.definition;delete e.schema.definition,e.definition=t}}(r);var n=function(e){return{hasCheckboxes:$e(e),hasInactiveChoices:Ve(e),hasDisabledChoices:Je(e),hasEnums:Be(e)}}(e);if(function(e){Ue(e,(function(e){"object"===e.type&&e.properties&&Object.entries(e.properties).forEach((function(e){var t=e[1];"number"===t.type&&(void 0!==t.default&&(t.default=Re(t.default)),void 0!==t.minimum&&(t.minimum=Re(t.minimum)),void 0!==t.maximum&&(t.maximum=Re(t.maximum)))}))}))}(r.schema),function(e,t){var r=e.hasInactiveChoices,n=e.hasEnums;if(r)for(var i=0,o=Object.keys(t.schema.properties);i<o.length;i++){var a=o[i],c=t.schema.properties[a];Le(c)&&(t.schema.properties[a].enum=ct(c),je(t.schema.properties[a].enum)&&(t.schema.properties[a].enum=["0"],t.schema.properties[a].enumNames={0:"No Options"}))}if(n)for(var s=0,u=Object.keys(t.schema.properties);s<u.length;s++)if(a=u[s],!je(t.schema.properties[a].enum)&&xe(t.schema.properties[a].enum))throw new Error("Duplicated enum items")}(n,r),function(e,t){var r;if(Pe(t.definition))!function(e,t){for(var r=0,n=t.definition;r<n.length;r++){var i=n[r];switch(!0){case He(i):break;case Me(i):var o=Ie(i.title);t.schema.properties[o]=ot(i.title);break;case De(i):for(var a=0,c=i.items;a<c.length;a++){var s=c[a];ut(e,s,t,i)}break;case Ne(i):ut(e,i,t)}}}(e,t);else if((null===(r=t.definition)||void 0===r?void 0:r.length)>0)for(var n=0,i=t.definition;n<i.length;n++){var o=i[n];ut(e,o,t)}}(n,r),e.includes("helpvalue")&&function(e){for(var t={},r=0,n=0,i=e.definition;n<i.length;n++){var o=i[n];if(He(o))t[o]=e.schema.properties[o],delete e.schema.properties[o];else if(Fe(o))if(o.helpvalue){var a="help_value_".concat(r);r+=1,t[a]=ot((o.helpvalue||"").replace(/(<.+?>)/g,""))}else o.key&&(t[o.key]=e.schema.properties[o.key],delete e.schema.properties[o.key])}e.schema.properties=Object.assign(t,e.schema.properties)}(r),e.includes("required")){if((null===(t=r.schema.required)||void 0===t?void 0:t.length)>0&&xe(r.schema.required))throw new Error("Duplicated required properties");r.schema=function(e){var t=Array.isArray(e.required)?et([],e.required,!0):null;return Ue(e,(function(e,r){if("object"===e.type&&e.properties){var n=[];if(Object.entries(e.properties).forEach((function(e){var t=e[0],r=e[1];(function(e){return"true"===e.required||e.required>0})(r)&&(n.push(t),delete r.required)})),je(n))r.length>0&&e.required&&delete e.required;else if(0===r.length&&t){var i=et(et([],t,!0),n,!0);e.required=Array.from(new Set(i))}else e.required=n}})),e}(r.schema)}return r},lt=function(e,t,r,n){var i,o={type:"Control",scope:"#/properties/".concat(e),label:t.title,options:{}};switch(r.type){case"TEXT":"LONG_TEXT"===r.inputType&&(o.options.multi=!0),r.placeholder&&(o.options.placeholder=r.placeholder);break;case"NUMERIC":o.options.format="number",r.placeholder&&(o.options.placeholder=r.placeholder);break;case"DATE_TIME":o.options.format=t.format||"date-time",o.options.display=t.format||"date-time";break;case"CHOICE_LIST":"array"===t.type?(o.options.multi=!0,"DROPDOWN"===r.inputType?o.options.format="dropdown":"LIST"===r.inputType&&(o.options.format="checkbox")):"DROPDOWN"===r.inputType?o.options.format="dropdown":"LIST"===r.inputType&&(o.options.format="radio"),r.placeholder&&(o.options.placeholder=r.placeholder);break;case"LOCATION":o.options.format="location",o.options.display="map";break;case"COLLECTION":o.options.format="array",o.options.addButtonText=r.buttonText||"Add Item",r.itemIdentifier&&(o.options.itemIdentifier=r.itemIdentifier),void 0!==t.maxItems&&(o.options.maxItems=t.maxItems),void 0!==t.minItems&&(o.options.minItems=t.minItems),"array"===t.type&&(null===(i=t.items)||void 0===i?void 0:i.properties)&&n&&(o.options.detail=mt(t,r,n));break;case"ATTACHMENT":o.options.format="file",r.allowableFileTypes&&(o.options.accept=r.allowableFileTypes.join(","))}return t.description&&(o.options.description=t.description),o},ft=function(e,t){return{type:"Label",text:t.label,options:{size:t.size}}},mt=function(e,t,r){var n;if("array"!==e.type||!(null===(n=e.items)||void 0===n?void 0:n.properties))throw new Error("Collection property must be an array with item properties");var i=e.items.properties,o=[],a=function(e,t){var n=r.ui.fields[e];if(n)return lt(e,t,n,r);var i={type:"Control",scope:"#/properties/".concat(e),label:t.title||e,options:{}};switch(t.type){case"string":"uri"===t.format&&(i.options.format="file",i.options.accept="image/*");break;case"number":i.options.format="number"}return t.description&&(i.options.description=t.description),i};return t&&(t.leftColumn||t.rightColumn)?(t.leftColumn&&t.leftColumn.forEach((function(e){i[e]&&o.push(a(e,i[e]))})),t.rightColumn&&t.rightColumn.forEach((function(e){i[e]&&o.push(a(e,i[e]))}))):Object.entries(i).forEach((function(e){var t=e[0],r=e[1];o.push(a(t,r))})),{type:"VerticalLayout",elements:o}},dt=function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i<o;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))},ht=function(e){!function(e){var t=[],r=["TEXT","NUMERIC","DATE_TIME","CHOICE_LIST","LOCATION","COLLECTION","ATTACHMENT"];if(Object.entries(e.json.properties).forEach((function(n){var i,o=n[0],a=n[1],c=e.ui.fields[o];if(c||!a.deprecated)if(c)if(r.includes(c.type)){if("CHOICE_LIST"===c.type){var s=!1;"array"===a.type&&(null===(i=a.items)||void 0===i?void 0:i.anyOf)?s=a.items.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)})):a.anyOf&&(s=a.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)}))),s||t.push("".concat(o,": CHOICE_LIST field requires embedded oneOf arrays - $ref not supported"))}}else t.push("".concat(o,": unsupported field type '").concat(c.type,"'"));else t.push("".concat(o,": missing UI field definition"))})),t.length>0)throw new Error("Invalid V2 schema structure: ".concat(t.join(", ")))}(e);var t,r,n,i=function(e){var t=[];return Object.entries(e.json.properties).forEach((function(r){var n=r[0],i=r[1],o=e.ui.fields[n];(function(e){return!e.deprecated})(i)&&o&&t.push({name:n,property:i,uiField:o})})),t}(e),o=(t=i,r=e.ui.sections,n={},t.forEach((function(e){var t=e.uiField.parent;r[t]&&(n[t]||(n[t]=[]),n[t].push(e))})),n),a=[];return e.ui.order.forEach((function(t){var r=e.ui.sections[t],n=o[t]||[],i=n.length>0,c=dt(dt([],r.leftColumn,!0),r.rightColumn,!0).some((function(t){return"header"===t.type&&e.ui.headers[t.name]}));if((null==r?void 0:r.isActive)&&(i||c)){var s=function(e,t,r,n){var i={type:"VerticalLayout",label:t.label,elements:[]},o=[];return t.leftColumn.forEach((function(e){if("field"===e.type){var t=r.find((function(t){return t.scope==="#/properties/".concat(e.name)}));t&&o.push(t)}else if("header"===e.type){var i=n[e.name];if(i){var a=ft(e.name,i);o.push(a)}}})),t.rightColumn.forEach((function(e){if("field"===e.type){var t=r.find((function(t){return t.scope==="#/properties/".concat(e.name)}));t&&o.push(t)}else if("header"===e.type){var i=n[e.name];if(i){var a=ft(e.name,i);o.push(a)}}})),i.elements=o,i}(0,r,n.map((function(t){var r=t.name,n=t.property,i=t.uiField;return lt(r,n,i,e)})),e.ui.headers);a.push(s)}})),{type:"VerticalLayout",elements:a}},yt=function(e){try{var t=JSON.parse(e),r=t.data||t;return r.json&&r.ui?{version:"v2",data:r}:(r.schema&&r.definition||r.schema&&r.ui,{version:"v1",data:r})}catch(e){throw new Error("Invalid JSON schema: ".concat(e instanceof Error?e.message:"Unknown error"))}},vt=function(e){var t=yt(e),r=t.version,n=t.data;return{version:r,processedData:JSON.stringify(n)}};module.exports=t})();
|
|
1
|
+
(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{void 0!==d&&d.toStringTag&&Object.defineProperty(e,d.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{detectSchemaVersion:()=>jt,generateUISchema:()=>ze,processSchema:()=>Tt,v1:()=>r,v2:()=>n,validateJSONSchema:()=>pt});var r={};e.r(r),e.d(r,{generateUISchema:()=>ze,validateJSONSchema:()=>pt});var n={};e.r(n),e.d(n,{buildConditionSchema:()=>ft,buildSchemaBasedCondition:()=>dt,createSectionRule:()=>mt,generateUISchema:()=>Ot,validateConditions:()=>ht});var o=Object.prototype;const i=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||o)},a=(c=Object.keys,s=Object,function(e){return c(s(e))});var c,s,u=Object.prototype.hasOwnProperty;const p="object"==typeof global&&global&&global.Object===Object&&global;var l="object"==typeof self&&self&&self.Object===Object&&self;const f=p||l||Function("return this")();var d=f.Symbol;const m=d;var h=Object.prototype,y=h.hasOwnProperty,v=h.toString,b=m?m.toStringTag:void 0;var g=Object.prototype.toString;var O=m?m.toStringTag:void 0;const j=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":O&&O in Object(e)?function(e){var t=y.call(e,b),r=e[b];try{e[b]=void 0;var n=!0}catch(e){}var o=v.call(e);return n&&(t?e[b]=r:delete e[b]),o}(e):function(e){return g.call(e)}(e)},T=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},E=function(e){if(!T(e))return!1;var t=j(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},w=f["__core-js_shared__"];var S,I=(S=/[^.]+$/.exec(w&&w.keys&&w.keys.IE_PROTO||""))?"Symbol(src)_1."+S:"";var A=Function.prototype.toString;const C=function(e){if(null!=e){try{return A.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var N=/^\[object .+?Constructor\]$/,k=Function.prototype,_=Object.prototype,x=k.toString,L=_.hasOwnProperty,M=RegExp("^"+x.call(L).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const P=function(e){return!(!T(e)||function(e){return!!I&&I in e}(e))&&(E(e)?M:N).test(C(e))},q=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return P(r)?r:void 0},D=q(f,"DataView"),U=q(f,"Map"),H=q(f,"Promise"),F=q(f,"Set"),R=q(f,"WeakMap");var V="[object Map]",$="[object Promise]",X="[object Set]",B="[object WeakMap]",J="[object DataView]",W=C(D),Y=C(U),z=C(H),G=C(F),K=C(R),Q=j;(D&&Q(new D(new ArrayBuffer(1)))!=J||U&&Q(new U)!=V||H&&Q(H.resolve())!=$||F&&Q(new F)!=X||R&&Q(new R)!=B)&&(Q=function(e){var t=j(e),r="[object Object]"==t?e.constructor:void 0,n=r?C(r):"";if(n)switch(n){case W:return J;case Y:return V;case z:return $;case G:return X;case K:return B}return t});const Z=Q,ee=function(e){return null!=e&&"object"==typeof e},te=function(e){return ee(e)&&"[object Arguments]"==j(e)};var re=Object.prototype,ne=re.hasOwnProperty,oe=re.propertyIsEnumerable;const ie=te(function(){return arguments}())?te:function(e){return ee(e)&&ne.call(e,"callee")&&!oe.call(e,"callee")},ae=Array.isArray,ce=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var se="object"==typeof exports&&exports&&!exports.nodeType&&exports,ue=se&&"object"==typeof module&&module&&!module.nodeType&&module,pe=ue&&ue.exports===se?f.Buffer:void 0;const le=(pe?pe.isBuffer:void 0)||function(){return!1};var fe={};fe["[object Float32Array]"]=fe["[object Float64Array]"]=fe["[object Int8Array]"]=fe["[object Int16Array]"]=fe["[object Int32Array]"]=fe["[object Uint8Array]"]=fe["[object Uint8ClampedArray]"]=fe["[object Uint16Array]"]=fe["[object Uint32Array]"]=!0,fe["[object Arguments]"]=fe["[object Array]"]=fe["[object ArrayBuffer]"]=fe["[object Boolean]"]=fe["[object DataView]"]=fe["[object Date]"]=fe["[object Error]"]=fe["[object Function]"]=fe["[object Map]"]=fe["[object Number]"]=fe["[object Object]"]=fe["[object RegExp]"]=fe["[object Set]"]=fe["[object String]"]=fe["[object WeakMap]"]=!1;var de="object"==typeof exports&&exports&&!exports.nodeType&&exports,me=de&&"object"==typeof module&&module&&!module.nodeType&&module,he=me&&me.exports===de&&p.process,ye=function(){try{return me&&me.require&&me.require("util").types||he&&he.binding&&he.binding("util")}catch(e){}}(),ve=ye&&ye.isTypedArray;const be=ve?function(e){return function(t){return e(t)}}(ve):function(e){return ee(e)&&ce(e.length)&&!!fe[j(e)]};var ge=Object.prototype.hasOwnProperty;const Oe=function(e){if(null==e)return!0;if(function(e){return null!=e&&ce(e.length)&&!E(e)}(e)&&(ae(e)||"string"==typeof e||"function"==typeof e.splice||le(e)||be(e)||ie(e)))return!e.length;var t=Z(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(i(e))return!function(e){if(!i(e))return a(e);var t=[];for(var r in Object(e))u.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e).length;for(var r in e)if(ge.call(e,r))return!1;return!0};var je,Te,Ee,we=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},Se="fieldset",Ie="checkboxes",Ae="string";!function(e){e.DateTime="date-time",e.Date="date"}(je||(je={})),function(e){e.DateTime="date-time",e.MultiSelect="multiselect",e.RepeatableField="repeatable-field",e.FormLabel="form-label"}(Te||(Te={})),function(e){e.Header="header"}(Ee||(Ee={}));var Ce,Ne=function(e){var t=e.toLowerCase().replace(/[\s\\/\\%]/gi,"_");return"fieldset__title_".concat(t)},ke=function(e){return new Set(e).size!==e.length},_e=function(e){return qe(e)&&e.type===Ie},xe=function(e){return null==e||0===e.trim().length},Le=function(e){return qe(e)&&e.type===Se&&!Oe(e.title)},Me=function(e){return qe(e)&&e.type===Se&&e.items.length>0},Pe=function(e){var t,r;return e.type===Ae&&(null===(t=e.enum)||void 0===t?void 0:t.length)>0&&(null===(r=e.inactive_enum)||void 0===r?void 0:r.length)>0},qe=function(e){return e instanceof Object},De=function(e){return!Oe(e.key)},Ue=function(e){return 0!==e.length&&void 0!==e.find((function(e){return qe(e)&&e&&(e.type||"")===Se}))},He=function(e){return typeof e===Ae},Fe=function(e){if("number"==typeof e)return e;if("string"!=typeof e)return e;var t=e.trim();if(""===t)return e;if(/^-?\d+,\d+$/.test(t)){var r=t.replace(",","."),n=parseFloat(r);if(!isNaN(n))return r}return e},Re=function(e,t,r){void 0===r&&(r=[]),"object"==typeof e&&null!==e&&(t(e,r),Array.isArray(e)?e.forEach((function(e,n){return Re(e,t,we(we([],r,!0),[n.toString()],!1))})):Object.entries(e).forEach((function(e){var n=e[0],o=e[1];return Re(o,t,we(we([],r,!0),[n],!1))})))},Ve=function(e){return e.includes(Ie)},$e=function(e){return e.includes("inactive_enum")},Xe=function(e){return e.includes("inactive_titleMap")},Be=function(e){return e.includes("enum")},Je=function(){return Je=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},Je.apply(this,arguments)};!function(e){e.Number="number",e.String="string",e.Array="array"}(Ce||(Ce={}));var We=function(e,t,r){return void 0===r&&(r={}),Je({type:"Control",scope:"#/properties/".concat(e),label:t},r&&{options:r})},Ye=function(e,t,r){void 0===r&&(r=void 0);try{var n=r||t.definition.find((function(t){return t.key===e}));if("date-time-picker json-schema"===n.fieldHtmlClass||n&&"datetime"===(n.type||""))return"date"===t.schema.properties[e].format?je.Date:je.DateTime;if("date-picker json-schema"===n.fieldHtmlClass||"date"===t.schema.properties[e].format)return je.Date}catch(e){return}},ze=function(e){var t=[];return Ue(e.definition)?t.push.apply(t,Ge(e)):Object.keys(e.schema.properties).forEach((function(r){var n=Qe(r,e);Oe(n)||t.push(n)})),{type:"Category",elements:t}},Ge=function(e){var t=[];return e.definition.forEach((function(r){if("string"==typeof r)t.push(We(r,e.schema.properties[r].title||""));else if(r instanceof Object)switch(!0){case function(e){return qe(e)&&e.type===Se&&0===e.items.length&&!Oe(e.title)}(r):t.push(We(Ne(r.title),r.title,Ke(Te.FormLabel)));break;case Me(r):r.title&&t.push(We(Ne(r.title),r.title,Ke(Te.FormLabel))),r.items.forEach((function(r){if(r instanceof Object){var n=Qe(r.key||"",e,r);n&&t.push(n)}else if("string"==typeof r){var o=Qe(r,e);o&&t.push(o)}}));break;case De(r):var n=Qe(r.key,e);n&&t.push(n)}})),t},Ke=function(e,t){if(void 0===e&&(e=""),void 0===t&&(t=""),Oe(e))return{};var r={format:e};return Oe(t)||(r.display=t),r},Qe=function(e,t,r){void 0===r&&(r=void 0);var n={};switch(t.schema.properties[e].type){case Ce.Number:return We(e,t.schema.properties[e].title||"");case Ce.String:var o=Ye(e,t,r);return xe(o)?t.schema.properties[e].display&&t.schema.properties[e].display===Ee.Header&&(n=Ke(Te.FormLabel)):n=Ke(Te.DateTime,o),We(e,t.schema.properties[e].title||"",n);case Ce.Array:return t.schema.properties[e].items.enum&&t.schema.properties[e].items.enumNames?n=Ke(Te.MultiSelect):t.schema.properties[e].items&&(n=Ke(Te.RepeatableField)),We(e,t.schema.properties[e].title||"",n);case void 0:var i=function(e,t){try{var r=t.definition.find((function(t){return t.key===e}));return"json-schema-checkbox-wrapper"===r.fieldHtmlClass||"checkboxes"===r.type?r:void 0}catch(e){return}}(e,t);return i?(n=Ke(Te.MultiSelect),We(e,i.title||"",n)):(o=Ye(e,t,r),xe(o)?void 0:(n=Ke(Te.DateTime,o),We(e,t.schema.properties[e].title||"",n)))}},Ze=function(){return Ze=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},Ze.apply(this,arguments)},et=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},tt=/[^\w\n\s_"](?=[^:\n\s{}[]]*:[\t\n\s]*(\{|\[)+)/g,rt=/"minimum"(?:[^\\"]|\\\\|\\")*"\d+\.*\d*"/g,nt=/"maximum"(?:[^\\"]|\\\\|\\")*"\d+\.*\d*"/g,ot=/"(?=[^"]*(?:"[^"]*)?$)/g,it=function(e){return{type:"string",readOnly:!0,isHidden:!1,display:Ee.Header,title:e}},at=function(e){return(null==e?void 0:e.isHidden)||!1},ct=function(e){return e.enum.filter((function(t){return!e.inactive_enum.includes(t)}))},st=function(e){return e.titleMap.filter((function(t){return!e.inactive_titleMap.includes(t.value)}))},ut=function(e,t,r,n){var o,i,a,c,s=e.hasCheckboxes,u=e.hasDisabledChoices;if(He(t)&&r.schema.properties[t])r.schema.properties[t].isHidden=at(r.schema.properties[t]);else{if((qe(t)||De(t))&&t.key&&r.schema.properties[t.key]&&(r.schema.properties[t.key].isHidden=at(r.schema.properties[t.key])),u&&function(e){var t,r;return qe(e)&&e.type===Ie&&(null===(t=e.inactive_titleMap)||void 0===t?void 0:t.length)>0&&(null===(r=e.titleMap)||void 0===r?void 0:r.length)>0}(t))if(n){var p=r.definition.indexOf(n),l=r.definition[p].items.indexOf(t);r.definition[p].items[l].titleMap=st(t)}else r.definition[r.definition.indexOf(t)].titleMap=st(t);s&&_e(t)&&(r.schema.properties[t.key]=(o=t,i=r.schema.properties[t.key].title||"",a=r.schema.properties[t.key].required||!1,c=r.schema.properties[t.key].default||!1,Ze(Ze(Ze({type:"array",uniqueItems:!0,isHidden:!1},a&&{required:a}),{title:i||o.title,items:{enum:o.titleMap.map((function(e){return e.value})),enumNames:o.titleMap.map((function(e){return e.name}))}}),c&&{default:c})))}},pt=function(e){var t;e=function(e){if(null!==e.match(tt))throw Error("Special characters not supported in JSON Schema");return(e=(e=(e=(e=(e=e.replace(/([“”])/g,'"')).replace(new RegExp('\\"enum\\"\\n*\\s*\\:\\n*\\s*\\[\\n*\\s*\\]',"g"),'"enum": ["0"]')).replace(new RegExp('\\"enumNames\\"\\n*\\s*\\:\\n*\\s*\\{\\n*\\s*\\}',"g"),'"enumNames": {"0":"No Options"}')).replace(new RegExp('\\"titleMap\\"\\n*\\s*\\:\\n*\\s*\\[\\n*\\s*\\]',"g"),'"titleMap": [{"value":"no_option", "name":"No Option"}]')).replace(rt,(function(e){return e.replace(ot,"")}))).replace(nt,(function(e){return e.replace(ot,"")}))}(e);var r=JSON.parse(e);delete r.schema.$schema,delete r.schema.id,function(e){if(e.schema.definition){var t=e.schema.definition;delete e.schema.definition,e.definition=t}}(r);var n=function(e){return{hasCheckboxes:Ve(e),hasInactiveChoices:$e(e),hasDisabledChoices:Xe(e),hasEnums:Be(e)}}(e);if(function(e){Re(e,(function(e){"object"===e.type&&e.properties&&Object.entries(e.properties).forEach((function(e){var t=e[1];"number"===t.type&&(void 0!==t.default&&(t.default=Fe(t.default)),void 0!==t.minimum&&(t.minimum=Fe(t.minimum)),void 0!==t.maximum&&(t.maximum=Fe(t.maximum)))}))}))}(r.schema),function(e,t){var r=e.hasInactiveChoices,n=e.hasEnums;if(r)for(var o=0,i=Object.keys(t.schema.properties);o<i.length;o++){var a=i[o],c=t.schema.properties[a];Pe(c)&&(t.schema.properties[a].enum=ct(c),Oe(t.schema.properties[a].enum)&&(t.schema.properties[a].enum=["0"],t.schema.properties[a].enumNames={0:"No Options"}))}if(n)for(var s=0,u=Object.keys(t.schema.properties);s<u.length;s++)if(a=u[s],!Oe(t.schema.properties[a].enum)&&ke(t.schema.properties[a].enum))throw new Error("Duplicated enum items")}(n,r),function(e,t){var r;if(Ue(t.definition))!function(e,t){for(var r=0,n=t.definition;r<n.length;r++){var o=n[r];switch(!0){case He(o):break;case Le(o):var i=Ne(o.title);t.schema.properties[i]=it(o.title);break;case Me(o):for(var a=0,c=o.items;a<c.length;a++){var s=c[a];ut(e,s,t,o)}break;case _e(o):ut(e,o,t)}}}(e,t);else if((null===(r=t.definition)||void 0===r?void 0:r.length)>0)for(var n=0,o=t.definition;n<o.length;n++){var i=o[n];ut(e,i,t)}}(n,r),e.includes("helpvalue")&&function(e){for(var t={},r=0,n=0,o=e.definition;n<o.length;n++){var i=o[n];if(He(i))t[i]=e.schema.properties[i],delete e.schema.properties[i];else if(qe(i))if(i.helpvalue){var a="help_value_".concat(r);r+=1,t[a]=it((i.helpvalue||"").replace(/(<.+?>)/g,""))}else i.key&&(t[i.key]=e.schema.properties[i.key],delete e.schema.properties[i.key])}e.schema.properties=Object.assign(t,e.schema.properties)}(r),e.includes("required")){if((null===(t=r.schema.required)||void 0===t?void 0:t.length)>0&&ke(r.schema.required))throw new Error("Duplicated required properties");r.schema=function(e){var t=Array.isArray(e.required)?et([],e.required,!0):null;return Re(e,(function(e,r){if("object"===e.type&&e.properties){var n=[];if(Object.entries(e.properties).forEach((function(e){var t=e[0],r=e[1];(function(e){return"true"===e.required||e.required>0})(r)&&(n.push(t),delete r.required)})),Oe(n))r.length>0&&e.required&&delete e.required;else if(0===r.length&&t){var o=et(et([],t,!0),n,!0);e.required=Array.from(new Set(o))}else e.required=n}})),e}(r.schema)}return r},lt=["CONTAINS","DOES_NOT_HAVE_INPUT","HAS_INPUT","INPUT_IS_EXACTLY"],ft=function(e){var t,r;switch(e.operator){case"CONTAINS":if(void 0===e.value||null===e.value)throw new Error("CONTAINS operator requires a value for condition '".concat(e.id,"'"));r={pattern:String(e.value),type:"string"};break;case"DOES_NOT_HAVE_INPUT":r={anyOf:[{not:{}},{type:"array",maxItems:0},{type:"object",maxProperties:0},{type:"string",maxLength:0},{type:"null"}]};break;case"HAS_INPUT":r={allOf:[{not:{type:"null"}},{anyOf:[{type:"array",minItems:1},{type:"boolean"},{type:"number"},{type:"object",minProperties:1},{type:"string",minLength:1}]}]};break;case"INPUT_IS_EXACTLY":if(void 0===e.value)throw new Error("INPUT_IS_EXACTLY operator requires a value for condition '".concat(e.id,"'"));r=function(e){if("boolean"==typeof e)return{const:e,type:"boolean"};if("number"==typeof e)return{anyOf:[{const:e,type:"number"},{const:String(e),type:"string"}]};if(null===e)return{type:"null"};var t=Number(e);return isNaN(t)||""===e?{const:e,type:"string"}:{anyOf:[{const:t,type:"number"},{const:e,type:"string"}]}}(e.value);break;default:throw new Error("Unknown operator '".concat(e.operator,"' in condition '").concat(e.id,"'"))}return{properties:(t={},t[e.field]=r,t),required:[e.field]}},dt=function(e){if(0===e.length)throw new Error("At least one condition is required");if(1===e.length){var t=e[0];return{scope:"#",schema:ft(t)}}var r=e.map((function(e){return ft(e)}));return{scope:"#",schema:{allOf:r}}},mt=function(e){return{effect:"SHOW",condition:dt(e)}},ht=function(e,t){for(var r=0,n=e;r<n.length;r++){var o=n[r];if(!lt.includes(o.operator))throw new Error("Invalid operator '".concat(o.operator,"'"));if(!t.includes(o.field))throw new Error("Unknown field '".concat(o.field,"'"));if("CONTAINS"===o.operator&&(void 0===o.value||null===o.value))throw new Error("CONTAINS operator requires a value");if("INPUT_IS_EXACTLY"===o.operator&&void 0===o.value)throw new Error("INPUT_IS_EXACTLY operator requires a value")}},yt=function(e,t,r,n){var o,i={type:"Control",scope:"#/properties/".concat(e),label:t.title,options:{}};switch(r.type){case"TEXT":"LONG_TEXT"===r.inputType&&(i.options.multi=!0),r.placeholder&&(i.options.placeholder=r.placeholder);break;case"NUMERIC":i.options.format="number",r.placeholder&&(i.options.placeholder=r.placeholder);break;case"DATE_TIME":i.options.format=t.format||"date-time",i.options.display=t.format||"date-time";break;case"CHOICE_LIST":"array"===t.type?(i.options.multi=!0,"DROPDOWN"===r.inputType?i.options.format="dropdown":"LIST"===r.inputType&&(i.options.format="checkbox")):"DROPDOWN"===r.inputType?i.options.format="dropdown":"LIST"===r.inputType&&(i.options.format="radio"),r.placeholder&&(i.options.placeholder=r.placeholder);break;case"LOCATION":i.options.format="location",i.options.display="map";break;case"COLLECTION":i.options.format="array",i.options.addButtonText=r.buttonText||"Add Item",r.itemIdentifier&&(i.options.itemIdentifier=r.itemIdentifier),void 0!==t.maxItems&&(i.options.maxItems=t.maxItems),void 0!==t.minItems&&(i.options.minItems=t.minItems),"array"===t.type&&(null===(o=t.items)||void 0===o?void 0:o.properties)&&n&&(i.options.detail=bt(t,r,n));break;case"ATTACHMENT":i.options.format="file",r.allowableFileTypes&&(i.options.accept=r.allowableFileTypes.join(","))}return t.description&&(i.options.description=t.description),i},vt=function(e,t){return{type:"Label",text:t.label,options:{size:t.size}}},bt=function(e,t,r){var n;if("array"!==e.type||!(null===(n=e.items)||void 0===n?void 0:n.properties))throw new Error("Collection property must be an array with item properties");var o=e.items.properties,i=[],a=function(e,t){var n=r.ui.fields[e];if(n)return yt(e,t,n,r);var o={type:"Control",scope:"#/properties/".concat(e),label:t.title||e,options:{}};switch(t.type){case"string":"uri"===t.format&&(o.options.format="file",o.options.accept="image/*");break;case"number":o.options.format="number"}return t.description&&(o.options.description=t.description),o};return t&&(t.leftColumn||t.rightColumn)?(t.leftColumn&&t.leftColumn.forEach((function(e){o[e]&&i.push(a(e,o[e]))})),t.rightColumn&&t.rightColumn.forEach((function(e){o[e]&&i.push(a(e,o[e]))}))):Object.entries(o).forEach((function(e){var t=e[0],r=e[1];i.push(a(t,r))})),{type:"VerticalLayout",elements:i}},gt=function(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},Ot=function(e){!function(e){var t=[],r=["TEXT","NUMERIC","DATE_TIME","CHOICE_LIST","LOCATION","COLLECTION","ATTACHMENT"];Object.entries(e.json.properties).forEach((function(n){var o,i=n[0],a=n[1],c=e.ui.fields[i];if(c||!a.deprecated)if(c)if(r.includes(c.type)){if("CHOICE_LIST"===c.type){var s=!1;"array"===a.type&&(null===(o=a.items)||void 0===o?void 0:o.anyOf)?s=a.items.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)})):a.anyOf&&(s=a.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)}))),s||t.push("".concat(i,": CHOICE_LIST field requires embedded oneOf arrays - $ref not supported"))}}else t.push("".concat(i,": unsupported field type '").concat(c.type,"'"));else t.push("".concat(i,": missing UI field definition"))}));var n=Object.keys(e.json.properties);if(Object.entries(e.ui.sections).forEach((function(e){var r=e[0],o=e[1];if(o.conditions&&o.conditions.length>0)try{ht(o.conditions,n)}catch(e){t.push("Section '".concat(r,"': ").concat(e.message))}})),t.length>0)throw new Error("Invalid V2 schema structure: ".concat(t.join(", ")))}(e);var t,r,n,o=function(e){var t=[];return Object.entries(e.json.properties).forEach((function(r){var n=r[0],o=r[1],i=e.ui.fields[n];(function(e){return!e.deprecated})(o)&&i&&t.push({name:n,property:o,uiField:i})})),t}(e),i=(t=o,r=e.ui.sections,n={},t.forEach((function(e){var t=e.uiField.parent;r[t]&&(n[t]||(n[t]=[]),n[t].push(e))})),n),a=[];return e.ui.order.forEach((function(t){var r=e.ui.sections[t],n=i[t]||[],o=n.length>0,c=gt(gt([],r.leftColumn,!0),r.rightColumn,!0).some((function(t){return"header"===t.type&&e.ui.headers[t.name]}));if((null==r?void 0:r.isActive)&&(o||c)){var s=function(e,t,r,n){var o={type:"VerticalLayout",label:t.label,elements:[]},i=[];return t.leftColumn.forEach((function(e){if("field"===e.type){var t=r.find((function(t){return t.scope==="#/properties/".concat(e.name)}));t&&i.push(t)}else if("header"===e.type){var o=n[e.name];if(o){var a=vt(e.name,o);i.push(a)}}})),t.rightColumn.forEach((function(e){if("field"===e.type){var t=r.find((function(t){return t.scope==="#/properties/".concat(e.name)}));t&&i.push(t)}else if("header"===e.type){var o=n[e.name];if(o){var a=vt(e.name,o);i.push(a)}}})),o.elements=i,t.conditions&&t.conditions.length>0&&(o.rule=mt(t.conditions)),o}(0,r,n.map((function(t){var r=t.name,n=t.property,o=t.uiField;return yt(r,n,o,e)})),e.ui.headers);a.push(s)}})),{type:"VerticalLayout",elements:a}},jt=function(e){try{var t=JSON.parse(e),r=t.data||t;return r.json&&r.ui?{version:"v2",data:r}:(r.schema&&r.definition||r.schema&&r.ui,{version:"v1",data:r})}catch(e){throw new Error("Invalid JSON schema: ".concat(e instanceof Error?e.message:"Unknown error"))}},Tt=function(e){var t=jt(e),r=t.version,n=t.data;return{version:r,processedData:JSON.stringify(n)}};module.exports=t})();
|
package/dist/common/types.d.ts
CHANGED
|
@@ -70,6 +70,7 @@ export interface V2UIField {
|
|
|
70
70
|
leftColumn?: string[];
|
|
71
71
|
rightColumn?: string[];
|
|
72
72
|
allowableFileTypes?: string[];
|
|
73
|
+
conditionalDependents?: string[];
|
|
73
74
|
}
|
|
74
75
|
export interface V2Choices {
|
|
75
76
|
type: 'EXISTING_CHOICE_LIST' | 'MY_DATA';
|
|
@@ -85,12 +86,20 @@ export interface V2Header {
|
|
|
85
86
|
section: string;
|
|
86
87
|
size: 'LARGE' | 'MEDIUM' | 'SMALL';
|
|
87
88
|
}
|
|
89
|
+
export type V2ConditionOperator = 'CONTAINS' | 'DOES_NOT_HAVE_INPUT' | 'HAS_INPUT' | 'INPUT_IS_EXACTLY';
|
|
90
|
+
export interface V2Condition {
|
|
91
|
+
field: string;
|
|
92
|
+
id: string;
|
|
93
|
+
operator: V2ConditionOperator;
|
|
94
|
+
value?: string | number | boolean | null;
|
|
95
|
+
}
|
|
88
96
|
export interface V2Section {
|
|
89
97
|
columns: 1 | 2;
|
|
90
98
|
isActive: boolean;
|
|
91
99
|
label: string;
|
|
92
100
|
leftColumn: V2ColumnItem[];
|
|
93
101
|
rightColumn: V2ColumnItem[];
|
|
102
|
+
conditions?: V2Condition[];
|
|
94
103
|
}
|
|
95
104
|
export interface V2ColumnItem {
|
|
96
105
|
name: string;
|
|
@@ -115,10 +124,20 @@ export interface JSONFormsControl extends JSONFormsUIElement {
|
|
|
115
124
|
[key: string]: any;
|
|
116
125
|
};
|
|
117
126
|
}
|
|
127
|
+
export type JSONFormsRuleEffect = 'SHOW' | 'HIDE' | 'ENABLE' | 'DISABLE';
|
|
128
|
+
export interface JSONFormsSchemaBasedCondition {
|
|
129
|
+
scope: string;
|
|
130
|
+
schema: Record<string, unknown>;
|
|
131
|
+
}
|
|
132
|
+
export interface JSONFormsRule {
|
|
133
|
+
effect: JSONFormsRuleEffect;
|
|
134
|
+
condition: JSONFormsSchemaBasedCondition;
|
|
135
|
+
}
|
|
118
136
|
export interface JSONFormsLayout extends JSONFormsUIElement {
|
|
119
137
|
type: 'VerticalLayout' | 'HorizontalLayout' | 'Group' | 'Categorization';
|
|
120
138
|
elements: JSONFormsUIElement[];
|
|
121
139
|
label?: string;
|
|
140
|
+
rule?: JSONFormsRule;
|
|
122
141
|
}
|
|
123
142
|
export interface JSONFormsLabel extends JSONFormsUIElement {
|
|
124
143
|
type: 'Label';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { V2Condition, JSONFormsRule, JSONFormsSchemaBasedCondition } from '../common/types';
|
|
2
|
+
/**
|
|
3
|
+
* Builds a JSON Schema for the CONTAINS operator.
|
|
4
|
+
* Matches strings that contain the specified value as a substring.
|
|
5
|
+
*/
|
|
6
|
+
export declare const buildContainsSchema: (value: string) => Record<string, unknown>;
|
|
7
|
+
/**
|
|
8
|
+
* Builds a JSON Schema for the DOES_NOT_HAVE_INPUT operator.
|
|
9
|
+
* Matches when the field has no meaningful input (null, undefined, empty string, empty array, empty object).
|
|
10
|
+
*/
|
|
11
|
+
export declare const buildDoesNotHaveInputSchema: () => Record<string, unknown>;
|
|
12
|
+
/**
|
|
13
|
+
* Builds a JSON Schema for the HAS_INPUT operator.
|
|
14
|
+
* Matches when the field has meaningful input (non-null, non-empty).
|
|
15
|
+
*/
|
|
16
|
+
export declare const buildHasInputSchema: () => Record<string, unknown>;
|
|
17
|
+
/**
|
|
18
|
+
* Builds a JSON Schema for the INPUT_IS_EXACTLY operator.
|
|
19
|
+
* Matches when the field value equals the specified value exactly.
|
|
20
|
+
*/
|
|
21
|
+
export declare const buildInputIsExactlySchema: (value: string | number | boolean | null) => Record<string, unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Builds a JSON Schema for a single condition based on its operator.
|
|
24
|
+
*/
|
|
25
|
+
export declare const buildConditionSchema: (condition: V2Condition) => Record<string, unknown>;
|
|
26
|
+
/**
|
|
27
|
+
* Builds a JSONForms schema-based condition from one or more V2 conditions.
|
|
28
|
+
* Multiple conditions are combined with allOf (AND logic).
|
|
29
|
+
*/
|
|
30
|
+
export declare const buildSchemaBasedCondition: (conditions: V2Condition[]) => JSONFormsSchemaBasedCondition;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a complete JSONForms rule for a section with the given conditions.
|
|
33
|
+
* Uses SHOW effect by default.
|
|
34
|
+
*/
|
|
35
|
+
export declare const createSectionRule: (conditions: V2Condition[]) => JSONFormsRule;
|
|
36
|
+
/**
|
|
37
|
+
* Validates conditions for a section.
|
|
38
|
+
* Throws an error if any condition is invalid.
|
|
39
|
+
*/
|
|
40
|
+
export declare const validateConditions: (conditions: V2Condition[], fieldNames: string[]) => void;
|
|
41
|
+
//# sourceMappingURL=conditions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditions.d.ts","sourceRoot":"","sources":["../../src/v2/conditions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,aAAa,EACb,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAEzB;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAAW,MAAM,KAAG,OAAO,MAAM,EAAE,OAAO,CAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,QAAO,OAAO,MAAM,EAAE,OAAO,CAUpE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,QAAO,OAAO,MAAM,EAAE,OAAO,CAe5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,UAC7B,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,KACtC,OAAO,MAAM,EAAE,OAAO,CA2BxB,CAAC;AASF;;GAEG;AACH,eAAO,MAAM,oBAAoB,cACpB,WAAW,KACrB,OAAO,MAAM,EAAE,OAAO,CA2CxB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,eACxB,WAAW,EAAE,KACxB,6BAwBF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,eAAgB,WAAW,EAAE,KAAG,aAK7D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,eACjB,WAAW,EAAE,cACb,MAAM,EAAE,KACnB,IA2BF,CAAC"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds a JSON Schema for the CONTAINS operator.
|
|
3
|
+
* Matches strings that contain the specified value as a substring.
|
|
4
|
+
*/
|
|
5
|
+
export var buildContainsSchema = function (value) {
|
|
6
|
+
return {
|
|
7
|
+
pattern: value,
|
|
8
|
+
type: 'string',
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Builds a JSON Schema for the DOES_NOT_HAVE_INPUT operator.
|
|
13
|
+
* Matches when the field has no meaningful input (null, undefined, empty string, empty array, empty object).
|
|
14
|
+
*/
|
|
15
|
+
export var buildDoesNotHaveInputSchema = function () {
|
|
16
|
+
return {
|
|
17
|
+
anyOf: [
|
|
18
|
+
{ not: {} }, // undefined/not required
|
|
19
|
+
{ type: 'array', maxItems: 0 }, // empty array
|
|
20
|
+
{ type: 'object', maxProperties: 0 }, // empty object
|
|
21
|
+
{ type: 'string', maxLength: 0 }, // empty string
|
|
22
|
+
{ type: 'null' }, // null value
|
|
23
|
+
],
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Builds a JSON Schema for the HAS_INPUT operator.
|
|
28
|
+
* Matches when the field has meaningful input (non-null, non-empty).
|
|
29
|
+
*/
|
|
30
|
+
export var buildHasInputSchema = function () {
|
|
31
|
+
return {
|
|
32
|
+
allOf: [
|
|
33
|
+
{ not: { type: 'null' } },
|
|
34
|
+
{
|
|
35
|
+
anyOf: [
|
|
36
|
+
{ type: 'array', minItems: 1 },
|
|
37
|
+
{ type: 'boolean' },
|
|
38
|
+
{ type: 'number' },
|
|
39
|
+
{ type: 'object', minProperties: 1 },
|
|
40
|
+
{ type: 'string', minLength: 1 },
|
|
41
|
+
],
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Builds a JSON Schema for the INPUT_IS_EXACTLY operator.
|
|
48
|
+
* Matches when the field value equals the specified value exactly.
|
|
49
|
+
*/
|
|
50
|
+
export var buildInputIsExactlySchema = function (value) {
|
|
51
|
+
// Handle different value types
|
|
52
|
+
if (typeof value === 'boolean') {
|
|
53
|
+
return { const: value, type: 'boolean' };
|
|
54
|
+
}
|
|
55
|
+
if (typeof value === 'number') {
|
|
56
|
+
return {
|
|
57
|
+
anyOf: [
|
|
58
|
+
{ const: value, type: 'number' },
|
|
59
|
+
{ const: String(value), type: 'string' },
|
|
60
|
+
],
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if (value === null) {
|
|
64
|
+
return { type: 'null' };
|
|
65
|
+
}
|
|
66
|
+
// String value - also allow numeric match if the string is a valid number
|
|
67
|
+
var numValue = Number(value);
|
|
68
|
+
if (!isNaN(numValue) && value !== '') {
|
|
69
|
+
return {
|
|
70
|
+
anyOf: [
|
|
71
|
+
{ const: numValue, type: 'number' },
|
|
72
|
+
{ const: value, type: 'string' },
|
|
73
|
+
],
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
return { const: value, type: 'string' };
|
|
77
|
+
};
|
|
78
|
+
var VALID_OPERATORS = [
|
|
79
|
+
'CONTAINS',
|
|
80
|
+
'DOES_NOT_HAVE_INPUT',
|
|
81
|
+
'HAS_INPUT',
|
|
82
|
+
'INPUT_IS_EXACTLY',
|
|
83
|
+
];
|
|
84
|
+
/**
|
|
85
|
+
* Builds a JSON Schema for a single condition based on its operator.
|
|
86
|
+
*/
|
|
87
|
+
export var buildConditionSchema = function (condition) {
|
|
88
|
+
var _a;
|
|
89
|
+
var operatorSchema;
|
|
90
|
+
switch (condition.operator) {
|
|
91
|
+
case 'CONTAINS':
|
|
92
|
+
if (condition.value === undefined || condition.value === null) {
|
|
93
|
+
throw new Error("CONTAINS operator requires a value for condition '".concat(condition.id, "'"));
|
|
94
|
+
}
|
|
95
|
+
operatorSchema = buildContainsSchema(String(condition.value));
|
|
96
|
+
break;
|
|
97
|
+
case 'DOES_NOT_HAVE_INPUT':
|
|
98
|
+
operatorSchema = buildDoesNotHaveInputSchema();
|
|
99
|
+
break;
|
|
100
|
+
case 'HAS_INPUT':
|
|
101
|
+
operatorSchema = buildHasInputSchema();
|
|
102
|
+
break;
|
|
103
|
+
case 'INPUT_IS_EXACTLY':
|
|
104
|
+
if (condition.value === undefined) {
|
|
105
|
+
throw new Error("INPUT_IS_EXACTLY operator requires a value for condition '".concat(condition.id, "'"));
|
|
106
|
+
}
|
|
107
|
+
operatorSchema = buildInputIsExactlySchema(condition.value);
|
|
108
|
+
break;
|
|
109
|
+
default:
|
|
110
|
+
throw new Error("Unknown operator '".concat(condition.operator, "' in condition '").concat(condition.id, "'"));
|
|
111
|
+
}
|
|
112
|
+
// Wrap in properties structure for the field
|
|
113
|
+
return {
|
|
114
|
+
properties: (_a = {},
|
|
115
|
+
_a[condition.field] = operatorSchema,
|
|
116
|
+
_a),
|
|
117
|
+
required: [condition.field],
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* Builds a JSONForms schema-based condition from one or more V2 conditions.
|
|
122
|
+
* Multiple conditions are combined with allOf (AND logic).
|
|
123
|
+
*/
|
|
124
|
+
export var buildSchemaBasedCondition = function (conditions) {
|
|
125
|
+
if (conditions.length === 0) {
|
|
126
|
+
throw new Error('At least one condition is required');
|
|
127
|
+
}
|
|
128
|
+
if (conditions.length === 1) {
|
|
129
|
+
var condition = conditions[0];
|
|
130
|
+
return {
|
|
131
|
+
scope: '#',
|
|
132
|
+
schema: buildConditionSchema(condition),
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
// Multiple conditions: combine with allOf
|
|
136
|
+
var allOfSchemas = conditions.map(function (condition) {
|
|
137
|
+
return buildConditionSchema(condition);
|
|
138
|
+
});
|
|
139
|
+
return {
|
|
140
|
+
scope: '#',
|
|
141
|
+
schema: {
|
|
142
|
+
allOf: allOfSchemas,
|
|
143
|
+
},
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Creates a complete JSONForms rule for a section with the given conditions.
|
|
148
|
+
* Uses SHOW effect by default.
|
|
149
|
+
*/
|
|
150
|
+
export var createSectionRule = function (conditions) {
|
|
151
|
+
return {
|
|
152
|
+
effect: 'SHOW',
|
|
153
|
+
condition: buildSchemaBasedCondition(conditions),
|
|
154
|
+
};
|
|
155
|
+
};
|
|
156
|
+
/**
|
|
157
|
+
* Validates conditions for a section.
|
|
158
|
+
* Throws an error if any condition is invalid.
|
|
159
|
+
*/
|
|
160
|
+
export var validateConditions = function (conditions, fieldNames) {
|
|
161
|
+
for (var _i = 0, conditions_1 = conditions; _i < conditions_1.length; _i++) {
|
|
162
|
+
var condition = conditions_1[_i];
|
|
163
|
+
// Validate operator
|
|
164
|
+
if (!VALID_OPERATORS.includes(condition.operator)) {
|
|
165
|
+
throw new Error("Invalid operator '".concat(condition.operator, "'"));
|
|
166
|
+
}
|
|
167
|
+
// Validate field exists
|
|
168
|
+
if (!fieldNames.includes(condition.field)) {
|
|
169
|
+
throw new Error("Unknown field '".concat(condition.field, "'"));
|
|
170
|
+
}
|
|
171
|
+
// Validate required values
|
|
172
|
+
if (condition.operator === 'CONTAINS' &&
|
|
173
|
+
(condition.value === undefined || condition.value === null)) {
|
|
174
|
+
throw new Error("CONTAINS operator requires a value");
|
|
175
|
+
}
|
|
176
|
+
if (condition.operator === 'INPUT_IS_EXACTLY' &&
|
|
177
|
+
condition.value === undefined) {
|
|
178
|
+
throw new Error("INPUT_IS_EXACTLY operator requires a value");
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
//# sourceMappingURL=conditions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/v2/conditions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateUISchema.d.ts","sourceRoot":"","sources":["../../src/v2/generateUISchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,iBAAiB,EAElB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"generateUISchema.d.ts","sourceRoot":"","sources":["../../src/v2/generateUISchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,iBAAiB,EAElB,MAAM,iBAAiB,CAAC;AA8EzB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,WAAY,QAAQ,KAAG,iBAuCnD,CAAC"}
|
|
@@ -8,6 +8,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
8
8
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
9
9
|
};
|
|
10
10
|
import { createControl, createSectionLayout, getVisibleFields, groupFieldsBySection } from './utils';
|
|
11
|
+
import { validateConditions } from './conditions';
|
|
11
12
|
/**
|
|
12
13
|
* Validates V2 schema structure for known issues
|
|
13
14
|
*/
|
|
@@ -54,6 +55,19 @@ var validateV2Schema = function (schema) {
|
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
});
|
|
58
|
+
// Validate section conditions
|
|
59
|
+
var fieldNames = Object.keys(schema.json.properties);
|
|
60
|
+
Object.entries(schema.ui.sections).forEach(function (_a) {
|
|
61
|
+
var sectionId = _a[0], section = _a[1];
|
|
62
|
+
if (section.conditions && section.conditions.length > 0) {
|
|
63
|
+
try {
|
|
64
|
+
validateConditions(section.conditions, fieldNames);
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
invalidFields.push("Section '".concat(sectionId, "': ").concat(error.message));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
57
71
|
if (invalidFields.length > 0) {
|
|
58
72
|
throw new Error("Invalid V2 schema structure: ".concat(invalidFields.join(', ')));
|
|
59
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateUISchema.js","sourceRoot":"","sources":["../../src/v2/generateUISchema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generateUISchema.js","sourceRoot":"","sources":["../../src/v2/generateUISchema.ts"],"names":[],"mappings":"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"}
|
package/dist/v2/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { generateUISchema } from './generateUISchema';
|
|
2
|
-
export
|
|
2
|
+
export { buildConditionSchema, buildSchemaBasedCondition, createSectionRule, validateConditions } from './conditions';
|
|
3
|
+
export type { V2Schema, V2Property, V2UIField, V2Section, V2Header, V2Condition, V2ConditionOperator, JSONFormsUISchema, JSONFormsRule, JSONFormsRuleEffect, JSONFormsSchemaBasedCondition } from '../common/types';
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/v2/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/v2/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,YAAY,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/v2/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC"}
|
package/dist/v2/index.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// V2 API exports - new JSONForms v2 schema format
|
|
2
2
|
export { generateUISchema } from './generateUISchema';
|
|
3
|
+
// Condition utilities
|
|
4
|
+
export { buildConditionSchema, buildSchemaBasedCondition, createSectionRule, validateConditions } from './conditions';
|
|
3
5
|
//# sourceMappingURL=index.js.map
|
package/dist/v2/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/v2/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/v2/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,cAAc,CAAC"}
|
package/dist/v2/utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { V2Schema, V2UIField, V2Property, V2Header, JSONFormsControl, JSONFormsLayout, JSONFormsLabel } from
|
|
1
|
+
import { V2Schema, V2UIField, V2Property, V2Header, JSONFormsControl, JSONFormsLayout, JSONFormsLabel } from "../common/types";
|
|
2
2
|
/**
|
|
3
3
|
* Determines if a field should be rendered based on deprecation status
|
|
4
4
|
*/
|
|
@@ -14,7 +14,7 @@ export declare const createHeaderLabel: (headerId: string, header: V2Header) =>
|
|
|
14
14
|
/**
|
|
15
15
|
* Creates a single-column vertical layout for a section
|
|
16
16
|
*/
|
|
17
|
-
export declare const createSectionLayout: (sectionId: string, section: V2Schema[
|
|
17
|
+
export declare const createSectionLayout: (sectionId: string, section: V2Schema["ui"]["sections"][string], fieldControls: JSONFormsControl[], headers: Record<string, V2Header>) => JSONFormsLayout;
|
|
18
18
|
/**
|
|
19
19
|
* Gets all fields that should be rendered (non-deprecated, visible)
|
|
20
20
|
*/
|
|
@@ -30,7 +30,7 @@ export declare const groupFieldsBySection: (fields: Array<{
|
|
|
30
30
|
name: string;
|
|
31
31
|
property: V2Property;
|
|
32
32
|
uiField: V2UIField;
|
|
33
|
-
}>, sections: V2Schema[
|
|
33
|
+
}>, sections: V2Schema["ui"]["sections"]) => Record<string, Array<{
|
|
34
34
|
name: string;
|
|
35
35
|
property: V2Property;
|
|
36
36
|
uiField: V2UIField;
|
package/dist/v2/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/v2/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EAEV,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,cAAc,EAGf,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/v2/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EAEV,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,cAAc,EAGf,MAAM,iBAAiB,CAAC;AAIzB;;GAEG;AACH,eAAO,MAAM,cAAc,aAAc,UAAU,KAAG,OAErD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,cACb,MAAM,YACP,UAAU,WACX,SAAS,WACT,QAAQ,KAChB,gBAmGF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,aAClB,MAAM,UACR,QAAQ,KACf,cAQF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,cACnB,MAAM,WACR,QAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,iBAC5B,gBAAgB,EAAE,WACxB,OAAO,MAAM,EAAE,QAAQ,CAAC,KAChC,eAsDF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,WACnB,QAAQ,KACf,MAAM;IAAE,MAAM,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,SAAS,CAAA;CAAE,CAgBlE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,WACvB,MAAM;IAAE,MAAM,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,SAAS,CAAA;CAAE,CAAC,YAC/D,QAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KACnC,OACD,MAAM,EACN,MAAM;IAAE,MAAM,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,SAAS,CAAA;CAAE,CAAC,CAoBlE,CAAC"}
|
package/dist/v2/utils.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createSectionRule } from "./conditions";
|
|
1
2
|
/**
|
|
2
3
|
* Determines if a field should be rendered based on deprecation status
|
|
3
4
|
*/
|
|
@@ -10,64 +11,64 @@ export var isFieldVisible = function (property) {
|
|
|
10
11
|
export var createControl = function (fieldName, property, uiField, schema) {
|
|
11
12
|
var _a;
|
|
12
13
|
var control = {
|
|
13
|
-
type:
|
|
14
|
+
type: "Control",
|
|
14
15
|
scope: "#/properties/".concat(fieldName),
|
|
15
16
|
label: property.title,
|
|
16
|
-
options: {}
|
|
17
|
+
options: {},
|
|
17
18
|
};
|
|
18
19
|
// Add format based on field type
|
|
19
20
|
switch (uiField.type) {
|
|
20
|
-
case
|
|
21
|
-
if (uiField.inputType ===
|
|
21
|
+
case "TEXT":
|
|
22
|
+
if (uiField.inputType === "LONG_TEXT") {
|
|
22
23
|
control.options.multi = true;
|
|
23
24
|
}
|
|
24
25
|
if (uiField.placeholder) {
|
|
25
26
|
control.options.placeholder = uiField.placeholder;
|
|
26
27
|
}
|
|
27
28
|
break;
|
|
28
|
-
case
|
|
29
|
-
control.options.format =
|
|
29
|
+
case "NUMERIC":
|
|
30
|
+
control.options.format = "number";
|
|
30
31
|
if (uiField.placeholder) {
|
|
31
32
|
control.options.placeholder = uiField.placeholder;
|
|
32
33
|
}
|
|
33
34
|
break;
|
|
34
|
-
case
|
|
35
|
+
case "DATE_TIME":
|
|
35
36
|
// Always set format and display for DATE_TIME fields
|
|
36
|
-
control.options.format = property.format ||
|
|
37
|
-
control.options.display = property.format ||
|
|
37
|
+
control.options.format = property.format || "date-time";
|
|
38
|
+
control.options.display = property.format || "date-time";
|
|
38
39
|
break;
|
|
39
|
-
case
|
|
40
|
+
case "CHOICE_LIST":
|
|
40
41
|
// Handle multiple choice (array type) first
|
|
41
|
-
if (property.type ===
|
|
42
|
+
if (property.type === "array") {
|
|
42
43
|
control.options.multi = true;
|
|
43
44
|
// For arrays, use appropriate multi-select format
|
|
44
|
-
if (uiField.inputType ===
|
|
45
|
-
control.options.format =
|
|
45
|
+
if (uiField.inputType === "DROPDOWN") {
|
|
46
|
+
control.options.format = "dropdown";
|
|
46
47
|
}
|
|
47
|
-
else if (uiField.inputType ===
|
|
48
|
-
control.options.format =
|
|
48
|
+
else if (uiField.inputType === "LIST") {
|
|
49
|
+
control.options.format = "checkbox";
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
else {
|
|
52
53
|
// Single select
|
|
53
|
-
if (uiField.inputType ===
|
|
54
|
-
control.options.format =
|
|
54
|
+
if (uiField.inputType === "DROPDOWN") {
|
|
55
|
+
control.options.format = "dropdown";
|
|
55
56
|
}
|
|
56
|
-
else if (uiField.inputType ===
|
|
57
|
-
control.options.format =
|
|
57
|
+
else if (uiField.inputType === "LIST") {
|
|
58
|
+
control.options.format = "radio";
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
if (uiField.placeholder) {
|
|
61
62
|
control.options.placeholder = uiField.placeholder;
|
|
62
63
|
}
|
|
63
64
|
break;
|
|
64
|
-
case
|
|
65
|
-
control.options.format =
|
|
66
|
-
control.options.display =
|
|
65
|
+
case "LOCATION":
|
|
66
|
+
control.options.format = "location";
|
|
67
|
+
control.options.display = "map";
|
|
67
68
|
break;
|
|
68
|
-
case
|
|
69
|
-
control.options.format =
|
|
70
|
-
control.options.addButtonText = uiField.buttonText ||
|
|
69
|
+
case "COLLECTION":
|
|
70
|
+
control.options.format = "array";
|
|
71
|
+
control.options.addButtonText = uiField.buttonText || "Add Item";
|
|
71
72
|
if (uiField.itemIdentifier) {
|
|
72
73
|
control.options.itemIdentifier = uiField.itemIdentifier;
|
|
73
74
|
}
|
|
@@ -78,14 +79,14 @@ export var createControl = function (fieldName, property, uiField, schema) {
|
|
|
78
79
|
if (property.minItems !== undefined) {
|
|
79
80
|
control.options.minItems = property.minItems;
|
|
80
81
|
}
|
|
81
|
-
if (property.type ===
|
|
82
|
+
if (property.type === "array" && ((_a = property.items) === null || _a === void 0 ? void 0 : _a.properties) && schema) {
|
|
82
83
|
control.options.detail = generateCollectionUISchemaInternal(property, uiField, schema);
|
|
83
84
|
}
|
|
84
85
|
break;
|
|
85
|
-
case
|
|
86
|
-
control.options.format =
|
|
86
|
+
case "ATTACHMENT":
|
|
87
|
+
control.options.format = "file";
|
|
87
88
|
if (uiField.allowableFileTypes) {
|
|
88
|
-
control.options.accept = uiField.allowableFileTypes.join(
|
|
89
|
+
control.options.accept = uiField.allowableFileTypes.join(",");
|
|
89
90
|
}
|
|
90
91
|
break;
|
|
91
92
|
}
|
|
@@ -100,11 +101,11 @@ export var createControl = function (fieldName, property, uiField, schema) {
|
|
|
100
101
|
*/
|
|
101
102
|
export var createHeaderLabel = function (headerId, header) {
|
|
102
103
|
return {
|
|
103
|
-
type:
|
|
104
|
+
type: "Label",
|
|
104
105
|
text: header.label,
|
|
105
106
|
options: {
|
|
106
|
-
size: header.size
|
|
107
|
-
}
|
|
107
|
+
size: header.size,
|
|
108
|
+
},
|
|
108
109
|
};
|
|
109
110
|
};
|
|
110
111
|
/**
|
|
@@ -112,21 +113,21 @@ export var createHeaderLabel = function (headerId, header) {
|
|
|
112
113
|
*/
|
|
113
114
|
export var createSectionLayout = function (sectionId, section, fieldControls, headers) {
|
|
114
115
|
var layout = {
|
|
115
|
-
type:
|
|
116
|
+
type: "VerticalLayout", // Always vertical for React Native
|
|
116
117
|
label: section.label,
|
|
117
|
-
elements: []
|
|
118
|
+
elements: [],
|
|
118
119
|
};
|
|
119
120
|
// Order: leftColumn items first, then rightColumn items
|
|
120
121
|
var orderedElements = [];
|
|
121
122
|
// Add left column elements first
|
|
122
123
|
section.leftColumn.forEach(function (item) {
|
|
123
|
-
if (item.type ===
|
|
124
|
+
if (item.type === "field") {
|
|
124
125
|
var element = fieldControls.find(function (el) { return el.scope === "#/properties/".concat(item.name); });
|
|
125
126
|
if (element) {
|
|
126
127
|
orderedElements.push(element);
|
|
127
128
|
}
|
|
128
129
|
}
|
|
129
|
-
else if (item.type ===
|
|
130
|
+
else if (item.type === "header") {
|
|
130
131
|
var header = headers[item.name];
|
|
131
132
|
if (header) {
|
|
132
133
|
var headerLabel = createHeaderLabel(item.name, header);
|
|
@@ -136,13 +137,13 @@ export var createSectionLayout = function (sectionId, section, fieldControls, he
|
|
|
136
137
|
});
|
|
137
138
|
// Add right column elements after left column
|
|
138
139
|
section.rightColumn.forEach(function (item) {
|
|
139
|
-
if (item.type ===
|
|
140
|
+
if (item.type === "field") {
|
|
140
141
|
var element = fieldControls.find(function (el) { return el.scope === "#/properties/".concat(item.name); });
|
|
141
142
|
if (element) {
|
|
142
143
|
orderedElements.push(element);
|
|
143
144
|
}
|
|
144
145
|
}
|
|
145
|
-
else if (item.type ===
|
|
146
|
+
else if (item.type === "header") {
|
|
146
147
|
var header = headers[item.name];
|
|
147
148
|
if (header) {
|
|
148
149
|
var headerLabel = createHeaderLabel(item.name, header);
|
|
@@ -151,6 +152,10 @@ export var createSectionLayout = function (sectionId, section, fieldControls, he
|
|
|
151
152
|
}
|
|
152
153
|
});
|
|
153
154
|
layout.elements = orderedElements;
|
|
155
|
+
// Add rule if section has conditions
|
|
156
|
+
if (section.conditions && section.conditions.length > 0) {
|
|
157
|
+
layout.rule = createSectionRule(section.conditions);
|
|
158
|
+
}
|
|
154
159
|
return layout;
|
|
155
160
|
};
|
|
156
161
|
/**
|
|
@@ -189,37 +194,34 @@ export var groupFieldsBySection = function (fields, sections) {
|
|
|
189
194
|
*/
|
|
190
195
|
var generateCollectionUISchemaInternal = function (collectionProperty, uiField, schema) {
|
|
191
196
|
var _a;
|
|
192
|
-
if (collectionProperty.type !==
|
|
193
|
-
|
|
197
|
+
if (collectionProperty.type !== "array" ||
|
|
198
|
+
!((_a = collectionProperty.items) === null || _a === void 0 ? void 0 : _a.properties)) {
|
|
199
|
+
throw new Error("Collection property must be an array with item properties");
|
|
194
200
|
}
|
|
195
201
|
var itemProperties = collectionProperty.items.properties;
|
|
196
202
|
var itemControls = [];
|
|
197
203
|
// Helper function to create control for a collection item field
|
|
198
204
|
var createItemControl = function (fieldName, property) {
|
|
199
|
-
// Look up the UI field definition for this item field
|
|
200
205
|
var itemUiField = schema.ui.fields[fieldName];
|
|
201
206
|
if (itemUiField) {
|
|
202
|
-
// Use the main createControl function to get full feature support
|
|
203
|
-
// Cast property to V2Property since collection items should have the same structure
|
|
204
207
|
return createControl(fieldName, property, itemUiField, schema);
|
|
205
208
|
}
|
|
206
|
-
// Fallback: create a basic control if no UI field definition exists
|
|
207
209
|
var control = {
|
|
208
|
-
type:
|
|
210
|
+
type: "Control",
|
|
209
211
|
scope: "#/properties/".concat(fieldName),
|
|
210
212
|
label: property.title || fieldName,
|
|
211
|
-
options: {}
|
|
213
|
+
options: {},
|
|
212
214
|
};
|
|
213
215
|
// Set basic options based on property type
|
|
214
216
|
switch (property.type) {
|
|
215
|
-
case
|
|
216
|
-
if (property.format ===
|
|
217
|
-
control.options.format =
|
|
218
|
-
control.options.accept =
|
|
217
|
+
case "string":
|
|
218
|
+
if (property.format === "uri") {
|
|
219
|
+
control.options.format = "file";
|
|
220
|
+
control.options.accept = "image/*";
|
|
219
221
|
}
|
|
220
222
|
break;
|
|
221
|
-
case
|
|
222
|
-
control.options.format =
|
|
223
|
+
case "number":
|
|
224
|
+
control.options.format = "number";
|
|
223
225
|
break;
|
|
224
226
|
}
|
|
225
227
|
if (property.description) {
|
|
@@ -253,8 +255,8 @@ var generateCollectionUISchemaInternal = function (collectionProperty, uiField,
|
|
|
253
255
|
});
|
|
254
256
|
}
|
|
255
257
|
var uiSchema = {
|
|
256
|
-
type:
|
|
257
|
-
elements: itemControls
|
|
258
|
+
type: "VerticalLayout",
|
|
259
|
+
elements: itemControls,
|
|
258
260
|
};
|
|
259
261
|
return uiSchema;
|
|
260
262
|
};
|
package/dist/v2/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/v2/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/v2/utils.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,QAAoB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;AAC9B,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,aAAa,GAAG,UAC3B,SAAiB,EACjB,QAAoB,EACpB,OAAkB,EAClB,MAAiB;;IAEjB,IAAM,OAAO,GAAqB;QAChC,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,uBAAgB,SAAS,CAAE;QAClC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,iCAAiC;IACjC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,IAAI,OAAO,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;gBACtC,OAAO,CAAC,OAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;YAChC,CAAC;YACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,OAAO,CAAC,OAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACrD,CAAC;YACD,MAAM;QAER,KAAK,SAAS;YACZ,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;YACnC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,OAAO,CAAC,OAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACrD,CAAC;YACD,MAAM;QAER,KAAK,WAAW;YACd,qDAAqD;YACrD,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC;YACzD,OAAO,CAAC,OAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC;YAC1D,MAAM;QAER,KAAK,aAAa;YAChB,4CAA4C;YAC5C,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,CAAC,OAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;gBAC9B,kDAAkD;gBAClD,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;oBACrC,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;gBACvC,CAAC;qBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;oBACxC,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;gBACvC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,gBAAgB;gBAChB,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;oBACrC,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;gBACvC,CAAC;qBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;oBACxC,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,OAAO,CAAC;gBACpC,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,OAAO,CAAC,OAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACrD,CAAC;YACD,MAAM;QAER,KAAK,UAAU;YACb,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;YACrC,OAAO,CAAC,OAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,MAAM;QAER,KAAK,YAAY;YACf,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,OAAO,CAAC;YAClC,OAAO,CAAC,OAAQ,CAAC,aAAa,GAAG,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC;YAClE,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,OAAO,CAAC,OAAQ,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YAC3D,CAAC;YAED,6BAA6B;YAC7B,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACpC,OAAO,CAAC,OAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAChD,CAAC;YACD,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACpC,OAAO,CAAC,OAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAChD,CAAC;YAED,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,KAAI,MAAA,QAAQ,CAAC,KAAK,0CAAE,UAAU,CAAA,IAAI,MAAM,EAAE,CAAC;gBACtE,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,kCAAkC,CAC1D,QAAQ,EACR,OAAO,EACP,MAAM,CACP,CAAC;YACJ,CAAC;YACD,MAAM;QAER,KAAK,YAAY;YACf,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;YACjC,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBAC/B,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjE,CAAC;YACD,MAAM;IACV,CAAC;IAED,+BAA+B;IAC/B,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACzB,OAAO,CAAC,OAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;IACtD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAC/B,QAAgB,EAChB,MAAgB;IAEhB,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,MAAM,CAAC,KAAK;QAClB,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,mBAAmB,GAAG,UACjC,SAAiB,EACjB,OAA2C,EAC3C,aAAiC,EACjC,OAAiC;IAEjC,IAAM,MAAM,GAAoB;QAC9B,IAAI,EAAE,gBAAgB,EAAE,mCAAmC;QAC3D,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF,wDAAwD;IACxD,IAAM,eAAe,GAAyB,EAAE,CAAC;IAEjD,iCAAiC;IACjC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,UAAC,IAAI;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAChC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,KAAK,uBAAgB,IAAI,CAAC,IAAI,CAAE,EAAxC,CAAwC,CACjD,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE,CAAC;gBACX,IAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACzD,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,8CAA8C;IAC9C,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,IAAI;QAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAChC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,KAAK,uBAAgB,IAAI,CAAC,IAAI,CAAE,EAAxC,CAAwC,CACjD,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE,CAAC;gBACX,IAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACzD,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,GAAG,eAAe,CAAC;IAElC,qCAAqC;IACrC,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG,UAC9B,MAAgB;IAEhB,IAAM,aAAa,GAId,EAAE,CAAC;IAER,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAC,EAAqB;YAApB,SAAS,QAAA,EAAE,QAAQ,QAAA;QAClE,IAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE5C,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;YACxC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,UAAA,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAClC,MAAyE,EACzE,QAAoC;IAKpC,IAAM,OAAO,GAGT,EAAE,CAAC;IAEP,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;QACnB,IAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAEvC,gEAAgE;QAChE,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YAC1B,CAAC;YACD,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;GAEG;AACH,IAAM,kCAAkC,GAAG,UACzC,kBAA8B,EAC9B,OAAkB,EAClB,MAAgB;;IAEhB,IACE,kBAAkB,CAAC,IAAI,KAAK,OAAO;QACnC,CAAC,CAAA,MAAA,kBAAkB,CAAC,KAAK,0CAAE,UAAU,CAAA,EACrC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IAED,IAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC;IAC3D,IAAM,YAAY,GAAuB,EAAE,CAAC;IAE5C,gEAAgE;IAChE,IAAM,iBAAiB,GAAG,UACxB,SAAiB,EACjB,QAAwB;QAExB,IAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEhD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,aAAa,CAClB,SAAS,EACT,QAAsB,EACtB,WAAW,EACX,MAAM,CACP,CAAC;QACJ,CAAC;QAED,IAAM,OAAO,GAAqB;YAChC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,uBAAgB,SAAS,CAAE;YAClC,KAAK,EAAG,QAAgB,CAAC,KAAK,IAAI,SAAS;YAC3C,OAAO,EAAE,EAAE;SACZ,CAAC;QAEF,2CAA2C;QAC3C,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,QAAQ;gBACX,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC9B,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;oBACjC,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,SAAS,CAAC;gBACtC,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,CAAC,OAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;gBACnC,MAAM;QACV,CAAC;QAED,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,CAAC,OAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;QACtD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,0DAA0D;IAC1D,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3D,+BAA+B;QAC/B,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS;gBACnC,IAAI,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC9B,YAAY,CAAC,IAAI,CACf,iBAAiB,CAAC,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CACxD,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,6DAA6D;QAC7D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,SAAS;gBACpC,IAAI,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC9B,YAAY,CAAC,IAAI,CACf,iBAAiB,CAAC,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CACxD,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,UAAC,EAAqB;gBAApB,SAAS,QAAA,EAAE,QAAQ,QAAA;YAC1D,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAM,QAAQ,GAAsB;QAClC,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,YAAY;KACvB,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
|