@payloadcms/ui 3.21.0 → 3.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +20 -10
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +3 -2
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.d.ts +4 -0
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +0 -1
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +9 -6
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +2 -1
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +6 -2
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.scss +5 -0
- package/dist/elements/ReactSelect/types.d.ts +6 -1
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +9 -6
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +4 -3
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.d.ts +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +6 -6
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.d.ts +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +12 -10
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +100 -88
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +4 -4
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +23 -22
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js +1 -0
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +41 -28
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +47 -1
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/forms/Form/context.d.ts +7 -1
- package/dist/forms/Form/context.d.ts.map +1 -1
- package/dist/forms/Form/context.js +9 -1
- package/dist/forms/Form/context.js.map +1 -1
- package/dist/forms/Form/index.d.ts +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +73 -58
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/types.d.ts +7 -0
- package/dist/forms/Form/types.d.ts.map +1 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +4 -0
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +9 -0
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/index.d.ts +23 -1
- package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/index.js +10 -1
- package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +5 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.js +3 -0
- package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
- package/dist/forms/useField/index.d.ts.map +1 -1
- package/dist/forms/useField/index.js +38 -34
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/hooks/useEffectEvent.d.ts +2 -0
- package/dist/hooks/useEffectEvent.d.ts.map +1 -0
- package/dist/hooks/useEffectEvent.js +57 -0
- package/dist/hooks/useEffectEvent.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +13 -0
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Auth/APIKey.js +1 -0
- package/dist/views/Edit/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +1 -0
- package/dist/views/Edit/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/hooks/useIgnoredEffect.d.ts +0 -21
- package/dist/hooks/useIgnoredEffect.d.ts.map +0 -1
- package/dist/hooks/useIgnoredEffect.js +0 -41
- package/dist/hooks/useIgnoredEffect.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { DateFilter } from '../Date/index.js';
|
|
4
|
+
import { NumberFilter } from '../Number/index.js';
|
|
5
|
+
import { RelationshipFilter } from '../Relationship/index.js';
|
|
6
6
|
import { Select } from '../Select/index.js';
|
|
7
7
|
import { Text } from '../Text/index.js';
|
|
8
8
|
export const DefaultFilter = ({
|
|
@@ -27,7 +27,7 @@ export const DefaultFilter = ({
|
|
|
27
27
|
switch (internalField?.field?.type) {
|
|
28
28
|
case 'date':
|
|
29
29
|
{
|
|
30
|
-
return /*#__PURE__*/_jsx(
|
|
30
|
+
return /*#__PURE__*/_jsx(DateFilter, {
|
|
31
31
|
disabled: disabled,
|
|
32
32
|
field: internalField.field,
|
|
33
33
|
onChange: onChange,
|
|
@@ -37,7 +37,7 @@ export const DefaultFilter = ({
|
|
|
37
37
|
}
|
|
38
38
|
case 'number':
|
|
39
39
|
{
|
|
40
|
-
return /*#__PURE__*/_jsx(
|
|
40
|
+
return /*#__PURE__*/_jsx(NumberFilter, {
|
|
41
41
|
disabled: disabled,
|
|
42
42
|
field: internalField.field,
|
|
43
43
|
onChange: onChange,
|
|
@@ -47,7 +47,7 @@ export const DefaultFilter = ({
|
|
|
47
47
|
}
|
|
48
48
|
case 'relationship':
|
|
49
49
|
{
|
|
50
|
-
return /*#__PURE__*/_jsx(
|
|
50
|
+
return /*#__PURE__*/_jsx(RelationshipFilter, {
|
|
51
51
|
disabled: disabled,
|
|
52
52
|
field: internalField.field,
|
|
53
53
|
onChange: onChange,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","DateFilter","NumberFilter","RelationshipFilter","Select","Text","DefaultFilter","booleanSelect","disabled","internalField","onChange","operator","options","value","includes","field","type","_jsx"],"sources":["../../../../../src/elements/WhereBuilder/Condition/DefaultFilter/index.tsx"],"sourcesContent":["import type { Operator, Option, SelectFieldClient, TextFieldClient } from 'payload'\n\nimport React from 'react'\n\nimport type { FieldCondition } from '../../types.js'\n\nimport { DateFilter } from '../Date/index.js'\nimport { NumberFilter } from '../Number/index.js'\nimport { RelationshipFilter } from '../Relationship/index.js'\nimport { Select } from '../Select/index.js'\nimport { Text } from '../Text/index.js'\n\ntype Props = {\n booleanSelect: boolean\n disabled: boolean\n internalField: FieldCondition\n onChange: React.Dispatch<React.SetStateAction<string>>\n operator: Operator\n options: Option[]\n value: string\n}\n\nexport const DefaultFilter: React.FC<Props> = ({\n booleanSelect,\n disabled,\n internalField,\n onChange,\n operator,\n options,\n value,\n}) => {\n if (booleanSelect || ['radio', 'select'].includes(internalField?.field?.type)) {\n return (\n <Select\n disabled={disabled}\n field={internalField.field as SelectFieldClient}\n onChange={onChange}\n operator={operator}\n options={options}\n value={value}\n />\n )\n }\n\n switch (internalField?.field?.type) {\n case 'date': {\n return (\n <DateFilter\n disabled={disabled}\n field={internalField.field}\n onChange={onChange}\n operator={operator}\n value={value}\n />\n )\n }\n\n case 'number': {\n return (\n <NumberFilter\n disabled={disabled}\n field={internalField.field}\n onChange={onChange}\n operator={operator}\n value={value}\n />\n )\n }\n\n case 'relationship': {\n return (\n <RelationshipFilter\n disabled={disabled}\n field={internalField.field}\n onChange={onChange}\n operator={operator}\n value={value}\n />\n )\n }\n\n default: {\n return (\n <Text\n disabled={disabled}\n field={internalField?.field as TextFieldClient}\n onChange={onChange}\n operator={operator}\n value={value}\n />\n )\n }\n }\n}\n"],"mappings":";AAEA,OAAOA,KAAA,MAAW;AAIlB,SAASC,UAAU,QAAQ;AAC3B,SAASC,YAAY,QAAQ;AAC7B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,MAAM,QAAQ;AACvB,SAASC,IAAI,QAAQ;AAYrB,OAAO,MAAMC,aAAA,GAAiCA,CAAC;EAC7CC,aAAa;EACbC,QAAQ;EACRC,aAAa;EACbC,QAAQ;EACRC,QAAQ;EACRC,OAAO;EACPC;AAAK,CACN;EACC,IAAIN,aAAA,IAAiB,CAAC,SAAS,SAAS,CAACO,QAAQ,CAACL,aAAA,EAAeM,KAAA,EAAOC,IAAA,GAAO;IAC7E,oBACEC,IAAA,CAACb,MAAA;MACCI,QAAA,EAAUA,QAAA;MACVO,KAAA,EAAON,aAAA,CAAcM,KAAK;MAC1BL,QAAA,EAAUA,QAAA;MACVC,QAAA,EAAUA,QAAA;MACVC,OAAA,EAASA,OAAA;MACTC,KAAA,EAAOA;;EAGb;EAEA,QAAQJ,aAAA,EAAeM,KAAA,EAAOC,IAAA;IAC5B,KAAK;MAAQ;QACX,oBACEC,IAAA,CAAChB,UAAA;UACCO,QAAA,EAAUA,QAAA;UACVO,KAAA,EAAON,aAAA,CAAcM,KAAK;UAC1BL,QAAA,EAAUA,QAAA;UACVC,QAAA,EAAUA,QAAA;UACVE,KAAA,EAAOA;;MAGb;IAEA,KAAK;MAAU;QACb,oBACEI,IAAA,CAACf,YAAA;UACCM,QAAA,EAAUA,QAAA;UACVO,KAAA,EAAON,aAAA,CAAcM,KAAK;UAC1BL,QAAA,EAAUA,QAAA;UACVC,QAAA,EAAUA,QAAA;UACVE,KAAA,EAAOA;;MAGb;IAEA,KAAK;MAAgB;QACnB,oBACEI,IAAA,CAACd,kBAAA;UACCK,QAAA,EAAUA,QAAA;UACVO,KAAA,EAAON,aAAA,CAAcM,KAAK;UAC1BL,QAAA,EAAUA,QAAA;UACVC,QAAA,EAAUA,QAAA;UACVE,KAAA,EAAOA;;MAGb;IAEA;MAAS;QACP,oBACEI,IAAA,CAACZ,IAAA;UACCG,QAAA,EAAUA,QAAA;UACVO,KAAA,EAAON,aAAA,EAAeM,KAAA;UACtBL,QAAA,EAAUA,QAAA;UACVC,QAAA,EAAUA,QAAA;UACVE,KAAA,EAAOA;;MAGb;EACF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Number/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Number/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAaxC,CAAA"}
|
|
@@ -6,7 +6,7 @@ import React from 'react';
|
|
|
6
6
|
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
7
7
|
import './index.scss';
|
|
8
8
|
const baseClass = 'condition-value-number';
|
|
9
|
-
export const
|
|
9
|
+
export const NumberFilter = t0 => {
|
|
10
10
|
const $ = _c(7);
|
|
11
11
|
const {
|
|
12
12
|
disabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useTranslation","baseClass","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useTranslation","baseClass","NumberFilter","t0","$","disabled","onChange","value","t","t1","e","target","t2","_jsx","className","placeholder","type"],"sources":["../../../../../src/elements/WhereBuilder/Condition/Number/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'condition-value-number'\n\nexport const NumberFilter: React.FC<Props> = ({ disabled, onChange, value }) => {\n const { t } = useTranslation()\n\n return (\n <input\n className={baseClass}\n disabled={disabled}\n onChange={(e) => onChange(e.target.value)}\n placeholder={t('general:enterAValue')}\n type=\"number\"\n value={value}\n />\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAIlB,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,YAAA,GAAgCC,EAAA;EAAA,MAAAC,CAAA,GAAAN,EAAA;EAAC;IAAAO,QAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAJ,EAA6B;EACzE;IAAAK;EAAA,IAAcR,cAAA;EAAA,IAAAS,EAAA;EAAA,IAAAL,CAAA,QAAAE,QAAA;IAMAG,EAAA,GAAAC,CAAA,IAAOJ,QAAA,CAASI,CAAA,CAAAC,MAAA,CAAAJ,KAAc;IAAAH,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAR,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAI,CAAA,IAAAJ,CAAA,QAAAK,EAAA,IAAAL,CAAA,QAAAG,KAAA;IAH1CK,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAAb,SAAA;MAAAI,QAAA;MAAAC,QAAA,EAGWG,EAA8B;MAAAM,WAAA,EAC3BP,CAAA,CAAE;MAAAQ,IAAA,EACV;MAAAT;IAAA,C;;;;;;;;;SALPK,E;CASJ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAuD,MAAM,OAAO,CAAA;AAG3E,OAAO,KAAK,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAA;AAM1D,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAuD,MAAM,OAAO,CAAA;AAG3E,OAAO,KAAK,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAA;AAM1D,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuV9C,CAAA"}
|
|
@@ -11,7 +11,7 @@ import './index.scss';
|
|
|
11
11
|
import optionsReducer from './optionsReducer.js';
|
|
12
12
|
const baseClass = 'condition-value-relationship';
|
|
13
13
|
const maxResultsPerRequest = 10;
|
|
14
|
-
export const
|
|
14
|
+
export const RelationshipFilter = props => {
|
|
15
15
|
const {
|
|
16
16
|
disabled,
|
|
17
17
|
field: {
|
|
@@ -181,15 +181,17 @@ export const RelationshipField = props => {
|
|
|
181
181
|
return undefined;
|
|
182
182
|
}, [hasMany, hasMultipleRelations, value, options]);
|
|
183
183
|
const handleInputChange = input => {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
184
|
+
if (input !== search) {
|
|
185
|
+
dispatchOptions({
|
|
186
|
+
type: 'CLEAR',
|
|
187
|
+
i18n,
|
|
188
|
+
required: false
|
|
189
|
+
});
|
|
190
|
+
const relationSlug_0 = partiallyLoadedRelationshipSlugs.current[0];
|
|
191
|
+
partiallyLoadedRelationshipSlugs.current = relationSlugs;
|
|
192
|
+
nextPageByRelationshipRef.current.set(relationSlug_0, 1);
|
|
193
|
+
setSearch(input);
|
|
194
|
+
}
|
|
193
195
|
};
|
|
194
196
|
const addOptionByID = useCallback(async (id, relation_1) => {
|
|
195
197
|
if (!errorLoading && id !== 'null' && id && relation_1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["qs","React","useCallback","useEffect","useReducer","useState","useDebounce","useConfig","useTranslation","ReactSelect","optionsReducer","baseClass","maxResultsPerRequest","RelationshipField","props","disabled","field","admin","isSortable","hasMany","relationTo","onChange","value","config","routes","api","serverURL","getEntityConfig","hasMultipleRelations","Array","isArray","options","dispatchOptions","search","setSearch","errorLoading","setErrorLoading","hasLoadedFirstOptions","setHasLoadedFirstOptions","debouncedSearch","i18n","t","relationSlugs","initialRelationMap","map","Map","forEach","relation","set","nextPageByRelationshipRef","useRef","partiallyLoadedRelationshipSlugs","addOptions","data","collection","collectionSlug","type","loadRelationOptions","abortController","relationSlug","current","includes","fieldToSearch","useAsTitle","pageIndex","get","where","and","query","depth","limit","page","select","push","like","response","fetch","stringify","addQueryPrefix","credentials","headers","language","signal","ok","json","docs","length","nextPage","filter","partiallyLoadedRelation","e","aborted","console","error","loadMoreOptions","AbortController","findOptionsByValue","val","matchedOption","opt","some","subOpt","find","undefined","valueWithRelation","handleInputChange","input","required","addOptionByID","id","relations","abortControllers","controller","abort","_err","matchedOptions","option","i","classes","Boolean","join","valueToRender","_jsxs","className","_jsx","isMulti","selected","onInputChange","onMenuScrollToBottom","placeholder"],"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { Option } from '../../../ReactSelect/types.js'\nimport type { Props, ValueWithRelation } from './types.js'\n\nimport { useDebounce } from '../../../../hooks/useDebounce.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport './index.scss'\nimport optionsReducer from './optionsReducer.js'\n\nconst baseClass = 'condition-value-relationship'\n\nconst maxResultsPerRequest = 10\n\nexport const RelationshipField: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { admin: { isSortable } = {}, hasMany, relationTo },\n onChange,\n value,\n } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [search, setSearch] = useState('')\n const [errorLoading, setErrorLoading] = useState('')\n const [hasLoadedFirstOptions, setHasLoadedFirstOptions] = useState(false)\n const debouncedSearch = useDebounce(search, 300)\n const { i18n, t } = useTranslation()\n const relationSlugs = hasMultipleRelations ? relationTo : [relationTo]\n const initialRelationMap = () => {\n const map: Map<string, number> = new Map()\n relationSlugs.forEach((relation) => {\n map.set(relation, 1)\n })\n return map\n }\n const nextPageByRelationshipRef = React.useRef<Map<string, number>>(initialRelationMap())\n const partiallyLoadedRelationshipSlugs = React.useRef<string[]>(relationSlugs)\n\n const addOptions = useCallback(\n (data, relation) => {\n const collection = getEntityConfig({ collectionSlug: relation })\n dispatchOptions({ type: 'ADD', collection, data, hasMultipleRelations, i18n, relation })\n },\n [hasMultipleRelations, i18n, getEntityConfig],\n )\n\n const loadRelationOptions = React.useCallback(\n async ({\n abortController,\n relationSlug,\n }: {\n abortController: AbortController\n relationSlug: string\n }) => {\n if (relationSlug && partiallyLoadedRelationshipSlugs.current.includes(relationSlug)) {\n const collection = getEntityConfig({\n collectionSlug: relationSlug,\n })\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n const pageIndex = nextPageByRelationshipRef.current.get(relationSlug)\n\n const where: Where = {\n and: [],\n }\n const query = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: pageIndex,\n select: {\n [fieldToSearch]: true,\n },\n where,\n }\n\n if (debouncedSearch) {\n query.where.and.push({\n [fieldToSearch]: {\n like: debouncedSearch,\n },\n })\n }\n\n try {\n const response = await fetch(\n `${serverURL}${api}/${relationSlug}${qs.stringify(query, { addQueryPrefix: true })}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n signal: abortController.signal,\n },\n )\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n if (data.docs.length > 0) {\n addOptions(data, relationSlug)\n\n if (data.nextPage) {\n nextPageByRelationshipRef.current.set(relationSlug, data.nextPage)\n } else {\n partiallyLoadedRelationshipSlugs.current =\n partiallyLoadedRelationshipSlugs.current.filter(\n (partiallyLoadedRelation) => partiallyLoadedRelation !== relationSlug,\n )\n }\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n } catch (e) {\n if (!abortController.signal.aborted) {\n console.error(e)\n }\n }\n }\n\n setHasLoadedFirstOptions(true)\n },\n [addOptions, api, debouncedSearch, getEntityConfig, i18n.language, serverURL, t],\n )\n\n const loadMoreOptions = React.useCallback(() => {\n if (partiallyLoadedRelationshipSlugs.current.length > 0) {\n const abortController = new AbortController()\n void loadRelationOptions({\n abortController,\n relationSlug: partiallyLoadedRelationshipSlugs.current[0],\n })\n }\n }, [loadRelationOptions])\n\n const findOptionsByValue = useCallback((): Option | Option[] => {\n if (value) {\n if (hasMany) {\n if (Array.isArray(value)) {\n return value.map((val) => {\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n options.forEach((opt) => {\n if (opt.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == val.value) {\n matchedOption = subOpt\n return true\n }\n\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == val)\n })\n }\n\n return undefined\n }\n\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n const valueWithRelation = value as ValueWithRelation\n\n options.forEach((opt) => {\n if (opt?.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == valueWithRelation.value) {\n matchedOption = subOpt\n return true\n }\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == value)\n }\n\n return undefined\n }, [hasMany, hasMultipleRelations, value, options])\n\n const handleInputChange = (input: string) => {\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n const relationSlug = partiallyLoadedRelationshipSlugs.current[0]\n partiallyLoadedRelationshipSlugs.current = relationSlugs\n nextPageByRelationshipRef.current.set(relationSlug, 1)\n setSearch(input)\n }\n\n const addOptionByID = useCallback(\n async (id, relation) => {\n if (!errorLoading && id !== 'null' && id && relation) {\n const response = await fetch(`${serverURL}${api}/${relation}/${id}?depth=0`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data = await response.json()\n addOptions({ docs: [data] }, relation)\n } else {\n // eslint-disable-next-line no-console\n console.error(t('error:loadingDocument', { id }))\n }\n }\n },\n [i18n, addOptions, api, errorLoading, serverURL, t],\n )\n\n /**\n * 1. Trigger initial relationship options fetch\n * 2. When search changes, loadRelationOptions will\n * fire off again\n */\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const abortControllers: AbortController[] = []\n relations.forEach((relation) => {\n const abortController = new AbortController()\n void loadRelationOptions({\n abortController,\n relationSlug: relation,\n })\n abortControllers.push(abortController)\n })\n\n return () => {\n abortControllers.forEach((controller) => {\n if (controller.signal) {\n try {\n controller.abort()\n } catch (_err) {\n // swallow error\n }\n }\n })\n }\n }, [i18n, loadRelationOptions, relationTo])\n\n /**\n * Load any options that were not returned\n * in the first 10 of each relation fetch\n */\n useEffect(() => {\n if (value && hasLoadedFirstOptions) {\n if (hasMany) {\n const matchedOptions = findOptionsByValue()\n\n ;((matchedOptions as Option[]) || []).forEach((option, i) => {\n if (!option) {\n if (hasMultipleRelations) {\n void addOptionByID(value[i].value, value[i].relationTo)\n } else {\n void addOptionByID(value[i], relationTo)\n }\n }\n })\n } else {\n const matchedOption = findOptionsByValue()\n\n if (!matchedOption) {\n if (hasMultipleRelations) {\n const valueWithRelation = value as ValueWithRelation\n void addOptionByID(valueWithRelation.value, valueWithRelation.relationTo)\n } else {\n void addOptionByID(value, relationTo)\n }\n }\n }\n }\n }, [\n addOptionByID,\n findOptionsByValue,\n hasMany,\n hasMultipleRelations,\n relationTo,\n value,\n hasLoadedFirstOptions,\n ])\n\n const classes = ['field-type', baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')\n\n const valueToRender = (findOptionsByValue() || value) as Option\n\n return (\n <div className={classes}>\n {!errorLoading && (\n <ReactSelect\n disabled={disabled}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={(selected) => {\n if (!selected) {\n onChange(null)\n return\n }\n if (hasMany && Array.isArray(selected)) {\n onChange(\n selected\n ? selected.map((option) => {\n if (hasMultipleRelations) {\n return {\n relationTo: option?.relationTo,\n value: option?.value,\n }\n }\n\n return option?.value\n })\n : null,\n )\n } else if (hasMultipleRelations && !Array.isArray(selected)) {\n onChange({\n relationTo: selected?.relationTo,\n value: selected?.value,\n })\n } else if (!Array.isArray(selected)) {\n onChange(selected?.value)\n }\n }}\n onInputChange={handleInputChange}\n onMenuScrollToBottom={loadMoreOptions}\n options={options}\n placeholder={t('general:selectValue')}\n value={valueToRender}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["qs","React","useCallback","useEffect","useReducer","useState","useDebounce","useConfig","useTranslation","ReactSelect","optionsReducer","baseClass","maxResultsPerRequest","RelationshipFilter","props","disabled","field","admin","isSortable","hasMany","relationTo","onChange","value","config","routes","api","serverURL","getEntityConfig","hasMultipleRelations","Array","isArray","options","dispatchOptions","search","setSearch","errorLoading","setErrorLoading","hasLoadedFirstOptions","setHasLoadedFirstOptions","debouncedSearch","i18n","t","relationSlugs","initialRelationMap","map","Map","forEach","relation","set","nextPageByRelationshipRef","useRef","partiallyLoadedRelationshipSlugs","addOptions","data","collection","collectionSlug","type","loadRelationOptions","abortController","relationSlug","current","includes","fieldToSearch","useAsTitle","pageIndex","get","where","and","query","depth","limit","page","select","push","like","response","fetch","stringify","addQueryPrefix","credentials","headers","language","signal","ok","json","docs","length","nextPage","filter","partiallyLoadedRelation","e","aborted","console","error","loadMoreOptions","AbortController","findOptionsByValue","val","matchedOption","opt","some","subOpt","find","undefined","valueWithRelation","handleInputChange","input","required","addOptionByID","id","relations","abortControllers","controller","abort","_err","matchedOptions","option","i","classes","Boolean","join","valueToRender","_jsxs","className","_jsx","isMulti","selected","onInputChange","onMenuScrollToBottom","placeholder"],"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { Option } from '../../../ReactSelect/types.js'\nimport type { Props, ValueWithRelation } from './types.js'\n\nimport { useDebounce } from '../../../../hooks/useDebounce.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport './index.scss'\nimport optionsReducer from './optionsReducer.js'\n\nconst baseClass = 'condition-value-relationship'\n\nconst maxResultsPerRequest = 10\n\nexport const RelationshipFilter: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { admin: { isSortable } = {}, hasMany, relationTo },\n onChange,\n value,\n } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [search, setSearch] = useState('')\n const [errorLoading, setErrorLoading] = useState('')\n const [hasLoadedFirstOptions, setHasLoadedFirstOptions] = useState(false)\n const debouncedSearch = useDebounce(search, 300)\n const { i18n, t } = useTranslation()\n const relationSlugs = hasMultipleRelations ? relationTo : [relationTo]\n\n const initialRelationMap = () => {\n const map: Map<string, number> = new Map()\n relationSlugs.forEach((relation) => {\n map.set(relation, 1)\n })\n return map\n }\n\n const nextPageByRelationshipRef = React.useRef<Map<string, number>>(initialRelationMap())\n const partiallyLoadedRelationshipSlugs = React.useRef<string[]>(relationSlugs)\n\n const addOptions = useCallback(\n (data, relation) => {\n const collection = getEntityConfig({ collectionSlug: relation })\n dispatchOptions({ type: 'ADD', collection, data, hasMultipleRelations, i18n, relation })\n },\n [hasMultipleRelations, i18n, getEntityConfig],\n )\n\n const loadRelationOptions = React.useCallback(\n async ({\n abortController,\n relationSlug,\n }: {\n abortController: AbortController\n relationSlug: string\n }) => {\n if (relationSlug && partiallyLoadedRelationshipSlugs.current.includes(relationSlug)) {\n const collection = getEntityConfig({\n collectionSlug: relationSlug,\n })\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n const pageIndex = nextPageByRelationshipRef.current.get(relationSlug)\n\n const where: Where = {\n and: [],\n }\n const query = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: pageIndex,\n select: {\n [fieldToSearch]: true,\n },\n where,\n }\n\n if (debouncedSearch) {\n query.where.and.push({\n [fieldToSearch]: {\n like: debouncedSearch,\n },\n })\n }\n\n try {\n const response = await fetch(\n `${serverURL}${api}/${relationSlug}${qs.stringify(query, { addQueryPrefix: true })}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n signal: abortController.signal,\n },\n )\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n if (data.docs.length > 0) {\n addOptions(data, relationSlug)\n\n if (data.nextPage) {\n nextPageByRelationshipRef.current.set(relationSlug, data.nextPage)\n } else {\n partiallyLoadedRelationshipSlugs.current =\n partiallyLoadedRelationshipSlugs.current.filter(\n (partiallyLoadedRelation) => partiallyLoadedRelation !== relationSlug,\n )\n }\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n } catch (e) {\n if (!abortController.signal.aborted) {\n console.error(e)\n }\n }\n }\n\n setHasLoadedFirstOptions(true)\n },\n [addOptions, api, debouncedSearch, getEntityConfig, i18n.language, serverURL, t],\n )\n\n const loadMoreOptions = React.useCallback(() => {\n if (partiallyLoadedRelationshipSlugs.current.length > 0) {\n const abortController = new AbortController()\n void loadRelationOptions({\n abortController,\n relationSlug: partiallyLoadedRelationshipSlugs.current[0],\n })\n }\n }, [loadRelationOptions])\n\n const findOptionsByValue = useCallback((): Option | Option[] => {\n if (value) {\n if (hasMany) {\n if (Array.isArray(value)) {\n return value.map((val) => {\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n options.forEach((opt) => {\n if (opt.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == val.value) {\n matchedOption = subOpt\n return true\n }\n\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == val)\n })\n }\n\n return undefined\n }\n\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n const valueWithRelation = value as ValueWithRelation\n\n options.forEach((opt) => {\n if (opt?.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == valueWithRelation.value) {\n matchedOption = subOpt\n return true\n }\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == value)\n }\n\n return undefined\n }, [hasMany, hasMultipleRelations, value, options])\n\n const handleInputChange = (input: string) => {\n if (input !== search) {\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n const relationSlug = partiallyLoadedRelationshipSlugs.current[0]\n partiallyLoadedRelationshipSlugs.current = relationSlugs\n nextPageByRelationshipRef.current.set(relationSlug, 1)\n setSearch(input)\n }\n }\n\n const addOptionByID = useCallback(\n async (id, relation) => {\n if (!errorLoading && id !== 'null' && id && relation) {\n const response = await fetch(`${serverURL}${api}/${relation}/${id}?depth=0`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data = await response.json()\n addOptions({ docs: [data] }, relation)\n } else {\n // eslint-disable-next-line no-console\n console.error(t('error:loadingDocument', { id }))\n }\n }\n },\n [i18n, addOptions, api, errorLoading, serverURL, t],\n )\n\n /**\n * 1. Trigger initial relationship options fetch\n * 2. When search changes, loadRelationOptions will\n * fire off again\n */\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const abortControllers: AbortController[] = []\n relations.forEach((relation) => {\n const abortController = new AbortController()\n void loadRelationOptions({\n abortController,\n relationSlug: relation,\n })\n abortControllers.push(abortController)\n })\n\n return () => {\n abortControllers.forEach((controller) => {\n if (controller.signal) {\n try {\n controller.abort()\n } catch (_err) {\n // swallow error\n }\n }\n })\n }\n }, [i18n, loadRelationOptions, relationTo])\n\n /**\n * Load any options that were not returned\n * in the first 10 of each relation fetch\n */\n useEffect(() => {\n if (value && hasLoadedFirstOptions) {\n if (hasMany) {\n const matchedOptions = findOptionsByValue()\n\n ;((matchedOptions as Option[]) || []).forEach((option, i) => {\n if (!option) {\n if (hasMultipleRelations) {\n void addOptionByID(value[i].value, value[i].relationTo)\n } else {\n void addOptionByID(value[i], relationTo)\n }\n }\n })\n } else {\n const matchedOption = findOptionsByValue()\n\n if (!matchedOption) {\n if (hasMultipleRelations) {\n const valueWithRelation = value as ValueWithRelation\n void addOptionByID(valueWithRelation.value, valueWithRelation.relationTo)\n } else {\n void addOptionByID(value, relationTo)\n }\n }\n }\n }\n }, [\n addOptionByID,\n findOptionsByValue,\n hasMany,\n hasMultipleRelations,\n relationTo,\n value,\n hasLoadedFirstOptions,\n ])\n\n const classes = ['field-type', baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')\n\n const valueToRender = (findOptionsByValue() || value) as Option\n\n return (\n <div className={classes}>\n {!errorLoading && (\n <ReactSelect\n disabled={disabled}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={(selected) => {\n if (!selected) {\n onChange(null)\n return\n }\n if (hasMany && Array.isArray(selected)) {\n onChange(\n selected\n ? selected.map((option) => {\n if (hasMultipleRelations) {\n return {\n relationTo: option?.relationTo,\n value: option?.value,\n }\n }\n\n return option?.value\n })\n : null,\n )\n } else if (hasMultipleRelations && !Array.isArray(selected)) {\n onChange({\n relationTo: selected?.relationTo,\n value: selected?.value,\n })\n } else if (!Array.isArray(selected)) {\n onChange(selected?.value)\n }\n }}\n onInputChange={handleInputChange}\n onMenuScrollToBottom={loadMoreOptions}\n options={options}\n placeholder={t('general:selectValue')}\n value={valueToRender}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,YAAY,EAAE,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,MAAM,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;KACvB,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,CAAA;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAChG,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,CAAA;IACxC,QAAQ,CAAC,eAAe,EAAE,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,GACN,EAAE;QACD,QAAQ,EAAE,MAAM,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;QAChB,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;CACX,CAAA;AAED,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AASvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,YAAY,EAAE,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,MAAM,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;KACvB,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,CAAA;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAChG,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,CAAA;IACxC,QAAQ,CAAC,eAAe,EAAE,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,GACN,EAAE;QACD,QAAQ,EAAE,MAAM,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;QAChB,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;CACX,CAAA;AAED,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AASvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAmKrC,CAAA"}
|
|
@@ -11,7 +11,7 @@ import { DefaultFilter } from './DefaultFilter/index.js';
|
|
|
11
11
|
import './index.scss';
|
|
12
12
|
const baseClass = 'condition';
|
|
13
13
|
export const Condition = props => {
|
|
14
|
-
const $ = _c(
|
|
14
|
+
const $ = _c(67);
|
|
15
15
|
const {
|
|
16
16
|
addCondition,
|
|
17
17
|
andIndex,
|
|
@@ -41,9 +41,19 @@ export const Condition = props => {
|
|
|
41
41
|
const [internalQueryValue, setInternalQueryValue] = useState(initialValue);
|
|
42
42
|
const debouncedValue = useDebounce(internalQueryValue, 300);
|
|
43
43
|
let t1;
|
|
44
|
-
if ($[3] !== andIndex || $[4] !== debouncedValue || $[5] !== fieldOption || $[6] !== internalOperatorOption || $[7] !== orIndex || $[8] !== updateCondition) {
|
|
44
|
+
if ($[3] !== andIndex || $[4] !== debouncedValue || $[5] !== fieldOption || $[6] !== internalOperatorOption || $[7] !== orIndex || $[8] !== removeCondition || $[9] !== updateCondition) {
|
|
45
45
|
t1 = () => {
|
|
46
|
-
if (
|
|
46
|
+
if (debouncedValue === undefined) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (debouncedValue === null) {
|
|
50
|
+
removeCondition({
|
|
51
|
+
andIndex,
|
|
52
|
+
orIndex
|
|
53
|
+
});
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if ((fieldOption?.value || typeof fieldOption?.value === "number") && internalOperatorOption) {
|
|
47
57
|
updateCondition({
|
|
48
58
|
andIndex,
|
|
49
59
|
fieldName: fieldOption.value,
|
|
@@ -58,85 +68,87 @@ export const Condition = props => {
|
|
|
58
68
|
$[5] = fieldOption;
|
|
59
69
|
$[6] = internalOperatorOption;
|
|
60
70
|
$[7] = orIndex;
|
|
61
|
-
$[8] =
|
|
62
|
-
$[9] =
|
|
71
|
+
$[8] = removeCondition;
|
|
72
|
+
$[9] = updateCondition;
|
|
73
|
+
$[10] = t1;
|
|
63
74
|
} else {
|
|
64
|
-
t1 = $[
|
|
75
|
+
t1 = $[10];
|
|
65
76
|
}
|
|
66
77
|
const t2 = fieldOption?.value;
|
|
67
78
|
let t3;
|
|
68
|
-
if ($[
|
|
69
|
-
t3 = [debouncedValue, andIndex, t2, internalOperatorOption, orIndex, updateCondition, operator];
|
|
70
|
-
$[
|
|
71
|
-
$[
|
|
72
|
-
$[
|
|
73
|
-
$[
|
|
74
|
-
$[
|
|
75
|
-
$[
|
|
76
|
-
$[
|
|
77
|
-
$[
|
|
79
|
+
if ($[11] !== andIndex || $[12] !== debouncedValue || $[13] !== internalOperatorOption || $[14] !== operator || $[15] !== orIndex || $[16] !== removeCondition || $[17] !== t2 || $[18] !== updateCondition) {
|
|
80
|
+
t3 = [debouncedValue, andIndex, t2, internalOperatorOption, orIndex, updateCondition, operator, removeCondition];
|
|
81
|
+
$[11] = andIndex;
|
|
82
|
+
$[12] = debouncedValue;
|
|
83
|
+
$[13] = internalOperatorOption;
|
|
84
|
+
$[14] = operator;
|
|
85
|
+
$[15] = orIndex;
|
|
86
|
+
$[16] = removeCondition;
|
|
87
|
+
$[17] = t2;
|
|
88
|
+
$[18] = updateCondition;
|
|
89
|
+
$[19] = t3;
|
|
78
90
|
} else {
|
|
79
|
-
t3 = $[
|
|
91
|
+
t3 = $[19];
|
|
80
92
|
}
|
|
81
93
|
useEffect(t1, t3);
|
|
82
94
|
let t4;
|
|
83
|
-
if ($[
|
|
95
|
+
if ($[20] !== fieldOption?.field?.type || $[21] !== internalOperatorOption) {
|
|
84
96
|
t4 = ["exists"].includes(internalOperatorOption) || fieldOption?.field?.type === "checkbox";
|
|
85
|
-
$[
|
|
86
|
-
$[
|
|
87
|
-
$[
|
|
97
|
+
$[20] = fieldOption?.field?.type;
|
|
98
|
+
$[21] = internalOperatorOption;
|
|
99
|
+
$[22] = t4;
|
|
88
100
|
} else {
|
|
89
|
-
t4 = $[
|
|
101
|
+
t4 = $[22];
|
|
90
102
|
}
|
|
91
103
|
const booleanSelect = t4;
|
|
92
104
|
let valueOptions;
|
|
93
105
|
if (booleanSelect) {
|
|
94
106
|
let t5;
|
|
95
|
-
if ($[
|
|
107
|
+
if ($[23] !== t) {
|
|
96
108
|
t5 = t("general:true");
|
|
97
|
-
$[
|
|
98
|
-
$[
|
|
109
|
+
$[23] = t;
|
|
110
|
+
$[24] = t5;
|
|
99
111
|
} else {
|
|
100
|
-
t5 = $[
|
|
112
|
+
t5 = $[24];
|
|
101
113
|
}
|
|
102
114
|
let t6;
|
|
103
|
-
if ($[
|
|
115
|
+
if ($[25] !== t5) {
|
|
104
116
|
t6 = {
|
|
105
117
|
label: t5,
|
|
106
118
|
value: "true"
|
|
107
119
|
};
|
|
108
|
-
$[
|
|
109
|
-
$[
|
|
120
|
+
$[25] = t5;
|
|
121
|
+
$[26] = t6;
|
|
110
122
|
} else {
|
|
111
|
-
t6 = $[
|
|
123
|
+
t6 = $[26];
|
|
112
124
|
}
|
|
113
125
|
let t7;
|
|
114
|
-
if ($[
|
|
126
|
+
if ($[27] !== t) {
|
|
115
127
|
t7 = t("general:false");
|
|
116
|
-
$[
|
|
117
|
-
$[
|
|
128
|
+
$[27] = t;
|
|
129
|
+
$[28] = t7;
|
|
118
130
|
} else {
|
|
119
|
-
t7 = $[
|
|
131
|
+
t7 = $[28];
|
|
120
132
|
}
|
|
121
133
|
let t8;
|
|
122
|
-
if ($[
|
|
134
|
+
if ($[29] !== t7) {
|
|
123
135
|
t8 = {
|
|
124
136
|
label: t7,
|
|
125
137
|
value: "false"
|
|
126
138
|
};
|
|
127
|
-
$[
|
|
128
|
-
$[
|
|
139
|
+
$[29] = t7;
|
|
140
|
+
$[30] = t8;
|
|
129
141
|
} else {
|
|
130
|
-
t8 = $[
|
|
142
|
+
t8 = $[30];
|
|
131
143
|
}
|
|
132
144
|
let t9;
|
|
133
|
-
if ($[
|
|
145
|
+
if ($[31] !== t6 || $[32] !== t8) {
|
|
134
146
|
t9 = [t6, t8];
|
|
135
|
-
$[
|
|
136
|
-
$[
|
|
137
|
-
$[
|
|
147
|
+
$[31] = t6;
|
|
148
|
+
$[32] = t8;
|
|
149
|
+
$[33] = t9;
|
|
138
150
|
} else {
|
|
139
|
-
t9 = $[
|
|
151
|
+
t9 = $[33];
|
|
140
152
|
}
|
|
141
153
|
valueOptions = t9;
|
|
142
154
|
} else {
|
|
@@ -146,30 +158,30 @@ export const Condition = props => {
|
|
|
146
158
|
}
|
|
147
159
|
const disabled = !fieldOption?.value && typeof fieldOption?.value !== "number" || fieldOption?.field?.admin?.disableListFilter;
|
|
148
160
|
let t5;
|
|
149
|
-
if ($[
|
|
161
|
+
if ($[34] !== options) {
|
|
150
162
|
t5 = field_0 => {
|
|
151
163
|
setFieldOption(options.find(f => f.value === field_0.value));
|
|
152
164
|
setInternalOperatorOption(undefined);
|
|
153
165
|
setInternalQueryValue(undefined);
|
|
154
166
|
};
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
167
|
+
$[34] = options;
|
|
168
|
+
$[35] = t5;
|
|
157
169
|
} else {
|
|
158
|
-
t5 = $[
|
|
170
|
+
t5 = $[35];
|
|
159
171
|
}
|
|
160
172
|
let t6;
|
|
161
|
-
if ($[
|
|
173
|
+
if ($[36] !== RenderedFilter || $[37] !== addCondition || $[38] !== andIndex || $[39] !== booleanSelect || $[40] !== disabled || $[41] !== fieldOption || $[42] !== internalOperatorOption || $[43] !== internalQueryValue || $[44] !== options || $[45] !== orIndex || $[46] !== removeCondition || $[47] !== t5 || $[48] !== valueOptions) {
|
|
162
174
|
let t7;
|
|
163
|
-
if ($[
|
|
175
|
+
if ($[50] === Symbol.for("react.memo_cache_sentinel")) {
|
|
164
176
|
t7 = operator_0 => {
|
|
165
177
|
setInternalOperatorOption(operator_0.value);
|
|
166
178
|
};
|
|
167
|
-
$[
|
|
179
|
+
$[50] = t7;
|
|
168
180
|
} else {
|
|
169
|
-
t7 = $[
|
|
181
|
+
t7 = $[50];
|
|
170
182
|
}
|
|
171
183
|
let t8;
|
|
172
|
-
if ($[
|
|
184
|
+
if ($[51] !== RenderedFilter || $[52] !== booleanSelect || $[53] !== fieldOption || $[54] !== internalOperatorOption || $[55] !== internalQueryValue || $[56] !== valueOptions) {
|
|
173
185
|
t8 = RenderedFilter || _jsx(DefaultFilter, {
|
|
174
186
|
booleanSelect,
|
|
175
187
|
disabled: !internalOperatorOption || !fieldOption || fieldOption?.field?.admin?.disableListFilter,
|
|
@@ -179,44 +191,44 @@ export const Condition = props => {
|
|
|
179
191
|
options: valueOptions,
|
|
180
192
|
value: internalQueryValue ?? ""
|
|
181
193
|
});
|
|
182
|
-
$[
|
|
183
|
-
$[
|
|
184
|
-
$[
|
|
185
|
-
$[
|
|
186
|
-
$[
|
|
187
|
-
$[
|
|
188
|
-
$[
|
|
194
|
+
$[51] = RenderedFilter;
|
|
195
|
+
$[52] = booleanSelect;
|
|
196
|
+
$[53] = fieldOption;
|
|
197
|
+
$[54] = internalOperatorOption;
|
|
198
|
+
$[55] = internalQueryValue;
|
|
199
|
+
$[56] = valueOptions;
|
|
200
|
+
$[57] = t8;
|
|
189
201
|
} else {
|
|
190
|
-
t8 = $[
|
|
202
|
+
t8 = $[57];
|
|
191
203
|
}
|
|
192
204
|
let t9;
|
|
193
|
-
if ($[
|
|
205
|
+
if ($[58] !== andIndex || $[59] !== orIndex || $[60] !== removeCondition) {
|
|
194
206
|
t9 = () => removeCondition({
|
|
195
207
|
andIndex,
|
|
196
208
|
orIndex
|
|
197
209
|
});
|
|
198
|
-
$[
|
|
199
|
-
$[
|
|
200
|
-
$[
|
|
201
|
-
$[
|
|
210
|
+
$[58] = andIndex;
|
|
211
|
+
$[59] = orIndex;
|
|
212
|
+
$[60] = removeCondition;
|
|
213
|
+
$[61] = t9;
|
|
202
214
|
} else {
|
|
203
|
-
t9 = $[
|
|
215
|
+
t9 = $[61];
|
|
204
216
|
}
|
|
205
217
|
let t10;
|
|
206
|
-
if ($[
|
|
218
|
+
if ($[62] !== addCondition || $[63] !== andIndex || $[64] !== options || $[65] !== orIndex) {
|
|
207
219
|
t10 = () => addCondition({
|
|
208
220
|
andIndex: andIndex + 1,
|
|
209
221
|
fieldName: options.find(_temp2).value,
|
|
210
222
|
orIndex,
|
|
211
223
|
relation: "and"
|
|
212
224
|
});
|
|
213
|
-
$[
|
|
214
|
-
$[
|
|
215
|
-
$[
|
|
216
|
-
$[
|
|
217
|
-
$[
|
|
225
|
+
$[62] = addCondition;
|
|
226
|
+
$[63] = andIndex;
|
|
227
|
+
$[64] = options;
|
|
228
|
+
$[65] = orIndex;
|
|
229
|
+
$[66] = t10;
|
|
218
230
|
} else {
|
|
219
|
-
t10 = $[
|
|
231
|
+
t10 = $[66];
|
|
220
232
|
}
|
|
221
233
|
t6 = _jsx("div", {
|
|
222
234
|
className: baseClass,
|
|
@@ -268,22 +280,22 @@ export const Condition = props => {
|
|
|
268
280
|
})]
|
|
269
281
|
})
|
|
270
282
|
});
|
|
271
|
-
$[
|
|
272
|
-
$[
|
|
273
|
-
$[
|
|
274
|
-
$[
|
|
275
|
-
$[
|
|
276
|
-
$[
|
|
277
|
-
$[
|
|
278
|
-
$[
|
|
279
|
-
$[
|
|
280
|
-
$[
|
|
281
|
-
$[
|
|
282
|
-
$[
|
|
283
|
-
$[
|
|
284
|
-
$[
|
|
283
|
+
$[36] = RenderedFilter;
|
|
284
|
+
$[37] = addCondition;
|
|
285
|
+
$[38] = andIndex;
|
|
286
|
+
$[39] = booleanSelect;
|
|
287
|
+
$[40] = disabled;
|
|
288
|
+
$[41] = fieldOption;
|
|
289
|
+
$[42] = internalOperatorOption;
|
|
290
|
+
$[43] = internalQueryValue;
|
|
291
|
+
$[44] = options;
|
|
292
|
+
$[45] = orIndex;
|
|
293
|
+
$[46] = removeCondition;
|
|
294
|
+
$[47] = t5;
|
|
295
|
+
$[48] = valueOptions;
|
|
296
|
+
$[49] = t6;
|
|
285
297
|
} else {
|
|
286
|
-
t6 = $[
|
|
298
|
+
t6 = $[49];
|
|
287
299
|
}
|
|
288
300
|
return t6;
|
|
289
301
|
};
|