@react-querybuilder/antd 8.12.0 → 8.13.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.
@@ -1 +1 @@
1
- {"version":3,"file":"react-querybuilder_antd.legacy-esm.js","names":["AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","noteOnce","preMessage","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","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.legacy-esm.js","names":["AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","noteOnce","preMessage","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","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, 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, 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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"}
@@ -13,36 +13,14 @@ import weekYear from "dayjs/plugin/weekYear.js";
13
13
  import weekday from "dayjs/plugin/weekday.js";
14
14
 
15
15
  //#region rolldown:runtime
16
- var __create = Object.create;
17
- var __defProp = Object.defineProperty;
18
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
19
- var __getOwnPropNames = Object.getOwnPropertyNames;
20
- var __getProtoOf = Object.getPrototypeOf;
21
- var __hasOwnProp = Object.prototype.hasOwnProperty;
22
- var __commonJS = (cb, mod) => function() {
23
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
24
- };
25
- var __copyProps = (to, from, except, desc) => {
26
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
27
- key = keys[i];
28
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
29
- get: ((k) => from[k]).bind(null, key),
30
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
31
- });
32
- }
33
- return to;
34
- };
35
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
36
- value: mod,
37
- enumerable: true
38
- }) : target, mod));
16
+ var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
39
17
 
40
18
  //#endregion
41
19
  //#region src/AntDActionElement.tsx
42
20
  /**
43
21
  * @group Components
44
22
  */
