@earthranger/react-native-jsonforms-formatter 2.0.0-beta.22 → 2.0.0-beta.24
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 +2 -2
- package/dist/common/types.d.ts.map +1 -1
- package/dist/v2/conditions.d.ts +45 -16
- package/dist/v2/conditions.d.ts.map +1 -1
- package/dist/v2/conditions.js +222 -32
- package/dist/v2/conditions.js.map +1 -1
- package/dist/v2/index.d.ts +1 -1
- package/dist/v2/index.d.ts.map +1 -1
- package/dist/v2/index.js +1 -1
- package/dist/v2/index.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!==d&&d.toStringTag&&Object.defineProperty(e,d.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{detectSchemaVersion:()=>St,generateUISchema:()=>ze,processSchema:()=>At,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:()=>dt,buildSchemaBasedCondition:()=>mt,createSectionRule:()=>ht,extractConditionalProperties:()=>Ot,extractConditionalRequired:()=>jt,generateUISchema:()=>wt,validateConditions:()=>yt});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 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 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=j(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},w=f["__core-js_shared__"];var S,A=(S=/[^.]+$/.exec(w&&w.keys&&w.keys.IE_PROTO||""))?"Symbol(src)_1."+S:"";var I=Function.prototype.toString;const C=function(e){if(null!=e){try{return I.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var N=/^\[object .+?Constructor\]$/,k=Function.prototype,_=Object.prototype,x=k.toString,q=_.hasOwnProperty,P=RegExp("^"+x.call(q).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)?P:N).test(C(e))},M=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return L(r)?r:void 0},D=M(f,"DataView"),U=M(f,"Map"),F=M(f,"Promise"),H=M(f,"Set"),R=M(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(F),G=C(H),K=C(R),Q=j;(D&&Q(new D(new ArrayBuffer(1)))!=J||U&&Q(new U)!=V||F&&Q(F.resolve())!=$||H&&Q(new H)!=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,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 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)&&!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 je,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))},Se="fieldset",Ae="checkboxes",Ie="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"}(Ee||(Ee={})),function(e){e.Header="header"}(Te||(Te={}));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 Me(e)&&e.type===Ae},xe=function(e){return null==e||0===e.trim().length},qe=function(e){return Me(e)&&e.type===Se&&!Oe(e.title)},Pe=function(e){return Me(e)&&e.type===Se&&e.items.length>0},Le=function(e){var t,r;return e.type===Ie&&(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},Me=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 Me(e)&&e&&(e.type||"")===Se}))},Fe=function(e){return typeof e===Ie},He=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],i=e[1];return Re(i,t,we(we([],r,!0),[n],!1))})))},Ve=function(e){return e.includes(Ae)},$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 i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);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 Me(e)&&e.type===Se&&0===e.items.length&&!Oe(e.title)}(r):t.push(We(Ne(r.title),r.title,Ke(Ee.FormLabel)));break;case Pe(r):r.title&&t.push(We(Ne(r.title),r.title,Ke(Ee.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 i=Qe(r,e);i&&t.push(i)}}));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 i=Ye(e,t,r);return xe(i)?t.schema.properties[e].display&&t.schema.properties[e].display===Te.Header&&(n=Ke(Ee.FormLabel)):n=Ke(Ee.DateTime,i),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(Ee.MultiSelect):t.schema.properties[e].items&&(n=Ke(Ee.RepeatableField)),We(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=Ke(Ee.MultiSelect),We(e,o.title||"",n)):(i=Ye(e,t,r),xe(i)?void 0:(n=Ke(Ee.DateTime,i),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 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(Fe(t)&&r.schema.properties[t])r.schema.properties[t].isHidden=at(r.schema.properties[t]);else{if((Me(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 Me(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&&_e(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: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=He(t.default)),void 0!==t.minimum&&(t.minimum=He(t.minimum)),void 0!==t.maximum&&(t.maximum=He(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),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 i=n[r];switch(!0){case Fe(i):break;case qe(i):var o=Ne(i.title);t.schema.properties[o]=ot(i.title);break;case Pe(i):for(var a=0,c=i.items;a<c.length;a++){var s=c[a];ut(e,s,t,i)}break;case _e(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(Fe(o))t[o]=e.schema.properties[o],delete e.schema.properties[o];else if(Me(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&&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 i=et(et([],t,!0),n,!0);e.required=Array.from(new Set(i))}else e.required=n}})),e}(r.schema)}return r},lt=["CONTAINS","DOES_NOT_HAVE_INPUT","HAS_INPUT","INPUT_IS_EXACTLY"],ft=function(e){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,"'"));return{pattern:String(e.value),type:"string"};case"DOES_NOT_HAVE_INPUT":return{not:{allOf:[{not:{type:"null"}},{anyOf:[{type:"array",minItems:1},{type:"boolean"},{type:"number"},{type:"object",minProperties:1},{type:"string",minLength:1}]}]}};case"HAS_INPUT":return{allOf:[{not:{type:"null"}},{anyOf:[{type:"array",minItems:1},{type:"boolean"},{type:"number"},{type:"object",minProperties:1},{type:"string",minLength:1}]}]};case"INPUT_IS_EXACTLY":if(void 0===e.value)throw new Error("INPUT_IS_EXACTLY operator requires a value for condition '".concat(e.id,"'"));return function(e){if(null===e)return{type:"null"};if("boolean"==typeof e)return{const:e};if("number"==typeof e)return{enum:[e,String(e)]};var t=Number(e);return isNaN(t)||""===e?{const:e}:{enum:[t,e]}}(e.value);default:throw new Error("Unknown operator '".concat(e.operator,"' in condition '").concat(e.id,"'"))}},dt=function(e){var t,r=ft(e);return{properties:(t={},t[e.field]=r,t),required:[e.field]}},mt=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:"#/properties/".concat(t.field),schema:ft(t)}}var r=e.map((function(e){return dt(e)}));return{scope:"#",schema:{allOf:r}}},ht=function(e){return{effect:"SHOW",condition:mt(e)}},yt=function(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!lt.includes(i.operator))throw new Error("Invalid operator '".concat(i.operator,"'"));if(!t.includes(i.field))throw new Error("Unknown field '".concat(i.field,"'"));if("CONTAINS"===i.operator&&(void 0===i.value||null===i.value))throw new Error("CONTAINS operator requires a value");if("INPUT_IS_EXACTLY"===i.operator&&void 0===i.value)throw new Error("INPUT_IS_EXACTLY operator requires a value")}},vt=function(e){return!e.deprecated},bt=function(e,t,r,n,i){var o,a={type:"Control",scope:"#/properties/".concat(e),label:t.title,options:{}};switch(i&&(a.options.conditionallyRequired=!0),r.type){case"TEXT":"LONG_TEXT"===r.inputType&&(a.options.multi=!0),r.placeholder&&(a.options.placeholder=r.placeholder);break;case"NUMERIC":a.options.format="number",r.placeholder&&(a.options.placeholder=r.placeholder);break;case"DATE_TIME":a.options.format=t.format||"date-time",a.options.display=t.format||"date-time";break;case"CHOICE_LIST":"array"===t.type?(a.options.multi=!0,"DROPDOWN"===r.inputType?a.options.format="dropdown":"LIST"===r.inputType&&(a.options.format="checkbox")):"DROPDOWN"===r.inputType?a.options.format="dropdown":"LIST"===r.inputType&&(a.options.format="radio"),r.placeholder&&(a.options.placeholder=r.placeholder);break;case"LOCATION":a.options.format="location",a.options.display="map";break;case"COLLECTION":a.options.format="array",a.options.addButtonText=r.buttonText||"Add Item",r.itemIdentifier&&(a.options.itemIdentifier=r.itemIdentifier),void 0!==t.maxItems&&(a.options.maxItems=t.maxItems),void 0!==t.minItems&&(a.options.minItems=t.minItems),"array"===t.type&&(null===(o=t.items)||void 0===o?void 0:o.properties)&&n&&(a.options.detail=Et(t,r,n));break;case"ATTACHMENT":a.options.format="file",r.allowableFileTypes&&(a.options.accept=r.allowableFileTypes.join(","))}return t.description&&(a.options.description=t.description),a},gt=function(e,t){return{type:"Label",text:t.label,options:{size:t.size}}},Ot=function(e){var t={},r=e.json.allOf;return Array.isArray(r)?(r.forEach((function(r){var n;(null===(n=r.then)||void 0===n?void 0:n.properties)&&Object.entries(r.then.properties).forEach((function(r){var n=r[0],i=r[1];e.json.properties[n]||(t[n]=i)}))})),t):t},jt=function(e){var t=new Set,r=e.json.allOf;return Array.isArray(r)?(r.forEach((function(e){var r;(null===(r=e.then)||void 0===r?void 0:r.required)&&Array.isArray(e.then.required)&&e.then.required.forEach((function(e){t.add(e)}))})),t):t},Et=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 bt(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}},Tt=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))},wt=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 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"))}));var n=Ot(e),i=Tt(Tt([],Object.keys(e.json.properties),!0),Object.keys(n),!0);if(Object.entries(e.ui.sections).forEach((function(e){var r=e[0],n=e[1];if(n.conditions&&n.conditions.length>0)try{yt(n.conditions,i)}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,i=function(e){var t=[];Object.entries(e.json.properties).forEach((function(r){var n=r[0],i=r[1],o=e.ui.fields[n];vt(i)&&o&&t.push({name:n,property:i,uiField:o})}));var r=Ot(e);return Object.entries(r).forEach((function(r){var n=r[0],i=r[1],o=e.ui.fields[n];vt(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=jt(e),c=[];return e.ui.order.forEach((function(t){var r=e.ui.sections[t],n=o[t]||[],i=n.length>0,s=Tt(Tt([],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||s)){var u=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=gt(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=gt(e.name,i);o.push(a)}}})),i.elements=o,t.conditions&&t.conditions.length>0&&(i.rule=ht(t.conditions)),i}(0,r,n.map((function(t){var r=t.name,n=t.property,i=t.uiField;return bt(r,n,i,e,a.has(r))})),e.ui.headers);c.push(u)}})),{type:"VerticalLayout",elements:c}},St=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"))}},At=function(e){var t=St(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:()=>Ct,generateUISchema:()=>ze,processSchema:()=>kt,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:()=>bt,buildContainsSchema:()=>lt,buildIsContainedBySchema:()=>mt,buildIsEmptySchema:()=>ft,buildIsExactlySchema:()=>dt,buildIsNotContainedBySchema:()=>yt,buildSchemaBasedCondition:()=>Ot,createSectionRule:()=>gt,extractConditionalProperties:()=>St,extractConditionalRequired:()=>At,generateUISchema:()=>wt,validateConditions:()=>jt});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,u=Object,function(e){return c(u(e))});var c,u,s=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 y=Object.prototype,h=y.hasOwnProperty,v=y.toString,b=m?m.toStringTag:void 0;var O=Object.prototype.toString;var g=m?m.toStringTag:void 0;const j=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":g&&g in Object(e)?function(e){var t=h.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 O.call(e)}(e)},E=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},I=function(e){if(!E(e))return!1;var t=j(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},T=f["__core-js_shared__"];var S,A=(S=/[^.]+$/.exec(T&&T.keys&&T.keys.IE_PROTO||""))?"Symbol(src)_1."+S:"";var N=Function.prototype.toString;const _=function(e){if(null!=e){try{return N.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var w=/^\[object .+?Constructor\]$/,C=Function.prototype,k=Object.prototype,x=C.toString,q=k.hasOwnProperty,P=RegExp("^"+x.call(q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const L=function(e){return!(!E(e)||function(e){return!!A&&A in e}(e))&&(I(e)?P:w).test(_(e))},M=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return L(r)?r:void 0},D=M(f,"DataView"),U=M(f,"Map"),Y=M(f,"Promise"),F=M(f,"Set"),H=M(f,"WeakMap");var B="[object Map]",R="[object Promise]",X="[object Set]",V="[object WeakMap]",$="[object DataView]",J=_(D),W=_(U),z=_(Y),G=_(F),K=_(H),Q=j;(D&&Q(new D(new ArrayBuffer(1)))!=$||U&&Q(new U)!=B||Y&&Q(Y.resolve())!=R||F&&Q(new F)!=X||H&&Q(new H)!=V)&&(Q=function(e){var t=j(e),r="[object Object]"==t?e.constructor:void 0,n=r?_(r):"";if(n)switch(n){case J:return $;case W:return B;case z:return R;case G:return X;case K:return V}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 ue="object"==typeof exports&&exports&&!exports.nodeType&&exports,se=ue&&"object"==typeof module&&module&&!module.nodeType&&module,pe=se&&se.exports===ue?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,ye=me&&me.exports===de&&p.process,he=function(){try{return me&&me.require&&me.require("util").types||ye&&ye.binding&&ye.binding("util")}catch(e){}}(),ve=he&&he.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 Oe=Object.prototype.hasOwnProperty;const ge=function(e){if(null==e)return!0;if(function(e){return null!=e&&ce(e.length)&&!I(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))s.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e).length;for(var r in e)if(Oe.call(e,r))return!1;return!0};var je,Ee,Ie,Te=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",Ae="checkboxes",Ne="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"}(Ee||(Ee={})),function(e){e.Header="header"}(Ie||(Ie={}));var _e,we=function(e){var t=e.toLowerCase().replace(/[\s\\/\\%]/gi,"_");return"fieldset__title_".concat(t)},Ce=function(e){return new Set(e).size!==e.length},ke=function(e){return Me(e)&&e.type===Ae},xe=function(e){return null==e||0===e.trim().length},qe=function(e){return Me(e)&&e.type===Se&&!ge(e.title)},Pe=function(e){return Me(e)&&e.type===Se&&e.items.length>0},Le=function(e){var t,r;return e.type===Ne&&(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},Me=function(e){return e instanceof Object},De=function(e){return!ge(e.key)},Ue=function(e){return 0!==e.length&&void 0!==e.find((function(e){return Me(e)&&e&&(e.type||"")===Se}))},Ye=function(e){return typeof e===Ne},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},He=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 He(e,t,Te(Te([],r,!0),[n.toString()],!1))})):Object.entries(e).forEach((function(e){var n=e[0],o=e[1];return He(o,t,Te(Te([],r,!0),[n],!1))})))},Be=function(e){return e.includes(Ae)},Re=function(e){return e.includes("inactive_enum")},Xe=function(e){return e.includes("inactive_titleMap")},Ve=function(e){return e.includes("enum")},$e=function(){return $e=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},$e.apply(this,arguments)};!function(e){e.Number="number",e.String="string",e.Array="array"}(_e||(_e={}));var Je=function(e,t,r){return void 0===r&&(r={}),$e({type:"Control",scope:"#/properties/".concat(e),label:t},r&&{options:r})},We=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);ge(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(Je(r,e.schema.properties[r].title||""));else if(r instanceof Object)switch(!0){case function(e){return Me(e)&&e.type===Se&&0===e.items.length&&!ge(e.title)}(r):t.push(Je(we(r.title),r.title,Ke(Ee.FormLabel)));break;case Pe(r):r.title&&t.push(Je(we(r.title),r.title,Ke(Ee.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=""),ge(e))return{};var r={format:e};return ge(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 _e.Number:return Je(e,t.schema.properties[e].title||"");case _e.String:var o=We(e,t,r);return xe(o)?t.schema.properties[e].display&&t.schema.properties[e].display===Ie.Header&&(n=Ke(Ee.FormLabel)):n=Ke(Ee.DateTime,o),Je(e,t.schema.properties[e].title||"",n);case _e.Array:return t.schema.properties[e].items.enum&&t.schema.properties[e].items.enumNames?n=Ke(Ee.MultiSelect):t.schema.properties[e].items&&(n=Ke(Ee.RepeatableField)),Je(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(Ee.MultiSelect),Je(e,i.title||"",n)):(o=We(e,t,r),xe(o)?void 0:(n=Ke(Ee.DateTime,o),Je(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:Ie.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)}))},ut=function(e){return e.titleMap.filter((function(t){return!e.inactive_titleMap.includes(t.value)}))},st=function(e,t,r,n){var o,i,a,c,u=e.hasCheckboxes,s=e.hasDisabledChoices;if(Ye(t)&&r.schema.properties[t])r.schema.properties[t].isHidden=at(r.schema.properties[t]);else{if((Me(t)||De(t))&&t.key&&r.schema.properties[t.key]&&(r.schema.properties[t.key].isHidden=at(r.schema.properties[t.key])),s&&function(e){var t,r;return Me(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=ut(t)}else r.definition[r.definition.indexOf(t)].titleMap=ut(t);u&&ke(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:Be(e),hasInactiveChoices:Re(e),hasDisabledChoices:Xe(e),hasEnums:Ve(e)}}(e);if(function(e){He(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];Le(c)&&(t.schema.properties[a].enum=ct(c),ge(t.schema.properties[a].enum)&&(t.schema.properties[a].enum=["0"],t.schema.properties[a].enumNames={0:"No Options"}))}if(n)for(var u=0,s=Object.keys(t.schema.properties);u<s.length;u++)if(a=s[u],!ge(t.schema.properties[a].enum)&&Ce(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 Ye(o):break;case qe(o):var i=we(o.title);t.schema.properties[i]=it(o.title);break;case Pe(o):for(var a=0,c=o.items;a<c.length;a++){var u=c[a];st(e,u,t,o)}break;case ke(o):st(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];st(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(Ye(i))t[i]=e.schema.properties[i],delete e.schema.properties[i];else if(Me(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&&Ce(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 He(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)})),ge(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=function(e){var t=Array.isArray(e)?e:[e];if(1===t.length){var r=t[0];return{anyOf:[{allOf:[{contains:{const:r}}],type:"array"},{required:[r],type:"object"},{pattern:r,type:"string"}]}}return{anyOf:[{allOf:t.map((function(e){return{contains:{const:e}}})),type:"array"},{required:t,type:"object"},{const:null,type:"string"}]}},ft=function(e){var t,r,n,o;return{anyOf:[{not:{required:[e]}},{properties:(t={},t[e]={maxItems:0,type:"array"},t),required:[e]},{properties:(r={},r[e]={type:"null"},r),required:[e]},{properties:(n={},n[e]={maxProperties:0,type:"object"},n),required:[e]},{properties:(o={},o[e]={maxLength:0,type:"string"},o),required:[e]}]}},dt=function(e){var t=Array.isArray(e)?e:[e],r=1===t.length,n={allOf:t.map((function(e){return{contains:{const:e}}})),maxItems:t.length,type:"array"},o=null;if(r){var i=t[0].toLowerCase();"true"===i?o=!0:"false"===i&&(o=!1)}var a=null!==o?{const:o,type:"boolean"}:{const:null,type:"boolean"},c=null;if(r){var u=Number(t[0]);isNaN(u)||""===t[0]||(c=u)}var s=null!==c?{const:c,type:"number"}:{const:null,type:"number"},p={};return t.forEach((function(e){p[e]={}})),{anyOf:[n,a,s,{properties:p,required:t,type:"object",unevaluatedProperties:!1},r?{const:t[0],type:"string"}:{const:null,type:"string"}]}},mt=function(e){var t=Array.isArray(e)?e:[e];return{anyOf:[{items:{enum:t},minItems:1,type:"array"},{minProperties:1,propertyNames:{enum:t},type:"object"},{enum:t,type:"string"}]}},yt=function(e){var t=Array.isArray(e)?e:[e];return{anyOf:[{allOf:[{minItems:1,type:"array"},{not:{items:{enum:t},type:"array"}}]},{allOf:[{minProperties:1,type:"object"},{not:{propertyNames:{enum:t},type:"object"}}]},{not:{enum:t},type:"string"}]}},ht=["CONTAINS","DOES_NOT_HAVE_INPUT","HAS_INPUT","INPUT_IS_EXACTLY","IS_CONTAINED_BY","IS_EMPTY","IS_EXACTLY","IS_NOT_CONTAINED_BY","IS_NOT_EMPTY"],vt=function(e){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,"'"));return lt(e.value);case"DOES_NOT_HAVE_INPUT":return{not:{allOf:[{not:{type:"null"}},{anyOf:[{type:"array",minItems:1},{type:"boolean"},{type:"number"},{type:"object",minProperties:1},{type:"string",minLength:1}]}]}};case"HAS_INPUT":case"IS_NOT_EMPTY":return{allOf:[{not:{type:"null"}},{anyOf:[{type:"array",minItems:1},{type:"boolean"},{type:"number"},{type:"object",minProperties:1},{type:"string",minLength:1}]}]};case"IS_EMPTY":return ft(e.field);case"INPUT_IS_EXACTLY":if(void 0===e.value)throw new Error("INPUT_IS_EXACTLY operator requires a value for condition '".concat(e.id,"'"));return function(e){if(null===e)return{type:"null"};if("boolean"==typeof e)return{const:e};if("number"==typeof e)return{enum:[e,String(e)]};var t=Number(e);return isNaN(t)||""===e?{const:e}:{enum:[t,e]}}(e.value);case"IS_EXACTLY":if(void 0===e.value||null===e.value)throw new Error("IS_EXACTLY operator requires a value for condition '".concat(e.id,"'"));return dt(e.value);case"IS_CONTAINED_BY":if(void 0===e.value||null===e.value)throw new Error("IS_CONTAINED_BY operator requires a value for condition '".concat(e.id,"'"));return mt(e.value);case"IS_NOT_CONTAINED_BY":if(void 0===e.value||null===e.value)throw new Error("IS_NOT_CONTAINED_BY operator requires a value for condition '".concat(e.id,"'"));return yt(e.value);default:throw new Error("Unknown operator '".concat(e.operator,"' in condition '").concat(e.id,"'"))}},bt=function(e){var t;if("IS_EMPTY"===e.operator)return ft(e.field);var r=vt(e);return{properties:(t={},t[e.field]=r,t),required:[e.field]}},Ot=function(e){if(0===e.length)throw new Error("At least one condition is required");if(1===e.length){var t=e[0];return"IS_EMPTY"===t.operator?{scope:"#",schema:ft(t.field)}:{scope:"#/properties/".concat(t.field),schema:vt(t)}}var r=e.map((function(e){return bt(e)}));return{scope:"#",schema:{allOf:r}}},gt=function(e){return{effect:"SHOW",condition:Ot(e)}},jt=function(e,t){for(var r=["CONTAINS","IS_EXACTLY","IS_CONTAINED_BY","IS_NOT_CONTAINED_BY"],n=0,o=e;n<o.length;n++){var i=o[n];if(!ht.includes(i.operator))throw new Error("Invalid operator '".concat(i.operator,"'"));if(!t.includes(i.field))throw new Error("Unknown field '".concat(i.field,"'"));if(r.includes(i.operator)&&(void 0===i.value||null===i.value))throw new Error("".concat(i.operator," operator requires a value"));if("INPUT_IS_EXACTLY"===i.operator&&void 0===i.value)throw new Error("INPUT_IS_EXACTLY operator requires a value")}},Et=function(e){return!e.deprecated},It=function(e,t,r,n,o){var i,a={type:"Control",scope:"#/properties/".concat(e),label:t.title,options:{}};switch(o&&(a.options.conditionallyRequired=!0),r.type){case"TEXT":"LONG_TEXT"===r.inputType&&(a.options.multi=!0),r.placeholder&&(a.options.placeholder=r.placeholder);break;case"NUMERIC":a.options.format="number",r.placeholder&&(a.options.placeholder=r.placeholder);break;case"DATE_TIME":a.options.format=t.format||"date-time",a.options.display=t.format||"date-time";break;case"CHOICE_LIST":"array"===t.type?(a.options.multi=!0,"DROPDOWN"===r.inputType?a.options.format="dropdown":"LIST"===r.inputType&&(a.options.format="checkbox")):"DROPDOWN"===r.inputType?a.options.format="dropdown":"LIST"===r.inputType&&(a.options.format="radio"),r.placeholder&&(a.options.placeholder=r.placeholder);break;case"LOCATION":a.options.format="location",a.options.display="map";break;case"COLLECTION":a.options.format="array",a.options.addButtonText=r.buttonText||"Add Item",r.itemIdentifier&&(a.options.itemIdentifier=r.itemIdentifier),void 0!==t.maxItems&&(a.options.maxItems=t.maxItems),void 0!==t.minItems&&(a.options.minItems=t.minItems),"array"===t.type&&(null===(i=t.items)||void 0===i?void 0:i.properties)&&n&&(a.options.detail=Nt(t,r,n));break;case"ATTACHMENT":a.options.format="file",r.allowableFileTypes&&(a.options.accept=r.allowableFileTypes.join(","))}return t.description&&(a.options.description=t.description),a},Tt=function(e,t){return{type:"Label",text:t.label,options:{size:t.size}}},St=function(e){var t={},r=e.json.allOf;return Array.isArray(r)?(r.forEach((function(r){var n;(null===(n=r.then)||void 0===n?void 0:n.properties)&&Object.entries(r.then.properties).forEach((function(r){var n=r[0],o=r[1];e.json.properties[n]||(t[n]=o)}))})),t):t},At=function(e){var t=new Set,r=e.json.allOf;return Array.isArray(r)?(r.forEach((function(e){var r;(null===(r=e.then)||void 0===r?void 0:r.required)&&Array.isArray(e.then.required)&&e.then.required.forEach((function(e){t.add(e)}))})),t):t},Nt=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 It(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}},_t=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))},wt=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 u=!1;"array"===a.type&&(null===(o=a.items)||void 0===o?void 0:o.anyOf)?u=a.items.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)})):a.anyOf&&(u=a.anyOf.some((function(e){return e.oneOf&&Array.isArray(e.oneOf)}))),u||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=St(e),o=_t(_t([],Object.keys(e.json.properties),!0),Object.keys(n),!0);if(Object.entries(e.ui.sections).forEach((function(e){var r=e[0],n=e[1];if(n.conditions&&n.conditions.length>0)try{jt(n.conditions,o)}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=[];Object.entries(e.json.properties).forEach((function(r){var n=r[0],o=r[1],i=e.ui.fields[n];Et(o)&&i&&t.push({name:n,property:o,uiField:i})}));var r=St(e);return Object.entries(r).forEach((function(r){var n=r[0],o=r[1],i=e.ui.fields[n];Et(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=At(e),c=[];return e.ui.order.forEach((function(t){var r=e.ui.sections[t],n=i[t]||[],o=n.length>0,u=_t(_t([],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||u)){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=Tt(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=Tt(e.name,o);i.push(a)}}})),o.elements=i,t.conditions&&t.conditions.length>0&&(o.rule=gt(t.conditions)),o}(0,r,n.map((function(t){var r=t.name,n=t.property,o=t.uiField;return It(r,n,o,e,a.has(r))})),e.ui.headers);c.push(s)}})),{type:"VerticalLayout",elements:c}},Ct=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"))}},kt=function(e){var t=Ct(e),r=t.version,n=t.data;return{version:r,processedData:JSON.stringify(n)}};module.exports=t})();
|
package/dist/common/types.d.ts
CHANGED
|
@@ -86,12 +86,12 @@ export interface V2Header {
|
|
|
86
86
|
section: string;
|
|
87
87
|
size: 'LARGE' | 'MEDIUM' | 'SMALL';
|
|
88
88
|
}
|
|
89
|
-
export type V2ConditionOperator = 'CONTAINS' | 'DOES_NOT_HAVE_INPUT' | 'HAS_INPUT' | 'INPUT_IS_EXACTLY';
|
|
89
|
+
export type V2ConditionOperator = 'CONTAINS' | 'DOES_NOT_HAVE_INPUT' | 'HAS_INPUT' | 'INPUT_IS_EXACTLY' | 'IS_CONTAINED_BY' | 'IS_EMPTY' | 'IS_EXACTLY' | 'IS_NOT_CONTAINED_BY' | 'IS_NOT_EMPTY';
|
|
90
90
|
export interface V2Condition {
|
|
91
91
|
field: string;
|
|
92
92
|
id: string;
|
|
93
93
|
operator: V2ConditionOperator;
|
|
94
|
-
value?: string | number | boolean | null;
|
|
94
|
+
value?: string | string[] | number | boolean | null;
|
|
95
95
|
}
|
|
96
96
|
export interface V2Section {
|
|
97
97
|
columns: 1 | 2;
|
|
@@ -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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"}
|
package/dist/v2/conditions.d.ts
CHANGED
|
@@ -1,46 +1,75 @@
|
|
|
1
1
|
import { V2Condition, JSONFormsRule, JSONFormsSchemaBasedCondition } from '../common/types';
|
|
2
2
|
/**
|
|
3
3
|
* Builds a JSON Schema for the CONTAINS operator.
|
|
4
|
-
*
|
|
4
|
+
* Handles array, object, and string field types via anyOf.
|
|
5
|
+
* When value is an array, all values must be contained; the string branch
|
|
6
|
+
* becomes unsatisfiable (const: null) since a string can't contain multiple
|
|
7
|
+
* independent required values simultaneously.
|
|
5
8
|
*/
|
|
6
|
-
export declare const buildContainsSchema: (value: string) => Record<string, unknown>;
|
|
9
|
+
export declare const buildContainsSchema: (value: string | string[]) => Record<string, unknown>;
|
|
7
10
|
/**
|
|
8
|
-
* Builds a JSON Schema for the
|
|
11
|
+
* Builds a JSON Schema for the IS_EMPTY operator.
|
|
12
|
+
* Returns a root-level schema (not field-scoped) because it must check for
|
|
13
|
+
* field absence using `not: { required: [fieldName] }`.
|
|
9
14
|
*/
|
|
10
|
-
export declare const
|
|
15
|
+
export declare const buildIsEmptySchema: (fieldName: string) => Record<string, unknown>;
|
|
11
16
|
/**
|
|
12
|
-
* Builds a JSON Schema for the HAS_INPUT operator.
|
|
13
|
-
* Matches when the field has meaningful
|
|
17
|
+
* Builds a JSON Schema for the IS_NOT_EMPTY / HAS_INPUT operator.
|
|
18
|
+
* Matches when the field is present and has a meaningful (non-null, non-empty) value.
|
|
14
19
|
*/
|
|
15
20
|
export declare const buildHasInputSchema: () => Record<string, unknown>;
|
|
16
21
|
/**
|
|
17
|
-
* Builds a JSON Schema for the
|
|
22
|
+
* Builds a JSON Schema for the DOES_NOT_HAVE_INPUT operator (legacy).
|
|
23
|
+
*/
|
|
24
|
+
export declare const buildDoesNotHaveInputSchema: () => Record<string, unknown>;
|
|
25
|
+
/**
|
|
26
|
+
* Builds a JSON Schema for the IS_EXACTLY operator.
|
|
27
|
+
* Handles array, boolean, number, object, and string field types via anyOf.
|
|
28
|
+
* When value is an array, non-array/object branches become unsatisfiable (const: null).
|
|
29
|
+
* When value is a single string parseable as boolean/number, those branches use the parsed value.
|
|
30
|
+
*/
|
|
31
|
+
export declare const buildIsExactlySchema: (value: string | string[]) => Record<string, unknown>;
|
|
32
|
+
/**
|
|
33
|
+
* Builds a JSON Schema for the INPUT_IS_EXACTLY operator (legacy).
|
|
18
34
|
* Matches when the field value equals the specified value exactly.
|
|
19
|
-
* Uses `enum` for simple matching without type constraints.
|
|
20
35
|
*/
|
|
21
36
|
export declare const buildInputIsExactlySchema: (value: string | number | boolean | null) => Record<string, unknown>;
|
|
22
37
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
38
|
+
* Builds a JSON Schema for the IS_CONTAINED_BY operator.
|
|
39
|
+
* The condition is fulfilled when all elements of the field are included
|
|
40
|
+
* within the specified set of values.
|
|
41
|
+
*/
|
|
42
|
+
export declare const buildIsContainedBySchema: (value: string | string[]) => Record<string, unknown>;
|
|
43
|
+
/**
|
|
44
|
+
* Builds a JSON Schema for the IS_NOT_CONTAINED_BY operator.
|
|
45
|
+
* The condition is fulfilled when at least one element of the field is not
|
|
46
|
+
* included within the specified set of values.
|
|
47
|
+
*/
|
|
48
|
+
export declare const buildIsNotContainedBySchema: (value: string | string[]) => Record<string, unknown>;
|
|
49
|
+
/**
|
|
50
|
+
* Gets the operator schema for a condition.
|
|
51
|
+
* Note: IS_EMPTY is root-scoped; callers that need field-scoped wrapping
|
|
52
|
+
* should use buildConditionSchema instead.
|
|
25
53
|
*/
|
|
26
54
|
export declare const getOperatorSchema: (condition: V2Condition) => Record<string, unknown>;
|
|
27
55
|
/**
|
|
28
|
-
* Builds a JSON Schema for a single condition
|
|
29
|
-
*
|
|
56
|
+
* Builds a root-scoped JSON Schema for a single condition.
|
|
57
|
+
* IS_EMPTY contributes its root-level anyOf directly; all other operators
|
|
58
|
+
* are wrapped in a properties/required structure.
|
|
30
59
|
*/
|
|
31
60
|
export declare const buildConditionSchema: (condition: V2Condition) => Record<string, unknown>;
|
|
32
61
|
/**
|
|
33
62
|
* Builds a JSONForms schema-based condition from one or more V2 conditions.
|
|
34
63
|
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
64
|
+
* Single condition:
|
|
65
|
+
* - IS_EMPTY → root scope "#" (must check for field absence at object level)
|
|
66
|
+
* - All others → field scope "#/properties/fieldName"
|
|
37
67
|
*
|
|
38
|
-
*
|
|
68
|
+
* Multiple conditions: root scope "#" with allOf combining all condition schemas.
|
|
39
69
|
*/
|
|
40
70
|
export declare const buildSchemaBasedCondition: (conditions: V2Condition[]) => JSONFormsSchemaBasedCondition;
|
|
41
71
|
/**
|
|
42
72
|
* Creates a complete JSONForms rule for a section with the given conditions.
|
|
43
|
-
* Uses SHOW effect by default.
|
|
44
73
|
*/
|
|
45
74
|
export declare const createSectionRule: (conditions: V2Condition[]) => JSONFormsRule;
|
|
46
75
|
/**
|
|
@@ -1 +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
|
|
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;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,UAAW,MAAM,GAAG,MAAM,EAAE,KAAG,OAAO,MAAM,EAAE,OAAO,CAwCpF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,cAAe,MAAM,KAAG,OAAO,MAAM,EAAE,OAAO,CAsB5E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,QAAO,OAAO,MAAM,EAAE,OAAO,CAe5D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAO,OAAO,MAAM,EAAE,OAAO,CAIpE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,UAAW,MAAM,GAAG,MAAM,EAAE,KAAG,OAAO,MAAM,EAAE,OAAO,CAqDrF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,UAC7B,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,KACtC,OAAO,MAAM,EAAE,OAAO,CAexB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,UAAW,MAAM,GAAG,MAAM,EAAE,KAAG,OAAO,MAAM,EAAE,OAAO,CASzF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,UAC/B,MAAM,GAAG,MAAM,EAAE,KACvB,OAAO,MAAM,EAAE,OAAO,CAmBxB,CAAC;AAcF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,cACjB,WAAW,KACrB,OAAO,MAAM,EAAE,OAAO,CAyDxB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,cACpB,WAAW,KACrB,OAAO,MAAM,EAAE,OAAO,CAYxB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,eACxB,WAAW,EAAE,KACxB,6BA8BF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,eAAgB,WAAW,EAAE,KAAG,aAK7D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,eACjB,WAAW,EAAE,cACb,MAAM,EAAE,KACnB,IA+BF,CAAC"}
|
package/dist/v2/conditions.js
CHANGED
|
@@ -1,24 +1,81 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Builds a JSON Schema for the CONTAINS operator.
|
|
3
|
-
*
|
|
3
|
+
* Handles array, object, and string field types via anyOf.
|
|
4
|
+
* When value is an array, all values must be contained; the string branch
|
|
5
|
+
* becomes unsatisfiable (const: null) since a string can't contain multiple
|
|
6
|
+
* independent required values simultaneously.
|
|
4
7
|
*/
|
|
5
8
|
export var buildContainsSchema = function (value) {
|
|
9
|
+
var values = Array.isArray(value) ? value : [value];
|
|
10
|
+
if (values.length === 1) {
|
|
11
|
+
var v = values[0];
|
|
12
|
+
return {
|
|
13
|
+
anyOf: [
|
|
14
|
+
{
|
|
15
|
+
allOf: [{ contains: { const: v } }],
|
|
16
|
+
type: 'array',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
required: [v],
|
|
20
|
+
type: 'object',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
pattern: v,
|
|
24
|
+
type: 'string',
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
6
29
|
return {
|
|
7
|
-
|
|
8
|
-
|
|
30
|
+
anyOf: [
|
|
31
|
+
{
|
|
32
|
+
allOf: values.map(function (v) { return ({ contains: { const: v } }); }),
|
|
33
|
+
type: 'array',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
required: values,
|
|
37
|
+
type: 'object',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
// Impossible branch: a string cannot satisfy multiple simultaneous contains requirements
|
|
41
|
+
const: null,
|
|
42
|
+
type: 'string',
|
|
43
|
+
},
|
|
44
|
+
],
|
|
9
45
|
};
|
|
10
46
|
};
|
|
11
47
|
/**
|
|
12
|
-
* Builds a JSON Schema for the
|
|
48
|
+
* Builds a JSON Schema for the IS_EMPTY operator.
|
|
49
|
+
* Returns a root-level schema (not field-scoped) because it must check for
|
|
50
|
+
* field absence using `not: { required: [fieldName] }`.
|
|
13
51
|
*/
|
|
14
|
-
export var
|
|
52
|
+
export var buildIsEmptySchema = function (fieldName) {
|
|
53
|
+
var _a, _b, _c, _d;
|
|
15
54
|
return {
|
|
16
|
-
|
|
55
|
+
anyOf: [
|
|
56
|
+
{ not: { required: [fieldName] } },
|
|
57
|
+
{
|
|
58
|
+
properties: (_a = {}, _a[fieldName] = { maxItems: 0, type: 'array' }, _a),
|
|
59
|
+
required: [fieldName],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
properties: (_b = {}, _b[fieldName] = { type: 'null' }, _b),
|
|
63
|
+
required: [fieldName],
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
properties: (_c = {}, _c[fieldName] = { maxProperties: 0, type: 'object' }, _c),
|
|
67
|
+
required: [fieldName],
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
properties: (_d = {}, _d[fieldName] = { maxLength: 0, type: 'string' }, _d),
|
|
71
|
+
required: [fieldName],
|
|
72
|
+
},
|
|
73
|
+
],
|
|
17
74
|
};
|
|
18
75
|
};
|
|
19
76
|
/**
|
|
20
|
-
* Builds a JSON Schema for the HAS_INPUT operator.
|
|
21
|
-
* Matches when the field has meaningful
|
|
77
|
+
* Builds a JSON Schema for the IS_NOT_EMPTY / HAS_INPUT operator.
|
|
78
|
+
* Matches when the field is present and has a meaningful (non-null, non-empty) value.
|
|
22
79
|
*/
|
|
23
80
|
export var buildHasInputSchema = function () {
|
|
24
81
|
return {
|
|
@@ -37,9 +94,71 @@ export var buildHasInputSchema = function () {
|
|
|
37
94
|
};
|
|
38
95
|
};
|
|
39
96
|
/**
|
|
40
|
-
* Builds a JSON Schema for the
|
|
97
|
+
* Builds a JSON Schema for the DOES_NOT_HAVE_INPUT operator (legacy).
|
|
98
|
+
*/
|
|
99
|
+
export var buildDoesNotHaveInputSchema = function () {
|
|
100
|
+
return {
|
|
101
|
+
not: buildHasInputSchema(),
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Builds a JSON Schema for the IS_EXACTLY operator.
|
|
106
|
+
* Handles array, boolean, number, object, and string field types via anyOf.
|
|
107
|
+
* When value is an array, non-array/object branches become unsatisfiable (const: null).
|
|
108
|
+
* When value is a single string parseable as boolean/number, those branches use the parsed value.
|
|
109
|
+
*/
|
|
110
|
+
export var buildIsExactlySchema = function (value) {
|
|
111
|
+
var values = Array.isArray(value) ? value : [value];
|
|
112
|
+
var isSingle = values.length === 1;
|
|
113
|
+
var arrayBranch = {
|
|
114
|
+
allOf: values.map(function (v) { return ({ contains: { const: v } }); }),
|
|
115
|
+
maxItems: values.length,
|
|
116
|
+
type: 'array',
|
|
117
|
+
};
|
|
118
|
+
// Boolean branch — meaningful only for single value parseable as boolean
|
|
119
|
+
var booleanConst = null;
|
|
120
|
+
if (isSingle) {
|
|
121
|
+
var lower = values[0].toLowerCase();
|
|
122
|
+
if (lower === 'true')
|
|
123
|
+
booleanConst = true;
|
|
124
|
+
else if (lower === 'false')
|
|
125
|
+
booleanConst = false;
|
|
126
|
+
}
|
|
127
|
+
var booleanBranch = booleanConst !== null
|
|
128
|
+
? { const: booleanConst, type: 'boolean' }
|
|
129
|
+
: { const: null, type: 'boolean' };
|
|
130
|
+
// Number branch — meaningful only for single value parseable as number
|
|
131
|
+
var numberConst = null;
|
|
132
|
+
if (isSingle) {
|
|
133
|
+
var parsed = Number(values[0]);
|
|
134
|
+
if (!isNaN(parsed) && values[0] !== '')
|
|
135
|
+
numberConst = parsed;
|
|
136
|
+
}
|
|
137
|
+
var numberBranch = numberConst !== null
|
|
138
|
+
? { const: numberConst, type: 'number' }
|
|
139
|
+
: { const: null, type: 'number' };
|
|
140
|
+
// Object branch — all values become required property keys
|
|
141
|
+
var objectProperties = {};
|
|
142
|
+
values.forEach(function (v) {
|
|
143
|
+
objectProperties[v] = {};
|
|
144
|
+
});
|
|
145
|
+
var objectBranch = {
|
|
146
|
+
properties: objectProperties,
|
|
147
|
+
required: values,
|
|
148
|
+
type: 'object',
|
|
149
|
+
unevaluatedProperties: false,
|
|
150
|
+
};
|
|
151
|
+
// String branch — meaningful only for single value
|
|
152
|
+
var stringBranch = isSingle
|
|
153
|
+
? { const: values[0], type: 'string' }
|
|
154
|
+
: { const: null, type: 'string' };
|
|
155
|
+
return {
|
|
156
|
+
anyOf: [arrayBranch, booleanBranch, numberBranch, objectBranch, stringBranch],
|
|
157
|
+
};
|
|
158
|
+
};
|
|
159
|
+
/**
|
|
160
|
+
* Builds a JSON Schema for the INPUT_IS_EXACTLY operator (legacy).
|
|
41
161
|
* Matches when the field value equals the specified value exactly.
|
|
42
|
-
* Uses `enum` for simple matching without type constraints.
|
|
43
162
|
*/
|
|
44
163
|
export var buildInputIsExactlySchema = function (value) {
|
|
45
164
|
if (value === null) {
|
|
@@ -49,25 +168,69 @@ export var buildInputIsExactlySchema = function (value) {
|
|
|
49
168
|
return { const: value };
|
|
50
169
|
}
|
|
51
170
|
if (typeof value === 'number') {
|
|
52
|
-
// Allow both number and string representation
|
|
53
171
|
return { enum: [value, String(value)] };
|
|
54
172
|
}
|
|
55
|
-
// String value - also allow numeric match if the string is a valid number
|
|
56
173
|
var numValue = Number(value);
|
|
57
174
|
if (!isNaN(numValue) && value !== '') {
|
|
58
175
|
return { enum: [numValue, value] };
|
|
59
176
|
}
|
|
60
177
|
return { const: value };
|
|
61
178
|
};
|
|
179
|
+
/**
|
|
180
|
+
* Builds a JSON Schema for the IS_CONTAINED_BY operator.
|
|
181
|
+
* The condition is fulfilled when all elements of the field are included
|
|
182
|
+
* within the specified set of values.
|
|
183
|
+
*/
|
|
184
|
+
export var buildIsContainedBySchema = function (value) {
|
|
185
|
+
var values = Array.isArray(value) ? value : [value];
|
|
186
|
+
return {
|
|
187
|
+
anyOf: [
|
|
188
|
+
{ items: { enum: values }, minItems: 1, type: 'array' },
|
|
189
|
+
{ minProperties: 1, propertyNames: { enum: values }, type: 'object' },
|
|
190
|
+
{ enum: values, type: 'string' },
|
|
191
|
+
],
|
|
192
|
+
};
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Builds a JSON Schema for the IS_NOT_CONTAINED_BY operator.
|
|
196
|
+
* The condition is fulfilled when at least one element of the field is not
|
|
197
|
+
* included within the specified set of values.
|
|
198
|
+
*/
|
|
199
|
+
export var buildIsNotContainedBySchema = function (value) {
|
|
200
|
+
var values = Array.isArray(value) ? value : [value];
|
|
201
|
+
return {
|
|
202
|
+
anyOf: [
|
|
203
|
+
{
|
|
204
|
+
allOf: [
|
|
205
|
+
{ minItems: 1, type: 'array' },
|
|
206
|
+
{ not: { items: { enum: values }, type: 'array' } },
|
|
207
|
+
],
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
allOf: [
|
|
211
|
+
{ minProperties: 1, type: 'object' },
|
|
212
|
+
{ not: { propertyNames: { enum: values }, type: 'object' } },
|
|
213
|
+
],
|
|
214
|
+
},
|
|
215
|
+
{ not: { enum: values }, type: 'string' },
|
|
216
|
+
],
|
|
217
|
+
};
|
|
218
|
+
};
|
|
62
219
|
var VALID_OPERATORS = [
|
|
63
220
|
'CONTAINS',
|
|
64
221
|
'DOES_NOT_HAVE_INPUT',
|
|
65
222
|
'HAS_INPUT',
|
|
66
223
|
'INPUT_IS_EXACTLY',
|
|
224
|
+
'IS_CONTAINED_BY',
|
|
225
|
+
'IS_EMPTY',
|
|
226
|
+
'IS_EXACTLY',
|
|
227
|
+
'IS_NOT_CONTAINED_BY',
|
|
228
|
+
'IS_NOT_EMPTY',
|
|
67
229
|
];
|
|
68
230
|
/**
|
|
69
|
-
* Gets the operator schema for a condition
|
|
70
|
-
*
|
|
231
|
+
* Gets the operator schema for a condition.
|
|
232
|
+
* Note: IS_EMPTY is root-scoped; callers that need field-scoped wrapping
|
|
233
|
+
* should use buildConditionSchema instead.
|
|
71
234
|
*/
|
|
72
235
|
export var getOperatorSchema = function (condition) {
|
|
73
236
|
switch (condition.operator) {
|
|
@@ -75,28 +238,49 @@ export var getOperatorSchema = function (condition) {
|
|
|
75
238
|
if (condition.value === undefined || condition.value === null) {
|
|
76
239
|
throw new Error("CONTAINS operator requires a value for condition '".concat(condition.id, "'"));
|
|
77
240
|
}
|
|
78
|
-
return buildContainsSchema(
|
|
241
|
+
return buildContainsSchema(condition.value);
|
|
79
242
|
case 'DOES_NOT_HAVE_INPUT':
|
|
80
243
|
return buildDoesNotHaveInputSchema();
|
|
81
244
|
case 'HAS_INPUT':
|
|
245
|
+
case 'IS_NOT_EMPTY':
|
|
82
246
|
return buildHasInputSchema();
|
|
247
|
+
case 'IS_EMPTY':
|
|
248
|
+
return buildIsEmptySchema(condition.field);
|
|
83
249
|
case 'INPUT_IS_EXACTLY':
|
|
84
250
|
if (condition.value === undefined) {
|
|
85
251
|
throw new Error("INPUT_IS_EXACTLY operator requires a value for condition '".concat(condition.id, "'"));
|
|
86
252
|
}
|
|
87
253
|
return buildInputIsExactlySchema(condition.value);
|
|
254
|
+
case 'IS_EXACTLY':
|
|
255
|
+
if (condition.value === undefined || condition.value === null) {
|
|
256
|
+
throw new Error("IS_EXACTLY operator requires a value for condition '".concat(condition.id, "'"));
|
|
257
|
+
}
|
|
258
|
+
return buildIsExactlySchema(condition.value);
|
|
259
|
+
case 'IS_CONTAINED_BY':
|
|
260
|
+
if (condition.value === undefined || condition.value === null) {
|
|
261
|
+
throw new Error("IS_CONTAINED_BY operator requires a value for condition '".concat(condition.id, "'"));
|
|
262
|
+
}
|
|
263
|
+
return buildIsContainedBySchema(condition.value);
|
|
264
|
+
case 'IS_NOT_CONTAINED_BY':
|
|
265
|
+
if (condition.value === undefined || condition.value === null) {
|
|
266
|
+
throw new Error("IS_NOT_CONTAINED_BY operator requires a value for condition '".concat(condition.id, "'"));
|
|
267
|
+
}
|
|
268
|
+
return buildIsNotContainedBySchema(condition.value);
|
|
88
269
|
default:
|
|
89
270
|
throw new Error("Unknown operator '".concat(condition.operator, "' in condition '").concat(condition.id, "'"));
|
|
90
271
|
}
|
|
91
272
|
};
|
|
92
273
|
/**
|
|
93
|
-
* Builds a JSON Schema for a single condition
|
|
94
|
-
*
|
|
274
|
+
* Builds a root-scoped JSON Schema for a single condition.
|
|
275
|
+
* IS_EMPTY contributes its root-level anyOf directly; all other operators
|
|
276
|
+
* are wrapped in a properties/required structure.
|
|
95
277
|
*/
|
|
96
278
|
export var buildConditionSchema = function (condition) {
|
|
97
279
|
var _a;
|
|
280
|
+
if (condition.operator === 'IS_EMPTY') {
|
|
281
|
+
return buildIsEmptySchema(condition.field);
|
|
282
|
+
}
|
|
98
283
|
var operatorSchema = getOperatorSchema(condition);
|
|
99
|
-
// Wrap in properties structure for the field (used with scope: "#")
|
|
100
284
|
return {
|
|
101
285
|
properties: (_a = {},
|
|
102
286
|
_a[condition.field] = operatorSchema,
|
|
@@ -107,27 +291,31 @@ export var buildConditionSchema = function (condition) {
|
|
|
107
291
|
/**
|
|
108
292
|
* Builds a JSONForms schema-based condition from one or more V2 conditions.
|
|
109
293
|
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
294
|
+
* Single condition:
|
|
295
|
+
* - IS_EMPTY → root scope "#" (must check for field absence at object level)
|
|
296
|
+
* - All others → field scope "#/properties/fieldName"
|
|
112
297
|
*
|
|
113
|
-
*
|
|
298
|
+
* Multiple conditions: root scope "#" with allOf combining all condition schemas.
|
|
114
299
|
*/
|
|
115
300
|
export var buildSchemaBasedCondition = function (conditions) {
|
|
116
301
|
if (conditions.length === 0) {
|
|
117
302
|
throw new Error('At least one condition is required');
|
|
118
303
|
}
|
|
119
304
|
if (conditions.length === 1) {
|
|
120
|
-
// Single condition: use field-specific scope for better compatibility
|
|
121
305
|
var condition = conditions[0];
|
|
306
|
+
if (condition.operator === 'IS_EMPTY') {
|
|
307
|
+
return {
|
|
308
|
+
scope: '#',
|
|
309
|
+
schema: buildIsEmptySchema(condition.field),
|
|
310
|
+
};
|
|
311
|
+
}
|
|
122
312
|
return {
|
|
123
313
|
scope: "#/properties/".concat(condition.field),
|
|
124
314
|
schema: getOperatorSchema(condition),
|
|
125
315
|
};
|
|
126
316
|
}
|
|
127
|
-
// Multiple conditions:
|
|
128
|
-
var allOfSchemas = conditions.map(function (condition) {
|
|
129
|
-
return buildConditionSchema(condition);
|
|
130
|
-
});
|
|
317
|
+
// Multiple conditions: combine with allOf at root scope
|
|
318
|
+
var allOfSchemas = conditions.map(function (condition) { return buildConditionSchema(condition); });
|
|
131
319
|
return {
|
|
132
320
|
scope: '#',
|
|
133
321
|
schema: {
|
|
@@ -137,7 +325,6 @@ export var buildSchemaBasedCondition = function (conditions) {
|
|
|
137
325
|
};
|
|
138
326
|
/**
|
|
139
327
|
* Creates a complete JSONForms rule for a section with the given conditions.
|
|
140
|
-
* Uses SHOW effect by default.
|
|
141
328
|
*/
|
|
142
329
|
export var createSectionRule = function (conditions) {
|
|
143
330
|
return {
|
|
@@ -150,20 +337,23 @@ export var createSectionRule = function (conditions) {
|
|
|
150
337
|
* Throws an error if any condition is invalid.
|
|
151
338
|
*/
|
|
152
339
|
export var validateConditions = function (conditions, fieldNames) {
|
|
340
|
+
var requiresValue = [
|
|
341
|
+
'CONTAINS',
|
|
342
|
+
'IS_EXACTLY',
|
|
343
|
+
'IS_CONTAINED_BY',
|
|
344
|
+
'IS_NOT_CONTAINED_BY',
|
|
345
|
+
];
|
|
153
346
|
for (var _i = 0, conditions_1 = conditions; _i < conditions_1.length; _i++) {
|
|
154
347
|
var condition = conditions_1[_i];
|
|
155
|
-
// Validate operator
|
|
156
348
|
if (!VALID_OPERATORS.includes(condition.operator)) {
|
|
157
349
|
throw new Error("Invalid operator '".concat(condition.operator, "'"));
|
|
158
350
|
}
|
|
159
|
-
// Validate field exists
|
|
160
351
|
if (!fieldNames.includes(condition.field)) {
|
|
161
352
|
throw new Error("Unknown field '".concat(condition.field, "'"));
|
|
162
353
|
}
|
|
163
|
-
|
|
164
|
-
if (condition.operator === 'CONTAINS' &&
|
|
354
|
+
if (requiresValue.includes(condition.operator) &&
|
|
165
355
|
(condition.value === undefined || condition.value === null)) {
|
|
166
|
-
throw new Error("
|
|
356
|
+
throw new Error("".concat(condition.operator, " operator requires a value"));
|
|
167
357
|
}
|
|
168
358
|
if (condition.operator === 'INPUT_IS_EXACTLY' &&
|
|
169
359
|
condition.value === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/v2/conditions.ts"],"names":[],"mappings":"AAOA
|
|
1
|
+
{"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/v2/conditions.ts"],"names":[],"mappings":"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"}
|
package/dist/v2/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { generateUISchema } from './generateUISchema';
|
|
2
|
-
export { buildConditionSchema, buildSchemaBasedCondition, createSectionRule, validateConditions } from './conditions';
|
|
2
|
+
export { buildConditionSchema, buildContainsSchema, buildIsContainedBySchema, buildIsEmptySchema, buildIsExactlySchema, buildIsNotContainedBySchema, buildSchemaBasedCondition, createSectionRule, validateConditions, } from './conditions';
|
|
3
3
|
export { extractConditionalProperties, extractConditionalRequired } from './utils';
|
|
4
4
|
export type { V2Schema, V2Property, V2UIField, V2Section, V2Header, V2Condition, V2ConditionOperator, JSONFormsUISchema, JSONFormsRule, JSONFormsRuleEffect, JSONFormsSchemaBasedCondition } from '../common/types';
|
|
5
5
|
//# 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,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,
|
|
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,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAGnF,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,7 +1,7 @@
|
|
|
1
1
|
// V2 API exports - new JSONForms v2 schema format
|
|
2
2
|
export { generateUISchema } from './generateUISchema';
|
|
3
3
|
// Condition utilities
|
|
4
|
-
export { buildConditionSchema, buildSchemaBasedCondition, createSectionRule, validateConditions } from './conditions';
|
|
4
|
+
export { buildConditionSchema, buildContainsSchema, buildIsContainedBySchema, buildIsEmptySchema, buildIsExactlySchema, buildIsNotContainedBySchema, buildSchemaBasedCondition, createSectionRule, validateConditions, } from './conditions';
|
|
5
5
|
// Schema utilities
|
|
6
6
|
export { extractConditionalProperties, extractConditionalRequired } from './utils';
|
|
7
7
|
//# 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;AAEtD,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,
|
|
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,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAEtB,mBAAmB;AACnB,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC"}
|