{"version":3,"sources":["../src/context/QueryBuilderContext.ts","../src/components/ActionElement.tsx","../src/components/DragHandle.tsx","../src/defaults.ts","../src/components/InlineCombinator.tsx","../src/utils/clsx.ts","../src/components/NotToggle.tsx","../src/messages.ts","../src/redux/QueryBuilderStateContext.ts","../src/redux/_internal.ts","../src/redux/queriesSlice.ts","../src/redux/warningsSlice.ts","../src/hooks/useDeprecatedProps.ts","../src/hooks/useReactDndWarning.ts","../../../utils/react-compiler/react-compiler-runtime.ts","../src/hooks/useStopEventPropagation.ts","../src/utils/arrayUtils.ts","../src/utils/misc.ts","../src/utils/isRuleGroup.ts","../src/utils/convertQuery.ts","../src/utils/defaultValidator.ts","../src/utils/optGroupUtils.ts","../src/utils/filterFieldsByComparator.ts","../src/utils/parseNumber.ts","../src/utils/getParseNumberMethod.ts","../src/utils/formatQuery/utils.ts","../src/utils/formatQuery/defaultRuleProcessorCEL.ts","../src/utils/formatQuery/defaultRuleProcessorMongoDBQuery.ts","../src/utils/formatQuery/defaultRuleProcessorMongoDB.ts","../src/utils/formatQuery/defaultRuleProcessorSpEL.ts","../src/utils/formatQuery/defaultValueProcessorByRule.ts","../src/utils/formatQuery/defaultRuleProcessorElasticSearch.ts","../src/utils/formatQuery/defaultRuleProcessorJSONata.ts","../src/utils/formatQuery/defaultRuleProcessorJsonLogic.ts","../src/utils/formatQuery/defaultValueProcessorNL.ts","../src/utils/formatQuery/defaultRuleProcessorNL.ts","../src/utils/formatQuery/defaultRuleProcessorSQL.ts","../src/utils/formatQuery/defaultRuleProcessorParameterized.ts","../src/utils/isRuleOrGroupValid.ts","../src/utils/formatQuery/formatQuery.ts","../src/utils/formatQuery/index.ts","../src/utils/pathUtils.ts","../src/utils/generateAccessibleDescription.ts","../src/utils/generateID.ts","../src/hooks/usePreferProp.ts","../src/hooks/useMergedContext.ts","../src/components/Rule.tsx","../src/utils/getCompatContextProvider.tsx","../src/utils/getValidationClassNames.ts","../src/utils/getValueSourcesUtil.ts","../src/utils/mergeClassnames.ts","../src/utils/mergeTranslations.ts","../src/utils/objectUtils.ts","../src/utils/prepareQueryObjects.ts","../src/utils/queryTools.ts","../src/utils/regenerateIDs.ts","../src/utils/toOptions.tsx","../src/utils/transformQuery.ts","../src/components/RuleGroup.tsx","../src/components/ShiftActions.tsx","../src/components/ValueEditor.tsx","../src/components/ValueSelector.tsx","../src/hooks/useSelectElementChangeHandler.ts","../src/defaultControlElements.ts","../src/hooks/usePrevious.ts","../src/hooks/useControlledOrUncontrolled.ts","../src/redux/selectors.ts","../src/redux/hooks.ts","../src/components/QueryBuilder.useQueryBuilderSchema.ts","../src/components/QueryBuilder.useQueryBuilderSetup.ts","../src/components/QueryBuilder.useQueryBuilder.ts","../src/components/QueryBuilderInternal.tsx"],"sourcesContent":["import{createContext}from\"react\";export const QueryBuilderContext=/*#__PURE__*/createContext({});","import{jsx}from\"react/jsx-runtime\";export const ActionElement=props=>/* @__PURE__ */jsx(\"button\",{type:\"button\",\"data-testid\":props.testID,disabled:props.disabled&&!props.disabledTranslation,className:props.className,title:props.disabledTranslation&&props.disabled?props.disabledTranslation.title:props.title,onClick:e=>props.handleOnClick(e),children:props.disabledTranslation&&props.disabled?props.disabledTranslation.label:props.label});","import{jsx}from\"react/jsx-runtime\";import{forwardRef}from\"react\";export const DragHandle=/*#__PURE__*/forwardRef((props,dragRef)=>/* @__PURE__ */jsx(\"span\",{\"data-testid\":props.testID,ref:dragRef,className:props.className,title:props.title,children:props.label}));","export const defaultPlaceholderName=\"~\";export const defaultPlaceholderLabel=\"------\";export const defaultPlaceholderFieldName=defaultPlaceholderName;export const defaultPlaceholderFieldLabel=defaultPlaceholderLabel;export const defaultPlaceholderFieldGroupLabel=defaultPlaceholderLabel;export const defaultPlaceholderOperatorName=defaultPlaceholderName;export const defaultPlaceholderOperatorLabel=defaultPlaceholderLabel;export const defaultPlaceholderOperatorGroupLabel=defaultPlaceholderLabel;export const defaultPlaceholderValueName=defaultPlaceholderName;export const defaultPlaceholderValueLabel=defaultPlaceholderLabel;export const defaultPlaceholderValueGroupLabel=defaultPlaceholderLabel;export const defaultJoinChar=\",\";export const defaultTranslations={fields:{title:\"Fields\",placeholderName:defaultPlaceholderFieldName,placeholderLabel:defaultPlaceholderFieldLabel,placeholderGroupLabel:defaultPlaceholderFieldGroupLabel},operators:{title:\"Operators\",placeholderName:defaultPlaceholderOperatorName,placeholderLabel:defaultPlaceholderOperatorLabel,placeholderGroupLabel:defaultPlaceholderOperatorGroupLabel},values:{title:\"Values\",placeholderName:defaultPlaceholderValueName,placeholderLabel:defaultPlaceholderValueLabel,placeholderGroupLabel:defaultPlaceholderValueGroupLabel},value:{title:\"Value\"},removeRule:{label:\"\\u2A2F\",title:\"Remove rule\"},removeGroup:{label:\"\\u2A2F\",title:\"Remove group\"},addRule:{label:\"+ Rule\",title:\"Add rule\"},addGroup:{label:\"+ Group\",title:\"Add group\"},combinators:{title:\"Combinators\"},notToggle:{label:\"Not\",title:\"Invert this group\"},cloneRule:{label:\"\\u29C9\",title:\"Clone rule\"},cloneRuleGroup:{label:\"\\u29C9\",title:\"Clone group\"},shiftActionUp:{label:\"\\u02C4\",title:\"Shift up\"},shiftActionDown:{label:\"\\u02C5\",title:\"Shift down\"},dragHandle:{label:\"\\u205E\\u205E\",title:\"Drag handle\"},lockRule:{label:\"\\u{1F513}\",title:\"Lock rule\"},lockGroup:{label:\"\\u{1F513}\",title:\"Lock group\"},lockRuleDisabled:{label:\"\\u{1F512}\",title:\"Unlock rule\"},lockGroupDisabled:{label:\"\\u{1F512}\",title:\"Unlock group\"},valueSourceSelector:{title:\"Value source\"}};export const defaultOperators=[{name:\"=\",value:\"=\",label:\"=\"},{name:\"!=\",value:\"!=\",label:\"!=\"},{name:\"<\",value:\"<\",label:\"<\"},{name:\">\",value:\">\",label:\">\"},{name:\"<=\",value:\"<=\",label:\"<=\"},{name:\">=\",value:\">=\",label:\">=\"},{name:\"contains\",value:\"contains\",label:\"contains\"},{name:\"beginsWith\",value:\"beginsWith\",label:\"begins with\"},{name:\"endsWith\",value:\"endsWith\",label:\"ends with\"},{name:\"doesNotContain\",value:\"doesNotContain\",label:\"does not contain\"},{name:\"doesNotBeginWith\",value:\"doesNotBeginWith\",label:\"does not begin with\"},{name:\"doesNotEndWith\",value:\"doesNotEndWith\",label:\"does not end with\"},{name:\"null\",value:\"null\",label:\"is null\"},{name:\"notNull\",value:\"notNull\",label:\"is not null\"},{name:\"in\",value:\"in\",label:\"in\"},{name:\"notIn\",value:\"notIn\",label:\"not in\"},{name:\"between\",value:\"between\",label:\"between\"},{name:\"notBetween\",value:\"notBetween\",label:\"not between\"}];export const defaultOperatorNegationMap={\"=\":\"!=\",\"!=\":\"=\",\"<\":\">=\",\"<=\":\">\",\">\":\"<=\",\">=\":\"<\",beginsWith:\"doesNotBeginWith\",doesNotBeginWith:\"beginsWith\",endsWith:\"doesNotEndWith\",doesNotEndWith:\"endsWith\",contains:\"doesNotContain\",doesNotContain:\"contains\",between:\"notBetween\",notBetween:\"between\",in:\"notIn\",notIn:\"in\",notNull:\"null\",null:\"notNull\"};export const defaultCombinators=[{name:\"and\",value:\"and\",label:\"AND\"},{name:\"or\",value:\"or\",label:\"OR\"}];export const defaultCombinatorsExtended=[...defaultCombinators,{name:\"xor\",value:\"xor\",label:\"XOR\"}];export const standardClassnames={queryBuilder:\"queryBuilder\",ruleGroup:\"ruleGroup\",header:\"ruleGroup-header\",body:\"ruleGroup-body\",combinators:\"ruleGroup-combinators\",addRule:\"ruleGroup-addRule\",addGroup:\"ruleGroup-addGroup\",cloneRule:\"rule-cloneRule\",cloneGroup:\"ruleGroup-cloneGroup\",removeGroup:\"ruleGroup-remove\",notToggle:\"ruleGroup-notToggle\",rule:\"rule\",fields:\"rule-fields\",operators:\"rule-operators\",value:\"rule-value\",removeRule:\"rule-remove\",betweenRules:\"betweenRules\",valid:\"queryBuilder-valid\",invalid:\"queryBuilder-invalid\",shiftActions:\"shiftActions\",dndDragging:\"dndDragging\",dndOver:\"dndOver\",dndCopy:\"dndCopy\",dndGroup:\"dndGroup\",dragHandle:\"queryBuilder-dragHandle\",disabled:\"queryBuilder-disabled\",lockRule:\"rule-lock\",lockGroup:\"ruleGroup-lock\",valueSource:\"rule-valueSource\",valueListItem:\"rule-value-list-item\",branches:\"queryBuilder-branches\"};export const defaultControlClassnames={queryBuilder:\"\",ruleGroup:\"\",header:\"\",body:\"\",combinators:\"\",addRule:\"\",addGroup:\"\",cloneRule:\"\",cloneGroup:\"\",removeGroup:\"\",notToggle:\"\",rule:\"\",fields:\"\",operators:\"\",value:\"\",removeRule:\"\",shiftActions:\"\",dragHandle:\"\",lockRule:\"\",lockGroup:\"\",valueSource:\"\",actionElement:\"\",valueSelector:\"\",betweenRules:\"\",valid:\"\",invalid:\"\",dndDragging:\"\",dndOver:\"\",dndGroup:\"\",dndCopy:\"\",disabled:\"\",valueListItem:\"\",branches:\"\"};export const groupInvalidReasons={empty:\"empty\",invalidCombinator:\"invalid combinator\",invalidIndependentCombinators:\"invalid independent combinators\"};export const TestID={rule:\"rule\",ruleGroup:\"rule-group\",inlineCombinator:\"inline-combinator\",addGroup:\"add-group\",removeGroup:\"remove-group\",cloneGroup:\"clone-group\",cloneRule:\"clone-rule\",addRule:\"add-rule\",removeRule:\"remove-rule\",combinators:\"combinators\",fields:\"fields\",operators:\"operators\",valueEditor:\"value-editor\",notToggle:\"not-toggle\",shiftActions:\"shift-actions\",dragHandle:\"drag-handle\",lockRule:\"lock-rule\",lockGroup:\"lock-group\",valueSourceSelector:\"value-source-selector\"};export const LogType={parentPathDisabled:\"action aborted: parent path disabled\",pathDisabled:\"action aborted: path is disabled\",queryUpdate:\"query updated\",onAddRuleFalse:\"onAddRule callback returned false\",onAddGroupFalse:\"onAddGroup callback returned false\",onGroupRuleFalse:\"onGroupRule callback returned false\",onGroupGroupFalse:\"onGroupGroup callback returned false\",onMoveRuleFalse:\"onMoveRule callback returned false\",onMoveGroupFalse:\"onMoveGroup callback returned false\",onRemoveFalse:\"onRemove callback returned false\",add:\"rule or group added\",remove:\"rule or group removed\",update:\"rule or group updated\",move:\"rule or group moved\",group:\"rule or group grouped with another\"};export const rootPath=[];","import{jsx}from\"react/jsx-runtime\";import{standardClassnames,TestID}from\"../defaults\";import{clsx}from\"../utils/clsx\";export const InlineCombinator=allProps=>{const{component:CombinatorSelectorComponent,...props}=allProps;const className=clsx(props.schema.suppressStandardClassnames||standardClassnames.betweenRules,props.schema.classNames.betweenRules);return/* @__PURE__ */jsx(\"div\",{className,\"data-testid\":TestID.inlineCombinator,children:/* @__PURE__ */jsx(CombinatorSelectorComponent,{...props,testID:TestID.combinators})});};","function toVal(mix){let k;let y;let str=\"\";if(typeof mix===\"string\"||typeof mix===\"number\"){str+=mix;}else if(typeof mix===\"object\"){if(Array.isArray(mix)){const len=mix.length;for(k=0;k<len;k++){if(mix[k]&&(y=toVal(mix[k]))){str&&(str+=\" \");str+=y;}}}else{for(y in mix){if(mix[y]){str&&(str+=\" \");str+=y;}}}}return str;}export function clsx(){let i=0;let tmp;let x;let str=\"\";const len=arguments.length;for(;i<len;i++){if((tmp=i<0||arguments.length<=i?undefined:arguments[i])&&(x=toVal(tmp))){str&&(str+=\" \");str+=x;}}return str;}export default clsx;","import{jsx,jsxs}from\"react/jsx-runtime\";export const NotToggle=props=>/* @__PURE__ */jsxs(\"label\",{\"data-testid\":props.testID,className:props.className,title:props.title,children:[/* @__PURE__ */jsx(\"input\",{type:\"checkbox\",onChange:e=>props.handleOnChange(e.target.checked),checked:!!props.checked,disabled:props.disabled}),props.label]});","export const messages={errorInvalidIndependentCombinatorsProp:\"QueryBuilder was rendered with a truthy independentCombinators prop. This prop is deprecated and unnecessary. Furthermore, the initial query/defaultQuery prop was of type RuleGroupType instead of type RuleGroupIC. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators\",errorUnnecessaryIndependentCombinatorsProp:\"QueryBuilder was rendered with the deprecated and unnecessary independentCombinators prop. To use independent combinators, make sure the query/defaultQuery prop is of type RuleGroupIC when the component mounts. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators\",errorDeprecatedRuleGroupProps:\"A custom RuleGroup component has rendered a standard RuleGroup component with deprecated props. The combinator, not, and rules props should not be used. Instead, the full group object should be passed as the ruleGroup prop.\",errorDeprecatedRuleProps:\"A custom RuleGroup component has rendered a standard Rule component with deprecated props. The field, operator, value, and valueSource props should not be used. Instead, the full rule object should be passed as the rule prop.\",errorBothQueryDefaultQuery:\"QueryBuilder was rendered with both query and defaultQuery props. QueryBuilder must be either controlled or uncontrolled (specify either the query prop, or the defaultQuery prop, but not both). Decide between using a controlled or uncontrolled query builder and remove one of these props. More info: https://reactjs.org/link/controlled-components\",errorUncontrolledToControlled:\"QueryBuilder is changing from an uncontrolled component to be controlled. This is likely caused by the query changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components\",errorControlledToUncontrolled:\"QueryBuilder is changing from a controlled component to be uncontrolled. This is likely caused by the query changing from defined to undefined, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components\",errorEnabledDndWithoutReactDnD:\"QueryBuilder was rendered with the enableDragAndDrop prop set to true, but either react-dnd was not detected or one of react-dnd-html5-backend or react-dnd-touch-backend was not detected. To enable drag-and-drop functionality, install react-dnd and one of the backend packages and wrap QueryBuilder in QueryBuilderDnD from @react-querybuilder/dnd.\"};","import*as React from\"react\";export const QueryBuilderStateContext=/*#__PURE__*/React.createContext(null);","import{createDispatchHook,createStoreHook}from\"react-redux\";import{queriesSlice}from\"./queriesSlice\";import{QueryBuilderStateContext}from\"./QueryBuilderStateContext\";import{warningsSlice}from\"./warningsSlice\";export const _RQB_INTERNAL_dispatchThunk=_ref=>{let{payload,onQueryChange}=_ref;return dispatch=>{dispatch(queriesSlice.actions.setQueryState(payload));if(typeof onQueryChange===\"function\"){onQueryChange(payload.query/* ??? */);}};};export const useRQB_INTERNAL_QueryBuilderDispatch=createDispatchHook(QueryBuilderStateContext);export const useRQB_INTERNAL_QueryBuilderStore=createStoreHook(QueryBuilderStateContext);const{rqbWarn:_SYNC_rqbWarn}=warningsSlice.actions;export const rqbWarn=msg=>dispatch=>{setTimeout(()=>dispatch(_SYNC_rqbWarn(msg)));};const preloadedState={queries:queriesSlice.getInitialState(),warnings:warningsSlice.getInitialState()};export const storeCommon={reducer:{queries:queriesSlice.reducer,warnings:warningsSlice.reducer},preloadedState,middleware:getDefaultMiddleware=>getDefaultMiddleware({// Ignore non-serializable values in setQueryState actions and rule `value`s\n// https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data\nserializableCheck:{ignoredActions:[queriesSlice.actions.setQueryState.type],ignoredPaths:[/^queries\\b.*\\.rules\\.\\d+\\.value$/]}})};","import{createSlice}from\"@reduxjs/toolkit\";export const initialState={};export const queriesSlice=createSlice({name:\"queries\",initialState,reducers:{setQueryState:(state,_ref)=>{let{payload:{qbId,query}}=_ref;state[qbId]=query;}},selectors:{getQuerySelectorById:(state,qbId)=>state[qbId]}});","import{createSlice}from\"@reduxjs/toolkit\";import{messages}from\"../messages\";export const initialState={[messages.errorInvalidIndependentCombinatorsProp]:false,[messages.errorUnnecessaryIndependentCombinatorsProp]:false,[messages.errorDeprecatedRuleGroupProps]:false,[messages.errorDeprecatedRuleProps]:false,[messages.errorBothQueryDefaultQuery]:false,[messages.errorUncontrolledToControlled]:false,[messages.errorControlledToUncontrolled]:false,[messages.errorEnabledDndWithoutReactDnD]:false};export const warningsSlice=createSlice({name:\"warnings\",initialState,reducers:{rqbWarn:(state,_ref)=>{let{payload}=_ref;if(!state[payload]){console.error(payload);state[payload]=true;}}}});","import{messages}from\"../messages\";import{rqbWarn,useRQB_INTERNAL_QueryBuilderDispatch}from\"../redux/_internal\";function useDeprecatedProps(type,logWarning,otherParams){const dispatch=useRQB_INTERNAL_QueryBuilderDispatch();if(process.env.NODE_ENV!==\"production\"&&logWarning){if(type===\"independentCombinators\"){if(otherParams===\"invalid\"){dispatch(rqbWarn(messages.errorInvalidIndependentCombinatorsProp));}if(otherParams===\"unnecessary\"){dispatch(rqbWarn(messages.errorUnnecessaryIndependentCombinatorsProp));}}if(type===\"rule\"){dispatch(rqbWarn(messages.errorDeprecatedRuleProps));}if(type===\"ruleGroup\"){dispatch(rqbWarn(messages.errorDeprecatedRuleGroupProps));}}}export{useDeprecatedProps};","import{messages}from\"../messages\";let didWarnEnabledDndWithoutReactDnD=false;export const useReactDndWarning=(enableDragAndDrop,dndRefs)=>{if(process.env.NODE_ENV!==\"production\"&&!didWarnEnabledDndWithoutReactDnD&&enableDragAndDrop&&!dndRefs){console.error(messages.errorEnabledDndWithoutReactDnD);didWarnEnabledDndWithoutReactDnD=true;}};","import*as React from\"react\";const $empty=Symbol.for(\"react.memo_cache_sentinel\");export function c(size){return React.useMemo(()=>{const $=Array.from({length:size});for(let ii=0;ii<size;ii++){$[ii]=$empty;}$[$empty]=true;return $;},// eslint-disable-next-line react-hooks/exhaustive-deps\n[]);}","import{c as _c}from\"react-compiler-runtime\";import{useCallback}from\"react\";export const useStopEventPropagation=method=>{const $=_c(2);let t0;if($[0]!==method){t0=(event,context)=>{event?.preventDefault();event?.stopPropagation();method(event,context);};$[0]=method;$[1]=t0;}else{t0=$[1];}return t0;};","import{defaultJoinChar}from\"../defaults\";export const splitBy=function(str){let splitChar=arguments.length>1&&arguments[1]!==undefined?arguments[1]:defaultJoinChar;return typeof str===\"string\"?str.split(`\\\\${splitChar}`).map(c=>c.split(splitChar)).reduce((prev,curr,idx)=>{if(idx===0){return curr;}return[...prev.slice(0,-1),`${prev.at(-1)}${splitChar}${curr[0]}`,...curr.slice(1)];},[]):[];};export const joinWith=function(strArr){let joinChar=arguments.length>1&&arguments[1]!==undefined?arguments[1]:defaultJoinChar;return strArr.map(str=>`${str??\"\"}`.replaceAll(joinChar[0],`\\\\${joinChar[0]}`)).join(joinChar);};export const trimIfString=val=>typeof val===\"string\"?val.trim():val;export const toArray=function(v){let{retainEmptyStrings}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};return Array.isArray(v)?v.map(v2=>trimIfString(v2)):typeof v===\"string\"?splitBy(v,defaultJoinChar).filter(retainEmptyStrings?()=>true:s=>!/^\\s*$/.test(s)).map(s=>s.trim()):typeof v===\"number\"?[v]:[];};export const nullFreeArray=arr=>arr.every(el=>el===false||(el??false)!==false);","import{numericRegex as numericQuantityRegex}from\"numeric-quantity\";export const numericRegex=new RegExp(numericQuantityRegex.source.replace(/^\\^/,String.raw`^\\s*`).replace(/\\$$/,String.raw`\\s*$`));export const isPojo=obj=>obj===null||typeof obj!==\"object\"?false:Object.getPrototypeOf(obj)===Object.prototype;export const nullOrUndefinedOrEmpty=value=>value===null||value===void 0||value===\"\";","import{isPojo}from\"./misc\";export const isRuleGroup=rg=>isPojo(rg)&&Array.isArray(rg.rules);export const isRuleGroupType=rg=>isRuleGroup(rg)&&typeof rg.combinator===\"string\";export const isRuleGroupTypeIC=rg=>isRuleGroup(rg)&&rg.combinator===void 0;","import{produce}from\"immer\";import{isRuleGroup,isRuleGroupType,isRuleGroupTypeIC}from\"./isRuleGroup\";const combinatorLevels=[\"or\",\"xor\",\"and\"];const isSameString=(a,b)=>typeof a===\"string\"&&a.toLowerCase()===b;const generateRuleGroupICWithConsistentCombinators=function(rg){let baseCombinatorLevel=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;const baseCombinator=combinatorLevels[baseCombinatorLevel];if(!rg.rules.includes(baseCombinator)){return baseCombinatorLevel<combinatorLevels.length-2?generateRuleGroupICWithConsistentCombinators(rg,baseCombinatorLevel+1):rg;}return produce(rg,draft=>{let cursor=0;while(cursor<draft.rules.length-2){if(isSameString(draft.rules[cursor+1],baseCombinator)){cursor+=2;continue;}const nextBaseCombinatorIndex=draft.rules.findIndex((r,i)=>i>cursor&&typeof r===\"string\"&&r.toLowerCase()===baseCombinator);if(nextBaseCombinatorIndex===-1){draft.rules.splice(cursor,draft.rules.length,generateRuleGroupICWithConsistentCombinators(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n{rules:draft.rules.slice(cursor)},baseCombinatorLevel+1));break;}else{draft.rules.splice(cursor,nextBaseCombinatorIndex-cursor,generateRuleGroupICWithConsistentCombinators(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n{rules:draft.rules.slice(cursor,nextBaseCombinatorIndex)},baseCombinatorLevel+1));}}});};export const convertFromIC=rg=>{if(isRuleGroupType(rg)){return rg;}const processedRG=generateRuleGroupICWithConsistentCombinators(rg);const rulesAsMixedList=processedRG.rules.map(r=>typeof r===\"string\"||!isRuleGroup(r)?r:convertFromIC(r));const combinator=rulesAsMixedList.length<2?\"and\":rulesAsMixedList[1];const rules=rulesAsMixedList.filter(r=>typeof r!==\"string\");return{...processedRG,combinator,rules};};export const convertToIC=rg=>{if(isRuleGroupTypeIC(rg)){return rg;}const{combinator,...queryWithoutCombinator}=rg;const rules=[];const{length}=rg.rules;for(const[idx,r]of rg.rules.entries()){if(isRuleGroup(r)){rules.push(convertToIC(r));}else{rules.push(r);}if(combinator&&idx<length-1){rules.push(combinator);}}return{...queryWithoutCombinator,rules};};function convertQuery(query){return isRuleGroupTypeIC(query)?convertFromIC(query):convertToIC(query);}export{convertQuery};","import{defaultCombinators,groupInvalidReasons}from\"../defaults\";import{isRuleGroup,isRuleGroupType}from\"./isRuleGroup\";export const defaultValidator=query=>{const result={};const validateRule=_rule=>{};const validateGroup=rg=>{const reasons=[];if(rg.rules.length===0){reasons.push(groupInvalidReasons.empty);}else if(!isRuleGroupType(rg)){let invalidICs=false;for(let i=0;i<rg.rules.length&&!invalidICs;i++){if(i%2===0&&typeof rg.rules[i]===\"string\"||i%2===1&&typeof rg.rules[i]!==\"string\"||i%2===1&&typeof rg.rules[i]===\"string\"&&!defaultCombinators.map(c=>c.name).includes(rg.rules[i])){invalidICs=true;}}if(invalidICs){reasons.push(groupInvalidReasons.invalidIndependentCombinators);}}if(isRuleGroupType(rg)&&!defaultCombinators.map(c=>c.name).includes(rg.combinator)&&rg.rules.length>1){reasons.push(groupInvalidReasons.invalidCombinator);}if(rg.id){result[rg.id]=reasons.length>0?{valid:false,reasons}:true;}for(const r of rg.rules){if(typeof r===\"string\"){}else if(isRuleGroup(r)){validateGroup(r);}else{validateRule(r);}}};validateGroup(query);return result;};","import{produce}from\"immer\";import{isPojo}from\"./misc\";const isOptionWithName=opt=>isPojo(opt)&&\"name\"in opt&&typeof opt.name===\"string\";const isOptionWithValue=opt=>isPojo(opt)&&\"value\"in opt&&typeof opt.value===\"string\";export function toFullOption(opt,baseProperties){const recipe=produce(draft=>{const idObj={};let needsUpdating=!!baseProperties;if(isOptionWithName(draft)&&!isOptionWithValue(draft)){idObj.value=draft.name;needsUpdating=true;}else if(!isOptionWithName(draft)&&isOptionWithValue(draft)){idObj.name=draft.value;needsUpdating=true;}if(needsUpdating){return Object.assign({},baseProperties,draft,idObj);}});return recipe(opt);}export function toFullOptionList(optList,baseProperties){if(!Array.isArray(optList)){return[];}const recipe=produce(draft=>{if(isFlexibleOptionGroupArray(draft)){for(const optGroup of draft){for(const[idx,opt]of optGroup.options.entries())optGroup.options[idx]=toFullOption(opt,baseProperties);}}else{for(const[idx,opt]of draft.entries())draft[idx]=toFullOption(opt,baseProperties);}});return recipe(optList);}export function toFullOptionMap(optMap,baseProperties){return Object.fromEntries(Object.entries(optMap).map(_ref=>{let[k,v]=_ref;return[k,toFullOption(v,baseProperties)];}));}export const uniqByName=originalArray=>uniqByIdentifier(originalArray);export const uniqByIdentifier=originalArray=>{const names=/* @__PURE__ */new Set();const newArray=[];for(const el of originalArray){if(!names.has(el.value??el.name)){names.add(el.value??el.name);newArray.push(el);}}return originalArray.length===newArray.length?originalArray:newArray;};export const isOptionGroupArray=arr=>Array.isArray(arr)&&arr.length>0&&isPojo(arr[0])&&\"options\"in arr[0]&&Array.isArray(arr[0].options);export const isFlexibleOptionArray=arr=>{let isFOA=false;if(Array.isArray(arr)){for(const o of arr){if(isOptionWithName(o)||isOptionWithValue(o)){isFOA=true;}else{return false;}}}return isFOA;};export const isFullOptionArray=arr=>{let isFOA=false;if(Array.isArray(arr)){for(const o of arr){if(isOptionWithName(o)&&isOptionWithValue(o)){isFOA=true;}else{return false;}}}return isFOA;};export const isFlexibleOptionGroupArray=function(arr){let{allowEmpty=false}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let isFOGA=false;if(Array.isArray(arr)){for(const og of arr){if(isPojo(og)&&\"options\"in og&&(isFlexibleOptionArray(og.options)||allowEmpty&&Array.isArray(og.options)&&og.options.length===0)){isFOGA=true;}else{return false;}}}return isFOGA;};export const isFullOptionGroupArray=function(arr){let{allowEmpty=false}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let isFOGA=false;if(Array.isArray(arr)){for(const og of arr){if(isPojo(og)&&\"options\"in og&&(isFullOptionArray(og.options)||allowEmpty&&Array.isArray(og.options)&&og.options.length===0)){isFOGA=true;}else{return false;}}}return isFOGA;};export const getOption=(arr,name)=>(isFlexibleOptionGroupArray(arr,{allowEmpty:true})?arr.flatMap(og=>og.options):arr).find(op=>op.value===name||op.name===name);export const getFirstOption=arr=>{if(!Array.isArray(arr)||arr.length===0){return null;}else if(isFlexibleOptionGroupArray(arr,{allowEmpty:true})){for(const og of arr){if(og.options.length>0){return og.options[0].value??og.options[0].name;}}return null;}return arr[0].value??arr[0].name;};export const toFlatOptionArray=arr=>uniqByIdentifier(isOptionGroupArray(arr)?arr.flatMap(og=>og.options):arr);export const uniqOptGroups=originalArray=>{const labels=/* @__PURE__ */new Set();const names=/* @__PURE__ */new Set();const newArray=[];for(const el of originalArray){if(!labels.has(el.label)){labels.add(el.label);const optionsForThisGroup=[];for(const opt of el.options){if(!names.has(opt.value??opt.name)){names.add(opt.value??opt.name);optionsForThisGroup.push(toFullOption(opt));}}newArray.push({...el,options:optionsForThisGroup});}}return newArray;};export const uniqOptList=originalArray=>{if(isFlexibleOptionGroupArray(originalArray)){return uniqOptGroups(originalArray);}return uniqByIdentifier(originalArray.map(o=>toFullOption(o)));};","import{isFlexibleOptionGroupArray,toFullOption}from\"./optGroupUtils\";const filterByComparator=(field,operator,fieldToCompare)=>{const fullField=toFullOption(field);const fullFieldToCompare=toFullOption(fieldToCompare);if(fullField.value===fullFieldToCompare.value){return false;}if(typeof fullField.comparator===\"string\"){return fullField[fullField.comparator]===fullFieldToCompare[fullField.comparator];}return fullField.comparator?.(fullFieldToCompare,operator)??/* istanbul ignore next */false;};export const filterFieldsByComparator=(field,fields,operator)=>{if(!field.comparator){const filterOutSameField=f=>(f.value??/* istanbul ignore next */f.name)!==(field.value??/* istanbul ignore next */field.name);if(isFlexibleOptionGroupArray(fields)){return fields.map(og=>({...og,options:og.options.filter(v=>filterOutSameField(v))}));}return fields.filter(v=>filterOutSameField(v));}if(isFlexibleOptionGroupArray(fields)){return fields.map(og=>({...og,options:og.options.filter(f=>filterByComparator(field,operator,f))})).filter(og=>og.options.length>0);}return fields.filter(f=>filterByComparator(field,operator,f));};","import{numericQuantity}from\"numeric-quantity\";export const parseNumber=function(val){let{parseNumbers}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(!parseNumbers||typeof val===\"bigint\"||typeof val===\"number\"){return val;}if(parseNumbers===\"native\"){return parseFloat(val);}const valAsNum=// TODO: Should these options be configurable?\nnumericQuantity(val,{allowTrailingInvalid:parseNumbers===\"enhanced\",romanNumerals:false,round:false});return isNaN(valAsNum)?val:valAsNum;};","export const getParseNumberMethod=_ref=>{let{parseNumbers,inputType}=_ref;if(typeof parseNumbers===\"string\"){const[method,level]=parseNumbers.split(\"-\");if(level===\"limited\"){return inputType===\"number\"?method:false;}return method;}return parseNumbers?\"strict\":false;};","import{joinWith,splitBy,toArray}from\"../arrayUtils\";import{getParseNumberMethod}from\"../getParseNumberMethod\";import{isRuleGroup}from\"../isRuleGroup\";import{numericRegex}from\"../misc\";import{getOption}from\"../optGroupUtils\";import{parseNumber}from\"../parseNumber\";export const mapSQLOperator=rqbOperator=>{switch(rqbOperator.toLowerCase()){case\"null\":return\"is null\";case\"notnull\":return\"is not null\";case\"notin\":return\"not in\";case\"notbetween\":return\"not between\";case\"contains\":case\"beginswith\":case\"endswith\":return\"like\";case\"doesnotcontain\":case\"doesnotbeginwith\":case\"doesnotendwith\":return\"not like\";default:return rqbOperator;}};export const mongoOperators={\"=\":\"$eq\",\"!=\":\"$ne\",\"<\":\"$lt\",\"<=\":\"$lte\",\">\":\"$gt\",\">=\":\"$gte\",in:\"$in\",notin:\"$nin\",notIn:\"$nin\"// only here for backwards compatibility\n};export const celCombinatorMap={and:\"&&\",or:\"||\"};export const jsonLogicAdditionalOperators={startsWith:(a,b)=>typeof a===\"string\"&&a.startsWith(b),endsWith:(a,b)=>typeof a===\"string\"&&a.endsWith(b)};export const numerifyValues=(rg,options)=>({...rg,// @ts-expect-error TS doesn't keep track of odd/even indexes here\nrules:rg.rules.map(r=>{if(typeof r===\"string\"){return r;}if(isRuleGroup(r)){return numerifyValues(r,options);}const fieldData=getOption(options.fields,r.field);const parseNumbers=getParseNumberMethod({parseNumbers:options.parseNumbers,inputType:fieldData?.inputType});if(Array.isArray(r.value)){return{...r,value:r.value.map(v=>parseNumber(v,{parseNumbers}))};}const valAsArray=toArray(r.value,{retainEmptyStrings:true}).map(v=>parseNumber(v,{parseNumbers}));if(valAsArray.every(v=>typeof v===\"number\")){if(valAsArray.length>1){return{...r,value:valAsArray};}else if(valAsArray.length===1){return{...r,value:valAsArray[0]};}}return r;})});export const isValidValue=value=>typeof value===\"string\"&&value.length>0||typeof value===\"number\"&&!isNaN(value)||typeof value!==\"string\"&&typeof value!==\"number\";export const shouldRenderAsNumber=(value,parseNumbers)=>!!parseNumbers&&(typeof value===\"number\"||typeof value===\"bigint\"||typeof value===\"string\"&&numericRegex.test(value));export const isValueProcessorLegacy=valueProcessor=>valueProcessor.length>=3;export const getQuoteFieldNamesWithArray=function(){let quoteFieldNamesWith=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[\"\",\"\"];return Array.isArray(quoteFieldNamesWith)?quoteFieldNamesWith:typeof quoteFieldNamesWith===\"string\"?[quoteFieldNamesWith,quoteFieldNamesWith]:quoteFieldNamesWith??[\"\",\"\"];};export const getQuotedFieldName=(fieldName,_ref)=>{let{quoteFieldNamesWith,fieldIdentifierSeparator}=_ref;const[qPre,qPost]=getQuoteFieldNamesWithArray(quoteFieldNamesWith);return typeof fieldIdentifierSeparator===\"string\"&&fieldIdentifierSeparator.length>0?joinWith(splitBy(fieldName,fieldIdentifierSeparator).map(part=>`${qPre}${part}${qPost}`),fieldIdentifierSeparator):`${qPre}${fieldName}${qPost}`;};const defaultWordOrder=[\"S\",\"V\",\"O\"];export const normalizeConstituentWordOrder=input=>{const result=[];const letterSet=new Set(defaultWordOrder);for(const char of input.toUpperCase()){if(letterSet.has(char)){result.push(char);letterSet.delete(char);if(letterSet.size===0)break;}}for(const letter of defaultWordOrder){if(letterSet.has(letter)){result.push(letter);}}return result;};export const defaultNLTranslations={// and: 'and',\n// or: 'or',\n// true: 'true',\n// false: 'false',\ngroupPrefix:\"\",// groupPrefix_not: '',\ngroupPrefix_not_xor:\"either zero or more than one of\",groupPrefix_xor:\"exactly one of\",groupSuffix:\"is true\",groupSuffix_not:\"is not true\"// groupSuffix_not_xor: 'is true',\n// groupSuffix_xor: 'is true',\n};const translationMatchFilter=(key,keyToTest,conditions)=>// The translation matches the base key\nkeyToTest.startsWith(key)&&// The translation specifies all conditions\nconditions.every(c=>// This translation specifies _this_ condition\nkeyToTest.includes(`_${c}`)&&// This translation specifies the same _total number_ of conditions\nkeyToTest.match(/_/g)?.length===conditions.length);export const getNLTranslataion=function(key,translations){let conditions=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];return conditions.length===0?translations[key]??defaultNLTranslations[key]??/* istanbul ignore next */\"\":Object.entries(translations).find(_ref2=>{let[keyToTest]=_ref2;return translationMatchFilter(key,keyToTest,conditions);})?.[1]??Object.entries(defaultNLTranslations).find(_ref3=>{let[keyToTest]=_ref3;return translationMatchFilter(key,keyToTest,conditions);})?.[1]??defaultNLTranslations[key]??/* istanbul ignore next */\"\";};","import{toArray,trimIfString}from\"../arrayUtils\";import{nullOrUndefinedOrEmpty}from\"../misc\";import{parseNumber}from\"../parseNumber\";import{shouldRenderAsNumber}from\"./utils\";const shouldNegate=op=>op.startsWith(\"not\")||op.startsWith(\"doesnot\");const escapeDoubleQuotes=(v,escapeQuotes)=>typeof v!==\"string\"||!escapeQuotes?v:v.replaceAll(`\"`,`\\\\\"`);export const defaultRuleProcessorCEL=function(_ref){let{field,operator,value,valueSource}=_ref;let{escapeQuotes,parseNumbers,preserveValueOrder}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";const operatorTL=(operator===\"=\"?\"==\":operator).toLowerCase();const useBareValue=typeof value===\"number\"||typeof value===\"boolean\"||typeof value===\"bigint\"||shouldRenderAsNumber(value,parseNumbers);switch(operatorTL){case\"<\":case\"<=\":case\"==\":case\"!=\":case\">\":case\">=\":return`${field} ${operatorTL} ${valueIsField||useBareValue?trimIfString(value):`\"${escapeDoubleQuotes(value,escapeQuotes)}\"`}`;case\"contains\":case\"doesnotcontain\":{const negate=shouldNegate(operatorTL)?\"!\":\"\";return`${negate}${field}.contains(${valueIsField?trimIfString(value):`\"${escapeDoubleQuotes(value,escapeQuotes)}\"`})`;}case\"beginswith\":case\"doesnotbeginwith\":{const negate=shouldNegate(operatorTL)?\"!\":\"\";return`${negate}${field}.startsWith(${valueIsField?trimIfString(value):`\"${escapeDoubleQuotes(value,escapeQuotes)}\"`})`;}case\"endswith\":case\"doesnotendwith\":{const negate=shouldNegate(operatorTL)?\"!\":\"\";return`${negate}${field}.endsWith(${valueIsField?trimIfString(value):`\"${escapeDoubleQuotes(value,escapeQuotes)}\"`})`;}case\"null\":return`${field} == null`;case\"notnull\":return`${field} != null`;case\"in\":case\"notin\":{const[prefix,suffix]=shouldNegate(operatorTL)?[\"!(\",\")\"]:[\"\",\"\"];const valueAsArray=toArray(value);return`${prefix}${field} in [${valueAsArray.map(val=>valueIsField||shouldRenderAsNumber(val,parseNumbers)?`${trimIfString(val)}`:`\"${escapeDoubleQuotes(val,escapeQuotes)}\"`).join(\", \")}]${suffix}`;}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&!nullOrUndefinedOrEmpty(valueAsArray[0])&&!nullOrUndefinedOrEmpty(valueAsArray[1])){const[first,second]=valueAsArray;const firstNum=shouldRenderAsNumber(first,true)?parseNumber(first,{parseNumbers:true}):NaN;const secondNum=shouldRenderAsNumber(second,true)?parseNumber(second,{parseNumbers:true}):NaN;let firstValue=isNaN(firstNum)?valueIsField?`${first}`:`\"${escapeDoubleQuotes(first,escapeQuotes)}\"`:firstNum;let secondValue=isNaN(secondNum)?valueIsField?`${second}`:`\"${escapeDoubleQuotes(second,escapeQuotes)}\"`:secondNum;if(!preserveValueOrder&&firstValue===firstNum&&secondValue===secondNum&&secondNum<firstNum){const tempNum=secondNum;secondValue=firstNum;firstValue=tempNum;}return operatorTL===\"between\"?`(${field} >= ${firstValue} && ${field} <= ${secondValue})`:`(${field} < ${firstValue} || ${field} > ${secondValue})`;}else{return\"\";}}}return\"\";};","import{toArray}from\"../arrayUtils\";import{parseNumber}from\"../parseNumber\";import{isValidValue,mongoOperators,shouldRenderAsNumber}from\"./utils\";export const defaultRuleProcessorMongoDBQuery=function(_ref){let{field,operator,value,valueSource}=_ref;let{parseNumbers,preserveValueOrder}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";if(operator===\"=\"&&!valueIsField){return{[field]:shouldRenderAsNumber(value,parseNumbers)?parseNumber(value,{parseNumbers:\"strict\"}):value};}const operatorLC=operator.toLowerCase();switch(operatorLC){case\"<\":case\"<=\":case\"=\":case\"!=\":case\">\":case\">=\":{const mongoOperator=mongoOperators[operatorLC];return valueIsField?{$expr:{[mongoOperator]:[`$${field}`,`$${value}`]}}:{[field]:{[mongoOperator]:shouldRenderAsNumber(value,parseNumbers)?parseNumber(value,{parseNumbers:\"strict\"}):value}};}case\"contains\":return valueIsField?{$where:`this.${field}.includes(this.${value})`}:{[field]:{$regex:value}};case\"beginswith\":return valueIsField?{$where:`this.${field}.startsWith(this.${value})`}:{[field]:{$regex:`^${value}`}};case\"endswith\":return valueIsField?{$where:`this.${field}.endsWith(this.${value})`}:{[field]:{$regex:`${value}$`}};case\"doesnotcontain\":return valueIsField?{$where:`!this.${field}.includes(this.${value})`}:{[field]:{$not:{$regex:value}}};case\"doesnotbeginwith\":return valueIsField?{$where:`!this.${field}.startsWith(this.${value})`}:{[field]:{$not:{$regex:`^${value}`}}};case\"doesnotendwith\":return valueIsField?{$where:`!this.${field}.endsWith(this.${value})`}:{[field]:{$not:{$regex:`${value}$`}}};case\"null\":return{[field]:null};case\"notnull\":return{[field]:{$ne:null}};case\"in\":case\"notin\":{const valueAsArray=toArray(value);return valueIsField?{$where:`${operatorLC===\"notin\"?\"!\":\"\"}[${valueAsArray.map(val=>`this.${val}`).join(\",\")}].includes(this.${field})`}:{[field]:{[mongoOperators[operatorLC]]:valueAsArray.map(val=>shouldRenderAsNumber(val,parseNumbers)?parseNumber(val,{parseNumbers:\"strict\"}):val)}};}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&isValidValue(valueAsArray[0])&&isValidValue(valueAsArray[1])){const[first,second]=valueAsArray;const firstNum=shouldRenderAsNumber(first,true)?parseNumber(first,{parseNumbers:\"strict\"}):NaN;const secondNum=shouldRenderAsNumber(second,true)?parseNumber(second,{parseNumbers:\"strict\"}):NaN;let firstValue=valueIsField?first:isNaN(firstNum)?first:firstNum;let secondValue=valueIsField?second:isNaN(secondNum)?second:secondNum;if(!preserveValueOrder&&firstValue===firstNum&&secondValue===secondNum&&secondNum<firstNum){const tempNum=secondNum;secondValue=firstNum;firstValue=tempNum;}if(operatorLC===\"between\"){return valueIsField?{$and:[{$expr:{$gte:[`$${field}`,`$${firstValue}`]}},{$expr:{$lte:[`$${field}`,`$${secondValue}`]}}]}:{[field]:{$gte:firstValue,$lte:secondValue}};}else{return valueIsField?{$or:[{$expr:{$lt:[`$${field}`,`$${firstValue}`]}},{$expr:{$gt:[`$${field}`,`$${secondValue}`]}}]}:{$or:[{[field]:{$lt:firstValue}},{[field]:{$gt:secondValue}}]};}}else{return\"\";}}}return\"\";};","import{defaultRuleProcessorMongoDBQuery}from\"./defaultRuleProcessorMongoDBQuery\";export const defaultRuleProcessorMongoDB=(rule,options)=>{const queryObj=defaultRuleProcessorMongoDBQuery(rule,options);return queryObj?JSON.stringify(queryObj):\"\";};","import{toArray,trimIfString}from\"../arrayUtils\";import{nullOrUndefinedOrEmpty}from\"../misc\";import{parseNumber}from\"../parseNumber\";import{shouldRenderAsNumber}from\"./utils\";const shouldNegate=op=>op.startsWith(\"not\")||op.startsWith(\"doesnot\");const wrapInNegation=(clause,negate)=>negate?`!(${clause})`:`${clause}`;const escapeSingleQuotes=(v,escapeQuotes)=>typeof v!==\"string\"||!escapeQuotes?v:v.replaceAll(`'`,`\\\\'`);export const defaultRuleProcessorSpEL=function(_ref){let{field,operator,value,valueSource}=_ref;let{escapeQuotes,parseNumbers,preserveValueOrder}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";const operatorTL=(operator===\"=\"?\"==\":operator).toLowerCase();const useBareValue=typeof value===\"number\"||typeof value===\"boolean\"||typeof value===\"bigint\"||shouldRenderAsNumber(value,parseNumbers);switch(operatorTL){case\"<\":case\"<=\":case\"==\":case\"!=\":case\">\":case\">=\":return`${field} ${operatorTL} ${valueIsField||useBareValue?trimIfString(value):`'${escapeSingleQuotes(value,escapeQuotes)}'`}`;case\"contains\":case\"doesnotcontain\":return wrapInNegation(`${field} matches ${valueIsField||useBareValue?trimIfString(value):`'${escapeSingleQuotes(value,escapeQuotes)}'`}`,shouldNegate(operatorTL));case\"beginswith\":case\"doesnotbeginwith\":{const valueTL=valueIsField?`'^'.concat(${trimIfString(value)})`:`'${typeof value===\"string\"&&!value.startsWith(\"^\")||useBareValue?\"^\":\"\"}${escapeSingleQuotes(value,escapeQuotes)}'`;return wrapInNegation(`${field} matches ${valueTL}`,shouldNegate(operatorTL));}case\"endswith\":case\"doesnotendwith\":{const valueTL=valueIsField?`${trimIfString(value)}.concat('$')`:`'${escapeSingleQuotes(value,escapeQuotes)}${typeof value===\"string\"&&!value.endsWith(\"$\")||useBareValue?\"$\":\"\"}'`;return wrapInNegation(`${field} matches ${valueTL}`,shouldNegate(operatorTL));}case\"null\":return`${field} == null`;case\"notnull\":return`${field} != null`;case\"in\":case\"notin\":{const negate=shouldNegate(operatorTL)?\"!\":\"\";const valueAsArray=toArray(value);return valueAsArray.length>0?`${negate}(${valueAsArray.map(val=>`${field} == ${valueIsField||shouldRenderAsNumber(val,parseNumbers)?`${trimIfString(val)}`:`'${escapeSingleQuotes(val,escapeQuotes)}'`}`).join(\" or \")})`:\"\";}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&!nullOrUndefinedOrEmpty(valueAsArray[0])&&!nullOrUndefinedOrEmpty(valueAsArray[1])){const[first,second]=valueAsArray;const firstNum=shouldRenderAsNumber(first,true)?parseNumber(first,{parseNumbers:true}):NaN;const secondNum=shouldRenderAsNumber(second,true)?parseNumber(second,{parseNumbers:true}):NaN;let firstValue=isNaN(firstNum)?valueIsField?`${first}`:`'${escapeSingleQuotes(first,escapeQuotes)}'`:firstNum;let secondValue=isNaN(secondNum)?valueIsField?`${second}`:`'${escapeSingleQuotes(second,escapeQuotes)}'`:secondNum;if(!preserveValueOrder&&firstValue===firstNum&&secondValue===secondNum&&secondNum<firstNum){const tempNum=secondNum;secondValue=firstNum;firstValue=tempNum;}return operatorTL===\"between\"?`(${field} >= ${firstValue} and ${field} <= ${secondValue})`:`(${field} < ${firstValue} or ${field} > ${secondValue})`;}else{return\"\";}}}return\"\";};","import{toArray,trimIfString}from\"../arrayUtils\";import{parseNumber}from\"../parseNumber\";import{isValidValue,getQuotedFieldName,shouldRenderAsNumber}from\"./utils\";const escapeStringValueQuotes=(v,quoteChar,escapeQuotes)=>escapeQuotes&&typeof v===\"string\"?v.replaceAll(`${quoteChar}`,`${quoteChar}${quoteChar}`):v;export const defaultValueProcessorByRule=function(_ref){let{operator,value,valueSource}=_ref;let{escapeQuotes,parseNumbers,preserveValueOrder,quoteFieldNamesWith,quoteValuesWith,concatOperator=\"||\",fieldIdentifierSeparator,wrapValueWith=[\"\",\"\"],translations}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";const operatorLowerCase=operator.toLowerCase();const quoteChar=quoteValuesWith||\"'\";const quoteValue=v=>`${wrapValueWith[0]}${quoteChar}${v}${quoteChar}${wrapValueWith[1]}`;const escapeValue=v=>escapeStringValueQuotes(v,quoteChar,escapeQuotes);const wrapAndEscape=v=>quoteValue(escapeValue(v));const wrapFieldName=v=>getQuotedFieldName(v,{quoteFieldNamesWith,fieldIdentifierSeparator});const concat=function(){for(var _len=arguments.length,values=new Array(_len),_key=0;_key<_len;_key++){values[_key]=arguments[_key];}return concatOperator.toUpperCase()===\"CONCAT\"?`CONCAT(${values.join(\", \")})`:values.join(` ${concatOperator} `);};switch(operatorLowerCase){case\"null\":case\"notnull\":{return\"\";}case\"in\":case\"notin\":{const valueAsArray=toArray(value);if(valueAsArray.length>0){return`(${valueAsArray.map(v=>valueIsField?wrapFieldName(v):shouldRenderAsNumber(v,parseNumbers)?`${trimIfString(v)}`:`${wrapAndEscape(v)}`).join(\", \")})`;}return\"\";}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value,{retainEmptyStrings:true});if(valueAsArray.length<2||!isValidValue(valueAsArray[0])||!isValidValue(valueAsArray[1])){return\"\";}const[first,second]=valueAsArray;const firstNum=shouldRenderAsNumber(first,parseNumbers)?parseNumber(first,{parseNumbers:\"strict\"}):NaN;const secondNum=shouldRenderAsNumber(second,parseNumbers)?parseNumber(second,{parseNumbers:\"strict\"}):NaN;const firstValue=isNaN(firstNum)?valueIsField?`${first}`:first:firstNum;const secondValue=isNaN(secondNum)?valueIsField?`${second}`:second:secondNum;const valsOneAndTwoOnly=[firstValue,secondValue];if(!preserveValueOrder&&firstValue===firstNum&&secondValue===secondNum&&secondNum<firstNum){valsOneAndTwoOnly[0]=secondNum;valsOneAndTwoOnly[1]=firstNum;}return(valueIsField?valsOneAndTwoOnly.map(v=>wrapFieldName(v)):valsOneAndTwoOnly.every(v=>shouldRenderAsNumber(v,parseNumbers))?valsOneAndTwoOnly.map(v=>parseNumber(v,{parseNumbers:\"strict\"})):valsOneAndTwoOnly.map(v=>wrapAndEscape(v))).join(` ${translations?.and??\"and\"} `);}case\"contains\":case\"doesnotcontain\":return valueIsField?concat(quoteValue(\"%\"),wrapFieldName(value),quoteValue(\"%\")):quoteValue(`%${escapeValue(value)}%`);case\"beginswith\":case\"doesnotbeginwith\":return valueIsField?concat(wrapFieldName(value),quoteValue(\"%\")):quoteValue(`${escapeValue(value)}%`);case\"endswith\":case\"doesnotendwith\":return valueIsField?concat(quoteValue(\"%\"),wrapFieldName(value)):quoteValue(`%${escapeValue(value)}`);}if(typeof value===\"boolean\"){return value?\"TRUE\":\"FALSE\";}return valueIsField?wrapFieldName(value):shouldRenderAsNumber(value,parseNumbers)?`${trimIfString(value)}`:`${wrapAndEscape(value)}`;};","import{toArray}from\"../arrayUtils\";import{parseNumber}from\"../parseNumber\";import{isValidValue,shouldRenderAsNumber}from\"./utils\";const rangeOperatorMap={\"<\":\"lt\",\"<=\":\"lte\",\">\":\"gt\",\">=\":\"gte\"};const negateIfNotOp=(op,elasticSearchRule)=>op.startsWith(\"not\")||op.startsWith(\"doesnot\")?{bool:{must_not:elasticSearchRule}}:elasticSearchRule;const escapeSQ=s=>s?.replace(/('|\\\\)/g,`\\\\$1`);const textFunctionMap={beginswith:\"startsWith\",doesnotbeginwith:\"startsWith\",doesnotcontain:\"contains\",doesnotendwith:\"endsWith\",endswith:\"endsWith\"};const getTextScript=(f,o,v)=>{const script=`doc['${f}'].value.${textFunctionMap[o]??o}(doc['${v}'].value)`;return o.startsWith(\"d\")?`!${script}`:script;};const valueRenderer=(v,parseNumbers)=>typeof v===\"boolean\"?v:shouldRenderAsNumber(v,parseNumbers)?parseNumber(v,{parseNumbers}):v;export const defaultRuleProcessorElasticSearch=function(_ref){let{field,operator,value,valueSource}=_ref;let{parseNumbers,preserveValueOrder}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const operatorLC=operator.toLowerCase();if(valueSource===\"field\"){if(toArray(value).some(v=>typeof v!==\"string\"))return false;const fieldForScript=escapeSQ(field);switch(operatorLC){case\"=\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":{const operatorForScript=operatorLC===\"=\"?\"==\":operatorLC;const valueForScript=escapeSQ(value);return valueForScript?{bool:{filter:{script:{script:`doc['${fieldForScript}'].value ${operatorForScript} doc['${valueForScript}'].value`}}}}:false;}case\"in\":case\"notin\":{const valueAsArray=toArray(value);if(valueAsArray.length>0){const arr=valueAsArray.map(v=>({bool:{filter:{script:{script:`doc['${fieldForScript}'].value == doc['${v}'].value`}}}}));return{bool:operatorLC===\"in\"?{should:arr}:{must_not:arr}};}return false;}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&valueAsArray[0]&&valueAsArray[1]){const script=`doc['${fieldForScript}'].value >= doc['${valueAsArray[0]}'].value && doc['${fieldForScript}'].value <= doc['${valueAsArray[1]}'].value`;return{bool:{filter:{script:{script:operatorLC===\"notbetween\"?`!(${script})`:script}}}};}return false;}case\"contains\":case\"doesnotcontain\":case\"beginswith\":case\"doesnotbeginwith\":case\"endswith\":case\"doesnotendwith\":{const valueForScript=escapeSQ(value);if(!valueForScript)return false;const script=getTextScript(fieldForScript,operatorLC,valueForScript);return{bool:{filter:{script:{script}}}};}}}switch(operatorLC){case\"<\":case\"<=\":case\">\":case\">=\":return{range:{[field]:{[rangeOperatorMap[operatorLC]]:valueRenderer(value,parseNumbers)}}};case\"=\":return{term:{[field]:valueRenderer(value,parseNumbers)}};case\"!=\":return{bool:{must_not:{term:{[field]:valueRenderer(value,parseNumbers)}}}};case\"null\":return{bool:{must_not:{exists:{field}}}};case\"notnull\":return{exists:{field}};case\"in\":case\"notin\":{const valueAsArray=toArray(value).map(v=>valueRenderer(v,parseNumbers));if(valueAsArray.length>0){const arr=valueAsArray.map(v=>({term:{[field]:valueRenderer(v,parseNumbers)}}));return{bool:operatorLC===\"in\"?{should:arr}:{must_not:arr}};}return false;}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&isValidValue(valueAsArray[0])&&isValidValue(valueAsArray[1])){let[first,second]=valueAsArray;if(shouldRenderAsNumber(first,true)&&shouldRenderAsNumber(second,true)){const firstNum=parseNumber(first,{parseNumbers:true});const secondNum=parseNumber(second,{parseNumbers:true});if(!preserveValueOrder&&secondNum<firstNum){const tempNum=secondNum;second=firstNum;first=tempNum;}else{first=firstNum;second=secondNum;}}return negateIfNotOp(operatorLC,{range:{[field]:{gte:first,lte:second}}});}return false;}case\"contains\":case\"doesnotcontain\":return negateIfNotOp(operatorLC,{regexp:{[field]:{value:`.*${value}.*`}}});case\"beginswith\":case\"doesnotbeginwith\":return negateIfNotOp(operatorLC,{regexp:{[field]:{value:`${value}.*`}}});case\"endswith\":case\"doesnotendwith\":return negateIfNotOp(operatorLC,{regexp:{[field]:{value:`.*${value}`}}});}return false;};","import{toArray,trimIfString}from\"../arrayUtils\";import{nullOrUndefinedOrEmpty}from\"../misc\";import{parseNumber}from\"../parseNumber\";import{getQuotedFieldName,shouldRenderAsNumber}from\"./utils\";const shouldNegate=op=>op.startsWith(\"not\")||op.startsWith(\"doesnot\");const quote=(v,escapeQuotes)=>`\"${typeof v!==\"string\"||!escapeQuotes?v:v.replaceAll(`\"`,`\\\\\"`)}\"`;const negate=(clause,negate2)=>negate2?`$not(${clause})`:`${clause}`;const escapeStringRegex=s=>`${s}`.replaceAll(/[$()*+.?[\\\\\\]^{|}]/g,String.raw`\\$&`).replaceAll(\"-\",String.raw`\\x2d`);export const defaultRuleProcessorJSONata=function(_ref){let{field,operator,value,valueSource}=_ref;let{escapeQuotes,parseNumbers=true,preserveValueOrder,quoteFieldNamesWith=[\"\",\"\"],fieldIdentifierSeparator=\"\"}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";const useBareValue=typeof value===\"number\"||typeof value===\"boolean\"||typeof value===\"bigint\"||shouldRenderAsNumber(value,parseNumbers);const qfn=f=>getQuotedFieldName(f,{quoteFieldNamesWith,fieldIdentifierSeparator});const operatorLC=operator.toLowerCase();switch(operatorLC){case\"<\":case\"<=\":case\"=\":case\"!=\":case\">\":case\">=\":return`${qfn(field)} ${operatorLC} ${valueIsField?qfn(trimIfString(value)):useBareValue?trimIfString(value):quote(value,escapeQuotes)}`;case\"contains\":case\"doesnotcontain\":return negate(`$contains(${qfn(field)}, ${valueIsField?qfn(trimIfString(value)):quote(value,escapeQuotes)})`,shouldNegate(operatorLC));case\"beginswith\":case\"doesnotbeginwith\":return negate(valueIsField?`$substring(${qfn(field)}, 0, $length(${qfn(trimIfString(value))})) = ${qfn(trimIfString(value))}`:`$contains(${qfn(field)}, /^${escapeStringRegex(value)}/)`,shouldNegate(operatorLC));case\"endswith\":case\"doesnotendwith\":return negate(valueIsField?`$substring(${qfn(field)}, $length(${qfn(field)}) - $length(${qfn(trimIfString(value))})) = ${qfn(trimIfString(value))}`:`$contains(${qfn(field)}, /${escapeStringRegex(value)}$/)`,shouldNegate(operatorLC));case\"null\":return`${qfn(field)} = null`;case\"notnull\":return`${qfn(field)} != null`;case\"in\":case\"notin\":{const valueAsArray=toArray(value);return negate(`${qfn(field)} in [${valueAsArray.map(val=>valueIsField?`${qfn(trimIfString(val))}`:shouldRenderAsNumber(val,parseNumbers)?`${trimIfString(val)}`:quote(val,escapeQuotes)).join(\", \")}]`,shouldNegate(operatorLC));}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length<2||nullOrUndefinedOrEmpty(valueAsArray[0])||nullOrUndefinedOrEmpty(valueAsArray[1])){return\"\";}const[first,second]=valueAsArray;const firstNum=shouldRenderAsNumber(first,true)?parseNumber(first,{parseNumbers:true}):NaN;const secondNum=shouldRenderAsNumber(second,true)?parseNumber(second,{parseNumbers:true}):NaN;let firstValue=isNaN(firstNum)?valueIsField?`${first}`:first:firstNum;let secondValue=isNaN(secondNum)?valueIsField?`${second}`:second:secondNum;if(!preserveValueOrder&&firstValue===firstNum&&secondValue===secondNum&&secondNum<firstNum){const tempNum=secondNum;secondValue=firstNum;firstValue=tempNum;}const renderAsNumbers=shouldRenderAsNumber(first,parseNumbers)&&shouldRenderAsNumber(second,parseNumbers);const expression=`${qfn(field)} >= ${valueIsField?qfn(first):renderAsNumbers?firstValue:quote(firstValue,escapeQuotes)} and ${qfn(field)} <= ${valueIsField?qfn(second):renderAsNumbers?secondValue:quote(secondValue,escapeQuotes)}`;return operatorLC===\"between\"?`(${expression})`:negate(expression,true);}}return\"\";};","import{toArray}from\"../arrayUtils\";import{parseNumber}from\"../parseNumber\";import{isValidValue,shouldRenderAsNumber}from\"./utils\";const convertOperator=op=>op.replace(/^(=)$/,\"$1=\").replace(/^notnull$/i,\"!=\").replace(/^null$/i,\"==\");const negateIfNotOp=(op,jsonRule)=>op.startsWith(\"not\")||op.startsWith(\"doesnot\")?{\"!\":jsonRule}:jsonRule;export const defaultRuleProcessorJsonLogic=function(_ref){let{field,operator,value,valueSource}=_ref;let{parseNumbers,preserveValueOrder}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const valueIsField=valueSource===\"field\";const fieldObject={var:field};const fieldOrNumberRenderer=v=>valueIsField?{var:`${v}`}:shouldRenderAsNumber(v,parseNumbers)?parseNumber(v,{parseNumbers}):v;const operatorLC=operator.toLowerCase();switch(operatorLC){case\"<\":case\"<=\":case\"=\":case\"!=\":case\">\":case\">=\":return{[convertOperator(operatorLC)]:[fieldObject,fieldOrNumberRenderer(value)]};case\"null\":case\"notnull\":{return{[`${operatorLC===\"notnull\"?\"!\":\"=\"}=`]:[fieldObject,null]};}case\"in\":case\"notin\":{const valueAsArray=toArray(value).map(v=>fieldOrNumberRenderer(v));return negateIfNotOp(operatorLC,{in:[fieldObject,valueAsArray]});}case\"between\":case\"notbetween\":{const valueAsArray=toArray(value);if(valueAsArray.length>=2&&isValidValue(valueAsArray[0])&&isValidValue(valueAsArray[1])){let[first,second]=valueAsArray;if(!valueIsField&&shouldRenderAsNumber(first,true)&&shouldRenderAsNumber(second,true)){const firstNum=parseNumber(first,{parseNumbers:true});const secondNum=parseNumber(second,{parseNumbers:true});if(!preserveValueOrder&&secondNum<firstNum){const tempNum=secondNum;second=firstNum;first=tempNum;}else{first=firstNum;second=secondNum;}}else if(valueIsField){first={var:first};second={var:second};}const jsonRule={\"<=\":[first,fieldObject,second]};return negateIfNotOp(operatorLC,jsonRule);}return false;}case\"contains\":case\"doesnotcontain\":{const jsonRule={in:[fieldOrNumberRenderer(value),fieldObject]};return negateIfNotOp(operatorLC,jsonRule);}case\"beginswith\":case\"doesnotbeginwith\":{const jsonRule={startsWith:[fieldObject,fieldOrNumberRenderer(value)]};return negateIfNotOp(operatorLC,jsonRule);}case\"endswith\":case\"doesnotendwith\":{const jsonRule={endsWith:[fieldObject,fieldOrNumberRenderer(value)]};return negateIfNotOp(operatorLC,jsonRule);}}return false;};","import{toArray,trimIfString}from\"../arrayUtils\";import{getOption}from\"../optGroupUtils\";import{defaultValueProcessorByRule}from\"./defaultValueProcessorByRule\";import{getQuotedFieldName,isValidValue,shouldRenderAsNumber}from\"./utils\";const escapeStringValueQuotes=(v,quoteChar,escapeQuotes)=>escapeQuotes&&typeof v===\"string\"?v.replaceAll(`${quoteChar}`,`${quoteChar}${quoteChar}`):(/* istanbul ignore next */v);export const defaultValueProcessorNL=function(rule){let opts=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const{escapeQuotes,fields,parseNumbers,quoteFieldNamesWith,quoteValuesWith,fieldIdentifierSeparator,translations}=opts;const valueIsField=rule.valueSource===\"field\";const operatorLowerCase=rule.operator.toLowerCase();const quoteChar=quoteValuesWith||/* istanbul ignore next */\"'\";const quoteValue=v=>`${quoteChar}${v}${quoteChar}`;const escapeValue=v=>escapeStringValueQuotes(v,quoteChar,escapeQuotes);const wrapAndEscape=v=>quoteValue(escapeValue(v));const wrapFieldName=v=>getQuotedFieldName(v,{quoteFieldNamesWith,fieldIdentifierSeparator});const t=translations??/* istanbul ignore next */{};const orTL=t.or??\"or\";const trueTL=t.true??\"true\";const falseTL=t.false??\"false\";switch(operatorLowerCase){case\"null\":case\"notnull\":{return\"\";}case\"between\":case\"notbetween\":{if(!valueIsField){return defaultValueProcessorByRule(rule,opts);}const valueAsArray=toArray(rule.value,{retainEmptyStrings:true}).slice(0,2).map(v=>wrapFieldName(getOption(fields??/* istanbul ignore next */[],v)?.label??v));if(valueAsArray.length<2||!isValidValue(valueAsArray[0])||!isValidValue(valueAsArray[1])){return\"\";}return defaultValueProcessorByRule({...rule,value:valueAsArray},opts);}case\"in\":case\"notin\":{const valueAsArray=toArray(rule.value);if(valueAsArray.length===0)return\"\";const valStringArray=valueAsArray.map(v=>valueIsField?wrapFieldName(getOption(fields??/* istanbul ignore next */[],v)?.label??v):shouldRenderAsNumber(v,parseNumbers)?`${trimIfString(v)}`:`${wrapAndEscape(v)}`);return`${valStringArray.slice(0,-1).join(\", \")}${valStringArray.length>2?\",\":\"\"} ${orTL} ${valStringArray.at(-1)}`;}}if(typeof rule.value===\"boolean\"){return rule.value?trueTL:falseTL;}return valueIsField?wrapFieldName(getOption(fields??/* istanbul ignore next */[],rule.value)?.label??rule.value):shouldRenderAsNumber(rule.value,parseNumbers)?`${trimIfString(rule.value)}`:`${wrapAndEscape(rule.value)}`;};","import{getOption,toFullOptionList}from\"../optGroupUtils\";import{defaultValueProcessorNL}from\"./defaultValueProcessorNL\";import{getQuotedFieldName,normalizeConstituentWordOrder}from\"./utils\";export const defaultExportOperatorMap={\"=\":[\"is\",\"is the same as the value in\"],\"!=\":[\"is not\",\"is not the same as the value in\"],\"<\":[\"is less than\",\"is less than the value in\"],\">\":[\"is greater than\",\"is greater than the value in\"],\"<=\":[\"is less than or equal to\",\"is less than or equal to the value in\"],\">=\":[\"is greater than or equal to\",\"is greater than or equal to the value in\"],contains:[\"contains\",\"contains the value in\"],beginswith:[\"starts with\",\"starts with the value in\"],endswith:[\"ends with\",\"ends with the value in\"],doesnotcontain:[\"does not contain\",\"does not contain the value in\"],doesnotbeginwith:[\"does not start with\",\"does not start with the value in\"],doesnotendwith:[\"does not end with\",\"does not end with the value in\"],null:\"is null\",notnull:\"is not null\",in:[\"is one of the values\",\"is the same as a value in\"],notin:[\"is not one of the values\",\"is not the same as any value in\"],between:[\"is between\",\"is between the values in\"],notbetween:[\"is not between\",\"is not between the values in\"]};const defaultGetOperators=()=>[];export const defaultOperatorProcessorNL=function(rule){let opts=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const{valueSource=\"value\"}=rule;const{getOperators=defaultGetOperators,operatorMap:operatorMapParam=defaultExportOperatorMap}=opts;const mapOperatorMap=new Map(Object.entries(defaultExportOperatorMap));for(const[key,value]of Object.entries(operatorMapParam)){mapOperatorMap.set(key.toLowerCase(),value);}const operatorMap=Object.fromEntries(mapOperatorMap);const{value:operator,label}=getOption(toFullOptionList(getOperators(rule.field,{fieldData:opts.fieldData??{name:rule.field,value:rule.field,label:rule.field}})??/* istanbul ignore next */[]),rule.operator)??{name:rule.operator,value:rule.operator,label:rule.operator};const operatorTL=operatorMap[operator]??operatorMap[operator.toLowerCase()]??[label,label];return typeof operatorTL===\"string\"?operatorTL:operatorTL[valueSource===\"field\"?1:0];};export const defaultRuleProcessorNL=(rule,opts)=>{const{fieldData,quoteFieldNamesWith=[\"\",\"\"],fieldIdentifierSeparator=\"\",quoteValuesWith=`'`,operatorProcessor=defaultOperatorProcessorNL,valueProcessor=defaultValueProcessorNL,concatOperator=\"||\",wordOrder=\"SVO\"}=opts??/* istanbul ignore next */{};const value=valueProcessor(rule,{...opts,quoteFieldNamesWith,fieldIdentifierSeparator,quoteValuesWith,concatOperator});const operatorLC=rule.operator.toLowerCase();if((operatorLC===\"in\"||operatorLC===\"notin\"||operatorLC===\"between\"||operatorLC===\"notbetween\")&&!value){return\"\";}const processedField=getQuotedFieldName(fieldData?.label??rule.field,{quoteFieldNamesWith,fieldIdentifierSeparator});const processedOperator=operatorProcessor(rule,opts);const wordOrderMap={S:processedField,V:processedOperator,O:value};return normalizeConstituentWordOrder(wordOrder).map(term=>`${wordOrderMap[term]}`).join(\" \").trim();};","import{defaultValueProcessorByRule}from\"./defaultValueProcessorByRule\";import{mapSQLOperator,getQuotedFieldName}from\"./utils\";export const defaultOperatorProcessorSQL=rule=>mapSQLOperator(rule.operator).toLowerCase();export const defaultRuleProcessorSQL=function(rule){let opts=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const{quoteFieldNamesWith=[\"\",\"\"],fieldIdentifierSeparator=\"\",quoteValuesWith=`'`,operatorProcessor=defaultOperatorProcessorSQL,valueProcessor=defaultValueProcessorByRule,concatOperator=\"||\"}=opts;const value=valueProcessor(rule,{...opts,quoteFieldNamesWith,fieldIdentifierSeparator,quoteValuesWith,concatOperator});const operator=operatorProcessor(rule,opts);const operatorLowerCase=operator.toLowerCase();if((operatorLowerCase===\"in\"||operatorLowerCase===\"not in\"||operatorLowerCase===\"between\"||operatorLowerCase===\"not between\")&&!value){return\"\";}return`${getQuotedFieldName(rule.field,{quoteFieldNamesWith,fieldIdentifierSeparator})} ${operator} ${value}`.trim();};","import{toArray}from\"../arrayUtils\";import{parseNumber}from\"../parseNumber\";import{defaultOperatorProcessorSQL}from\"./defaultRuleProcessorSQL\";import{defaultValueProcessorByRule}from\"./defaultValueProcessorByRule\";import{shouldRenderAsNumber}from\"./utils\";export const defaultRuleProcessorParameterized=(rule,opts,meta)=>{const{fieldData,format,getNextNamedParam,parseNumbers,paramPrefix,paramsKeepPrefix,numberedParams,quoteFieldNamesWith=[\"\",\"\"],concatOperator,operatorProcessor=defaultOperatorProcessorSQL,valueProcessor=defaultValueProcessorByRule}=opts??{};const{processedParams=[]}=meta??{};const parameterized=format===\"parameterized\";const params=[];const paramsNamed={};const finalize=sql=>parameterized?{sql,params}:{sql,params:paramsNamed};const value=valueProcessor(rule,{parseNumbers,quoteFieldNamesWith,concatOperator,fieldData,format});const sqlOperator=operatorProcessor(rule,opts);const sqlOperatorLowerCase=sqlOperator.toLowerCase();const[qPre,qPost]=quoteFieldNamesWith;if((sqlOperatorLowerCase===\"in\"||sqlOperatorLowerCase===\"not in\"||sqlOperatorLowerCase===\"between\"||sqlOperatorLowerCase===\"not between\")&&!value){return finalize(\"\");}else if(sqlOperatorLowerCase===\"is null\"||sqlOperatorLowerCase===\"is not null\"){return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator}`);}else if(rule.valueSource===\"field\"){return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${value}`.trim());}else if(sqlOperatorLowerCase===\"in\"||sqlOperatorLowerCase===\"not in\"){const splitValue=toArray(rule.value);if(parameterized){for(const v of splitValue){params.push(shouldRenderAsNumber(v,parseNumbers)?parseNumber(v,{parseNumbers}):v);}return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} (${splitValue.map((_v,i)=>numberedParams?`${paramPrefix}${processedParams.length+1+splitValue.length-(splitValue.length-i)}`:\"?\").join(\", \")})`);}const inParams=[];for(const v of splitValue){const thisParamName=getNextNamedParam(rule.field);inParams.push(`${paramPrefix}${thisParamName}`);paramsNamed[`${paramsKeepPrefix?paramPrefix:\"\"}${thisParamName}`]=shouldRenderAsNumber(v,parseNumbers)?parseNumber(v,{parseNumbers}):v;}return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} (${inParams.join(\", \")})`);}else if(sqlOperatorLowerCase===\"between\"||sqlOperatorLowerCase===\"not between\"){const valueAsArray=toArray(rule.value,{retainEmptyStrings:true});const[first,second]=valueAsArray.slice(0,2).map(v=>shouldRenderAsNumber(v,parseNumbers)?parseNumber(v,{parseNumbers}):v);if(parameterized){params.push(first,second);return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${numberedParams?`${paramPrefix}${processedParams.length+1}`:\"?\"} and ${numberedParams?`${paramPrefix}${processedParams.length+2}`:\"?\"}`);}const firstParamName=getNextNamedParam(rule.field);const secondParamName=getNextNamedParam(rule.field);paramsNamed[`${paramsKeepPrefix?paramPrefix:\"\"}${firstParamName}`]=first;paramsNamed[`${paramsKeepPrefix?paramPrefix:\"\"}${secondParamName}`]=second;return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${paramPrefix}${firstParamName} and ${paramPrefix}${secondParamName}`);}let paramValue=rule.value;if(typeof rule.value===\"string\"){if(shouldRenderAsNumber(rule.value,parseNumbers)){paramValue=parseNumber(rule.value,{parseNumbers});}else{paramValue=/^'.*'$/g.test(value)?value.replaceAll(/(^'|'$)/g,\"\"):(/* istanbul ignore next */value);}}let paramName=\"\";if(parameterized){params.push(paramValue);}else{paramName=getNextNamedParam(rule.field);paramsNamed[`${paramsKeepPrefix?paramPrefix:\"\"}${paramName}`]=paramValue;}return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${parameterized?numberedParams?`${paramPrefix}${processedParams.length+1}`:\"?\":`${paramPrefix}${paramName}`}`.trim());};","import{isRuleGroup}from\"./isRuleGroup\";import{isPojo}from\"./misc\";export const isValidationResult=vr=>isPojo(vr)&&typeof vr.valid===\"boolean\";export const isRuleOrGroupValid=(rg,validationResult,validator)=>{if(typeof validationResult===\"boolean\"){return validationResult;}if(isValidationResult(validationResult)){return validationResult.valid;}if(typeof validator===\"function\"&&!isRuleGroup(rg)){const vr=validator(rg);if(typeof vr===\"boolean\"){return vr;}if(isValidationResult(vr)){return vr.valid;}}return true;};","import{produce}from\"immer\";import{defaultPlaceholderFieldName,defaultPlaceholderOperatorName}from\"../../defaults\";import{convertFromIC}from\"../convertQuery\";import{getParseNumberMethod}from\"../getParseNumberMethod\";import{isRuleGroup,isRuleGroupType,isRuleGroupTypeIC}from\"../isRuleGroup\";import{isRuleOrGroupValid}from\"../isRuleOrGroupValid\";import{isPojo}from\"../misc\";import{getOption,toFlatOptionArray,toFullOptionList}from\"../optGroupUtils\";import{defaultRuleProcessorCEL}from\"./defaultRuleProcessorCEL\";import{defaultRuleProcessorElasticSearch}from\"./defaultRuleProcessorElasticSearch\";import{defaultRuleProcessorJSONata}from\"./defaultRuleProcessorJSONata\";import{defaultRuleProcessorJsonLogic}from\"./defaultRuleProcessorJsonLogic\";import{defaultRuleProcessorMongoDB}from\"./defaultRuleProcessorMongoDB\";import{defaultRuleProcessorMongoDBQuery}from\"./defaultRuleProcessorMongoDBQuery\";import{defaultOperatorProcessorNL,defaultRuleProcessorNL}from\"./defaultRuleProcessorNL\";import{defaultRuleProcessorParameterized}from\"./defaultRuleProcessorParameterized\";import{defaultRuleProcessorSpEL}from\"./defaultRuleProcessorSpEL\";import{defaultOperatorProcessorSQL,defaultRuleProcessorSQL}from\"./defaultRuleProcessorSQL\";import{defaultValueProcessorByRule}from\"./defaultValueProcessorByRule\";import{defaultValueProcessorNL}from\"./defaultValueProcessorNL\";import{celCombinatorMap,getNLTranslataion,getQuoteFieldNamesWithArray,isValueProcessorLegacy,numerifyValues}from\"./utils\";export const sqlDialectPresets={ansi:{},// This should always be empty\nsqlite:{paramsKeepPrefix:true},oracle:{},mssql:{concatOperator:\"+\",quoteFieldNamesWith:[\"[\",\"]\"],fieldIdentifierSeparator:\".\",paramPrefix:\"@\"},mysql:{concatOperator:\"CONCAT\"},postgresql:{quoteFieldNamesWith:'\"',numberedParams:true,paramPrefix:\"$\"}};const defaultRuleProcessors={cel:defaultRuleProcessorCEL,elasticsearch:defaultRuleProcessorElasticSearch,json_without_ids:defaultRuleProcessorSQL,json:defaultRuleProcessorSQL,jsonata:defaultRuleProcessorJSONata,jsonlogic:defaultRuleProcessorJsonLogic,mongodb_query:defaultRuleProcessorMongoDBQuery,mongodb:defaultRuleProcessorMongoDB,natural_language:defaultRuleProcessorNL,parameterized_named:defaultRuleProcessorParameterized,parameterized:defaultRuleProcessorParameterized,spel:defaultRuleProcessorSpEL,sql:defaultRuleProcessorSQL};const defaultOperatorProcessor=r=>r.operator;const defaultOperatorProcessors={cel:defaultOperatorProcessor,elasticsearch:defaultOperatorProcessor,json_without_ids:defaultOperatorProcessor,json:defaultOperatorProcessor,jsonata:defaultOperatorProcessor,jsonlogic:defaultOperatorProcessor,mongodb_query:defaultOperatorProcessor,mongodb:defaultOperatorProcessor,natural_language:defaultOperatorProcessorNL,parameterized_named:defaultOperatorProcessorSQL,parameterized:defaultOperatorProcessorSQL,spel:defaultOperatorProcessor,sql:defaultOperatorProcessorSQL};const defaultFallbackExpressions={cel:\"1 == 1\",mongodb:'\"$and\":[{\"$expr\":true}]',natural_language:\"1 is 1\",spel:\"1 == 1\",sql:\"(1 = 1)\"};const mongoDbFallback={$and:[{$expr:true}]};const defaultFormatQueryOptions={format:\"json\",fields:[],quoteFieldNamesWith:[\"\",\"\"],fieldIdentifierSeparator:\"\",getOperators:()=>[],paramPrefix:\":\",paramsKeepPrefix:false,numberedParams:false,parseNumbers:false,preserveValueOrder:false,placeholderFieldName:defaultPlaceholderFieldName,placeholderOperatorName:defaultPlaceholderOperatorName,quoteValuesWith:\"'\",concatOperator:\"||\",preset:\"ansi\",wordOrder:\"SVO\",translations:{},operatorMap:{}};const valueProcessorCanActAsRuleProcessor=format=>format===\"mongodb\"||format===\"mongodb_query\"||format===\"cel\"||format===\"spel\"||format===\"jsonlogic\"||format===\"elasticsearch\"||format===\"jsonata\";function formatQuery(ruleGroup){let options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const optObj={...defaultFormatQueryOptions,...(sqlDialectPresets[options.preset??\"ansi\"]??null),...(typeof options===\"string\"?{format:options}:options),...(typeof options!==\"string\"&&!options.format&&(Object.keys(sqlDialectPresets).includes(options.preset??\"\")?{format:\"sql\"}:null))};const{fallbackExpression:fallbackExpression_option,getOperators:getOperators_option,operatorProcessor:operatorProcessor_option,parseNumbers,placeholderFieldName,placeholderOperatorName,placeholderValueName,quoteFieldNamesWith:quoteFieldNamesWith_option,ruleProcessor:ruleProcessor_option,validator,valueProcessor:valueProcessor_option,translations}=optObj;const getParseNumberBoolean=inputType=>!!getParseNumberMethod({parseNumbers,inputType});const format=optObj.format.toLowerCase();const operatorProcessor=typeof operatorProcessor_option===\"function\"?operatorProcessor_option:defaultOperatorProcessors[format]??defaultOperatorProcessor;const valueProcessor=typeof valueProcessor_option===\"function\"?isValueProcessorLegacy(valueProcessor_option)?r=>valueProcessor_option(r.field,r.operator,r.value,r.valueSource):valueProcessor_option:format===\"natural_language\"?defaultValueProcessorNL:valueProcessorCanActAsRuleProcessor(format)?ruleProcessor_option??defaultRuleProcessors[format]:defaultValueProcessorByRule;const ruleProcessor=(typeof ruleProcessor_option===\"function\"?ruleProcessor_option:null)??(valueProcessorCanActAsRuleProcessor(format)&&typeof ruleProcessor_option!==\"function\"&&valueProcessor_option?valueProcessor:null)??defaultRuleProcessors[format]??defaultRuleProcessorSQL;const quoteFieldNamesWith=getQuoteFieldNamesWithArray(quoteFieldNamesWith_option);const fields=toFullOptionList(optObj.fields);const getOperators=(f,m)=>toFullOptionList(getOperators_option(f,m)??/* istanbul ignore next */[]);const fallbackExpression=fallbackExpression_option??defaultFallbackExpressions[format]??defaultFallbackExpressions.sql;const finalOptions={...optObj,fallbackExpression,fields,format,getOperators,quoteFieldNamesWith,operatorProcessor,ruleProcessor,valueProcessor};if(format===\"json\"||format===\"json_without_ids\"){const rg=parseNumbers?produce(ruleGroup,g=>numerifyValues(g,finalOptions)):ruleGroup;if(format===\"json_without_ids\"){return JSON.stringify(rg,(key,value)=>// Remove `id` and `path` keys; leave everything else unchanged.\nkey===\"id\"||key===\"path\"?void 0:value);}return JSON.stringify(rg,null,2);}let validationMap={};if(typeof validator===\"function\"){const validationResult=validator(ruleGroup);if(typeof validationResult===\"boolean\"){if(validationResult===false){return format===\"parameterized\"?{sql:fallbackExpression,params:[]}:format===\"parameterized_named\"?{sql:fallbackExpression,params:{}}:format===\"mongodb\"?`{${fallbackExpression}}`:format===\"mongodb_query\"?mongoDbFallback:format===\"jsonlogic\"?false:format===\"elasticsearch\"?{}:fallbackExpression;}}else{validationMap=validationResult;}}const validatorMap={};const uniqueFields=toFlatOptionArray(fields);for(const f of uniqueFields){if(typeof f.validator===\"function\"){validatorMap[f.value??/* istanbul ignore next */f.name]=f.validator;}}const validateRule=rule=>{let validationResult;let fieldValidator;if(rule.id){validationResult=validationMap[rule.id];}if(uniqueFields.length>0){const fieldArr=uniqueFields.filter(f=>f.name===rule.field);if(fieldArr.length>0){const field=fieldArr[0];if(typeof field.validator===\"function\"){fieldValidator=field.validator;}}}return[validationResult,fieldValidator];};if(format===\"sql\"){const processRuleGroup=(rg,outermostOrLonelyInGroup)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermostOrLonelyInGroup?fallbackExpression:(/* istanbul ignore next */\"\");}const processedRules=rg.rules.map(rule=>{if(typeof rule===\"string\"){return rule;}if(isRuleGroup(rule)){return processRuleGroup(rule,rg.rules.length===1);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const escapeQuotes=(rule.valueSource??\"value\")===\"value\";const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),escapeQuotes,fieldData});}).filter(Boolean);if(processedRules.length===0){return fallbackExpression;}return`${rg.not?\"NOT \":\"\"}(${processedRules.join(isRuleGroupType(rg)?` ${rg.combinator} `:\" \")})`;};return processRuleGroup(ruleGroup,true);}if(format===\"parameterized\"||format===\"parameterized_named\"){const parameterized=format===\"parameterized\";const params=[];const paramsNamed={};const fieldParams=/* @__PURE__ */new Map();const getNextNamedParam=field=>{if(!fieldParams.has(field)){fieldParams.set(field,/* @__PURE__ */new Set());}const nextNamedParam=`${field}_${fieldParams.get(field).size+1}`;fieldParams.get(field).add(nextNamedParam);return nextNamedParam;};const processRule=rule=>{const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const fieldData=getOption(fields,rule.field);const fieldParamNames=Object.fromEntries([...fieldParams.entries()].map(_ref=>{let[f,s]=_ref;return[f,[...s]];}));const processedRule=ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),getNextNamedParam,fieldParamNames,fieldData},{processedParams:params});if(!isPojo(processedRule)){return\"\";}const{sql,params:customParams}=processedRule;if(typeof sql!==\"string\"||!sql){return\"\";}if(format===\"parameterized\"&&Array.isArray(customParams)){params.push(...customParams);}else if(format===\"parameterized_named\"&&isPojo(customParams)){Object.assign(paramsNamed,customParams);for(const p of Object.keys(customParams))fieldParams.get(rule.field)?.add(p);}return sql;};const processRuleGroup=(rg,outermostOrLonelyInGroup)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermostOrLonelyInGroup?fallbackExpression:(/* istanbul ignore next */\"\");}const processedRules=rg.rules.map(rule=>{if(typeof rule===\"string\"){return rule;}if(isRuleGroup(rule)){return processRuleGroup(rule,rg.rules.length===1);}return processRule(rule);}).filter(Boolean);if(processedRules.length===0){return fallbackExpression;}return`${rg.not?\"NOT \":\"\"}(${processedRules.join(isRuleGroupType(rg)?` ${rg.combinator} `:\" \")})`;};if(parameterized){return{sql:processRuleGroup(ruleGroup,true),params};}return{sql:processRuleGroup(ruleGroup,true),params:paramsNamed};}if(format===\"mongodb\"){const processRuleGroup=(rg,outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermost?fallbackExpression:\"\";}const combinator=`\"$${rg.combinator.toLowerCase()}\"`;let hasChildRules=false;const expressions=rg.rules.map(rule=>{if(isRuleGroup(rule)){const processedRuleGroup=processRuleGroup(rule);if(processedRuleGroup){hasChildRules=true;return /^\\{.+\\}$/.test(processedRuleGroup)?processedRuleGroup:`{${processedRuleGroup}}`;}return\"\";}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),fieldData});}).filter(Boolean);return expressions.length>0?expressions.length===1&&!hasChildRules?expressions[0]:`${combinator}:[${expressions.join(\",\")}]`:fallbackExpression;};const rgStandard=isRuleGroupType(ruleGroup)?ruleGroup:convertFromIC(ruleGroup);const processedQuery=processRuleGroup(rgStandard,true);return /^\\{.+\\}$/.test(processedQuery)?processedQuery:`{${processedQuery}}`;}if(format===\"mongodb_query\"){const processRuleGroup=(rg,outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermost?mongoDbFallback:false;}const combinator=`$${rg.combinator.toLowerCase()}`;let hasChildRules=false;const expressions=rg.rules.map(rule=>{if(isRuleGroup(rule)){const processedRuleGroup=processRuleGroup(rule);if(processedRuleGroup){hasChildRules=true;return processedRuleGroup;}return false;}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return false;}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),fieldData});}).filter(Boolean);return expressions.length>0?expressions.length===1&&!hasChildRules?expressions[0]:{[combinator]:expressions}:mongoDbFallback;};return processRuleGroup(convertFromIC(ruleGroup),true);}if(format===\"cel\"){const processRuleGroup=(rg,outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermost?fallbackExpression:\"\";}const expression=rg.rules.map(rule=>{if(typeof rule===\"string\"){return celCombinatorMap[rule];}if(isRuleGroup(rule)){return processRuleGroup(rule);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),escapeQuotes:(rule.valueSource??\"value\")===\"value\",fieldData});}).filter(Boolean).join(isRuleGroupType(rg)?` ${celCombinatorMap[rg.combinator]} `:\" \");const[prefix,suffix]=rg.not||!outermost?[`${rg.not?\"!\":\"\"}(`,\")\"]:[\"\",\"\"];return expression?`${prefix}${expression}${suffix}`:fallbackExpression;};return processRuleGroup(ruleGroup,true);}if(format===\"spel\"){const processRuleGroup=(rg,outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermost?fallbackExpression:\"\";}const expression=rg.rules.map(rule=>{if(typeof rule===\"string\"){return rule;}if(isRuleGroup(rule)){return processRuleGroup(rule);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),escapeQuotes:(rule.valueSource??\"value\")===\"value\",fieldData});}).filter(Boolean).join(isRuleGroupType(rg)?` ${rg.combinator} `:\" \");const[prefix,suffix]=rg.not||!outermost?[`${rg.not?\"!\":\"\"}(`,\")\"]:[\"\",\"\"];return expression?`${prefix}${expression}${suffix}`:fallbackExpression;};return processRuleGroup(ruleGroup,true);}if(format===\"jsonata\"){const processRuleGroup=(rg,outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermost?fallbackExpression:\"\";}const expression=rg.rules.map(rule=>{if(typeof rule===\"string\"){return rule;}if(isRuleGroup(rule)){return processRuleGroup(rule);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),escapeQuotes:(rule.valueSource??\"value\")===\"value\",fieldData});}).filter(Boolean).join(isRuleGroupType(rg)?` ${rg.combinator} `:\" \");const[prefix,suffix]=rg.not||!outermost?[`${rg.not?\"$not\":\"\"}(`,\")\"]:[\"\",\"\"];return expression?`${prefix}${expression}${suffix}`:fallbackExpression;};return processRuleGroup(ruleGroup,true);}if(format===\"jsonlogic\"){const query=isRuleGroupType(ruleGroup)?ruleGroup:convertFromIC(ruleGroup);const processRuleGroup=(rg,_outermost)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return false;}const processedRules=rg.rules.map(rule=>{if(isRuleGroup(rule)){return processRuleGroup(rule);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return false;}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),fieldData});}).filter(Boolean);if(processedRules.length===0){return false;}const jsonRuleGroup={[rg.combinator]:processedRules};return rg.not?{\"!\":jsonRuleGroup}:jsonRuleGroup;};return processRuleGroup(query,true);}if(format===\"elasticsearch\"){const query=isRuleGroupType(ruleGroup)?ruleGroup:convertFromIC(ruleGroup);const processRuleGroup=rg=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return false;}const processedRules=rg.rules.map(rule=>{if(isRuleGroup(rule)){return processRuleGroup(rule);}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return false;}const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),fieldData});}).filter(Boolean);if(processedRules.length===0){return false;}return{bool:rg.not?{must_not:/^or$/i.test(rg.combinator)?{bool:{should:processedRules}}:processedRules}:{[/^or$/i.test(rg.combinator)?\"should\":\"must\"]:processedRules}};};const processedRuleGroup=processRuleGroup(query);return processedRuleGroup===false?{}:processedRuleGroup;}if(format===\"natural_language\"){const processRuleGroup=(rg,outermostOrLonelyInGroup)=>{if(!isRuleOrGroupValid(rg,validationMap[rg.id??/* istanbul ignore next */\"\"])){return outermostOrLonelyInGroup?fallbackExpression:(/* istanbul ignore next */\"\");}let rg2=rg;if(isRuleGroupTypeIC(rg)&&rg.rules.some(r=>typeof r===\"string\"&&r.toLowerCase()===\"xor\")){rg2=convertFromIC(rg);}const processedRules=rg2.rules.map(rule=>{if(typeof rule===\"string\"){return`, ${translations[rule]??rule} `;}if(isRuleGroup(rule)){return processRuleGroup(rule,rg2.rules.length===1&&!(rg2.not||/^xor$/i.test(rg2.combinator??/* istanbul ignore next */\"\")));}const[validationResult,fieldValidator]=validateRule(rule);if(!isRuleOrGroupValid(rule,validationResult,fieldValidator)||rule.field===placeholderFieldName||rule.operator===placeholderOperatorName||/* istanbul ignore next */placeholderValueName!==void 0&&rule.value===placeholderValueName){return\"\";}const escapeQuotes=(rule.valueSource??\"value\")===\"value\";const fieldData=getOption(fields,rule.field);return ruleProcessor(rule,{...finalOptions,parseNumbers:getParseNumberBoolean(fieldData?.inputType),escapeQuotes,fieldData});});if(processedRules.length===0){return fallbackExpression;}const isXOR=(rg2.combinator??\"\").toLowerCase()===\"xor\";const combinator=isXOR?rg2.combinator.slice(1):rg2.combinator;const mustWrap=rg2.not||!outermostOrLonelyInGroup||isXOR&&processedRules.length>1;const[prefixTL,suffixTL]=[\"groupPrefix\",\"groupSuffix\"].map(key=>rg2.not?isXOR?getNLTranslataion(key,translations,[\"not\",\"xor\"]):getNLTranslataion(key,translations,[\"not\"]):isXOR?getNLTranslataion(key,translations,[\"xor\"]):getNLTranslataion(key,translations));const prefix=mustWrap?`${prefixTL} (`.trim():\"\";const suffix=mustWrap?`) ${suffixTL}`.trim():\"\";return`${prefix}${processedRules.filter(Boolean).join(isRuleGroupType(rg2)?`, ${translations[combinator]??combinator} `:\"\")}${suffix}`;};return processRuleGroup(ruleGroup,true);}return\"\";}export{formatQuery};","import{defaultRuleProcessorCEL}from\"./defaultRuleProcessorCEL\";import{defaultRuleProcessorMongoDB}from\"./defaultRuleProcessorMongoDB\";import{defaultRuleProcessorSpEL}from\"./defaultRuleProcessorSpEL\";import{defaultValueProcessorByRule}from\"./defaultValueProcessorByRule\";const internalValueProcessors={default:defaultValueProcessorByRule,mongodb:defaultRuleProcessorMongoDB,cel:defaultRuleProcessorCEL,spel:defaultRuleProcessorSpEL};const generateValueProcessor=format=>(field,operator,value,valueSource)=>internalValueProcessors[format]({field,operator,value,valueSource},{parseNumbers:false});export const defaultValueProcessor=generateValueProcessor(\"default\");export const defaultMongoDBValueProcessor=generateValueProcessor(\"mongodb\");export const defaultCELValueProcessor=generateValueProcessor(\"cel\");export const defaultSpELValueProcessor=generateValueProcessor(\"spel\");export{defaultRuleProcessorElasticSearch}from\"./defaultRuleProcessorElasticSearch\";export{defaultRuleProcessorJSONata}from\"./defaultRuleProcessorJSONata\";export{defaultRuleProcessorJsonLogic}from\"./defaultRuleProcessorJsonLogic\";export{defaultRuleProcessorMongoDBQuery}from\"./defaultRuleProcessorMongoDBQuery\";export*from\"./defaultRuleProcessorNL\";export{defaultRuleProcessorParameterized}from\"./defaultRuleProcessorParameterized\";export{defaultRuleProcessorSQL}from\"./defaultRuleProcessorSQL\";export{defaultValueProcessorNL}from\"./defaultValueProcessorNL\";export*from\"./formatQuery\";export*from\"./utils\";export{defaultRuleProcessorCEL,defaultRuleProcessorMongoDB,defaultRuleProcessorSpEL,defaultValueProcessorByRule};export const defaultValueProcessorCELByRule=defaultRuleProcessorCEL;export const defaultValueProcessorMongoDBByRule=defaultRuleProcessorMongoDB;export const defaultValueProcessorSpELByRule=defaultRuleProcessorSpEL;","import{isRuleGroup}from\"./isRuleGroup\";import{isPojo}from\"./misc\";export const findPath=(path,query)=>{let target=query;let level=0;while(level<path.length&&target&&isRuleGroup(target)){const t=target.rules[path[level]];target=typeof t===\"string\"?null:t;level++;}return target;};export const getParentPath=path=>path.slice(0,-1);export const pathsAreEqual=(path1,path2)=>path1.length===path2.length&&path1.every((val,idx)=>val===path2[idx]);export const isAncestor=(maybeAncestor,path)=>maybeAncestor.length<path.length&&new RegExp(`^${maybeAncestor.join(\"-\")}`).test(path.join(\"-\"));export const getCommonAncestorPath=(path1,path2)=>{const commonAncestorPath=[];const parentPath1=getParentPath(path1);const parentPath2=getParentPath(path2);let i=0;while(i<parentPath1.length&&i<parentPath2.length&&parentPath1[i]===parentPath2[i]){commonAncestorPath.push(parentPath2[i]);i++;}return commonAncestorPath;};export const pathIsDisabled=(path,query)=>{let disabled=!!query.disabled;let target=query;let level=0;while(level<path.length&&!disabled&&isRuleGroup(target)){const t=target.rules[path[level]];if(isPojo(t)&&(isRuleGroup(t)||\"field\"in t&&!!t.field)){disabled=!!t.disabled;target=t;}level++;}return disabled;};","import{pathsAreEqual}from\"./pathUtils\";export const generateAccessibleDescription=params=>pathsAreEqual([],params.path)?`Query builder`:`Rule group at path ${params.path.join(\"-\")}`;","const cryptoModule=globalThis.crypto;export let generateID=()=>\"00-0-4-2-000\".replaceAll(/[^-]/g,s=>((Math.random()+Math.trunc(s))*65536>>parseInt(s)).toString(16).padStart(4,\"0\"));if(cryptoModule){if(typeof cryptoModule.randomUUID===\"function\"){generateID=()=>cryptoModule.randomUUID();}else if(typeof cryptoModule.getRandomValues===\"function\"){const position19vals=\"89ab\";const container=new Uint32Array(32);generateID=()=>{cryptoModule.getRandomValues(container);let id=(container[0]%16).toString(16);for(let i=1;i<32;i++){if(i===12){id=`${id}${\"4\"}`;}else if(i===16){id=`${id}${position19vals[container[17]%4]}`;}else{id=`${id}${(container[i]%16).toString(16)}`;}if(i===7||i===11||i===15||i===19){id=`${id}${\"-\"}`;}}return id;};}}","const preferPropDefaultTrue=(prop,context)=>prop===false?false:prop?true:context===false?false:true;const preferPropDefaultFalse=(prop,context)=>prop?true:prop===false?false:context?true:false;export const preferProp=(def,prop,context)=>def?preferPropDefaultTrue(prop,context):preferPropDefaultFalse(prop,context);export const usePreferProp=(def,prop,context)=>preferProp(def,prop,context);export const usePreferAnyProp=(def,prop,context)=>prop!==void 0&&prop!=null?prop:context!==void 0&&context!=null?context:def;","import{c as _c}from\"react-compiler-runtime\";import{forwardRef,useCallback,useContext,useMemo}from\"react\";import{QueryBuilderContext}from\"../context\";import{defaultControlElements}from\"../defaultControlElements\";import{defaultControlClassnames,defaultTranslations}from\"../defaults\";import{mergeClassnames,mergeTranslation}from\"../utils\";import{usePreferProp}from\"./usePreferProp\";const nullComp=()=>null;const nullFwdComp=/*#__PURE__*/forwardRef(nullComp);const emptyObject={};export const useMergedContext=t0=>{const $=_c(193);let finalize;let props;if($[0]!==t0){({finalize,...props}=t0);$[0]=t0;$[1]=finalize;$[2]=props;}else{finalize=$[1];props=$[2];}const rqbContext=useContext(QueryBuilderContext);const debugModePreferred=usePreferProp(false,props.debugMode,rqbContext.debugMode);const debugMode=finalize?debugModePreferred:props.debugMode??rqbContext.debugMode;const enableMountQueryChangePreferred=usePreferProp(true,props.enableMountQueryChange,rqbContext.enableMountQueryChange);const enableMountQueryChange=finalize?enableMountQueryChangePreferred:props.enableMountQueryChange??rqbContext.enableMountQueryChange;const enableDragAndDropPreferred=usePreferProp(false,props.enableDragAndDrop,rqbContext.enableDragAndDrop)&&rqbContext.enableDragAndDrop!==false;const enableDragAndDrop=finalize?enableDragAndDropPreferred:props.enableDragAndDrop??rqbContext.enableDragAndDrop;let t1;let t2;if($[3]!==finalize||$[4]!==props.controlClassnames||$[5]!==rqbContext.controlClassnames){t2=mergeClassnames(finalize?Object.assign({},defaultControlClassnames):emptyObject,rqbContext.controlClassnames,props.controlClassnames);$[3]=finalize;$[4]=props.controlClassnames;$[5]=rqbContext.controlClassnames;$[6]=t2;}else{t2=$[6];}t1=t2;const cc=t1;let t3;let t4;if($[7]!==cc.actionElement||$[8]!==cc.addGroup||$[9]!==cc.addRule||$[10]!==cc.betweenRules||$[11]!==cc.body||$[12]!==cc.branches||$[13]!==cc.cloneGroup||$[14]!==cc.cloneRule||$[15]!==cc.combinators||$[16]!==cc.disabled||$[17]!==cc.dndCopy||$[18]!==cc.dndDragging||$[19]!==cc.dndGroup||$[20]!==cc.dndOver||$[21]!==cc.dragHandle||$[22]!==cc.fields||$[23]!==cc.header||$[24]!==cc.invalid||$[25]!==cc.lockGroup||$[26]!==cc.lockRule||$[27]!==cc.notToggle||$[28]!==cc.operators||$[29]!==cc.queryBuilder||$[30]!==cc.removeGroup||$[31]!==cc.removeRule||$[32]!==cc.rule||$[33]!==cc.ruleGroup||$[34]!==cc.shiftActions||$[35]!==cc.valid||$[36]!==cc.value||$[37]!==cc.valueListItem||$[38]!==cc.valueSelector||$[39]!==cc.valueSource){t4={actionElement:cc.actionElement,addGroup:cc.addGroup,addRule:cc.addRule,body:cc.body,cloneGroup:cc.cloneGroup,cloneRule:cc.cloneRule,combinators:cc.combinators,dragHandle:cc.dragHandle,fields:cc.fields,header:cc.header,lockGroup:cc.lockGroup,lockRule:cc.lockRule,notToggle:cc.notToggle,operators:cc.operators,queryBuilder:cc.queryBuilder,removeGroup:cc.removeGroup,removeRule:cc.removeRule,rule:cc.rule,ruleGroup:cc.ruleGroup,shiftActions:cc.shiftActions,value:cc.value,valueSelector:cc.valueSelector,valueSource:cc.valueSource,betweenRules:cc.betweenRules,valid:cc.valid,invalid:cc.invalid,dndDragging:cc.dndDragging,dndOver:cc.dndOver,dndCopy:cc.dndCopy,dndGroup:cc.dndGroup,disabled:cc.disabled,valueListItem:cc.valueListItem,branches:cc.branches};$[7]=cc.actionElement;$[8]=cc.addGroup;$[9]=cc.addRule;$[10]=cc.betweenRules;$[11]=cc.body;$[12]=cc.branches;$[13]=cc.cloneGroup;$[14]=cc.cloneRule;$[15]=cc.combinators;$[16]=cc.disabled;$[17]=cc.dndCopy;$[18]=cc.dndDragging;$[19]=cc.dndGroup;$[20]=cc.dndOver;$[21]=cc.dragHandle;$[22]=cc.fields;$[23]=cc.header;$[24]=cc.invalid;$[25]=cc.lockGroup;$[26]=cc.lockRule;$[27]=cc.notToggle;$[28]=cc.operators;$[29]=cc.queryBuilder;$[30]=cc.removeGroup;$[31]=cc.removeRule;$[32]=cc.rule;$[33]=cc.ruleGroup;$[34]=cc.shiftActions;$[35]=cc.valid;$[36]=cc.value;$[37]=cc.valueListItem;$[38]=cc.valueSelector;$[39]=cc.valueSource;$[40]=t4;}else{t4=$[40];}t3=t4;const controlClassnames=t3;const contextCE=rqbContext.controlElements??emptyObject;const propsCE=props.controlElements??emptyObject;let t5;if($[41]!==contextCE.actionElement||$[42]!==contextCE.valueSelector||$[43]!==finalize||$[44]!==propsCE.actionElement||$[45]!==propsCE.valueSelector){t5=(name,propComp,contextComp)=>{const nc=name===\"dragHandle\"?nullFwdComp:nullComp;const propBulkOverride=(name.endsWith(\"Action\")&&propsCE.actionElement?propsCE.actionElement:void 0)??(name.endsWith(\"Selector\")&&propsCE.valueSelector?propsCE.valueSelector:void 0);const contextBulkOverride=(name.endsWith(\"Action\")&&contextCE.actionElement?contextCE.actionElement:void 0)??(name.endsWith(\"Selector\")&&contextCE.valueSelector?contextCE.valueSelector:void 0);const comp=propComp===null?nc:propComp??(finalize?propBulkOverride:void 0)??(contextComp===null?nc:contextComp??(finalize?contextBulkOverride:void 0));return comp?{[name]:comp}:finalize?{[name]:defaultControlElements[name]}:emptyObject;};$[41]=contextCE.actionElement;$[42]=contextCE.valueSelector;$[43]=finalize;$[44]=propsCE.actionElement;$[45]=propsCE.valueSelector;$[46]=t5;}else{t5=$[46];}const mergeControlElement=t5;let t6;let t7;if($[47]!==contextCE.actionElement||$[48]!==contextCE.addGroupAction||$[49]!==contextCE.addRuleAction||$[50]!==contextCE.cloneGroupAction||$[51]!==contextCE.cloneRuleAction||$[52]!==contextCE.combinatorSelector||$[53]!==contextCE.dragHandle||$[54]!==contextCE.fieldSelector||$[55]!==contextCE.inlineCombinator||$[56]!==contextCE.lockGroupAction||$[57]!==contextCE.lockRuleAction||$[58]!==contextCE.notToggle||$[59]!==contextCE.operatorSelector||$[60]!==contextCE.removeGroupAction||$[61]!==contextCE.removeRuleAction||$[62]!==contextCE.rule||$[63]!==contextCE.ruleGroup||$[64]!==contextCE.ruleGroupBodyElements||$[65]!==contextCE.ruleGroupHeaderElements||$[66]!==contextCE.shiftActions||$[67]!==contextCE.valueEditor||$[68]!==contextCE.valueSelector||$[69]!==contextCE.valueSourceSelector||$[70]!==finalize||$[71]!==mergeControlElement||$[72]!==propsCE.actionElement||$[73]!==propsCE.addGroupAction||$[74]!==propsCE.addRuleAction||$[75]!==propsCE.cloneGroupAction||$[76]!==propsCE.cloneRuleAction||$[77]!==propsCE.combinatorSelector||$[78]!==propsCE.dragHandle||$[79]!==propsCE.fieldSelector||$[80]!==propsCE.inlineCombinator||$[81]!==propsCE.lockGroupAction||$[82]!==propsCE.lockRuleAction||$[83]!==propsCE.notToggle||$[84]!==propsCE.operatorSelector||$[85]!==propsCE.removeGroupAction||$[86]!==propsCE.removeRuleAction||$[87]!==propsCE.rule||$[88]!==propsCE.ruleGroup||$[89]!==propsCE.ruleGroupBodyElements||$[90]!==propsCE.ruleGroupHeaderElements||$[91]!==propsCE.shiftActions||$[92]!==propsCE.valueEditor||$[93]!==propsCE.valueSelector||$[94]!==propsCE.valueSourceSelector){t7=Object.assign({},mergeControlElement(\"addGroupAction\",propsCE.addGroupAction,contextCE.addGroupAction),mergeControlElement(\"addRuleAction\",propsCE.addRuleAction,contextCE.addRuleAction),mergeControlElement(\"cloneGroupAction\",propsCE.cloneGroupAction,contextCE.cloneGroupAction),mergeControlElement(\"cloneRuleAction\",propsCE.cloneRuleAction,contextCE.cloneRuleAction),mergeControlElement(\"combinatorSelector\",propsCE.combinatorSelector,contextCE.combinatorSelector),mergeControlElement(\"dragHandle\",propsCE.dragHandle,contextCE.dragHandle),mergeControlElement(\"fieldSelector\",propsCE.fieldSelector,contextCE.fieldSelector),mergeControlElement(\"inlineCombinator\",propsCE.inlineCombinator,contextCE.inlineCombinator),mergeControlElement(\"lockGroupAction\",propsCE.lockGroupAction,contextCE.lockGroupAction),mergeControlElement(\"lockRuleAction\",propsCE.lockRuleAction,contextCE.lockRuleAction),mergeControlElement(\"notToggle\",propsCE.notToggle,contextCE.notToggle),mergeControlElement(\"operatorSelector\",propsCE.operatorSelector,contextCE.operatorSelector),mergeControlElement(\"removeGroupAction\",propsCE.removeGroupAction,contextCE.removeGroupAction),mergeControlElement(\"removeRuleAction\",propsCE.removeRuleAction,contextCE.removeRuleAction),mergeControlElement(\"shiftActions\",propsCE.shiftActions,contextCE.shiftActions),{valueEditor:propsCE.valueEditor===null?nullComp:propsCE.valueEditor??(contextCE.valueEditor===null?nullComp:contextCE.valueEditor)??defaultControlElements.valueEditor},mergeControlElement(\"valueSourceSelector\",propsCE.valueSourceSelector,contextCE.valueSourceSelector),mergeControlElement(\"rule\",propsCE.rule,contextCE.rule),mergeControlElement(\"ruleGroup\",propsCE.ruleGroup,contextCE.ruleGroup),mergeControlElement(\"ruleGroupBodyElements\",propsCE.ruleGroupBodyElements,contextCE.ruleGroupBodyElements),mergeControlElement(\"ruleGroupHeaderElements\",propsCE.ruleGroupHeaderElements,contextCE.ruleGroupHeaderElements),{actionElement:propsCE.actionElement??contextCE.actionElement??(finalize?defaultControlElements.actionElement:void 0)},{valueSelector:propsCE.valueSelector??contextCE.valueSelector??(finalize?defaultControlElements.valueSelector:void 0)});$[47]=contextCE.actionElement;$[48]=contextCE.addGroupAction;$[49]=contextCE.addRuleAction;$[50]=contextCE.cloneGroupAction;$[51]=contextCE.cloneRuleAction;$[52]=contextCE.combinatorSelector;$[53]=contextCE.dragHandle;$[54]=contextCE.fieldSelector;$[55]=contextCE.inlineCombinator;$[56]=contextCE.lockGroupAction;$[57]=contextCE.lockRuleAction;$[58]=contextCE.notToggle;$[59]=contextCE.operatorSelector;$[60]=contextCE.removeGroupAction;$[61]=contextCE.removeRuleAction;$[62]=contextCE.rule;$[63]=contextCE.ruleGroup;$[64]=contextCE.ruleGroupBodyElements;$[65]=contextCE.ruleGroupHeaderElements;$[66]=contextCE.shiftActions;$[67]=contextCE.valueEditor;$[68]=contextCE.valueSelector;$[69]=contextCE.valueSourceSelector;$[70]=finalize;$[71]=mergeControlElement;$[72]=propsCE.actionElement;$[73]=propsCE.addGroupAction;$[74]=propsCE.addRuleAction;$[75]=propsCE.cloneGroupAction;$[76]=propsCE.cloneRuleAction;$[77]=propsCE.combinatorSelector;$[78]=propsCE.dragHandle;$[79]=propsCE.fieldSelector;$[80]=propsCE.inlineCombinator;$[81]=propsCE.lockGroupAction;$[82]=propsCE.lockRuleAction;$[83]=propsCE.notToggle;$[84]=propsCE.operatorSelector;$[85]=propsCE.removeGroupAction;$[86]=propsCE.removeRuleAction;$[87]=propsCE.rule;$[88]=propsCE.ruleGroup;$[89]=propsCE.ruleGroupBodyElements;$[90]=propsCE.ruleGroupHeaderElements;$[91]=propsCE.shiftActions;$[92]=propsCE.valueEditor;$[93]=propsCE.valueSelector;$[94]=propsCE.valueSourceSelector;$[95]=t7;}else{t7=$[95];}t6=t7;const controlElements=t6;const propsT=props.translations??emptyObject;const contextT=rqbContext.translations??emptyObject;contextT.addGroup?.label;contextT.addGroup?.title;contextT.addRule?.label;contextT.addRule?.title;contextT.cloneRule?.label;contextT.cloneRule?.title;contextT.cloneRuleGroup?.label;contextT.cloneRuleGroup?.title;contextT.combinators?.title;contextT.dragHandle?.label;contextT.dragHandle?.title;contextT.fields?.placeholderGroupLabel;contextT.fields?.placeholderLabel;contextT.fields?.placeholderName;contextT.fields?.title;contextT.lockGroup?.label;contextT.lockGroup?.title;contextT.lockGroupDisabled?.label;contextT.lockGroupDisabled?.title;contextT.lockRule?.label;contextT.lockRule?.title;contextT.lockRuleDisabled?.label;contextT.lockRuleDisabled?.title;contextT.notToggle?.label;contextT.notToggle?.title;contextT.operators?.placeholderGroupLabel;contextT.operators?.placeholderLabel;contextT.operators?.placeholderName;contextT.operators?.title;contextT.removeGroup?.label;contextT.removeGroup?.title;contextT.removeRule?.label;contextT.removeRule?.title;contextT.shiftActionDown?.label;contextT.shiftActionDown?.title;contextT.shiftActionUp?.label;contextT.shiftActionUp?.title;contextT.value?.title;contextT.values?.placeholderGroupLabel;contextT.values?.placeholderLabel;contextT.values?.placeholderName;contextT.values?.title;contextT.valueSourceSelector?.title;propsT.addGroup?.label;propsT.addGroup?.title;propsT.addRule?.label;propsT.addRule?.title;propsT.cloneRule?.label;propsT.cloneRule?.title;propsT.cloneRuleGroup?.label;propsT.cloneRuleGroup?.title;propsT.combinators?.title;propsT.dragHandle?.label;propsT.dragHandle?.title;propsT.fields?.placeholderGroupLabel;propsT.fields?.placeholderLabel;propsT.fields?.placeholderName;propsT.fields?.title;propsT.lockGroup?.label;propsT.lockGroup?.title;propsT.lockGroupDisabled?.label;propsT.lockGroupDisabled?.title;propsT.lockRule?.label;propsT.lockRule?.title;propsT.lockRuleDisabled?.label;propsT.lockRuleDisabled?.title;propsT.notToggle?.label;propsT.notToggle?.title;propsT.operators?.placeholderGroupLabel;propsT.operators?.placeholderLabel;propsT.operators?.placeholderName;propsT.operators?.title;propsT.removeGroup?.label;propsT.removeGroup?.title;propsT.removeRule?.label;propsT.removeRule?.title;propsT.shiftActionDown?.label;propsT.shiftActionDown?.title;propsT.shiftActionUp?.label;propsT.shiftActionUp?.title;propsT.value?.title;propsT.values?.placeholderGroupLabel;propsT.values?.placeholderLabel;propsT.values?.placeholderName;propsT.values?.title;propsT.valueSourceSelector?.title;let t8;let t9;if($[96]!==contextT.addGroup?.label||$[97]!==contextT.addGroup?.title||$[98]!==contextT.addRule?.label||$[99]!==contextT.addRule?.title||$[100]!==contextT.cloneRule?.label||$[101]!==contextT.cloneRule?.title||$[102]!==contextT.cloneRuleGroup?.label||$[103]!==contextT.cloneRuleGroup?.title||$[104]!==contextT.combinators?.title||$[105]!==contextT.dragHandle?.label||$[106]!==contextT.dragHandle?.title||$[107]!==contextT.fields?.placeholderGroupLabel||$[108]!==contextT.fields?.placeholderLabel||$[109]!==contextT.fields?.placeholderName||$[110]!==contextT.fields?.title||$[111]!==contextT.lockGroup?.label||$[112]!==contextT.lockGroup?.title||$[113]!==contextT.lockGroupDisabled?.label||$[114]!==contextT.lockGroupDisabled?.title||$[115]!==contextT.lockRule?.label||$[116]!==contextT.lockRule?.title||$[117]!==contextT.lockRuleDisabled?.label||$[118]!==contextT.lockRuleDisabled?.title||$[119]!==contextT.notToggle?.label||$[120]!==contextT.notToggle?.title||$[121]!==contextT.operators?.placeholderGroupLabel||$[122]!==contextT.operators?.placeholderLabel||$[123]!==contextT.operators?.placeholderName||$[124]!==contextT.operators?.title||$[125]!==contextT.removeGroup?.label||$[126]!==contextT.removeGroup?.title||$[127]!==contextT.removeRule?.label||$[128]!==contextT.removeRule?.title||$[129]!==contextT.shiftActionDown?.label||$[130]!==contextT.shiftActionDown?.title||$[131]!==contextT.shiftActionUp?.label||$[132]!==contextT.shiftActionUp?.title||$[133]!==contextT.value?.title||$[134]!==contextT.valueSourceSelector?.title||$[135]!==contextT.values?.placeholderGroupLabel||$[136]!==contextT.values?.placeholderLabel||$[137]!==contextT.values?.placeholderName||$[138]!==contextT.values?.title||$[139]!==finalize||$[140]!==propsT.addGroup?.label||$[141]!==propsT.addGroup?.title||$[142]!==propsT.addRule?.label||$[143]!==propsT.addRule?.title||$[144]!==propsT.cloneRule?.label||$[145]!==propsT.cloneRule?.title||$[146]!==propsT.cloneRuleGroup?.label||$[147]!==propsT.cloneRuleGroup?.title||$[148]!==propsT.combinators?.title||$[149]!==propsT.dragHandle?.label||$[150]!==propsT.dragHandle?.title||$[151]!==propsT.fields?.placeholderGroupLabel||$[152]!==propsT.fields?.placeholderLabel||$[153]!==propsT.fields?.placeholderName||$[154]!==propsT.fields?.title||$[155]!==propsT.lockGroup?.label||$[156]!==propsT.lockGroup?.title||$[157]!==propsT.lockGroupDisabled?.label||$[158]!==propsT.lockGroupDisabled?.title||$[159]!==propsT.lockRule?.label||$[160]!==propsT.lockRule?.title||$[161]!==propsT.lockRuleDisabled?.label||$[162]!==propsT.lockRuleDisabled?.title||$[163]!==propsT.notToggle?.label||$[164]!==propsT.notToggle?.title||$[165]!==propsT.operators?.placeholderGroupLabel||$[166]!==propsT.operators?.placeholderLabel||$[167]!==propsT.operators?.placeholderName||$[168]!==propsT.operators?.title||$[169]!==propsT.removeGroup?.label||$[170]!==propsT.removeGroup?.title||$[171]!==propsT.removeRule?.label||$[172]!==propsT.removeRule?.title||$[173]!==propsT.shiftActionDown?.label||$[174]!==propsT.shiftActionDown?.title||$[175]!==propsT.shiftActionUp?.label||$[176]!==propsT.shiftActionUp?.title||$[177]!==propsT.value?.title||$[178]!==propsT.valueSourceSelector?.title||$[179]!==propsT.values?.placeholderGroupLabel||$[180]!==propsT.values?.placeholderLabel||$[181]!==propsT.values?.placeholderName||$[182]!==propsT.values?.title){t9=Object.assign(finalize?Object.assign({},defaultTranslations):{},mergeTranslation(\"addGroup\",{label:[propsT.addGroup?.label,contextT.addGroup?.label],title:[propsT.addGroup?.title,contextT.addGroup?.title]},finalize),mergeTranslation(\"addRule\",{label:[propsT.addRule?.label,contextT.addRule?.label],title:[propsT.addRule?.title,contextT.addRule?.title]},finalize),mergeTranslation(\"cloneRule\",{label:[propsT.cloneRule?.label,contextT.cloneRule?.label],title:[propsT.cloneRule?.title,contextT.cloneRule?.title]},finalize),mergeTranslation(\"cloneRuleGroup\",{label:[propsT.cloneRuleGroup?.label,contextT.cloneRuleGroup?.label],title:[propsT.cloneRuleGroup?.title,contextT.cloneRuleGroup?.title]},finalize),mergeTranslation(\"combinators\",{title:[propsT.combinators?.title,contextT.combinators?.title]},finalize),mergeTranslation(\"dragHandle\",{label:[propsT.dragHandle?.label,contextT.dragHandle?.label],title:[propsT.dragHandle?.title,contextT.dragHandle?.title]},finalize),mergeTranslation(\"fields\",{placeholderGroupLabel:[propsT.fields?.placeholderGroupLabel,contextT.fields?.placeholderGroupLabel],placeholderLabel:[propsT.fields?.placeholderLabel,contextT.fields?.placeholderLabel],placeholderName:[propsT.fields?.placeholderName,contextT.fields?.placeholderName],title:[propsT.fields?.title,contextT.fields?.title]},finalize),mergeTranslation(\"lockGroup\",{label:[propsT.lockGroup?.label,contextT.lockGroup?.label],title:[propsT.lockGroup?.title,contextT.lockGroup?.title]},finalize),mergeTranslation(\"lockGroupDisabled\",{label:[propsT.lockGroupDisabled?.label,contextT.lockGroupDisabled?.label],title:[propsT.lockGroupDisabled?.title,contextT.lockGroupDisabled?.title]},finalize),mergeTranslation(\"lockRule\",{label:[propsT.lockRule?.label,contextT.lockRule?.label],title:[propsT.lockRule?.title,contextT.lockRule?.title]},finalize),mergeTranslation(\"lockRuleDisabled\",{label:[propsT.lockRuleDisabled?.label,contextT.lockRuleDisabled?.label],title:[propsT.lockRuleDisabled?.title,contextT.lockRuleDisabled?.title]},finalize),mergeTranslation(\"notToggle\",{label:[propsT.notToggle?.label,contextT.notToggle?.label],title:[propsT.notToggle?.title,contextT.notToggle?.title]},finalize),mergeTranslation(\"operators\",{placeholderGroupLabel:[propsT.operators?.placeholderGroupLabel,contextT.operators?.placeholderGroupLabel],placeholderLabel:[propsT.operators?.placeholderLabel,contextT.operators?.placeholderLabel],placeholderName:[propsT.operators?.placeholderName,contextT.operators?.placeholderName],title:[propsT.operators?.title,contextT.operators?.title]},finalize),mergeTranslation(\"values\",{placeholderGroupLabel:[propsT.values?.placeholderGroupLabel,contextT.values?.placeholderGroupLabel],placeholderLabel:[propsT.values?.placeholderLabel,contextT.values?.placeholderLabel],placeholderName:[propsT.values?.placeholderName,contextT.values?.placeholderName],title:[propsT.values?.title,contextT.values?.title]},finalize),mergeTranslation(\"removeGroup\",{label:[propsT.removeGroup?.label,contextT.removeGroup?.label],title:[propsT.removeGroup?.title,contextT.removeGroup?.title]},finalize),mergeTranslation(\"removeRule\",{label:[propsT.removeRule?.label,contextT.removeRule?.label],title:[propsT.removeRule?.title,contextT.removeRule?.title]},finalize),mergeTranslation(\"shiftActionDown\",{label:[propsT.shiftActionDown?.label,contextT.shiftActionDown?.label],title:[propsT.shiftActionDown?.title,contextT.shiftActionDown?.title]},finalize),mergeTranslation(\"shiftActionUp\",{label:[propsT.shiftActionUp?.label,contextT.shiftActionUp?.label],title:[propsT.shiftActionUp?.title,contextT.shiftActionUp?.title]},finalize),mergeTranslation(\"value\",{title:[propsT.value?.title,contextT.value?.title]},finalize),mergeTranslation(\"valueSourceSelector\",{title:[propsT.valueSourceSelector?.title,contextT.valueSourceSelector?.title]},finalize));$[96]=contextT.addGroup?.label;$[97]=contextT.addGroup?.title;$[98]=contextT.addRule?.label;$[99]=contextT.addRule?.title;$[100]=contextT.cloneRule?.label;$[101]=contextT.cloneRule?.title;$[102]=contextT.cloneRuleGroup?.label;$[103]=contextT.cloneRuleGroup?.title;$[104]=contextT.combinators?.title;$[105]=contextT.dragHandle?.label;$[106]=contextT.dragHandle?.title;$[107]=contextT.fields?.placeholderGroupLabel;$[108]=contextT.fields?.placeholderLabel;$[109]=contextT.fields?.placeholderName;$[110]=contextT.fields?.title;$[111]=contextT.lockGroup?.label;$[112]=contextT.lockGroup?.title;$[113]=contextT.lockGroupDisabled?.label;$[114]=contextT.lockGroupDisabled?.title;$[115]=contextT.lockRule?.label;$[116]=contextT.lockRule?.title;$[117]=contextT.lockRuleDisabled?.label;$[118]=contextT.lockRuleDisabled?.title;$[119]=contextT.notToggle?.label;$[120]=contextT.notToggle?.title;$[121]=contextT.operators?.placeholderGroupLabel;$[122]=contextT.operators?.placeholderLabel;$[123]=contextT.operators?.placeholderName;$[124]=contextT.operators?.title;$[125]=contextT.removeGroup?.label;$[126]=contextT.removeGroup?.title;$[127]=contextT.removeRule?.label;$[128]=contextT.removeRule?.title;$[129]=contextT.shiftActionDown?.label;$[130]=contextT.shiftActionDown?.title;$[131]=contextT.shiftActionUp?.label;$[132]=contextT.shiftActionUp?.title;$[133]=contextT.value?.title;$[134]=contextT.valueSourceSelector?.title;$[135]=contextT.values?.placeholderGroupLabel;$[136]=contextT.values?.placeholderLabel;$[137]=contextT.values?.placeholderName;$[138]=contextT.values?.title;$[139]=finalize;$[140]=propsT.addGroup?.label;$[141]=propsT.addGroup?.title;$[142]=propsT.addRule?.label;$[143]=propsT.addRule?.title;$[144]=propsT.cloneRule?.label;$[145]=propsT.cloneRule?.title;$[146]=propsT.cloneRuleGroup?.label;$[147]=propsT.cloneRuleGroup?.title;$[148]=propsT.combinators?.title;$[149]=propsT.dragHandle?.label;$[150]=propsT.dragHandle?.title;$[151]=propsT.fields?.placeholderGroupLabel;$[152]=propsT.fields?.placeholderLabel;$[153]=propsT.fields?.placeholderName;$[154]=propsT.fields?.title;$[155]=propsT.lockGroup?.label;$[156]=propsT.lockGroup?.title;$[157]=propsT.lockGroupDisabled?.label;$[158]=propsT.lockGroupDisabled?.title;$[159]=propsT.lockRule?.label;$[160]=propsT.lockRule?.title;$[161]=propsT.lockRuleDisabled?.label;$[162]=propsT.lockRuleDisabled?.title;$[163]=propsT.notToggle?.label;$[164]=propsT.notToggle?.title;$[165]=propsT.operators?.placeholderGroupLabel;$[166]=propsT.operators?.placeholderLabel;$[167]=propsT.operators?.placeholderName;$[168]=propsT.operators?.title;$[169]=propsT.removeGroup?.label;$[170]=propsT.removeGroup?.title;$[171]=propsT.removeRule?.label;$[172]=propsT.removeRule?.title;$[173]=propsT.shiftActionDown?.label;$[174]=propsT.shiftActionDown?.title;$[175]=propsT.shiftActionUp?.label;$[176]=propsT.shiftActionUp?.title;$[177]=propsT.value?.title;$[178]=propsT.valueSourceSelector?.title;$[179]=propsT.values?.placeholderGroupLabel;$[180]=propsT.values?.placeholderLabel;$[181]=propsT.values?.placeholderName;$[182]=propsT.values?.title;$[183]=t9;}else{t9=$[183];}t8=t9;const translations=t8;let t10;if($[184]!==controlClassnames||$[185]!==controlElements||$[186]!==debugMode||$[187]!==enableDragAndDrop||$[188]!==enableMountQueryChange||$[189]!==props.initialQuery||$[190]!==props.qbId||$[191]!==translations){t10={controlClassnames,controlElements,debugMode,enableDragAndDrop,enableMountQueryChange,translations,initialQuery:props.initialQuery,qbId:props.qbId};$[184]=controlClassnames;$[185]=controlElements;$[186]=debugMode;$[187]=enableDragAndDrop;$[188]=enableMountQueryChange;$[189]=props.initialQuery;$[190]=props.qbId;$[191]=translations;$[192]=t10;}else{t10=$[192];}return t10;};","import{c as _c}from\"react-compiler-runtime\";import{Fragment,jsx,jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{useCallback,useMemo}from\"react\";import{standardClassnames,TestID}from\"../defaults\";import{useDeprecatedProps}from\"../hooks/useDeprecatedProps\";import{useReactDndWarning}from\"../hooks/useReactDndWarning\";import{useStopEventPropagation}from\"../hooks/useStopEventPropagation\";import{filterFieldsByComparator,getOption,getParentPath,getValidationClassNames,isFlexibleOptionArray,isFlexibleOptionGroupArray,toFullOptionList}from\"../utils\";import{clsx}from\"../utils/clsx\";export const Rule=/*#__PURE__*/React.memo(function Rule2(props){const $=_c(7);const r=useRule(props);const cloneRule=useStopEventPropagation(r.cloneRule);const toggleLockRule=useStopEventPropagation(r.toggleLockRule);const removeRule=useStopEventPropagation(r.removeRule);const shiftRuleUp=useStopEventPropagation(r.shiftRuleUp);const shiftRuleDown=useStopEventPropagation(r.shiftRuleDown);let t0;if($[0]!==cloneRule||$[1]!==r||$[2]!==removeRule||$[3]!==shiftRuleDown||$[4]!==shiftRuleUp||$[5]!==toggleLockRule){t0=jsx(\"div\",{ref:r.dndRef,\"data-testid\":TestID.rule,\"data-dragmonitorid\":r.dragMonitorId,\"data-dropmonitorid\":r.dropMonitorId,className:r.outerClassName,\"data-rule-id\":r.id,\"data-level\":r.path.length,\"data-path\":JSON.stringify(r.path),children:jsx(RuleComponents,{...r,cloneRule,toggleLockRule,removeRule,shiftRuleUp,shiftRuleDown})});$[0]=cloneRule;$[1]=r;$[2]=removeRule;$[3]=shiftRuleDown;$[4]=shiftRuleUp;$[5]=toggleLockRule;$[6]=t0;}else{t0=$[6];}return t0;});export const RuleComponents=/*#__PURE__*/React.memo(function RuleComponents2(r){const{schema:{controls:{shiftActions:ShiftActionsControlElement,dragHandle:DragHandleControlElement,fieldSelector:FieldSelectorControlElement,operatorSelector:OperatorSelectorControlElement,valueSourceSelector:ValueSourceSelectorControlElement,valueEditor:ValueEditorControlElement,cloneRuleAction:CloneRuleActionControlElement,lockRuleAction:LockRuleActionControlElement,removeRuleAction:RemoveRuleActionControlElement}}}=r;return/* @__PURE__ */jsxs(Fragment,{children:[r.schema.showShiftActions&&/* @__PURE__ */jsx(ShiftActionsControlElement,{testID:TestID.shiftActions,level:r.path.length,path:r.path,titles:{shiftUp:r.translations.shiftActionUp.title,shiftDown:r.translations.shiftActionDown.title},labels:{shiftUp:r.translations.shiftActionUp.label,shiftDown:r.translations.shiftActionDown.label},className:r.classNames.shiftActions,disabled:r.disabled,shiftUp:r.shiftRuleUp,shiftDown:r.shiftRuleDown,shiftUpDisabled:r.shiftUpDisabled,shiftDownDisabled:r.shiftDownDisabled,context:r.context,validation:r.validationResult,schema:r.schema,ruleOrGroup:r.rule},TestID.shiftActions),r.schema.enableDragAndDrop&&/* @__PURE__ */jsx(DragHandleControlElement,{testID:TestID.dragHandle,ref:r.dragRef,level:r.path.length,path:r.path,title:r.translations.dragHandle.title,label:r.translations.dragHandle.label,className:r.classNames.dragHandle,disabled:r.disabled,context:r.context,validation:r.validationResult,schema:r.schema,ruleOrGroup:r.rule},TestID.dragHandle),/* @__PURE__ */jsx(FieldSelectorControlElement,{testID:TestID.fields,options:r.schema.fields,title:r.translations.fields.title,value:r.rule.field,operator:r.rule.operator,className:r.classNames.fields,handleOnChange:r.onChangeField,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,schema:r.schema,rule:r.rule},TestID.fields),(r.schema.autoSelectField||r.rule.field!==r.translations.fields.placeholderName)&&/* @__PURE__ */jsxs(Fragment,{children:[/* @__PURE__ */jsx(OperatorSelectorControlElement,{testID:TestID.operators,field:r.rule.field,fieldData:r.fieldData,title:r.translations.operators.title,options:r.operators,value:r.rule.operator,className:r.classNames.operators,handleOnChange:r.onChangeOperator,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,schema:r.schema,rule:r.rule},TestID.operators),(r.schema.autoSelectOperator||r.rule.operator!==r.translations.operators.placeholderName)&&!r.hideValueControls&&/* @__PURE__ */jsxs(Fragment,{children:[![\"null\",\"notNull\"].includes(r.rule.operator)&&r.valueSources.length>1&&/* @__PURE__ */jsx(ValueSourceSelectorControlElement,{testID:TestID.valueSourceSelector,field:r.rule.field,fieldData:r.fieldData,title:r.translations.valueSourceSelector.title,options:r.valueSourceOptions,value:r.rule.valueSource??\"value\",className:r.classNames.valueSource,handleOnChange:r.onChangeValueSource,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,schema:r.schema,rule:r.rule},TestID.valueSourceSelector),/* @__PURE__ */jsx(ValueEditorControlElement,{testID:TestID.valueEditor,field:r.rule.field,fieldData:r.fieldData,title:r.translations.value.title,operator:r.rule.operator,value:r.rule.value,valueSource:r.rule.valueSource??\"value\",type:r.valueEditorType,inputType:r.inputType,values:r.values,listsAsArrays:r.schema.listsAsArrays,parseNumbers:r.schema.parseNumbers,separator:r.valueEditorSeparator,className:r.classNames.value,handleOnChange:r.onChangeValue,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,schema:r.schema,rule:r.rule},TestID.valueEditor)]})]}),r.schema.showCloneButtons&&/* @__PURE__ */jsx(CloneRuleActionControlElement,{testID:TestID.cloneRule,label:r.translations.cloneRule.label,title:r.translations.cloneRule.title,className:r.classNames.cloneRule,handleOnClick:r.cloneRule,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,ruleOrGroup:r.rule,schema:r.schema},TestID.cloneRule),r.schema.showLockButtons&&/* @__PURE__ */jsx(LockRuleActionControlElement,{testID:TestID.lockRule,label:r.translations.lockRule.label,title:r.translations.lockRule.title,className:r.classNames.lockRule,handleOnClick:r.toggleLockRule,level:r.path.length,path:r.path,disabled:r.disabled,disabledTranslation:r.parentDisabled?void 0:r.translations.lockRuleDisabled,context:r.context,validation:r.validationResult,ruleOrGroup:r.rule,schema:r.schema},TestID.lockRule),/* @__PURE__ */jsx(RemoveRuleActionControlElement,{testID:TestID.removeRule,label:r.translations.removeRule.label,title:r.translations.removeRule.title,className:r.classNames.removeRule,handleOnClick:r.removeRule,level:r.path.length,path:r.path,disabled:r.disabled,context:r.context,validation:r.validationResult,ruleOrGroup:r.rule,schema:r.schema},TestID.removeRule)]});});export const useRule=props=>{const{id,path,rule:ruleProp,schema:{classNames:classNamesProp,fields,fieldMap,getInputType,getOperators,getValueEditorType,getValueEditorSeparator,getValueSources,getValues,validationMap,enableDragAndDrop,getRuleClassname,suppressStandardClassnames},actions:{moveRule,onPropChange,onRuleRemove},disabled:disabledProp,parentDisabled,shiftUpDisabled,shiftDownDisabled,field:fieldProp,operator:operatorProp,value:valueProp,valueSource:valueSourceProp,// Drag-and-drop\ndropEffect=\"move\",groupItems=false,dragMonitorId=\"\",dropMonitorId=\"\",dndRef=null,dragRef=null,isDragging=false,isOver=false}=props;useDeprecatedProps(\"rule\",!ruleProp);useReactDndWarning(enableDragAndDrop,!!(dragMonitorId||dropMonitorId||dndRef||dragRef));const disabled=!!parentDisabled||!!disabledProp;const rule=useMemo(()=>ruleProp??{id,field:fieldProp??/* istanbul ignore next */\"\",operator:operatorProp??/* istanbul ignore next */\"\",value:valueProp,valueSource:valueSourceProp},[fieldProp,id,operatorProp,ruleProp,valueProp,valueSourceProp]);const classNames=useMemo(()=>({shiftActions:clsx(suppressStandardClassnames||standardClassnames.shiftActions,classNamesProp.shiftActions),dragHandle:clsx(suppressStandardClassnames||standardClassnames.dragHandle,classNamesProp.dragHandle),fields:clsx(suppressStandardClassnames||standardClassnames.fields,classNamesProp.valueSelector,classNamesProp.fields),operators:clsx(suppressStandardClassnames||standardClassnames.operators,classNamesProp.valueSelector,classNamesProp.operators),valueSource:clsx(suppressStandardClassnames||standardClassnames.valueSource,classNamesProp.valueSelector,classNamesProp.valueSource),value:clsx(suppressStandardClassnames||standardClassnames.value,classNamesProp.value),cloneRule:clsx(suppressStandardClassnames||standardClassnames.cloneRule,classNamesProp.actionElement,classNamesProp.cloneRule),lockRule:clsx(suppressStandardClassnames||standardClassnames.lockRule,classNamesProp.actionElement,classNamesProp.lockRule),removeRule:clsx(suppressStandardClassnames||standardClassnames.removeRule,classNamesProp.actionElement,classNamesProp.removeRule),valueListItem:clsx(suppressStandardClassnames||standardClassnames.valueListItem,classNamesProp.valueListItem)}),[classNamesProp.shiftActions,classNamesProp.dragHandle,classNamesProp.valueSelector,classNamesProp.fields,classNamesProp.operators,classNamesProp.valueSource,classNamesProp.value,classNamesProp.actionElement,classNamesProp.cloneRule,classNamesProp.lockRule,classNamesProp.removeRule,classNamesProp.valueListItem,suppressStandardClassnames]);const getChangeHandler=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\nprop=>(value,context)=>{if(!disabled){onPropChange(prop,value,path,context);}},[disabled,onPropChange,path]);const onChangeField=useMemo(()=>getChangeHandler(\"field\"),[getChangeHandler]);const onChangeOperator=useMemo(()=>getChangeHandler(\"operator\"),[getChangeHandler]);const onChangeValueSource=useMemo(()=>getChangeHandler(\"valueSource\"),[getChangeHandler]);const onChangeValue=useMemo(()=>getChangeHandler(\"value\"),[getChangeHandler]);const cloneRule=useCallback((_event,context_0)=>{if(!disabled){const newPath=[...getParentPath(path),path.at(-1)+1];moveRule(path,newPath,true,context_0);}},[disabled,moveRule,path]);const toggleLockRule=useCallback((_event_0,context_1)=>onPropChange(\"disabled\",!disabled,path,context_1),[disabled,onPropChange,path]);const removeRule=useCallback((_event_1,_context)=>{if(!disabled){onRuleRemove(path);}},[disabled,onRuleRemove,path]);const shiftRuleUp=useCallback((event,context_2)=>{if(!disabled&&!shiftUpDisabled){moveRule(path,\"up\",event?.altKey,context_2);}},[disabled,moveRule,path,shiftUpDisabled]);const shiftRuleDown=useCallback((event_0,context_3)=>{if(!disabled&&!shiftDownDisabled){moveRule(path,\"down\",event_0?.altKey,context_3);}},[disabled,moveRule,path,shiftDownDisabled]);const fieldData=useMemo(()=>fieldMap?.[rule.field]??{name:rule.field,value:rule.field,label:rule.field},[fieldMap,rule.field]);const inputType=useMemo(()=>fieldData.inputType??getInputType(rule.field,rule.operator,{fieldData}),[fieldData,getInputType,rule.field,rule.operator]);const operators=useMemo(()=>getOperators(rule.field,{fieldData}),[fieldData,getOperators,rule.field]);const operatorObject=useMemo(()=>getOption(operators,rule.operator),[operators,rule.operator]);const arity=operatorObject?.arity;const hideValueControls=typeof arity===\"string\"&&arity===\"unary\"||typeof arity===\"number\"&&arity<2;const valueSources=useMemo(()=>typeof fieldData.valueSources===\"function\"?fieldData.valueSources(rule.operator):fieldData.valueSources??getValueSources(rule.field,rule.operator,{fieldData}),[fieldData,getValueSources,rule.field,rule.operator]);const valueEditorType=useMemo(()=>rule.valueSource===\"field\"?\"select\":getValueEditorType(rule.field,rule.operator,{fieldData}),[fieldData,getValueEditorType,rule.field,rule.operator,rule.valueSource]);const valueEditorSeparator=useMemo(()=>getValueEditorSeparator(rule.field,rule.operator,{fieldData}),[fieldData,getValueEditorSeparator,rule.field,rule.operator]);const values=useMemo(()=>{const v=rule.valueSource===\"field\"?filterFieldsByComparator(fieldData,fields,rule.operator):getValues(rule.field,rule.operator,{fieldData});return isFlexibleOptionArray(v)||isFlexibleOptionGroupArray(v)?toFullOptionList(v):v;},[fieldData,fields,getValues,rule.field,rule.operator,rule.valueSource]);const valueSourceOptions=useMemo(()=>valueSources.map(vs=>({name:vs,value:vs,label:vs})),[valueSources]);const validationResult=useMemo(()=>validationMap[id??/* istanbul ignore next */\"\"]??(typeof fieldData.validator===\"function\"?fieldData.validator(rule):null),[fieldData,id,rule,validationMap]);const validationClassName=useMemo(()=>getValidationClassNames(validationResult),[validationResult]);const fieldBasedClassName=useMemo(()=>fieldData?.className??\"\",[fieldData?.className]);const operatorBasedClassName=useMemo(()=>operatorObject?.className??\"\",[operatorObject?.className]);const outerClassName=useMemo(()=>clsx(getRuleClassname(rule,{fieldData}),fieldBasedClassName,operatorBasedClassName,suppressStandardClassnames||standardClassnames.rule,classNamesProp.rule,// custom conditional classes\ndisabled&&classNamesProp.disabled,isDragging&&classNamesProp.dndDragging,isOver&&classNamesProp.dndOver,isOver&&dropEffect===\"copy\"&&classNamesProp.dndCopy,isOver&&groupItems&&classNamesProp.dndGroup,// standard conditional classes\nsuppressStandardClassnames||{[standardClassnames.disabled]:disabled,[standardClassnames.dndDragging]:isDragging,[standardClassnames.dndOver]:isOver,[standardClassnames.dndCopy]:isOver&&dropEffect===\"copy\",[standardClassnames.dndGroup]:isOver&&groupItems},validationClassName),[classNamesProp.disabled,classNamesProp.dndCopy,classNamesProp.dndDragging,classNamesProp.dndGroup,classNamesProp.dndOver,classNamesProp.rule,disabled,dropEffect,fieldBasedClassName,fieldData,getRuleClassname,groupItems,isDragging,isOver,operatorBasedClassName,rule,suppressStandardClassnames,validationClassName]);return{...props,classNames,cloneRule,disabled,dndRef,dragMonitorId,dragRef,dropMonitorId,fieldData,generateOnChangeHandler:getChangeHandler,onChangeField,onChangeOperator,onChangeValueSource,onChangeValue,hideValueControls,inputType,operators,outerClassName,removeRule,rule,shiftRuleUp,shiftRuleDown,toggleLockRule,validationResult,valueEditorSeparator,valueEditorType,values,valueSourceOptions,valueSources};};","import{c as _c}from\"react-compiler-runtime\";import{jsx}from\"react/jsx-runtime\";import{QueryBuilderContext}from\"../context\";import{useMergedContext}from\"../hooks/useMergedContext\";export const getCompatContextProvider=gccpProps=>{const QBContextWrapper=props=>{const $=_c(3);const rqbContext=useMergedContext(gccpProps);let t0;if($[0]!==props.children||$[1]!==rqbContext){t0=jsx(QueryBuilderContext.Provider,{value:rqbContext,children:props.children});$[0]=props.children;$[1]=rqbContext;$[2]=t0;}else{t0=$[2];}return t0;};const QBContextInner=props=>{const $=_c(3);const rqbContext=useMergedContext(props);let t0;if($[0]!==props.children||$[1]!==rqbContext){t0=jsx(QueryBuilderContext.Provider,{value:rqbContext,children:props.children});$[0]=props.children;$[1]=rqbContext;$[2]=t0;}else{t0=$[2];}return t0;};return props=>{return/* @__PURE__ */jsx(QBContextWrapper,{children:/* @__PURE__ */jsx(QBContextInner,{...props,children:props.children})});};};","import{standardClassnames}from\"../defaults\";export const getValidationClassNames=validationResult=>{const valid=typeof validationResult===\"boolean\"?validationResult:typeof validationResult===\"object\"&&validationResult!==null?validationResult.valid:null;return typeof valid===\"boolean\"?valid?standardClassnames.valid:standardClassnames.invalid:\"\";};","import{toFullOption}from\"./optGroupUtils\";const defaultValueSourcesArray=[\"value\"];const dummyFD={name:\"name\",value:\"name\",valueSources:null,label:\"label\"};export const getValueSourcesUtil=(fieldData,operator,getValueSources)=>{const fd=fieldData?toFullOption(fieldData):(/* istanbul ignore else */dummyFD);if(fd.valueSources){if(typeof fd.valueSources===\"function\"){return fd.valueSources(operator);}return fd.valueSources;}if(getValueSources){const vals=getValueSources(fd.value,operator,{fieldData:toFullOption(fd)});if(vals)return vals;}return defaultValueSourcesArray;};","import{clsx}from\"./clsx\";const joinClassnamesByName=(name,args)=>clsx(args.map(c=>clsx(c?.[name])));export const mergeClassnames=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}return{queryBuilder:joinClassnamesByName(\"queryBuilder\",args),ruleGroup:joinClassnamesByName(\"ruleGroup\",args),header:joinClassnamesByName(\"header\",args),body:joinClassnamesByName(\"body\",args),combinators:joinClassnamesByName(\"combinators\",args),addRule:joinClassnamesByName(\"addRule\",args),addGroup:joinClassnamesByName(\"addGroup\",args),cloneRule:joinClassnamesByName(\"cloneRule\",args),cloneGroup:joinClassnamesByName(\"cloneGroup\",args),removeGroup:joinClassnamesByName(\"removeGroup\",args),rule:joinClassnamesByName(\"rule\",args),fields:joinClassnamesByName(\"fields\",args),operators:joinClassnamesByName(\"operators\",args),value:joinClassnamesByName(\"value\",args),removeRule:joinClassnamesByName(\"removeRule\",args),notToggle:joinClassnamesByName(\"notToggle\",args),shiftActions:joinClassnamesByName(\"shiftActions\",args),dragHandle:joinClassnamesByName(\"dragHandle\",args),lockRule:joinClassnamesByName(\"lockRule\",args),lockGroup:joinClassnamesByName(\"lockGroup\",args),valueSource:joinClassnamesByName(\"valueSource\",args),actionElement:joinClassnamesByName(\"actionElement\",args),valueSelector:joinClassnamesByName(\"valueSelector\",args),betweenRules:joinClassnamesByName(\"betweenRules\",args),valid:joinClassnamesByName(\"valid\",args),invalid:joinClassnamesByName(\"invalid\",args),dndDragging:joinClassnamesByName(\"dndDragging\",args),dndOver:joinClassnamesByName(\"dndOver\",args),dndCopy:joinClassnamesByName(\"dndCopy\",args),dndGroup:joinClassnamesByName(\"dndGroup\",args),disabled:joinClassnamesByName(\"disabled\",args),valueListItem:joinClassnamesByName(\"valueListItem\",args),branches:joinClassnamesByName(\"branches\",args)};};","import{produce}from\"immer\";import{defaultTranslations}from\"../defaults\";import{objectEntries,objectKeys}from\"./objectUtils\";export const mergeTranslations=function(base){for(var _len=arguments.length,otherTranslations=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){otherTranslations[_key-1]=arguments[_key];}return produce(base,draft=>{for(const translations of otherTranslations){if(translations){for(const t of objectKeys(translations)){if(draft[t]){Object.assign(draft[t],translations[t]);}else{Object.assign(draft,{[t]:translations[t]});}}}}});};export const mergeTranslation=(el,keyPropContextMap,finalize)=>{const finalKeys=objectEntries(keyPropContextMap).map(_ref=>{let[key,[pT,cT]]=_ref;return[key,pT??cT??(finalize?defaultTranslations:{})[el]?.[key]];}).filter(k=>!!k[1]);return finalKeys.length>0?{[el]:Object.fromEntries(finalKeys)}:void 0;};","export const objectKeys=Object.keys;export const objectEntries=Object.entries;","import{produce}from\"immer\";import{generateID}from\"./generateID\";import{isRuleGroup}from\"./isRuleGroup\";export const prepareRule=function(rule){let{idGenerator=generateID}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};return produce(rule,draft=>{if(!draft.id){draft.id=idGenerator();}});};export const prepareRuleGroup=function(queryObject){let{idGenerator=generateID}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};return produce(queryObject,draft=>{if(!draft.id){draft.id=idGenerator();}draft.rules=draft.rules.map(r=>typeof r===\"string\"?r:isRuleGroup(r)?prepareRuleGroup(r,{idGenerator}):prepareRule(r,{idGenerator}));});};export const prepareRuleOrGroup=function(rg){let{idGenerator=generateID}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};return isRuleGroup(rg)?prepareRuleGroup(rg,{idGenerator}):prepareRule(rg,{idGenerator});};","import{produce}from\"immer\";import{defaultCombinators}from\"../defaults\";import{generateID}from\"./generateID\";import{isRuleGroup,isRuleGroupType,isRuleGroupTypeIC}from\"./isRuleGroup\";import{getFirstOption}from\"./optGroupUtils\";import{findPath,getCommonAncestorPath,getParentPath,pathsAreEqual}from\"./pathUtils\";import{prepareRuleOrGroup}from\"./prepareQueryObjects\";import{regenerateIDs}from\"./regenerateIDs\";export const add=function(query,ruleOrGroup,parentPath){let{combinators=defaultCombinators,combinatorPreceding,idGenerator=generateID}=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};return produce(query,draft=>{const parent=findPath(parentPath,draft);if(!parent||!isRuleGroup(parent))return;if(isRuleGroupTypeIC(parent)&&parent.rules.length>0){const prevCombinator=parent.rules.at(-2);parent.rules.push(// @ts-expect-error This is technically a type violation until the next push\n// to the rules array, but that happens immediately and unconditionally so\n// there's no significant risk.\ncombinatorPreceding??(typeof prevCombinator===\"string\"?prevCombinator:getFirstOption(combinators)));}parent.rules.push(prepareRuleOrGroup(ruleOrGroup,{idGenerator}));});};export const update=function(query,prop,value,path){let{resetOnFieldChange=true,resetOnOperatorChange=false,getRuleDefaultOperator=()=>\"=\",getValueSources=()=>[\"value\"],getRuleDefaultValue=()=>\"\"}=arguments.length>4&&arguments[4]!==undefined?arguments[4]:{};return produce(query,draft=>{if(prop===\"combinator\"&&!isRuleGroupType(draft)){const parentRules=findPath(getParentPath(path),draft).rules;if(path.at(-1)%2===1){parentRules[path.at(-1)]=value;}return;}const ruleOrGroup=findPath(path,draft);if(!ruleOrGroup)return;const isGroup=isRuleGroup(ruleOrGroup);if(ruleOrGroup[prop]===value)return;if(prop!==\"valueSource\"){ruleOrGroup[prop]=value;}if(isGroup)return;let resetValueSource=false;let resetValue=false;if(resetOnFieldChange&&prop===\"field\"){ruleOrGroup.operator=getRuleDefaultOperator(value);resetValueSource=true;resetValue=true;}if(resetOnOperatorChange&&prop===\"operator\"){resetValueSource=true;resetValue=true;}const defaultValueSource=getValueSources(ruleOrGroup.field,ruleOrGroup.operator)[0];if(resetValueSource&&ruleOrGroup.valueSource&&defaultValueSource!==ruleOrGroup.valueSource||prop===\"valueSource\"&&value!==ruleOrGroup.valueSource){resetValue=!!ruleOrGroup.valueSource||!ruleOrGroup.valueSource&&value!==defaultValueSource;ruleOrGroup.valueSource=resetValueSource?defaultValueSource:value;}if(resetValue){ruleOrGroup.value=getRuleDefaultValue(ruleOrGroup);}});};export const remove=(query,path)=>{if(// Can't remove the root group\npath.length===0||// Can't independently remove independent combinators\n!isRuleGroupType(query)&&!findPath(path,query)){return query;}return produce(query,draft=>{const index=path.at(-1);const parent=findPath(getParentPath(path),draft);if(parent&&isRuleGroup(parent)){if(!isRuleGroupType(parent)&&parent.rules.length>1){const idxStartDelete=index===0?0:index-1;parent.rules.splice(idxStartDelete,2);}else{parent.rules.splice(index,1);}}});};const getNextPath=(query,currentPath,newPathOrShiftDirection)=>{if(Array.isArray(newPathOrShiftDirection)){return newPathOrShiftDirection;}const ic=isRuleGroupTypeIC(query);if(newPathOrShiftDirection===\"up\"){if(pathsAreEqual(currentPath,[0])){return currentPath;}else if(currentPath.at(-1)===0){const parentPath=getParentPath(currentPath);return[...getParentPath(parentPath),Math.max(0,parentPath.at(-1)-(ic?1:0))];}else{const evaluationPath=[...getParentPath(currentPath),Math.max(0,currentPath.at(-1)-(ic?2:1))];const entityAtTarget=findPath(evaluationPath,query);if(isRuleGroup(entityAtTarget)){return[...evaluationPath,entityAtTarget.rules.length];}else{const targetPath=[...getParentPath(currentPath),Math.max(0,currentPath.at(-1)-(ic?3:1))];return targetPath;}}}else if(newPathOrShiftDirection===\"down\"){if(pathsAreEqual([query.rules.length-1],currentPath)){return currentPath;}else if(currentPath.at(-1)===findPath(getParentPath(currentPath),query).rules.length-1){const parentPath=getParentPath(currentPath);return[...getParentPath(parentPath),parentPath.at(-1)+1];}else{const evaluationPath=[...getParentPath(currentPath),currentPath.at(-1)+(ic?2:1)];const entityToEvaluate=findPath(evaluationPath,query);if(isRuleGroup(entityToEvaluate)){return[...evaluationPath,0];}else{const targetPath=[...getParentPath(currentPath),currentPath.at(-1)+(ic?3:2)];return targetPath;}}}return currentPath;};export const move=function(query,oldPath,newPath){let{clone=false,combinators=defaultCombinators,idGenerator=generateID}=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};const nextPath=getNextPath(query,oldPath,newPath);if(oldPath.length===0||pathsAreEqual(oldPath,nextPath)||!findPath(getParentPath(nextPath),query)){return query;}const ruleOrGroupOriginal=findPath(oldPath,query);if(!ruleOrGroupOriginal){return query;}const ruleOrGroup=clone?regenerateIDs(ruleOrGroupOriginal,{idGenerator}):ruleOrGroupOriginal;return produce(query,draft=>{const independentCombinators=isRuleGroupTypeIC(draft);const parentOfRuleToRemove=findPath(getParentPath(oldPath),draft);const ruleToRemoveIndex=oldPath.at(-1);const oldPrevCombinator=independentCombinators&&ruleToRemoveIndex>0?parentOfRuleToRemove.rules[ruleToRemoveIndex-1]:null;const oldNextCombinator=independentCombinators&&ruleToRemoveIndex<parentOfRuleToRemove.rules.length-1?parentOfRuleToRemove.rules[ruleToRemoveIndex+1]:null;if(!clone){const idxStartDelete=independentCombinators?Math.max(0,ruleToRemoveIndex-1):ruleToRemoveIndex;const deleteLength=independentCombinators?2:1;parentOfRuleToRemove.rules.splice(idxStartDelete,deleteLength);}const newNewPath=[...nextPath];const commonAncestorPath=getCommonAncestorPath(oldPath,nextPath);if(!clone&&oldPath.length===commonAncestorPath.length+1&&nextPath[commonAncestorPath.length]>oldPath[commonAncestorPath.length]){newNewPath[commonAncestorPath.length]-=independentCombinators?2:1;}const newNewParentPath=getParentPath(newNewPath);const parentToInsertInto=findPath(newNewParentPath,draft);const newIndex=newNewPath.at(-1);const insertRuleOrGroup=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}return parentToInsertInto.rules.splice(newIndex,0,...args);};if(parentToInsertInto.rules.length===0||!independentCombinators){insertRuleOrGroup(ruleOrGroup);}else{if(newIndex===0){if(ruleToRemoveIndex===0&&oldNextCombinator){insertRuleOrGroup(ruleOrGroup,oldNextCombinator);}else{const newNextCombinator=parentToInsertInto.rules[1]??oldPrevCombinator??getFirstOption(combinators);insertRuleOrGroup(ruleOrGroup,newNextCombinator);}}else{if(oldPrevCombinator){insertRuleOrGroup(oldPrevCombinator,ruleOrGroup);}else{const newPrevCombinator=parentToInsertInto.rules[newIndex-2]??oldNextCombinator??getFirstOption(combinators);insertRuleOrGroup(newPrevCombinator,ruleOrGroup);}}}});};export const insert=function(query,ruleOrGroup,path){let{combinators=defaultCombinators,combinatorPreceding,combinatorSucceeding,idGenerator=generateID,replace=false}=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};return produce(query,draft=>{const parentToInsertInto=findPath(getParentPath(path),draft);if(!parentToInsertInto||!isRuleGroup(parentToInsertInto))return;const rorg=regenerateIDs(ruleOrGroup,{idGenerator});const independentCombinators=isRuleGroupTypeIC(draft);const newIndex=path.at(-1);const insertRuleOrGroup=function(idx){for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}return parentToInsertInto.rules.splice(idx,replace?args.length:0,...args);};if(parentToInsertInto.rules.length===0||!independentCombinators){insertRuleOrGroup(newIndex,rorg);}else if(replace&&independentCombinators){insertRuleOrGroup(newIndex+newIndex%2,rorg);}else{if(newIndex===0){if(rorg.path?.at(-1)===0&&combinatorSucceeding){insertRuleOrGroup(newIndex,rorg,combinatorSucceeding);}else{const newNextCombinator=parentToInsertInto.rules[1]??combinatorPreceding??getFirstOption(combinators);insertRuleOrGroup(newIndex,rorg,newNextCombinator);}}else{const normalizedNewIndex=newIndex%2===0?newIndex-1:newIndex;if(combinatorPreceding){insertRuleOrGroup(normalizedNewIndex,combinatorPreceding,rorg);}else{const newPrevCombinator=parentToInsertInto.rules[normalizedNewIndex-2]??combinatorSucceeding??getFirstOption(combinators);insertRuleOrGroup(normalizedNewIndex,newPrevCombinator,rorg);}}}});};export const group=function(query,sourcePath,targetPath){let{clone=false,combinators=defaultCombinators,idGenerator=generateID}=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};const nextPath=getNextPath(query,sourcePath,targetPath);if(sourcePath.length===0||pathsAreEqual(sourcePath,nextPath)||!findPath(getParentPath(nextPath),query)){return query;}const sourceRuleOrGroupOriginal=findPath(sourcePath,query);const targetRuleOrGroup=findPath(targetPath,query);if(!sourceRuleOrGroupOriginal||!targetRuleOrGroup){return query;}const sourceRuleOrGroup=clone?regenerateIDs(sourceRuleOrGroupOriginal,{idGenerator}):sourceRuleOrGroupOriginal;return produce(query,draft=>{const independentCombinators=isRuleGroupTypeIC(draft);const parentOfRuleToRemove=findPath(getParentPath(sourcePath),draft);const ruleToRemoveIndex=sourcePath.at(-1);if(!clone){const idxStartDelete=independentCombinators?Math.max(0,ruleToRemoveIndex-1):ruleToRemoveIndex;const deleteLength=independentCombinators?2:1;parentOfRuleToRemove.rules.splice(idxStartDelete,deleteLength);}const newNewPath=[...nextPath];const commonAncestorPath=getCommonAncestorPath(sourcePath,nextPath);if(!clone&&sourcePath.length===commonAncestorPath.length+1&&nextPath[commonAncestorPath.length]>sourcePath[commonAncestorPath.length]){newNewPath[commonAncestorPath.length]-=independentCombinators?2:1;}const newNewParentPath=getParentPath(newNewPath);const parentOfTargetPath=findPath(newNewParentPath,draft);const targetPathIndex=newNewPath.at(-1);parentOfTargetPath.rules.splice(targetPathIndex,1,prepareRuleOrGroup(independentCombinators?{rules:[targetRuleOrGroup,getFirstOption(combinators),sourceRuleOrGroup]}:{combinator:getFirstOption(combinators),rules:[targetRuleOrGroup,sourceRuleOrGroup]// eslint-disable-next-line @typescript-eslint/no-explicit-any\n},{idGenerator}// eslint-disable-next-line @typescript-eslint/no-explicit-any\n));});};","import{generateID}from\"./generateID\";import{isRuleGroup,isRuleGroupType}from\"./isRuleGroup\";import{isPojo}from\"./misc\";export const regenerateID=function(rule){let{idGenerator=generateID}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};return structuredClone({...rule,id:idGenerator()});};export const regenerateIDs=function(ruleOrGroup){let{idGenerator=generateID}=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(!isPojo(ruleOrGroup))return ruleOrGroup;if(!isRuleGroup(ruleOrGroup)){return structuredClone({...ruleOrGroup,id:idGenerator()});}if(isRuleGroupType(ruleOrGroup)){const rules2=ruleOrGroup.rules.map(r=>isRuleGroup(r)?regenerateIDs(r,{idGenerator}):regenerateID(r,{idGenerator}));return{...ruleOrGroup,id:idGenerator(),rules:rules2};}const rules=ruleOrGroup.rules.map(r=>typeof r===\"string\"?r:isRuleGroup(r)?regenerateIDs(r,{idGenerator}):regenerateID(r,{idGenerator}));return{...ruleOrGroup,id:idGenerator(),rules};};","import{jsx}from\"react/jsx-runtime\";import{isOptionGroupArray}from\"./optGroupUtils\";export const toOptions=arr=>isOptionGroupArray(arr)?arr.map(og=>/* @__PURE__ */jsx(\"optgroup\",{label:og.label,children:og.options.map(opt=>/* @__PURE__ */jsx(\"option\",{value:opt.name,disabled:opt.disabled,children:opt.label},opt.name))},og.label)):Array.isArray(arr)?arr.map(opt=>/* @__PURE__ */jsx(\"option\",{value:opt.name,disabled:opt.disabled,children:opt.label},opt.name)):null;","import{produce}from\"immer\";import{isRuleGroup,isRuleGroupType}from\"./isRuleGroup\";const remapProperties=(obj,propertyMap,deleteRemappedProperties)=>produce(obj,draft=>{for(const[k,v]of Object.entries(propertyMap)){if(v===false){delete draft[k];}else if(!!v&&k!==v&&k in draft){draft[v]=draft[k];if(deleteRemappedProperties){delete draft[k];}}}});export function transformQuery(query){let options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};const{ruleProcessor=r=>r,ruleGroupProcessor=rg=>rg,propertyMap={},combinatorMap={},operatorMap={},omitPath=false,deleteRemappedProperties=true}=options;const processGroup=rg=>({...ruleGroupProcessor(remapProperties({...rg,...(isRuleGroupType(rg)?{combinator:combinatorMap[rg.combinator]??rg.combinator}:{})},propertyMap,deleteRemappedProperties)),...(propertyMap[\"rules\"]===false?null:{// eslint-disable-next-line @typescript-eslint/no-explicit-any\n[propertyMap[\"rules\"]??\"rules\"]:rg.rules.map((r,idx)=>{const pathObject=omitPath?null:{path:[...rg.path,idx]};if(typeof r===\"string\"){return combinatorMap[r]??r;}else if(isRuleGroup(r)){return processGroup({...r,...pathObject});}return ruleProcessor(remapProperties({...r,...pathObject,...(\"operator\"in r?{operator:operatorMap[r.operator]??r.operator}:{})},propertyMap,deleteRemappedProperties));})})});return processGroup({...query,...(omitPath?null:{path:[]})});}","import{c as _c}from\"react-compiler-runtime\";import{Fragment,jsx,jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{Fragment as Fragment2,useCallback,useMemo}from\"react\";import{standardClassnames,TestID}from\"../defaults\";import{useDeprecatedProps}from\"../hooks/useDeprecatedProps\";import{useReactDndWarning}from\"../hooks/useReactDndWarning\";import{useStopEventPropagation}from\"../hooks/useStopEventPropagation\";import{getFirstOption,getOption,getParentPath,getValidationClassNames,isRuleGroup,isRuleGroupType,pathsAreEqual}from\"../utils\";import{clsx}from\"../utils/clsx\";export const RuleGroup=/*#__PURE__*/React.memo(function RuleGroup2(props){const $=_c(11);const rg=useRuleGroup(props);const{schema:t0}=rg;const{controls:t1}=t0;const{ruleGroupBodyElements:RuleGroupBodyElements,ruleGroupHeaderElements:RuleGroupHeaderElements}=t1;const addRule=useStopEventPropagation(rg.addRule);const addGroup=useStopEventPropagation(rg.addGroup);const cloneGroup=useStopEventPropagation(rg.cloneGroup);const toggleLockGroup=useStopEventPropagation(rg.toggleLockGroup);const removeGroup=useStopEventPropagation(rg.removeGroup);const shiftGroupUp=useStopEventPropagation(rg.shiftGroupUp);const shiftGroupDown=useStopEventPropagation(rg.shiftGroupDown);let t2;if($[0]!==RuleGroupBodyElements||$[1]!==RuleGroupHeaderElements||$[2]!==addGroup||$[3]!==addRule||$[4]!==cloneGroup||$[5]!==removeGroup||$[6]!==rg||$[7]!==shiftGroupDown||$[8]!==shiftGroupUp||$[9]!==toggleLockGroup){t2=jsxs(\"div\",{ref:rg.previewRef,title:rg.accessibleDescription,className:rg.outerClassName,\"data-testid\":TestID.ruleGroup,\"data-dragmonitorid\":rg.dragMonitorId,\"data-dropmonitorid\":rg.dropMonitorId,\"data-rule-group-id\":rg.id,\"data-level\":rg.path.length,\"data-path\":JSON.stringify(rg.path),children:[jsx(\"div\",{ref:rg.dropRef,className:rg.classNames.header,children:jsx(RuleGroupHeaderElements,{...rg,addRule,addGroup,cloneGroup,toggleLockGroup,removeGroup,shiftGroupUp,shiftGroupDown})}),jsx(\"div\",{className:rg.classNames.body,children:jsx(RuleGroupBodyElements,{...rg,addRule,addGroup,cloneGroup,toggleLockGroup,removeGroup,shiftGroupUp,shiftGroupDown})})]});$[0]=RuleGroupBodyElements;$[1]=RuleGroupHeaderElements;$[2]=addGroup;$[3]=addRule;$[4]=cloneGroup;$[5]=removeGroup;$[6]=rg;$[7]=shiftGroupDown;$[8]=shiftGroupUp;$[9]=toggleLockGroup;$[10]=t2;}else{t2=$[10];}return t2;});export const RuleGroupHeaderComponents=/*#__PURE__*/React.memo(function RuleGroupHeaderComponents2(rg){const{schema:{controls:{shiftActions:ShiftActionsControlElement,dragHandle:DragHandleControlElement,combinatorSelector:CombinatorSelectorControlElement,notToggle:NotToggleControlElement,addRuleAction:AddRuleActionControlElement,addGroupAction:AddGroupActionControlElement,cloneGroupAction:CloneGroupActionControlElement,lockGroupAction:LockGroupActionControlElement,removeGroupAction:RemoveGroupActionControlElement}}}=rg;return/* @__PURE__ */jsxs(Fragment,{children:[rg.schema.showShiftActions&&rg.path.length>0&&/* @__PURE__ */jsx(ShiftActionsControlElement,{testID:TestID.shiftActions,level:rg.path.length,path:rg.path,titles:{shiftUp:rg.translations.shiftActionUp.title,shiftDown:rg.translations.shiftActionDown.title},labels:{shiftUp:rg.translations.shiftActionUp.label,shiftDown:rg.translations.shiftActionDown.label},className:rg.classNames.shiftActions,disabled:rg.disabled,shiftUp:rg.shiftGroupUp,shiftDown:rg.shiftGroupDown,shiftUpDisabled:rg.shiftUpDisabled,shiftDownDisabled:rg.shiftDownDisabled,context:rg.context,validation:rg.validationResult,schema:rg.schema,ruleOrGroup:rg.ruleGroup},TestID.shiftActions),rg.path.length>0&&rg.schema.enableDragAndDrop&&/* @__PURE__ */jsx(DragHandleControlElement,{testID:TestID.dragHandle,ref:rg.dragRef,level:rg.path.length,path:rg.path,title:rg.translations.dragHandle.title,label:rg.translations.dragHandle.label,className:rg.classNames.dragHandle,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,schema:rg.schema,ruleOrGroup:rg.ruleGroup},TestID.dragHandle),!rg.schema.showCombinatorsBetweenRules&&!rg.schema.independentCombinators&&/* @__PURE__ */jsx(CombinatorSelectorControlElement,{testID:TestID.combinators,options:rg.schema.combinators,value:rg.combinator,title:rg.translations.combinators.title,className:rg.classNames.combinators,handleOnChange:rg.onCombinatorChange,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,schema:rg.schema},TestID.combinators),rg.schema.showNotToggle&&/* @__PURE__ */jsx(NotToggleControlElement,{testID:TestID.notToggle,className:rg.classNames.notToggle,title:rg.translations.notToggle.title,label:rg.translations.notToggle.label,checked:rg.ruleGroup.not,handleOnChange:rg.onNotToggleChange,level:rg.path.length,disabled:rg.disabled,path:rg.path,context:rg.context,validation:rg.validationResult,schema:rg.schema,ruleGroup:rg.ruleGroup},TestID.notToggle),/* @__PURE__ */jsx(AddRuleActionControlElement,{testID:TestID.addRule,label:rg.translations.addRule.label,title:rg.translations.addRule.title,className:rg.classNames.addRule,handleOnClick:rg.addRule,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,ruleOrGroup:rg.ruleGroup,schema:rg.schema},TestID.addRule),/* @__PURE__ */jsx(AddGroupActionControlElement,{testID:TestID.addGroup,label:rg.translations.addGroup.label,title:rg.translations.addGroup.title,className:rg.classNames.addGroup,handleOnClick:rg.addGroup,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,ruleOrGroup:rg.ruleGroup,schema:rg.schema},TestID.addGroup),rg.schema.showCloneButtons&&rg.path.length>0&&/* @__PURE__ */jsx(CloneGroupActionControlElement,{testID:TestID.cloneGroup,label:rg.translations.cloneRuleGroup.label,title:rg.translations.cloneRuleGroup.title,className:rg.classNames.cloneGroup,handleOnClick:rg.cloneGroup,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,ruleOrGroup:rg.ruleGroup,schema:rg.schema},TestID.cloneGroup),rg.schema.showLockButtons&&/* @__PURE__ */jsx(LockGroupActionControlElement,{testID:TestID.lockGroup,label:rg.translations.lockGroup.label,title:rg.translations.lockGroup.title,className:rg.classNames.lockGroup,handleOnClick:rg.toggleLockGroup,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,disabledTranslation:rg.parentDisabled?void 0:rg.translations.lockGroupDisabled,context:rg.context,validation:rg.validationResult,ruleOrGroup:rg.ruleGroup,schema:rg.schema},TestID.lockGroup),rg.path.length>0&&/* @__PURE__ */jsx(RemoveGroupActionControlElement,{testID:TestID.removeGroup,label:rg.translations.removeGroup.label,title:rg.translations.removeGroup.title,className:rg.classNames.removeGroup,handleOnClick:rg.removeGroup,rules:rg.ruleGroup.rules,level:rg.path.length,path:rg.path,disabled:rg.disabled,context:rg.context,validation:rg.validationResult,ruleOrGroup:rg.ruleGroup,schema:rg.schema},TestID.removeGroup)]});});export const RuleGroupBodyComponents=/*#__PURE__*/React.memo(function RuleGroupBodyComponents2(rg){const{schema:{controls:{combinatorSelector:CombinatorSelectorControlElement,inlineCombinator:InlineCombinatorControlElement,ruleGroup:RuleGroupControlElement,rule:RuleControlElement}}}=rg;return/* @__PURE__ */jsx(Fragment,{children:rg.ruleGroup.rules.map((r,idx,_ref)=>{let{length:ruleArrayLength}=_ref;const thisPathMemo=rg.pathsMemo[idx];const thisPath=thisPathMemo.path;const thisPathDisabled=thisPathMemo.disabled||typeof r!==\"string\"&&r.disabled;const shiftUpDisabled=pathsAreEqual([0],thisPath);const shiftDownDisabled=rg.path.length===0&&idx===ruleArrayLength-1;const key=typeof r===\"string\"?[...thisPath,r].join(\"-\"):r.id;return/* @__PURE__ */jsxs(Fragment2,{children:[idx>0&&!rg.schema.independentCombinators&&rg.schema.showCombinatorsBetweenRules&&/* @__PURE__ */jsx(InlineCombinatorControlElement,{options:rg.schema.combinators,value:rg.combinator,title:rg.translations.combinators.title,className:rg.classNames.combinators,handleOnChange:rg.onCombinatorChange,rules:rg.ruleGroup.rules,level:rg.path.length,context:rg.context,validation:rg.validationResult,component:CombinatorSelectorControlElement,path:thisPath,disabled:rg.disabled,schema:rg.schema},TestID.inlineCombinator),typeof r===\"string\"?/* @__PURE__ */jsx(InlineCombinatorControlElement,{options:rg.schema.combinators,value:r,title:rg.translations.combinators.title,className:rg.classNames.combinators,handleOnChange:val=>rg.onIndependentCombinatorChange(val,idx),rules:rg.ruleGroup.rules,level:rg.path.length,context:rg.context,validation:rg.validationResult,component:CombinatorSelectorControlElement,path:thisPath,disabled:thisPathDisabled,schema:rg.schema},`${TestID.inlineCombinator}-independent`):isRuleGroup(r)?/* @__PURE__ */jsx(RuleGroupControlElement,{id:r.id,schema:rg.schema,actions:rg.actions,path:thisPath,translations:rg.translations,ruleGroup:r,rules:r.rules,combinator:isRuleGroupType(r)?r.combinator:void 0,not:!!r.not,disabled:thisPathDisabled,parentDisabled:rg.parentDisabled||rg.disabled,shiftUpDisabled,shiftDownDisabled,context:rg.context},TestID.ruleGroup):/* @__PURE__ */jsx(RuleControlElement,{id:r.id,rule:r,field:r.field,operator:r.operator,value:r.value,valueSource:r.valueSource,schema:rg.schema,actions:rg.actions,path:thisPath,disabled:thisPathDisabled,parentDisabled:rg.parentDisabled||rg.disabled,translations:rg.translations,shiftUpDisabled,shiftDownDisabled,context:rg.context},TestID.rule)]},key);})});});export const useRuleGroup=props=>{const{id,path,ruleGroup:ruleGroupProp,schema:{qbId,accessibleDescriptionGenerator,classNames:classNamesProp,combinators,createRule,createRuleGroup,disabledPaths,independentCombinators,validationMap,enableDragAndDrop,getRuleGroupClassname,suppressStandardClassnames},actions:{onGroupAdd,onGroupRemove,onPropChange,onRuleAdd,moveRule},disabled:disabledProp,parentDisabled,shiftUpDisabled,shiftDownDisabled,combinator:combinatorProp,rules:rulesProp,not:notProp,// Drag-and-drop\ndropEffect=\"move\",groupItems=false,dragMonitorId=\"\",dropMonitorId=\"\",previewRef=null,dragRef=null,dropRef=null,isDragging=false,isOver=false}=props;useDeprecatedProps(\"ruleGroup\",!ruleGroupProp);useReactDndWarning(enableDragAndDrop,!!(dragMonitorId||dropMonitorId||previewRef||dragRef||dropRef));const disabled=!!parentDisabled||!!disabledProp;const combinator=useMemo(()=>ruleGroupProp&&isRuleGroupType(ruleGroupProp)?ruleGroupProp.combinator:ruleGroupProp?getFirstOption(combinators):combinatorProp??getFirstOption(combinators),[combinatorProp,combinators,ruleGroupProp]);const ruleGroup=useMemo(()=>{if(ruleGroupProp){if(ruleGroupProp.combinator===combinator||independentCombinators){return ruleGroupProp;}const newRG=structuredClone(ruleGroupProp);newRG.combinator=combinator;return newRG;}return{rules:rulesProp,not:notProp};},[combinator,independentCombinators,notProp,ruleGroupProp,rulesProp]);const classNames=useMemo(()=>({header:clsx(suppressStandardClassnames||standardClassnames.header,classNamesProp.header,isOver&&dropEffect===\"copy\"&&classNamesProp.dndCopy,suppressStandardClassnames||{[standardClassnames.dndOver]:isOver,[standardClassnames.dndCopy]:isOver&&dropEffect===\"copy\"}),shiftActions:clsx(suppressStandardClassnames||standardClassnames.shiftActions,classNamesProp.shiftActions),dragHandle:clsx(suppressStandardClassnames||standardClassnames.dragHandle,classNamesProp.dragHandle),combinators:clsx(suppressStandardClassnames||standardClassnames.combinators,classNamesProp.valueSelector,classNamesProp.combinators),notToggle:clsx(suppressStandardClassnames||standardClassnames.notToggle,classNamesProp.notToggle),addRule:clsx(suppressStandardClassnames||standardClassnames.addRule,classNamesProp.actionElement,classNamesProp.addRule),addGroup:clsx(suppressStandardClassnames||standardClassnames.addGroup,classNamesProp.actionElement,classNamesProp.addGroup),cloneGroup:clsx(suppressStandardClassnames||standardClassnames.cloneGroup,classNamesProp.actionElement,classNamesProp.cloneGroup),lockGroup:clsx(suppressStandardClassnames||standardClassnames.lockGroup,classNamesProp.actionElement,classNamesProp.lockGroup),removeGroup:clsx(suppressStandardClassnames||standardClassnames.removeGroup,classNamesProp.actionElement,classNamesProp.removeGroup),body:clsx(suppressStandardClassnames||standardClassnames.body,classNamesProp.body)}),[classNamesProp.actionElement,classNamesProp.addGroup,classNamesProp.addRule,classNamesProp.body,classNamesProp.cloneGroup,classNamesProp.combinators,classNamesProp.dndCopy,classNamesProp.dragHandle,classNamesProp.header,classNamesProp.lockGroup,classNamesProp.notToggle,classNamesProp.removeGroup,classNamesProp.shiftActions,classNamesProp.valueSelector,dropEffect,isOver,suppressStandardClassnames]);const onCombinatorChange=useCallback(value=>{if(!disabled){onPropChange(\"combinator\",value,path);}},[disabled,onPropChange,path]);const onIndependentCombinatorChange=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(value_0,index,_context)=>{if(!disabled){onPropChange(\"combinator\",value_0,[...path,index]);}},[disabled,onPropChange,path]);const onNotToggleChange=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(checked,_context_0)=>{if(!disabled){onPropChange(\"not\",checked,path);}},[disabled,onPropChange,path]);const addRule=useCallback((_e,context)=>{if(!disabled){const newRule=createRule();onRuleAdd(newRule,path,context);}},[createRule,disabled,onRuleAdd,path]);const addGroup=useCallback((_e_0,context_0)=>{if(!disabled){const newGroup=createRuleGroup(independentCombinators);onGroupAdd(newGroup,path,context_0);}},[createRuleGroup,disabled,independentCombinators,onGroupAdd,path]);const cloneGroup=useCallback(()=>{if(!disabled){const newPath=[...getParentPath(path),path.at(-1)+1];moveRule(path,newPath,true);}},[disabled,moveRule,path]);const shiftGroupUp=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(event,_context_1)=>{if(!disabled&&!shiftUpDisabled){moveRule(path,\"up\",event?.altKey);}},[disabled,moveRule,path,shiftUpDisabled]);const shiftGroupDown=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(event_0,_context_2)=>{if(!disabled&&!shiftDownDisabled){moveRule(path,\"down\",event_0?.altKey);}},[disabled,moveRule,path,shiftDownDisabled]);const toggleLockGroup=useCallback(()=>{onPropChange(\"disabled\",!disabled,path);},[disabled,onPropChange,path]);const removeGroup=useCallback(()=>{if(!disabled){onGroupRemove(path);}},[disabled,onGroupRemove,path]);const validationResult=useMemo(()=>validationMap[id??/* istanbul ignore next */\"\"],[id,validationMap]);const validationClassName=useMemo(()=>getValidationClassNames(validationResult),[validationResult]);const combinatorBasedClassName=useMemo(()=>independentCombinators?null:getOption(combinators,combinator)?.className??\"\",[combinator,combinators,independentCombinators]);const ruleGroupClassname=useMemo(()=>getRuleGroupClassname(ruleGroup),[getRuleGroupClassname,ruleGroup]);const outerClassName=useMemo(()=>clsx(ruleGroupClassname,combinatorBasedClassName,suppressStandardClassnames||standardClassnames.ruleGroup,classNamesProp.ruleGroup,disabled&&classNamesProp.disabled,isDragging&&classNamesProp.dndDragging,isOver&&groupItems&&classNamesProp.dndGroup,suppressStandardClassnames||{[standardClassnames.disabled]:disabled,[standardClassnames.dndDragging]:isDragging,[standardClassnames.dndGroup]:isOver&&groupItems},validationClassName),[classNamesProp.disabled,classNamesProp.dndDragging,classNamesProp.dndGroup,classNamesProp.ruleGroup,combinatorBasedClassName,disabled,groupItems,isDragging,isOver,ruleGroupClassname,suppressStandardClassnames,validationClassName]);const pathsMemo=useMemo(()=>{const paths=[];for(let i=0;i<ruleGroup.rules.length;i++){const thisPath=[...path,i];paths[i]={path:thisPath,disabled:disabled||disabledPaths.some(p=>pathsAreEqual(thisPath,p))};}return paths;},[disabled,path,ruleGroup.rules.length,disabledPaths]);const accessibleDescription=useMemo(()=>accessibleDescriptionGenerator({path,qbId}),[accessibleDescriptionGenerator,path,qbId]);return{...props,addGroup,addRule,accessibleDescription,classNames,cloneGroup,combinator,disabled,dragMonitorId,dragRef,dropMonitorId,dropRef,isDragging,isOver,onCombinatorChange,onGroupAdd,onIndependentCombinatorChange,onNotToggleChange,outerClassName,parentDisabled,pathsMemo,previewRef,removeGroup,ruleGroup,shiftGroupUp,shiftGroupDown,toggleLockGroup,validationClassName,validationResult};};","import{jsx,jsxs}from\"react/jsx-runtime\";export const ShiftActions=props=>/* @__PURE__ */jsxs(\"div\",{\"data-testid\":props.testID,className:props.className,children:[/* @__PURE__ */jsx(\"button\",{disabled:props.disabled||props.shiftUpDisabled,onClick:props.shiftUp,title:props.titles?.shiftUp,children:props.labels?.shiftUp}),/* @__PURE__ */jsx(\"button\",{disabled:props.disabled||props.shiftDownDisabled,onClick:props.shiftDown,title:props.titles?.shiftDown,children:props.labels?.shiftDown})]});","import{c as _c}from\"react-compiler-runtime\";import{jsx,jsxs}from\"react/jsx-runtime\";import{produce}from\"immer\";import{useCallback,useEffect,useMemo}from\"react\";import{standardClassnames}from\"../defaults\";import{getFirstOption,getParseNumberMethod,joinWith,parseNumber,toArray}from\"../utils\";import clsx from\"../utils/clsx\";export const ValueEditor=allProps=>{const{operator,value,handleOnChange,title,className,type=\"text\",values=[],listsAsArrays,fieldData,disabled,separator=null,testID,selectorComponent:SelectorComponent=allProps.schema.controls.valueSelector,// Some value selectors spread all extra props to the rendered component, so\n// we cherry pick these out of `propsForValueSelector` to keep them from being\n// assigned to DOM elements. (The props with mixed case are the only ones that\n// really matter. Props in all lowercase don't emit warnings.)\ninputType:_inputType,parseNumbers:_parseNumbers,skipHook:_skipHook,valueSource:_valueSource,...propsForValueSelector}=allProps;const{valueAsArray,multiValueHandler,parseNumberMethod,valueListItemClassName,inputTypeCoerced}=useValueEditor(allProps);if(operator===\"null\"||operator===\"notNull\"){return null;}const placeHolderText=fieldData?.placeholder??\"\";if((operator===\"between\"||operator===\"notBetween\")&&(type===\"select\"||type===\"text\")){const editors=[\"from\",\"to\"].map((key,i)=>{if(type===\"text\"){return/* @__PURE__ */jsx(\"input\",{type:inputTypeCoerced,placeholder:placeHolderText,value:valueAsArray[i]??\"\",className:valueListItemClassName,disabled,onChange:e=>multiValueHandler(e.target.value,i)},key);}return/* @__PURE__ */jsx(SelectorComponent,{...propsForValueSelector,schema:allProps.schema,className:valueListItemClassName,handleOnChange:v=>multiValueHandler(v,i),disabled,value:valueAsArray[i]??getFirstOption(values),options:values,listsAsArrays},key);});return/* @__PURE__ */jsxs(\"span\",{\"data-testid\":testID,className,title,children:[editors[0],separator,editors[1]]});}switch(type){case\"select\":case\"multiselect\":return/* @__PURE__ */jsx(SelectorComponent,{...propsForValueSelector,schema:allProps.schema,testID,className,title,handleOnChange,disabled,value,options:values,multiple:type===\"multiselect\",listsAsArrays});case\"textarea\":return/* @__PURE__ */jsx(\"textarea\",{\"data-testid\":testID,placeholder:placeHolderText,value,title,className,disabled,onChange:e_2=>handleOnChange(e_2.target.value)});case\"switch\":case\"checkbox\":return/* @__PURE__ */jsx(\"input\",{\"data-testid\":testID,type:\"checkbox\",className,title,onChange:e_1=>handleOnChange(e_1.target.checked),checked:!!value,disabled});case\"radio\":return/* @__PURE__ */jsx(\"span\",{\"data-testid\":testID,className,title,children:values.map(v_0=>/* @__PURE__ */jsxs(\"label\",{children:[/* @__PURE__ */jsx(\"input\",{type:\"radio\",value:v_0.name,disabled,checked:value===v_0.name,onChange:e_0=>handleOnChange(e_0.target.value)}),v_0.label]},v_0.name))});}return/* @__PURE__ */jsx(\"input\",{\"data-testid\":testID,type:inputTypeCoerced,placeholder:placeHolderText,value,title,className,disabled,onChange:e_3=>handleOnChange(parseNumber(e_3.target.value,{parseNumbers:parseNumberMethod}))});};export const useValueEditor=props=>{const $=_c(29);const{handleOnChange,inputType,operator,value,listsAsArrays,parseNumbers,values,type,skipHook,schema:t0}=props;const{classNames:classNamesProp,suppressStandardClassnames}=t0;let t1;let t2;if($[0]!==handleOnChange||$[1]!==inputType||$[2]!==operator||$[3]!==skipHook||$[4]!==type||$[5]!==value){t1=()=>{if(!skipHook&&type!==\"multiselect\"&&![\"between\",\"notBetween\",\"in\",\"notIn\"].includes(operator)&&(Array.isArray(value)||inputType===\"number\"&&typeof value===\"string\"&&value.includes(\",\"))){handleOnChange(toArray(value,{retainEmptyStrings:true})[0]??\"\");}};t2=[handleOnChange,inputType,operator,skipHook,type,value];$[0]=handleOnChange;$[1]=inputType;$[2]=operator;$[3]=skipHook;$[4]=type;$[5]=value;$[6]=t1;$[7]=t2;}else{t1=$[6];t2=$[7];}useEffect(t1,t2);let t3;let t4;if($[8]!==value){t4=toArray(value,{retainEmptyStrings:true});$[8]=value;$[9]=t4;}else{t4=$[9];}t3=t4;const valueAsArray=t3;let t5;let t6;if($[10]!==inputType||$[11]!==parseNumbers){t6=getParseNumberMethod({parseNumbers,inputType});$[10]=inputType;$[11]=parseNumbers;$[12]=t6;}else{t6=$[12];}t5=t6;const parseNumberMethod=t5;let t7;if($[13]!==handleOnChange||$[14]!==listsAsArrays||$[15]!==operator||$[16]!==parseNumberMethod||$[17]!==valueAsArray||$[18]!==values){t7=(val,idx)=>{const v=produce(valueAsArray,va=>{va[idx]=parseNumber(val,{parseNumbers:parseNumberMethod});if(idx===0&&(operator===\"between\"||operator===\"notBetween\")&&(va.length<2||va[1]===void 0)){va[1]=getFirstOption(values);}});handleOnChange(listsAsArrays?v:joinWith(v,\",\"));};$[13]=handleOnChange;$[14]=listsAsArrays;$[15]=operator;$[16]=parseNumberMethod;$[17]=valueAsArray;$[18]=values;$[19]=t7;}else{t7=$[19];}const multiValueHandler=t7;const t8=suppressStandardClassnames||standardClassnames.valueListItem;const t9=classNamesProp?.valueListItem;let t10;if($[20]!==t8||$[21]!==t9){t10=clsx(t8,t9);$[20]=t8;$[21]=t9;$[22]=t10;}else{t10=$[22];}const valueListItemClassName=t10;const inputTypeCoerced=operator===\"in\"||operator===\"notIn\"?\"text\":inputType||\"text\";let t11;if($[23]!==inputTypeCoerced||$[24]!==multiValueHandler||$[25]!==parseNumberMethod||$[26]!==valueAsArray||$[27]!==valueListItemClassName){t11={valueAsArray,multiValueHandler,parseNumberMethod,valueListItemClassName,inputTypeCoerced};$[23]=inputTypeCoerced;$[24]=multiValueHandler;$[25]=parseNumberMethod;$[26]=valueAsArray;$[27]=valueListItemClassName;$[28]=t11;}else{t11=$[28];}return t11;};","import{c as _c}from\"react-compiler-runtime\";import{jsx}from\"react/jsx-runtime\";import{useCallback,useMemo}from\"react\";import{useSelectElementChangeHandler}from\"../hooks/useSelectElementChangeHandler\";import{joinWith,toArray,toOptions}from\"../utils\";export const ValueSelector=props=>{const $=_c(12);const{onChange,val}=useValueSelector(props);let t0;if($[0]!==onChange||$[1]!==props.multiple){t0={multiple:props.multiple,onChange};$[0]=onChange;$[1]=props.multiple;$[2]=t0;}else{t0=$[2];}const selectElementChangeHandler=useSelectElementChangeHandler(t0);const t1=!!props.multiple;let t2;if($[3]!==props.className||$[4]!==props.disabled||$[5]!==props.options||$[6]!==props.testID||$[7]!==props.title||$[8]!==selectElementChangeHandler||$[9]!==t1||$[10]!==val){t2=jsx(\"select\",{\"data-testid\":props.testID,className:props.className,value:val,title:props.title,disabled:props.disabled,multiple:t1,onChange:selectElementChangeHandler,children:toOptions(props.options)});$[3]=props.className;$[4]=props.disabled;$[5]=props.options;$[6]=props.testID;$[7]=props.title;$[8]=selectElementChangeHandler;$[9]=t1;$[10]=val;$[11]=t2;}else{t2=$[11];}return t2;};export const useValueSelector=props=>{const $=_c(10);const{handleOnChange,listsAsArrays:t0,multiple:t1,value}=props;const listsAsArrays=t0===undefined?false:t0;const multiple=t1===undefined?false:t1;let t2;if($[0]!==handleOnChange||$[1]!==listsAsArrays||$[2]!==multiple){t2=v=>{if(multiple){const valueAsArray=toArray(v);handleOnChange(listsAsArrays?valueAsArray:joinWith(valueAsArray,\",\"));}else{handleOnChange(v);}};$[0]=handleOnChange;$[1]=listsAsArrays;$[2]=multiple;$[3]=t2;}else{t2=$[3];}const onChange=t2;let t3;let t4;if($[4]!==multiple||$[5]!==value){t4=multiple?toArray(value):value;$[4]=multiple;$[5]=value;$[6]=t4;}else{t4=$[6];}t3=t4;const val=t3;let t5;if($[7]!==onChange||$[8]!==val){t5={onChange,val};$[7]=onChange;$[8]=val;$[9]=t5;}else{t5=$[9];}return t5;};","import{c as _c}from\"react-compiler-runtime\";import{useMemo}from\"react\";export const useSelectElementChangeHandler=params=>{const $=_c(3);const{multiple,onChange}=params;let t0;let t1;if($[0]!==multiple||$[1]!==onChange){t1=multiple?e=>onChange(Array.from(e.target.selectedOptions).map(_temp)):e_0=>onChange(e_0.target.value);$[0]=multiple;$[1]=onChange;$[2]=t1;}else{t1=$[2];}t0=t1;const selectElementChangeHandler=t0;return selectElementChangeHandler;};function _temp(o){return o.value;}","import{ActionElement}from\"./components/ActionElement\";import{DragHandle}from\"./components/DragHandle\";import{InlineCombinator}from\"./components/InlineCombinator\";import{NotToggle}from\"./components/NotToggle\";import{Rule}from\"./components/Rule\";import{RuleGroup,RuleGroupBodyComponents,RuleGroupHeaderComponents}from\"./components/RuleGroup\";import{ShiftActions}from\"./components/ShiftActions\";import{ValueEditor}from\"./components/ValueEditor\";import{ValueSelector}from\"./components/ValueSelector\";export const defaultControlElements={actionElement:ActionElement,addGroupAction:ActionElement,addRuleAction:ActionElement,cloneGroupAction:ActionElement,cloneRuleAction:ActionElement,combinatorSelector:ValueSelector,dragHandle:DragHandle,fieldSelector:ValueSelector,inlineCombinator:InlineCombinator,lockGroupAction:ActionElement,lockRuleAction:ActionElement,notToggle:NotToggle,operatorSelector:ValueSelector,removeGroupAction:ActionElement,removeRuleAction:ActionElement,rule:Rule,ruleGroup:RuleGroup,ruleGroupBodyElements:RuleGroupBodyComponents,ruleGroupHeaderElements:RuleGroupHeaderComponents,shiftActions:ShiftActions,valueEditor:ValueEditor,valueSelector:ValueSelector,valueSourceSelector:ValueSelector};","import{useRef}from\"react\";export const usePrevious=value=>{const ref=useRef({value,prev:null});const current=ref.current.value;if(value!==current){ref.current={value,prev:current};}return ref.current.prev;};","import{messages}from\"../messages\";import{useRQB_INTERNAL_QueryBuilderDispatch,rqbWarn}from\"../redux/_internal\";import{usePrevious}from\"./usePrevious\";export const useControlledOrUncontrolled=params=>{const dispatch=useRQB_INTERNAL_QueryBuilderDispatch();const{defaultQuery,queryProp}=params;const prevQueryPresent=usePrevious(!!queryProp);if(process.env.NODE_ENV!==\"production\"){if(!!queryProp&&!!defaultQuery){dispatch(rqbWarn(messages.errorBothQueryDefaultQuery));}else{if(prevQueryPresent===true&&!queryProp&&!!defaultQuery){dispatch(rqbWarn(messages.errorControlledToUncontrolled));}else{if(prevQueryPresent===false&&!!queryProp&&!defaultQuery){dispatch(rqbWarn(messages.errorUncontrolledToControlled));}}}}};","import{queriesSlice}from\"./queriesSlice\";export const getQuerySelectorById=qbId=>state=>queriesSlice.selectors.getQuerySelectorById({queries:state.queries},qbId);","import*as React from\"react\";import{createSelectorHook}from\"react-redux\";import{QueryBuilderContext}from\"../context\";import{QueryBuilderStateContext}from\"./QueryBuilderStateContext\";import{getQuerySelectorById}from\"./selectors\";const useRQB_INTERNAL_QueryBuilderSelector=createSelectorHook(QueryBuilderStateContext);export const useQueryBuilderSelector=(selector,other)=>{const rqbContext=React.useContext(QueryBuilderContext);const result=useRQB_INTERNAL_QueryBuilderSelector(selector,other);return result??rqbContext?.initialQuery;};export const useQueryBuilderQuery=props=>{const rqbContext=React.useContext(QueryBuilderContext);return useRQB_INTERNAL_QueryBuilderSelector(getQuerySelectorById(props?.schema.qbId??rqbContext.qbId??\"\"))??rqbContext?.initialQuery;};","import{useCallback,useEffect,useMemo,useRef,useState}from\"react\";import{LogType,standardClassnames}from\"../defaults\";import{useControlledOrUncontrolled}from\"../hooks/useControlledOrUncontrolled\";import{useDeprecatedProps}from\"../hooks/useDeprecatedProps\";import{getQuerySelectorById,useQueryBuilderSelector}from\"../redux\";import{_RQB_INTERNAL_dispatchThunk,useRQB_INTERNAL_QueryBuilderDispatch,useRQB_INTERNAL_QueryBuilderStore}from\"../redux/_internal\";import{add,findPath,generateAccessibleDescription,group,isRuleGroup,isRuleGroupTypeIC,move,pathIsDisabled,prepareRuleGroup,remove,update}from\"../utils\";import{clsx}from\"../utils/clsx\";const defaultValidationResult={};const defaultValidationMap={};const defaultDisabledPaths=[];const icCombinatorPropObject={};const defaultGetValueEditorSeparator=()=>null;const defaultGetRuleOrGroupClassname=()=>\"\";const defaultOnAddMoveRemove=()=>true;const defaultOnLog=function(){console.log(...arguments);};export function useQueryBuilderSchema(props,setup){const{query:queryProp,defaultQuery:defaultQueryProp,getValueEditorSeparator=defaultGetValueEditorSeparator,getRuleClassname=defaultGetRuleOrGroupClassname,getRuleGroupClassname=defaultGetRuleOrGroupClassname,onAddRule=defaultOnAddMoveRemove,onAddGroup=defaultOnAddMoveRemove,onMoveRule=defaultOnAddMoveRemove,onMoveGroup=defaultOnAddMoveRemove,onGroupRule=defaultOnAddMoveRemove,onGroupGroup=defaultOnAddMoveRemove,onRemove=defaultOnAddMoveRemove,onQueryChange,showCombinatorsBetweenRules:showCombinatorsBetweenRulesProp=false,showNotToggle:showNotToggleProp=false,showShiftActions:showShiftActionsProp=false,showCloneButtons:showCloneButtonsProp=false,showLockButtons:showLockButtonsProp=false,suppressStandardClassnames:suppressStandardClassnamesProp=false,resetOnFieldChange:resetOnFieldChangeProp=true,resetOnOperatorChange:resetOnOperatorChangeProp=false,autoSelectField:autoSelectFieldProp=true,autoSelectOperator:autoSelectOperatorProp=true,autoSelectValue:autoSelectValueProp=true,addRuleToNewGroups:addRuleToNewGroupsProp=false,listsAsArrays:listsAsArraysProp=false,parseNumbers=false,disabled=false,validator,onLog=defaultOnLog,idGenerator,accessibleDescriptionGenerator=generateAccessibleDescription}=props;const{qbId,rqbContext:incomingRqbContext,fields,fieldMap,combinators,getOperatorsMain,getRuleDefaultOperator,getValueEditorTypeMain,getValueSourcesMain,getValuesMain,getRuleDefaultValue,getInputTypeMain,createRule,createRuleGroup}=setup;const{controlClassnames,controlElements:controls,debugMode,enableDragAndDrop,enableMountQueryChange,translations}=incomingRqbContext;const showCombinatorsBetweenRules=!!showCombinatorsBetweenRulesProp;const showNotToggle=!!showNotToggleProp;const showShiftActions=!!showShiftActionsProp;const showCloneButtons=!!showCloneButtonsProp;const showLockButtons=!!showLockButtonsProp;const resetOnFieldChange=!!resetOnFieldChangeProp;const resetOnOperatorChange=!!resetOnOperatorChangeProp;const autoSelectField=!!autoSelectFieldProp;const autoSelectOperator=!!autoSelectOperatorProp;const autoSelectValue=!!autoSelectValueProp;const addRuleToNewGroups=!!addRuleToNewGroupsProp;const listsAsArrays=!!listsAsArraysProp;const suppressStandardClassnames=!!suppressStandardClassnamesProp;const log=useCallback(function(){if(debugMode){onLog(...arguments);}},[debugMode,onLog]);useControlledOrUncontrolled({defaultQuery:defaultQueryProp,queryProp});const queryBuilderStore=useRQB_INTERNAL_QueryBuilderStore();const queryBuilderDispatch=useRQB_INTERNAL_QueryBuilderDispatch();const querySelector=useMemo(()=>getQuerySelectorById(qbId),[qbId]);const storeQuery=useQueryBuilderSelector(querySelector);const getQuery=useCallback(()=>querySelector(queryBuilderStore.getState()),[queryBuilderStore,querySelector]);const fallbackQuery=useMemo(()=>createRuleGroup(),[createRuleGroup]);const candidateQuery=queryProp??storeQuery??defaultQueryProp??fallbackQuery;const rootGroup=candidateQuery.id?candidateQuery:prepareRuleGroup(candidateQuery,{idGenerator});const[initialQuery]=useState(rootGroup);const rqbContext=useMemo(()=>({...incomingRqbContext,initialQuery}),[incomingRqbContext,initialQuery]);useEffect(()=>{if(!!queryProp&&!Object.is(queryProp,storeQuery)){queryBuilderDispatch(_RQB_INTERNAL_dispatchThunk({payload:{qbId,query:queryProp},onQueryChange:void 0}));}},[queryProp,qbId,storeQuery,queryBuilderDispatch]);const independentCombinators=useMemo(()=>isRuleGroupTypeIC(rootGroup),[rootGroup]);const invalidIC=!!props.independentCombinators&&!independentCombinators;useDeprecatedProps(\"independentCombinators\",invalidIC||!invalidIC&&(props.independentCombinators??\"not present\")!==\"not present\",invalidIC?\"invalid\":\"unnecessary\");const hasRunMountQueryChange=useRef(false);useEffect(()=>{if(hasRunMountQueryChange.current)return;hasRunMountQueryChange.current=true;queryBuilderDispatch(_RQB_INTERNAL_dispatchThunk({payload:{qbId,query:rootGroup},onQueryChange:// Leave `onQueryChange` undefined if `enableMountQueryChange` is disabled\nenableMountQueryChange&&typeof onQueryChange===\"function\"?onQueryChange:void 0}));},[enableMountQueryChange,onQueryChange,qbId,queryBuilderDispatch,rootGroup]);const dispatchQuery=useCallback(newQuery=>{queryBuilderDispatch(_RQB_INTERNAL_dispatchThunk({payload:{qbId,query:newQuery},onQueryChange}));},[onQueryChange,qbId,queryBuilderDispatch]);const disabledPaths=useMemo(()=>Array.isArray(disabled)&&disabled||defaultDisabledPaths,[disabled]);const queryDisabled=disabled===true;const rootGroupDisabled=useMemo(()=>rootGroup.disabled||disabledPaths.some(p=>p.length===0),[disabledPaths,rootGroup.disabled]);const onRuleAdd=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(rule,parentPath,context)=>{const queryLocal=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal)return;if(pathIsDisabled(parentPath,queryLocal)||queryDisabled){log({qbId,type:LogType.parentPathDisabled,rule,parentPath,query:queryLocal});return;}const nextRule=onAddRule(rule,parentPath,queryLocal,context);if(!nextRule){log({qbId,type:LogType.onAddRuleFalse,rule,parentPath,query:queryLocal});return;}const newRule=nextRule===true?rule:nextRule;const newQuery_0=add(queryLocal,newRule,parentPath,{combinators,combinatorPreceding:newRule.combinatorPreceding??void 0,idGenerator});log({qbId,type:LogType.add,query:queryLocal,newQuery:newQuery_0,newRule,parentPath});dispatchQuery(newQuery_0);},[qbId,queryBuilderStore,queryDisabled,onAddRule,combinators,idGenerator,log,dispatchQuery]);const onGroupAdd=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(ruleGroup,parentPath_0,context_0)=>{const queryLocal_0=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal_0)return;if(pathIsDisabled(parentPath_0,queryLocal_0)||queryDisabled){log({qbId,type:LogType.parentPathDisabled,ruleGroup,parentPath:parentPath_0,query:queryLocal_0});return;}const nextGroup=onAddGroup(ruleGroup,parentPath_0,queryLocal_0,context_0);if(!nextGroup){log({qbId,type:LogType.onAddGroupFalse,ruleGroup,parentPath:parentPath_0,query:queryLocal_0});return;}const newGroup=nextGroup===true?ruleGroup:nextGroup;const newQuery_1=add(queryLocal_0,newGroup,parentPath_0,{combinators,combinatorPreceding:newGroup.combinatorPreceding??void 0,idGenerator});log({qbId,type:LogType.add,query:queryLocal_0,newQuery:newQuery_1,newGroup,parentPath:parentPath_0});dispatchQuery(newQuery_1);},[qbId,queryBuilderStore,queryDisabled,onAddGroup,combinators,idGenerator,log,dispatchQuery]);const onPropChange=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(prop,value,path)=>{const queryLocal_1=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal_1)return;if(pathIsDisabled(path,queryLocal_1)&&prop!==\"disabled\"||queryDisabled){log({qbId,type:LogType.pathDisabled,path,prop,value,query:queryLocal_1});return;}const newQuery_2=update(queryLocal_1,prop,value,path,{resetOnFieldChange,resetOnOperatorChange,getRuleDefaultOperator,getValueSources:getValueSourcesMain,getRuleDefaultValue});log({qbId,type:LogType.update,query:queryLocal_1,newQuery:newQuery_2,prop,value,path});dispatchQuery(newQuery_2);},[qbId,queryBuilderStore,queryDisabled,resetOnFieldChange,resetOnOperatorChange,getRuleDefaultOperator,getValueSourcesMain,getRuleDefaultValue,log,dispatchQuery]);const onRuleOrGroupRemove=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(path_0,context_1)=>{const queryLocal_2=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal_2)return;if(pathIsDisabled(path_0,queryLocal_2)||queryDisabled){log({qbId,type:LogType.pathDisabled,path:path_0,query:queryLocal_2});return;}const ruleOrGroup=findPath(path_0,queryLocal_2);if(ruleOrGroup){if(onRemove(ruleOrGroup,path_0,queryLocal_2,context_1)){const newQuery_3=remove(queryLocal_2,path_0);log({qbId,type:LogType.remove,query:queryLocal_2,newQuery:newQuery_3,path:path_0,ruleOrGroup});dispatchQuery(newQuery_3);}else{log({qbId,type:LogType.onRemoveFalse,ruleOrGroup,path:path_0,query:queryLocal_2});}}},[qbId,queryBuilderStore,queryDisabled,log,onRemove,dispatchQuery]);const moveRule=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(oldPath,newPath,clone,context_2)=>{const queryLocal_3=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal_3)return;if(pathIsDisabled(oldPath,queryLocal_3)||queryDisabled){log({qbId,type:LogType.pathDisabled,oldPath,newPath,query:queryLocal_3});return;}const nextQuery=move(queryLocal_3,oldPath,newPath,{clone,combinators,idGenerator});const ruleOrGroup_0=findPath(oldPath,queryLocal_3);const isGroup=isRuleGroup(ruleOrGroup_0);const callbackResult=(isGroup?onMoveGroup:onMoveRule)(ruleOrGroup_0,oldPath,newPath,queryLocal_3,nextQuery,{clone,combinators},context_2);if(!callbackResult){log({qbId,type:isGroup?LogType.onMoveGroupFalse:LogType.onMoveRuleFalse,ruleOrGroup:ruleOrGroup_0,oldPath,newPath,clone,query:queryLocal_3,nextQuery});return;}const newQuery_4=isRuleGroup(callbackResult)?callbackResult:nextQuery;log({qbId,type:LogType.move,query:queryLocal_3,newQuery:newQuery_4,oldPath,newPath,clone});dispatchQuery(newQuery_4);},[qbId,queryBuilderStore,queryDisabled,combinators,idGenerator,onMoveGroup,onMoveRule,log,dispatchQuery]);const groupRule=useCallback(// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(sourcePath,targetPath,clone_0,context_3)=>{const queryLocal_4=getQuerySelectorById(qbId)(queryBuilderStore.getState());if(!queryLocal_4)return;if(pathIsDisabled(sourcePath,queryLocal_4)||queryDisabled){log({qbId,type:LogType.pathDisabled,sourcePath,targetPath,query:queryLocal_4});return;}const nextQuery_0=group(queryLocal_4,sourcePath,targetPath,{clone:clone_0,combinators,idGenerator});const ruleOrGroup_1=findPath(sourcePath,queryLocal_4);const isGroup_0=isRuleGroup(ruleOrGroup_1);const callbackResult_0=(isGroup_0?onGroupGroup:onGroupRule)(ruleOrGroup_1,sourcePath,targetPath,queryLocal_4,nextQuery_0,{clone:clone_0,combinators},context_3);if(!callbackResult_0){log({qbId,type:isGroup_0?LogType.onGroupGroupFalse:LogType.onGroupRuleFalse,ruleOrGroup:ruleOrGroup_1,sourcePath,targetPath,clone:clone_0,query:queryLocal_4,nextQuery:nextQuery_0});return;}const newQuery_5=isRuleGroup(callbackResult_0)?callbackResult_0:nextQuery_0;log({qbId,type:LogType.group,query:queryLocal_4,newQuery:newQuery_5,sourcePath,targetPath,clone:clone_0});dispatchQuery(newQuery_5);},[qbId,queryBuilderStore,queryDisabled,combinators,idGenerator,onGroupGroup,onGroupRule,log,dispatchQuery]);const{validationResult,validationMap}=useMemo(()=>{const validationResult2=typeof validator===\"function\"&&rootGroup?validator(rootGroup):defaultValidationResult;const validationMap2=typeof validationResult2===\"boolean\"?defaultValidationMap:validationResult2;return{validationResult:validationResult2,validationMap:validationMap2};},[rootGroup,validator]);const dndEnabledAttr=useMemo(()=>enableDragAndDrop?\"enabled\":\"disabled\",[enableDragAndDrop]);const inlineCombinatorsAttr=useMemo(()=>independentCombinators||showCombinatorsBetweenRules?\"enabled\":\"disabled\",[independentCombinators,showCombinatorsBetweenRules]);const combinatorPropObject=useMemo(()=>typeof rootGroup.combinator===\"string\"?{combinator:rootGroup.combinator}:icCombinatorPropObject,[rootGroup.combinator]);const wrapperClassName=useMemo(()=>clsx(suppressStandardClassnames||standardClassnames.queryBuilder,clsx(controlClassnames.queryBuilder),// custom conditional classes\nqueryDisabled&&controlClassnames.disabled,typeof validationResult===\"boolean\"&&validationResult&&controlClassnames.valid,typeof validationResult===\"boolean\"&&!validationResult&&controlClassnames.invalid,// standard conditional classes\nsuppressStandardClassnames||{[standardClassnames.disabled]:queryDisabled,[standardClassnames.valid]:typeof validationResult===\"boolean\"&&validationResult,[standardClassnames.invalid]:typeof validationResult===\"boolean\"&&!validationResult}),[controlClassnames.disabled,controlClassnames.invalid,controlClassnames.queryBuilder,controlClassnames.valid,queryDisabled,suppressStandardClassnames,validationResult]);const schema=useMemo(()=>({addRuleToNewGroups,accessibleDescriptionGenerator,autoSelectField,autoSelectOperator,autoSelectValue,classNames:controlClassnames,combinators,controls,createRule,createRuleGroup,disabledPaths,enableDragAndDrop,fieldMap,fields,dispatchQuery,getQuery,getInputType:getInputTypeMain,getOperators:getOperatorsMain,getRuleClassname,getRuleGroupClassname,getValueEditorSeparator,getValueEditorType:getValueEditorTypeMain,getValues:getValuesMain,getValueSources:getValueSourcesMain,independentCombinators,listsAsArrays,parseNumbers,qbId,showCloneButtons,showCombinatorsBetweenRules,showLockButtons,showNotToggle,showShiftActions,suppressStandardClassnames,validationMap}),[accessibleDescriptionGenerator,addRuleToNewGroups,autoSelectField,autoSelectOperator,autoSelectValue,combinators,controlClassnames,controls,createRule,createRuleGroup,disabledPaths,dispatchQuery,enableDragAndDrop,fieldMap,fields,getInputTypeMain,getOperatorsMain,getQuery,getRuleClassname,getRuleGroupClassname,getValueEditorSeparator,getValueEditorTypeMain,getValuesMain,getValueSourcesMain,independentCombinators,listsAsArrays,parseNumbers,qbId,showCloneButtons,showCombinatorsBetweenRules,showLockButtons,showNotToggle,showShiftActions,suppressStandardClassnames,validationMap]);const actions=useMemo(()=>({moveRule,onGroupAdd,onGroupRemove:onRuleOrGroupRemove,onPropChange,onRuleAdd,onRuleRemove:onRuleOrGroupRemove,groupRule}),[groupRule,moveRule,onGroupAdd,onPropChange,onRuleAdd,onRuleOrGroupRemove]);return{actions,rootGroup,rootGroupDisabled,queryDisabled,rqbContext,schema,translations,wrapperClassName,dndEnabledAttr,inlineCombinatorsAttr,combinatorPropObject};}","import{useCallback,useMemo,useState}from\"react\";import{defaultCombinators,defaultOperators}from\"../defaults\";import{useMergedContext}from\"../hooks/useMergedContext\";import{filterFieldsByComparator,generateID,getFirstOption,getValueSourcesUtil,isFlexibleOptionGroupArray,joinWith,objectKeys,toFullOption,toFullOptionList,toFullOptionMap,uniqByIdentifier,uniqOptGroups,uniqOptList}from\"../utils\";const getFirstOptionsFrom=(opts,r,listsAsArrays)=>{const firstOption=getFirstOption(opts);if(r.operator===\"between\"||r.operator===\"notBetween\"){const valueAsArray=[firstOption,firstOption];return listsAsArrays?valueAsArray:joinWith(valueAsArray.map(v=>v??/* istanbul ignore next */\"\"),\",\");}return firstOption;};export const useQueryBuilderSetup=props=>{const[qbId]=useState(generateID);const{fields:fieldsPropOriginal,baseField,operators:operatorsProp,baseOperator,combinators:combinatorsProp=defaultCombinators,baseCombinator,translations:translationsProp,enableMountQueryChange:enableMountQueryChangeProp=true,controlClassnames:controlClassnamesProp,controlElements:controlElementsProp,getDefaultField,getDefaultOperator,getDefaultValue,getOperators,getValueEditorType,getValueSources,getInputType,getValues,autoSelectField=true,autoSelectOperator=true,autoSelectValue=true,addRuleToNewGroups=false,enableDragAndDrop:enableDragAndDropProp,listsAsArrays=false,debugMode:debugModeProp=false,idGenerator=generateID}=props;const operators=operatorsProp??defaultOperators;const[initialQueryProp]=useState(props.query??props.defaultQuery);const rqbContext=useMergedContext({controlClassnames:controlClassnamesProp,controlElements:controlElementsProp,debugMode:debugModeProp,enableDragAndDrop:enableDragAndDropProp,enableMountQueryChange:enableMountQueryChangeProp,translations:translationsProp,initialQuery:initialQueryProp,qbId,finalize:true});const{translations}=rqbContext;const defaultField=useMemo(()=>({id:translations.fields.placeholderName,name:translations.fields.placeholderName,value:translations.fields.placeholderName,label:translations.fields.placeholderLabel}),[translations.fields.placeholderLabel,translations.fields.placeholderName]);const fieldsProp=useMemo(()=>fieldsPropOriginal??[defaultField],[defaultField,fieldsPropOriginal]);const fields=useMemo(()=>{const flds=Array.isArray(fieldsProp)?toFullOptionList(fieldsProp,baseField):objectKeys(toFullOptionMap(fieldsProp,baseField)).map(fld=>({...fieldsProp[fld],name:fld,value:fld})).sort((a,b)=>a.label.localeCompare(b.label));if(isFlexibleOptionGroupArray(flds)){return autoSelectField?uniqOptGroups(flds):uniqOptGroups([{label:translations.fields.placeholderGroupLabel,options:[defaultField]},...flds]);}else{return autoSelectField?uniqByIdentifier(flds):uniqByIdentifier([defaultField,...flds]);}},[autoSelectField,baseField,defaultField,fieldsProp,translations.fields.placeholderGroupLabel]);const fieldMap=useMemo(()=>{if(!Array.isArray(fieldsProp)){const fp=toFullOptionMap(fieldsProp,baseField);return autoSelectField?fp:{...fp,[translations.fields.placeholderName]:defaultField};}const fm={};if(isFlexibleOptionGroupArray(fields)){for(const f of fields){for(const opt of f.options){fm[opt.value??/* istanbul ignore next */opt.name]=toFullOption(opt,baseField);}}}else{for(const f_0 of fields){fm[f_0.value??/* istanbul ignore next */f_0.name]=toFullOption(f_0,baseField);}}return fm;},[autoSelectField,baseField,defaultField,fields,fieldsProp,translations.fields.placeholderName]);const combinators=useMemo(()=>toFullOptionList(combinatorsProp,baseCombinator),[baseCombinator,combinatorsProp]);const defaultOperator=useMemo(()=>({id:translations.operators.placeholderName,name:translations.operators.placeholderName,value:translations.operators.placeholderName,label:translations.operators.placeholderLabel}),[translations.operators.placeholderLabel,translations.operators.placeholderName]);const getOperatorsMain=useCallback((field,_ref)=>{let{fieldData}=_ref;let opsFinal=toFullOptionList(operators,baseOperator);if(fieldData?.operators){opsFinal=toFullOptionList(fieldData.operators,baseOperator);}else if(getOperators){const ops=getOperators(field,{fieldData});if(ops){opsFinal=toFullOptionList(ops,baseOperator);}}if(!autoSelectOperator){opsFinal=isFlexibleOptionGroupArray(opsFinal)?[{label:translations.operators.placeholderGroupLabel,options:[defaultOperator]},...opsFinal]:[defaultOperator,...opsFinal];}return uniqOptList(opsFinal);},[autoSelectOperator,baseOperator,defaultOperator,getOperators,operators,translations.operators.placeholderGroupLabel]);const getRuleDefaultOperator=useCallback(field_0=>{const fieldData_0=fieldMap[field_0];if(fieldData_0?.defaultOperator){return fieldData_0.defaultOperator;}if(getDefaultOperator){return typeof getDefaultOperator===\"function\"?getDefaultOperator(field_0,{fieldData:fieldData_0}):getDefaultOperator;}const ops_0=getOperatorsMain(field_0,{fieldData:fieldData_0})??/* istanbul ignore next */[];return getFirstOption(ops_0)??/* istanbul ignore next */\"\";},[fieldMap,getDefaultOperator,getOperatorsMain]);const getValueEditorTypeMain=useCallback((field_1,operator,_ref2)=>{let{fieldData:fieldData_1}=_ref2;if(fieldData_1.valueEditorType){if(typeof fieldData_1.valueEditorType===\"function\"){return fieldData_1.valueEditorType(operator);}return fieldData_1.valueEditorType;}return getValueEditorType?.(field_1,operator,{fieldData:fieldData_1})??\"text\";},[getValueEditorType]);const getValueSourcesMain=useCallback((field_2,operator_0)=>getValueSourcesUtil(fieldMap[field_2],operator_0,getValueSources),[fieldMap,getValueSources]);const defaultValueOption=useMemo(()=>({id:translations.values.placeholderName,name:translations.values.placeholderName,value:translations.values.placeholderName,label:translations.values.placeholderLabel}),[translations.values.placeholderLabel,translations.values.placeholderName]);const getValuesMain=useCallback((field_3,operator_1,_ref3)=>{let{fieldData:fieldData_2}=_ref3;let valsFinal=[];if(fieldData_2?.values){valsFinal=toFullOptionList(fieldData_2.values);}if(getValues){valsFinal=toFullOptionList(getValues(field_3,operator_1,{fieldData:fieldData_2}));}if(!autoSelectValue){valsFinal=isFlexibleOptionGroupArray(valsFinal)?[{label:translations.values.placeholderGroupLabel,options:[defaultValueOption]},...valsFinal]:[defaultValueOption,...valsFinal];}return valsFinal;},[autoSelectValue,defaultValueOption,getValues,translations.values.placeholderGroupLabel]);const getRuleDefaultValue=useCallback(r=>{const fieldData_3=fieldMap[r.field]??{};if(fieldData_3?.defaultValue!==void 0&&fieldData_3.defaultValue!==null){return fieldData_3.defaultValue;}else if(getDefaultValue){return getDefaultValue(r,{fieldData:fieldData_3});}let value=\"\";const values=getValuesMain(r.field,r.operator,{fieldData:fieldData_3});if(r.valueSource===\"field\"){const filteredFields=filterFieldsByComparator(fieldData_3,fields,r.operator);value=filteredFields.length>0?getFirstOptionsFrom(filteredFields,r,listsAsArrays):\"\";}else if(values.length>0){const editorType=getValueEditorTypeMain(r.field,r.operator,{fieldData:fieldData_3});if(editorType===\"multiselect\"){value=listsAsArrays?[]:\"\";}else if(editorType===\"select\"||editorType===\"radio\"){value=getFirstOptionsFrom(values,r,listsAsArrays);}}else{const editorType_0=getValueEditorTypeMain(r.field,r.operator,{fieldData:fieldData_3});if(editorType_0===\"checkbox\"){value=false;}}return value;},[fieldMap,fields,getDefaultValue,getValueEditorTypeMain,getValuesMain,listsAsArrays]);const getInputTypeMain=useCallback((field_4,operator_2,_ref4)=>{let{fieldData:fieldData_4}=_ref4;if(getInputType){const inputType=getInputType(field_4,operator_2,{fieldData:fieldData_4});if(inputType)return inputType;}return\"text\";},[getInputType]);const createRule=useCallback(()=>{let field_5=\"\";const flds_0=fields;if(flds_0?.length>0&&flds_0[0]){const fo=getFirstOption(flds_0);if(fo)field_5=fo;}if(getDefaultField){if(typeof getDefaultField===\"function\"){const df=getDefaultField(flds_0);if(df)field_5=df;}else{field_5=getDefaultField;}}const operator_3=getRuleDefaultOperator(field_5);const valueSource=getValueSourcesMain(field_5,operator_3)[0]??\"value\";const newRule={id:idGenerator(),field:field_5,operator:operator_3,valueSource,value:\"\"};const value_0=getRuleDefaultValue(newRule);return{...newRule,value:value_0};},[fields,getDefaultField,getRuleDefaultOperator,getRuleDefaultValue,getValueSourcesMain,idGenerator]);const createRuleGroup=useCallback(independentCombinators=>{if(independentCombinators){return{id:idGenerator(),rules:addRuleToNewGroups?[createRule()]:[],not:false};}return{id:idGenerator(),rules:addRuleToNewGroups?[createRule()]:[],combinator:getFirstOption(combinators)??/* istanbul ignore next */\"\",not:false};},[addRuleToNewGroups,combinators,createRule,idGenerator]);return{qbId,rqbContext,// TODO: Why is a cast necessary here?\nfields,fieldMap,combinators,getOperatorsMain,getRuleDefaultOperator,getValueEditorTypeMain,getValueSourcesMain,getValuesMain,getRuleDefaultValue,getInputTypeMain,createRule,createRuleGroup};};","import{useQueryBuilderSchema}from\"./QueryBuilder.useQueryBuilderSchema\";import{useQueryBuilderSetup}from\"./QueryBuilder.useQueryBuilderSetup\";export const useQueryBuilder=props=>{return useQueryBuilderSchema(props,useQueryBuilderSetup(props));};","import{c as _c}from\"react-compiler-runtime\";import{jsx}from\"react/jsx-runtime\";import{QueryBuilderContext as _QBC}from\"../context\";import{rootPath}from\"../defaults\";import{useQueryBuilder}from\"./QueryBuilder.useQueryBuilder\";export const QueryBuilderInternal=t0=>{const $=_c(15);const{props}=t0;const qb=useQueryBuilder(props);const RuleGroupControlElement=qb.schema.controls.ruleGroup;const t1=!!qb.rootGroup.not;let t2;if($[0]!==RuleGroupControlElement||$[1]!==props.context||$[2]!==qb.actions||$[3]!==qb.combinatorPropObject||$[4]!==qb.dndEnabledAttr||$[5]!==qb.inlineCombinatorsAttr||$[6]!==qb.queryDisabled||$[7]!==qb.rootGroup||$[8]!==qb.rootGroupDisabled||$[9]!==qb.rqbContext||$[10]!==qb.schema||$[11]!==qb.translations||$[12]!==qb.wrapperClassName||$[13]!==t1){t2=jsx(_QBC.Provider,{value:qb.rqbContext,children:jsx(\"div\",{role:\"form\",className:qb.wrapperClassName,\"data-dnd\":qb.dndEnabledAttr,\"data-inlinecombinators\":qb.inlineCombinatorsAttr,children:jsx(RuleGroupControlElement,{translations:qb.translations,ruleGroup:qb.rootGroup,rules:qb.rootGroup.rules,...qb.combinatorPropObject,not:t1,schema:qb.schema,actions:qb.actions,id:qb.rootGroup.id,path:rootPath,disabled:qb.rootGroupDisabled,shiftUpDisabled:true,shiftDownDisabled:true,parentDisabled:qb.queryDisabled,context:props.context})})},qb.dndEnabledAttr);$[0]=RuleGroupControlElement;$[1]=props.context;$[2]=qb.actions;$[3]=qb.combinatorPropObject;$[4]=qb.dndEnabledAttr;$[5]=qb.inlineCombinatorsAttr;$[6]=qb.queryDisabled;$[7]=qb.rootGroup;$[8]=qb.rootGroupDisabled;$[9]=qb.rqbContext;$[10]=qb.schema;$[11]=qb.translations;$[12]=qb.wrapperClassName;$[13]=t1;$[14]=t2;}else{t2=$[14];}return t2;};"],"mappings":"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","names":["jsx","jsx","jsx","jsx","createSlice","initialState","createSlice","React","c","c","produce","produce","c","negate","shouldNegate","negate","shouldNegate","negateIfNotOp","escapeStringValueQuotes","produce","produce","forwardRef","useCallback","useMemo","jsx","jsxs","React","useCallback","useMemo","jsx","jsx","c","produce","produce","produce","produce","produce","produce","jsx","jsx","produce","produce","jsx","jsxs","useMemo","useCallback","Fragment","jsx","jsxs","React","Fragment2","useCallback","useMemo","jsxs","jsx","Fragment","Fragment2","useMemo","useCallback","jsx","jsxs","jsx","jsxs","produce","useCallback","useMemo","jsx","jsxs","produce","jsx","useCallback","useMemo","useMemo","jsx","forwardRef","React","useCallback","useEffect","useMemo","useRef","useCallback","useMemo","useEffect","useRef","useCallback","useMemo","useState","useState","useMemo","useCallback","jsx","jsx"]}