45
- const AntDActionElement = ({ className, handleOnClick, label, title, disabled, disabledTranslation, testID: _testID, level: _level, path: _path, context: _context, validation: _validation, ruleOrGroup: _ruleOrGroup, schema: _schema,...extraProps }) => /* @__PURE__ */ React.createElement(Button, {
23
+ const AntDActionElement = ({ className, handleOnClick, label, title, disabled, disabledTranslation, testID: _testID, level: _level, path: _path, context: _context, validation: _validation, ruleOrGroup: _ruleOrGroup, schema: _schema, ...extraProps }) => /* @__PURE__ */ React.createElement(Button, {
46
24
  type: "primary",
47
25
  className,
48
26
  title: disabledTranslation && disabled ? disabledTranslation.title : title,
@@ -56,7 +34,7 @@ const AntDActionElement = ({ className, handleOnClick, label, title, disabled, d
56
34
  /**
57
35
  * @group Components
58
36
  */
59
- const AntDDragHandle = forwardRef(({ className, title, testID: _testID, level: _level, path: _path, label: _label, disabled: _disabled, context: _context, validation: _validation, schema: _schema, ruleOrGroup: _ruleOrGroup,...extraProps }, dragRef) => /* @__PURE__ */ React.createElement(HolderOutlined, {
37
+ const AntDDragHandle = forwardRef(({ className, title, testID: _testID, level: _level, path: _path, label: _label, disabled: _disabled, context: _context, validation: _validation, schema: _schema, ruleOrGroup: _ruleOrGroup, ...extraProps }, dragRef) => /* @__PURE__ */ React.createElement(HolderOutlined, {
60
38
  className,
61
39
  title,
62
40
  ...extraProps,
@@ -68,7 +46,7 @@ const AntDDragHandle = forwardRef(({ className, title, testID: _testID, level: _
68
46
  /**
69
47
  * @group Components
70
48
  */
71
- const AntDNotToggle = ({ className, handleOnChange, label, checked, title, disabled, path: _path, context: _context, validation: _validation, testID: _testID, schema: _schema, ruleGroup: _ruleGroup,...extraProps }) => /* @__PURE__ */ React.createElement(Switch, {
49
+ const AntDNotToggle = ({ className, handleOnChange, label, checked, title, disabled, path: _path, context: _context, validation: _validation, testID: _testID, schema: _schema, ruleGroup: _ruleGroup, ...extraProps }) => /* @__PURE__ */ React.createElement(Switch, {
72
50
  title,
73
51
  className,
74
52
  onChange: (v) => handleOnChange(v),
@@ -103,7 +81,7 @@ const AntDShiftActions = ({ shiftUp, shiftDown, shiftUpDisabled, shiftDownDisabl
103
81
 
104
82
  //#endregion
105
83
  //#region ../../node_modules/rc-util/lib/warning.js
106
- var require_warning = /* @__PURE__ */ __commonJS({ "../../node_modules/rc-util/lib/warning.js": ((exports) => {
84
+ var require_warning = /* @__PURE__ */ __commonJSMin(((exports) => {
107
85
  Object.defineProperty(exports, "__esModule", { value: true });
108
86
  exports.default = void 0;
109
87
  exports.noteOnce = noteOnce$1;
@@ -166,11 +144,11 @@ var require_warning = /* @__PURE__ */ __commonJS({ "../../node_modules/rc-util/l
166
144
  warningOnce.resetWarned = resetWarned;
167
145
  warningOnce.noteOnce = noteOnce$1;
168
146
  exports.default = warningOnce;
169
- }) });
147
+ }));
170
148
 
171
149
  //#endregion
172
150
  //#region src/dayjs.ts
173
- var import_warning = /* @__PURE__ */ __toESM(require_warning());
151
+ var import_warning = require_warning();
174
152
  dayjs.extend(customParseFormat);
175
153
  dayjs.extend(advancedFormat);
176
154
  dayjs.extend(weekday);
@@ -273,7 +251,7 @@ const DatePicker = generatePicker(dayjs_default);
273
251
  * @group Components
274
252
  */
275
253
  const AntDValueEditor = (allProps) => {
276
- const { fieldData, operator, value, handleOnChange, title, className, type, inputType, values = [], listsAsArrays, separator, valueSource: _vs, disabled, testID, selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector, extraProps, parseNumbers: _parseNumbers,...propsForValueSelector } = allProps;
254
+ const { fieldData, operator, value, handleOnChange, title, className, type, inputType, values = [], listsAsArrays, separator, valueSource: _vs, disabled, testID, selectorComponent: SelectorComponent = allProps.schema.controls.valueSelector, extraProps, parseNumbers: _parseNumbers, ...propsForValueSelector } = allProps;
277
255
  const { valueAsArray, multiValueHandler, bigIntValueHandler, valueListItemClassName, inputTypeCoerced } = useValueEditor(allProps);
278
256
  if (operator === "null" || operator === "notNull") return null;
279
257
  const placeHolderText = fieldData?.placeholder ?? "";
@@ -454,7 +432,7 @@ const AntDValueEditor = (allProps) => {
454
432
  /**
455
433
  * @group Components
456
434
  */
457
- 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 }) => {
435
+ 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 }) => {
458
436
  const { onChange: onChangeNoArrays } = useValueSelector({
459
437
  handleOnChange,
460
438
  listsAsArrays: false,
@@ -1 +1 @@
1
- {"version":3,"file":"react-querybuilder_antd.mjs","names":["AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","noteOnce","preMessage","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAa,qBAAqB,EAChC,WACA,eACA,OACA,OACA,UACA,qBAEA,QAAQ,SACR,OAAO,QACP,MAAM,OACN,SAAS,UACT,YAAY,aACZ,aAAa,cACb,QAAQ,QACR,GAAG,iBAEH,oCAAC;CACC,MAAK;CACM;CACX,OAAO,uBAAuB,WAAW,oBAAoB,QAAQ;CACrE,UAAS,MAAK,cAAc,EAAE;CAC9B,UAAU,YAAY,CAAC;CACvB,GAAI;GACH,uBAAuB,WAAW,oBAAoB,QAAQ,MACxD;;;;;;;AC7BX,MAAaA,iBAET,YAEA,EACE,WACA,OAEA,QAAQ,SACR,OAAO,QACP,MAAM,OACN,OAAO,QACP,UAAU,WACV,SAAS,UACT,YAAY,aACZ,QAAQ,SACR,aAAa,aACb,GAAG,cAEL,YACG,oCAAC;CAA0B;CAAkB;CAAO,GAAI;CAAY,KAAK;EAAW,CAC1F;;;;;;;ACvBD,MAAa,iBAAiB,EAC5B,WACA,gBACA,OACA,SACA,OACA,UAEA,MAAM,OACN,SAAS,UACT,YAAY,aACZ,QAAQ,SACR,QAAQ,SACR,WAAW,WACX,GAAG,iBAEH,oCAAC;CACQ;CACI;CACX,WAAU,MAAK,eAAe,EAAE;CAChC,SAAS,CAAC,CAAC;CACD;CACV,iBAAiB;CACjB,mBAAkB;CAClB,GAAI;EACJ;;;;;;;ACjCJ,MAAa,oBAAoB,EAC/B,SACA,WACA,iBACA,mBACA,UACA,WACA,QACA,QACA,aAEA,oCAAC;CAAI,eAAa;CAAmB;GACnC,oCAAC;CACC,MAAK;CACL,MAAK;CACL,OAAO,QAAQ;CACf,SAAS;CACT,UAAU,YAAY;GACrB,QAAQ,QACF,EACT,oCAAC;CACC,MAAK;CACL,MAAK;CACL,OAAO,QAAQ;CACf,SAAS;CACT,UAAU,YAAY;GACrB,QAAQ,UACF,CACL;;;;;ACjCR,QAAO,eAAe,SAAS,cAAc,EAC3C,OAAO,MACR,CAAC;AAEF,SAAQ,UAAU,KAAK;AAEvB,SAAQ,WAAWC;AACnB,SAAQ,aAAa,KAAK;CAK1B,IAAI,SAAS,EAAE;CACf,IAAI,gBAAgB,EAAE;;;;;CAMtB,IAAI,aAAa,QAAQ,aAAa,SAASC,aAAW,IAAI;AAC5D,gBAAc,KAAK,GAAG;;;;;;;;;;;;;CAcxB,SAAS,QAAQ,OAAO,SAAS;AAC/B,MAAI,QAAQ,IAAI,aAAa,gBAAgB,CAAC,SAAS,YAAY,QAAW;GAC5E,IAAI,eAAe,cAAc,OAAO,SAAU,KAAK,cAAc;AACnE,WAAO,aAAa,QAAQ,QAAQ,QAAQ,KAAK,IAAI,MAAM,IAAI,UAAU;MACxE,QAAQ;AACX,OAAI,aACF,SAAQ,MAAM,YAAY,OAAO,aAAa,CAAC;;;;CAMrD,SAAS,KAAK,OAAO,SAAS;AAC5B,MAAI,QAAQ,IAAI,aAAa,gBAAgB,CAAC,SAAS,YAAY,QAAW;GAC5E,IAAI,eAAe,cAAc,OAAO,SAAU,KAAK,cAAc;AACnE,WAAO,aAAa,QAAQ,QAAQ,QAAQ,KAAK,IAAI,MAAM,IAAI,OAAO;MACrE,QAAQ;AACX,OAAI,aACF,SAAQ,KAAK,SAAS,OAAO,aAAa,CAAC;;;CAIjD,SAAS,cAAc;AACrB,WAAS,EAAE;;CAEb,SAAS,KAAK,QAAQ,OAAO,SAAS;AACpC,MAAI,CAAC,SAAS,CAAC,OAAO,UAAU;AAC9B,UAAO,OAAO,QAAQ;AACtB,UAAO,WAAW;;;;CAKtB,SAAS,YAAY,OAAO,SAAS;AACnC,OAAK,SAAS,OAAO,QAAQ;;;CAI/B,SAASD,WAAS,OAAO,SAAS;AAChC,OAAK,MAAM,OAAO,QAAQ;;AAE5B,aAAY,aAAa;AACzB,aAAY,cAAc;AAC1B,aAAY,WAAWA;AACR,SAAQ,UAAU;;;;;;ACjBjC,MAAM,OAAO,kBAAkB;AAC/B,MAAM,OAAO,eAAe;AAC5B,MAAM,OAAO,QAAQ;AACrB,MAAM,OAAO,WAAW;AACxB,MAAM,OAAO,WAAW;AACxB,MAAM,OAAO,SAAS;AAEtB,MAAM,QAAQ,GAAG,MAAM;CAErB,MAAM,QAAQ,EAAE;CAChB,MAAM,YAAY,MAAM;AACxB,OAAM,SAAS,SAAS,EAAE,WAAmB;EAC3C,MAAM,OAAO,aAAa,IAAI,QAAQ,MAAM,KAAK;AACjD,SAAO,UAAU,KAAK,KAAK,CAAC,IAAI;;EAElC;AAGF,MAAME,YAA8B;CAIlC,OAAO;CACP,OAAO;CAMP,OAAO;CACP,OAAO;CAKP,OAAO;CACP,OAAO;CAQP,OAAO;CAQP,QAAQ;CAYR,OAAO;CAGP,OAAO;CAcP,OAAO;CACP,OAAO;CACP,OAAO;CACR;AAED,MAAM,eAAe,WAAmB;AAEtC,QADkB,UAAU,WACR,OAAO,MAAM,IAAI,CAAC;;AAGxC,MAAM,2BAA2B;;AAE/B,8BAAS,OAAO,gEAAgE;;AAGlF,MAAMC,iBAAwC;CAE5C,cAAc,OAAO;CACrB,eAAc,WAAU,MAAM,QAAQ,CAAC,aAAa,aAAa,CAAC;CAClE,aAAY,SAAQ,KAAK,MAAM,QAAQ;CACvC,aAAY,SAAQ;EAClB,MAAM,QAAQ,KAAK,OAAO,KAAK;AAC/B,SAAO,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,gBAAgB;;CAE9D,UAAS,SAAQ,KAAK,MAAM;CAC5B,WAAU,SAAQ,KAAK,OAAO;CAC9B,UAAS,SAAQ,KAAK,MAAM;CAC5B,UAAS,SAAQ,KAAK,MAAM;CAC5B,YAAW,SAAQ,KAAK,QAAQ;CAChC,YAAW,SAAQ,KAAK,QAAQ;CAChC,iBAAgB,SAAQ,KAAK,aAAa;CAG1C,UAAU,MAAM,SAAS,KAAK,IAAI,MAAM,OAAO;CAC/C,WAAW,MAAM,SAAS,KAAK,IAAI,MAAM,QAAQ;CACjD,UAAU,MAAM,SAAS,KAAK,IAAI,MAAM,MAAM;CAC9C,UAAU,MAAM,SAAS,KAAK,KAAK,KAAK;CACxC,WAAW,MAAM,UAAU,KAAK,MAAM,MAAM;CAC5C,UAAU,MAAM,QAAQ,KAAK,KAAK,IAAI;CACtC,UAAU,MAAM,SAAS,KAAK,KAAK,KAAK;CACxC,YAAY,MAAM,WAAW,KAAK,OAAO,OAAO;CAChD,YAAY,MAAM,WAAW,KAAK,OAAO,OAAO;CAChD,iBAAiB,MAAM,iBAAiB,KAAK,YAAY,aAAa;CAGtE,UAAU,OAAO,UAAU,MAAM,QAAQ,MAAM;CAC/C,aAAY,SAAQ,KAAK,SAAS;CAElC,QAAQ;EACN,kBAAiB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,gBAAgB;EAC5F,mBAAmB,QAAQ,SAAS,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,QAAQ,EAAE;EAC/E,UAAU,QAAQ,SAAS,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,MAAM;EAClE,mBAAkB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,aAAa;EAC1F,iBAAgB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,aAAa;EACxF,SAAS,QAAQ,MAAM,WAAW,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,OAAO,OAAO;EACjF,QAAQ,QAAQ,MAAM,YAAY;GAChC,MAAM,YAAY,YAAY,OAAO;AACrC,QAAK,MAAM,UAAU,SAAS;IAC5B,MAAM,aAAa;AACnB,QAAI,OAAO,SAAS,KAAK,IAAI,OAAO,SAAS,KAAK,EAAE;KAElD,MAAM,OAAO,WAAW,MAAM,IAAI,CAAC;KACnC,MAAM,UAAU,WAAW,MAAM,IAAI,CAAC;KACtC,MAAM,YAAY,MAAM,MAAM,OAAO,CAAC,QAAQ,OAAO,CAAC,OAAO,UAAU;AACvE,UAAK,IAAI,IAAI,GAAG,KAAK,IAAI,KAAK,GAAG;MAC/B,MAAM,WAAW,UAAU,IAAI,GAAG,OAAO;AACzC,UAAI,SAAS,OAAO,KAAK,KAAK,QAC5B,QAAO;;AAGX,yBAAoB;AACpB,YAAO;;IAET,MAAM,OAAO,MAAM,YAAY,QAAQ,KAAK,CAAC,OAAO,UAAU;AAC9D,QAAI,KAAK,SAAS,CAChB,QAAO;;AAIX,OAAI,KACF,qBAAoB;AAEtB,UAAO;;EAEV;CACF;AAED,oBAAe;;;;ACvNf,MAAM,aAAa,eAAeC,cAAoB;;;;AAKtD,MAAa,mBAAmB,aAA6D;CAC3F,MAAM,EACJ,WACA,UACA,OACA,gBACA,OACA,WACA,MACA,WACA,SAAS,EAAE,EACX,eACA,WACA,aAAa,KACb,UACA,QACA,mBAAmB,oBAAoB,SAAS,OAAO,SAAS,eAChE,YACA,cAAc,cACd,GAAG,0BACD;CAEJ,MAAM,EACJ,cACA,mBACA,oBACA,wBACA,qBACE,eAAe,SAAS;AAE5B,KAAI,aAAa,UAAU,aAAa,UACtC,QAAO;CAGT,MAAM,kBAAkB,WAAW,eAAe;AAElD,MACG,aAAa,aAAa,aAAa,kBACvC,SAAS,YAAY,SAAS,WAE/B,qBAAqB,UACrB,qBAAqB,kBACrB;AACA,MAAI,SAAS,QAAQ;GACnB,MAAM,UAAU,CAAC,QAAQ,KAAK,CAAC,KAAK,KAAK,MAAM;AAC7C,QAAI,qBAAqB,OACvB,QACE,oCAAC,WAAW;KACL;KACL,OAAO,aAAa,KAAK,MAAM,aAAa,IAAI,WAAW,GAAG;KAC9D,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,GAAG,OAAO,WAAW,IAAI,IAAI,EAAE;KAChE,GAAI;MACJ;aAEK,qBAAqB,SAC9B,QACE,oCAAC;KACM;KACL,MAAM;KACN,OAAO,aAAa,MAAM;KAC1B,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,GAAG,EAAE;KACtC,GAAI;MACJ;AAGN,WACE,oCAAC;KACM;KACL,MAAM;KACN,OAAO,aAAa,MAAM;KAC1B,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,EAAE,OAAO,OAAO,EAAE;KACnD,GAAI;MACJ;KAEJ;AACF,UACE,oCAAC;IAAK,eAAa;IAAmB;IAAkB;MACrD,QAAQ,IACR,WACA,QAAQ,GACJ;;AAIX,SAAO,oCAAC;GAAY,GAAI;GAAU;IAAW;;AAG/C,SAAQ,MAAR;EACE,KAAK;EACL,KAAK,cACH,QACE,oCAAC;GACC,GAAI;GACO;GACJ;GACA;GACG;GACK;GACf,UAAU,SAAS;GACH;GAChB,SAAS;GACT,GAAI;IACJ;EAGN,KAAK,WACH,QACE,oCAAC,MAAM;GACE;GACA;GACI;GACD;GACV,aAAa;GACb,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;GAC7C,GAAI;IACJ;EAGN,KAAK,SACH,QACE,oCAAC;GACC,SAAS,CAAC,CAAC;GACJ;GACI;GACD;GACV,WAAU,MAAK,eAAe,EAAE;GAChC,GAAI;IACJ;EAGN,KAAK,WACH,QACE,oCAAC;GAAY;GAAkB;KAC7B,oCAAC;GACC,MAAK;GACK;GACV,WAAU,MAAK,eAAe,EAAE,OAAO,QAAQ;GAC/C,SAAS,CAAC,CAAC;GACX,GAAI;IACJ,CACG;EAGX,KAAK,QACH,QACE,oCAAC;GAAgB;GAAkB;KAChC,OAAO,KAAI,MACV,oCAAC;GACC,KAAK,EAAE;GACP,OAAO,EAAE;GACT,SAAS,UAAU,EAAE;GACX;GACV,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;GAC7C,GAAI;KACH,EAAE,MACG,CACR,CACG;;AAIb,SAAQ,kBAAR;EACE,KAAK;EACL,KAAK,kBAAkB;AACrB,OAAI,aAAa,aAAa,aAAa,cAAc;IAEvD,MAAM,aAAa,aAAa,MAAM,GAAG,EAAE,CAAC,KAAK,MAAW,MAAM,EAAE,CAAC;AACrE,WACE,oCAAC,WAAW;KACV,OAAO,WAAW,OAAM,MAAK,EAAE,SAAS,CAAC,GAAG,aAAa;KACzD,UAAU,qBAAqB;KACpB;KACD;KACV,aAAa,CAAC,iBAAiB,gBAAgB;KAG/C,WAEE,UAAS;MAEP,MAAM,SAAS,aADI,qBAAqB,mBAAmB,cAAc;MAEzE,MAAM,YAAY,OAAO,KAAI,MAAM,GAAG,SAAS,GAAG,EAAE,OAAO,OAAO,GAAG,OAAW;AAChF,qBACE,YAAa,gBAAgB,YAAY,SAAS,WAAW,IAAI,GAAI,MACtE;;KAGL,GAAI;MACJ;;GAIN,MAAM,YAAY,MAAM,MAAM;AAC9B,UACE,oCAAC;IACC,OAAO,UAAU,SAAS,GAAG,YAAY;IACzC,UAAU,qBAAqB;IACpB;IACD;IACV,aAAa;IACb,WAAW,IAAI,eAAe,eAAe,WAAW;IACxD,GAAI;KACJ;;EAIN,KAAK,QAAQ;GACX,MAAM,YAAY,MAAM,OAAO,WAAW;AAC1C,UACE,oCAAC,WAAW;IACV,OAAO,UAAU,SAAS,GAAG,YAAY;IAC9B;IACD;IACV,aAAa;IACb,WAAU,MAAK,eAAe,GAAG,OAAO,WAAW,IAAI,GAAG;IAC1D,GAAI;KACJ;;EAIN,KAAK,SACH,QACE,oCAAC;GACC,MAAM;GACC;GACA;GACI;GACD;GACV,aAAa;GACb,UAAU;GACV,GAAI;IACJ;;AAKR,KAAI,cAAc,SAChB,QACE,oCAAC;EACC,eAAa;EACb,MAAM;EACN,aAAa;EACb,OAAO,GAAG;EACH;EACI;EACD;EACV,WAAU,MAAK,mBAAmB,EAAE,OAAO,MAAM;EACjD,GAAI;GACJ;AAIN,QACE,oCAAC;EACC,MAAM;EACC;EACA;EACI;EACD;EACV,aAAa;EACb,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;EAC7C,GAAI;GACJ;;;;;;;;ACrRN,MAAa,qBAAqB,EAChC,WACA,gBACA,SACA,OACA,OACA,UACA,UACA,eAEA,QAAQ,SACR,MAAM,OACN,WAAW,YACX,OAAO,QACP,OAAO,QACP,MAAM,OACN,SAAS,UACT,YAAY,aACZ,UAAU,WACV,OAAO,QACP,WAAW,YACX,QAAQ,QACR,GAAG,iBAC4C;CAE/C,MAAM,EAAE,UAAU,qBAAqB,iBAAiB;EACtD;EACA,eAAe;EACf,UAAU;EACV;EACD,CAAC;CACF,MAAM,EAAE,UAAU,gBAAgB,QAAQ,iBAAiB;EACzD;EAGA,eAAe,YAAY;EAC3B;EACA;EACD,CAAC;CAEF,MAAM,WAAW,MAAM,aACpB,MAAyB;AACxB,MAAI,YAAY,CAAC,iBAAiB,MAAM,QAAQ,EAAE,CAGhD,kBAAiB,SAAS,EAAE,CAAC;MAE7B,gBAAe,EAAE;IAGrB;EAAC;EAAe;EAAU;EAAkB;EAAe,CAC5D;AAED,QACE,oCAAC;EACC,GAAK,WAAW;GAAE,MAAM;GAAY,YAAY;GAAM,GAAG,EAAE;EACpD;EACI;EACX,uBAAuB;EACb;EACV,OAAO;EACG;EACV,kBAAiB;EACR;EACT,GAAI;GACJ;;;;;;;;AC/CN,MAAaC,sBAA8D;CACzE,eAAe;CACf,YAAY;CACZ,WAAW;CACX,cAAc;CACd,aAAa;CACb,eAAe;CAChB;;;;AAKD,MAAaC,mBAA0C;CACrD,aAAa,EAAE,OAAO,oCAAC,oBAAgB,EAAE;CACzC,YAAY,EAAE,OAAO,oCAAC,oBAAgB,EAAE;CACxC,WAAW,EAAE,OAAO,oCAAC,mBAAe,EAAE;CACtC,gBAAgB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC3C,WAAW,EAAE,OAAO,oCAAC,qBAAiB,EAAE;CACxC,UAAU,EAAE,OAAO,oCAAC,qBAAiB,EAAE;CACvC,mBAAmB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC9C,kBAAkB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC7C,eAAe,EAAE,OAAO,oCAAC,iBAAa,EAAE;CACxC,iBAAiB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC7C;;;;AAKD,MAAaC,mBAAgD,yBAAyB;CACpF,iBAAiB;CACjB,cAAc;CACf,CAAC"}
1
+ {"version":3,"file":"react-querybuilder_antd.mjs","names":["AntDDragHandle: React.ForwardRefExoticComponent<\n Omit<AntDDragHandleProps, 'ref'> & React.RefAttributes<HTMLSpanElement>\n>","noteOnce","preMessage","localeMap: IlocaleMapObject","generateConfig: GenerateConfig<Dayjs>","dayjsGenerateConfig","antdControlElements: ControlElementsProp<FullField, string>","antdTranslations: Partial<Translations>","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, 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, 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":";;;;;;;;;;;;;;;;;;;;;;AAoBA,MAAa,qBAAqB,EAChC,WACA,eACA,OACA,OACA,UACA,qBAEA,QAAQ,SACR,OAAO,QACP,MAAM,OACN,SAAS,UACT,YAAY,aACZ,aAAa,cACb,QAAQ,SACR,GAAG,iBAEH,oCAAC;CACC,MAAK;CACM;CACX,OAAO,uBAAuB,WAAW,oBAAoB,QAAQ;CACrE,UAAS,MAAK,cAAc,EAAE;CAC9B,UAAU,YAAY,CAAC;CACvB,GAAI;GACH,uBAAuB,WAAW,oBAAoB,QAAQ,MACxD;;;;;;;AC5BX,MAAaA,iBAET,YAEA,EACE,WACA,OAEA,QAAQ,SACR,OAAO,QACP,MAAM,OACN,OAAO,QACP,UAAU,WACV,SAAS,UACT,YAAY,aACZ,QAAQ,SACR,aAAa,cACb,GAAG,cAEL,YACG,oCAAC;CAA0B;CAAkB;CAAO,GAAI;CAAY,KAAK;EAAW,CAC1F;;;;;;;ACxBD,MAAa,iBAAiB,EAC5B,WACA,gBACA,OACA,SACA,OACA,UAEA,MAAM,OACN,SAAS,UACT,YAAY,aACZ,QAAQ,SACR,QAAQ,SACR,WAAW,YACX,GAAG,iBAEH,oCAAC;CACQ;CACI;CACX,WAAU,MAAK,eAAe,EAAE;CAChC,SAAS,CAAC,CAAC;CACD;CACV,iBAAiB;CACjB,mBAAkB;CAClB,GAAI;EACJ;;;;;;;AChCJ,MAAa,oBAAoB,EAC/B,SACA,WACA,iBACA,mBACA,UACA,WACA,QACA,QACA,aAEA,oCAAC;CAAI,eAAa;CAAmB;GACnC,oCAAC;CACC,MAAK;CACL,MAAK;CACL,OAAO,QAAQ;CACf,SAAS;CACT,UAAU,YAAY;GACrB,QAAQ,QACF,EACT,oCAAC;CACC,MAAK;CACL,MAAK;CACL,OAAO,QAAQ;CACf,SAAS;CACT,UAAU,YAAY;GACrB,QAAQ,UACF,CACL;;;;;ACjCR,QAAO,eAAe,SAAS,cAAc,EAC3C,OAAO,MACR,CAAC;AAEF,SAAQ,UAAU,KAAK;AAEvB,SAAQ,WAAWC;AACnB,SAAQ,aAAa,KAAK;CAK1B,IAAI,SAAS,EAAE;CACf,IAAI,gBAAgB,EAAE;;;;;CAMtB,IAAI,aAAa,QAAQ,aAAa,SAASC,aAAW,IAAI;AAC5D,gBAAc,KAAK,GAAG;;;;;;;;;;;;;CAcxB,SAAS,QAAQ,OAAO,SAAS;AAC/B,MAAI,QAAQ,IAAI,aAAa,gBAAgB,CAAC,SAAS,YAAY,QAAW;GAC5E,IAAI,eAAe,cAAc,OAAO,SAAU,KAAK,cAAc;AACnE,WAAO,aAAa,QAAQ,QAAQ,QAAQ,KAAK,IAAI,MAAM,IAAI,UAAU;MACxE,QAAQ;AACX,OAAI,aACF,SAAQ,MAAM,YAAY,OAAO,aAAa,CAAC;;;;CAMrD,SAAS,KAAK,OAAO,SAAS;AAC5B,MAAI,QAAQ,IAAI,aAAa,gBAAgB,CAAC,SAAS,YAAY,QAAW;GAC5E,IAAI,eAAe,cAAc,OAAO,SAAU,KAAK,cAAc;AACnE,WAAO,aAAa,QAAQ,QAAQ,QAAQ,KAAK,IAAI,MAAM,IAAI,OAAO;MACrE,QAAQ;AACX,OAAI,aACF,SAAQ,KAAK,SAAS,OAAO,aAAa,CAAC;;;CAIjD,SAAS,cAAc;AACrB,WAAS,EAAE;;CAEb,SAAS,KAAK,QAAQ,OAAO,SAAS;AACpC,MAAI,CAAC,SAAS,CAAC,OAAO,UAAU;AAC9B,UAAO,OAAO,QAAQ;AACtB,UAAO,WAAW;;;;CAKtB,SAAS,YAAY,OAAO,SAAS;AACnC,OAAK,SAAS,OAAO,QAAQ;;;CAI/B,SAASD,WAAS,OAAO,SAAS;AAChC,OAAK,MAAM,OAAO,QAAQ;;AAE5B,aAAY,aAAa;AACzB,aAAY,cAAc;AAC1B,aAAY,WAAWA;AACR,SAAQ,UAAU;;;;;;ACjBjC,MAAM,OAAO,kBAAkB;AAC/B,MAAM,OAAO,eAAe;AAC5B,MAAM,OAAO,QAAQ;AACrB,MAAM,OAAO,WAAW;AACxB,MAAM,OAAO,WAAW;AACxB,MAAM,OAAO,SAAS;AAEtB,MAAM,QAAQ,GAAG,MAAM;CAErB,MAAM,QAAQ,EAAE;CAChB,MAAM,YAAY,MAAM;AACxB,OAAM,SAAS,SAAS,EAAE,WAAmB;EAC3C,MAAM,OAAO,aAAa,IAAI,QAAQ,MAAM,KAAK;AACjD,SAAO,UAAU,KAAK,KAAK,CAAC,IAAI;;EAElC;AAGF,MAAME,YAA8B;CAIlC,OAAO;CACP,OAAO;CAMP,OAAO;CACP,OAAO;CAKP,OAAO;CACP,OAAO;CAQP,OAAO;CAQP,QAAQ;CAYR,OAAO;CAGP,OAAO;CAcP,OAAO;CACP,OAAO;CACP,OAAO;CACR;AAED,MAAM,eAAe,WAAmB;AAEtC,QADkB,UAAU,WACR,OAAO,MAAM,IAAI,CAAC;;AAGxC,MAAM,2BAA2B;;AAE/B,8BAAS,OAAO,gEAAgE;;AAGlF,MAAMC,iBAAwC;CAE5C,cAAc,OAAO;CACrB,eAAc,WAAU,MAAM,QAAQ,CAAC,aAAa,aAAa,CAAC;CAClE,aAAY,SAAQ,KAAK,MAAM,QAAQ;CACvC,aAAY,SAAQ;EAClB,MAAM,QAAQ,KAAK,OAAO,KAAK;AAC/B,SAAO,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,gBAAgB;;CAE9D,UAAS,SAAQ,KAAK,MAAM;CAC5B,WAAU,SAAQ,KAAK,OAAO;CAC9B,UAAS,SAAQ,KAAK,MAAM;CAC5B,UAAS,SAAQ,KAAK,MAAM;CAC5B,YAAW,SAAQ,KAAK,QAAQ;CAChC,YAAW,SAAQ,KAAK,QAAQ;CAChC,iBAAgB,SAAQ,KAAK,aAAa;CAG1C,UAAU,MAAM,SAAS,KAAK,IAAI,MAAM,OAAO;CAC/C,WAAW,MAAM,SAAS,KAAK,IAAI,MAAM,QAAQ;CACjD,UAAU,MAAM,SAAS,KAAK,IAAI,MAAM,MAAM;CAC9C,UAAU,MAAM,SAAS,KAAK,KAAK,KAAK;CACxC,WAAW,MAAM,UAAU,KAAK,MAAM,MAAM;CAC5C,UAAU,MAAM,QAAQ,KAAK,KAAK,IAAI;CACtC,UAAU,MAAM,SAAS,KAAK,KAAK,KAAK;CACxC,YAAY,MAAM,WAAW,KAAK,OAAO,OAAO;CAChD,YAAY,MAAM,WAAW,KAAK,OAAO,OAAO;CAChD,iBAAiB,MAAM,iBAAiB,KAAK,YAAY,aAAa;CAGtE,UAAU,OAAO,UAAU,MAAM,QAAQ,MAAM;CAC/C,aAAY,SAAQ,KAAK,SAAS;CAElC,QAAQ;EACN,kBAAiB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,gBAAgB;EAC5F,mBAAmB,QAAQ,SAAS,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,QAAQ,EAAE;EAC/E,UAAU,QAAQ,SAAS,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,MAAM;EAClE,mBAAkB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,aAAa;EAC1F,iBAAgB,WAAU,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,CAAC,YAAY,CAAC,aAAa;EACxF,SAAS,QAAQ,MAAM,WAAW,KAAK,OAAO,YAAY,OAAO,CAAC,CAAC,OAAO,OAAO;EACjF,QAAQ,QAAQ,MAAM,YAAY;GAChC,MAAM,YAAY,YAAY,OAAO;AACrC,QAAK,MAAM,UAAU,SAAS;IAC5B,MAAM,aAAa;AACnB,QAAI,OAAO,SAAS,KAAK,IAAI,OAAO,SAAS,KAAK,EAAE;KAElD,MAAM,OAAO,WAAW,MAAM,IAAI,CAAC;KACnC,MAAM,UAAU,WAAW,MAAM,IAAI,CAAC;KACtC,MAAM,YAAY,MAAM,MAAM,OAAO,CAAC,QAAQ,OAAO,CAAC,OAAO,UAAU;AACvE,UAAK,IAAI,IAAI,GAAG,KAAK,IAAI,KAAK,GAAG;MAC/B,MAAM,WAAW,UAAU,IAAI,GAAG,OAAO;AACzC,UAAI,SAAS,OAAO,KAAK,KAAK,QAC5B,QAAO;;AAGX,yBAAoB;AACpB,YAAO;;IAET,MAAM,OAAO,MAAM,YAAY,QAAQ,KAAK,CAAC,OAAO,UAAU;AAC9D,QAAI,KAAK,SAAS,CAChB,QAAO;;AAIX,OAAI,KACF,qBAAoB;AAEtB,UAAO;;EAEV;CACF;AAED,oBAAe;;;;ACvNf,MAAM,aAAa,eAAeC,cAAoB;;;;AAKtD,MAAa,mBAAmB,aAA6D;CAC3F,MAAM,EACJ,WACA,UACA,OACA,gBACA,OACA,WACA,MACA,WACA,SAAS,EAAE,EACX,eACA,WACA,aAAa,KACb,UACA,QACA,mBAAmB,oBAAoB,SAAS,OAAO,SAAS,eAChE,YACA,cAAc,eACd,GAAG,0BACD;CAEJ,MAAM,EACJ,cACA,mBACA,oBACA,wBACA,qBACE,eAAe,SAAS;AAE5B,KAAI,aAAa,UAAU,aAAa,UACtC,QAAO;CAGT,MAAM,kBAAkB,WAAW,eAAe;AAElD,MACG,aAAa,aAAa,aAAa,kBACvC,SAAS,YAAY,SAAS,WAE/B,qBAAqB,UACrB,qBAAqB,kBACrB;AACA,MAAI,SAAS,QAAQ;GACnB,MAAM,UAAU,CAAC,QAAQ,KAAK,CAAC,KAAK,KAAK,MAAM;AAC7C,QAAI,qBAAqB,OACvB,QACE,oCAAC,WAAW;KACL;KACL,OAAO,aAAa,KAAK,MAAM,aAAa,IAAI,WAAW,GAAG;KAC9D,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,GAAG,OAAO,WAAW,IAAI,IAAI,EAAE;KAChE,GAAI;MACJ;aAEK,qBAAqB,SAC9B,QACE,oCAAC;KACM;KACL,MAAM;KACN,OAAO,aAAa,MAAM;KAC1B,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,GAAG,EAAE;KACtC,GAAI;MACJ;AAGN,WACE,oCAAC;KACM;KACL,MAAM;KACN,OAAO,aAAa,MAAM;KAC1B,WAAW;KACD;KACV,aAAa;KACb,WAAU,MAAK,kBAAkB,EAAE,OAAO,OAAO,EAAE;KACnD,GAAI;MACJ;KAEJ;AACF,UACE,oCAAC;IAAK,eAAa;IAAmB;IAAkB;MACrD,QAAQ,IACR,WACA,QAAQ,GACJ;;AAIX,SAAO,oCAAC;GAAY,GAAI;GAAU;IAAW;;AAG/C,SAAQ,MAAR;EACE,KAAK;EACL,KAAK,cACH,QACE,oCAAC;GACC,GAAI;GACO;GACJ;GACA;GACG;GACK;GACf,UAAU,SAAS;GACH;GAChB,SAAS;GACT,GAAI;IACJ;EAGN,KAAK,WACH,QACE,oCAAC,MAAM;GACE;GACA;GACI;GACD;GACV,aAAa;GACb,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;GAC7C,GAAI;IACJ;EAGN,KAAK,SACH,QACE,oCAAC;GACC,SAAS,CAAC,CAAC;GACJ;GACI;GACD;GACV,WAAU,MAAK,eAAe,EAAE;GAChC,GAAI;IACJ;EAGN,KAAK,WACH,QACE,oCAAC;GAAY;GAAkB;KAC7B,oCAAC;GACC,MAAK;GACK;GACV,WAAU,MAAK,eAAe,EAAE,OAAO,QAAQ;GAC/C,SAAS,CAAC,CAAC;GACX,GAAI;IACJ,CACG;EAGX,KAAK,QACH,QACE,oCAAC;GAAgB;GAAkB;KAChC,OAAO,KAAI,MACV,oCAAC;GACC,KAAK,EAAE;GACP,OAAO,EAAE;GACT,SAAS,UAAU,EAAE;GACX;GACV,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;GAC7C,GAAI;KACH,EAAE,MACG,CACR,CACG;;AAIb,SAAQ,kBAAR;EACE,KAAK;EACL,KAAK,kBAAkB;AACrB,OAAI,aAAa,aAAa,aAAa,cAAc;IAEvD,MAAM,aAAa,aAAa,MAAM,GAAG,EAAE,CAAC,KAAK,MAAW,MAAM,EAAE,CAAC;AACrE,WACE,oCAAC,WAAW;KACV,OAAO,WAAW,OAAM,MAAK,EAAE,SAAS,CAAC,GAAG,aAAa;KACzD,UAAU,qBAAqB;KACpB;KACD;KACV,aAAa,CAAC,iBAAiB,gBAAgB;KAG/C,WAEE,UAAS;MAEP,MAAM,SAAS,aADI,qBAAqB,mBAAmB,cAAc;MAEzE,MAAM,YAAY,OAAO,KAAI,MAAM,GAAG,SAAS,GAAG,EAAE,OAAO,OAAO,GAAG,OAAW;AAChF,qBACE,YAAa,gBAAgB,YAAY,SAAS,WAAW,IAAI,GAAI,MACtE;;KAGL,GAAI;MACJ;;GAIN,MAAM,YAAY,MAAM,MAAM;AAC9B,UACE,oCAAC;IACC,OAAO,UAAU,SAAS,GAAG,YAAY;IACzC,UAAU,qBAAqB;IACpB;IACD;IACV,aAAa;IACb,WAAW,IAAI,eAAe,eAAe,WAAW;IACxD,GAAI;KACJ;;EAIN,KAAK,QAAQ;GACX,MAAM,YAAY,MAAM,OAAO,WAAW;AAC1C,UACE,oCAAC,WAAW;IACV,OAAO,UAAU,SAAS,GAAG,YAAY;IAC9B;IACD;IACV,aAAa;IACb,WAAU,MAAK,eAAe,GAAG,OAAO,WAAW,IAAI,GAAG;IAC1D,GAAI;KACJ;;EAIN,KAAK,SACH,QACE,oCAAC;GACC,MAAM;GACC;GACA;GACI;GACD;GACV,aAAa;GACb,UAAU;GACV,GAAI;IACJ;;AAKR,KAAI,cAAc,SAChB,QACE,oCAAC;EACC,eAAa;EACb,MAAM;EACN,aAAa;EACb,OAAO,GAAG;EACH;EACI;EACD;EACV,WAAU,MAAK,mBAAmB,EAAE,OAAO,MAAM;EACjD,GAAI;GACJ;AAIN,QACE,oCAAC;EACC,MAAM;EACC;EACA;EACI;EACD;EACV,aAAa;EACb,WAAU,MAAK,eAAe,EAAE,OAAO,MAAM;EAC7C,GAAI;GACJ;;;;;;;;ACrRN,MAAa,qBAAqB,EAChC,WACA,gBACA,SACA,OACA,OACA,UACA,UACA,eAEA,QAAQ,SACR,MAAM,OACN,WAAW,YACX,OAAO,QACP,OAAO,QACP,MAAM,OACN,SAAS,UACT,YAAY,aACZ,UAAU,WACV,OAAO,QACP,WAAW,YACX,QAAQ,SACR,GAAG,iBAC4C;CAE/C,MAAM,EAAE,UAAU,qBAAqB,iBAAiB;EACtD;EACA,eAAe;EACf,UAAU;EACV;EACD,CAAC;CACF,MAAM,EAAE,UAAU,gBAAgB,QAAQ,iBAAiB;EACzD;EAGA,eAAe,YAAY;EAC3B;EACA;EACD,CAAC;CAEF,MAAM,WAAW,MAAM,aACpB,MAAyB;AACxB,MAAI,YAAY,CAAC,iBAAiB,MAAM,QAAQ,EAAE,CAGhD,kBAAiB,SAAS,EAAE,CAAC;MAE7B,gBAAe,EAAE;IAGrB;EAAC;EAAe;EAAU;EAAkB;EAAe,CAC5D;AAED,QACE,oCAAC;EACC,GAAK,WAAW;GAAE,MAAM;GAAY,YAAY;GAAM,GAAG,EAAE;EACpD;EACI;EACX,uBAAuB;EACb;EACV,OAAO;EACG;EACV,kBAAiB;EACR;EACT,GAAI;GACJ;;;;;;;;AC/CN,MAAaC,sBAA8D;CACzE,eAAe;CACf,YAAY;CACZ,WAAW;CACX,cAAc;CACd,aAAa;CACb,eAAe;CAChB;;;;AAKD,MAAaC,mBAA0C;CACrD,aAAa,EAAE,OAAO,oCAAC,oBAAgB,EAAE;CACzC,YAAY,EAAE,OAAO,oCAAC,oBAAgB,EAAE;CACxC,WAAW,EAAE,OAAO,oCAAC,mBAAe,EAAE;CACtC,gBAAgB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC3C,WAAW,EAAE,OAAO,oCAAC,qBAAiB,EAAE;CACxC,UAAU,EAAE,OAAO,oCAAC,qBAAiB,EAAE;CACvC,mBAAmB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC9C,kBAAkB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC7C,eAAe,EAAE,OAAO,oCAAC,iBAAa,EAAE;CACxC,iBAAiB,EAAE,OAAO,oCAAC,mBAAe,EAAE;CAC7C;;;;AAKD,MAAaC,mBAAgD,yBAAyB;CACpF,iBAAiB;CACjB,cAAc;CACf,CAAC"}