@react-querybuilder/antd 8.8.4 → 8.9.1

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.
Files changed (33) hide show
  1. package/dist/cjs/index.d.ts +1 -0
  2. package/dist/cjs/react-querybuilder_antd.cjs.development.d.ts +2770 -0
  3. package/dist/cjs/react-querybuilder_antd.cjs.development.js +26 -24
  4. package/dist/cjs/react-querybuilder_antd.cjs.development.js.map +1 -1
  5. package/dist/cjs/react-querybuilder_antd.cjs.production.d.ts +2770 -0
  6. package/dist/cjs/react-querybuilder_antd.cjs.production.js +1 -1
  7. package/dist/cjs/react-querybuilder_antd.cjs.production.js.map +1 -1
  8. package/dist/react-querybuilder_antd.d.mts +2770 -0
  9. package/dist/react-querybuilder_antd.legacy-esm.d.ts +2770 -0
  10. package/dist/react-querybuilder_antd.legacy-esm.js +9 -19
  11. package/dist/react-querybuilder_antd.legacy-esm.js.map +1 -1
  12. package/dist/react-querybuilder_antd.mjs +2 -12
  13. package/dist/react-querybuilder_antd.mjs.map +1 -1
  14. package/dist/react-querybuilder_antd.production.d.mts +2770 -0
  15. package/dist/react-querybuilder_antd.production.mjs +1 -1
  16. package/dist/react-querybuilder_antd.production.mjs.map +1 -1
  17. package/package.json +13 -13
  18. package/dist/types/AntDActionElement.d.ts +0 -14
  19. package/dist/types/AntDDragHandle.d.ts +0 -14
  20. package/dist/types/AntDNotToggle.d.ts +0 -12
  21. package/dist/types/AntDShiftActions.d.ts +0 -6
  22. package/dist/types/AntDValueEditor.d.ts +0 -12
  23. package/dist/types/AntDValueSelector.d.ts +0 -12
  24. package/dist/types/dayjs.d.ts +0 -45
  25. package/dist/types/index.d.ts +0 -19
  26. package/dist/types-esm/AntDActionElement.d.mts +0 -14
  27. package/dist/types-esm/AntDDragHandle.d.mts +0 -14
  28. package/dist/types-esm/AntDNotToggle.d.mts +0 -12
  29. package/dist/types-esm/AntDShiftActions.d.mts +0 -6
  30. package/dist/types-esm/AntDValueEditor.d.mts +0 -12
  31. package/dist/types-esm/AntDValueSelector.d.mts +0 -12
  32. package/dist/types-esm/dayjs.d.mts +0 -45
  33. package/dist/types-esm/index.d.mts +0 -19
@@ -24,18 +24,30 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  }) : target, mod));
25
25
 
26
26
  //#endregion
27
- const __ant_design_icons = __toESM(require("@ant-design/icons"));
28
- const react = __toESM(require("react"));
29
- const react_querybuilder = __toESM(require("react-querybuilder"));
30
- const antd = __toESM(require("antd"));
31
- const antd_es_date_picker_generatePicker_index_js = __toESM(require("antd/es/date-picker/generatePicker/index.js"));
32
- const dayjs = __toESM(require("dayjs"));
33
- const dayjs_plugin_advancedFormat_js = __toESM(require("dayjs/plugin/advancedFormat.js"));
34
- const dayjs_plugin_customParseFormat_js = __toESM(require("dayjs/plugin/customParseFormat.js"));
35
- const dayjs_plugin_localeData_js = __toESM(require("dayjs/plugin/localeData.js"));
36
- const dayjs_plugin_weekOfYear_js = __toESM(require("dayjs/plugin/weekOfYear.js"));
37
- const dayjs_plugin_weekYear_js = __toESM(require("dayjs/plugin/weekYear.js"));
38
- const dayjs_plugin_weekday_js = __toESM(require("dayjs/plugin/weekday.js"));
27
+ let __ant_design_icons = require("@ant-design/icons");
28
+ __ant_design_icons = __toESM(__ant_design_icons);
29
+ let react = require("react");
30
+ react = __toESM(react);
31
+ let react_querybuilder = require("react-querybuilder");
32
+ react_querybuilder = __toESM(react_querybuilder);
33
+ let antd = require("antd");
34
+ antd = __toESM(antd);
35
+ let antd_es_date_picker_generatePicker_index_js = require("antd/es/date-picker/generatePicker/index.js");
36
+ antd_es_date_picker_generatePicker_index_js = __toESM(antd_es_date_picker_generatePicker_index_js);
37
+ let dayjs = require("dayjs");
38
+ dayjs = __toESM(dayjs);
39
+ let dayjs_plugin_advancedFormat_js = require("dayjs/plugin/advancedFormat.js");
40
+ dayjs_plugin_advancedFormat_js = __toESM(dayjs_plugin_advancedFormat_js);
41
+ let dayjs_plugin_customParseFormat_js = require("dayjs/plugin/customParseFormat.js");
42
+ dayjs_plugin_customParseFormat_js = __toESM(dayjs_plugin_customParseFormat_js);
43
+ let dayjs_plugin_localeData_js = require("dayjs/plugin/localeData.js");
44
+ dayjs_plugin_localeData_js = __toESM(dayjs_plugin_localeData_js);
45
+ let dayjs_plugin_weekOfYear_js = require("dayjs/plugin/weekOfYear.js");
46
+ dayjs_plugin_weekOfYear_js = __toESM(dayjs_plugin_weekOfYear_js);
47
+ let dayjs_plugin_weekYear_js = require("dayjs/plugin/weekYear.js");
48
+ dayjs_plugin_weekYear_js = __toESM(dayjs_plugin_weekYear_js);
49
+ let dayjs_plugin_weekday_js = require("dayjs/plugin/weekday.js");
50
+ dayjs_plugin_weekday_js = __toESM(dayjs_plugin_weekday_js);
39
51
 
