UNPKG

@react-querybuilder/material

Version:

Custom MUI (Material Design) components for react-querybuilder

2 lines 9.56 kB
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const c=s(require(`react`)),l=s(require(`react-querybuilder`)),u=s(require(`@mui/icons-material`)),d=s(require(`@mui/material`)),f=(0,c.createContext)(null),p=({className:e,handleOnClick:t,label:n,title:r,disabled:i,disabledTranslation:a,testID:o,path:s,level:u,rules:d,context:p,validation:m,ruleOrGroup:h,schema:g,muiComponents:_,...v})=>{let y=(0,c.useContext)(f)??_,b=y?`mui`:`no-mui`;if(!y){let f=l.ActionElement;return c.createElement(f,{key:b,className:e,handleOnClick:t,label:n,title:r,disabled:i,disabledTranslation:a,testID:o,path:s,level:u,rules:d,context:p,validation:m,ruleOrGroup:h,schema:g})}let{Button:x}=y;return c.createElement(x,{key:b,variant:`contained`,color:`secondary`,className:e,title:a&&i?a.title:r,size:`small`,disabled:i&&!a,onClick:e=>t(e),...v},a&&i?a.label:n)},m=(0,c.forwardRef)(({className:e,title:t,path:n,level:r,testID:i,label:a,disabled:o,context:s,validation:u,schema:d,ruleOrGroup:p,muiComponents:m,...h},g)=>{let _=(0,c.useContext)(f)??m,v=_?`mui`:`no-mui`;if(!_)return c.createElement(l.DragHandle,{key:v,path:n,level:r,className:e,title:t,testID:i,label:a,disabled:o,context:s,validation:u,schema:d,ruleOrGroup:p});let{DragIndicator:y}=_;return c.createElement(`span`,{key:v,ref:g,className:e,title:t},c.createElement(y,h))}),h=({className:e,handleOnChange:t,label:n,checked:r,title:i,disabled:a,level:o,path:s,context:u,validation:d,testID:p,schema:m,ruleGroup:h,muiComponents:g,..._})=>{let v=(0,c.useContext)(f)??g,{FormControlLabel:y,Switch:b}=v??{},x=(0,c.useMemo)(()=>b&&c.createElement(b,{checked:!!r,onChange:e=>t(e.target.checked),..._}),[r,t,_,b]),S=v?`mui`:`no-mui`;return v?c.createElement(y,{key:S,className:e,title:i,disabled:a,control:x,label:n??``}):c.createElement(l.NotToggle,{key:S,className:e,handleOnChange:t,label:n,checked:r,title:i,disabled:a,path:s,level:o,context:u,validation:d,testID:p,schema:m,ruleGroup:h})},g=({path:e,shiftUp:t,shiftDown:n,shiftUpDisabled:r,shiftDownDisabled:i,disabled:a,className:o,labels:s,titles:u,testID:d,muiComponents:p,...m})=>{let h=c.useContext(f)??p,g=h?`mui`:`no-mui`;if(!h)return c.createElement(l.ShiftActions,{key:g,path:e,disabled:a,className:o,labels:s,titles:u,testID:d,shiftUp:t,shiftDown:n,shiftUpDisabled:r,shiftDownDisabled:i,...m});let{Button:_}=h;return c.createElement(`div`,{key:g,"data-testid":d,className:o},c.createElement(_,{sx:{boxShadow:`none`},variant:`contained`,color:`secondary`,className:o,title:u?.shiftUp,size:`small`,disabled:a||r,onClick:t},s?.shiftUp),c.createElement(_,{sx:{boxShadow:`none`},variant:`contained`,color:`secondary`,className:o,title:u?.shiftDown,size:`small`,disabled:a||i,onClick:n},s?.shiftDown))},_=e=>{let{muiComponents:t,...n}=e,{field:r,fieldData:i,operator:a,value:o,handleOnChange:s,title:u,className:d,type:p,inputType:m,path:h,level:g,values:_=[],listsAsArrays:v,separator:y,valueSource:b,disabled:x,testID:S,selectorComponent:C=e.schema.controls.valueSelector,extraProps:w,parseNumbers:T,...E}=n,D=(0,c.useContext)(f)??t,{valueAsArray:O,multiValueHandler:k,bigIntValueHandler:A,parseNumberMethod:j,valueListItemClassName:M,inputTypeCoerced:N}=(0,l.useValueEditor)(n),P=D?`mui`:`no-mui`,{Checkbox:F,FormControl:I,FormControlLabel:L,Radio:R,RadioGroup:z,Switch:B,TextareaAutosize:V,TextField:H}=(0,c.useMemo)(()=>D??{},[D]);if(!D)return c.createElement(l.ValueEditor,{skipHook:!0,key:P,...n});if(a===`null`||a===`notNull`)return null;let U=i?.placeholder??``;if((a===`between`||a===`notBetween`)&&(p===`select`||p===`text`)){let e=[`from`,`to`].map((e,t)=>p===`text`?c.createElement(H,{key:e,variant:`standard`,type:N,className:M,placeholder:U,value:O[t]??``,disabled:x,onChange:e=>k(e.target.value,t),...w}):c.createElement(C,{key:e,...E,path:h,level:g,className:M,handleOnChange:e=>k(e,t),muiComponents:D,disabled:x,value:O[t]??(0,l.getFirstOption)(_),options:_,listsAsArrays:v}));return c.createElement(I,{key:P,"data-testid":S,className:d,title:u,disabled:x},e[0],y,e[1])}switch(p){case`select`:case`multiselect`:return c.createElement(C,{key:P,...E,muiComponents:D,path:h,level:g,className:d,handleOnChange:s,options:_,value:o,disabled:x,title:u,multiple:p===`multiselect`,listsAsArrays:v});case`textarea`:return c.createElement(V,{key:P,value:o,title:u,disabled:x,className:d,placeholder:U,onChange:e=>s(e.target.value),...w});case`switch`:return c.createElement(B,{key:P,checked:!!o,title:u,disabled:x,className:d,onChange:e=>s(e.target.checked),...w});case`checkbox`:return c.createElement(F,{key:P,className:d,title:u,onChange:e=>s(e.target.checked),checked:!!o,disabled:x,...w});case`radio`:return c.createElement(I,{key:P,className:d,title:u,component:`fieldset`,disabled:x,...w},c.createElement(z,{value:o,onChange:e=>s(e.target.value)},_.map(e=>c.createElement(L,{key:e.name,disabled:x,value:e.name,control:c.createElement(R,null),name:e.name,label:e.label}))))}return m===`bigint`?c.createElement(H,{"data-testid":S,type:N,placeholder:U,value:`${o}`,title:u,className:d,disabled:x,onChange:e=>A(e.target.value),...w}):c.createElement(H,{variant:`standard`,key:P,type:N,value:o,title:u,disabled:x,className:d,placeholder:U,onChange:e=>s((0,l.parseNumber)(e.target.value,{parseNumbers:j})),...w})},v=(e,{ListSubheader:t,MenuItem:n})=>{if((0,l.isOptionGroupArray)(e)){let r=[];for(let i of e)r.push(c.createElement(t,{key:i.label},i.label),...i.options.map(e=>c.createElement(n,{key:e.name,value:e.name},e.label)));return r}return Array.isArray(e)?e.map(e=>c.createElement(n,{key:e.name,value:e.name},e.label)):null},y=({className:e,handleOnChange:t,options:n,value:r,disabled:i,title:a,multiple:o,listsAsArrays:s,testID:u,rule:d,ruleGroup:p,rules:m,level:h,path:g,context:_,validation:y,operator:b,field:x,fieldData:S,schema:C,muiComponents:w,defaultValue:T,...E})=>{let D=(0,c.useContext)(f)??w,{onChange:O,val:k}=(0,l.useValueSelector)({handleOnChange:t,listsAsArrays:s,multiple:o,value:r}),A=c.useCallback(({target:{value:e}})=>{O(e)},[O]),j=D?`mui`:`no-mui`;if(!D){let f=l.ValueSelector;return c.createElement(f,{key:j,className:e,handleOnChange:t,options:n,value:r,disabled:i,title:a,multiple:o,listsAsArrays:s,testID:u,rule:d,ruleGroup:p,rules:m,level:h,path:g,context:_,validation:y,operator:b,field:x,fieldData:S,schema:C})}let{FormControl:M,Select:N,ListSubheader:P,MenuItem:F}=D;return c.createElement(M,{key:j,variant:`standard`,className:e,title:a,disabled:i},c.createElement(N,{value:k,onChange:A,multiple:o,disabled:i,...E},v(n??[],{ListSubheader:P,MenuItem:F})))},b=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.removeRule.label;let{CloseIcon:t}=e;return c.createElement(t,null)},x=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.cloneRule.label;let{ContentCopyIcon:t}=e;return c.createElement(t,null)},S=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.lockRuleDisabled.label;let{LockIcon:t}=e;return c.createElement(t,null)},C=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.lockRule.label;let{LockOpenIcon:t}=e;return c.createElement(t,null)},w=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.shiftActionDown.label;let{KeyboardArrowDownIcon:t}=e;return c.createElement(t,null)},T=()=>{let e=c.useContext(f);if(!e)return l.defaultTranslations.shiftActionUp.label;let{KeyboardArrowUpIcon:t}=e;return c.createElement(t,null)},E={removeGroup:{label:c.createElement(b,null)},removeRule:{label:c.createElement(b,null)},cloneRule:{label:c.createElement(x,null)},cloneRuleGroup:{label:c.createElement(x,null)},lockGroup:{label:c.createElement(C,null)},lockRule:{label:c.createElement(C,null)},lockGroupDisabled:{label:c.createElement(S,null)},lockRuleDisabled:{label:c.createElement(S,null)},shiftActionDown:{label:c.createElement(w,null)},shiftActionUp:{label:c.createElement(T,null)}},D={DragIndicator:u.DragIndicator,Button:d.Button,Checkbox:d.Checkbox,CloseIcon:u.Close,ContentCopyIcon:u.ContentCopy,FormControl:d.FormControl,FormControlLabel:d.FormControlLabel,KeyboardArrowDownIcon:u.KeyboardArrowDown,KeyboardArrowUpIcon:u.KeyboardArrowUp,ListSubheader:d.ListSubheader,LockIcon:u.Lock,LockOpenIcon:u.LockOpen,MenuItem:d.MenuItem,Radio:d.Radio,RadioGroup:d.RadioGroup,Select:d.Select,Switch:d.Switch,TextareaAutosize:d.TextareaAutosize,TextField:d.TextField},O=e=>{let t=(0,c.useContext)(f),n=(0,c.useMemo)(()=>e&&t?{...D,...t,...e}:e?{...D,...e}:t?{...D,...t}:D,[t,e]);return n},k={actionElement:p,dragHandle:m,notToggle:h,shiftActions:g,valueEditor:_,valueSelector:y},A=(0,l.getCompatContextProvider)({controlElements:k,translations:E}),j=({muiComponents:e,...t})=>{let n=O(e),r=(0,c.useMemo)(()=>({...n,...e}),[n,e]);return c.createElement(f.Provider,{value:r},c.createElement(A,t))};exports.MaterialActionElement=p,exports.MaterialDragHandle=m,exports.MaterialNotToggle=h,exports.MaterialShiftActions=g,exports.MaterialValueEditor=_,exports.MaterialValueSelector=y,exports.QueryBuilderMaterial=j,exports.RQBMaterialContext=f,exports.defaultMuiComponents=D,exports.materialControlElements=k,exports.materialTranslations=E,exports.useMuiComponents=O; //# sourceMappingURL=react-querybuilder_material.cjs.production.js.map