@react-querybuilder/antd 8.25.0 → 8.26.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.
@@ -3,7 +3,6 @@ import { Button, Select, Switch } from "antd";
3
3
  import * as React from "react";
4
4
  import { ComponentPropsWithRef, ComponentPropsWithoutRef } from "react";
5
5
  import { HolderOutlined } from "@ant-design/icons";
6
- //#region src/AntDActionElement.d.ts
7
6
  type RemoveDataIndexKeys<T> = { [K in keyof T as `data-${string}` extends K ? never : K]: T[K]; };
8
7
  /**
9
8
  * @group Props
@@ -13,8 +12,6 @@ export interface AntDActionProps extends ActionProps, RemoveDataIndexKeys<Compon
13
12
  * @group Components
14
13
  */
15
14
  export declare const AntDActionElement: ({ className, handleOnClick, label, title, disabled, disabledTranslation, testID: _testID, level: _level, path: _path, context: _context, validation: _validation, ruleOrGroup: _ruleOrGroup, schema: _schema, ...extraProps }: AntDActionProps) => React.JSX.Element;
16
- //#endregion
17
- //#region src/AntDDragHandle.d.ts
18
15
  /**
19
16
  * @group Props
20
17
  */
@@ -25,8 +22,6 @@ export type AntDDragHandleProps = DragHandleProps & {
25
22
  * @group Components
26
23
  */
27
24
  export declare const AntDDragHandle: React.ForwardRefExoticComponent<Omit<AntDDragHandleProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
28
- //#endregion
29
- //#region src/AntDNotToggle.d.ts
30
25
  /**
31
26
  * @group Props
32
27
  */
@@ -35,14 +30,10 @@ export interface AntDNotToggleProps extends NotToggleProps, ComponentPropsWithou
35
30
  * @group Components
36
31
  */
37
32
  export declare const AntDNotToggle: ({ className, handleOnChange, label, checked, title, disabled, path: _path, context: _context, validation: _validation, testID: _testID, schema: _schema, ruleGroup: _ruleGroup, ...extraProps }: AntDNotToggleProps) => React.JSX.Element;
38
- //#endregion
39
- //#region src/AntDShiftActions.d.ts
40
33
  /**
41
34
  * @group Components
42
35
  */
43
36
  export declare const AntDShiftActions: ({ shiftUp, shiftDown, shiftUpDisabled, shiftDownDisabled, disabled, className, labels, titles, testID }: ShiftActionsProps) => React.JSX.Element;
44
- //#endregion
45
- //#region src/AntDValueEditor.d.ts
46
37
  /**
47
38
  * @group Props
48
39
  */
@@ -53,8 +44,6 @@ export interface AntDValueEditorProps extends ValueEditorProps {
53
44
  * @group Components
54
45
  */
55
46
  export declare const AntDValueEditor: (allProps: AntDValueEditorProps) => React.JSX.Element | null;
56
- //#endregion
57
- //#region src/AntDValueSelector.d.ts
58
47
  /**
59
48
  * @group Props
60
49
  */
@@ -63,8 +52,6 @@ export type AntDValueSelectorProps = VersatileSelectorProps & Omit<ComponentProp
63
52
  * @group Components
64
53
  */
65
54
  export declare const AntDValueSelector: ({ className, handleOnChange, options, value, title, disabled, multiple, listsAsArrays, testID: _testID, rule: _rule, ruleGroup: _ruleGroup, rules: _rules, level: _level, path: _path, context: _context, validation: _validation, operator: _operator, field: _field, fieldData: _fieldData, schema: _schema, ...extraProps }: AntDValueSelectorProps) => React.JSX.Element;
66
- //#endregion
67
- //#region src/index.d.ts
68
55
  /**
69
56
  * @group Props
70
57
  */
@@ -77,6 +64,5 @@ export declare const antdTranslations: Partial<Translations>;
77
64
  * @group Components
78
65
  */
79
66
  export declare const QueryBuilderAntD: QueryBuilderContextProvider;
80
- //#endregion
81
67
  export {};
82
68
  //# sourceMappingURL=react-querybuilder_antd.cjs.development.d.ts.map
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region \0rolldown/runtime.js
2
+ // \0rolldown/runtime.js
3
3
  var __create = Object.create;
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -20,7 +20,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
20
20
  value: mod,
21
21
  enumerable: true
22
22
  }) : target, mod));
23
- //#endregion
24
23
  let _ant_design_icons = require("@ant-design/icons");
25
24
  let react = require("react");
26
25
  react = __toESM(react);
@@ -42,7 +41,7 @@ let dayjs_plugin_weekOfYear_js = require("dayjs/plugin/weekOfYear.js");
42
41
  dayjs_plugin_weekOfYear_js = __toESM(dayjs_plugin_weekOfYear_js);
43
42
  let dayjs_plugin_weekYear_js = require("dayjs/plugin/weekYear.js");
44
43
  dayjs_plugin_weekYear_js = __toESM(dayjs_plugin_weekYear_js);
45
- //#region src/AntDActionElement.tsx
44
+ // src/AntDActionElement.tsx
46
45
  /**
47
46
  * @group Components
48
47
  */
@@ -54,8 +53,7 @@ const AntDActionElement = ({ className, handleOnClick, label, title, disabled, d
54
53
  disabled: disabled && !disabledTranslation,
55
54
  ...extraProps
56
55
  }, disabledTranslation && disabled ? disabledTranslation.label : label);
57
- //#endregion
58
- //#region src/AntDDragHandle.tsx
56
+ // src/AntDDragHandle.tsx
59
57
  /**
60
58
  * @group Components
61
59
  */
@@ -66,8 +64,7 @@ const AntDDragHandle = (0, react.forwardRef)(({ className, title, dragHandleAttr
66
64
  ...dragHandleAttributes,
67
65
  ref: dragRef
68
66
  }));
69
- //#endregion
70
- //#region src/AntDNotToggle.tsx
67
+ // src/AntDNotToggle.tsx
71
68
  /**
72
69
  * @group Components
73
70
  */
@@ -81,8 +78,7 @@ const AntDNotToggle = ({ className, handleOnChange, label, checked, title, disab
81
78
  unCheckedChildren: "=",
82
79
  ...extraProps
83
80
  });
84
- //#endregion
85
- //#region src/AntDShiftActions.tsx
81
+ // src/AntDShiftActions.tsx
86
82
  /**
87
83
  * @group Components
88
84
  */
@@ -102,8 +98,7 @@ const AntDShiftActions = ({ shiftUp, shiftDown, shiftUpDisabled, shiftDownDisabl
102
98
  onClick: shiftDown,
103
99
  disabled: disabled || shiftDownDisabled
104
100
  }, labels?.shiftDown));
105
- //#endregion
106
- //#region src/dayjs.ts
101
+ // src/dayjs.ts
107
102
  /* v8 ignore file -- @preserve */
108
103
  dayjs.default.extend(dayjs_plugin_customParseFormat_js.default);
109
104
  dayjs.default.extend(dayjs_plugin_advancedFormat_js.default);
@@ -137,8 +132,7 @@ const localeMap = {
137
132
  const parseLocale = (locale) => {
138
133
  return localeMap[locale] || locale.split("_")[0];
139
134
  };
140
- //#endregion
141
- //#region src/AntDValueEditor.tsx
135
+ // src/AntDValueEditor.tsx
142
136
  const DatePicker = (0, antd_es_date_picker_generatePicker_index_js.default)({
143
137
  getNow: () => (0, dayjs.default)(),
144
138
  getFixedDate: (string) => (0, dayjs.default)(string, ["YYYY-M-DD", "YYYY-MM-DD"]),
@@ -376,8 +370,7 @@ const AntDValueEditor = (allProps) => {
376
370
  ...extraProps
377
371
  });
378
372
  };
379
- //#endregion
380
- //#region src/AntDValueSelector.tsx
373
+ // src/AntDValueSelector.tsx
381
374
  /**
382
375
  * @group Components
383
376
  */
@@ -419,8 +412,7 @@ const AntDValueSelector = ({ className, handleOnChange, options, value, title, d
419
412
  ...extraProps
420
413
  });
421
414
  };
422
- //#endregion
423
- //#region src/index.tsx
415
+ // src/index.tsx
424
416
  /**
425
417
  * @group Props
426
418
  */
@@ -457,7 +449,6 @@ const QueryBuilderAntD = (0, react_querybuilder.getCompatContextProvider)({
457
449
  controlElements: antdControlElements,
458
450
  translations: antdTranslations
459
451
  });
460
- //#endregion
461
452
  exports.AntDActionElement = AntDActionElement;
462
453
  exports.AntDDragHandle = AntDDragHandle;
463
454
  exports.AntDNotToggle = AntDNotToggle;
