@react-querybuilder/bootstrap 8.23.0 → 8.24.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.d.ts +6 -7
- package/dist/cjs/react-querybuilder_bootstrap.cjs.development.js +2 -0
- package/dist/cjs/react-querybuilder_bootstrap.cjs.development.js.map +1 -1
- package/dist/cjs/react-querybuilder_bootstrap.cjs.production.d.ts +6 -7
- 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.d.mts +6 -7
- package/dist/react-querybuilder_bootstrap.legacy-esm.d.ts +6 -7
- package/dist/react-querybuilder_bootstrap.legacy-esm.js +7 -5
- package/dist/react-querybuilder_bootstrap.legacy-esm.js.map +1 -1
- package/dist/react-querybuilder_bootstrap.mjs +2 -0
- package/dist/react-querybuilder_bootstrap.mjs.map +1 -1
- package/dist/react-querybuilder_bootstrap.production.d.mts +6 -7
- package/dist/react-querybuilder_bootstrap.production.mjs +1 -1
- package/dist/react-querybuilder_bootstrap.production.mjs.map +1 -1
- package/package.json +11 -11
|
@@ -4,31 +4,30 @@ import * as React from "react";
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Components
|
|
6
6
|
*/
|
|
7
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
7
|
+
export declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/BootstrapValueEditor.d.ts
|
|
10
10
|
/**
|
|
11
11
|
* @group Components
|
|
12
12
|
*/
|
|
13
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
13
|
+
export declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/index.d.ts
|
|
16
16
|
/**
|
|
17
17
|
* @group Props
|
|
18
18
|
*/
|
|
19
|
-
declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
19
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
20
20
|
/**
|
|
21
21
|
* @group Props
|
|
22
22
|
*/
|
|
23
|
-
declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
23
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
24
24
|
/**
|
|
25
25
|
* @group Props
|
|
26
26
|
*/
|
|
27
|
-
declare const bootstrapTranslations: Partial<Translations>;
|
|
27
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
28
28
|
/**
|
|
29
29
|
* @group Components
|
|
30
30
|
*/
|
|
31
|
-
declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
31
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
34
33
|
//# sourceMappingURL=react-querybuilder_bootstrap.cjs.development.d.ts.map
|
|
@@ -136,6 +136,7 @@ const bootstrapControlClassnames = {
|
|
|
136
136
|
addRule: "btn-primary",
|
|
137
137
|
cloneGroup: "btn-secondary",
|
|
138
138
|
cloneRule: "btn-secondary",
|
|
139
|
+
ungroup: "btn-secondary",
|
|
139
140
|
lockGroup: "btn-secondary",
|
|
140
141
|
lockRule: "btn-secondary",
|
|
141
142
|
removeGroup: "btn-danger",
|
|
@@ -152,6 +153,7 @@ const bootstrapTranslations = {
|
|
|
152
153
|
removeRule: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-x" }) },
|
|
153
154
|
cloneRule: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-copy" }) },
|
|
154
155
|
cloneRuleGroup: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-copy" }) },
|
|
156
|
+
ungroupRuleGroup: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-box-arrow-up-left" }) },
|
|
155
157
|
dragHandle: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-grip-vertical" }) },
|
|
156
158
|
lockGroup: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-unlock" }) },
|
|
157
159
|
lockRule: { label: /* @__PURE__ */ react.createElement("i", { className: "bi bi-unlock" }) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-querybuilder_bootstrap.cjs.development.js","names":["useId","React","useValueEditor","ValueEditor","standardClassnames","getCompatContextProvider"],"sources":["../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx","../../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-querybuilder_bootstrap.cjs.development.js","names":["useId","React","useValueEditor","ValueEditor","standardClassnames","getCompatContextProvider"],"sources":["../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx","../../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 ungroup: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 ungroupRuleGroup: { label: <i className=\"bi bi-box-arrow-up-left\" /> },\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
@@ -4,31 +4,30 @@ import * as React from "react";
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Components
|
|
6
6
|
*/
|
|
7
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
7
|
+
export declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/BootstrapValueEditor.d.ts
|
|
10
10
|
/**
|
|
11
11
|
* @group Components
|
|
12
12
|
*/
|
|
13
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
13
|
+
export declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/index.d.ts
|
|
16
16
|
/**
|
|
17
17
|
* @group Props
|
|
18
18
|
*/
|
|
19
|
-
declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
19
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
20
20
|
/**
|
|
21
21
|
* @group Props
|
|
22
22
|
*/
|
|
23
|
-
declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
23
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
24
24
|
/**
|
|
25
25
|
* @group Props
|
|
26
26
|
*/
|
|
27
|
-
declare const bootstrapTranslations: Partial<Translations>;
|
|
27
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
28
28
|
/**
|
|
29
29
|
* @group Components
|
|
30
30
|
*/
|
|
31
|
-
declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
31
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
34
33
|
//# sourceMappingURL=react-querybuilder_bootstrap.cjs.production.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("react");c=s(c);let l=require("react-querybuilder");const u=({className:e,handleOnChange:t,title:n,label:r,checked:i,disabled:a})=>{let o=(0,c.useId)();return c.createElement(`div`,{className:`form-check-inline form-switch ${e}`},c.createElement(`input`,{id:o,className:`form-check-input`,type:`checkbox`,onChange:e=>t(e.target.checked),checked:!!i,disabled:a}),c.createElement(`label`,{title:n,htmlFor:o,className:`form-check-label`},r))},d=e=>{let t=c.useId();return c.createElement(`div`,{className:`form-check form-check-inline`},c.createElement(`input`,{className:`form-check-input`,type:`radio`,id:t,value:e.name,checked:e.checked,disabled:e.disabled,onChange:t=>e.handleOnChange(t.target.value)}),c.createElement(`label`,{className:`form-check-label`,htmlFor:t},e.label))},f=e=>{let{valueListItemClassName:t}=(0,l.useValueEditor)(e);if(e.operator===`null`||e.operator===`notNull`)return null;if((e.operator===`between`||e.operator===`notBetween`)&&(e.type===`select`||e.type===`text`)){let n=e.type===`text`?`form-control form-control-sm`:`form-select form-select-sm`;return c.createElement(l.ValueEditor,{...e,skipHook:!0,schema:{...e.schema,classNames:{...e.schema.classNames,valueListItem:`${t} ${n}`}}})}switch(e.type){case`select`:case`multiselect`:return c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-select form-select-sm`});case`switch`:return c.createElement(`span`,{className:`${e.className} custom-control custom-switch`},c.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 c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-check-input`});case`radio`:return c.createElement(`span`,{title:e.title,className:l.standardClassnames.value},e.values?.map(t=>c.createElement(d,{key:t.name,name:t.name,disabled:e.disabled,checked:e.value===t.name,handleOnChange:e.handleOnChange,label:t.label})))}return c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-control form-control-sm`})},p={notToggle:u,valueEditor:f},m={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`,undoAction:`btn-secondary`,redoAction:`btn-secondary`,valueSelector:`form-select form-select-sm`},h={removeGroup:{label:c.createElement(`i`,{className:`bi bi-x`})},removeRule:{label:c.createElement(`i`,{className:`bi bi-x`})},cloneRule:{label:c.createElement(`i`,{className:`bi bi-copy`})},cloneRuleGroup:{label:c.createElement(`i`,{className:`bi bi-copy`})},dragHandle:{label:c.createElement(`i`,{className:`bi bi-grip-vertical`})},lockGroup:{label:c.createElement(`i`,{className:`bi bi-unlock`})},lockRule:{label:c.createElement(`i`,{className:`bi bi-unlock`})},lockGroupDisabled:{label:c.createElement(`i`,{className:`bi bi-lock`})},lockRuleDisabled:{label:c.createElement(`i`,{className:`bi bi-lock`})},shiftActionUp:{label:c.createElement(`i`,{className:`bi bi-chevron-compact-up`})},shiftActionDown:{label:c.createElement(`i`,{className:`bi bi-chevron-compact-down`})},undo:{label:c.createElement(`i`,{className:`bi bi-arrow-counterclockwise`})},redo:{label:c.createElement(`i`,{className:`bi bi-arrow-clockwise`})}},g=(0,l.getCompatContextProvider)({controlClassnames:m,controlElements:p,translations:h});exports.BootstrapNotToggle=u,exports.BootstrapValueEditor=f,exports.QueryBuilderBootstrap=g,exports.bootstrapControlClassnames=m,exports.bootstrapControlElements=p,exports.bootstrapTranslations=h;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("react");c=s(c);let l=require("react-querybuilder");const u=({className:e,handleOnChange:t,title:n,label:r,checked:i,disabled:a})=>{let o=(0,c.useId)();return c.createElement(`div`,{className:`form-check-inline form-switch ${e}`},c.createElement(`input`,{id:o,className:`form-check-input`,type:`checkbox`,onChange:e=>t(e.target.checked),checked:!!i,disabled:a}),c.createElement(`label`,{title:n,htmlFor:o,className:`form-check-label`},r))},d=e=>{let t=c.useId();return c.createElement(`div`,{className:`form-check form-check-inline`},c.createElement(`input`,{className:`form-check-input`,type:`radio`,id:t,value:e.name,checked:e.checked,disabled:e.disabled,onChange:t=>e.handleOnChange(t.target.value)}),c.createElement(`label`,{className:`form-check-label`,htmlFor:t},e.label))},f=e=>{let{valueListItemClassName:t}=(0,l.useValueEditor)(e);if(e.operator===`null`||e.operator===`notNull`)return null;if((e.operator===`between`||e.operator===`notBetween`)&&(e.type===`select`||e.type===`text`)){let n=e.type===`text`?`form-control form-control-sm`:`form-select form-select-sm`;return c.createElement(l.ValueEditor,{...e,skipHook:!0,schema:{...e.schema,classNames:{...e.schema.classNames,valueListItem:`${t} ${n}`}}})}switch(e.type){case`select`:case`multiselect`:return c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-select form-select-sm`});case`switch`:return c.createElement(`span`,{className:`${e.className} custom-control custom-switch`},c.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 c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-check-input`});case`radio`:return c.createElement(`span`,{title:e.title,className:l.standardClassnames.value},e.values?.map(t=>c.createElement(d,{key:t.name,name:t.name,disabled:e.disabled,checked:e.value===t.name,handleOnChange:e.handleOnChange,label:t.label})))}return c.createElement(l.ValueEditor,{...e,skipHook:!0,className:`${e.className} form-control form-control-sm`})},p={notToggle:u,valueEditor:f},m={actionElement:`btn btn-sm`,addGroup:`btn-secondary`,addRule:`btn-primary`,cloneGroup:`btn-secondary`,cloneRule:`btn-secondary`,ungroup:`btn-secondary`,lockGroup:`btn-secondary`,lockRule:`btn-secondary`,removeGroup:`btn-danger`,removeRule:`btn-danger`,undoAction:`btn-secondary`,redoAction:`btn-secondary`,valueSelector:`form-select form-select-sm`},h={removeGroup:{label:c.createElement(`i`,{className:`bi bi-x`})},removeRule:{label:c.createElement(`i`,{className:`bi bi-x`})},cloneRule:{label:c.createElement(`i`,{className:`bi bi-copy`})},cloneRuleGroup:{label:c.createElement(`i`,{className:`bi bi-copy`})},ungroupRuleGroup:{label:c.createElement(`i`,{className:`bi bi-box-arrow-up-left`})},dragHandle:{label:c.createElement(`i`,{className:`bi bi-grip-vertical`})},lockGroup:{label:c.createElement(`i`,{className:`bi bi-unlock`})},lockRule:{label:c.createElement(`i`,{className:`bi bi-unlock`})},lockGroupDisabled:{label:c.createElement(`i`,{className:`bi bi-lock`})},lockRuleDisabled:{label:c.createElement(`i`,{className:`bi bi-lock`})},shiftActionUp:{label:c.createElement(`i`,{className:`bi bi-chevron-compact-up`})},shiftActionDown:{label:c.createElement(`i`,{className:`bi bi-chevron-compact-down`})},undo:{label:c.createElement(`i`,{className:`bi bi-arrow-counterclockwise`})},redo:{label:c.createElement(`i`,{className:`bi bi-arrow-clockwise`})}},g=(0,l.getCompatContextProvider)({controlClassnames:m,controlElements:p,translations:h});exports.BootstrapNotToggle=u,exports.BootstrapValueEditor=f,exports.QueryBuilderBootstrap=g,exports.bootstrapControlClassnames=m,exports.bootstrapControlElements=p,exports.bootstrapTranslations=h;
|
|
2
2
|
//# sourceMappingURL=react-querybuilder_bootstrap.cjs.production.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-querybuilder_bootstrap.cjs.production.js","names":["useId","React","useValueEditor","ValueEditor","standardClassnames","getCompatContextProvider"],"sources":["../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx","../../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-querybuilder_bootstrap.cjs.production.js","names":["useId","React","useValueEditor","ValueEditor","standardClassnames","getCompatContextProvider"],"sources":["../../src/BootstrapNotToggle.tsx","../../src/BootstrapValueEditor.tsx","../../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 ungroup: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 ungroupRuleGroup: { label: <i className=\"bi bi-box-arrow-up-left\" /> },\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"ynBAOA,MAAa,GAAsB,CACjC,YACA,iBACA,QACA,QACA,UACA,cACuC,CACvC,IAAM,GAAA,EAAKA,EAAAA,MAAAA,CAAM,EAEjB,OACE,EAAA,cAAC,MAAD,CAAK,UAAW,iCAAiC,GAY5C,EAXH,EAAA,cAAC,QAAD,CACM,KACJ,UAAU,mBACV,KAAK,WACL,SAAU,GAAK,EAAe,EAAE,OAAO,OAAO,EAC9C,QAAS,CAAC,CAAC,EACD,UACX,CAAA,EACD,EAAA,cAAC,QAAD,CAAc,QAAO,QAAS,EAAI,UAAU,kBAErC,EADJ,CACI,CACJ,CAET,EC3BM,EAAe,GAMf,CACJ,IAAM,EAAKC,EAAM,MAAM,EACvB,OACE,EAAA,cAAC,MAAD,CAAK,UAAU,8BAaV,EAZH,EAAA,cAAC,QAAD,CACE,UAAU,mBACV,KAAK,QACD,KACJ,MAAO,EAAM,KACb,QAAS,EAAM,QACf,SAAU,EAAM,SAChB,SAAU,GAAK,EAAM,eAAe,EAAE,OAAO,KAAK,CACnD,CAAA,EACD,EAAA,cAAC,QAAD,CAAO,UAAU,mBAAmB,QAAS,CAEtC,EADJ,EAAM,KACF,CACJ,CAET,EAKa,EAAwB,GAAsD,CACzF,GAAM,CAAE,2BAAA,EAA2BC,EAAAA,eAAAA,CAAe,CAAK,EAEvD,GAAI,EAAM,WAAa,QAAU,EAAM,WAAa,UAClD,OAAO,KAGT,IACG,EAAM,WAAa,WAAa,EAAM,WAAa,gBACnD,EAAM,OAAS,UAAY,EAAM,OAAS,QAC3C,CACA,IAAM,EACJ,EAAM,OAAS,OAAS,+BAAiC,6BAC3D,OACE,EAAA,cAACC,EAAAA,YAAD,CACE,GAAI,EACJ,SAAA,GACA,OAAQ,CACN,GAAG,EAAM,OACT,WAAY,CACV,GAAG,EAAM,OAAO,WAChB,cAAe,GAAG,EAAuB,GAAG,GAC9C,CACF,CACD,CAAA,CAEL,CAEA,OAAQ,EAAM,KAAd,CACE,IAAK,SACL,IAAK,cACH,OACE,EAAA,cAACA,EAAAA,YAAD,CACE,GAAI,EACJ,SAAA,GACA,UAAW,GAAG,EAAM,UAAU,4BAC/B,CAAA,EAGL,IAAK,SACH,OACE,EAAA,cAAC,OAAD,CAAM,UAAW,GAAG,EAAM,UAAU,8BAS9B,EARJ,EAAA,cAAC,QAAD,CACE,KAAK,WACL,UAAU,wCACV,MAAO,EAAM,MACb,SAAU,EAAM,SAChB,SAAU,GAAK,EAAM,eAAe,EAAE,OAAO,OAAO,EACpD,QAAS,CAAC,CAAC,EAAM,KAClB,CAAA,CACG,EAGV,IAAK,WACH,OAAO,EAAA,cAACA,EAAAA,YAAD,CAAa,GAAI,EAAO,SAAA,GAAS,UAAW,GAAG,EAAM,UAAU,kBAAqB,CAAA,EAE7F,IAAK,QACH,OACE,EAAA,cAAC,OAAD,CAAM,MAAO,EAAM,MAAO,UAAWC,EAAAA,mBAAmB,KAWlD,EAVH,EAAM,QAAQ,IAAI,GACjB,EAAA,cAAC,EAAD,CACE,IAAK,EAAE,KACP,KAAM,EAAE,KACR,SAAU,EAAM,SAChB,QAAS,EAAM,QAAU,EAAE,KAC3B,eAAgB,EAAM,eACtB,MAAO,EAAE,KACV,CAAA,CACF,CACG,CAEZ,CAEA,OACE,EAAA,cAACD,EAAAA,YAAD,CACE,GAAI,EACJ,SAAA,GACA,UAAW,GAAG,EAAM,UAAU,8BAC/B,CAAA,CAEL,EChGa,EAAmE,CAC9E,UAAW,EACX,YAAa,CACf,EAKa,EAAkD,CAC7D,cAAe,aACf,SAAU,gBACV,QAAS,cACT,WAAY,gBACZ,UAAW,gBACX,QAAS,gBACT,UAAW,gBACX,SAAU,gBACV,YAAa,aACb,WAAY,aACZ,WAAY,gBACZ,WAAY,gBAGZ,cAAe,4BACjB,EAKa,EAA+C,CAC1D,YAAa,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,SAAW,CAAA,CAAE,EAChD,WAAY,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,SAAW,CAAA,CAAE,EAC/C,UAAW,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACjD,eAAgB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACtD,iBAAkB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,yBAA2B,CAAA,CAAE,EACrE,WAAY,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,qBAAuB,CAAA,CAAE,EAC3D,UAAW,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,cAAgB,CAAA,CAAE,EACnD,SAAU,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,cAAgB,CAAA,CAAE,EAClD,kBAAmB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACzD,iBAAkB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACxD,cAAe,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,0BAA4B,CAAA,CAAE,EACnE,gBAAiB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,4BAA8B,CAAA,CAAE,EACvE,KAAM,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,8BAAgC,CAAA,CAAE,EAC9D,KAAM,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,uBAAyB,CAAA,CAAE,CACzD,EAKa,GAAA,EAAqDE,EAAAA,yBAAAA,CAAyB,CACzF,kBAAmB,EACnB,gBAAiB,EACjB,aAAc,CAChB,CAAC"}
|
|
@@ -4,31 +4,30 @@ import { Classnames, ControlElementsProp, FullField, NotToggleProps, QueryBuilde
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Components
|
|
6
6
|
*/
|
|
7
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
7
|
+
export declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/BootstrapValueEditor.d.ts
|
|
10
10
|
/**
|
|
11
11
|
* @group Components
|
|
12
12
|
*/
|
|
13
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
13
|
+
export declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/index.d.ts
|
|
16
16
|
/**
|
|
17
17
|
* @group Props
|
|
18
18
|
*/
|
|
19
|
-
declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
19
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
20
20
|
/**
|
|
21
21
|
* @group Props
|
|
22
22
|
*/
|
|
23
|
-
declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
23
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
24
24
|
/**
|
|
25
25
|
* @group Props
|
|
26
26
|
*/
|
|
27
|
-
declare const bootstrapTranslations: Partial<Translations>;
|
|
27
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
28
28
|
/**
|
|
29
29
|
* @group Components
|
|
30
30
|
*/
|
|
31
|
-
declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
31
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
34
33
|
//# sourceMappingURL=react-querybuilder_bootstrap.d.mts.map
|
|
@@ -4,31 +4,30 @@ import { Classnames, ControlElementsProp, FullField, NotToggleProps, QueryBuilde
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Components
|
|
6
6
|
*/
|
|
7
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
7
|
+
export declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/BootstrapValueEditor.d.ts
|
|
10
10
|
/**
|
|
11
11
|
* @group Components
|
|
12
12
|
*/
|
|
13
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
13
|
+
export declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/index.d.ts
|
|
16
16
|
/**
|
|
17
17
|
* @group Props
|
|
18
18
|
*/
|
|
19
|
-
declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
19
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
20
20
|
/**
|
|
21
21
|
* @group Props
|
|
22
22
|
*/
|
|
23
|
-
declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
23
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
24
24
|
/**
|
|
25
25
|
* @group Props
|
|
26
26
|
*/
|
|
27
|
-
declare const bootstrapTranslations: Partial<Translations>;
|
|
27
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
28
28
|
/**
|
|
29
29
|
* @group Components
|
|
30
30
|
*/
|
|
31
|
-
declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
31
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
34
33
|
//# sourceMappingURL=react-querybuilder_bootstrap.legacy-esm.d.ts.map
|
|
@@ -21,7 +21,7 @@ const BootstrapNotToggle = ({ className, handleOnChange, title, label, checked,
|
|
|
21
21
|
}, label));
|
|
22
22
|
};
|
|
23
23
|
//#endregion
|
|
24
|
-
//#region \0@oxc-project+runtime@0.
|
|
24
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/typeof.js
|
|
25
25
|
function _typeof(o) {
|
|
26
26
|
"@babel/helpers - typeof";
|
|
27
27
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
|
|
@@ -31,7 +31,7 @@ function _typeof(o) {
|
|
|
31
31
|
}, _typeof(o);
|
|
32
32
|
}
|
|
33
33
|
//#endregion
|
|
34
|
-
//#region \0@oxc-project+runtime@0.
|
|
34
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/toPrimitive.js
|
|
35
35
|
function toPrimitive(t, r) {
|
|
36
36
|
if ("object" != _typeof(t) || !t) return t;
|
|
37
37
|
var e = t[Symbol.toPrimitive];
|
|
@@ -43,13 +43,13 @@ function toPrimitive(t, r) {
|
|
|
43
43
|
return ("string" === r ? String : Number)(t);
|
|
44
44
|
}
|
|
45
45
|
//#endregion
|
|
46
|
-
//#region \0@oxc-project+runtime@0.
|
|
46
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/toPropertyKey.js
|
|
47
47
|
function toPropertyKey(t) {
|
|
48
48
|
var i = toPrimitive(t, "string");
|
|
49
49
|
return "symbol" == _typeof(i) ? i : i + "";
|
|
50
50
|
}
|
|
51
51
|
//#endregion
|
|
52
|
-
//#region \0@oxc-project+runtime@0.
|
|
52
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/defineProperty.js
|
|
53
53
|
function _defineProperty(e, r, t) {
|
|
54
54
|
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
55
55
|
value: t,
|
|
@@ -59,7 +59,7 @@ function _defineProperty(e, r, t) {
|
|
|
59
59
|
}) : e[r] = t, e;
|
|
60
60
|
}
|
|
61
61
|
//#endregion
|
|
62
|
-
//#region \0@oxc-project+runtime@0.
|
|
62
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/objectSpread2.js
|
|
63
63
|
function ownKeys(e, r) {
|
|
64
64
|
var t = Object.keys(e);
|
|
65
65
|
if (Object.getOwnPropertySymbols) {
|
|
@@ -166,6 +166,7 @@ const bootstrapControlClassnames = {
|
|
|
166
166
|
addRule: "btn-primary",
|
|
167
167
|
cloneGroup: "btn-secondary",
|
|
168
168
|
cloneRule: "btn-secondary",
|
|
169
|
+
ungroup: "btn-secondary",
|
|
169
170
|
lockGroup: "btn-secondary",
|
|
170
171
|
lockRule: "btn-secondary",
|
|
171
172
|
removeGroup: "btn-danger",
|
|
@@ -182,6 +183,7 @@ const bootstrapTranslations = {
|
|
|
182
183
|
removeRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-x" }) },
|
|
183
184
|
cloneRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-copy" }) },
|
|
184
185
|
cloneRuleGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-copy" }) },
|
|
186
|
+
ungroupRuleGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-box-arrow-up-left" }) },
|
|
185
187
|
dragHandle: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-grip-vertical" }) },
|
|
186
188
|
lockGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-unlock" }) },
|
|
187
189
|
lockRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-unlock" }) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-querybuilder_bootstrap.legacy-esm.js","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-querybuilder_bootstrap.legacy-esm.js","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 ungroup: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 ungroupRuleGroup: { label: <i className=\"bi bi-box-arrow-up-left\" /> },\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
@@ -113,6 +113,7 @@ const bootstrapControlClassnames = {
|
|
|
113
113
|
addRule: "btn-primary",
|
|
114
114
|
cloneGroup: "btn-secondary",
|
|
115
115
|
cloneRule: "btn-secondary",
|
|
116
|
+
ungroup: "btn-secondary",
|
|
116
117
|
lockGroup: "btn-secondary",
|
|
117
118
|
lockRule: "btn-secondary",
|
|
118
119
|
removeGroup: "btn-danger",
|
|
@@ -129,6 +130,7 @@ const bootstrapTranslations = {
|
|
|
129
130
|
removeRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-x" }) },
|
|
130
131
|
cloneRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-copy" }) },
|
|
131
132
|
cloneRuleGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-copy" }) },
|
|
133
|
+
ungroupRuleGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-box-arrow-up-left" }) },
|
|
132
134
|
dragHandle: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-grip-vertical" }) },
|
|
133
135
|
lockGroup: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-unlock" }) },
|
|
134
136
|
lockRule: { label: /* @__PURE__ */ React.createElement("i", { className: "bi bi-unlock" }) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-querybuilder_bootstrap.mjs","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-querybuilder_bootstrap.mjs","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 ungroup: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 ungroupRuleGroup: { label: <i className=\"bi bi-box-arrow-up-left\" /> },\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
|
@@ -4,31 +4,30 @@ import { Classnames, ControlElementsProp, FullField, NotToggleProps, QueryBuilde
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Components
|
|
6
6
|
*/
|
|
7
|
-
declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
7
|
+
export declare const BootstrapNotToggle: ({ className, handleOnChange, title, label, checked, disabled }: NotToggleProps) => React.JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/BootstrapValueEditor.d.ts
|
|
10
10
|
/**
|
|
11
11
|
* @group Components
|
|
12
12
|
*/
|
|
13
|
-
declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
13
|
+
export declare const BootstrapValueEditor: (props: ValueEditorProps) => React.JSX.Element | null;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/index.d.ts
|
|
16
16
|
/**
|
|
17
17
|
* @group Props
|
|
18
18
|
*/
|
|
19
|
-
declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
19
|
+
export declare const bootstrapControlElements: ControlElementsProp<FullField, string>;
|
|
20
20
|
/**
|
|
21
21
|
* @group Props
|
|
22
22
|
*/
|
|
23
|
-
declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
23
|
+
export declare const bootstrapControlClassnames: Partial<Classnames>;
|
|
24
24
|
/**
|
|
25
25
|
* @group Props
|
|
26
26
|
*/
|
|
27
|
-
declare const bootstrapTranslations: Partial<Translations>;
|
|
27
|
+
export declare const bootstrapTranslations: Partial<Translations>;
|
|
28
28
|
/**
|
|
29
29
|
* @group Components
|
|
30
30
|
*/
|
|
31
|
-
declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
31
|
+
export declare const QueryBuilderBootstrap: QueryBuilderContextProvider;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { BootstrapNotToggle, BootstrapValueEditor, QueryBuilderBootstrap, bootstrapControlClassnames, bootstrapControlElements, bootstrapTranslations };
|
|
34
33
|
//# sourceMappingURL=react-querybuilder_bootstrap.production.d.mts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as e from"react";import{useId as t}from"react";import{ValueEditor as n,getCompatContextProvider as r,standardClassnames as i,useValueEditor as a}from"react-querybuilder";const o=({className:n,handleOnChange:r,title:i,label:a,checked:o,disabled:s})=>{let c=t();return e.createElement(`div`,{className:`form-check-inline form-switch ${n}`},e.createElement(`input`,{id:c,className:`form-check-input`,type:`checkbox`,onChange:e=>r(e.target.checked),checked:!!o,disabled:s}),e.createElement(`label`,{title:i,htmlFor:c,className:`form-check-label`},a))},s=t=>{let n=e.useId();return e.createElement(`div`,{className:`form-check form-check-inline`},e.createElement(`input`,{className:`form-check-input`,type:`radio`,id:n,value:t.name,checked:t.checked,disabled:t.disabled,onChange:e=>t.handleOnChange(e.target.value)}),e.createElement(`label`,{className:`form-check-label`,htmlFor:n},t.label))},c=t=>{let{valueListItemClassName:r}=a(t);if(t.operator===`null`||t.operator===`notNull`)return null;if((t.operator===`between`||t.operator===`notBetween`)&&(t.type===`select`||t.type===`text`)){let i=t.type===`text`?`form-control form-control-sm`:`form-select form-select-sm`;return e.createElement(n,{...t,skipHook:!0,schema:{...t.schema,classNames:{...t.schema.classNames,valueListItem:`${r} ${i}`}}})}switch(t.type){case`select`:case`multiselect`:return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-select form-select-sm`});case`switch`:return e.createElement(`span`,{className:`${t.className} custom-control custom-switch`},e.createElement(`input`,{type:`checkbox`,className:`form-check-input custom-control-input`,title:t.title,disabled:t.disabled,onChange:e=>t.handleOnChange(e.target.checked),checked:!!t.value}));case`checkbox`:return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-check-input`});case`radio`:return e.createElement(`span`,{title:t.title,className:i.value},t.values?.map(n=>e.createElement(s,{key:n.name,name:n.name,disabled:t.disabled,checked:t.value===n.name,handleOnChange:t.handleOnChange,label:n.label})))}return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-control form-control-sm`})},l={notToggle:o,valueEditor:c},u={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`,undoAction:`btn-secondary`,redoAction:`btn-secondary`,valueSelector:`form-select form-select-sm`},d={removeGroup:{label:e.createElement(`i`,{className:`bi bi-x`})},removeRule:{label:e.createElement(`i`,{className:`bi bi-x`})},cloneRule:{label:e.createElement(`i`,{className:`bi bi-copy`})},cloneRuleGroup:{label:e.createElement(`i`,{className:`bi bi-copy`})},dragHandle:{label:e.createElement(`i`,{className:`bi bi-grip-vertical`})},lockGroup:{label:e.createElement(`i`,{className:`bi bi-unlock`})},lockRule:{label:e.createElement(`i`,{className:`bi bi-unlock`})},lockGroupDisabled:{label:e.createElement(`i`,{className:`bi bi-lock`})},lockRuleDisabled:{label:e.createElement(`i`,{className:`bi bi-lock`})},shiftActionUp:{label:e.createElement(`i`,{className:`bi bi-chevron-compact-up`})},shiftActionDown:{label:e.createElement(`i`,{className:`bi bi-chevron-compact-down`})},undo:{label:e.createElement(`i`,{className:`bi bi-arrow-counterclockwise`})},redo:{label:e.createElement(`i`,{className:`bi bi-arrow-clockwise`})}},f=r({controlClassnames:u,controlElements:l,translations:d});export{o as BootstrapNotToggle,c as BootstrapValueEditor,f as QueryBuilderBootstrap,u as bootstrapControlClassnames,l as bootstrapControlElements,d as bootstrapTranslations};
|
|
1
|
+
import*as e from"react";import{useId as t}from"react";import{ValueEditor as n,getCompatContextProvider as r,standardClassnames as i,useValueEditor as a}from"react-querybuilder";const o=({className:n,handleOnChange:r,title:i,label:a,checked:o,disabled:s})=>{let c=t();return e.createElement(`div`,{className:`form-check-inline form-switch ${n}`},e.createElement(`input`,{id:c,className:`form-check-input`,type:`checkbox`,onChange:e=>r(e.target.checked),checked:!!o,disabled:s}),e.createElement(`label`,{title:i,htmlFor:c,className:`form-check-label`},a))},s=t=>{let n=e.useId();return e.createElement(`div`,{className:`form-check form-check-inline`},e.createElement(`input`,{className:`form-check-input`,type:`radio`,id:n,value:t.name,checked:t.checked,disabled:t.disabled,onChange:e=>t.handleOnChange(e.target.value)}),e.createElement(`label`,{className:`form-check-label`,htmlFor:n},t.label))},c=t=>{let{valueListItemClassName:r}=a(t);if(t.operator===`null`||t.operator===`notNull`)return null;if((t.operator===`between`||t.operator===`notBetween`)&&(t.type===`select`||t.type===`text`)){let i=t.type===`text`?`form-control form-control-sm`:`form-select form-select-sm`;return e.createElement(n,{...t,skipHook:!0,schema:{...t.schema,classNames:{...t.schema.classNames,valueListItem:`${r} ${i}`}}})}switch(t.type){case`select`:case`multiselect`:return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-select form-select-sm`});case`switch`:return e.createElement(`span`,{className:`${t.className} custom-control custom-switch`},e.createElement(`input`,{type:`checkbox`,className:`form-check-input custom-control-input`,title:t.title,disabled:t.disabled,onChange:e=>t.handleOnChange(e.target.checked),checked:!!t.value}));case`checkbox`:return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-check-input`});case`radio`:return e.createElement(`span`,{title:t.title,className:i.value},t.values?.map(n=>e.createElement(s,{key:n.name,name:n.name,disabled:t.disabled,checked:t.value===n.name,handleOnChange:t.handleOnChange,label:n.label})))}return e.createElement(n,{...t,skipHook:!0,className:`${t.className} form-control form-control-sm`})},l={notToggle:o,valueEditor:c},u={actionElement:`btn btn-sm`,addGroup:`btn-secondary`,addRule:`btn-primary`,cloneGroup:`btn-secondary`,cloneRule:`btn-secondary`,ungroup:`btn-secondary`,lockGroup:`btn-secondary`,lockRule:`btn-secondary`,removeGroup:`btn-danger`,removeRule:`btn-danger`,undoAction:`btn-secondary`,redoAction:`btn-secondary`,valueSelector:`form-select form-select-sm`},d={removeGroup:{label:e.createElement(`i`,{className:`bi bi-x`})},removeRule:{label:e.createElement(`i`,{className:`bi bi-x`})},cloneRule:{label:e.createElement(`i`,{className:`bi bi-copy`})},cloneRuleGroup:{label:e.createElement(`i`,{className:`bi bi-copy`})},ungroupRuleGroup:{label:e.createElement(`i`,{className:`bi bi-box-arrow-up-left`})},dragHandle:{label:e.createElement(`i`,{className:`bi bi-grip-vertical`})},lockGroup:{label:e.createElement(`i`,{className:`bi bi-unlock`})},lockRule:{label:e.createElement(`i`,{className:`bi bi-unlock`})},lockGroupDisabled:{label:e.createElement(`i`,{className:`bi bi-lock`})},lockRuleDisabled:{label:e.createElement(`i`,{className:`bi bi-lock`})},shiftActionUp:{label:e.createElement(`i`,{className:`bi bi-chevron-compact-up`})},shiftActionDown:{label:e.createElement(`i`,{className:`bi bi-chevron-compact-down`})},undo:{label:e.createElement(`i`,{className:`bi bi-arrow-counterclockwise`})},redo:{label:e.createElement(`i`,{className:`bi bi-arrow-clockwise`})}},f=r({controlClassnames:u,controlElements:l,translations:d});export{o as BootstrapNotToggle,c as BootstrapValueEditor,f as QueryBuilderBootstrap,u as bootstrapControlClassnames,l as bootstrapControlElements,d as bootstrapTranslations};
|
|
2
2
|
//# sourceMappingURL=react-querybuilder_bootstrap.production.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-querybuilder_bootstrap.production.mjs","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"iLAOA,MAAa,GAAsB,CACjC,YACA,iBACA,QACA,QACA,UACA,cACuC,CACvC,IAAM,EAAK,EAAM,EAEjB,OACE,EAAA,cAAC,MAAD,CAAK,UAAW,iCAAiC,GAY5C,EAXH,EAAA,cAAC,QAAD,CACM,KACJ,UAAU,mBACV,KAAK,WACL,SAAU,GAAK,EAAe,EAAE,OAAO,OAAO,EAC9C,QAAS,CAAC,CAAC,EACD,UACX,CAAA,EACD,EAAA,cAAC,QAAD,CAAc,QAAO,QAAS,EAAI,UAAU,kBAErC,EADJ,CACI,CACJ,CAET,EC3BM,EAAe,GAMf,CACJ,IAAM,EAAK,EAAM,MAAM,EACvB,OACE,EAAA,cAAC,MAAD,CAAK,UAAU,8BAaV,EAZH,EAAA,cAAC,QAAD,CACE,UAAU,mBACV,KAAK,QACD,KACJ,MAAO,EAAM,KACb,QAAS,EAAM,QACf,SAAU,EAAM,SAChB,SAAU,GAAK,EAAM,eAAe,EAAE,OAAO,KAAK,CACnD,CAAA,EACD,EAAA,cAAC,QAAD,CAAO,UAAU,mBAAmB,QAAS,CAEtC,EADJ,EAAM,KACF,CACJ,CAET,EAKa,EAAwB,GAAsD,CACzF,GAAM,CAAE,0BAA2B,EAAe,CAAK,EAEvD,GAAI,EAAM,WAAa,QAAU,EAAM,WAAa,UAClD,OAAO,KAGT,IACG,EAAM,WAAa,WAAa,EAAM,WAAa,gBACnD,EAAM,OAAS,UAAY,EAAM,OAAS,QAC3C,CACA,IAAM,EACJ,EAAM,OAAS,OAAS,+BAAiC,6BAC3D,OACE,EAAA,cAAC,EAAD,CACE,GAAI,EACJ,SAAA,GACA,OAAQ,CACN,GAAG,EAAM,OACT,WAAY,CACV,GAAG,EAAM,OAAO,WAChB,cAAe,GAAG,EAAuB,GAAG,GAC9C,CACF,CACD,CAAA,CAEL,CAEA,OAAQ,EAAM,KAAd,CACE,IAAK,SACL,IAAK,cACH,OACE,EAAA,cAAC,EAAD,CACE,GAAI,EACJ,SAAA,GACA,UAAW,GAAG,EAAM,UAAU,4BAC/B,CAAA,EAGL,IAAK,SACH,OACE,EAAA,cAAC,OAAD,CAAM,UAAW,GAAG,EAAM,UAAU,8BAS9B,EARJ,EAAA,cAAC,QAAD,CACE,KAAK,WACL,UAAU,wCACV,MAAO,EAAM,MACb,SAAU,EAAM,SAChB,SAAU,GAAK,EAAM,eAAe,EAAE,OAAO,OAAO,EACpD,QAAS,CAAC,CAAC,EAAM,KAClB,CAAA,CACG,EAGV,IAAK,WACH,OAAO,EAAA,cAAC,EAAD,CAAa,GAAI,EAAO,SAAA,GAAS,UAAW,GAAG,EAAM,UAAU,kBAAqB,CAAA,EAE7F,IAAK,QACH,OACE,EAAA,cAAC,OAAD,CAAM,MAAO,EAAM,MAAO,UAAW,EAAmB,KAWlD,EAVH,EAAM,QAAQ,IAAI,GACjB,EAAA,cAAC,EAAD,CACE,IAAK,EAAE,KACP,KAAM,EAAE,KACR,SAAU,EAAM,SAChB,QAAS,EAAM,QAAU,EAAE,KAC3B,eAAgB,EAAM,eACtB,MAAO,EAAE,KACV,CAAA,CACF,CACG,CAEZ,CAEA,OACE,EAAA,cAAC,EAAD,CACE,GAAI,EACJ,SAAA,GACA,UAAW,GAAG,EAAM,UAAU,8BAC/B,CAAA,CAEL,EChGa,EAAmE,CAC9E,UAAW,EACX,YAAa,CACf,EAKa,EAAkD,CAC7D,cAAe,aACf,SAAU,gBACV,QAAS,cACT,WAAY,gBACZ,UAAW,gBACX,UAAW,gBACX,SAAU,gBACV,YAAa,aACb,WAAY,aACZ,WAAY,gBACZ,WAAY,gBAGZ,cAAe,4BACjB,EAKa,EAA+C,CAC1D,YAAa,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,SAAW,CAAA,CAAE,EAChD,WAAY,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,SAAW,CAAA,CAAE,EAC/C,UAAW,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACjD,eAAgB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACtD,WAAY,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,qBAAuB,CAAA,CAAE,EAC3D,UAAW,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,cAAgB,CAAA,CAAE,EACnD,SAAU,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,cAAgB,CAAA,CAAE,EAClD,kBAAmB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACzD,iBAAkB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,YAAc,CAAA,CAAE,EACxD,cAAe,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,0BAA4B,CAAA,CAAE,EACnE,gBAAiB,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,4BAA8B,CAAA,CAAE,EACvE,KAAM,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,8BAAgC,CAAA,CAAE,EAC9D,KAAM,CAAE,MAAO,EAAA,cAAC,IAAD,CAAG,UAAU,uBAAyB,CAAA,CAAE,CACzD,EAKa,EAAqD,EAAyB,CACzF,kBAAmB,EACnB,gBAAiB,EACjB,aAAc,CAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"react-querybuilder_bootstrap.production.mjs","names":[],"sources":["../src/BootstrapNotToggle.tsx","../src/BootstrapValueEditor.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useId } from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Components\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 { standardClassnames, useValueEditor, ValueEditor } from 'react-querybuilder';\n\n// Extracted from callback so we can use `useId`\nconst RadioButton = (props: {\n name: string;\n disabled?: boolean;\n checked: boolean;\n handleOnChange: (v: string) => void;\n label: string;\n}) => {\n const id = React.useId();\n return (\n <div className=\"form-check form-check-inline\">\n <input\n className=\"form-check-input\"\n type=\"radio\"\n id={id}\n value={props.name}\n checked={props.checked}\n disabled={props.disabled}\n onChange={e => props.handleOnChange(e.target.value)}\n />\n <label className=\"form-check-label\" htmlFor={id}>\n {props.label}\n </label>\n </div>\n );\n};\n\n/**\n * @group Components\n */\nexport const BootstrapValueEditor = (props: ValueEditorProps): React.JSX.Element | null => {\n const { valueListItemClassName } = useValueEditor(props);\n\n if (props.operator === 'null' || props.operator === 'notNull') {\n return null;\n }\n\n if (\n (props.operator === 'between' || props.operator === 'notBetween') &&\n (props.type === 'select' || props.type === 'text')\n ) {\n const listItemClasses =\n props.type === 'text' ? 'form-control form-control-sm' : 'form-select form-select-sm';\n return (\n <ValueEditor\n {...props}\n skipHook\n schema={{\n ...props.schema,\n classNames: {\n ...props.schema.classNames,\n valueListItem: `${valueListItemClassName} ${listItemClasses}`,\n },\n }}\n />\n );\n }\n\n switch (props.type) {\n case 'select':\n case 'multiselect':\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-select form-select-sm`}\n />\n );\n\n case 'switch':\n return (\n <span className={`${props.className} custom-control custom-switch`}>\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 {...props} skipHook className={`${props.className} form-check-input`} />;\n\n case 'radio':\n return (\n <span title={props.title} className={standardClassnames.value}>\n {props.values?.map(v => (\n <RadioButton\n key={v.name}\n name={v.name}\n disabled={props.disabled}\n checked={props.value === v.name}\n handleOnChange={props.handleOnChange}\n label={v.label}\n />\n ))}\n </span>\n );\n }\n\n return (\n <ValueEditor\n {...props}\n skipHook\n className={`${props.className} form-control form-control-sm`}\n />\n );\n};\n","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\n/**\n * @group Props\n */\nexport const bootstrapControlElements: ControlElementsProp<FullField, string> = {\n notToggle: BootstrapNotToggle,\n valueEditor: BootstrapValueEditor,\n};\n\n/**\n * @group Props\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 ungroup: 'btn-secondary',\n lockGroup: 'btn-secondary',\n lockRule: 'btn-secondary',\n removeGroup: 'btn-danger',\n removeRule: 'btn-danger',\n undoAction: 'btn-secondary',\n redoAction: 'btn-secondary',\n // BootstrapValueEditor adds its own classnames\n // value: '',\n valueSelector: 'form-select form-select-sm',\n};\n\n/**\n * @group Props\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 ungroupRuleGroup: { label: <i className=\"bi bi-box-arrow-up-left\" /> },\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 undo: { label: <i className=\"bi bi-arrow-counterclockwise\" /> },\n redo: { label: <i className=\"bi bi-arrow-clockwise\" /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderBootstrap: QueryBuilderContextProvider = getCompatContextProvider({\n controlClassnames: bootstrapControlClassnames,\n controlElements: bootstrapControlElements,\n translations: bootstrapTranslations,\n});\n"],"mappings":"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"}
|
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": "8.
|
|
4
|
+
"version": "8.24.0",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -52,24 +52,24 @@
|
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@popperjs/core": "^2.11.8",
|
|
55
|
-
"@testing-library/dom": "^10.4.
|
|
56
|
-
"@testing-library/react": "^16.3.
|
|
57
|
-
"@types/react": "^19.
|
|
58
|
-
"@vitejs/plugin-react": "^6.
|
|
55
|
+
"@testing-library/dom": "^10.4.2",
|
|
56
|
+
"@testing-library/react": "^16.3.3",
|
|
57
|
+
"@types/react": "^19.3.0",
|
|
58
|
+
"@vitejs/plugin-react": "^6.1.1",
|
|
59
59
|
"bootstrap": "^5.3.8",
|
|
60
60
|
"bootstrap-icons": "^1.13.1",
|
|
61
|
-
"react": "^19.
|
|
62
|
-
"react-dom": "^19.
|
|
63
|
-
"react-querybuilder": "8.
|
|
61
|
+
"react": "^19.3.0",
|
|
62
|
+
"react-dom": "^19.3.0",
|
|
63
|
+
"react-querybuilder": "8.24.0",
|
|
64
64
|
"rollup-plugin-visualizer": "^7.1.1",
|
|
65
65
|
"typescript": "^7.0.2",
|
|
66
|
-
"vite": "^8.
|
|
66
|
+
"vite": "^8.3.0"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
69
|
"bootstrap": ">=5",
|
|
70
70
|
"bootstrap-icons": ">=1.7.0",
|
|
71
71
|
"react": ">=18",
|
|
72
|
-
"react-querybuilder": "8.
|
|
72
|
+
"react-querybuilder": "8.24.0"
|
|
73
73
|
},
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "4cf771a8b88c701084378897c5fae6d52c5be40e"
|
|
75
75
|
}
|