@react-querybuilder/core 8.24.1 → 8.24.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/react-querybuilder_core.cjs.development.js +0 -4
- package/dist/cjs/react-querybuilder_core.cjs.development.js.map +1 -1
- package/dist/cjs/react-querybuilder_core.cjs.production.js +1 -9
- package/dist/cjs/react-querybuilder_core.cjs.production.js.map +1 -1
- package/dist/derivations.js +1 -1
- package/dist/derivations.mjs +1 -1
- package/dist/parseCEL.js +2 -2
- package/dist/parseCEL.mjs +2 -2
- package/dist/parseJSONata.js +2 -2
- package/dist/parseJSONata.mjs +2 -2
- package/dist/parseJsonLogic.js +2 -2
- package/dist/parseJsonLogic.mjs +2 -2
- package/dist/parseMongoDB.js +2 -2
- package/dist/parseMongoDB.mjs +2 -2
- package/dist/parseSQL.js +2 -2
- package/dist/parseSQL.mjs +2 -2
- package/dist/parseSpEL.js +2 -2
- package/dist/parseSpEL.mjs +2 -2
- package/dist/{parserUtils-2VtG7m8L.js → parserUtils-B7lyuS2W.js} +2 -2
- package/dist/{parserUtils-2VtG7m8L.js.map → parserUtils-B7lyuS2W.js.map} +1 -1
- package/dist/{parserUtils-BlafvoFb.mjs → parserUtils-CvYzw5dp.mjs} +2 -2
- package/dist/{parserUtils-BlafvoFb.mjs.map → parserUtils-CvYzw5dp.mjs.map} +1 -1
- package/dist/{prepareQueryObjects-DawsH4e3.mjs → prepareQueryObjects-7w8QOgIX.mjs} +1 -5
- package/dist/prepareQueryObjects-7w8QOgIX.mjs.map +1 -0
- package/dist/{prepareQueryObjects-DJ_VjOLb.js → prepareQueryObjects-Bh8SmGZH.js} +1 -5
- package/dist/prepareQueryObjects-Bh8SmGZH.js.map +1 -0
- package/dist/react-querybuilder_core.legacy-esm.js +7 -11
- package/dist/react-querybuilder_core.legacy-esm.js.map +1 -1
- package/dist/react-querybuilder_core.mjs +0 -4
- package/dist/react-querybuilder_core.mjs.map +1 -1
- package/dist/react-querybuilder_core.production.mjs +1 -9
- package/dist/react-querybuilder_core.production.mjs.map +1 -1
- package/package.json +11 -11
- package/dist/prepareQueryObjects-DJ_VjOLb.js.map +0 -1
- package/dist/prepareQueryObjects-DawsH4e3.mjs.map +0 -1
|
@@ -59,15 +59,7 @@ if(!t&&i!==`diagnostics`)return i===`parameterized`?{sql:S,params:[]}:i===`param
|
|
|
59
59
|
// v8 ignore else
|
|
60
60
|
typeof e.validator==`function`&&(w[e.value??/* v8 ignore start -- @preserve */e.name]=e.validator);let E=e=>{let t,n;if(e.id&&(t=C[e.id]),T.length>0){let t=T.filter(t=>t.name===e.field);if(t.length>0){let e=t[0];
|
|
61
61
|
// v8 ignore else
|
|
62
|
-
typeof e.validator==`function`&&(n=e.validator)}}if(e.valueSource===`parameter`&&typeof r.getParameters==`function`){let n=V(b,e.field);new Set(ut(B(r.getParameters(e.field,e.operator,{fieldData:n}))).map(e=>$t(e.value,r.paramPrefix))).has($t(e.value,r.paramPrefix))||(t=!1)}return[t,n]},D={...r,fallbackExpression:S,fields:b,format:i,getOperators:x,getParseNumberBoolean:h,quoteFieldNamesWith:y,operatorProcessor:g,ruleProcessor:v,valueProcessor:_,validateRule:E,validationMap:C,context:m};if(typeof u==`function`)return u(e,D);switch(i){case`json`:case`json_without_ids`:{let t=c?Kt(e,D):e;return i===`json_without_ids`?JSON.stringify(t,(e,t)=>e===`id`||e===`path`?void 0:on(e,t)):JSON.stringify(t,on,2)}case`sql`:return Bn(e,D);case`parameterized`:case`parameterized_named`:return Fn(e,D);case`mongodb`:return Nn(e,D);case`mongodb_query`:return pn(e,D);case`cel`:return cn(e,D);case`spel`:return _n(e,D);case`jsonata`:return kn(e,D);case`jsonlogic`:return An(e,D);case`elasticsearch`:return Dn(e,D);case`natural_language`:return Pn(e,D);case`ldap`:return jn(e,D);case`prisma`:return Ln(e,D);case`drizzle`:return En(e,D);case`tanstack_db`:return Vn(e,D);case`sequelize`:return Rn(e,D);case`cypher`:case`gql`:return Tn(e,D);case`sparql`:return zn(e,D);case`gremlin`:return On(e,D);case`diagnostics`:return Qn(e,D);default:return``}}const Xr=e=>(t,n,r,i)=>e({field:t,operator:n,value:r,valueSource:i},{parseNumbers:!1}),Zr=Xr(Cn),Qr=Xr(gn),$r=Xr(dn),ei=Xr(xn),ti=dn,ni=gn,ri=xn,X=(e,t)=>{let n=t,r=0;for(;r<e.length&&n&&F(n);){let t=n.rules[e[r]];n=typeof t==`string`?null:t,r++}return r<e.length?null:n},ii=(e,t)=>{if(t.id===e)return t;for(let n of t.rules)if(typeof n!=`string`){if(n.id===e)return n;if(F(n)){let t=ii(e,n);if(t)return t}}return null},ai=(e,t)=>{if(t.id===e)return[];let n=t.rules.findIndex(t=>typeof t!=`string`&&t.id===e);if(n>=0)return[n];for(let[n,r]of Object.entries(t.rules))if(F(r)){let t=ai(e,r);if(Array.isArray(t))return[Number.parseInt(n),...t]}return null},Z=e=>e.slice(0,-1),oi=(e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},si=(e,t)=>{if(e.length>=t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},ci=(e,t)=>{let n=[],r=Z(e),i=Z(t),a=0;for(;a<r.length&&a<i.length&&r[a]===i[a];)n.push(i[a]),a++;return n},li=(e,t)=>{let n=!!t.disabled,r=t,i=0;for(;i<e.length&&!n&&F(r);){let t=r.rules[e[i]];P(t)&&(F(t)||`field`in t&&t.field)&&(n=!!t.disabled,r=t),i++}return n},ui=(e,t=[])=>t.some(t=>oi(t,e)||si(t,e)),di=(e,t,{disabled:n=!1,disabledPaths:r=[]}={})=>{let i=[];for(let a=0;a<t;a++){let t=[...e,a];i[a]={path:t,disabled:n||r.some(e=>oi(t,e))}}return i},fi=e=>oi([],e.path)?`Query builder`:`Rule group at path ${e.path.join(`-`)}`,pi=globalThis.crypto,mi=/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i
|
|
63
|
-
/* v8 ignore file -- this is fine */
|
|
64
|
-
;
|
|
65
|
-
// v8 ignore next
|
|
66
|
-
let Q=()=>`00-0-4-2-000`.replaceAll(/[^-]/g,e=>((Math.random()+Math.trunc(e))*65536>>Number.parseInt(e)).toString(16).padStart(4,`0`));
|
|
67
|
-
// v8 ignore else
|
|
68
|
-
if(pi){
|
|
69
|
-
// v8 ignore else
|
|
70
|
-
if(typeof pi.randomUUID==`function`)Q=()=>pi.randomUUID();else if(typeof pi.getRandomValues==`function`){let e=/* @__PURE__ */ new Uint32Array(32);Q=()=>{pi.getRandomValues(e);let t=(e[0]%16).toString(16);for(let n=1;n<32;n++)t=n===12?`${t}4`:n===16?`${t}${`89ab`[e[17]%4]}`:`${t}${(e[n]%16).toString(16)}`,(n===7||n===11||n===15||n===19)&&(t=`${t}-`);return t}}}const hi=s,gi=new n({autoFreeze:!1}),_i=(e=!0)=>e?o:gi.produce,vi={name:`name`,value:`name`,matchModes:null,label:`label`},yi=(e,t)=>{let n=e?z(e):/* v8 ignore next -- @preserve */vi,r=n.matchModes??!1;return!r&&t&&(r=t(n.value,{fieldData:n})),r===!0?ae:r===!1?[]:ot(r)?B(r):r?.map(e=>ae.find(t=>t.value===N(e))??{name:e,value:e,label:e})??[]},bi=(e,t,n)=>{let r=H(e);if(t.operator===`between`||t.operator===`notBetween`){let e=[r,r];return n?e:_e(e.map(e=>e??/* v8 ignore start -- @preserve */``),`,`)}return r},xi=(e,t)=>{let{fieldData:n,fields:r,getValueEditorType:i,getValues:a,getDefaultValue:o,getParameters:s,listsAsArrays:c}=t;if(n?.defaultValue!==void 0&&n.defaultValue!==null)return n.defaultValue;if(o)return o(e,{fieldData:n});let l=``,u=a(e.field,e.operator,{fieldData:n});if(e.valueSource===`field`){let t=ht(n,r,e.operator);l=t.length>0?bi(t,e,c):``}else if(e.valueSource===`parameter`){let t=s?s(e.field,e.operator,{fieldData:n}):null;l=t&&t.length>0?H(t):``}else if(u.length>0){let t=i(e.field,e.operator,{fieldData:n});t===`multiselect`?l=c?[]:``:(t===`select`||t===`radio`)&&(l=bi(u,e,c))}else i(e.field,e.operator,{fieldData:n})===`checkbox`&&(l=!1);return l},Si=e=>{let t=typeof e==`boolean`?e:typeof e==`object`&&e?e.valid:null;return typeof t==`boolean`?t?oe.valid:oe.invalid:``},Ci=[{name:`value`,value:`value`,label:`value`}],wi={name:`name`,value:`name`,valueSources:null,label:`label`},Ti=(e,t,n)=>{let r=e?z(e):wi,i=r.valueSources??!1;return typeof i==`function`&&(i=i(t)),!i&&n&&(i=n(r.value,t,{fieldData:r})),i?ot(i)?B(i):i.map(e=>Ci.find(t=>t.value===N(e))??{name:e,value:e,label:e}):Ci},Ei=(e,...t)=>{let n={...e};for(let e of t)
|
|
62
|
+
typeof e.validator==`function`&&(n=e.validator)}}if(e.valueSource===`parameter`&&typeof r.getParameters==`function`){let n=V(b,e.field);new Set(ut(B(r.getParameters(e.field,e.operator,{fieldData:n}))).map(e=>$t(e.value,r.paramPrefix))).has($t(e.value,r.paramPrefix))||(t=!1)}return[t,n]},D={...r,fallbackExpression:S,fields:b,format:i,getOperators:x,getParseNumberBoolean:h,quoteFieldNamesWith:y,operatorProcessor:g,ruleProcessor:v,valueProcessor:_,validateRule:E,validationMap:C,context:m};if(typeof u==`function`)return u(e,D);switch(i){case`json`:case`json_without_ids`:{let t=c?Kt(e,D):e;return i===`json_without_ids`?JSON.stringify(t,(e,t)=>e===`id`||e===`path`?void 0:on(e,t)):JSON.stringify(t,on,2)}case`sql`:return Bn(e,D);case`parameterized`:case`parameterized_named`:return Fn(e,D);case`mongodb`:return Nn(e,D);case`mongodb_query`:return pn(e,D);case`cel`:return cn(e,D);case`spel`:return _n(e,D);case`jsonata`:return kn(e,D);case`jsonlogic`:return An(e,D);case`elasticsearch`:return Dn(e,D);case`natural_language`:return Pn(e,D);case`ldap`:return jn(e,D);case`prisma`:return Ln(e,D);case`drizzle`:return En(e,D);case`tanstack_db`:return Vn(e,D);case`sequelize`:return Rn(e,D);case`cypher`:case`gql`:return Tn(e,D);case`sparql`:return zn(e,D);case`gremlin`:return On(e,D);case`diagnostics`:return Qn(e,D);default:return``}}const Xr=e=>(t,n,r,i)=>e({field:t,operator:n,value:r,valueSource:i},{parseNumbers:!1}),Zr=Xr(Cn),Qr=Xr(gn),$r=Xr(dn),ei=Xr(xn),ti=dn,ni=gn,ri=xn,X=(e,t)=>{let n=t,r=0;for(;r<e.length&&n&&F(n);){let t=n.rules[e[r]];n=typeof t==`string`?null:t,r++}return r<e.length?null:n},ii=(e,t)=>{if(t.id===e)return t;for(let n of t.rules)if(typeof n!=`string`){if(n.id===e)return n;if(F(n)){let t=ii(e,n);if(t)return t}}return null},ai=(e,t)=>{if(t.id===e)return[];let n=t.rules.findIndex(t=>typeof t!=`string`&&t.id===e);if(n>=0)return[n];for(let[n,r]of Object.entries(t.rules))if(F(r)){let t=ai(e,r);if(Array.isArray(t))return[Number.parseInt(n),...t]}return null},Z=e=>e.slice(0,-1),oi=(e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},si=(e,t)=>{if(e.length>=t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},ci=(e,t)=>{let n=[],r=Z(e),i=Z(t),a=0;for(;a<r.length&&a<i.length&&r[a]===i[a];)n.push(i[a]),a++;return n},li=(e,t)=>{let n=!!t.disabled,r=t,i=0;for(;i<e.length&&!n&&F(r);){let t=r.rules[e[i]];P(t)&&(F(t)||`field`in t&&t.field)&&(n=!!t.disabled,r=t),i++}return n},ui=(e,t=[])=>t.some(t=>oi(t,e)||si(t,e)),di=(e,t,{disabled:n=!1,disabledPaths:r=[]}={})=>{let i=[];for(let a=0;a<t;a++){let t=[...e,a];i[a]={path:t,disabled:n||r.some(e=>oi(t,e))}}return i},fi=e=>oi([],e.path)?`Query builder`:`Rule group at path ${e.path.join(`-`)}`,pi=globalThis.crypto,mi=/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i;let Q=()=>`00-0-4-2-000`.replaceAll(/[^-]/g,e=>((Math.random()+Math.trunc(e))*65536>>Number.parseInt(e)).toString(16).padStart(4,`0`));if(pi){if(typeof pi.randomUUID==`function`)Q=()=>pi.randomUUID();else if(typeof pi.getRandomValues==`function`){let e=/* @__PURE__ */ new Uint32Array(32);Q=()=>{pi.getRandomValues(e);let t=(e[0]%16).toString(16);for(let n=1;n<32;n++)t=n===12?`${t}4`:n===16?`${t}${`89ab`[e[17]%4]}`:`${t}${(e[n]%16).toString(16)}`,(n===7||n===11||n===15||n===19)&&(t=`${t}-`);return t}}}const hi=s,gi=new n({autoFreeze:!1}),_i=(e=!0)=>e?o:gi.produce,vi={name:`name`,value:`name`,matchModes:null,label:`label`},yi=(e,t)=>{let n=e?z(e):/* v8 ignore next -- @preserve */vi,r=n.matchModes??!1;return!r&&t&&(r=t(n.value,{fieldData:n})),r===!0?ae:r===!1?[]:ot(r)?B(r):r?.map(e=>ae.find(t=>t.value===N(e))??{name:e,value:e,label:e})??[]},bi=(e,t,n)=>{let r=H(e);if(t.operator===`between`||t.operator===`notBetween`){let e=[r,r];return n?e:_e(e.map(e=>e??/* v8 ignore start -- @preserve */``),`,`)}return r},xi=(e,t)=>{let{fieldData:n,fields:r,getValueEditorType:i,getValues:a,getDefaultValue:o,getParameters:s,listsAsArrays:c}=t;if(n?.defaultValue!==void 0&&n.defaultValue!==null)return n.defaultValue;if(o)return o(e,{fieldData:n});let l=``,u=a(e.field,e.operator,{fieldData:n});if(e.valueSource===`field`){let t=ht(n,r,e.operator);l=t.length>0?bi(t,e,c):``}else if(e.valueSource===`parameter`){let t=s?s(e.field,e.operator,{fieldData:n}):null;l=t&&t.length>0?H(t):``}else if(u.length>0){let t=i(e.field,e.operator,{fieldData:n});t===`multiselect`?l=c?[]:``:(t===`select`||t===`radio`)&&(l=bi(u,e,c))}else i(e.field,e.operator,{fieldData:n})===`checkbox`&&(l=!1);return l},Si=e=>{let t=typeof e==`boolean`?e:typeof e==`object`&&e?e.valid:null;return typeof t==`boolean`?t?oe.valid:oe.invalid:``},Ci=[{name:`value`,value:`value`,label:`value`}],wi={name:`name`,value:`name`,valueSources:null,label:`label`},Ti=(e,t,n)=>{let r=e?z(e):wi,i=r.valueSources??!1;return typeof i==`function`&&(i=i(t)),!i&&n&&(i=n(r.value,t,{fieldData:r})),i?ot(i)?B(i):i.map(e=>Ci.find(t=>t.value===N(e))??{name:e,value:e,label:e}):Ci},Ei=(e,...t)=>{let n={...e};for(let e of t)
|
|
71
63
|
// v8 ignore else
|
|
72
64
|
if(e)for(let t of Ze(e))$e(t)||(n[t]=n[t]?{...n[t],...e[t]}:{...e[t]});return n},Di=(e,t,n)=>{if($e(e))return;let r=Qe(t).map(([t,[r,i]])=>[t,r??i??n?.[e]?.[t]]).filter(e=>!$e(e[0])&&!!e[1]);if(r.length>0||n){let t=n?.[e]??{},i=Object.assign({},t,Object.fromEntries(r));return{[e]:i}}},$=(e,t)=>{let n=``;for(let r=0;r<t.length;r++){let i=t[r]?.[e];if(!i)continue;let a=typeof i==`string`?i:be(i);a&&(n=n?`${n} ${a}`:a)}return n},Oi=(...e)=>({queryBuilder:$(`queryBuilder`,e),ruleGroup:$(`ruleGroup`,e),header:$(`header`,e),body:$(`body`,e),combinators:$(`combinators`,e),addRule:$(`addRule`,e),addGroup:$(`addGroup`,e),cloneRule:$(`cloneRule`,e),cloneGroup:$(`cloneGroup`,e),ungroup:$(`ungroup`,e),removeGroup:$(`removeGroup`,e),rule:$(`rule`,e),fields:$(`fields`,e),operators:$(`operators`,e),value:$(`value`,e),removeRule:$(`removeRule`,e),notToggle:$(`notToggle`,e),shiftActions:$(`shiftActions`,e),undoRedoActions:$(`undoRedoActions`,e),undoAction:$(`undoAction`,e),redoAction:$(`redoAction`,e),dragHandle:$(`dragHandle`,e),lockRule:$(`lockRule`,e),lockGroup:$(`lockGroup`,e),muteRule:$(`muteRule`,e),muteGroup:$(`muteGroup`,e),muted:$(`muted`,e),valueSource:$(`valueSource`,e),actionElement:$(`actionElement`,e),valueSelector:$(`valueSelector`,e),betweenRules:$(`betweenRules`,e),valid:$(`valid`,e),invalid:$(`invalid`,e),dndDragging:$(`dndDragging`,e),dndOver:$(`dndOver`,e),dndCopy:$(`dndCopy`,e),dndGroup:$(`dndGroup`,e),dndDropNotAllowed:$(`dndDropNotAllowed`,e),dndPreviewPosition:$(`dndPreviewPosition`,e),dndHidden:$(`dndHidden`,e),disabled:$(`disabled`,e),valueListItem:$(`valueListItem`,e),matchMode:$(`matchMode`,e),matchThreshold:$(`matchThreshold`,e),branches:$(`branches`,e),hasSubQuery:$(`hasSubQuery`,e),loading:$(`loading`,e),valueDateTimeRelative:$(`valueDateTimeRelative`,e)}),ki=({field:e,fieldData:t,getOperators:n,operators:r,placeholder:i,baseOption:a,autoSelectOption:o})=>pt({optionList:t?.operators??n?.(e,{fieldData:t})??r,placeholder:i,baseOption:a,labelMap:w,autoSelectOption:o}).optionList,Ai=({field:e,fieldData:t,getDefaultOperator:n,getOperators:r})=>t?.defaultOperator?t.defaultOperator:n?typeof n==`function`?n(e,{fieldData:t}):n:H(r(e,{fieldData:t}))??``,ji=({field:e,operator:t,fieldData:n,getValueEditorType:r})=>n?.valueEditorType?typeof n.valueEditorType==`function`?n.valueEditorType(t):n.valueEditorType:r?.(e,t,{fieldData:n})??`text`,Mi=({field:e,operator:t,fieldData:n,getValues:r,placeholder:i,baseOption:a,autoSelectOption:o})=>pt({optionList:n?.values??r?.(e,t,{fieldData:n})??[],placeholder:i,baseOption:a,autoSelectOption:o}).optionList,Ni=e=>{let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype},Pi=(e,t)=>{if(Object.is(e,t))return!0;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,n)=>Pi(e,t[n]));if(typeof e!=`object`||typeof t!=`object`||e===null||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)||!Ni(e))return!1;let n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(n=>Pi(e[n],t[n]))},Fi=(e,t)=>Pi(e,t),Ii=(e,t)=>e===!1?!1:e?!0:t!==!1,Li=(e,t)=>e?!0:e!==!1&&!!t,Ri=(e,t,n,r)=>r?t??n:e?Ii(t,n):Li(t,n),zi=(e,t,n)=>t!==void 0&&t!=null?t:n!==void 0&&n!=null?n:e,Bi=(e={},t={},n)=>Qe(de).reduce((r,[i,a])=>(r[i]=Ri(a,e[i],t[i],!n),r),{}),Vi=(e,{idGenerator:t=Q}={})=>{let n=!e.id,r=J(e);return!n&&!r?e:{...e,...n&&{id:t()},...r&&{value:Hi(e.value,{idGenerator:t})}}},Hi=(e,{idGenerator:t=Q}={})=>{let n=!e.id,r=!1,i=[];for(let n=0;n<e.rules.length;n++){let a=e.rules[n];if(typeof a==`string`)i.push(a);else{let e=F(a)?Hi(a,{idGenerator:t}):Vi(a,{idGenerator:t});i.push(e),e!==a&&(r=!0)}}return!n&&!r?e:{...e,...n&&{id:t()},rules:i}},Ui=(e,{idGenerator:t=Q}={})=>F(e)?Hi(e,{idGenerator:t}):Vi(e,{idGenerator:t}),Wi=(e,t)=>{let n=e.query??e.storeQuery??e.defaultQuery??e.fallbackQuery;return n.id?n:Hi(n,t)},Gi=(e,{idGenerator:t=Q}={})=>structuredClone({...e,id:t()}),Ki=(e,{idGenerator:t=Q}={})=>{if(!P(e))return e;if(!F(e))return structuredClone({...e,id:t()});let n={...e,id:t()};return Array.isArray(n.rules)&&(n.rules=e.rules.map(e=>typeof e==`string`?e:F(e)?Ki(e,{idGenerator:t}):Gi(e,{idGenerator:t}))),n},qi=(e,t,n={},{asParent:r=!1}={})=>{if(n.queryDisabled)return r?`parent-disabled`:`target-disabled`;if(!n.respectDisabled||t===void 0)return null;let i=Array.isArray(t)?t:ai(t,e);return i&&(li(i,e)||ui(i,n.disabledPaths))?r?`parent-disabled`:`target-disabled`:null},Ji=(e,{maxLevels:t=1/0}={})=>!!e&&e.length>=t,Yi=(e,t,n,r={})=>_i(r.freeze)(e,e=>Xi(e,t,n,r)),Xi=(e,t,n,r={})=>{let{combinators:i=k,combinatorPreceding:a,idGenerator:o=Q,onAbort:s}=r,c=Array.isArray(n)?X(n,e):ii(n,e);if(!c)return s?.({reason:`parent-not-found`,operation:`add`,pathOrID:n}),e;if(!F(c))return s?.({reason:`parent-not-a-group`,operation:`add`,pathOrID:n}),e;let l=Array.isArray(n)?n:ai(n,e),u=qi(e,l,r,{asParent:!0});if(u)return s?.({reason:u,operation:`add`,pathOrID:n}),e;if(F(t)&&Ji(l,r))return s?.({reason:`max-levels-exceeded`,operation:`add`,pathOrID:n}),e;if(L(c)&&c.rules.length>0){let e=c.rules.at(-2);c.rules.push(a??(typeof e==`string`?e:H(i)))}return c.rules.push(Ui(t,{idGenerator:o})),e},Zi={field:0,operator:1,valueSource:2,value:4},Qi=e=>e.toSorted((e,t)=>(Zi[e[0]]??3)-(Zi[t[0]]??3)),$i=(e,t,n,r)=>{if(typeof e==`string`)return{entries:[[e,t]],pathOrID:n,options:r??{}};if(Array.isArray(e)){let i=t;return{entries:Qi(e.map((e,t)=>[e,i[t]])),pathOrID:n,options:r??{}}}return{entries:Qi(Object.entries(e)),pathOrID:t,options:n??{}}},ea=(e,t,n,r)=>(typeof e==`string`||Array.isArray(e)?r:n)??{},ta=(e,t,n,r,i)=>{let{entries:a,pathOrID:o,options:s}=$i(t,n,r,i);for(let[t,n]of a)ia(e,t,n,o,s);return e},na=((e,t,n,r,i)=>_i(ea(t,n,r,i).freeze)(e,e=>{ta(e,t,n,r,i)})),ra=((e,t,n,r,i)=>ta(e,t,n,r,i)),ia=(e,t,n,r,i={})=>{let{resetOnFieldChange:a=!0,resetOnOperatorChange:o=!1,getRuleDefaultOperator:s=()=>`=`,getValueSources:c=()=>[`value`],getRuleDefaultValue:l=()=>``,getMatchModes:u=()=>[],onAbort:d}=i,f=a,p=Array.isArray(r)?r:ai(r,e);if(!p)return d?.({reason:`target-not-found`,operation:`update`,pathOrID:r}),e;let m=t===`disabled`?{queryDisabled:i.queryDisabled}:i,h=qi(e,p,m);if(h)return d?.({reason:h,operation:`update`,pathOrID:r}),e;if(t===`combinator`&&!I(e)){let t=X(Z(p),e);if(!t||!F(t))return d?.({reason:`target-not-found`,operation:`update`,pathOrID:r}),e;let i=t.rules;return p.at(-1)%2==1?i[p.at(-1)]===n?d?.({reason:`no-change`,operation:`update`,pathOrID:r}):i[p.at(-1)]=n:d?.({reason:`not-a-combinator-slot`,operation:`update`,pathOrID:r}),e}let g=X(p,e);if(!g)return d?.({reason:`target-not-found`,operation:`update`,pathOrID:r}),e;let _=F(g);if(g[t]===n)return d?.({reason:`no-change`,operation:`update`,pathOrID:r}),e;if(t!==`valueSource`&&(g[t]=n),_)return e;let v=!1,y=!1;if(t===`field`){let e=u(g.field),t=u(n);if(t.length===0)delete g.match;else{let e=g.match?.mode&&V(t,g.match.mode)?null:H(t);e&&(g.match={mode:e,threshold:1})}(e.length>0||t.length>0)&&(f=!0)}f&&t===`field`&&(g.operator=s(n),v=!0,y=!0),o&&t===`operator`&&(v=!0,y=!0);let b=H(Ti({name:g.field,value:g.field,label:``},g.operator,c));return(v&&g.valueSource&&b!==g.valueSource||t===`valueSource`&&n!==g.valueSource)&&(y=!!g.valueSource||!g.valueSource&&n!==b,g.valueSource=v?b:n),y&&(g.value=l(g)),e},aa=(e,t,n={})=>_i(n.freeze)(e,e=>oa(e,t,n)),oa=(e,t,n={})=>{let{onAbort:r}=n,i=Array.isArray(t)?t:ai(t,e);if(!i)return r?.({reason:`target-not-found`,operation:`remove`,pathOrID:t}),e;if(i.length===0)return r?.({reason:`root-not-allowed`,operation:`remove`,pathOrID:t}),e;let a=qi(e,i,n);if(a)return r?.({reason:a,operation:`remove`,pathOrID:t}),e;if(!X(i,e))return r?.({reason:`target-not-found`,operation:`remove`,pathOrID:t}),e;let o=i.at(-1),s=X(Z(i),e);if(!I(s)&&s.rules.length>1){let e=o===0?0:o-1;s.rules.splice(e,2)}else s.rules.splice(o,1);return e},sa=(e,t,n={})=>_i(n.freeze)(e,e=>ca(e,t,n)),ca=(e,t,n={})=>{let{onAbort:r}=n,i=Array.isArray(t)?t:ai(t,e);if(!i)return r?.({reason:`target-not-found`,operation:`ungroup`,pathOrID:t}),e;if(i.length===0)return r?.({reason:`root-not-allowed`,operation:`ungroup`,pathOrID:t}),e;let a=qi(e,i,n);if(a)return r?.({reason:a,operation:`ungroup`,pathOrID:t}),e;let o=X(i,e);if(!o)return r?.({reason:`target-not-found`,operation:`ungroup`,pathOrID:t}),e;if(!F(o))return r?.({reason:`target-not-a-group`,operation:`ungroup`,pathOrID:t}),e;let s=i.at(-1),c=X(Z(i),e);if(o.rules.length===0){if(!I(c)&&c.rules.length>1){let e=s===0?0:s-1;c.rules.splice(e,2)}else c.rules.splice(s,1);return e}return c.rules.splice(s,1,...o.rules),e},la=(e,t,n)=>{if(Array.isArray(n))return n;let r=L(e);if(n===`up`){if(oi(t,[0]))return t;if(t.at(-1)===0){let e=Z(t);return[...Z(e),Math.max(0,e.at(-1)-+!!r)]}{let n=[...Z(t),Math.max(0,t.at(-1)-(r?2:1))],i=X(n,e);return F(i)?[...n,i.rules.length]:[...Z(t),Math.max(0,t.at(-1)-(r?3:1))]}}if(n===`down`){if(oi([e.rules.length-1],t))return t;if(t.at(-1)===X(Z(t),e).rules.length-1){let e=Z(t);return[...Z(e),e.at(-1)+1]}{let n=[...Z(t),t.at(-1)+(r?2:1)],i=X(n,e);return F(i)?[...n,0]:[...Z(t),t.at(-1)+(r?3:2)]}}return t},ua=(e,t,n,r={})=>_i(r.freeze)(e,e=>da(e,t,n,r)),da=(e,t,n,i={})=>{let{clone:o=!1,combinators:s=k,idGenerator:c=Q,onAbort:l}=i,u=Array.isArray(t)?t:ai(t,e);if(!u)return l?.({reason:`target-not-found`,operation:`move`,pathOrID:t}),e;let d=X(u,e);if(!d)return l?.({reason:`target-not-found`,operation:`move`,pathOrID:t}),e;let f=la(e,u,n);if(u.length===0)return l?.({reason:`root-not-allowed`,operation:`move`,pathOrID:t}),e;let p=qi(e,u,i);if(p)return l?.({reason:p,operation:`move`,pathOrID:t}),e;if(oi(u,f))return l?.({reason:`same-location`,operation:`move`,pathOrID:t}),e;if(!X(Z(f),e)||!o&&si(u,f))return l?.({reason:`destination-not-found`,operation:`move`,pathOrID:n}),e;let m=o?Ki(a(d)?r(d):d,{idGenerator:c}):d,h=L(e),g=X(Z(u),e),_=u.at(-1),v=h&&_>0?g.rules[_-1]:null,y=h&&_<g.rules.length-1?g.rules[_+1]:null;if(!o){let e=h?Math.max(0,_-1):_,t=h?2:1;g.rules.splice(e,t)}let b=[...f];h&&b.at(-1)%2==1&&(b[b.length-1]+=1);let x=ci(u,f);!o&&u.length===x.length+1&&b[x.length]>u[x.length]&&(b[x.length]-=h?2:1);let S=Z(b),C=X(S,e),w=b.at(-1),T=h&&w>0?w-1:w,E=(...e)=>C.rules.splice(T,0,...e);return C.rules.length===0||!h?E(m):w===0?_===0&&y?E(m,y):E(m,C.rules[1]??v??H(s)):E(v||(C.rules[T-2]??y??H(s)),m),e},fa=(e,t,n,r={})=>_i(r.freeze)(e,e=>pa(e,t,n,r)),pa=(e,t,n,r={})=>{let{combinators:i=k,combinatorPreceding:a,combinatorSucceeding:o,idGenerator:s=Q,replace:c=!1,onAbort:l}=r,u=X(Z(n),e);if(!u)return l?.({reason:`parent-not-found`,operation:`insert`,pathOrID:n}),e;if(!F(u))return l?.({reason:`parent-not-a-group`,operation:`insert`,pathOrID:n}),e;let d=Z(n),f=qi(e,d,r,{asParent:!0});if(f)return l?.({reason:f,operation:`insert`,pathOrID:n}),e;if(F(t)&&Ji(d,r))return l?.({reason:`max-levels-exceeded`,operation:`insert`,pathOrID:n}),e;let p=Ki(t,{idGenerator:s}),m=L(e),h=n.at(-1),g=(e,...t)=>u.rules.splice(e,c?t.length:0,...t);if(u.rules.length===0||!m)g(h,p);else if(c&&m)g(h+h%2,p);else if(h===0)p.path?.at(-1)===0&&o?g(h,p,o):g(h,p,u.rules[1]??a??H(i));else{let e=h%2==0?h-1:h;a?g(e,a,p):g(e,u.rules[e-2]??o??H(i),p)}return e},ma=(e,t,n,r={})=>_i(r.freeze)(e,e=>ha(e,t,n,r)),ha=(e,t,n,i={})=>{let{clone:o=!1,combinators:s=k,idGenerator:c=Q,onAbort:l}=i,u=Array.isArray(t)?t:ai(t,e),d=Array.isArray(n)?n:ai(n,e);if(!u)return l?.({reason:`target-not-found`,operation:`group`,pathOrID:t}),e;if(!d)return l?.({reason:`target-not-found`,operation:`group`,pathOrID:n}),e;let f=la(e,u,d);if(u.length===0)return l?.({reason:`root-not-allowed`,operation:`group`,pathOrID:t}),e;let p=qi(e,u,i);if(p)return l?.({reason:p,operation:`group`,pathOrID:t}),e;if(oi(u,f))return l?.({reason:`same-location`,operation:`group`,pathOrID:t}),e;if(!X(Z(f),e)||!o&&si(u,f))return l?.({reason:`destination-not-found`,operation:`group`,pathOrID:n}),e;let m=X(u,e),h=X(d,e);if(!m)return l?.({reason:`target-not-found`,operation:`group`,pathOrID:t}),e;if(!h)return l?.({reason:`target-not-found`,operation:`group`,pathOrID:n}),e;let g=o?Ki(a(m)?r(m):m,{idGenerator:c}):m,_=L(e),v=X(Z(u),e),y=u.at(-1);if(!o){let e=_?Math.max(0,y-1):y,t=_?2:1;v.rules.splice(e,t)}let b=[...f],x=ci(u,f);!o&&u.length===x.length+1&&f[x.length]>u[x.length]&&(b[x.length]-=_?2:1);let S=Z(b),C=X(S,e),w=b.at(-1);return C.rules.splice(w,1,Ui(_?{rules:[h,H(s),g]}:{combinator:H(s),rules:[h,g]},{idGenerator:c})),e},ga=(e={})=>{let{qbId:t,combinators:n,idGenerator:r,maxLevels:i=1/0,queryDisabled:a,respectDisabled:o=!0,disabledPaths:s,resetOnFieldChange:c,resetOnOperatorChange:l,getRuleDefaultOperator:u,getValueSources:d,getRuleDefaultValue:f,getMatchModes:p,freeze:m,onAddRule:h,onAddGroup:g,onRemove:_,onMoveRule:v,onMoveGroup:y,onGroupRule:b,onGroupGroup:x,onUngroup:S,onLog:C}=e,w=e=>C?.({qbId:t,...e}),T={respectDisabled:o,queryDisabled:a,disabledPaths:s},E=(e,t,n=!1)=>!!qi(e,t,T,{asParent:n});return{addRule:(e,t,i,a)=>{if(E(e,i,!0)){w({type:A.parentPathDisabled,rule:t,parentPath:i,query:e});return}let o=!h||h(t,i,e,a);if(!o){w({type:A.onAddRuleFalse,rule:t,parentPath:i,query:e});return}let s=o===!0?t:o,c=Yi(e,s,i,{combinators:n,combinatorPreceding:s.combinatorPreceding,idGenerator:r,freeze:m});return w({type:A.add,query:e,newQuery:c,newRule:s,parentPath:i}),c},addGroup:(e,t,a,o)=>{if(a.length>=i)return;if(E(e,a,!0)){w({type:A.parentPathDisabled,ruleGroup:t,parentPath:a,query:e});return}let s=!g||g(t,a,e,o);if(!s){w({type:A.onAddGroupFalse,ruleGroup:t,parentPath:a,query:e});return}let c=s===!0?t:s,l=Yi(e,c,a,{combinators:n,combinatorPreceding:c.combinatorPreceding??void 0,idGenerator:r,freeze:m});return w({type:A.add,query:e,newQuery:l,newGroup:c,parentPath:a}),l},propChange:(e,t,n,r)=>{if(qi(e,r,t===`disabled`?{queryDisabled:a}:T)){w({type:A.pathDisabled,path:r,prop:t,value:n,query:e});return}let i=na(e,t,n,r,{resetOnFieldChange:c,resetOnOperatorChange:l,getRuleDefaultOperator:u,getValueSources:d,getRuleDefaultValue:f,getMatchModes:p,freeze:m});return w({type:A.update,query:e,newQuery:i,prop:t,value:n,path:r}),i},removeRuleOrGroup:(e,t,n)=>{if(E(e,t)){w({type:A.pathDisabled,path:t,query:e});return}let r=X(t,e);
|
|
73
65
|
/* v8 ignore next -- @preserve */
|