@@ -1 +1 @@
1
- {"version":3,"file":"react-querybuilder_antd.cjs.development.js","names":["Button","forwardRef","HolderOutlined","Switch","Button","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","generatePicker","dayjsGenerateConfig","useValueEditor","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","joinWith","useValueSelector","React","joinWith","Select","CloseOutlined","CopyOutlined","UngroupOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","UndoOutlined","RedoOutlined","getCompatContextProvider"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../src/dayjs.ts","../../src/AntDValueEditor.tsx","../../src/AntDValueSelector.tsx","../../src/index.tsx"],"sourcesContent":["import { Button } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { ActionProps } from 'react-querybuilder';\n\n// TODO: This may be unnecessary. Find out if there's a way to allow\n// `data-${string}` index keys without breaking other type contraints.\ntype RemoveDataIndexKeys<T> = {\n [K in keyof T as `data-${string}` extends K ? never : K]: T[K];\n};\n\n/**\n * @group Props\n */\nexport interface AntDActionProps\n extends ActionProps, RemoveDataIndexKeys<ComponentPropsWithoutRef<typeof Button>> {}\n\n/**\n * @group Components\n */\nexport const AntDActionElement = ({\n className,\n handleOnClick,\n label,\n title,\n disabled,\n disabledTranslation,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n ruleOrGroup: _ruleOrGroup,\n schema: _schema,\n ...extraProps\n}: AntDActionProps): React.JSX.Element => (\n <Button\n type=\"primary\"\n className={className}\n title={disabledTranslation && disabled ? disabledTranslation.title : title}\n onClick={e => handleOnClick(e)}\n disabled={disabled && !disabledTranslation}\n {...extraProps}>\n {disabledTranslation && disabled ? disabledTranslation.label : label}\n </Button>\n);\n","import { HolderOutlined } from '@ant-design/icons';\nimport type { ComponentPropsWithRef } from 'react';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport type { DragHandleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\n// oxlint-disable-next-line typescript/no-explicit-any\nexport type AntDDragHandleProps = DragHandleProps & { label?: any } & ComponentPropsWithRef<\n typeof HolderOutlined\n >;\n\n/**\n * @group Components\n */\nexport const AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n> = forwardRef<HTMLSpanElement, AntDDragHandleProps>(\n (\n {\n className,\n title,\n dragHandleAttributes,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n label: _label,\n disabled: _disabled,\n context: _context,\n validation: _validation,\n schema: _schema,\n ruleOrGroup: _ruleOrGroup,\n ...extraProps\n },\n dragRef\n ) => (\n <HolderOutlined\n className={className}\n title={title}\n {...extraProps}\n {...dragHandleAttributes}\n ref={dragRef}\n />\n )\n);\n","import { Switch } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport interface AntDNotToggleProps\n extends NotToggleProps, ComponentPropsWithoutRef<typeof Switch> {}\n\n/**\n * @group Components\n */\nexport const AntDNotToggle = ({\n className,\n handleOnChange,\n label,\n checked,\n title,\n disabled,\n // Props that should not be in extraProps\n path: _path,\n context: _context,\n validation: _validation,\n testID: _testID,\n schema: _schema,\n ruleGroup: _ruleGroup,\n ...extraProps\n}: AntDNotToggleProps): React.JSX.Element => (\n <Switch\n title={title}\n className={className}\n onChange={v => handleOnChange(v)}\n checked={!!checked}\n disabled={disabled}\n checkedChildren={label}\n unCheckedChildren=\"=\"\n {...extraProps}\n />\n);\n","import { Button } from 'antd';\nimport * as React from 'react';\nimport type { ShiftActionsProps } from 'react-querybuilder';\n\n/**\n * @group Components\n */\nexport const AntDShiftActions = ({\n shiftUp,\n shiftDown,\n shiftUpDisabled,\n shiftDownDisabled,\n disabled,\n className,\n labels,\n titles,\n testID,\n}: ShiftActionsProps): React.JSX.Element => (\n <div data-testid={testID} className={className}>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftUp}\n onClick={shiftUp}\n disabled={disabled || shiftUpDisabled}>\n {labels?.shiftUp}\n </Button>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftDown}\n onClick={shiftDown}\n disabled={disabled || shiftDownDisabled}>\n {labels?.shiftDown}\n </Button>\n </div>\n);\n","/**\n * This file is adapted from the following sources:\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/dayjs.ts\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/index.ts\n */\n\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat.js';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport localeData from 'dayjs/plugin/localeData.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\n\ntype GenerateConfig<DateType> = {\n // Get\n getWeekDay: (value: DateType) => number;\n getMillisecond: (value: DateType) => number;\n getSecond: (value: DateType) => number;\n getMinute: (value: DateType) => number;\n getHour: (value: DateType) => number;\n getDate: (value: DateType) => number;\n getMonth: (value: DateType) => number;\n getYear: (value: DateType) => number;\n getNow: () => DateType;\n getFixedDate: (fixed: string) => DateType;\n getEndDate: (value: DateType) => DateType;\n\n // Set\n addYear: (value: DateType, diff: number) => DateType;\n addMonth: (value: DateType, diff: number) => DateType;\n addDate: (value: DateType, diff: number) => DateType;\n setYear: (value: DateType, year: number) => DateType;\n setMonth: (value: DateType, month: number) => DateType;\n setDate: (value: DateType, date: number) => DateType;\n setHour: (value: DateType, hour: number) => DateType;\n setMinute: (value: DateType, minute: number) => DateType;\n setSecond: (value: DateType, second: number) => DateType;\n setMillisecond: (value: DateType, millisecond: number) => DateType;\n\n // Compare\n isAfter: (date1: DateType, date2: DateType) => boolean;\n isValidate: (date: DateType) => boolean;\n\n locale: {\n getWeekFirstDay: (locale: string) => number;\n getWeekFirstDate: (locale: string, value: DateType) => DateType;\n getWeek: (locale: string, value: DateType) => number;\n\n format: (locale: string, date: DateType, format: string) => string;\n\n /** Should only return validate date instance */\n parse: (locale: string, text: string, formats: string[]) => DateType | null;\n\n /** A proxy for getting locale with moment or other locale library */\n getShortWeekDays?: (locale: string) => string[];\n /** A proxy for getting locale with moment or other locale library */\n getShortMonths?: (locale: string) => string[];\n };\n};\n\n/* v8 ignore file -- @preserve */\n\ndayjs.extend(customParseFormat);\ndayjs.extend(advancedFormat);\ndayjs.extend(weekday);\ndayjs.extend(localeData);\ndayjs.extend(weekOfYear);\ndayjs.extend(weekYear);\n\ndayjs.extend((o, c) => {\n // todo support Wo (ISO week)\n const proto = c.prototype;\n const oldFormat = proto.format;\n proto.format = function f(formatStr: string) {\n const str = (formatStr || '').replace('Wo', 'wo');\n return oldFormat.bind(this)(str);\n };\n});\n\ntype IlocaleMapObject = Record<string, string>;\nconst localeMap: IlocaleMapObject = {\n // ar_EG:\n // az_AZ:\n // bg_BG:\n bn_BD: 'bn-bd',\n by_BY: 'be',\n // ca_ES:\n // cs_CZ:\n // da_DK:\n // de_DE:\n // el_GR:\n en_GB: 'en-gb',\n en_US: 'en',\n // es_ES:\n // et_EE:\n // fa_IR:\n // fi_FI:\n fr_BE: 'fr', // todo: dayjs has no fr_BE locale, use fr at present\n fr_CA: 'fr-ca',\n // fr_FR:\n // ga_IE:\n // gl_ES:\n // he_IL:\n // hi_IN:\n // hr_HR:\n // hu_HU:\n hy_AM: 'hy-am',\n // id_ID:\n // is_IS:\n // it_IT:\n // ja_JP:\n // ka_GE:\n // kk_KZ:\n // km_KH:\n kmr_IQ: 'ku',\n // kn_IN:\n // ko_KR:\n // ku_IQ: // previous ku in antd\n // lt_LT:\n // lv_LV:\n // mk_MK:\n // ml_IN:\n // mn_MN:\n // ms_MY:\n // nb_NO:\n // ne_NP:\n nl_BE: 'nl-be',\n // nl_NL:\n // pl_PL:\n pt_BR: 'pt-br',\n // pt_PT:\n // ro_RO:\n // ru_RU:\n // sk_SK:\n // sl_SI:\n // sr_RS:\n // sv_SE:\n // ta_IN:\n // th_TH:\n // tr_TR:\n // uk_UA:\n // ur_PK:\n // vi_VN:\n zh_CN: 'zh-cn',\n zh_HK: 'zh-hk',\n zh_TW: 'zh-tw',\n};\n\nconst parseLocale = (locale: string) => {\n const mapLocale = localeMap[locale];\n return mapLocale || locale.split('_')[0];\n};\n\nconst parseNoMatchNotice = () => {\n // noteOnce(false, 'Not match any format. Please help to fire a issue about this.');\n};\n\nconst generateConfig: GenerateConfig<Dayjs> = {\n // get\n getNow: () => dayjs(),\n getFixedDate: string => dayjs(string, ['YYYY-M-DD', 'YYYY-MM-DD']),\n getEndDate: date => date.endOf('month'),\n getWeekDay: date => {\n const clone = date.locale('en');\n return clone.weekday() + clone.localeData().firstDayOfWeek();\n },\n getYear: date => date.year(),\n getMonth: date => date.month(),\n getDate: date => date.date(),\n getHour: date => date.hour(),\n getMinute: date => date.minute(),\n getSecond: date => date.second(),\n getMillisecond: date => date.millisecond(),\n\n // set\n addYear: (date, diff) => date.add(diff, 'year'),\n addMonth: (date, diff) => date.add(diff, 'month'),\n addDate: (date, diff) => date.add(diff, 'day'),\n setYear: (date, year) => date.year(year),\n setMonth: (date, month) => date.month(month),\n setDate: (date, num) => date.date(num),\n setHour: (date, hour) => date.hour(hour),\n setMinute: (date, minute) => date.minute(minute),\n setSecond: (date, second) => date.second(second),\n setMillisecond: (date, milliseconds) => date.millisecond(milliseconds),\n\n // Compare\n isAfter: (date1, date2) => date1.isAfter(date2),\n isValidate: date => date.isValid(),\n\n locale: {\n getWeekFirstDay: locale => dayjs().locale(parseLocale(locale)).localeData().firstDayOfWeek(),\n getWeekFirstDate: (locale, date) => date.locale(parseLocale(locale)).weekday(0),\n getWeek: (locale, date) => date.locale(parseLocale(locale)).week(),\n getShortWeekDays: locale => dayjs().locale(parseLocale(locale)).localeData().weekdaysMin(),\n getShortMonths: locale => dayjs().locale(parseLocale(locale)).localeData().monthsShort(),\n format: (locale, date, format) => date.locale(parseLocale(locale)).format(format),\n parse: (locale, text, formats) => {\n const localeStr = parseLocale(locale);\n for (const format of formats) {\n const formatText = text;\n if (format.includes('wo') || format.includes('Wo')) {\n // parse Wo\n const year = formatText.split('-')[0];\n const weekStr = formatText.split('-')[1];\n const firstWeek = dayjs(year, 'YYYY').startOf('year').locale(localeStr);\n for (let j = 0; j <= 52; j += 1) {\n const nextWeek = firstWeek.add(j, 'week');\n if (nextWeek.format('Wo') === weekStr) {\n return nextWeek;\n }\n }\n parseNoMatchNotice();\n return null;\n }\n const date = dayjs(formatText, format, true).locale(localeStr);\n if (date.isValid()) {\n return date;\n }\n }\n\n if (text) {\n parseNoMatchNotice();\n }\n return null;\n },\n },\n};\n\nexport default generateConfig;\n","import { Checkbox, Input, InputNumber, Radio, Switch } from 'antd';\nimport generatePicker from 'antd/es/date-picker/generatePicker/index.js';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport { joinWith, useValueEditor, ValueEditor } from 'react-querybuilder';\nimport dayjsGenerateConfig from './dayjs';\n\n/**\n * @group Props\n */\nexport interface AntDValueEditorProps extends ValueEditorProps {\n extraProps?: Record<string, unknown>;\n}\n\nconst DatePicker = generatePicker(dayjsGenerateConfig);\n\n/**\n * @group Components\n */\nexport const AntDValueEditor = (allProps: AntDValueEditorProps): React.JSX.Element | null => {\n const {\n fieldData,\n operator,\n value,\n handleOnChange,\n title,\n className,\n type,\n inputType,\n values = [],\n listsAsArrays,\n separator,\n valueSource: _vs,\n disabled,\n testID,\n selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector,\n extraProps,\n parseNumbers: _parseNumbers,\n ...propsForValueSelector\n } = allProps;\n\n const {\n valueAsArray,\n multiValueHandler,\n bigIntValueHandler,\n valueListItemClassName,\n inputTypeCoerced,\n } = useValueEditor(allProps);\n\n if (operator === 'null' || operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = fieldData?.placeholder ?? '';\n\n if (\n (operator === 'between' || operator === 'notBetween') &&\n (type === 'select' || type === 'text') &&\n // Date ranges are handled differently in AntD--see below\n inputTypeCoerced !== 'date' &&\n inputTypeCoerced !== 'datetime-local'\n ) {\n if (type === 'text') {\n const editors = ['from', 'to'].map((key, i) => {\n if (inputTypeCoerced === 'time') {\n return (\n <DatePicker.TimePicker\n key={key}\n value={valueAsArray[i] ? dayjs(valueAsArray[i], 'HH:mm:ss') : null}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => multiValueHandler(d?.format('HH:mm:ss') ?? '', i)}\n {...extraProps}\n />\n );\n } else if (inputTypeCoerced === 'number') {\n return (\n <InputNumber\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={v => multiValueHandler(v, i)}\n {...extraProps}\n />\n );\n }\n return (\n <Input\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => multiValueHandler(e.target.value, i)}\n {...extraProps}\n />\n );\n });\n return (\n <span data-testid={testID} className={className} title={title}>\n {editors[0]}\n {separator}\n {editors[1]}\n </span>\n );\n }\n\n return <ValueEditor {...allProps} skipHook />;\n }\n\n switch (type) {\n case 'select':\n case 'multiselect':\n return (\n <SelectorComponent\n {...propsForValueSelector}\n className={className}\n title={title}\n value={value}\n disabled={disabled}\n listsAsArrays={listsAsArrays}\n multiple={type === 'multiselect'}\n handleOnChange={handleOnChange}\n options={values}\n {...extraProps}\n />\n );\n\n case 'textarea':\n return (\n <Input.TextArea\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n\n case 'switch':\n return (\n <Switch\n checked={!!value}\n title={title}\n className={className}\n disabled={disabled}\n onChange={v => handleOnChange(v)}\n {...extraProps}\n />\n );\n\n case 'checkbox':\n return (\n <span title={title} className={className}>\n <Checkbox\n type=\"checkbox\"\n disabled={disabled}\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!value}\n {...extraProps}\n />\n </span>\n );\n\n case 'radio':\n return (\n <span className={className} title={title}>\n {values.map(v => (\n <Radio\n key={v.name}\n value={v.name}\n checked={value === v.name}\n disabled={disabled}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}>\n {v.label}\n </Radio>\n ))}\n </span>\n );\n }\n\n switch (inputTypeCoerced) {\n case 'date':\n case 'datetime-local': {\n if (operator === 'between' || operator === 'notBetween') {\n // oxlint-disable-next-line typescript/no-explicit-any\n const dayjsArray = valueAsArray.slice(0, 2).map((v: any) => dayjs(v)) as [Dayjs, Dayjs];\n return (\n <DatePicker.RangePicker\n value={dayjsArray.every(d => d.isValid()) ? dayjsArray : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={[placeHolderText, placeHolderText]}\n // TODO: the function below is currently untested (see the\n // \"renders a date range picker\" test in ./AntD.test.tsx)\n onChange={\n /* v8 ignore start -- @preserve */\n dates => {\n const timeFormat = inputTypeCoerced === 'datetime-local' ? 'THH:mm:ss' : '';\n const format = `YYYY-MM-DD${timeFormat}`;\n const dateArray = dates?.map(d => (d?.isValid() ? d.format(format) : undefined));\n handleOnChange(\n dateArray ? (listsAsArrays ? dateArray : joinWith(dateArray, ',')) : dates\n );\n }\n /* v8 ignore stop -- @preserve */\n }\n {...extraProps}\n />\n );\n }\n\n const dateValue = dayjs(value);\n return (\n <DatePicker\n value={dateValue.isValid() ? dateValue : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={(_d, dateString) => handleOnChange(dateString)}\n {...extraProps}\n />\n );\n }\n\n case 'time': {\n const dateValue = dayjs(value, 'HH:mm:ss');\n return (\n <DatePicker.TimePicker\n value={dateValue.isValid() ? dateValue : undefined}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => handleOnChange(d?.format('HH:mm:ss') ?? '')}\n {...extraProps}\n />\n );\n }\n\n case 'number': {\n return (\n <InputNumber\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={handleOnChange}\n {...extraProps}\n />\n );\n }\n }\n\n if (inputType === 'bigint') {\n return (\n <Input\n data-testid={testID}\n type={inputTypeCoerced}\n placeholder={placeHolderText}\n value={`${value}`}\n title={title}\n className={className}\n disabled={disabled}\n onChange={e => bigIntValueHandler(e.target.value)}\n {...extraProps}\n />\n );\n }\n\n return (\n <Input\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n};\n","import { Select } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { VersatileSelectorProps } from 'react-querybuilder';\nimport { joinWith, useValueSelector } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport type AntDValueSelectorProps = VersatileSelectorProps &\n Omit<ComponentPropsWithoutRef<typeof Select>, 'onChange' | 'defaultValue'>;\n\n/**\n * @group Components\n */\nexport const AntDValueSelector = ({\n className,\n handleOnChange,\n options,\n value,\n title,\n disabled,\n multiple,\n listsAsArrays,\n // Props that should not be in extraProps\n testID: _testID,\n rule: _rule,\n ruleGroup: _ruleGroup,\n rules: _rules,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n operator: _operator,\n field: _field,\n fieldData: _fieldData,\n schema: _schema,\n ...extraProps\n}: AntDValueSelectorProps): React.JSX.Element => {\n // Alternate onChange handler that doesn't use arrays even when `multiple` is true\n const { onChange: onChangeNoArrays } = useValueSelector({\n handleOnChange,\n listsAsArrays: false,\n multiple: false,\n value,\n });\n const { onChange: onChangeNormal, val } = useValueSelector({\n handleOnChange,\n // This forces `val` to be an array if `multiple` is true,\n // even if `listsAsArrays` is false\n listsAsArrays: multiple || listsAsArrays,\n multiple,\n value,\n });\n\n const onChange = React.useCallback(\n (v: string | string[]) => {\n if (multiple && !listsAsArrays && Array.isArray(v)) {\n // `multiple: true` means `v` is probably an array, but we don't want\n // to send an array to `handleOnChange` when `listsAsArrays` is false\n onChangeNoArrays(joinWith(v));\n } else {\n onChangeNormal(v);\n }\n },\n [listsAsArrays, multiple, onChangeNoArrays, onChangeNormal]\n );\n\n return (\n <Select\n {...(multiple ? { mode: 'multiple', allowClear: true } : {})}\n title={title}\n className={className}\n popupMatchSelectWidth={false}\n disabled={disabled}\n value={val}\n onChange={onChange}\n optionFilterProp=\"label\"\n options={options}\n {...extraProps}\n />\n );\n};\n","import {\n CloseOutlined,\n CopyOutlined,\n DownOutlined,\n LockOutlined,\n RedoOutlined,\n UndoOutlined,\n UngroupOutlined,\n UnlockOutlined,\n UpOutlined,\n} from '@ant-design/icons';\nimport * as React from 'react';\nimport type {\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { AntDActionElement } from './AntDActionElement';\nimport { AntDDragHandle } from './AntDDragHandle';\nimport { AntDNotToggle } from './AntDNotToggle';\nimport { AntDShiftActions } from './AntDShiftActions';\nimport { AntDValueEditor } from './AntDValueEditor';\nimport { AntDValueSelector } from './AntDValueSelector';\n\nexport * from './AntDActionElement';\nexport * from './AntDDragHandle';\nexport * from './AntDNotToggle';\nexport * from './AntDShiftActions';\nexport * from './AntDValueEditor';\nexport * from './AntDValueSelector';\n\n/**\n * @group Props\n */\nexport const antdControlElements: ControlElementsProp<FullField, string> = {\n actionElement: AntDActionElement,\n dragHandle: AntDDragHandle,\n notToggle: AntDNotToggle,\n shiftActions: AntDShiftActions,\n valueEditor: AntDValueEditor,\n valueSelector: AntDValueSelector,\n};\n\n/**\n * @group Props\n */\nexport const antdTranslations: Partial<Translations> = {\n removeGroup: { label: <CloseOutlined /> },\n removeRule: { label: <CloseOutlined /> },\n cloneRule: { label: <CopyOutlined /> },\n cloneRuleGroup: { label: <CopyOutlined /> },\n ungroupRuleGroup: { label: <UngroupOutlined /> },\n lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n undo: { label: <UndoOutlined /> },\n redo: { label: <RedoOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"react-querybuilder_antd.cjs.development.js","names":["Button","forwardRef","HolderOutlined","Switch","Button","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","generatePicker","dayjsGenerateConfig","useValueEditor","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","joinWith","useValueSelector","React","joinWith","Select","CloseOutlined","CopyOutlined","UngroupOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","UndoOutlined","RedoOutlined","getCompatContextProvider"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../src/dayjs.ts","../../src/AntDValueEditor.tsx","../../src/AntDValueSelector.tsx","../../src/index.tsx"],"sourcesContent":["import { Button } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { ActionProps } from 'react-querybuilder';\n\n// TODO: This may be unnecessary. Find out if there's a way to allow\n// `data-${string}` index keys without breaking other type contraints.\ntype RemoveDataIndexKeys<T> = {\n [K in keyof T as `data-${string}` extends K ? never : K]: T[K];\n};\n\n/**\n * @group Props\n */\nexport interface AntDActionProps\n extends ActionProps, RemoveDataIndexKeys<ComponentPropsWithoutRef<typeof Button>> {}\n\n/**\n * @group Components\n */\nexport const AntDActionElement = ({\n className,\n handleOnClick,\n label,\n title,\n disabled,\n disabledTranslation,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n ruleOrGroup: _ruleOrGroup,\n schema: _schema,\n ...extraProps\n}: AntDActionProps): React.JSX.Element => (\n <Button\n type=\"primary\"\n className={className}\n title={disabledTranslation && disabled ? disabledTranslation.title : title}\n onClick={e => handleOnClick(e)}\n disabled={disabled && !disabledTranslation}\n {...extraProps}>\n {disabledTranslation && disabled ? disabledTranslation.label : label}\n </Button>\n);\n","import { HolderOutlined } from '@ant-design/icons';\nimport type { ComponentPropsWithRef } from 'react';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport type { DragHandleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\n// oxlint-disable-next-line typescript/no-explicit-any\nexport type AntDDragHandleProps = DragHandleProps & { label?: any } & ComponentPropsWithRef<\n typeof HolderOutlined\n >;\n\n/**\n * @group Components\n */\nexport const AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n> = forwardRef<HTMLSpanElement, AntDDragHandleProps>(\n (\n {\n className,\n title,\n dragHandleAttributes,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n label: _label,\n disabled: _disabled,\n context: _context,\n validation: _validation,\n schema: _schema,\n ruleOrGroup: _ruleOrGroup,\n ...extraProps\n },\n dragRef\n ) => (\n <HolderOutlined\n className={className}\n title={title}\n {...extraProps}\n {...dragHandleAttributes}\n ref={dragRef}\n />\n )\n);\n","import { Switch } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport interface AntDNotToggleProps\n extends NotToggleProps, ComponentPropsWithoutRef<typeof Switch> {}\n\n/**\n * @group Components\n */\nexport const AntDNotToggle = ({\n className,\n handleOnChange,\n label,\n checked,\n title,\n disabled,\n // Props that should not be in extraProps\n path: _path,\n context: _context,\n validation: _validation,\n testID: _testID,\n schema: _schema,\n ruleGroup: _ruleGroup,\n ...extraProps\n}: AntDNotToggleProps): React.JSX.Element => (\n <Switch\n title={title}\n className={className}\n onChange={v => handleOnChange(v)}\n checked={!!checked}\n disabled={disabled}\n checkedChildren={label}\n unCheckedChildren=\"=\"\n {...extraProps}\n />\n);\n","import { Button } from 'antd';\nimport * as React from 'react';\nimport type { ShiftActionsProps } from 'react-querybuilder';\n\n/**\n * @group Components\n */\nexport const AntDShiftActions = ({\n shiftUp,\n shiftDown,\n shiftUpDisabled,\n shiftDownDisabled,\n disabled,\n className,\n labels,\n titles,\n testID,\n}: ShiftActionsProps): React.JSX.Element => (\n <div data-testid={testID} className={className}>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftUp}\n onClick={shiftUp}\n disabled={disabled || shiftUpDisabled}>\n {labels?.shiftUp}\n </Button>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftDown}\n onClick={shiftDown}\n disabled={disabled || shiftDownDisabled}>\n {labels?.shiftDown}\n </Button>\n </div>\n);\n","/**\n * This file is adapted from the following sources:\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/dayjs.ts\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/index.ts\n */\n\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat.js';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport localeData from 'dayjs/plugin/localeData.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\n\ntype GenerateConfig<DateType> = {\n // Get\n getWeekDay: (value: DateType) => number;\n getMillisecond: (value: DateType) => number;\n getSecond: (value: DateType) => number;\n getMinute: (value: DateType) => number;\n getHour: (value: DateType) => number;\n getDate: (value: DateType) => number;\n getMonth: (value: DateType) => number;\n getYear: (value: DateType) => number;\n getNow: () => DateType;\n getFixedDate: (fixed: string) => DateType;\n getEndDate: (value: DateType) => DateType;\n\n // Set\n addYear: (value: DateType, diff: number) => DateType;\n addMonth: (value: DateType, diff: number) => DateType;\n addDate: (value: DateType, diff: number) => DateType;\n setYear: (value: DateType, year: number) => DateType;\n setMonth: (value: DateType, month: number) => DateType;\n setDate: (value: DateType, date: number) => DateType;\n setHour: (value: DateType, hour: number) => DateType;\n setMinute: (value: DateType, minute: number) => DateType;\n setSecond: (value: DateType, second: number) => DateType;\n setMillisecond: (value: DateType, millisecond: number) => DateType;\n\n // Compare\n isAfter: (date1: DateType, date2: DateType) => boolean;\n isValidate: (date: DateType) => boolean;\n\n locale: {\n getWeekFirstDay: (locale: string) => number;\n getWeekFirstDate: (locale: string, value: DateType) => DateType;\n getWeek: (locale: string, value: DateType) => number;\n\n format: (locale: string, date: DateType, format: string) => string;\n\n /** Should only return validate date instance */\n parse: (locale: string, text: string, formats: string[]) => DateType | null;\n\n /** A proxy for getting locale with moment or other locale library */\n getShortWeekDays?: (locale: string) => string[];\n /** A proxy for getting locale with moment or other locale library */\n getShortMonths?: (locale: string) => string[];\n };\n};\n\n/* v8 ignore file -- @preserve */\n\ndayjs.extend(customParseFormat);\ndayjs.extend(advancedFormat);\ndayjs.extend(weekday);\ndayjs.extend(localeData);\ndayjs.extend(weekOfYear);\ndayjs.extend(weekYear);\n\ndayjs.extend((o, c) => {\n // todo support Wo (ISO week)\n const proto = c.prototype;\n const oldFormat = proto.format;\n proto.format = function f(formatStr: string) {\n const str = (formatStr || '').replace('Wo', 'wo');\n return oldFormat.bind(this)(str);\n };\n});\n\ntype IlocaleMapObject = Record<string, string>;\nconst localeMap: IlocaleMapObject = {\n // ar_EG:\n // az_AZ:\n // bg_BG:\n bn_BD: 'bn-bd',\n by_BY: 'be',\n // ca_ES:\n // cs_CZ:\n // da_DK:\n // de_DE:\n // el_GR:\n en_GB: 'en-gb',\n en_US: 'en',\n // es_ES:\n // et_EE:\n // fa_IR:\n // fi_FI:\n fr_BE: 'fr', // todo: dayjs has no fr_BE locale, use fr at present\n fr_CA: 'fr-ca',\n // fr_FR:\n // ga_IE:\n // gl_ES:\n // he_IL:\n // hi_IN:\n // hr_HR:\n // hu_HU:\n hy_AM: 'hy-am',\n // id_ID:\n // is_IS:\n // it_IT:\n // ja_JP:\n // ka_GE:\n // kk_KZ:\n // km_KH:\n kmr_IQ: 'ku',\n // kn_IN:\n // ko_KR:\n // ku_IQ: // previous ku in antd\n // lt_LT:\n // lv_LV:\n // mk_MK:\n // ml_IN:\n // mn_MN:\n // ms_MY:\n // nb_NO:\n // ne_NP:\n nl_BE: 'nl-be',\n // nl_NL:\n // pl_PL:\n pt_BR: 'pt-br',\n // pt_PT:\n // ro_RO:\n // ru_RU:\n // sk_SK:\n // sl_SI:\n // sr_RS:\n // sv_SE:\n // ta_IN:\n // th_TH:\n // tr_TR:\n // uk_UA:\n // ur_PK:\n // vi_VN:\n zh_CN: 'zh-cn',\n zh_HK: 'zh-hk',\n zh_TW: 'zh-tw',\n};\n\nconst parseLocale = (locale: string) => {\n const mapLocale = localeMap[locale];\n return mapLocale || locale.split('_')[0];\n};\n\nconst parseNoMatchNotice = () => {\n // noteOnce(false, 'Not match any format. Please help to fire a issue about this.');\n};\n\nconst generateConfig: GenerateConfig<Dayjs> = {\n // get\n getNow: () => dayjs(),\n getFixedDate: string => dayjs(string, ['YYYY-M-DD', 'YYYY-MM-DD']),\n getEndDate: date => date.endOf('month'),\n getWeekDay: date => {\n const clone = date.locale('en');\n return clone.weekday() + clone.localeData().firstDayOfWeek();\n },\n getYear: date => date.year(),\n getMonth: date => date.month(),\n getDate: date => date.date(),\n getHour: date => date.hour(),\n getMinute: date => date.minute(),\n getSecond: date => date.second(),\n getMillisecond: date => date.millisecond(),\n\n // set\n addYear: (date, diff) => date.add(diff, 'year'),\n addMonth: (date, diff) => date.add(diff, 'month'),\n addDate: (date, diff) => date.add(diff, 'day'),\n setYear: (date, year) => date.year(year),\n setMonth: (date, month) => date.month(month),\n setDate: (date, num) => date.date(num),\n setHour: (date, hour) => date.hour(hour),\n setMinute: (date, minute) => date.minute(minute),\n setSecond: (date, second) => date.second(second),\n setMillisecond: (date, milliseconds) => date.millisecond(milliseconds),\n\n // Compare\n isAfter: (date1, date2) => date1.isAfter(date2),\n isValidate: date => date.isValid(),\n\n locale: {\n getWeekFirstDay: locale => dayjs().locale(parseLocale(locale)).localeData().firstDayOfWeek(),\n getWeekFirstDate: (locale, date) => date.locale(parseLocale(locale)).weekday(0),\n getWeek: (locale, date) => date.locale(parseLocale(locale)).week(),\n getShortWeekDays: locale => dayjs().locale(parseLocale(locale)).localeData().weekdaysMin(),\n getShortMonths: locale => dayjs().locale(parseLocale(locale)).localeData().monthsShort(),\n format: (locale, date, format) => date.locale(parseLocale(locale)).format(format),\n parse: (locale, text, formats) => {\n const localeStr = parseLocale(locale);\n for (const format of formats) {\n const formatText = text;\n if (format.includes('wo') || format.includes('Wo')) {\n // parse Wo\n const year = formatText.split('-')[0];\n const weekStr = formatText.split('-')[1];\n const firstWeek = dayjs(year, 'YYYY').startOf('year').locale(localeStr);\n for (let j = 0; j <= 52; j += 1) {\n const nextWeek = firstWeek.add(j, 'week');\n if (nextWeek.format('Wo') === weekStr) {\n return nextWeek;\n }\n }\n parseNoMatchNotice();\n return null;\n }\n const date = dayjs(formatText, format, true).locale(localeStr);\n if (date.isValid()) {\n return date;\n }\n }\n\n if (text) {\n parseNoMatchNotice();\n }\n return null;\n },\n },\n};\n\nexport default generateConfig;\n","import { Checkbox, Input, InputNumber, Radio, Switch } from 'antd';\nimport generatePicker from 'antd/es/date-picker/generatePicker/index.js';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport { joinWith, useValueEditor, ValueEditor } from 'react-querybuilder';\nimport dayjsGenerateConfig from './dayjs';\n\n/**\n * @group Props\n */\nexport interface AntDValueEditorProps extends ValueEditorProps {\n extraProps?: Record<string, unknown>;\n}\n\nconst DatePicker = generatePicker(dayjsGenerateConfig);\n\n/**\n * @group Components\n */\nexport const AntDValueEditor = (allProps: AntDValueEditorProps): React.JSX.Element | null => {\n const {\n fieldData,\n operator,\n value,\n handleOnChange,\n title,\n className,\n type,\n inputType,\n values = [],\n listsAsArrays,\n separator,\n valueSource: _vs,\n disabled,\n testID,\n selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector,\n extraProps,\n parseNumbers: _parseNumbers,\n ...propsForValueSelector\n } = allProps;\n\n const {\n valueAsArray,\n multiValueHandler,\n bigIntValueHandler,\n valueListItemClassName,\n inputTypeCoerced,\n } = useValueEditor(allProps);\n\n if (operator === 'null' || operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = fieldData?.placeholder ?? '';\n\n if (\n (operator === 'between' || operator === 'notBetween') &&\n (type === 'select' || type === 'text') &&\n // Date ranges are handled differently in AntD--see below\n inputTypeCoerced !== 'date' &&\n inputTypeCoerced !== 'datetime-local'\n ) {\n if (type === 'text') {\n const editors = ['from', 'to'].map((key, i) => {\n if (inputTypeCoerced === 'time') {\n return (\n <DatePicker.TimePicker\n key={key}\n value={valueAsArray[i] ? dayjs(valueAsArray[i], 'HH:mm:ss') : null}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => multiValueHandler(d?.format('HH:mm:ss') ?? '', i)}\n {...extraProps}\n />\n );\n } else if (inputTypeCoerced === 'number') {\n return (\n <InputNumber\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={v => multiValueHandler(v, i)}\n {...extraProps}\n />\n );\n }\n return (\n <Input\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => multiValueHandler(e.target.value, i)}\n {...extraProps}\n />\n );\n });\n return (\n <span data-testid={testID} className={className} title={title}>\n {editors[0]}\n {separator}\n {editors[1]}\n </span>\n );\n }\n\n return <ValueEditor {...allProps} skipHook />;\n }\n\n switch (type) {\n case 'select':\n case 'multiselect':\n return (\n <SelectorComponent\n {...propsForValueSelector}\n className={className}\n title={title}\n value={value}\n disabled={disabled}\n listsAsArrays={listsAsArrays}\n multiple={type === 'multiselect'}\n handleOnChange={handleOnChange}\n options={values}\n {...extraProps}\n />\n );\n\n case 'textarea':\n return (\n <Input.TextArea\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n\n case 'switch':\n return (\n <Switch\n checked={!!value}\n title={title}\n className={className}\n disabled={disabled}\n onChange={v => handleOnChange(v)}\n {...extraProps}\n />\n );\n\n case 'checkbox':\n return (\n <span title={title} className={className}>\n <Checkbox\n type=\"checkbox\"\n disabled={disabled}\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!value}\n {...extraProps}\n />\n </span>\n );\n\n case 'radio':\n return (\n <span className={className} title={title}>\n {values.map(v => (\n <Radio\n key={v.name}\n value={v.name}\n checked={value === v.name}\n disabled={disabled}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}>\n {v.label}\n </Radio>\n ))}\n </span>\n );\n }\n\n switch (inputTypeCoerced) {\n case 'date':\n case 'datetime-local': {\n if (operator === 'between' || operator === 'notBetween') {\n // oxlint-disable-next-line typescript/no-explicit-any\n const dayjsArray = valueAsArray.slice(0, 2).map((v: any) => dayjs(v)) as [Dayjs, Dayjs];\n return (\n <DatePicker.RangePicker\n value={dayjsArray.every(d => d.isValid()) ? dayjsArray : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={[placeHolderText, placeHolderText]}\n // TODO: the function below is currently untested (see the\n // \"renders a date range picker\" test in ./AntD.test.tsx)\n onChange={\n /* v8 ignore start -- @preserve */\n dates => {\n const timeFormat = inputTypeCoerced === 'datetime-local' ? 'THH:mm:ss' : '';\n const format = `YYYY-MM-DD${timeFormat}`;\n const dateArray = dates?.map(d => (d?.isValid() ? d.format(format) : undefined));\n handleOnChange(\n dateArray ? (listsAsArrays ? dateArray : joinWith(dateArray, ',')) : dates\n );\n }\n /* v8 ignore stop -- @preserve */\n }\n {...extraProps}\n />\n );\n }\n\n const dateValue = dayjs(value);\n return (\n <DatePicker\n value={dateValue.isValid() ? dateValue : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={(_d, dateString) => handleOnChange(dateString)}\n {...extraProps}\n />\n );\n }\n\n case 'time': {\n const dateValue = dayjs(value, 'HH:mm:ss');\n return (\n <DatePicker.TimePicker\n value={dateValue.isValid() ? dateValue : undefined}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => handleOnChange(d?.format('HH:mm:ss') ?? '')}\n {...extraProps}\n />\n );\n }\n\n case 'number': {\n return (\n <InputNumber\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={handleOnChange}\n {...extraProps}\n />\n );\n }\n }\n\n if (inputType === 'bigint') {\n return (\n <Input\n data-testid={testID}\n type={inputTypeCoerced}\n placeholder={placeHolderText}\n value={`${value}`}\n title={title}\n className={className}\n disabled={disabled}\n onChange={e => bigIntValueHandler(e.target.value)}\n {...extraProps}\n />\n );\n }\n\n return (\n <Input\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n};\n","import { Select } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { VersatileSelectorProps } from 'react-querybuilder';\nimport { joinWith, useValueSelector } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport type AntDValueSelectorProps = VersatileSelectorProps &\n Omit<ComponentPropsWithoutRef<typeof Select>, 'onChange' | 'defaultValue'>;\n\n/**\n * @group Components\n */\nexport const AntDValueSelector = ({\n className,\n handleOnChange,\n options,\n value,\n title,\n disabled,\n multiple,\n listsAsArrays,\n // Props that should not be in extraProps\n testID: _testID,\n rule: _rule,\n ruleGroup: _ruleGroup,\n rules: _rules,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n operator: _operator,\n field: _field,\n fieldData: _fieldData,\n schema: _schema,\n ...extraProps\n}: AntDValueSelectorProps): React.JSX.Element => {\n // Alternate onChange handler that doesn't use arrays even when `multiple` is true\n const { onChange: onChangeNoArrays } = useValueSelector({\n handleOnChange,\n listsAsArrays: false,\n multiple: false,\n value,\n });\n const { onChange: onChangeNormal, val } = useValueSelector({\n handleOnChange,\n // This forces `val` to be an array if `multiple` is true,\n // even if `listsAsArrays` is false\n listsAsArrays: multiple || listsAsArrays,\n multiple,\n value,\n });\n\n const onChange = React.useCallback(\n (v: string | string[]) => {\n if (multiple && !listsAsArrays && Array.isArray(v)) {\n // `multiple: true` means `v` is probably an array, but we don't want\n // to send an array to `handleOnChange` when `listsAsArrays` is false\n onChangeNoArrays(joinWith(v));\n } else {\n onChangeNormal(v);\n }\n },\n [listsAsArrays, multiple, onChangeNoArrays, onChangeNormal]\n );\n\n return (\n <Select\n {...(multiple ? { mode: 'multiple', allowClear: true } : {})}\n title={title}\n className={className}\n popupMatchSelectWidth={false}\n disabled={disabled}\n value={val}\n onChange={onChange}\n optionFilterProp=\"label\"\n options={options}\n {...extraProps}\n />\n );\n};\n","import {\n CloseOutlined,\n CopyOutlined,\n DownOutlined,\n LockOutlined,\n RedoOutlined,\n UndoOutlined,\n UngroupOutlined,\n UnlockOutlined,\n UpOutlined,\n} from '@ant-design/icons';\nimport * as React from 'react';\nimport type {\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { AntDActionElement } from './AntDActionElement';\nimport { AntDDragHandle } from './AntDDragHandle';\nimport { AntDNotToggle } from './AntDNotToggle';\nimport { AntDShiftActions } from './AntDShiftActions';\nimport { AntDValueEditor } from './AntDValueEditor';\nimport { AntDValueSelector } from './AntDValueSelector';\n\nexport * from './AntDActionElement';\nexport * from './AntDDragHandle';\nexport * from './AntDNotToggle';\nexport * from './AntDShiftActions';\nexport * from './AntDValueEditor';\nexport * from './AntDValueSelector';\n\n/**\n * @group Props\n */\nexport const antdControlElements: ControlElementsProp<FullField, string> = {\n actionElement: AntDActionElement,\n dragHandle: AntDDragHandle,\n notToggle: AntDNotToggle,\n shiftActions: AntDShiftActions,\n valueEditor: AntDValueEditor,\n valueSelector: AntDValueSelector,\n};\n\n/**\n * @group Props\n */\nexport const antdTranslations: Partial<Translations> = {\n removeGroup: { label: <CloseOutlined /> },\n removeRule: { label: <CloseOutlined /> },\n cloneRule: { label: <CopyOutlined /> },\n cloneRuleGroup: { label: <CopyOutlined /> },\n ungroupRuleGroup: { label: <UngroupOutlined /> },\n lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n undo: { label: <UndoOutlined /> },\n redo: { label: <RedoOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"mappings":"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"}
@@ -3,7 +3,6 @@ import { Button, Select, Switch } from "antd";
3
3
  import * as React from "react";
4
4
  import { ComponentPropsWithRef, ComponentPropsWithoutRef } from "react";
5
5
  import { HolderOutlined } from "@ant-design/icons";
6
- //#region src/AntDActionElement.d.ts
7
6
  type RemoveDataIndexKeys<T> = { [K in keyof T as `data-${string}` extends K ? never : K]: T[K]; };
8
7
  /**
9
8
  * @group Props
@@ -13,8 +12,6 @@ export interface AntDActionProps extends ActionProps, RemoveDataIndexKeys<Compon
13
12
  * @group Components
14
13
  */
15
14
  export declare const AntDActionElement: ({ className, handleOnClick, label, title, disabled, disabledTranslation, testID: _testID, level: _level, path: _path, context: _context, validation: _validation, ruleOrGroup: _ruleOrGroup, schema: _schema, ...extraProps }: AntDActionProps) => React.JSX.Element;
16
- //#endregion
17
- //#region src/AntDDragHandle.d.ts
18
15
  /**
19
16
  * @group Props
20
17
  */
@@ -25,8 +22,6 @@ export type AntDDragHandleProps = DragHandleProps & {
25
22
  * @group Components
26
23
  */
27
24
  export declare const AntDDragHandle: React.ForwardRefExoticComponent<Omit<AntDDragHandleProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
28
- //#endregion
29
- //#region src/AntDNotToggle.d.ts
30
25
  /**
31
26
  * @group Props
32
27
  */
@@ -35,14 +30,10 @@ export interface AntDNotToggleProps extends NotToggleProps, ComponentPropsWithou
35
30
  * @group Components
36
31
  */
37
32
  export declare const AntDNotToggle: ({ className, handleOnChange, label, checked, title, disabled, path: _path, context: _context, validation: _validation, testID: _testID, schema: _schema, ruleGroup: _ruleGroup, ...extraProps }: AntDNotToggleProps) => React.JSX.Element;
38
- //#endregion
39
- //#region src/AntDShiftActions.d.ts
40
33
  /**
41
34
  * @group Components
42
35
  */
43
36
  export declare const AntDShiftActions: ({ shiftUp, shiftDown, shiftUpDisabled, shiftDownDisabled, disabled, className, labels, titles, testID }: ShiftActionsProps) => React.JSX.Element;
44
- //#endregion
45
- //#region src/AntDValueEditor.d.ts
46
37
  /**
47
38
  * @group Props
48
39
  */
@@ -53,8 +44,6 @@ export interface AntDValueEditorProps extends ValueEditorProps {
53
44
  * @group Components
54
45
  */
55
46
  export declare const AntDValueEditor: (allProps: AntDValueEditorProps) => React.JSX.Element | null;
56
- //#endregion
57
- //#region src/AntDValueSelector.d.ts
58
47
  /**
59
48
  * @group Props
60
49
  */
@@ -63,8 +52,6 @@ export type AntDValueSelectorProps = VersatileSelectorProps & Omit<ComponentProp
63
52
  * @group Components
64
53
  */
65
54
  export declare const AntDValueSelector: ({ className, handleOnChange, options, value, title, disabled, multiple, listsAsArrays, testID: _testID, rule: _rule, ruleGroup: _ruleGroup, rules: _rules, level: _level, path: _path, context: _context, validation: _validation, operator: _operator, field: _field, fieldData: _fieldData, schema: _schema, ...extraProps }: AntDValueSelectorProps) => React.JSX.Element;
66
- //#endregion
67
- //#region src/index.d.ts
68
55
  /**
69
56
  * @group Props
70
57
  */
@@ -77,6 +64,5 @@ export declare const antdTranslations: Partial<Translations>;
77
64
  * @group Components
78
65
  */
79
66
  export declare const QueryBuilderAntD: QueryBuilderContextProvider;
80
- //#endregion
81
67
  export {};
82
68
  //# sourceMappingURL=react-querybuilder_antd.cjs.production.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-querybuilder_antd.cjs.production.js","names":["Button","forwardRef","HolderOutlined","Switch","Button","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","generatePicker","dayjsGenerateConfig","useValueEditor","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","joinWith","useValueSelector","React","joinWith","Select","CloseOutlined","CopyOutlined","UngroupOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","UndoOutlined","RedoOutlined","getCompatContextProvider","__create","__defProp","__getOwnPropDesc","__getOwnPropNames","__getProtoOf","__hasOwnProp","__copyProps","from","keys","i","n","key","to","except","k","desc","__toESM","mod","isNodeMode","target","_ant_design_icons","react","react_querybuilder","antd","antd_es_date_picker_generatePicker_index_js","dayjs","dayjs_plugin_advancedFormat_js","dayjs_plugin_customParseFormat_js","dayjs_plugin_localeData_js","dayjs_plugin_weekday_js","dayjs_plugin_weekOfYear_js","dayjs_plugin_weekYear_js","AntDActionElement","_testID","_level","_path","_context","_validation","_ruleOrGroup","_schema","extraProps","disabledTranslation","disabled","title","handleOnClick","label","AntDDragHandle","_label","_disabled","dragHandleAttributes","dragRef","AntDNotToggle","_ruleGroup","handleOnChange","v","checked","AntDShiftActions","testID","titles","shiftUp","shiftUpDisabled","labels","shiftDown","shiftDownDisabled","proto","c","oldFormat","str","formatStr","localeMap","parseLocale","locale","DatePicker","string","date","clone","diff","year","month","num","hour","minute","second","milliseconds","date1","date2","format","localeStr","formats","formatText","text","weekStr","firstWeek","j","nextWeek","AntDValueEditor","_vs","SelectorComponent","allProps","_parseNumbers","propsForValueSelector","operator","placeHolderText","fieldData","type","inputTypeCoerced","editors","valueAsArray","valueListItemClassName","multiValueHandler","d","separator","values","value","dayjsArray","dateArray","dates","listsAsArrays","dateValue","dateString","inputType","bigIntValueHandler","AntDValueSelector","_rule","_rules","_operator","_field","_fieldData","onChangeNoArrays","onChangeNormal","multiple","onChange","val","antdControlElements","antdTranslations","QueryBuilderAntD"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../src/dayjs.ts","../../src/AntDValueEditor.tsx","../../src/AntDValueSelector.tsx","../../src/index.tsx"],"sourcesContent":["import { Button } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { ActionProps } from 'react-querybuilder';\n\n// TODO: This may be unnecessary. Find out if there's a way to allow\n// `data-${string}` index keys without breaking other type contraints.\ntype RemoveDataIndexKeys<T> = {\n [K in keyof T as `data-${string}` extends K ? never : K]: T[K];\n};\n\n/**\n * @group Props\n */\nexport interface AntDActionProps\n extends ActionProps, RemoveDataIndexKeys<ComponentPropsWithoutRef<typeof Button>> {}\n\n/**\n * @group Components\n */\nexport const AntDActionElement = ({\n className,\n handleOnClick,\n label,\n title,\n disabled,\n disabledTranslation,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n ruleOrGroup: _ruleOrGroup,\n schema: _schema,\n ...extraProps\n}: AntDActionProps): React.JSX.Element => (\n <Button\n type=\"primary\"\n className={className}\n title={disabledTranslation && disabled ? disabledTranslation.title : title}\n onClick={e => handleOnClick(e)}\n disabled={disabled && !disabledTranslation}\n {...extraProps}>\n {disabledTranslation && disabled ? disabledTranslation.label : label}\n </Button>\n);\n","import { HolderOutlined } from '@ant-design/icons';\nimport type { ComponentPropsWithRef } from 'react';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport type { DragHandleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\n// oxlint-disable-next-line typescript/no-explicit-any\nexport type AntDDragHandleProps = DragHandleProps & { label?: any } & ComponentPropsWithRef<\n typeof HolderOutlined\n >;\n\n/**\n * @group Components\n */\nexport const AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n> = forwardRef<HTMLSpanElement, AntDDragHandleProps>(\n (\n {\n className,\n title,\n dragHandleAttributes,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n label: _label,\n disabled: _disabled,\n context: _context,\n validation: _validation,\n schema: _schema,\n ruleOrGroup: _ruleOrGroup,\n ...extraProps\n },\n dragRef\n ) => (\n <HolderOutlined\n className={className}\n title={title}\n {...extraProps}\n {...dragHandleAttributes}\n ref={dragRef}\n />\n )\n);\n","import { Switch } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport interface AntDNotToggleProps\n extends NotToggleProps, ComponentPropsWithoutRef<typeof Switch> {}\n\n/**\n * @group Components\n */\nexport const AntDNotToggle = ({\n className,\n handleOnChange,\n label,\n checked,\n title,\n disabled,\n // Props that should not be in extraProps\n path: _path,\n context: _context,\n validation: _validation,\n testID: _testID,\n schema: _schema,\n ruleGroup: _ruleGroup,\n ...extraProps\n}: AntDNotToggleProps): React.JSX.Element => (\n <Switch\n title={title}\n className={className}\n onChange={v => handleOnChange(v)}\n checked={!!checked}\n disabled={disabled}\n checkedChildren={label}\n unCheckedChildren=\"=\"\n {...extraProps}\n />\n);\n","import { Button } from 'antd';\nimport * as React from 'react';\nimport type { ShiftActionsProps } from 'react-querybuilder';\n\n/**\n * @group Components\n */\nexport const AntDShiftActions = ({\n shiftUp,\n shiftDown,\n shiftUpDisabled,\n shiftDownDisabled,\n disabled,\n className,\n labels,\n titles,\n testID,\n}: ShiftActionsProps): React.JSX.Element => (\n <div data-testid={testID} className={className}>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftUp}\n onClick={shiftUp}\n disabled={disabled || shiftUpDisabled}>\n {labels?.shiftUp}\n </Button>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftDown}\n onClick={shiftDown}\n disabled={disabled || shiftDownDisabled}>\n {labels?.shiftDown}\n </Button>\n </div>\n);\n","/**\n * This file is adapted from the following sources:\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/dayjs.ts\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/index.ts\n */\n\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat.js';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport localeData from 'dayjs/plugin/localeData.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\n\ntype GenerateConfig<DateType> = {\n // Get\n getWeekDay: (value: DateType) => number;\n getMillisecond: (value: DateType) => number;\n getSecond: (value: DateType) => number;\n getMinute: (value: DateType) => number;\n getHour: (value: DateType) => number;\n getDate: (value: DateType) => number;\n getMonth: (value: DateType) => number;\n getYear: (value: DateType) => number;\n getNow: () => DateType;\n getFixedDate: (fixed: string) => DateType;\n getEndDate: (value: DateType) => DateType;\n\n // Set\n addYear: (value: DateType, diff: number) => DateType;\n addMonth: (value: DateType, diff: number) => DateType;\n addDate: (value: DateType, diff: number) => DateType;\n setYear: (value: DateType, year: number) => DateType;\n setMonth: (value: DateType, month: number) => DateType;\n setDate: (value: DateType, date: number) => DateType;\n setHour: (value: DateType, hour: number) => DateType;\n setMinute: (value: DateType, minute: number) => DateType;\n setSecond: (value: DateType, second: number) => DateType;\n setMillisecond: (value: DateType, millisecond: number) => DateType;\n\n // Compare\n isAfter: (date1: DateType, date2: DateType) => boolean;\n isValidate: (date: DateType) => boolean;\n\n locale: {\n getWeekFirstDay: (locale: string) => number;\n getWeekFirstDate: (locale: string, value: DateType) => DateType;\n getWeek: (locale: string, value: DateType) => number;\n\n format: (locale: string, date: DateType, format: string) => string;\n\n /** Should only return validate date instance */\n parse: (locale: string, text: string, formats: string[]) => DateType | null;\n\n /** A proxy for getting locale with moment or other locale library */\n getShortWeekDays?: (locale: string) => string[];\n /** A proxy for getting locale with moment or other locale library */\n getShortMonths?: (locale: string) => string[];\n };\n};\n\n/* v8 ignore file -- @preserve */\n\ndayjs.extend(customParseFormat);\ndayjs.extend(advancedFormat);\ndayjs.extend(weekday);\ndayjs.extend(localeData);\ndayjs.extend(weekOfYear);\ndayjs.extend(weekYear);\n\ndayjs.extend((o, c) => {\n // todo support Wo (ISO week)\n const proto = c.prototype;\n const oldFormat = proto.format;\n proto.format = function f(formatStr: string) {\n const str = (formatStr || '').replace('Wo', 'wo');\n return oldFormat.bind(this)(str);\n };\n});\n\ntype IlocaleMapObject = Record<string, string>;\nconst localeMap: IlocaleMapObject = {\n // ar_EG:\n // az_AZ:\n // bg_BG:\n bn_BD: 'bn-bd',\n by_BY: 'be',\n // ca_ES:\n // cs_CZ:\n // da_DK:\n // de_DE:\n // el_GR:\n en_GB: 'en-gb',\n en_US: 'en',\n // es_ES:\n // et_EE:\n // fa_IR:\n // fi_FI:\n fr_BE: 'fr', // todo: dayjs has no fr_BE locale, use fr at present\n fr_CA: 'fr-ca',\n // fr_FR:\n // ga_IE:\n // gl_ES:\n // he_IL:\n // hi_IN:\n // hr_HR:\n // hu_HU:\n hy_AM: 'hy-am',\n // id_ID:\n // is_IS:\n // it_IT:\n // ja_JP:\n // ka_GE:\n // kk_KZ:\n // km_KH:\n kmr_IQ: 'ku',\n // kn_IN:\n // ko_KR:\n // ku_IQ: // previous ku in antd\n // lt_LT:\n // lv_LV:\n // mk_MK:\n // ml_IN:\n // mn_MN:\n // ms_MY:\n // nb_NO:\n // ne_NP:\n nl_BE: 'nl-be',\n // nl_NL:\n // pl_PL:\n pt_BR: 'pt-br',\n // pt_PT:\n // ro_RO:\n // ru_RU:\n // sk_SK:\n // sl_SI:\n // sr_RS:\n // sv_SE:\n // ta_IN:\n // th_TH:\n // tr_TR:\n // uk_UA:\n // ur_PK:\n // vi_VN:\n zh_CN: 'zh-cn',\n zh_HK: 'zh-hk',\n zh_TW: 'zh-tw',\n};\n\nconst parseLocale = (locale: string) => {\n const mapLocale = localeMap[locale];\n return mapLocale || locale.split('_')[0];\n};\n\nconst parseNoMatchNotice = () => {\n // noteOnce(false, 'Not match any format. Please help to fire a issue about this.');\n};\n\nconst generateConfig: GenerateConfig<Dayjs> = {\n // get\n getNow: () => dayjs(),\n getFixedDate: string => dayjs(string, ['YYYY-M-DD', 'YYYY-MM-DD']),\n getEndDate: date => date.endOf('month'),\n getWeekDay: date => {\n const clone = date.locale('en');\n return clone.weekday() + clone.localeData().firstDayOfWeek();\n },\n getYear: date => date.year(),\n getMonth: date => date.month(),\n getDate: date => date.date(),\n getHour: date => date.hour(),\n getMinute: date => date.minute(),\n getSecond: date => date.second(),\n getMillisecond: date => date.millisecond(),\n\n // set\n addYear: (date, diff) => date.add(diff, 'year'),\n addMonth: (date, diff) => date.add(diff, 'month'),\n addDate: (date, diff) => date.add(diff, 'day'),\n setYear: (date, year) => date.year(year),\n setMonth: (date, month) => date.month(month),\n setDate: (date, num) => date.date(num),\n setHour: (date, hour) => date.hour(hour),\n setMinute: (date, minute) => date.minute(minute),\n setSecond: (date, second) => date.second(second),\n setMillisecond: (date, milliseconds) => date.millisecond(milliseconds),\n\n // Compare\n isAfter: (date1, date2) => date1.isAfter(date2),\n isValidate: date => date.isValid(),\n\n locale: {\n getWeekFirstDay: locale => dayjs().locale(parseLocale(locale)).localeData().firstDayOfWeek(),\n getWeekFirstDate: (locale, date) => date.locale(parseLocale(locale)).weekday(0),\n getWeek: (locale, date) => date.locale(parseLocale(locale)).week(),\n getShortWeekDays: locale => dayjs().locale(parseLocale(locale)).localeData().weekdaysMin(),\n getShortMonths: locale => dayjs().locale(parseLocale(locale)).localeData().monthsShort(),\n format: (locale, date, format) => date.locale(parseLocale(locale)).format(format),\n parse: (locale, text, formats) => {\n const localeStr = parseLocale(locale);\n for (const format of formats) {\n const formatText = text;\n if (format.includes('wo') || format.includes('Wo')) {\n // parse Wo\n const year = formatText.split('-')[0];\n const weekStr = formatText.split('-')[1];\n const firstWeek = dayjs(year, 'YYYY').startOf('year').locale(localeStr);\n for (let j = 0; j <= 52; j += 1) {\n const nextWeek = firstWeek.add(j, 'week');\n if (nextWeek.format('Wo') === weekStr) {\n return nextWeek;\n }\n }\n parseNoMatchNotice();\n return null;\n }\n const date = dayjs(formatText, format, true).locale(localeStr);\n if (date.isValid()) {\n return date;\n }\n }\n\n if (text) {\n parseNoMatchNotice();\n }\n return null;\n },\n },\n};\n\nexport default generateConfig;\n","import { Checkbox, Input, InputNumber, Radio, Switch } from 'antd';\nimport generatePicker from 'antd/es/date-picker/generatePicker/index.js';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport { joinWith, useValueEditor, ValueEditor } from 'react-querybuilder';\nimport dayjsGenerateConfig from './dayjs';\n\n/**\n * @group Props\n */\nexport interface AntDValueEditorProps extends ValueEditorProps {\n extraProps?: Record<string, unknown>;\n}\n\nconst DatePicker = generatePicker(dayjsGenerateConfig);\n\n/**\n * @group Components\n */\nexport const AntDValueEditor = (allProps: AntDValueEditorProps): React.JSX.Element | null => {\n const {\n fieldData,\n operator,\n value,\n handleOnChange,\n title,\n className,\n type,\n inputType,\n values = [],\n listsAsArrays,\n separator,\n valueSource: _vs,\n disabled,\n testID,\n selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector,\n extraProps,\n parseNumbers: _parseNumbers,\n ...propsForValueSelector\n } = allProps;\n\n const {\n valueAsArray,\n multiValueHandler,\n bigIntValueHandler,\n valueListItemClassName,\n inputTypeCoerced,\n } = useValueEditor(allProps);\n\n if (operator === 'null' || operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = fieldData?.placeholder ?? '';\n\n if (\n (operator === 'between' || operator === 'notBetween') &&\n (type === 'select' || type === 'text') &&\n // Date ranges are handled differently in AntD--see below\n inputTypeCoerced !== 'date' &&\n inputTypeCoerced !== 'datetime-local'\n ) {\n if (type === 'text') {\n const editors = ['from', 'to'].map((key, i) => {\n if (inputTypeCoerced === 'time') {\n return (\n <DatePicker.TimePicker\n key={key}\n value={valueAsArray[i] ? dayjs(valueAsArray[i], 'HH:mm:ss') : null}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => multiValueHandler(d?.format('HH:mm:ss') ?? '', i)}\n {...extraProps}\n />\n );\n } else if (inputTypeCoerced === 'number') {\n return (\n <InputNumber\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={v => multiValueHandler(v, i)}\n {...extraProps}\n />\n );\n }\n return (\n <Input\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => multiValueHandler(e.target.value, i)}\n {...extraProps}\n />\n );\n });\n return (\n <span data-testid={testID} className={className} title={title}>\n {editors[0]}\n {separator}\n {editors[1]}\n </span>\n );\n }\n\n return <ValueEditor {...allProps} skipHook />;\n }\n\n switch (type) {\n case 'select':\n case 'multiselect':\n return (\n <SelectorComponent\n {...propsForValueSelector}\n className={className}\n title={title}\n value={value}\n disabled={disabled}\n listsAsArrays={listsAsArrays}\n multiple={type === 'multiselect'}\n handleOnChange={handleOnChange}\n options={values}\n {...extraProps}\n />\n );\n\n case 'textarea':\n return (\n <Input.TextArea\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n\n case 'switch':\n return (\n <Switch\n checked={!!value}\n title={title}\n className={className}\n disabled={disabled}\n onChange={v => handleOnChange(v)}\n {...extraProps}\n />\n );\n\n case 'checkbox':\n return (\n <span title={title} className={className}>\n <Checkbox\n type=\"checkbox\"\n disabled={disabled}\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!value}\n {...extraProps}\n />\n </span>\n );\n\n case 'radio':\n return (\n <span className={className} title={title}>\n {values.map(v => (\n <Radio\n key={v.name}\n value={v.name}\n checked={value === v.name}\n disabled={disabled}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}>\n {v.label}\n </Radio>\n ))}\n </span>\n );\n }\n\n switch (inputTypeCoerced) {\n case 'date':\n case 'datetime-local': {\n if (operator === 'between' || operator === 'notBetween') {\n // oxlint-disable-next-line typescript/no-explicit-any\n const dayjsArray = valueAsArray.slice(0, 2).map((v: any) => dayjs(v)) as [Dayjs, Dayjs];\n return (\n <DatePicker.RangePicker\n value={dayjsArray.every(d => d.isValid()) ? dayjsArray : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={[placeHolderText, placeHolderText]}\n // TODO: the function below is currently untested (see the\n // \"renders a date range picker\" test in ./AntD.test.tsx)\n onChange={\n /* v8 ignore start -- @preserve */\n dates => {\n const timeFormat = inputTypeCoerced === 'datetime-local' ? 'THH:mm:ss' : '';\n const format = `YYYY-MM-DD${timeFormat}`;\n const dateArray = dates?.map(d => (d?.isValid() ? d.format(format) : undefined));\n handleOnChange(\n dateArray ? (listsAsArrays ? dateArray : joinWith(dateArray, ',')) : dates\n );\n }\n /* v8 ignore stop -- @preserve */\n }\n {...extraProps}\n />\n );\n }\n\n const dateValue = dayjs(value);\n return (\n <DatePicker\n value={dateValue.isValid() ? dateValue : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={(_d, dateString) => handleOnChange(dateString)}\n {...extraProps}\n />\n );\n }\n\n case 'time': {\n const dateValue = dayjs(value, 'HH:mm:ss');\n return (\n <DatePicker.TimePicker\n value={dateValue.isValid() ? dateValue : undefined}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => handleOnChange(d?.format('HH:mm:ss') ?? '')}\n {...extraProps}\n />\n );\n }\n\n case 'number': {\n return (\n <InputNumber\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={handleOnChange}\n {...extraProps}\n />\n );\n }\n }\n\n if (inputType === 'bigint') {\n return (\n <Input\n data-testid={testID}\n type={inputTypeCoerced}\n placeholder={placeHolderText}\n value={`${value}`}\n title={title}\n className={className}\n disabled={disabled}\n onChange={e => bigIntValueHandler(e.target.value)}\n {...extraProps}\n />\n );\n }\n\n return (\n <Input\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n};\n","import { Select } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { VersatileSelectorProps } from 'react-querybuilder';\nimport { joinWith, useValueSelector } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport type AntDValueSelectorProps = VersatileSelectorProps &\n Omit<ComponentPropsWithoutRef<typeof Select>, 'onChange' | 'defaultValue'>;\n\n/**\n * @group Components\n */\nexport const AntDValueSelector = ({\n className,\n handleOnChange,\n options,\n value,\n title,\n disabled,\n multiple,\n listsAsArrays,\n // Props that should not be in extraProps\n testID: _testID,\n rule: _rule,\n ruleGroup: _ruleGroup,\n rules: _rules,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n operator: _operator,\n field: _field,\n fieldData: _fieldData,\n schema: _schema,\n ...extraProps\n}: AntDValueSelectorProps): React.JSX.Element => {\n // Alternate onChange handler that doesn't use arrays even when `multiple` is true\n const { onChange: onChangeNoArrays } = useValueSelector({\n handleOnChange,\n listsAsArrays: false,\n multiple: false,\n value,\n });\n const { onChange: onChangeNormal, val } = useValueSelector({\n handleOnChange,\n // This forces `val` to be an array if `multiple` is true,\n // even if `listsAsArrays` is false\n listsAsArrays: multiple || listsAsArrays,\n multiple,\n value,\n });\n\n const onChange = React.useCallback(\n (v: string | string[]) => {\n if (multiple && !listsAsArrays && Array.isArray(v)) {\n // `multiple: true` means `v` is probably an array, but we don't want\n // to send an array to `handleOnChange` when `listsAsArrays` is false\n onChangeNoArrays(joinWith(v));\n } else {\n onChangeNormal(v);\n }\n },\n [listsAsArrays, multiple, onChangeNoArrays, onChangeNormal]\n );\n\n return (\n <Select\n {...(multiple ? { mode: 'multiple', allowClear: true } : {})}\n title={title}\n className={className}\n popupMatchSelectWidth={false}\n disabled={disabled}\n value={val}\n onChange={onChange}\n optionFilterProp=\"label\"\n options={options}\n {...extraProps}\n />\n );\n};\n","import {\n CloseOutlined,\n CopyOutlined,\n DownOutlined,\n LockOutlined,\n RedoOutlined,\n UndoOutlined,\n UngroupOutlined,\n UnlockOutlined,\n UpOutlined,\n} from '@ant-design/icons';\nimport * as React from 'react';\nimport type {\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { AntDActionElement } from './AntDActionElement';\nimport { AntDDragHandle } from './AntDDragHandle';\nimport { AntDNotToggle } from './AntDNotToggle';\nimport { AntDShiftActions } from './AntDShiftActions';\nimport { AntDValueEditor } from './AntDValueEditor';\nimport { AntDValueSelector } from './AntDValueSelector';\n\nexport * from './AntDActionElement';\nexport * from './AntDDragHandle';\nexport * from './AntDNotToggle';\nexport * from './AntDShiftActions';\nexport * from './AntDValueEditor';\nexport * from './AntDValueSelector';\n\n/**\n * @group Props\n */\nexport const antdControlElements: ControlElementsProp<FullField, string> = {\n actionElement: AntDActionElement,\n dragHandle: AntDDragHandle,\n notToggle: AntDNotToggle,\n shiftActions: AntDShiftActions,\n valueEditor: AntDValueEditor,\n valueSelector: AntDValueSelector,\n};\n\n/**\n * @group Props\n */\nexport const antdTranslations: Partial<Translations> = {\n removeGroup: { label: <CloseOutlined /> },\n removeRule: { label: <CloseOutlined /> },\n cloneRule: { label: <CopyOutlined /> },\n cloneRuleGroup: { label: <CopyOutlined /> },\n ungroupRuleGroup: { label: <UngroupOutlined /> },\n lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n undo: { label: <UndoOutlined /> },\n redo: { label: <RedoOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"mappings":"gkCAoBA,MAAamE,GAAqB,CAChC,YACA,gBACA,QACA,QACA,WACA,sBAEA,OAAQC,EACR,MAAOC,EACP,KAAMC,EACN,QAASC,EACT,WAAYC,EACZ,YAAaC,EACb,OAAQC,EACR,GAAGC,KAEH,kBAAA,cAAC3E,EAAAA,OAAD,CACE,KAAK,UACM,YACX,MAAO4E,GAAuBC,EAAWD,EAAoB,MAAQE,EACrE,QAAS,GAAKC,EAAc,CAAC,EAC7B,SAAUF,GAAY,CAACD,EACvB,GAAID,CAEE,EADLC,GAAuBC,EAAWD,EAAoB,MAAQI,CACzD,EC5BGC,GAAA,EAEThF,EAAAA,WAAAA,EAEA,CACE,YACA,QACA,uBAEA,OAAQmE,EACR,MAAOC,EACP,KAAMC,EACN,MAAOY,EACP,SAAUC,EACV,QAASZ,EACT,WAAYC,EACZ,OAAQE,EACR,YAAaD,EACb,GAAGE,GAEL,IAEA,kBAAA,cAACzE,EAAAA,eAAD,CACa,YACJ,QACP,GAAIyE,EACJ,GAAIS,EACJ,IAAKC,CACN,CAAA,CAEL,ECjCaC,GAAiB,CAC5B,YACA,iBACA,QACA,UACA,QACA,WAEA,KAAMhB,EACN,QAASC,EACT,WAAYC,EACZ,OAAQJ,EACR,OAAQM,EACR,UAAWa,EACX,GAAGZ,KAEH,kBAAA,cAACxE,EAAAA,OAAD,CACS,QACI,YACX,SAAU,GAAKqF,EAAeC,CAAC,EAC/B,QAAS,CAAC,CAACC,EACD,WACV,gBAAiBV,EACjB,kBAAkB,IAClB,GAAIL,CACL,CAAA,EChCUgB,GAAoB,CAC/B,UACA,YACA,kBACA,oBACA,WACA,YACA,SACA,SACA,YAEA,kBAAA,cAAC,MAAD,CAAK,cAAaC,EAAmB,WAiBhC,EAhBH,kBAAA,cAACxF,EAAAA,OAAD,CACE,KAAK,UACL,KAAK,QACL,MAAOyF,GAAQ,QACf,QAASC,EACT,SAAUjB,GAAYkB,CAEhB,EADLC,GAAQ,OACH,EACR,kBAAA,cAAC5F,EAAAA,OAAD,CACE,KAAK,UACL,KAAK,QACL,MAAOyF,GAAQ,UACf,QAASI,EACT,SAAUpB,GAAYqB,CAEhB,EADLF,GAAQ,SACH,CACL;;CC6BPpC,EAAA,QAAM,OAAOvD,EAAAA,OAAiB,EAC9BuD,EAAA,QAAM,OAAOtD,EAAAA,OAAc,EAC3BsD,EAAA,QAAM,OAAOrD,EAAAA,OAAO,EACpBqD,EAAA,QAAM,OAAOpD,EAAAA,OAAU,EACvBoD,EAAA,QAAM,OAAOnD,EAAAA,OAAU,EACvBmD,EAAA,QAAM,OAAOlD,EAAAA,OAAQ,EAErBkD,EAAA,QAAM,QAAQ,EAAG,IAAM,CAErB,IAAMuC,EAAQC,EAAE,UACVC,EAAYF,EAAM,OACxB,EAAM,OAAS,SAAW,EAAmB,CAC3C,IAAMG,GAAOC,GAAa,GAAA,CAAI,QAAQ,KAAM,IAAI,EAChD,OAAOF,EAAU,KAAK,IAAI,CAAC,CAACC,CAAG,CACjC,CACF,CAAC,EAGD,MAAME,EAA8B,CAIlC,MAAO,QACP,MAAO,KAMP,MAAO,QACP,MAAO,KAKP,MAAO,KACP,MAAO,QAQP,MAAO,QAQP,OAAQ,KAYR,MAAO,QAGP,MAAO,QAcP,MAAO,QACP,MAAO,QACP,MAAO,OACT,EAEMC,EAAe,GACDD,EAAUE,IACRA,EAAO,MAAM,GAAG,CAAC,CAAC,GCxIlCC,GAAA,EAAahG,EAAAA,QAAAA,CAAeC,CDiJhC,YAAA,EAAcgD,EAAA,QAAA,CAAM,EACpB,aAAc,IAAA,EAAUA,EAAA,QAAA,CAAMgD,EAAQ,CAAC,YAAa,YAAY,CAAC,EACjE,WAAY,GAAQC,EAAK,MAAM,OAAO,EACtC,WAAY,GAAQ,CAClB,IAAMC,EAAQD,EAAK,OAAO,IAAI,EAC9B,OAAOC,EAAM,QAAQ,EAAIA,EAAM,WAAW,CAAC,CAAC,eAAe,CAC7D,EACA,QAAS,GAAQD,EAAK,KAAK,EAC3B,SAAU,GAAQA,EAAK,MAAM,EAC7B,QAAS,GAAQA,EAAK,KAAK,EAC3B,QAAS,GAAQA,EAAK,KAAK,EAC3B,UAAW,GAAQA,EAAK,OAAO,EAC/B,UAAW,GAAQA,EAAK,OAAO,EAC/B,eAAgB,GAAQA,EAAK,YAAY,EAGzC,SAAU,EAAM,IAASA,EAAK,IAAIE,EAAM,MAAM,EAC9C,UAAW,EAAM,IAASF,EAAK,IAAIE,EAAM,OAAO,EAChD,SAAU,EAAM,IAASF,EAAK,IAAIE,EAAM,KAAK,EAC7C,SAAU,EAAM,IAASF,EAAK,KAAKG,CAAI,EACvC,UAAW,EAAM,IAAUH,EAAK,MAAMI,CAAK,EAC3C,SAAU,EAAM,IAAQJ,EAAK,KAAKK,CAAG,EACrC,SAAU,EAAM,IAASL,EAAK,KAAKM,CAAI,EACvC,WAAY,EAAM,IAAWN,EAAK,OAAOO,CAAM,EAC/C,WAAY,EAAM,IAAWP,EAAK,OAAOQ,CAAM,EAC/C,gBAAiB,EAAM,IAAiBR,EAAK,YAAYS,CAAY,EAGrE,SAAU,EAAO,IAAUC,EAAM,QAAQC,CAAK,EAC9C,WAAY,GAAQX,EAAK,QAAQ,EAEjC,OAAQ,CACN,gBAAiB,IAAA,EAAUjD,EAAA,QAAA,CAAM,CAAC,CAAC,OAAO6C,EAAYC,CAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,eAAe,EAC3F,kBAAmB,EAAQ,IAASG,EAAK,OAAOJ,EAAYC,CAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAC9E,SAAU,EAAQ,IAASG,EAAK,OAAOJ,EAAYC,CAAM,CAAC,CAAC,CAAC,KAAK,EACjE,iBAAkB,IAAA,EAAU9C,EAAA,QAAA,CAAM,CAAC,CAAC,OAAO6C,EAAYC,CAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,EACzF,eAAgB,IAAA,EAAU9C,EAAA,QAAA,CAAM,CAAC,CAAC,OAAO6C,EAAYC,CAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,EACvF,QAAS,EAAQ,EAAM,IAAWG,EAAK,OAAOJ,EAAYC,CAAM,CAAC,CAAC,CAAC,OAAOe,CAAM,EAChF,OAAQ,EAAQ,EAAM,IAAY,CAChC,IAAMC,EAAYjB,EAAYC,CAAM,EACpC,IAAK,IAAMe,KAAUE,EAAS,CAC5B,IAAMC,EAAaC,EACnB,GAAIJ,EAAO,SAAS,IAAI,GAAKA,EAAO,SAAS,IAAI,EAAG,CAElD,IAAMT,EAAOY,EAAW,MAAM,GAAG,CAAC,CAAC,GAC7BE,EAAUF,EAAW,MAAM,GAAG,CAAC,CAAC,GAChCG,GAAA,EAAYnE,EAAA,QAAA,CAAMoD,EAAM,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,OAAOU,CAAS,EACtE,IAAK,IAAIM,EAAI,EAAGA,GAAK,GAAI,GAAK,EAAG,CAC/B,IAAMC,EAAWF,EAAU,IAAIC,EAAG,MAAM,EACxC,GAAIC,EAAS,OAAO,IAAI,IAAMH,EAC5B,OAAOG,CAEX,CAEA,OAAO,IACT,CACA,IAAMpB,GAAA,EAAOjD,EAAA,QAAA,CAAMgE,EAAYH,EAAQ,EAAI,CAAC,CAAC,OAAOC,CAAS,EAC7D,GAAIb,EAAK,QAAQ,EACf,OAAOA,CAEX,CAKA,OAAO,IACT,CACF,CCpNgCjG,CAAmB,EAKxCsH,EAAmB,GAA6D,CAC3F,GAAM,CACJ,YACA,WACA,QACA,iBACA,QACA,YACA,OACA,YACA,SAAS,CAAC,EACV,gBACA,YACA,YAAaC,EACb,WACA,SACA,kBAAmBC,EAAoBC,EAAS,OAAO,SAAS,cAChE,aACA,aAAcC,EACd,GAAGC,GACDF,EAEE,CACJ,eACA,oBACA,qBACA,yBACA,qBAAA,EACExH,EAAAA,eAAAA,CAAewH,CAAQ,EAE3B,GAAIG,IAAa,QAAUA,IAAa,UACtC,OAAO,KAGT,IAAMC,EAAkBC,GAAW,aAAe,GAElD,IACGF,IAAa,WAAaA,IAAa,gBACvCG,IAAS,UAAYA,IAAS,SAE/BC,IAAqB,QACrBA,IAAqB,iBACrB,CACA,GAAID,IAAS,OAAQ,CACnB,IAAME,EAAU,CAAC,OAAQ,IAAI,CAAC,CAAC,KAAK,EAAK,IACnCD,IAAqB,OAErB,kBAAA,cAACjC,EAAW,WAAZ,CACO,MACL,MAAOmC,EAAalG,IAAA,EAAKgB,EAAA,QAAA,CAAMkF,EAAalG,GAAI,UAAU,EAAI,KAC9D,UAAWmG,EACD,WACV,YAAaN,EACb,SAAU,GAAKO,EAAkBC,GAAG,OAAO,UAAU,GAAK,GAAIrG,CAAC,EAC/D,GAAI+B,CACL,CAAA,EAEMiE,IAAqB,SAE5B,kBAAA,cAAC9H,EAAAA,YAAD,CACO,MACL,KAAM8H,EACN,MAAOE,EAAalG,IAAM,GAC1B,UAAWmG,EACD,WACV,YAAaN,EACb,SAAU,GAAKO,EAAkBvD,EAAG7C,CAAC,EACrC,GAAI+B,CACL,CAAA,EAIH,kBAAA,cAAC5D,EAAAA,MAAD,CACO,MACL,KAAM6H,EACN,MAAOE,EAAalG,IAAM,GAC1B,UAAWmG,EACD,WACV,YAAaN,EACb,SAAU,GAAKO,EAAkB,EAAE,OAAO,MAAOpG,CAAC,EAClD,GAAI+B,CACL,CAAA,CAEJ,EACD,MACE,kBAAA,cAAC,OAAD,CAAM,cAAaiB,EAAmB,YAAkB,OAIlD,EAHHiD,EAAQ,GACRK,EACAL,EAAQ,EACL,CAEV,CAEA,MAAO,kBAAA,cAAC7H,EAAAA,YAAD,CAAa,GAAIqH,EAAU,SAAA,EAAU,CAAA,CAC9C,CAEA,OAAQM,EAAR,CACE,IAAK,SACL,IAAK,cACH,MACE,kBAAA,cAACP,EAAD,CACE,GAAIG,EACO,YACJ,QACA,QACG,WACK,gBACf,SAAUI,IAAS,cACH,iBAChB,QAASQ,EACT,GAAIxE,CACL,CAAA,EAGL,IAAK,WACH,MACE,kBAAA,cAAC5D,EAAAA,MAAM,SAAP,CACS,QACA,QACI,YACD,WACV,YAAa0H,EACb,SAAU,GAAKjD,EAAe,EAAE,OAAO,KAAK,EAC5C,GAAIb,CACL,CAAA,EAGL,IAAK,SACH,MACE,kBAAA,cAAC1D,EAAAA,OAAD,CACE,QAAS,CAAC,CAACmI,EACJ,QACI,YACD,WACV,SAAU,GAAK5D,EAAeC,CAAC,EAC/B,GAAId,CACL,CAAA,EAGL,IAAK,WACH,MACE,kBAAA,cAAC,OAAD,CAAa,QAAkB,WAQzB,EAPJ,kBAAA,cAACzD,EAAAA,SAAD,CACE,KAAK,WACK,WACV,SAAU,GAAKsE,EAAe,EAAE,OAAO,OAAO,EAC9C,QAAS,CAAC,CAAC4D,EACX,GAAIzE,CACL,CAAA,CACG,EAGV,IAAK,QACH,MACE,kBAAA,cAAC,OAAD,CAAiB,YAAkB,OAY7B,EAXHwE,EAAO,IAAI,GACV,kBAAA,cAAChI,EAAAA,MAAD,CACE,IAAKsE,EAAE,KACP,MAAOA,EAAE,KACT,QAAS2D,IAAU3D,EAAE,KACX,WACV,SAAU,GAAKD,EAAe,EAAE,OAAO,KAAK,EAC5C,GAAIb,CAEC,EADJc,EAAE,KACE,CACR,CACG,CAEZ,CAEA,OAAQmD,EAAR,CACE,IAAK,OACL,IAAK,iBAAkB,CACrB,GAAIJ,IAAa,WAAaA,IAAa,aAAc,CAEvD,IAAMa,EAAaP,EAAa,MAAM,EAAG,CAAC,CAAC,CAAC,IAAK,IAAA,EAAWlF,EAAA,QAAA,CAAM6B,CAAC,CAAC,EACpE,MACE,kBAAA,cAACkB,EAAW,YAAZ,CACE,MAAO0C,EAAW,MAAM,GAAKJ,EAAE,QAAQ,CAAC,EAAII,EAAa,IAAA,GACzD,SAAUT,IAAqB,iBACpB,YACD,WACV,YAAa,CAACH,EAAiBA,CAAe,EAG9C;;AAEE,GAAS,CAEP,IAAMhB,EAAS,aADImB,IAAqB,iBAAmB,YAAc,KAEnEU,EAAYC,GAAO,IAAI,GAAMN,GAAG,QAAQ,EAAIA,EAAE,OAAOxB,CAAM,EAAI,IAAA,EAAU,EAC/EjC,EACE8D,EAAaE,EAAgBF,GAAA,EAAYlI,EAAAA,SAAAA,CAASkI,EAAW,GAAG,EAAKC,CACvE,CACF,EAGF,GAAI5E,CACL,CAAA,CAEL,CAEA,IAAM8E,GAAA,EAAY7F,EAAA,QAAA,CAAMwF,CAAK,EAC7B,MACE,kBAAA,cAACzC,EAAD,CACE,MAAO8C,EAAU,QAAQ,EAAIA,EAAY,IAAA,GACzC,SAAUb,IAAqB,iBACpB,YACD,WACV,YAAaH,EACb,UAAW,EAAI,IAAejD,EAAekE,CAAU,EACvD,GAAI/E,CACL,CAAA,CAEL,CAEA,IAAK,OAAQ,CACX,IAAM8E,GAAA,EAAY7F,EAAA,QAAA,CAAMwF,EAAO,UAAU,EACzC,MACE,kBAAA,cAACzC,EAAW,WAAZ,CACE,MAAO8C,EAAU,QAAQ,EAAIA,EAAY,IAAA,GAC9B,YACD,WACV,YAAahB,EACb,SAAU,GAAKjD,EAAeyD,GAAG,OAAO,UAAU,GAAK,EAAE,EACzD,GAAItE,CACL,CAAA,CAEL,CAEA,IAAK,SACH,MACE,kBAAA,cAAC7D,EAAAA,YAAD,CACE,KAAM8H,EACC,QACA,QACI,YACD,WACV,YAAaH,EACb,SAAUjD,EACV,GAAIb,CACL,CAAA,CAGP,CAkBA,OAhBIgF,IAAc,SAEd,kBAAA,cAAC5I,EAAAA,MAAD,CACE,cAAa6E,EACb,KAAMgD,EACN,YAAaH,EACb,MAAO,GAAGW,IACH,QACI,YACD,WACV,SAAU,GAAKQ,EAAmB,EAAE,OAAO,KAAK,EAChD,GAAIjF,CACL,CAAA,EAKH,kBAAA,cAAC5D,EAAAA,MAAD,CACE,KAAM6H,EACC,QACA,QACI,YACD,WACV,YAAaH,EACb,SAAU,GAAKjD,EAAe,EAAE,OAAO,KAAK,EAC5C,GAAIb,CACL,CAAA,CAEL,ECxRakF,GAAqB,CAChC,YACA,iBACA,UACA,QACA,QACA,WACA,WACA,gBAEA,OAAQzF,EACR,KAAM0F,EACN,UAAWvE,EACX,MAAOwE,EACP,MAAO1F,EACP,KAAMC,EACN,QAASC,EACT,WAAYC,EACZ,SAAUwF,EACV,MAAOC,EACP,UAAWC,EACX,OAAQxF,EACR,GAAGC,KAC4C,CAE/C,GAAM,CAAE,SAAUwF,IAAA,EAAqB9I,EAAAA,iBAAAA,CAAiB,CACtD,iBACA,cAAe,GACf,SAAU,GACV,OACF,CAAC,EACK,CAAE,SAAU+I,EAAgB,QAAA,EAAQ/I,EAAAA,iBAAAA,CAAiB,CACzD,iBAGA,cAAegJ,GAAYb,EAC3B,WACA,OACF,CAAC,EAEKc,EAAWhJ,EAAM,YACpB,GAAyB,CACpB+I,GAAY,CAACb,GAAiB,MAAM,QAAQ/D,CAAC,EAG/C0E,GAAA,EAAiB5I,EAAAA,SAAAA,CAASkE,CAAC,CAAC,EAE5B2E,EAAe3E,CAAC,CAEpB,EACA,CAAC+D,EAAea,EAAUF,EAAkBC,CAAc,CAC5D,EAEA,MACE,kBAAA,cAAC5I,EAAAA,OAAD,CACE,GAAK6I,EAAW,CAAE,KAAM,WAAY,WAAY,EAAK,EAAI,CAAC,EACnD,QACI,YACX,sBAAuB,GACb,WACV,MAAOE,EACG,WACV,iBAAiB,QACR,UACT,GAAI5F,CACL,CAAA,CAEL,EC9Ca6F,EAA8D,CACzE,cAAerG,EACf,WAAYc,EACZ,UAAWK,EACX,aAAcK,EACd,YAAauC,EACb,cAAe2B,CACjB,EAKaY,EAA0C,CACrD,YAAa,CAAE,MAAO,kBAAA,cAAChJ,EAAAA,cAAAA,IAAe,CAAE,EACxC,WAAY,CAAE,MAAO,kBAAA,cAACA,EAAAA,cAAAA,IAAe,CAAE,EACvC,UAAW,CAAE,MAAO,kBAAA,cAACC,EAAAA,aAAAA,IAAc,CAAE,EACrC,eAAgB,CAAE,MAAO,kBAAA,cAACA,EAAAA,aAAAA,IAAc,CAAE,EAC1C,iBAAkB,CAAE,MAAO,kBAAA,cAACC,EAAAA,gBAAAA,IAAiB,CAAE,EAC/C,UAAW,CAAE,MAAO,kBAAA,cAACC,EAAAA,eAAAA,IAAgB,CAAE,EACvC,SAAU,CAAE,MAAO,kBAAA,cAACA,EAAAA,eAAAA,IAAgB,CAAE,EACtC,kBAAmB,CAAE,MAAO,kBAAA,cAACC,EAAAA,aAAAA,IAAc,CAAE,EAC7C,iBAAkB,CAAE,MAAO,kBAAA,cAACA,EAAAA,aAAAA,IAAc,CAAE,EAC5C,cAAe,CAAE,MAAO,kBAAA,cAACC,EAAAA,WAAAA,IAAY,CAAE,EACvC,gBAAiB,CAAE,MAAO,kBAAA,cAACC,EAAAA,aAAAA,IAAc,CAAE,EAC3C,KAAM,CAAE,MAAO,kBAAA,cAACC,EAAAA,aAAAA,IAAc,CAAE,EAChC,KAAM,CAAE,MAAO,kBAAA,cAACC,EAAAA,aAAAA,IAAc,CAAE,CAClC,EAKayI,GAAA,EAAgDxI,EAAAA,yBAAAA,CAAyB,CACpF,gBAAiBsI,EACjB,aAAcC,CAChB,CAAC"}
1
+ {"version":3,"file":"react-querybuilder_antd.cjs.production.js","names":["Button","forwardRef","HolderOutlined","Switch","Button","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","generatePicker","dayjsGenerateConfig","useValueEditor","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","joinWith","useValueSelector","React","joinWith","Select","CloseOutlined","CopyOutlined","UngroupOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","UndoOutlined","RedoOutlined","getCompatContextProvider","__create","__defProp","__getOwnPropDesc","__getOwnPropNames","__getProtoOf","__hasOwnProp","__copyProps","from","keys","i","n","key","to","except","k","desc","__toESM","mod","isNodeMode","target","_ant_design_icons","react","react_querybuilder","antd","antd_es_date_picker_generatePicker_index_js","dayjs","dayjs_plugin_advancedFormat_js","dayjs_plugin_customParseFormat_js","dayjs_plugin_localeData_js","dayjs_plugin_weekday_js","dayjs_plugin_weekOfYear_js","dayjs_plugin_weekYear_js","AntDActionElement","_testID","_level","_path","_context","_validation","_ruleOrGroup","_schema","extraProps","disabledTranslation","disabled","title","handleOnClick","label","AntDDragHandle","_label","_disabled","dragHandleAttributes","dragRef","AntDNotToggle","_ruleGroup","handleOnChange","v","checked","AntDShiftActions","testID","titles","shiftUp","shiftUpDisabled","labels","shiftDown","shiftDownDisabled","proto","c","oldFormat","str","formatStr","localeMap","parseLocale","locale","DatePicker","string","date","clone","diff","year","month","num","hour","minute","second","milliseconds","date1","date2","format","localeStr","formats","formatText","text","weekStr","firstWeek","j","nextWeek","AntDValueEditor","_vs","SelectorComponent","allProps","_parseNumbers","propsForValueSelector","operator","placeHolderText","fieldData","type","inputTypeCoerced","editors","valueAsArray","valueListItemClassName","multiValueHandler","d","separator","values","value","dayjsArray","dateArray","dates","listsAsArrays","dateValue","dateString","inputType","bigIntValueHandler","AntDValueSelector","_rule","_rules","_operator","_field","_fieldData","onChangeNoArrays","onChangeNormal","multiple","onChange","val","antdControlElements","antdTranslations","QueryBuilderAntD"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../src/dayjs.ts","../../src/AntDValueEditor.tsx","../../src/AntDValueSelector.tsx","../../src/index.tsx"],"sourcesContent":["import { Button } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { ActionProps } from 'react-querybuilder';\n\n// TODO: This may be unnecessary. Find out if there's a way to allow\n// `data-${string}` index keys without breaking other type contraints.\ntype RemoveDataIndexKeys<T> = {\n [K in keyof T as `data-${string}` extends K ? never : K]: T[K];\n};\n\n/**\n * @group Props\n */\nexport interface AntDActionProps\n extends ActionProps, RemoveDataIndexKeys<ComponentPropsWithoutRef<typeof Button>> {}\n\n/**\n * @group Components\n */\nexport const AntDActionElement = ({\n className,\n handleOnClick,\n label,\n title,\n disabled,\n disabledTranslation,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n ruleOrGroup: _ruleOrGroup,\n schema: _schema,\n ...extraProps\n}: AntDActionProps): React.JSX.Element => (\n <Button\n type=\"primary\"\n className={className}\n title={disabledTranslation && disabled ? disabledTranslation.title : title}\n onClick={e => handleOnClick(e)}\n disabled={disabled && !disabledTranslation}\n {...extraProps}>\n {disabledTranslation && disabled ? disabledTranslation.label : label}\n </Button>\n);\n","import { HolderOutlined } from '@ant-design/icons';\nimport type { ComponentPropsWithRef } from 'react';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport type { DragHandleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\n// oxlint-disable-next-line typescript/no-explicit-any\nexport type AntDDragHandleProps = DragHandleProps & { label?: any } & ComponentPropsWithRef<\n typeof HolderOutlined\n >;\n\n/**\n * @group Components\n */\nexport const AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n> = forwardRef<HTMLSpanElement, AntDDragHandleProps>(\n (\n {\n className,\n title,\n dragHandleAttributes,\n // Props that should not be in extraProps\n testID: _testID,\n level: _level,\n path: _path,\n label: _label,\n disabled: _disabled,\n context: _context,\n validation: _validation,\n schema: _schema,\n ruleOrGroup: _ruleOrGroup,\n ...extraProps\n },\n dragRef\n ) => (\n <HolderOutlined\n className={className}\n title={title}\n {...extraProps}\n {...dragHandleAttributes}\n ref={dragRef}\n />\n )\n);\n","import { Switch } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { NotToggleProps } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport interface AntDNotToggleProps\n extends NotToggleProps, ComponentPropsWithoutRef<typeof Switch> {}\n\n/**\n * @group Components\n */\nexport const AntDNotToggle = ({\n className,\n handleOnChange,\n label,\n checked,\n title,\n disabled,\n // Props that should not be in extraProps\n path: _path,\n context: _context,\n validation: _validation,\n testID: _testID,\n schema: _schema,\n ruleGroup: _ruleGroup,\n ...extraProps\n}: AntDNotToggleProps): React.JSX.Element => (\n <Switch\n title={title}\n className={className}\n onChange={v => handleOnChange(v)}\n checked={!!checked}\n disabled={disabled}\n checkedChildren={label}\n unCheckedChildren=\"=\"\n {...extraProps}\n />\n);\n","import { Button } from 'antd';\nimport * as React from 'react';\nimport type { ShiftActionsProps } from 'react-querybuilder';\n\n/**\n * @group Components\n */\nexport const AntDShiftActions = ({\n shiftUp,\n shiftDown,\n shiftUpDisabled,\n shiftDownDisabled,\n disabled,\n className,\n labels,\n titles,\n testID,\n}: ShiftActionsProps): React.JSX.Element => (\n <div data-testid={testID} className={className}>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftUp}\n onClick={shiftUp}\n disabled={disabled || shiftUpDisabled}>\n {labels?.shiftUp}\n </Button>\n <Button\n type=\"primary\"\n size=\"small\"\n title={titles?.shiftDown}\n onClick={shiftDown}\n disabled={disabled || shiftDownDisabled}>\n {labels?.shiftDown}\n </Button>\n </div>\n);\n","/**\n * This file is adapted from the following sources:\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/dayjs.ts\n * - https://github.com/react-component/picker/blob/d526bd551778070be3295060f1b5841786cb9500/src/generate/index.ts\n */\n\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat.js';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport localeData from 'dayjs/plugin/localeData.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\n\ntype GenerateConfig<DateType> = {\n // Get\n getWeekDay: (value: DateType) => number;\n getMillisecond: (value: DateType) => number;\n getSecond: (value: DateType) => number;\n getMinute: (value: DateType) => number;\n getHour: (value: DateType) => number;\n getDate: (value: DateType) => number;\n getMonth: (value: DateType) => number;\n getYear: (value: DateType) => number;\n getNow: () => DateType;\n getFixedDate: (fixed: string) => DateType;\n getEndDate: (value: DateType) => DateType;\n\n // Set\n addYear: (value: DateType, diff: number) => DateType;\n addMonth: (value: DateType, diff: number) => DateType;\n addDate: (value: DateType, diff: number) => DateType;\n setYear: (value: DateType, year: number) => DateType;\n setMonth: (value: DateType, month: number) => DateType;\n setDate: (value: DateType, date: number) => DateType;\n setHour: (value: DateType, hour: number) => DateType;\n setMinute: (value: DateType, minute: number) => DateType;\n setSecond: (value: DateType, second: number) => DateType;\n setMillisecond: (value: DateType, millisecond: number) => DateType;\n\n // Compare\n isAfter: (date1: DateType, date2: DateType) => boolean;\n isValidate: (date: DateType) => boolean;\n\n locale: {\n getWeekFirstDay: (locale: string) => number;\n getWeekFirstDate: (locale: string, value: DateType) => DateType;\n getWeek: (locale: string, value: DateType) => number;\n\n format: (locale: string, date: DateType, format: string) => string;\n\n /** Should only return validate date instance */\n parse: (locale: string, text: string, formats: string[]) => DateType | null;\n\n /** A proxy for getting locale with moment or other locale library */\n getShortWeekDays?: (locale: string) => string[];\n /** A proxy for getting locale with moment or other locale library */\n getShortMonths?: (locale: string) => string[];\n };\n};\n\n/* v8 ignore file -- @preserve */\n\ndayjs.extend(customParseFormat);\ndayjs.extend(advancedFormat);\ndayjs.extend(weekday);\ndayjs.extend(localeData);\ndayjs.extend(weekOfYear);\ndayjs.extend(weekYear);\n\ndayjs.extend((o, c) => {\n // todo support Wo (ISO week)\n const proto = c.prototype;\n const oldFormat = proto.format;\n proto.format = function f(formatStr: string) {\n const str = (formatStr || '').replace('Wo', 'wo');\n return oldFormat.bind(this)(str);\n };\n});\n\ntype IlocaleMapObject = Record<string, string>;\nconst localeMap: IlocaleMapObject = {\n // ar_EG:\n // az_AZ:\n // bg_BG:\n bn_BD: 'bn-bd',\n by_BY: 'be',\n // ca_ES:\n // cs_CZ:\n // da_DK:\n // de_DE:\n // el_GR:\n en_GB: 'en-gb',\n en_US: 'en',\n // es_ES:\n // et_EE:\n // fa_IR:\n // fi_FI:\n fr_BE: 'fr', // todo: dayjs has no fr_BE locale, use fr at present\n fr_CA: 'fr-ca',\n // fr_FR:\n // ga_IE:\n // gl_ES:\n // he_IL:\n // hi_IN:\n // hr_HR:\n // hu_HU:\n hy_AM: 'hy-am',\n // id_ID:\n // is_IS:\n // it_IT:\n // ja_JP:\n // ka_GE:\n // kk_KZ:\n // km_KH:\n kmr_IQ: 'ku',\n // kn_IN:\n // ko_KR:\n // ku_IQ: // previous ku in antd\n // lt_LT:\n // lv_LV:\n // mk_MK:\n // ml_IN:\n // mn_MN:\n // ms_MY:\n // nb_NO:\n // ne_NP:\n nl_BE: 'nl-be',\n // nl_NL:\n // pl_PL:\n pt_BR: 'pt-br',\n // pt_PT:\n // ro_RO:\n // ru_RU:\n // sk_SK:\n // sl_SI:\n // sr_RS:\n // sv_SE:\n // ta_IN:\n // th_TH:\n // tr_TR:\n // uk_UA:\n // ur_PK:\n // vi_VN:\n zh_CN: 'zh-cn',\n zh_HK: 'zh-hk',\n zh_TW: 'zh-tw',\n};\n\nconst parseLocale = (locale: string) => {\n const mapLocale = localeMap[locale];\n return mapLocale || locale.split('_')[0];\n};\n\nconst parseNoMatchNotice = () => {\n // noteOnce(false, 'Not match any format. Please help to fire a issue about this.');\n};\n\nconst generateConfig: GenerateConfig<Dayjs> = {\n // get\n getNow: () => dayjs(),\n getFixedDate: string => dayjs(string, ['YYYY-M-DD', 'YYYY-MM-DD']),\n getEndDate: date => date.endOf('month'),\n getWeekDay: date => {\n const clone = date.locale('en');\n return clone.weekday() + clone.localeData().firstDayOfWeek();\n },\n getYear: date => date.year(),\n getMonth: date => date.month(),\n getDate: date => date.date(),\n getHour: date => date.hour(),\n getMinute: date => date.minute(),\n getSecond: date => date.second(),\n getMillisecond: date => date.millisecond(),\n\n // set\n addYear: (date, diff) => date.add(diff, 'year'),\n addMonth: (date, diff) => date.add(diff, 'month'),\n addDate: (date, diff) => date.add(diff, 'day'),\n setYear: (date, year) => date.year(year),\n setMonth: (date, month) => date.month(month),\n setDate: (date, num) => date.date(num),\n setHour: (date, hour) => date.hour(hour),\n setMinute: (date, minute) => date.minute(minute),\n setSecond: (date, second) => date.second(second),\n setMillisecond: (date, milliseconds) => date.millisecond(milliseconds),\n\n // Compare\n isAfter: (date1, date2) => date1.isAfter(date2),\n isValidate: date => date.isValid(),\n\n locale: {\n getWeekFirstDay: locale => dayjs().locale(parseLocale(locale)).localeData().firstDayOfWeek(),\n getWeekFirstDate: (locale, date) => date.locale(parseLocale(locale)).weekday(0),\n getWeek: (locale, date) => date.locale(parseLocale(locale)).week(),\n getShortWeekDays: locale => dayjs().locale(parseLocale(locale)).localeData().weekdaysMin(),\n getShortMonths: locale => dayjs().locale(parseLocale(locale)).localeData().monthsShort(),\n format: (locale, date, format) => date.locale(parseLocale(locale)).format(format),\n parse: (locale, text, formats) => {\n const localeStr = parseLocale(locale);\n for (const format of formats) {\n const formatText = text;\n if (format.includes('wo') || format.includes('Wo')) {\n // parse Wo\n const year = formatText.split('-')[0];\n const weekStr = formatText.split('-')[1];\n const firstWeek = dayjs(year, 'YYYY').startOf('year').locale(localeStr);\n for (let j = 0; j <= 52; j += 1) {\n const nextWeek = firstWeek.add(j, 'week');\n if (nextWeek.format('Wo') === weekStr) {\n return nextWeek;\n }\n }\n parseNoMatchNotice();\n return null;\n }\n const date = dayjs(formatText, format, true).locale(localeStr);\n if (date.isValid()) {\n return date;\n }\n }\n\n if (text) {\n parseNoMatchNotice();\n }\n return null;\n },\n },\n};\n\nexport default generateConfig;\n","import { Checkbox, Input, InputNumber, Radio, Switch } from 'antd';\nimport generatePicker from 'antd/es/date-picker/generatePicker/index.js';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport * as React from 'react';\nimport type { ValueEditorProps } from 'react-querybuilder';\nimport { joinWith, useValueEditor, ValueEditor } from 'react-querybuilder';\nimport dayjsGenerateConfig from './dayjs';\n\n/**\n * @group Props\n */\nexport interface AntDValueEditorProps extends ValueEditorProps {\n extraProps?: Record<string, unknown>;\n}\n\nconst DatePicker = generatePicker(dayjsGenerateConfig);\n\n/**\n * @group Components\n */\nexport const AntDValueEditor = (allProps: AntDValueEditorProps): React.JSX.Element | null => {\n const {\n fieldData,\n operator,\n value,\n handleOnChange,\n title,\n className,\n type,\n inputType,\n values = [],\n listsAsArrays,\n separator,\n valueSource: _vs,\n disabled,\n testID,\n selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector,\n extraProps,\n parseNumbers: _parseNumbers,\n ...propsForValueSelector\n } = allProps;\n\n const {\n valueAsArray,\n multiValueHandler,\n bigIntValueHandler,\n valueListItemClassName,\n inputTypeCoerced,\n } = useValueEditor(allProps);\n\n if (operator === 'null' || operator === 'notNull') {\n return null;\n }\n\n const placeHolderText = fieldData?.placeholder ?? '';\n\n if (\n (operator === 'between' || operator === 'notBetween') &&\n (type === 'select' || type === 'text') &&\n // Date ranges are handled differently in AntD--see below\n inputTypeCoerced !== 'date' &&\n inputTypeCoerced !== 'datetime-local'\n ) {\n if (type === 'text') {\n const editors = ['from', 'to'].map((key, i) => {\n if (inputTypeCoerced === 'time') {\n return (\n <DatePicker.TimePicker\n key={key}\n value={valueAsArray[i] ? dayjs(valueAsArray[i], 'HH:mm:ss') : null}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => multiValueHandler(d?.format('HH:mm:ss') ?? '', i)}\n {...extraProps}\n />\n );\n } else if (inputTypeCoerced === 'number') {\n return (\n <InputNumber\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={v => multiValueHandler(v, i)}\n {...extraProps}\n />\n );\n }\n return (\n <Input\n key={key}\n type={inputTypeCoerced}\n value={valueAsArray[i] ?? ''}\n className={valueListItemClassName}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => multiValueHandler(e.target.value, i)}\n {...extraProps}\n />\n );\n });\n return (\n <span data-testid={testID} className={className} title={title}>\n {editors[0]}\n {separator}\n {editors[1]}\n </span>\n );\n }\n\n return <ValueEditor {...allProps} skipHook />;\n }\n\n switch (type) {\n case 'select':\n case 'multiselect':\n return (\n <SelectorComponent\n {...propsForValueSelector}\n className={className}\n title={title}\n value={value}\n disabled={disabled}\n listsAsArrays={listsAsArrays}\n multiple={type === 'multiselect'}\n handleOnChange={handleOnChange}\n options={values}\n {...extraProps}\n />\n );\n\n case 'textarea':\n return (\n <Input.TextArea\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n\n case 'switch':\n return (\n <Switch\n checked={!!value}\n title={title}\n className={className}\n disabled={disabled}\n onChange={v => handleOnChange(v)}\n {...extraProps}\n />\n );\n\n case 'checkbox':\n return (\n <span title={title} className={className}>\n <Checkbox\n type=\"checkbox\"\n disabled={disabled}\n onChange={e => handleOnChange(e.target.checked)}\n checked={!!value}\n {...extraProps}\n />\n </span>\n );\n\n case 'radio':\n return (\n <span className={className} title={title}>\n {values.map(v => (\n <Radio\n key={v.name}\n value={v.name}\n checked={value === v.name}\n disabled={disabled}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}>\n {v.label}\n </Radio>\n ))}\n </span>\n );\n }\n\n switch (inputTypeCoerced) {\n case 'date':\n case 'datetime-local': {\n if (operator === 'between' || operator === 'notBetween') {\n // oxlint-disable-next-line typescript/no-explicit-any\n const dayjsArray = valueAsArray.slice(0, 2).map((v: any) => dayjs(v)) as [Dayjs, Dayjs];\n return (\n <DatePicker.RangePicker\n value={dayjsArray.every(d => d.isValid()) ? dayjsArray : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={[placeHolderText, placeHolderText]}\n // TODO: the function below is currently untested (see the\n // \"renders a date range picker\" test in ./AntD.test.tsx)\n onChange={\n /* v8 ignore start -- @preserve */\n dates => {\n const timeFormat = inputTypeCoerced === 'datetime-local' ? 'THH:mm:ss' : '';\n const format = `YYYY-MM-DD${timeFormat}`;\n const dateArray = dates?.map(d => (d?.isValid() ? d.format(format) : undefined));\n handleOnChange(\n dateArray ? (listsAsArrays ? dateArray : joinWith(dateArray, ',')) : dates\n );\n }\n /* v8 ignore stop -- @preserve */\n }\n {...extraProps}\n />\n );\n }\n\n const dateValue = dayjs(value);\n return (\n <DatePicker\n value={dateValue.isValid() ? dateValue : undefined}\n showTime={inputTypeCoerced === 'datetime-local'}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={(_d, dateString) => handleOnChange(dateString)}\n {...extraProps}\n />\n );\n }\n\n case 'time': {\n const dateValue = dayjs(value, 'HH:mm:ss');\n return (\n <DatePicker.TimePicker\n value={dateValue.isValid() ? dateValue : undefined}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={d => handleOnChange(d?.format('HH:mm:ss') ?? '')}\n {...extraProps}\n />\n );\n }\n\n case 'number': {\n return (\n <InputNumber\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={handleOnChange}\n {...extraProps}\n />\n );\n }\n }\n\n if (inputType === 'bigint') {\n return (\n <Input\n data-testid={testID}\n type={inputTypeCoerced}\n placeholder={placeHolderText}\n value={`${value}`}\n title={title}\n className={className}\n disabled={disabled}\n onChange={e => bigIntValueHandler(e.target.value)}\n {...extraProps}\n />\n );\n }\n\n return (\n <Input\n type={inputTypeCoerced}\n value={value}\n title={title}\n className={className}\n disabled={disabled}\n placeholder={placeHolderText}\n onChange={e => handleOnChange(e.target.value)}\n {...extraProps}\n />\n );\n};\n","import { Select } from 'antd';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport * as React from 'react';\nimport type { VersatileSelectorProps } from 'react-querybuilder';\nimport { joinWith, useValueSelector } from 'react-querybuilder';\n\n/**\n * @group Props\n */\nexport type AntDValueSelectorProps = VersatileSelectorProps &\n Omit<ComponentPropsWithoutRef<typeof Select>, 'onChange' | 'defaultValue'>;\n\n/**\n * @group Components\n */\nexport const AntDValueSelector = ({\n className,\n handleOnChange,\n options,\n value,\n title,\n disabled,\n multiple,\n listsAsArrays,\n // Props that should not be in extraProps\n testID: _testID,\n rule: _rule,\n ruleGroup: _ruleGroup,\n rules: _rules,\n level: _level,\n path: _path,\n context: _context,\n validation: _validation,\n operator: _operator,\n field: _field,\n fieldData: _fieldData,\n schema: _schema,\n ...extraProps\n}: AntDValueSelectorProps): React.JSX.Element => {\n // Alternate onChange handler that doesn't use arrays even when `multiple` is true\n const { onChange: onChangeNoArrays } = useValueSelector({\n handleOnChange,\n listsAsArrays: false,\n multiple: false,\n value,\n });\n const { onChange: onChangeNormal, val } = useValueSelector({\n handleOnChange,\n // This forces `val` to be an array if `multiple` is true,\n // even if `listsAsArrays` is false\n listsAsArrays: multiple || listsAsArrays,\n multiple,\n value,\n });\n\n const onChange = React.useCallback(\n (v: string | string[]) => {\n if (multiple && !listsAsArrays && Array.isArray(v)) {\n // `multiple: true` means `v` is probably an array, but we don't want\n // to send an array to `handleOnChange` when `listsAsArrays` is false\n onChangeNoArrays(joinWith(v));\n } else {\n onChangeNormal(v);\n }\n },\n [listsAsArrays, multiple, onChangeNoArrays, onChangeNormal]\n );\n\n return (\n <Select\n {...(multiple ? { mode: 'multiple', allowClear: true } : {})}\n title={title}\n className={className}\n popupMatchSelectWidth={false}\n disabled={disabled}\n value={val}\n onChange={onChange}\n optionFilterProp=\"label\"\n options={options}\n {...extraProps}\n />\n );\n};\n","import {\n CloseOutlined,\n CopyOutlined,\n DownOutlined,\n LockOutlined,\n RedoOutlined,\n UndoOutlined,\n UngroupOutlined,\n UnlockOutlined,\n UpOutlined,\n} from '@ant-design/icons';\nimport * as React from 'react';\nimport type {\n ControlElementsProp,\n FullField,\n QueryBuilderContextProvider,\n Translations,\n} from 'react-querybuilder';\nimport { getCompatContextProvider } from 'react-querybuilder';\nimport { AntDActionElement } from './AntDActionElement';\nimport { AntDDragHandle } from './AntDDragHandle';\nimport { AntDNotToggle } from './AntDNotToggle';\nimport { AntDShiftActions } from './AntDShiftActions';\nimport { AntDValueEditor } from './AntDValueEditor';\nimport { AntDValueSelector } from './AntDValueSelector';\n\nexport * from './AntDActionElement';\nexport * from './AntDDragHandle';\nexport * from './AntDNotToggle';\nexport * from './AntDShiftActions';\nexport * from './AntDValueEditor';\nexport * from './AntDValueSelector';\n\n/**\n * @group Props\n */\nexport const antdControlElements: ControlElementsProp<FullField, string> = {\n actionElement: AntDActionElement,\n dragHandle: AntDDragHandle,\n notToggle: AntDNotToggle,\n shiftActions: AntDShiftActions,\n valueEditor: AntDValueEditor,\n valueSelector: AntDValueSelector,\n};\n\n/**\n * @group Props\n */\nexport const antdTranslations: Partial<Translations> = {\n removeGroup: { label: <CloseOutlined /> },\n removeRule: { label: <CloseOutlined /> },\n cloneRule: { label: <CopyOutlined /> },\n cloneRuleGroup: { label: <CopyOutlined /> },\n ungroupRuleGroup: { label: <UngroupOutlined /> },\n lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n undo: { label: <UndoOutlined /> },\n redo: { label: <RedoOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"mappings":"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"}