40
52
  //#region src/AntDActionElement.tsx
41
53
  /**
@@ -104,14 +116,7 @@ const AntDShiftActions = ({ shiftUp, shiftDown, shiftUpDisabled, shiftDownDisabl
104
116
  //#region ../../node_modules/rc-util/lib/warning.js
105
117
  var require_warning = /* @__PURE__ */ __commonJS({ "../../node_modules/rc-util/lib/warning.js": ((exports) => {
106
118
  Object.defineProperty(exports, "__esModule", { value: true });
107
- exports.call = call;
108
- exports.default = void 0;
109
- exports.note = note;
110
119
  exports.noteOnce = noteOnce$1;
111
- exports.preMessage = void 0;
112
- exports.resetWarned = resetWarned;
113
- exports.warning = warning;
114
- exports.warningOnce = warningOnce;
115
120
  var warned = {};
116
121
  var preWarningFns = [];
117
122
  /**
@@ -169,7 +174,6 @@ var require_warning = /* @__PURE__ */ __commonJS({ "../../node_modules/rc-util/l
169
174
  warningOnce.preMessage = preMessage;
170
175
  warningOnce.resetWarned = resetWarned;
171
176
  warningOnce.noteOnce = noteOnce$1;
172
- exports.default = warningOnce;
173
177
  }) });
174
178
 
175
179
  //#endregion
@@ -205,8 +209,7 @@ const localeMap = {
205
209
  zh_TW: "zh-tw"
206
210
  };
207
211
  const parseLocale = (locale) => {
208
- const mapLocale = localeMap[locale];
209
- return mapLocale || locale.split("_")[0];
212
+ return localeMap[locale] || locale.split("_")[0];
210
213
  };
211
214
  const parseNoMatchNotice = () => {
212
215
  /* istanbul ignore next */
@@ -391,8 +394,7 @@ const AntDValueEditor = (allProps) => {
391
394
  disabled,
392
395
  placeholder: [placeHolderText, placeHolderText],
393
396
  onChange: (dates) => {
394
- const timeFormat = inputTypeCoerced === "datetime-local" ? "THH:mm:ss" : "";
395
- const format = `YYYY-MM-DD${timeFormat}`;
397
+ const format = `YYYY-MM-DD${inputTypeCoerced === "datetime-local" ? "THH:mm:ss" : ""}`;
396
398
  const dateArray = dates?.map((d) => d?.isValid() ? d.format(format) : void 0);
397
399
  handleOnChange(dateArray ? listsAsArrays ? dateArray : (0, react_querybuilder.joinWith)(dateArray, ",") : dates);
398
400
  },
@@ -1 +1 @@
1
- {"version":3,"file":"react-querybuilder_antd.cjs.development.js","names":["Button","AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","HolderOutlined","Switch","Button","noteOnce","preMessage","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","React","Select","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","CloseOutlined","CopyOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","QueryBuilderAntD: QueryBuilderContextProvider"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../../../node_modules/rc-util/lib/warning.js","../../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,\n 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 // 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 ) => <HolderOutlined className={className} title={title} {...extraProps} ref={dragRef} />\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,\n 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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.call = call;\nexports.default = void 0;\nexports.note = note;\nexports.noteOnce = noteOnce;\nexports.preMessage = void 0;\nexports.resetWarned = resetWarned;\nexports.warning = warning;\nexports.warningOnce = warningOnce;\n/* eslint-disable no-console */\nvar warned = {};\nvar preWarningFns = [];\n\n/**\n * Pre warning enable you to parse content before console.error.\n * Modify to null will prevent warning.\n */\nvar preMessage = exports.preMessage = function preMessage(fn) {\n preWarningFns.push(fn);\n};\n\n/**\n * Warning if condition not match.\n * @param valid Condition\n * @param message Warning message\n * @example\n * ```js\n * warning(false, 'some error'); // print some error\n * warning(true, 'some error'); // print nothing\n * warning(1 === 2, 'some error'); // print some error\n * ```\n */\nfunction warning(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'warning');\n }, message);\n if (finalMessage) {\n console.error(\"Warning: \".concat(finalMessage));\n }\n }\n}\n\n/** @see Similar to {@link warning} */\nfunction note(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'note');\n }, message);\n if (finalMessage) {\n console.warn(\"Note: \".concat(finalMessage));\n }\n }\n}\nfunction resetWarned() {\n warned = {};\n}\nfunction call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nfunction warningOnce(valid, message) {\n call(warning, valid, message);\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nfunction noteOnce(valid, message) {\n call(note, valid, message);\n}\nwarningOnce.preMessage = preMessage;\nwarningOnce.resetWarned = resetWarned;\nwarningOnce.noteOnce = noteOnce;\nvar _default = exports.default = warningOnce;","/**\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 weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport { noteOnce } from 'rc-util/lib/warning';\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\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 /* istanbul ignore next */\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 // istanbul ignore next\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 }\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 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 lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"x_google_ignoreList":[4],"mappings":"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"}
1
+ {"version":3,"file":"react-querybuilder_antd.cjs.development.js","names":["Button","AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","HolderOutlined","Switch","Button","noteOnce","preMessage","customParseFormat","advancedFormat","weekday","localeData","weekOfYear","weekYear","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","InputNumber","Input","ValueEditor","Switch","Checkbox","Radio","React","Select","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","CloseOutlined","CopyOutlined","UnlockOutlined","LockOutlined","UpOutlined","DownOutlined","QueryBuilderAntD: QueryBuilderContextProvider"],"sources":["../../src/AntDActionElement.tsx","../../src/AntDDragHandle.tsx","../../src/AntDNotToggle.tsx","../../src/AntDShiftActions.tsx","../../../../node_modules/rc-util/lib/warning.js","../../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,\n 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 // 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 ) => <HolderOutlined className={className} title={title} {...extraProps} ref={dragRef} />\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,\n 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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.call = call;\nexports.default = void 0;\nexports.note = note;\nexports.noteOnce = noteOnce;\nexports.preMessage = void 0;\nexports.resetWarned = resetWarned;\nexports.warning = warning;\nexports.warningOnce = warningOnce;\n/* eslint-disable no-console */\nvar warned = {};\nvar preWarningFns = [];\n\n/**\n * Pre warning enable you to parse content before console.error.\n * Modify to null will prevent warning.\n */\nvar preMessage = exports.preMessage = function preMessage(fn) {\n preWarningFns.push(fn);\n};\n\n/**\n * Warning if condition not match.\n * @param valid Condition\n * @param message Warning message\n * @example\n * ```js\n * warning(false, 'some error'); // print some error\n * warning(true, 'some error'); // print nothing\n * warning(1 === 2, 'some error'); // print some error\n * ```\n */\nfunction warning(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'warning');\n }, message);\n if (finalMessage) {\n console.error(\"Warning: \".concat(finalMessage));\n }\n }\n}\n\n/** @see Similar to {@link warning} */\nfunction note(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'note');\n }, message);\n if (finalMessage) {\n console.warn(\"Note: \".concat(finalMessage));\n }\n }\n}\nfunction resetWarned() {\n warned = {};\n}\nfunction call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nfunction warningOnce(valid, message) {\n call(warning, valid, message);\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nfunction noteOnce(valid, message) {\n call(note, valid, message);\n}\nwarningOnce.preMessage = preMessage;\nwarningOnce.resetWarned = resetWarned;\nwarningOnce.noteOnce = noteOnce;\nvar _default = exports.default = warningOnce;","/**\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 weekOfYear from 'dayjs/plugin/weekOfYear.js';\nimport weekYear from 'dayjs/plugin/weekYear.js';\nimport weekday from 'dayjs/plugin/weekday.js';\nimport { noteOnce } from 'rc-util/lib/warning';\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\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 /* istanbul ignore next */\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 // istanbul ignore next\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 }\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 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 lockGroup: { label: <UnlockOutlined /> },\n lockRule: { label: <UnlockOutlined /> },\n lockGroupDisabled: { label: <LockOutlined /> },\n lockRuleDisabled: { label: <LockOutlined /> },\n shiftActionUp: { label: <UpOutlined /> },\n shiftActionDown: { label: <DownOutlined /> },\n};\n\n/**\n * @group Components\n */\nexport const QueryBuilderAntD: QueryBuilderContextProvider = getCompatContextProvider({\n controlElements: antdControlElements,\n translations: antdTranslations,\n});\n"],"x_google_ignoreList":[4],"mappings":"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"}