@react-querybuilder/bootstrap 7.6.1 → 7.8.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/react-querybuilder_bootstrap.cjs.development.js +1 -1
- package/dist/cjs/react-querybuilder_bootstrap.cjs.development.js.map +1 -1
- package/dist/cjs/react-querybuilder_bootstrap.cjs.production.js +1 -1
- package/dist/cjs/react-querybuilder_bootstrap.cjs.production.js.map +1 -1
- package/dist/react-querybuilder_bootstrap.legacy-esm.js +3 -2
- package/dist/react-querybuilder_bootstrap.legacy-esm.js.map +1 -1
- package/dist/react-querybuilder_bootstrap.mjs +1 -1
- package/dist/react-querybuilder_bootstrap.mjs.map +1 -1
- package/dist/react-querybuilder_bootstrap.production.mjs +1 -1
- package/dist/react-querybuilder_bootstrap.production.mjs.map +1 -1
- package/dist/types/BootstrapNotToggle.d.ts +3 -0
- package/dist/types/BootstrapValueEditor.d.ts +3 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types-esm/BootstrapNotToggle.d.mts +3 -0
- package/dist/types-esm/BootstrapValueEditor.d.mts +3 -0
- package/dist/types-esm/index.d.mts +7 -0
- package/package.json +12 -12
- package/dist/cjs/react-querybuilder_bootstrap.cjs.development.d.ts +0 -63
- package/dist/cjs/react-querybuilder_bootstrap.cjs.production.d.ts +0 -63
- package/dist/react-querybuilder_bootstrap.d.mts +0 -63
- package/dist/react-querybuilder_bootstrap.legacy-esm.d.mts +0 -63
- package/dist/react-querybuilder_bootstrap.production.d.mts +0 -63
|
@@ -104,8 +104,8 @@ var BootstrapValueEditor = (props) => {
|
|
|
104
104
|
return /* @__PURE__ */ React2.createElement(
|
|
105
105
|
SelectorComponent,
|
|
106
106
|
{
|
|
107
|
-
...props,
|
|
108
107
|
key,
|
|
108
|
+
...props,
|
|
109
109
|
className: `${import_react_querybuilder.standardClassnames.valueListItem} form-select form-select-sm`,
|
|
110
110
|
handleOnChange: (v) => multiValueHandler(v, i),
|
|
111
111
|
disabled: props.disabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.tsx","../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { Classnames, ControlElementsProp, FullField, Translations } from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n} satisfies ControlElementsProp<FullField, string>;\n\nexport const bootstrapControlClassnames = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n} satisfies Partial<Classnames>;\n\nexport const bootstrapTranslations = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n} satisfies Partial<Translations>;\n\nexport const QueryBuilderBootstrap = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps) => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps) => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n {...props}\n key={key}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","import_react_querybuilder","React"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.tsx","../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type {\n Classnames,\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\nexport const bootstrapControlClassnames: Partial<Classnames> = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n};\n\nexport const bootstrapTranslations: Partial<Translations> = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n};\n\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps): React.JSX.Element => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n key={key}\n {...props}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","import_react_querybuilder","React"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var x=Object.create;var u=Object.defineProperty;var
|
|
1
|
+
"use strict";var x=Object.create;var u=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var A=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty;var P=(e,t)=>{for(var l in t)u(e,l,{get:t[l],enumerable:!0})},k=(e,t,l,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of R(t))!T.call(e,n)&&n!==l&&u(e,n,{get:()=>t[n],enumerable:!(i=E(t,n))||i.enumerable});return e};var h=(e,t,l)=>(l=e!=null?x(A(e)):{},k(t||!e||!e.__esModule?u(l,"default",{value:e,enumerable:!0}):l,e)),B=e=>k(u({},"__esModule",{value:!0}),e);var G={};P(G,{BootstrapNotToggle:()=>f,BootstrapValueEditor:()=>y,QueryBuilderBootstrap:()=>w,bootstrapControlClassnames:()=>C,bootstrapControlElements:()=>g,bootstrapTranslations:()=>p});module.exports=B(G);var s=h(require("react")),v=require("react-querybuilder");var d=h(require("react")),N=require("react"),f=({className:e,handleOnChange:t,title:l,label:i,checked:n,disabled:o})=>{let c=(0,N.useId)();return d.createElement("div",{className:`form-check-inline form-switch ${e}`},d.createElement("input",{id:c,className:"form-check-input",type:"checkbox",onChange:m=>t(m.target.checked),checked:!!n,disabled:o}),d.createElement("label",{title:l,htmlFor:c,className:"form-check-label"},i))};var r=h(require("react")),a=require("react-querybuilder"),y=e=>{let{valueAsArray:t,multiValueHandler:l}=(0,a.useValueEditor)({handleOnChange:e.handleOnChange,inputType:e.inputType,operator:e.operator,value:e.value,type:e.type,listsAsArrays:e.listsAsArrays,parseNumbers:e.parseNumbers,values:e.values}),{selectorComponent:i=a.ValueSelector}=e;if(e.operator==="null"||e.operator==="notNull")return null;let n=e.fieldData?.placeholder??"";if((e.operator==="between"||e.operator==="notBetween")&&(e.type==="select"||e.type==="text")){let o=["from","to"].map((c,m)=>e.type==="text"?r.createElement("input",{key:c,type:e.inputType||"text",placeholder:n,value:t[m]??"",className:`${a.standardClassnames.valueListItem} form-control form-control-sm`,disabled:e.disabled,onChange:b=>l(b.target.value,m)}):r.createElement(i,{key:c,...e,className:`${a.standardClassnames.valueListItem} form-select form-select-sm`,handleOnChange:b=>l(b,m),disabled:e.disabled,value:t[m]??(0,a.getFirstOption)(e.values),options:e.values??[],listsAsArrays:e.listsAsArrays}));return r.createElement("span",{"data-testid":e.testID,className:a.standardClassnames.value,title:e.title},o[0],e.separator,o[1])}switch(e.type){case"select":case"multiselect":return r.createElement(a.ValueEditor,{skipHook:!0,...e,className:`${e.className} form-select form-select-sm`});case"switch":return r.createElement("span",{className:`custom-control custom-switch ${e.className}`},r.createElement("input",{type:"checkbox",className:"form-check-input custom-control-input",title:e.title,disabled:e.disabled,onChange:o=>e.handleOnChange(o.target.checked),checked:!!e.value}));case"checkbox":return r.createElement(a.ValueEditor,{skipHook:!0,...e,className:`form-check-input ${e.className}`});case"radio":return r.createElement("span",{title:e.title,className:a.standardClassnames.value},e.values?.map(o=>r.createElement("div",{key:o.name,className:"form-check form-check-inline"},r.createElement("input",{className:"form-check-input",type:"radio",id:o.name,value:o.name,checked:e.value===o.name,disabled:e.disabled,onChange:c=>e.handleOnChange(c.target.value)}),r.createElement("label",{className:"form-check-label",htmlFor:o.name},o.label))))}return r.createElement(a.ValueEditor,{skipHook:!0,...e})};var g={notToggle:f,valueEditor:y},C={actionElement:"btn btn-sm",addGroup:"btn-secondary",addRule:"btn-primary",cloneGroup:"btn-secondary",cloneRule:"btn-secondary",lockGroup:"btn-secondary",lockRule:"btn-secondary",removeGroup:"btn-danger",removeRule:"btn-danger",value:"form-control form-control-sm",valueSelector:"form-select form-select-sm"},p={removeGroup:{label:s.createElement("i",{className:"bi bi-x"})},removeRule:{label:s.createElement("i",{className:"bi bi-x"})},cloneRule:{label:s.createElement("i",{className:"bi bi-copy"})},cloneRuleGroup:{label:s.createElement("i",{className:"bi bi-copy"})},dragHandle:{label:s.createElement("i",{className:"bi bi-grip-vertical"})},lockGroup:{label:s.createElement("i",{className:"bi bi-unlock"})},lockRule:{label:s.createElement("i",{className:"bi bi-unlock"})},lockGroupDisabled:{label:s.createElement("i",{className:"bi bi-lock"})},lockRuleDisabled:{label:s.createElement("i",{className:"bi bi-lock"})},shiftActionUp:{label:s.createElement("i",{className:"bi bi-chevron-compact-up"})},shiftActionDown:{label:s.createElement("i",{className:"bi bi-chevron-compact-down"})}},w=(0,v.getCompatContextProvider)({controlClassnames:C,controlElements:g,translations:p});0&&(module.exports={BootstrapNotToggle,BootstrapValueEditor,QueryBuilderBootstrap,bootstrapControlClassnames,bootstrapControlElements,bootstrapTranslations});
|
|
2
2
|
//# sourceMappingURL=react-querybuilder_bootstrap.cjs.production.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.tsx","../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { Classnames, ControlElementsProp, FullField, Translations } from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n} satisfies ControlElementsProp<FullField, string>;\n\nexport const bootstrapControlClassnames = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n} satisfies Partial<Classnames>;\n\nexport const bootstrapTranslations = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n} satisfies Partial<Translations>;\n\nexport const QueryBuilderBootstrap = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps) => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps) => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n {...props}\n key={key}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["src_exports","__export","BootstrapNotToggle","BootstrapValueEditor","QueryBuilderBootstrap","bootstrapControlClassnames","bootstrapControlElements","bootstrapTranslations","__toCommonJS","React","import_react_querybuilder","React","import_react","BootstrapNotToggle","className","handleOnChange","title","label","checked","disabled","id","e","React","import_react_querybuilder","BootstrapValueEditor","props","valueAsArray","multiValueHandler","SelectorComponent","placeHolderText","editors","key","i","e","v","bootstrapControlElements","BootstrapNotToggle","BootstrapValueEditor","bootstrapControlClassnames","bootstrapTranslations","QueryBuilderBootstrap"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.tsx","../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type {\n Classnames,\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\nexport const bootstrapControlClassnames: Partial<Classnames> = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n};\n\nexport const bootstrapTranslations: Partial<Translations> = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n};\n\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps): React.JSX.Element => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n key={key}\n {...props}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,EAAA,yBAAAC,EAAA,0BAAAC,EAAA,+BAAAC,EAAA,6BAAAC,EAAA,0BAAAC,IAAA,eAAAC,EAAAR,GAAA,IAAAS,EAAuB,oBAQvBC,EAAyC,8BCRzC,IAAAC,EAAuB,oBACvBC,EAAsB,iBAGTC,EAAqB,CAAC,CACjC,UAAAC,EACA,eAAAC,EACA,MAAAC,EACA,MAAAC,EACA,QAAAC,EACA,SAAAC,CACF,IAAyC,CACvC,IAAMC,KAAK,SAAM,EAEjB,OACE,gBAAC,OAAI,UAAW,iCAAiCN,CAAS,IACxD,gBAAC,SACC,GAAIM,EACJ,UAAU,mBACV,KAAK,WACL,SAAUC,GAAKN,EAAeM,EAAE,OAAO,OAAO,EAC9C,QAAS,CAAC,CAACH,EACX,SAAUC,EACZ,EACA,gBAAC,SAAM,MAAOH,EAAO,QAASI,EAAI,UAAU,oBACzCH,CACH,CACF,CAEJ,EC7BA,IAAAK,EAAuB,oBAEvBC,EAMO,8BAEMC,EAAwBC,GAAsD,CACzF,GAAM,CAAE,aAAAC,EAAc,kBAAAC,CAAkB,KAAI,kBAAe,CACzD,eAAgBF,EAAM,eACtB,UAAWA,EAAM,UACjB,SAAUA,EAAM,SAChB,MAAOA,EAAM,MACb,KAAMA,EAAM,KACZ,cAAeA,EAAM,cACrB,aAAcA,EAAM,aACpB,OAAQA,EAAM,MAChB,CAAC,EAEK,CAAE,kBAAmBG,EAAoB,eAAc,EAAIH,EAEjE,GAAIA,EAAM,WAAa,QAAUA,EAAM,WAAa,UAClD,OAAO,KAGT,IAAMI,EAAkBJ,EAAM,WAAW,aAAe,GAExD,IACGA,EAAM,WAAa,WAAaA,EAAM,WAAa,gBACnDA,EAAM,OAAS,UAAYA,EAAM,OAAS,QAC3C,CACA,IAAMK,EAAU,CAAC,OAAQ,IAAI,EAAE,IAAI,CAACC,EAAKC,IACnCP,EAAM,OAAS,OAEf,gBAAC,SACC,IAAKM,EACL,KAAMN,EAAM,WAAa,OACzB,YAAaI,EACb,MAAOH,EAAaM,CAAC,GAAK,GAC1B,UAAW,GAAG,qBAAmB,aAAa,gCAC9C,SAAUP,EAAM,SAChB,SAAUQ,GAAKN,EAAkBM,EAAE,OAAO,MAAOD,CAAC,EACpD,EAIF,gBAACJ,EAAA,CACC,IAAKG,EACJ,GAAGN,EACJ,UAAW,GAAG,qBAAmB,aAAa,8BAC9C,eAAgBS,GAAKP,EAAkBO,EAAGF,CAAC,EAC3C,SAAUP,EAAM,SAChB,MAAOC,EAAaM,CAAC,MAAK,kBAAeP,EAAM,MAAM,EACrD,QAASA,EAAM,QAAU,CAAC,EAC1B,cAAeA,EAAM,cACvB,CAEH,EAED,OACE,gBAAC,QAAK,cAAaA,EAAM,OAAQ,UAAW,qBAAmB,MAAO,MAAOA,EAAM,OAChFK,EAAQ,CAAC,EACTL,EAAM,UACNK,EAAQ,CAAC,CACZ,CAEJ,CAEA,OAAQL,EAAM,KAAM,CAClB,IAAK,SACL,IAAK,cACH,OACE,gBAAC,eACC,SAAQ,GACP,GAAGA,EACJ,UAAW,GAAGA,EAAM,SAAS,8BAC/B,EAGJ,IAAK,SACH,OACE,gBAAC,QAAK,UAAW,gCAAgCA,EAAM,SAAS,IAC9D,gBAAC,SACC,KAAK,WACL,UAAU,wCACV,MAAOA,EAAM,MACb,SAAUA,EAAM,SAChB,SAAUQ,GAAKR,EAAM,eAAeQ,EAAE,OAAO,OAAO,EACpD,QAAS,CAAC,CAACR,EAAM,MACnB,CACF,EAGJ,IAAK,WACH,OAAO,gBAAC,eAAY,SAAQ,GAAE,GAAGA,EAAO,UAAW,oBAAoBA,EAAM,SAAS,GAAI,EAE5F,IAAK,QACH,OACE,gBAAC,QAAK,MAAOA,EAAM,MAAO,UAAW,qBAAmB,OACrDA,EAAM,QAAQ,IAAIS,GACjB,gBAAC,OAAI,IAAKA,EAAE,KAAM,UAAU,gCAC1B,gBAAC,SACC,UAAU,mBACV,KAAK,QACL,GAAIA,EAAE,KACN,MAAOA,EAAE,KACT,QAAST,EAAM,QAAUS,EAAE,KAC3B,SAAUT,EAAM,SAChB,SAAUQ,GAAKR,EAAM,eAAeQ,EAAE,OAAO,KAAK,EACpD,EACA,gBAAC,SAAM,UAAU,mBAAmB,QAASC,EAAE,MAC5CA,EAAE,KACL,CACF,CACD,CACH,CAEN,CAEA,OAAO,gBAAC,eAAY,SAAQ,GAAE,GAAGT,EAAO,CAC1C,EF5GO,IAAMU,EAAmE,CAC9E,UAAWC,EACX,YAAaC,CACf,EAEaC,EAAkD,CAC7D,cAAe,aACf,SAAU,gBACV,QAAS,cACT,WAAY,gBACZ,UAAW,gBACX,UAAW,gBACX,SAAU,gBACV,YAAa,aACb,WAAY,aACZ,MAAO,+BACP,cAAe,4BACjB,EAEaC,EAA+C,CAC1D,YAAa,CAAE,MAAO,gBAAC,KAAE,UAAU,UAAU,CAAG,EAChD,WAAY,CAAE,MAAO,gBAAC,KAAE,UAAU,UAAU,CAAG,EAC/C,UAAW,CAAE,MAAO,gBAAC,KAAE,UAAU,aAAa,CAAG,EACjD,eAAgB,CAAE,MAAO,gBAAC,KAAE,UAAU,aAAa,CAAG,EACtD,WAAY,CAAE,MAAO,gBAAC,KAAE,UAAU,sBAAsB,CAAG,EAC3D,UAAW,CAAE,MAAO,gBAAC,KAAE,UAAU,eAAe,CAAG,EACnD,SAAU,CAAE,MAAO,gBAAC,KAAE,UAAU,eAAe,CAAG,EAClD,kBAAmB,CAAE,MAAO,gBAAC,KAAE,UAAU,aAAa,CAAG,EACzD,iBAAkB,CAAE,MAAO,gBAAC,KAAE,UAAU,aAAa,CAAG,EACxD,cAAe,CAAE,MAAO,gBAAC,KAAE,UAAU,2BAA2B,CAAG,EACnE,gBAAiB,CAAE,MAAO,gBAAC,KAAE,UAAU,6BAA6B,CAAG,CACzE,EAEaC,KAAqD,4BAAyB,CACzF,kBAAmBF,EACnB,gBAAiBH,EACjB,aAAcI,CAChB,CAAC","names":["src_exports","__export","BootstrapNotToggle","BootstrapValueEditor","QueryBuilderBootstrap","bootstrapControlClassnames","bootstrapControlElements","bootstrapTranslations","__toCommonJS","React","import_react_querybuilder","React","import_react","BootstrapNotToggle","className","handleOnChange","title","label","checked","disabled","id","e","React","import_react_querybuilder","BootstrapValueEditor","props","valueAsArray","multiValueHandler","SelectorComponent","placeHolderText","editors","key","i","e","v","bootstrapControlElements","BootstrapNotToggle","BootstrapValueEditor","bootstrapControlClassnames","bootstrapTranslations","QueryBuilderBootstrap"]}
|
|
@@ -92,8 +92,9 @@ var BootstrapValueEditor = (props) => {
|
|
|
92
92
|
}
|
|
93
93
|
return /* @__PURE__ */ React2.createElement(
|
|
94
94
|
SelectorComponent,
|
|
95
|
-
__spreadProps(__spreadValues({
|
|
96
|
-
key
|
|
95
|
+
__spreadProps(__spreadValues({
|
|
96
|
+
key
|
|
97
|
+
}, props), {
|
|
97
98
|
className: `${standardClassnames.valueListItem} form-select form-select-sm`,
|
|
98
99
|
handleOnChange: (v) => multiValueHandler(v, i),
|
|
99
100
|
disabled: props.disabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { Classnames, ControlElementsProp, FullField, Translations } from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n} satisfies ControlElementsProp<FullField, string>;\n\nexport const bootstrapControlClassnames = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n} satisfies Partial<Classnames>;\n\nexport const bootstrapTranslations = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n} satisfies Partial<Translations>;\n\nexport const QueryBuilderBootstrap = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps) => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps) => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n {...props}\n key={key}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","React","_a","_b","_c"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type {\n Classnames,\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\nexport const bootstrapControlClassnames: Partial<Classnames> = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n};\n\nexport const bootstrapTranslations: Partial<Translations> = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n};\n\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps): React.JSX.Element => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n key={key}\n {...props}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","React","_a","_b","_c"]}
|
|
@@ -71,8 +71,8 @@ var BootstrapValueEditor = (props) => {
|
|
|
71
71
|
return /* @__PURE__ */ React2.createElement(
|
|
72
72
|
SelectorComponent,
|
|
73
73
|
{
|
|
74
|
-
...props,
|
|
75
74
|
key,
|
|
75
|
+
...props,
|
|
76
76
|
className: `${standardClassnames.valueListItem} form-select form-select-sm`,
|
|
77
77
|
handleOnChange: (v) => multiValueHandler(v, i),
|
|
78
78
|
disabled: props.disabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { Classnames, ControlElementsProp, FullField, Translations } from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n} satisfies ControlElementsProp<FullField, string>;\n\nexport const bootstrapControlClassnames = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n} satisfies Partial<Classnames>;\n\nexport const bootstrapTranslations = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n} satisfies Partial<Translations>;\n\nexport const QueryBuilderBootstrap = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps) => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps) => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n {...props}\n key={key}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","React"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type {\n Classnames,\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\nexport const bootstrapControlClassnames: Partial<Classnames> = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n};\n\nexport const bootstrapTranslations: Partial<Translations> = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n};\n\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps): React.JSX.Element => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n key={key}\n {...props}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","React"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as l from"react";import{getCompatContextProvider as
|
|
1
|
+
import*as l from"react";import{getCompatContextProvider as g}from"react-querybuilder";import*as c from"react";import{useId as y}from"react";var h=({className:e,handleOnChange:s,title:n,label:m,checked:u,disabled:t})=>{let o=y();return c.createElement("div",{className:`form-check-inline form-switch ${e}`},c.createElement("input",{id:o,className:"form-check-input",type:"checkbox",onChange:r=>s(r.target.checked),checked:!!u,disabled:t}),c.createElement("label",{title:n,htmlFor:o,className:"form-check-label"},m))};import*as a from"react";import{getFirstOption as k,standardClassnames as i,useValueEditor as N,ValueEditor as b,ValueSelector as v}from"react-querybuilder";var f=e=>{let{valueAsArray:s,multiValueHandler:n}=N({handleOnChange:e.handleOnChange,inputType:e.inputType,operator:e.operator,value:e.value,type:e.type,listsAsArrays:e.listsAsArrays,parseNumbers:e.parseNumbers,values:e.values}),{selectorComponent:m=v}=e;if(e.operator==="null"||e.operator==="notNull")return null;let u=e.fieldData?.placeholder??"";if((e.operator==="between"||e.operator==="notBetween")&&(e.type==="select"||e.type==="text")){let t=["from","to"].map((o,r)=>e.type==="text"?a.createElement("input",{key:o,type:e.inputType||"text",placeholder:u,value:s[r]??"",className:`${i.valueListItem} form-control form-control-sm`,disabled:e.disabled,onChange:d=>n(d.target.value,r)}):a.createElement(m,{key:o,...e,className:`${i.valueListItem} form-select form-select-sm`,handleOnChange:d=>n(d,r),disabled:e.disabled,value:s[r]??k(e.values),options:e.values??[],listsAsArrays:e.listsAsArrays}));return a.createElement("span",{"data-testid":e.testID,className:i.value,title:e.title},t[0],e.separator,t[1])}switch(e.type){case"select":case"multiselect":return a.createElement(b,{skipHook:!0,...e,className:`${e.className} form-select form-select-sm`});case"switch":return a.createElement("span",{className:`custom-control custom-switch ${e.className}`},a.createElement("input",{type:"checkbox",className:"form-check-input custom-control-input",title:e.title,disabled:e.disabled,onChange:t=>e.handleOnChange(t.target.checked),checked:!!e.value}));case"checkbox":return a.createElement(b,{skipHook:!0,...e,className:`form-check-input ${e.className}`});case"radio":return a.createElement("span",{title:e.title,className:i.value},e.values?.map(t=>a.createElement("div",{key:t.name,className:"form-check form-check-inline"},a.createElement("input",{className:"form-check-input",type:"radio",id:t.name,value:t.name,checked:e.value===t.name,disabled:e.disabled,onChange:o=>e.handleOnChange(o.target.value)}),a.createElement("label",{className:"form-check-label",htmlFor:t.name},t.label))))}return a.createElement(b,{skipHook:!0,...e})};var C={notToggle:h,valueEditor:f},p={actionElement:"btn btn-sm",addGroup:"btn-secondary",addRule:"btn-primary",cloneGroup:"btn-secondary",cloneRule:"btn-secondary",lockGroup:"btn-secondary",lockRule:"btn-secondary",removeGroup:"btn-danger",removeRule:"btn-danger",value:"form-control form-control-sm",valueSelector:"form-select form-select-sm"},x={removeGroup:{label:l.createElement("i",{className:"bi bi-x"})},removeRule:{label:l.createElement("i",{className:"bi bi-x"})},cloneRule:{label:l.createElement("i",{className:"bi bi-copy"})},cloneRuleGroup:{label:l.createElement("i",{className:"bi bi-copy"})},dragHandle:{label:l.createElement("i",{className:"bi bi-grip-vertical"})},lockGroup:{label:l.createElement("i",{className:"bi bi-unlock"})},lockRule:{label:l.createElement("i",{className:"bi bi-unlock"})},lockGroupDisabled:{label:l.createElement("i",{className:"bi bi-lock"})},lockRuleDisabled:{label:l.createElement("i",{className:"bi bi-lock"})},shiftActionUp:{label:l.createElement("i",{className:"bi bi-chevron-compact-up"})},shiftActionDown:{label:l.createElement("i",{className:"bi bi-chevron-compact-down"})}},G=g({controlClassnames:p,controlElements:C,translations:x});export{h as BootstrapNotToggle,f as BootstrapValueEditor,G as QueryBuilderBootstrap,p as bootstrapControlClassnames,C as bootstrapControlElements,x as bootstrapTranslations};
|
|
2
2
|
//# sourceMappingURL=react-querybuilder_bootstrap.production.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { Classnames, ControlElementsProp, FullField, Translations } from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n} satisfies ControlElementsProp<FullField, string>;\n\nexport const bootstrapControlClassnames = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n} satisfies Partial<Classnames>;\n\nexport const bootstrapTranslations = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n} satisfies Partial<Translations>;\n\nexport const QueryBuilderBootstrap = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps) => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps) => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n {...props}\n key={key}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","getCompatContextProvider","React","useId","BootstrapNotToggle","className","handleOnChange","title","label","checked","disabled","id","e","React","getFirstOption","standardClassnames","useValueEditor","ValueEditor","ValueSelector","BootstrapValueEditor","props","valueAsArray","multiValueHandler","SelectorComponent","placeHolderText","editors","key","i","e","v","bootstrapControlElements","BootstrapNotToggle","BootstrapValueEditor","bootstrapControlClassnames","bootstrapTranslations","QueryBuilderBootstrap","getCompatContextProvider"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.tsx","../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx"],"sourcesContent":["import * as React from 'react';\nimport type {\n Classnames,\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { BootstrapNotToggle } from './BootstrapNotToggle';\nimport { BootstrapValueEditor } from './BootstrapValueEditor';\n\nexport * from './BootstrapNotToggle';\nexport * from './BootstrapValueEditor';\n\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\nexport const bootstrapControlClassnames: Partial<Classnames> = {\n actionElement: 'btn btn-sm',\n addGroup: 'btn-secondary',\n addRule: 'btn-primary',\n cloneGroup: 'btn-secondary',\n cloneRule: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n value: 'form-control form-control-sm',\n valueSelector: 'form-select form-select-sm',\n};\n\nexport const bootstrapTranslations: Partial<Translations> = {\n removeGroup: { label: <i className=\"bi bi-x\" /> },\n removeRule: { label: <i className=\"bi bi-x\" /> },\n cloneRule: { label: <i className=\"bi bi-copy\" /> },\n cloneRuleGroup: { label: <i className=\"bi bi-copy\" /> },\n dragHandle: { label: <i className=\"bi bi-grip-vertical\" /> },\n lockGroup: { label: <i className=\"bi bi-unlock\" /> },\n lockRule: { label: <i className=\"bi bi-unlock\" /> },\n lockGroupDisabled: { label: <i className=\"bi bi-lock\" /> },\n lockRuleDisabled: { label: <i className=\"bi bi-lock\" /> },\n shiftActionUp: { label: <i className=\"bi bi-chevron-compact-up\" /> },\n shiftActionDown: { label: <i className=\"bi bi-chevron-compact-down\" /> },\n};\n\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n","import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\nexport const BootstrapNotToggle = ({\n className,\n handleOnChange,\n title,\n label,\n checked,\n disabled,\n}: NotToggleProps): React.JSX.Element => {\n const id = useId();\n\n return (\n <div className={`form-check-inline form-switch ${className}`}>\n <input\n id={id}\n className=\"form-check-input\"\n type=\"checkbox\"\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!checked}\n disabled={disabled}\n />\n <label title={title} htmlFor={id} className=\"form-check-label\">\n {label}\n </label>\n </div>\n );\n};\n","import * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport {\n getFirstOption,\n standardClassnames,\n useValueEditor,\n ValueEditor,\n ValueSelector,\n} from 'react-querybuilder';\n\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueAsArray, multiValueHandler } = useValueEditor({\n handleOnChange: props.handleOnChange,\n inputType: props.inputType,\n operator: props.operator,\n value: props.value,\n type: props.type,\n listsAsArrays: props.listsAsArrays,\n parseNumbers: props.parseNumbers,\n values: props.values,\n });\n\n const { selectorComponent: SelectorComponent = ValueSelector } = props;\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = props.fieldData?.placeholder ?? '';\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const editors = ['from', 'to'].map((key, i) => {\n if (props.type === 'text') {\n return (\n <input\n key={key}\n type={props.inputType || 'text'}\n placeholder={placeHolderText}\n value={valueAsArray[i] ?? ''}\n className={`${standardClassnames.valueListItem} form-control form-control-sm`}\n disabled={props.disabled}\n onChange={e => multiValueHandler(e.target.value, i)}\n />\n );\n }\n return (\n <SelectorComponent\n key={key}\n {...props}\n className={`${standardClassnames.valueListItem} form-select form-select-sm`}\n handleOnChange={v => multiValueHandler(v, i)}\n disabled={props.disabled}\n value={valueAsArray[i] ?? getFirstOption(props.values)}\n options={props.values ?? []}\n listsAsArrays={props.listsAsArrays}\n />\n );\n });\n\n return (\n <span data-testid={props.testID} className={standardClassnames.value} title={props.title}>\n {editors[0]}\n {props.separator}\n {editors[1]}\n </span>\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n skipHook\n {...props}\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`custom-control custom-switch ${props.className}`}>\n <input\n type=\"checkbox\"\n className=\"form-check-input custom-control-input\"\n title={props.title}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.checked)}\n checked={!!props.value}\n />\n </span>\n );\n\n case 'checkbox':\n return <ValueEditor skipHook {...props} className={`form-check-input ${props.className}`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <div key={v.name} className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={v.name}\n value={v.name}\n checked={props.value === v.name}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={v.name}>\n {v.label}\n </label>\n </div>\n ))}\n </span>\n );\n }\n\n return <ValueEditor skipHook {...props} />;\n};\n"],"mappings":"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","names":["React","getCompatContextProvider","React","useId","BootstrapNotToggle","className","handleOnChange","title","label","checked","disabled","id","e","React","getFirstOption","standardClassnames","useValueEditor","ValueEditor","ValueSelector","BootstrapValueEditor","props","valueAsArray","multiValueHandler","SelectorComponent","placeHolderText","editors","key","i","e","v","bootstrapControlElements","BootstrapNotToggle","BootstrapValueEditor","bootstrapControlClassnames","bootstrapTranslations","QueryBuilderBootstrap","getCompatContextProvider"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Classnames, ControlElementsProp, FullField, QueryBuilderContextProvider, Translations } from "react-querybuilder";
|
|
2
|
+
export * from "./BootstrapNotToggle";
|
|
3
|
+
export * from "./BootstrapValueEditor";
|
|
4
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
5
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
6
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
7
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Classnames, ControlElementsProp, FullField, QueryBuilderContextProvider, Translations } from "react-querybuilder";
|
|
2
|
+
export * from "./BootstrapNotToggle.mjs";
|
|
3
|
+
export * from "./BootstrapValueEditor.mjs";
|
|
4
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
5
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
6
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
7
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-querybuilder/bootstrap",
|
|
3
3
|
"description": "Custom Bootstrap components for react-querybuilder",
|
|
4
|
-
"version": "7.
|
|
4
|
+
"version": "7.8.0-alpha.0",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -11,16 +11,16 @@
|
|
|
11
11
|
"./package.json": "./package.json",
|
|
12
12
|
".": {
|
|
13
13
|
"import": {
|
|
14
|
-
"types": "./dist/
|
|
14
|
+
"types": "./dist/types-esm/index.d.mts",
|
|
15
15
|
"default": "./dist/react-querybuilder_bootstrap.mjs"
|
|
16
16
|
},
|
|
17
17
|
"require": {
|
|
18
|
-
"types": "./dist/
|
|
18
|
+
"types": "./dist/types/index.d.ts",
|
|
19
19
|
"default": "./dist/cjs/index.js"
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
},
|
|
23
|
-
"types": "./dist/
|
|
23
|
+
"types": "./dist/types/index.d.ts",
|
|
24
24
|
"files": [
|
|
25
25
|
"dist"
|
|
26
26
|
],
|
|
@@ -34,30 +34,30 @@
|
|
|
34
34
|
"homepage": "https://react-querybuilder.js.org/",
|
|
35
35
|
"scripts": {
|
|
36
36
|
"start": "bunx --bun vite",
|
|
37
|
-
"build": "tsup",
|
|
37
|
+
"build": "bunx --bun tsup",
|
|
38
38
|
"typecheck": "tsc --noEmit",
|
|
39
39
|
"typecheck:watch": "tsc --noEmit --watch"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@popperjs/core": "^2.11.8",
|
|
43
43
|
"@testing-library/dom": "^10.4.0",
|
|
44
|
-
"@testing-library/react": "^16.0.
|
|
45
|
-
"@types/react": "^18.3.
|
|
44
|
+
"@testing-library/react": "^16.0.1",
|
|
45
|
+
"@types/react": "^18.3.9",
|
|
46
46
|
"@vitejs/plugin-react-swc": "^3.7.0",
|
|
47
47
|
"bootstrap": "^5.3.3",
|
|
48
48
|
"bootstrap-icons": "^1.11.3",
|
|
49
49
|
"react": "^18.3.1",
|
|
50
50
|
"react-dom": "^18.3.1",
|
|
51
|
-
"react-querybuilder": "7.
|
|
51
|
+
"react-querybuilder": "7.8.0-alpha.0",
|
|
52
52
|
"rollup-plugin-visualizer": "^5.12.0",
|
|
53
|
-
"typescript": "^5.
|
|
54
|
-
"vite": "^5.
|
|
53
|
+
"typescript": "^5.6.2",
|
|
54
|
+
"vite": "^5.4.8"
|
|
55
55
|
},
|
|
56
56
|
"peerDependencies": {
|
|
57
57
|
"bootstrap": ">=5",
|
|
58
58
|
"bootstrap-icons": ">=1.7.0",
|
|
59
59
|
"react": ">=18",
|
|
60
|
-
"react-querybuilder": "7.
|
|
60
|
+
"react-querybuilder": "7.8.0-alpha.0"
|
|
61
61
|
},
|
|
62
|
-
"gitHead": "
|
|
62
|
+
"gitHead": "2e7089a27e676cff934dcd6514dbd379b7a6d869"
|
|
63
63
|
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
2
|
-
import { NotToggleProps, ValueEditorProps } from 'react-querybuilder';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled, }: NotToggleProps) => React.JSX.Element;
|
|
6
|
-
|
|
7
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
8
|
-
|
|
9
|
-
declare const bootstrapControlElements: {
|
|
10
|
-
notToggle: ({ className, handleOnChange, title, label, checked, disabled, }: react_querybuilder.NotToggleProps) => React.JSX.Element;
|
|
11
|
-
valueEditor: (props: react_querybuilder.ValueEditorProps) => React.JSX.Element | null;
|
|
12
|
-
};
|
|
13
|
-
declare const bootstrapControlClassnames: {
|
|
14
|
-
actionElement: string;
|
|
15
|
-
addGroup: string;
|
|
16
|
-
addRule: string;
|
|
17
|
-
cloneGroup: string;
|
|
18
|
-
cloneRule: string;
|
|
19
|
-
lockGroup: string;
|
|
20
|
-
lockRule: string;
|
|
21
|
-
removeGroup: string;
|
|
22
|
-
removeRule: string;
|
|
23
|
-
value: string;
|
|
24
|
-
valueSelector: string;
|
|
25
|
-
};
|
|
26
|
-
declare const bootstrapTranslations: {
|
|
27
|
-
removeGroup: {
|
|
28
|
-
label: React.JSX.Element;
|
|
29
|
-
};
|
|
30
|
-
removeRule: {
|
|
31
|
-
label: React.JSX.Element;
|
|
32
|
-
};
|
|
33
|
-
cloneRule: {
|
|
34
|
-
label: React.JSX.Element;
|
|
35
|
-
};
|
|
36
|
-
cloneRuleGroup: {
|
|
37
|
-
label: React.JSX.Element;
|
|
38
|
-
};
|
|
39
|
-
dragHandle: {
|
|
40
|
-
label: React.JSX.Element;
|
|
41
|
-
};
|
|
42
|
-
lockGroup: {
|
|
43
|
-
label: React.JSX.Element;
|
|
44
|
-
};
|
|
45
|
-
lockRule: {
|
|
46
|
-
label: React.JSX.Element;
|
|
47
|
-
};
|
|
48
|
-
lockGroupDisabled: {
|
|
49
|
-
label: React.JSX.Element;
|
|
50
|
-
};
|
|
51
|
-
lockRuleDisabled: {
|
|
52
|
-
label: React.JSX.Element;
|
|
53
|
-
};
|
|
54
|
-
shiftActionUp: {
|
|
55
|
-
label: React.JSX.Element;
|
|
56
|
-
};
|
|
57
|
-
shiftActionDown: {
|
|
58
|
-
label: React.JSX.Element;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
declare const QueryBuilderBootstrap: react_querybuilder.QueryBuilderContextProvider<Record<string, any>>;
|
|
62
|
-
|
|
63
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
2
|
-
import { NotToggleProps, ValueEditorProps } from 'react-querybuilder';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled, }: NotToggleProps) => React.JSX.Element;
|
|
6
|
-
|
|
7
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
8
|
-
|
|
9
|
-
declare const bootstrapControlElements: {
|
|
10
|
-
notToggle: ({ className, handleOnChange, title, label, checked, disabled, }: react_querybuilder.NotToggleProps) => React.JSX.Element;
|
|
11
|
-
valueEditor: (props: react_querybuilder.ValueEditorProps) => React.JSX.Element | null;
|
|
12
|
-
};
|
|
13
|
-
declare const bootstrapControlClassnames: {
|
|
14
|
-
actionElement: string;
|
|
15
|
-
addGroup: string;
|
|
16
|
-
addRule: string;
|
|
17
|
-
cloneGroup: string;
|
|
18
|
-
cloneRule: string;
|
|
19
|
-
lockGroup: string;
|
|
20
|
-
lockRule: string;
|
|
21
|
-
removeGroup: string;
|
|
22
|
-
removeRule: string;
|
|
23
|
-
value: string;
|
|
24
|
-
valueSelector: string;
|
|
25
|
-
};
|
|
26
|
-
declare const bootstrapTranslations: {
|
|
27
|
-
removeGroup: {
|
|
28
|
-
label: React.JSX.Element;
|
|
29
|
-
};
|
|
30
|
-
removeRule: {
|
|
31
|
-
label: React.JSX.Element;
|
|
32
|
-
};
|
|
33
|
-
cloneRule: {
|
|
34
|
-
label: React.JSX.Element;
|
|
35
|
-
};
|
|
36
|
-
cloneRuleGroup: {
|
|
37
|
-
label: React.JSX.Element;
|
|
38
|
-
};
|
|
39
|
-
dragHandle: {
|
|
40
|
-
label: React.JSX.Element;
|
|
41
|
-
};
|
|
42
|
-
lockGroup: {
|
|
43
|
-
label: React.JSX.Element;
|
|
44
|
-
};
|
|
45
|
-
lockRule: {
|
|
46
|
-
label: React.JSX.Element;
|
|
47
|
-
};
|
|
48
|
-
lockGroupDisabled: {
|
|
49
|
-
label: React.JSX.Element;
|
|
50
|
-
};
|
|
51
|
-
lockRuleDisabled: {
|
|
52
|
-
label: React.JSX.Element;
|
|
53
|
-
};
|
|
54
|
-
shiftActionUp: {
|
|
55
|
-
label: React.JSX.Element;
|
|
56
|
-
};
|
|
57
|
-
shiftActionDown: {
|
|
58
|
-
label: React.JSX.Element;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
declare const QueryBuilderBootstrap: react_querybuilder.QueryBuilderContextProvider<Record<string, any>>;
|
|
62
|
-
|
|
63
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
2
|
-
import { NotToggleProps, ValueEditorProps } from 'react-querybuilder';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled, }: NotToggleProps) => React.JSX.Element;
|
|
6
|
-
|
|
7
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
8
|
-
|
|
9
|
-
declare const bootstrapControlElements: {
|
|
10
|
-
notToggle: ({ className, handleOnChange, title, label, checked, disabled, }: react_querybuilder.NotToggleProps) => React.JSX.Element;
|
|
11
|
-
valueEditor: (props: react_querybuilder.ValueEditorProps) => React.JSX.Element | null;
|
|
12
|
-
};
|
|
13
|
-
declare const bootstrapControlClassnames: {
|
|
14
|
-
actionElement: string;
|
|
15
|
-
addGroup: string;
|
|
16
|
-
addRule: string;
|
|
17
|
-
cloneGroup: string;
|
|
18
|
-
cloneRule: string;
|
|
19
|
-
lockGroup: string;
|
|
20
|
-
lockRule: string;
|
|
21
|
-
removeGroup: string;
|
|
22
|
-
removeRule: string;
|
|
23
|
-
value: string;
|
|
24
|
-
valueSelector: string;
|
|
25
|
-
};
|
|
26
|
-
declare const bootstrapTranslations: {
|
|
27
|
-
removeGroup: {
|
|
28
|
-
label: React.JSX.Element;
|
|
29
|
-
};
|
|
30
|
-
removeRule: {
|
|
31
|
-
label: React.JSX.Element;
|
|
32
|
-
};
|
|
33
|
-
cloneRule: {
|
|
34
|
-
label: React.JSX.Element;
|
|
35
|
-
};
|
|
36
|
-
cloneRuleGroup: {
|
|
37
|
-
label: React.JSX.Element;
|
|
38
|
-
};
|
|
39
|
-
dragHandle: {
|
|
40
|
-
label: React.JSX.Element;
|
|
41
|
-
};
|
|
42
|
-
lockGroup: {
|
|
43
|
-
label: React.JSX.Element;
|
|
44
|
-
};
|
|
45
|
-
lockRule: {
|
|
46
|
-
label: React.JSX.Element;
|
|
47
|
-
};
|
|
48
|
-
lockGroupDisabled: {
|
|
49
|
-
label: React.JSX.Element;
|
|
50
|
-
};
|
|
51
|
-
lockRuleDisabled: {
|
|
52
|
-
label: React.JSX.Element;
|
|
53
|
-
};
|
|
54
|
-
shiftActionUp: {
|
|
55
|
-
label: React.JSX.Element;
|
|
56
|
-
};
|
|
57
|
-
shiftActionDown: {
|
|
58
|
-
label: React.JSX.Element;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
declare const QueryBuilderBootstrap: react_querybuilder.QueryBuilderContextProvider<Record<string, any>>;
|
|
62
|
-
|
|
63
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
2
|
-
import { NotToggleProps, ValueEditorProps } from 'react-querybuilder';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled, }: NotToggleProps) => React.JSX.Element;
|
|
6
|
-
|
|
7
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
8
|
-
|
|
9
|
-
declare const bootstrapControlElements: {
|
|
10
|
-
notToggle: ({ className, handleOnChange, title, label, checked, disabled, }: react_querybuilder.NotToggleProps) => React.JSX.Element;
|
|
11
|
-
valueEditor: (props: react_querybuilder.ValueEditorProps) => React.JSX.Element | null;
|
|
12
|
-
};
|
|
13
|
-
declare const bootstrapControlClassnames: {
|
|
14
|
-
actionElement: string;
|
|
15
|
-
addGroup: string;
|
|
16
|
-
addRule: string;
|
|
17
|
-
cloneGroup: string;
|
|
18
|
-
cloneRule: string;
|
|
19
|
-
lockGroup: string;
|
|
20
|
-
lockRule: string;
|
|
21
|
-
removeGroup: string;
|
|
22
|
-
removeRule: string;
|
|
23
|
-
value: string;
|
|
24
|
-
valueSelector: string;
|
|
25
|
-
};
|
|
26
|
-
declare const bootstrapTranslations: {
|
|
27
|
-
removeGroup: {
|
|
28
|
-
label: React.JSX.Element;
|
|
29
|
-
};
|
|
30
|
-
removeRule: {
|
|
31
|
-
label: React.JSX.Element;
|
|
32
|
-
};
|
|
33
|
-
cloneRule: {
|
|
34
|
-
label: React.JSX.Element;
|
|
35
|
-
};
|
|
36
|
-
cloneRuleGroup: {
|
|
37
|
-
label: React.JSX.Element;
|
|
38
|
-
};
|
|
39
|
-
dragHandle: {
|
|
40
|
-
label: React.JSX.Element;
|
|
41
|
-
};
|
|
42
|
-
lockGroup: {
|
|
43
|
-
label: React.JSX.Element;
|
|
44
|
-
};
|
|
45
|
-
lockRule: {
|
|
46
|
-
label: React.JSX.Element;
|
|
47
|
-
};
|
|
48
|
-
lockGroupDisabled: {
|
|
49
|
-
label: React.JSX.Element;
|
|
50
|
-
};
|
|
51
|
-
lockRuleDisabled: {
|
|
52
|
-
label: React.JSX.Element;
|
|
53
|
-
};
|
|
54
|
-
shiftActionUp: {
|
|
55
|
-
label: React.JSX.Element;
|
|
56
|
-
};
|
|
57
|
-
shiftActionDown: {
|
|
58
|
-
label: React.JSX.Element;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
declare const QueryBuilderBootstrap: react_querybuilder.QueryBuilderContextProvider<Record<string, any>>;
|
|
62
|
-
|
|
63
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
2
|
-
import { NotToggleProps, ValueEditorProps } from 'react-querybuilder';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled, }: NotToggleProps) => React.JSX.Element;
|
|
6
|
-
|
|
7
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
8
|
-
|
|
9
|
-
declare const bootstrapControlElements: {
|
|
10
|
-
notToggle: ({ className, handleOnChange, title, label, checked, disabled, }: react_querybuilder.NotToggleProps) => React.JSX.Element;
|
|
11
|
-
valueEditor: (props: react_querybuilder.ValueEditorProps) => React.JSX.Element | null;
|
|
12
|
-
};
|
|
13
|
-
declare const bootstrapControlClassnames: {
|
|
14
|
-
actionElement: string;
|
|
15
|
-
addGroup: string;
|
|
16
|
-
addRule: string;
|
|
17
|
-
cloneGroup: string;
|
|
18
|
-
cloneRule: string;
|
|
19
|
-
lockGroup: string;
|
|
20
|
-
lockRule: string;
|
|
21
|
-
removeGroup: string;
|
|
22
|
-
removeRule: string;
|
|
23
|
-
value: string;
|
|
24
|
-
valueSelector: string;
|
|
25
|
-
};
|
|
26
|
-
declare const bootstrapTranslations: {
|
|
27
|
-
removeGroup: {
|
|
28
|
-
label: React.JSX.Element;
|
|
29
|
-
};
|
|
30
|
-
removeRule: {
|
|
31
|
-
label: React.JSX.Element;
|
|
32
|
-
};
|
|
33
|
-
cloneRule: {
|
|
34
|
-
label: React.JSX.Element;
|
|
35
|
-
};
|
|
36
|
-
cloneRuleGroup: {
|
|
37
|
-
label: React.JSX.Element;
|
|
38
|
-
};
|
|
39
|
-
dragHandle: {
|
|
40
|
-
label: React.JSX.Element;
|
|
41
|
-
};
|
|
42
|
-
lockGroup: {
|
|
43
|
-
label: React.JSX.Element;
|
|
44
|
-
};
|
|
45
|
-
lockRule: {
|
|
46
|
-
label: React.JSX.Element;
|
|
47
|
-
};
|
|
48
|
-
lockGroupDisabled: {
|
|
49
|
-
label: React.JSX.Element;
|
|
50
|
-
};
|
|
51
|
-
lockRuleDisabled: {
|
|
52
|
-
label: React.JSX.Element;
|
|
53
|
-
};
|
|
54
|
-
shiftActionUp: {
|
|
55
|
-
label: React.JSX.Element;
|
|
56
|
-
};
|
|
57
|
-
shiftActionDown: {
|
|
58
|
-
label: React.JSX.Element;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
declare const QueryBuilderBootstrap: react_querybuilder.QueryBuilderContextProvider<Record<string, any>>;
|
|
62
|
-
|
|
63
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|