@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.
Files changed (35) hide show
  1. package/dist/cjs/react-querybuilder_core.cjs.development.js +0 -4
  2. package/dist/cjs/react-querybuilder_core.cjs.development.js.map +1 -1
  3. package/dist/cjs/react-querybuilder_core.cjs.production.js +1 -9
  4. package/dist/cjs/react-querybuilder_core.cjs.production.js.map +1 -1
  5. package/dist/derivations.js +1 -1
  6. package/dist/derivations.mjs +1 -1
  7. package/dist/parseCEL.js +2 -2
  8. package/dist/parseCEL.mjs +2 -2
  9. package/dist/parseJSONata.js +2 -2
  10. package/dist/parseJSONata.mjs +2 -2
  11. package/dist/parseJsonLogic.js +2 -2
  12. package/dist/parseJsonLogic.mjs +2 -2
  13. package/dist/parseMongoDB.js +2 -2
  14. package/dist/parseMongoDB.mjs +2 -2
  15. package/dist/parseSQL.js +2 -2
  16. package/dist/parseSQL.mjs +2 -2
  17. package/dist/parseSpEL.js +2 -2
  18. package/dist/parseSpEL.mjs +2 -2
  19. package/dist/{parserUtils-2VtG7m8L.js → parserUtils-B7lyuS2W.js} +2 -2
  20. package/dist/{parserUtils-2VtG7m8L.js.map → parserUtils-B7lyuS2W.js.map} +1 -1
  21. package/dist/{parserUtils-BlafvoFb.mjs → parserUtils-CvYzw5dp.mjs} +2 -2
  22. package/dist/{parserUtils-BlafvoFb.mjs.map → parserUtils-CvYzw5dp.mjs.map} +1 -1
  23. package/dist/{prepareQueryObjects-DawsH4e3.mjs → prepareQueryObjects-7w8QOgIX.mjs} +1 -5
  24. package/dist/prepareQueryObjects-7w8QOgIX.mjs.map +1 -0
  25. package/dist/{prepareQueryObjects-DJ_VjOLb.js → prepareQueryObjects-Bh8SmGZH.js} +1 -5
  26. package/dist/prepareQueryObjects-Bh8SmGZH.js.map +1 -0
  27. package/dist/react-querybuilder_core.legacy-esm.js +7 -11
  28. package/dist/react-querybuilder_core.legacy-esm.js.map +1 -1
  29. package/dist/react-querybuilder_core.mjs +0 -4
  30. package/dist/react-querybuilder_core.mjs.map +1 -1
  31. package/dist/react-querybuilder_core.production.mjs +1 -9
  32. package/dist/react-querybuilder_core.production.mjs.map +1 -1
  33. package/package.json +11 -11
  34. package/dist/prepareQueryObjects-DJ_VjOLb.js.map +0 -1
  35. 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(Xe(z(r.getParameters(e.field,e.operator,{fieldData:n}))).map(e=>zt(e.value,r.paramPrefix))).has(zt(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?Mt(e,D):e;return i===`json_without_ids`?JSON.stringify(t,(e,t)=>e===`id`||e===`path`?void 0:Gt(e,t)):JSON.stringify(t,Gt,2)}case`sql`:return En(e,D);case`parameterized`:case`parameterized_named`:return xn(e,D);case`mongodb`:return yn(e,D);case`mongodb_query`:return Qt(e,D);case`cel`:return qt(e,D);case`spel`:return nn(e,D);case`jsonata`:return hn(e,D);case`jsonlogic`:return gn(e,D);case`elasticsearch`:return pn(e,D);case`natural_language`:return bn(e,D);case`ldap`:return _n(e,D);case`prisma`:return Cn(e,D);case`drizzle`:return fn(e,D);case`tanstack_db`:return Dn(e,D);case`sequelize`:return wn(e,D);case`cypher`:case`gql`:return dn(e,D);case`sparql`:return Tn(e,D);case`gremlin`:return mn(e,D);case`diagnostics`:return Rn(e,D);default:return``}}const Ir=e=>(t,n,r,i)=>e({field:t,operator:n,value:r,valueSource:i},{parseNumbers:!1}),Lr=Ir(ln),Rr=Ir(tn),zr=Ir(Xt),Br=Ir(sn),Vr=Xt,Hr=tn,Ur=sn,X=(e,t)=>{let n=t,r=0;for(;r<e.length&&n&&P(n);){let t=n.rules[e[r]];n=typeof t==`string`?null:t,r++}return r<e.length?null:n},Wr=(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(P(n)){let t=Wr(e,n);if(t)return t}}return null},Gr=(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(P(r)){let t=Gr(e,r);if(Array.isArray(t))return[Number.parseInt(n),...t]}return null},Z=e=>e.slice(0,-1),Kr=(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},qr=(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},Jr=(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},Yr=(e,t)=>{let n=!!t.disabled,r=t,i=0;for(;i<e.length&&!n&&P(r);){let t=r.rules[e[i]];N(t)&&(P(t)||`field`in t&&t.field)&&(n=!!t.disabled,r=t),i++}return n},Xr=(e,t=[])=>t.some(t=>Kr(t,e)||qr(t,e)),Zr=(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=>Kr(t,e))}}return i},Qr=e=>Kr([],e.path)?`Query builder`:`Rule group at path ${e.path.join(`-`)}`,$r=globalThis.crypto,ei=/^[\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($r){
69
- // v8 ignore else
70
- if(typeof $r.randomUUID==`function`)Q=()=>$r.randomUUID();else if(typeof $r.getRandomValues==`function`){let e=/* @__PURE__ */ new Uint32Array(32);Q=()=>{$r.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 ti=t.setAutoFreeze,ni=new t.Immer({autoFreeze:!1}),ri=(e=!0)=>e?t.produce:ni.produce,ii={name:`name`,value:`name`,matchModes:null,label:`label`},ai=(e,t)=>{let n=e?R(e):/* v8 ignore next -- @preserve */ii,r=n.matchModes??!1;return!r&&t&&(r=t(n.value,{fieldData:n})),r===!0?w:r===!1?[]:qe(r)?z(r):r?.map(e=>w.find(t=>t.value===M(e))??{name:e,value:e,label:e})??[]},oi=(e,t,n)=>{let r=H(e);if(t.operator===`between`||t.operator===`notBetween`){let e=[r,r];return n?e:ae(e.map(e=>e??/* v8 ignore start -- @preserve */``),`,`)}return r},si=(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=tt(n,r,e.operator);l=t.length>0?oi(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=oi(u,e,c))}else i(e.field,e.operator,{fieldData:n})===`checkbox`&&(l=!1);return l},ci=e=>{let t=typeof e==`boolean`?e:typeof e==`object`&&e?e.valid:null;return typeof t==`boolean`?t?T.valid:T.invalid:``},li=[{name:`value`,value:`value`,label:`value`}],ui={name:`name`,value:`name`,valueSources:null,label:`label`},di=(e,t,n)=>{let r=e?R(e):ui,i=r.valueSources??!1;return typeof i==`function`&&(i=i(t)),!i&&n&&(i=n(r.value,t,{fieldData:r})),i?qe(i)?z(i):i.map(e=>li.find(t=>t.value===M(e))??{name:e,value:e,label:e}):li},fi=(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(Xe(z(r.getParameters(e.field,e.operator,{fieldData:n}))).map(e=>zt(e.value,r.paramPrefix))).has(zt(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?Mt(e,D):e;return i===`json_without_ids`?JSON.stringify(t,(e,t)=>e===`id`||e===`path`?void 0:Gt(e,t)):JSON.stringify(t,Gt,2)}case`sql`:return En(e,D);case`parameterized`:case`parameterized_named`:return xn(e,D);case`mongodb`:return yn(e,D);case`mongodb_query`:return Qt(e,D);case`cel`:return qt(e,D);case`spel`:return nn(e,D);case`jsonata`:return hn(e,D);case`jsonlogic`:return gn(e,D);case`elasticsearch`:return pn(e,D);case`natural_language`:return bn(e,D);case`ldap`:return _n(e,D);case`prisma`:return Cn(e,D);case`drizzle`:return fn(e,D);case`tanstack_db`:return Dn(e,D);case`sequelize`:return wn(e,D);case`cypher`:case`gql`:return dn(e,D);case`sparql`:return Tn(e,D);case`gremlin`:return mn(e,D);case`diagnostics`:return Rn(e,D);default:return``}}const Ir=e=>(t,n,r,i)=>e({field:t,operator:n,value:r,valueSource:i},{parseNumbers:!1}),Lr=Ir(ln),Rr=Ir(tn),zr=Ir(Xt),Br=Ir(sn),Vr=Xt,Hr=tn,Ur=sn,X=(e,t)=>{let n=t,r=0;for(;r<e.length&&n&&P(n);){let t=n.rules[e[r]];n=typeof t==`string`?null:t,r++}return r<e.length?null:n},Wr=(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(P(n)){let t=Wr(e,n);if(t)return t}}return null},Gr=(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(P(r)){let t=Gr(e,r);if(Array.isArray(t))return[Number.parseInt(n),...t]}return null},Z=e=>e.slice(0,-1),Kr=(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},qr=(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},Jr=(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},Yr=(e,t)=>{let n=!!t.disabled,r=t,i=0;for(;i<e.length&&!n&&P(r);){let t=r.rules[e[i]];N(t)&&(P(t)||`field`in t&&t.field)&&(n=!!t.disabled,r=t),i++}return n},Xr=(e,t=[])=>t.some(t=>Kr(t,e)||qr(t,e)),Zr=(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=>Kr(t,e))}}return i},Qr=e=>Kr([],e.path)?`Query builder`:`Rule group at path ${e.path.join(`-`)}`,$r=globalThis.crypto,ei=/^[\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($r){if(typeof $r.randomUUID==`function`)Q=()=>$r.randomUUID();else if(typeof $r.getRandomValues==`function`){let e=/* @__PURE__ */ new Uint32Array(32);Q=()=>{$r.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 ti=t.setAutoFreeze,ni=new t.Immer({autoFreeze:!1}),ri=(e=!0)=>e?t.produce:ni.produce,ii={name:`name`,value:`name`,matchModes:null,label:`label`},ai=(e,t)=>{let n=e?R(e):/* v8 ignore next -- @preserve */ii,r=n.matchModes??!1;return!r&&t&&(r=t(n.value,{fieldData:n})),r===!0?w:r===!1?[]:qe(r)?z(r):r?.map(e=>w.find(t=>t.value===M(e))??{name:e,value:e,label:e})??[]},oi=(e,t,n)=>{let r=H(e);if(t.operator===`between`||t.operator===`notBetween`){let e=[r,r];return n?e:ae(e.map(e=>e??/* v8 ignore start -- @preserve */``),`,`)}return r},si=(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=tt(n,r,e.operator);l=t.length>0?oi(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=oi(u,e,c))}else i(e.field,e.operator,{fieldData:n})===`checkbox`&&(l=!1);return l},ci=e=>{let t=typeof e==`boolean`?e:typeof e==`object`&&e?e.valid:null;return typeof t==`boolean`?t?T.valid:T.invalid:``},li=[{name:`value`,value:`value`,label:`value`}],ui={name:`name`,value:`name`,valueSources:null,label:`label`},di=(e,t,n)=>{let r=e?R(e):ui,i=r.valueSources??!1;return typeof i==`function`&&(i=i(t)),!i&&n&&(i=n(r.value,t,{fieldData:r})),i?qe(i)?z(i):i.map(e=>li.find(t=>t.value===M(e))??{name:e,value:e,label:e}):li},fi=(e,...t)=>{let n={...e};for(let e of t)
71
63
  // v8 ignore else
72
64
  if(e)for(let t of Re(e))Be(t)||(n[t]=n[t]?{...n[t],...e[t]}:{...e[t]});return n},pi=(e,t,n)=>{if(Be(e))return;let r=ze(t).map(([t,[r,i]])=>[t,r??i??n?.[e]?.[t]]).filter(e=>!Be(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:ce(i);a&&(n=n?`${n} ${a}`:a)}return n},mi=(...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)}),hi=({field:e,fieldData:t,getOperators:n,operators:r,placeholder:i,baseOption:a,autoSelectOption:o})=>$e({optionList:t?.operators??n?.(e,{fieldData:t})??r,placeholder:i,baseOption:a,labelMap:p,autoSelectOption:o}).optionList,gi=({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}))??``,_i=({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`,vi=({field:e,operator:t,fieldData:n,getValues:r,placeholder:i,baseOption:a,autoSelectOption:o})=>$e({optionList:n?.values??r?.(e,t,{fieldData:n})??[],placeholder:i,baseOption:a,autoSelectOption:o}).optionList,yi=e=>{let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype},bi=(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)=>bi(e,t[n]));if(typeof e!=`object`||typeof t!=`object`||e===null||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)||!yi(e))return!1;let n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(n=>bi(e[n],t[n]))},xi=(e,t)=>bi(e,t),Si=(e,t)=>e===!1?!1:e?!0:t!==!1,Ci=(e,t)=>e?!0:e!==!1&&!!t,wi=(e,t,n,r)=>r?t??n:e?Si(t,n):Ci(t,n),Ti=(e,t,n)=>t!==void 0&&t!=null?t:n!==void 0&&n!=null?n:e,Ei=(e={},t={},n)=>ze(te).reduce((r,[i,a])=>(r[i]=wi(a,e[i],t[i],!n),r),{}),Di=(e,{idGenerator:t=Q}={})=>{let n=!e.id,r=J(e);return!n&&!r?e:{...e,...n&&{id:t()},...r&&{value:Oi(e.value,{idGenerator:t})}}},Oi=(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=P(a)?Oi(a,{idGenerator:t}):Di(a,{idGenerator:t});i.push(e),e!==a&&(r=!0)}}return!n&&!r?e:{...e,...n&&{id:t()},rules:i}},ki=(e,{idGenerator:t=Q}={})=>P(e)?Oi(e,{idGenerator:t}):Di(e,{idGenerator:t}),Ai=(e,t)=>{let n=e.query??e.storeQuery??e.defaultQuery??e.fallbackQuery;return n.id?n:Oi(n,t)},ji=(e,{idGenerator:t=Q}={})=>structuredClone({...e,id:t()}),Mi=(e,{idGenerator:t=Q}={})=>{if(!N(e))return e;if(!P(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:P(e)?Mi(e,{idGenerator:t}):ji(e,{idGenerator:t}))),n},Ni=(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:Gr(t,e);return i&&(Yr(i,e)||Xr(i,n.disabledPaths))?r?`parent-disabled`:`target-disabled`:null},Pi=(e,{maxLevels:t=1/0}={})=>!!e&&e.length>=t,Fi=(e,t,n,r={})=>ri(r.freeze)(e,e=>Ii(e,t,n,r)),Ii=(e,t,n,r={})=>{let{combinators:i=S,combinatorPreceding:a,idGenerator:o=Q,onAbort:s}=r,c=Array.isArray(n)?X(n,e):Wr(n,e);if(!c)return s?.({reason:`parent-not-found`,operation:`add`,pathOrID:n}),e;if(!P(c))return s?.({reason:`parent-not-a-group`,operation:`add`,pathOrID:n}),e;let l=Array.isArray(n)?n:Gr(n,e),u=Ni(e,l,r,{asParent:!0});if(u)return s?.({reason:u,operation:`add`,pathOrID:n}),e;if(P(t)&&Pi(l,r))return s?.({reason:`max-levels-exceeded`,operation:`add`,pathOrID:n}),e;if(I(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(ki(t,{idGenerator:o})),e},Li={field:0,operator:1,valueSource:2,value:4},Ri=e=>e.toSorted((e,t)=>(Li[e[0]]??3)-(Li[t[0]]??3)),zi=(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:Ri(e.map((e,t)=>[e,i[t]])),pathOrID:n,options:r??{}}}return{entries:Ri(Object.entries(e)),pathOrID:t,options:n??{}}},Bi=(e,t,n,r)=>(typeof e==`string`||Array.isArray(e)?r:n)??{},Vi=(e,t,n,r,i)=>{let{entries:a,pathOrID:o,options:s}=zi(t,n,r,i);for(let[t,n]of a)Wi(e,t,n,o,s);return e},Hi=((e,t,n,r,i)=>ri(Bi(t,n,r,i).freeze)(e,e=>{Vi(e,t,n,r,i)})),Ui=((e,t,n,r,i)=>Vi(e,t,n,r,i)),Wi=(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:Gr(r,e);if(!p)return d?.({reason:`target-not-found`,operation:`update`,pathOrID:r}),e;let m=t===`disabled`?{queryDisabled:i.queryDisabled}:i,h=Ni(e,p,m);if(h)return d?.({reason:h,operation:`update`,pathOrID:r}),e;if(t===`combinator`&&!F(e)){let t=X(Z(p),e);if(!t||!P(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 _=P(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(di({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},Gi=(e,t,n={})=>ri(n.freeze)(e,e=>Ki(e,t,n)),Ki=(e,t,n={})=>{let{onAbort:r}=n,i=Array.isArray(t)?t:Gr(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=Ni(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(!F(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},qi=(e,t,n={})=>ri(n.freeze)(e,e=>Ji(e,t,n)),Ji=(e,t,n={})=>{let{onAbort:r}=n,i=Array.isArray(t)?t:Gr(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=Ni(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(!P(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(!F(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},Yi=(e,t,n)=>{if(Array.isArray(n))return n;let r=I(e);if(n===`up`){if(Kr(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 P(i)?[...n,i.rules.length]:[...Z(t),Math.max(0,t.at(-1)-(r?3:1))]}}if(n===`down`){if(Kr([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 P(i)?[...n,0]:[...Z(t),t.at(-1)+(r?3:2)]}}return t},Xi=(e,t,n,r={})=>ri(r.freeze)(e,e=>Zi(e,t,n,r)),Zi=(e,n,r,i={})=>{let{clone:a=!1,combinators:o=S,idGenerator:s=Q,onAbort:c}=i,l=Array.isArray(n)?n:Gr(n,e);if(!l)return c?.({reason:`target-not-found`,operation:`move`,pathOrID:n}),e;let u=X(l,e);if(!u)return c?.({reason:`target-not-found`,operation:`move`,pathOrID:n}),e;let d=Yi(e,l,r);if(l.length===0)return c?.({reason:`root-not-allowed`,operation:`move`,pathOrID:n}),e;let f=Ni(e,l,i);if(f)return c?.({reason:f,operation:`move`,pathOrID:n}),e;if(Kr(l,d))return c?.({reason:`same-location`,operation:`move`,pathOrID:n}),e;if(!X(Z(d),e)||!a&&qr(l,d))return c?.({reason:`destination-not-found`,operation:`move`,pathOrID:r}),e;let p=a?Mi((0,t.isDraft)(u)?(0,t.current)(u):u,{idGenerator:s}):u,m=I(e),h=X(Z(l),e),g=l.at(-1),_=m&&g>0?h.rules[g-1]:null,v=m&&g<h.rules.length-1?h.rules[g+1]:null;if(!a){let e=m?Math.max(0,g-1):g,t=m?2:1;h.rules.splice(e,t)}let y=[...d];m&&y.at(-1)%2==1&&(y[y.length-1]+=1);let b=Jr(l,d);!a&&l.length===b.length+1&&y[b.length]>l[b.length]&&(y[b.length]-=m?2:1);let x=Z(y),C=X(x,e),w=y.at(-1),T=m&&w>0?w-1:w,E=(...e)=>C.rules.splice(T,0,...e);return C.rules.length===0||!m?E(p):w===0?g===0&&v?E(p,v):E(p,C.rules[1]??_??H(o)):E(_||(C.rules[T-2]??v??H(o)),p),e},Qi=(e,t,n,r={})=>ri(r.freeze)(e,e=>$i(e,t,n,r)),$i=(e,t,n,r={})=>{let{combinators:i=S,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(!P(u))return l?.({reason:`parent-not-a-group`,operation:`insert`,pathOrID:n}),e;let d=Z(n),f=Ni(e,d,r,{asParent:!0});if(f)return l?.({reason:f,operation:`insert`,pathOrID:n}),e;if(P(t)&&Pi(d,r))return l?.({reason:`max-levels-exceeded`,operation:`insert`,pathOrID:n}),e;let p=Mi(t,{idGenerator:s}),m=I(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},ea=(e,t,n,r={})=>ri(r.freeze)(e,e=>ta(e,t,n,r)),ta=(e,n,r,i={})=>{let{clone:a=!1,combinators:o=S,idGenerator:s=Q,onAbort:c}=i,l=Array.isArray(n)?n:Gr(n,e),u=Array.isArray(r)?r:Gr(r,e);if(!l)return c?.({reason:`target-not-found`,operation:`group`,pathOrID:n}),e;if(!u)return c?.({reason:`target-not-found`,operation:`group`,pathOrID:r}),e;let d=Yi(e,l,u);if(l.length===0)return c?.({reason:`root-not-allowed`,operation:`group`,pathOrID:n}),e;let f=Ni(e,l,i);if(f)return c?.({reason:f,operation:`group`,pathOrID:n}),e;if(Kr(l,d))return c?.({reason:`same-location`,operation:`group`,pathOrID:n}),e;if(!X(Z(d),e)||!a&&qr(l,d))return c?.({reason:`destination-not-found`,operation:`group`,pathOrID:r}),e;let p=X(l,e),m=X(u,e);if(!p)return c?.({reason:`target-not-found`,operation:`group`,pathOrID:n}),e;if(!m)return c?.({reason:`target-not-found`,operation:`group`,pathOrID:r}),e;let h=a?Mi((0,t.isDraft)(p)?(0,t.current)(p):p,{idGenerator:s}):p,g=I(e),_=X(Z(l),e),v=l.at(-1);if(!a){let e=g?Math.max(0,v-1):v,t=g?2:1;_.rules.splice(e,t)}let y=[...d],b=Jr(l,d);!a&&l.length===b.length+1&&d[b.length]>l[b.length]&&(y[b.length]-=g?2:1);let x=Z(y),C=X(x,e),w=y.at(-1);return C.rules.splice(w,1,ki(g?{rules:[m,H(o),h]}:{combinator:H(o),rules:[m,h]},{idGenerator:s})),e},na=(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)=>!!Ni(e,t,T,{asParent:n});return{addRule:(e,t,i,a)=>{if(E(e,i,!0)){w({type:k.parentPathDisabled,rule:t,parentPath:i,query:e});return}let o=!h||h(t,i,e,a);if(!o){w({type:k.onAddRuleFalse,rule:t,parentPath:i,query:e});return}let s=o===!0?t:o,c=Fi(e,s,i,{combinators:n,combinatorPreceding:s.combinatorPreceding,idGenerator:r,freeze:m});return w({type:k.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:k.parentPathDisabled,ruleGroup:t,parentPath:a,query:e});return}let s=!g||g(t,a,e,o);if(!s){w({type:k.onAddGroupFalse,ruleGroup:t,parentPath:a,query:e});return}let c=s===!0?t:s,l=Fi(e,c,a,{combinators:n,combinatorPreceding:c.combinatorPreceding??void 0,idGenerator:r,freeze:m});return w({type:k.add,query:e,newQuery:l,newGroup:c,parentPath:a}),l},propChange:(e,t,n,r)=>{if(Ni(e,r,t===`disabled`?{queryDisabled:a}:T)){w({type:k.pathDisabled,path:r,prop:t,value:n,query:e});return}let i=Hi(e,t,n,r,{resetOnFieldChange:c,resetOnOperatorChange:l,getRuleDefaultOperator:u,getValueSources:d,getRuleDefaultValue:f,getMatchModes:p,freeze:m});return w({type:k.update,query:e,newQuery:i,prop:t,value:n,path:r}),i},removeRuleOrGroup:(e,t,n)=>{if(E(e,t)){w({type:k.pathDisabled,path:t,query:e});return}let r=X(t,e);
73
65
  /* v8 ignore next -- @preserve */