@payloadcms/ui 3.0.0-alpha.40 → 3.0.0-alpha.42
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/@types/assets.d.js +1 -1
- package/dist/@types/assets.d.js.map +1 -0
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -0
- package/dist/elements/ArrayAction/index.js +1 -2
- package/dist/elements/ArrayAction/index.js.map +1 -0
- package/dist/elements/ArrayAction/types.js +1 -1
- package/dist/elements/ArrayAction/types.js.map +1 -0
- package/dist/elements/Autosave/index.js +1 -2
- package/dist/elements/Autosave/index.js.map +1 -0
- package/dist/elements/Autosave/types.js +1 -1
- package/dist/elements/Autosave/types.js.map +1 -0
- package/dist/elements/Banner/index.js +1 -2
- package/dist/elements/Banner/index.js.map +1 -0
- package/dist/elements/Banner/types.js +1 -1
- package/dist/elements/Banner/types.js.map +1 -0
- package/dist/elements/Button/index.js +1 -2
- package/dist/elements/Button/index.js.map +1 -0
- package/dist/elements/Button/types.js +1 -1
- package/dist/elements/Button/types.js.map +1 -0
- package/dist/elements/Card/index.js +1 -2
- package/dist/elements/Card/index.js.map +1 -0
- package/dist/elements/Card/types.js +1 -1
- package/dist/elements/Card/types.js.map +1 -0
- package/dist/elements/CodeEditor/CodeEditor.js +1 -2
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -0
- package/dist/elements/CodeEditor/index.js +1 -1
- package/dist/elements/CodeEditor/index.js.map +1 -0
- package/dist/elements/CodeEditor/types.js +1 -1
- package/dist/elements/CodeEditor/types.js.map +1 -0
- package/dist/elements/Collapsible/index.js +1 -2
- package/dist/elements/Collapsible/index.js.map +1 -0
- package/dist/elements/Collapsible/provider.js +1 -1
- package/dist/elements/Collapsible/provider.js.map +1 -0
- package/dist/elements/Collapsible/types.js +1 -1
- package/dist/elements/Collapsible/types.js.map +1 -0
- package/dist/elements/ColumnSelector/index.js +1 -2
- package/dist/elements/ColumnSelector/index.js.map +1 -0
- package/dist/elements/ColumnSelector/types.js +1 -1
- package/dist/elements/ColumnSelector/types.js.map +1 -0
- package/dist/elements/CopyToClipboard/index.js +1 -2
- package/dist/elements/CopyToClipboard/index.js.map +1 -0
- package/dist/elements/CopyToClipboard/types.js +1 -1
- package/dist/elements/CopyToClipboard/types.js.map +1 -0
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +5 -11
- package/dist/elements/DatePicker/DatePicker.js.map +1 -0
- package/dist/elements/DatePicker/index.d.ts +1 -2
- package/dist/elements/DatePicker/index.d.ts.map +1 -1
- package/dist/elements/DatePicker/index.js +2 -3
- package/dist/elements/DatePicker/index.js.map +1 -0
- package/dist/elements/DatePicker/index.scss +3 -0
- package/dist/elements/DatePicker/types.js +1 -1
- package/dist/elements/DatePicker/types.js.map +1 -0
- package/dist/elements/DeleteDocument/index.js +1 -2
- package/dist/elements/DeleteDocument/index.js.map +1 -0
- package/dist/elements/DeleteDocument/types.js +1 -1
- package/dist/elements/DeleteDocument/types.js.map +1 -0
- package/dist/elements/DeleteMany/index.js +1 -2
- package/dist/elements/DeleteMany/index.js.map +1 -0
- package/dist/elements/DeleteMany/types.js +1 -1
- package/dist/elements/DeleteMany/types.js.map +1 -0
- package/dist/elements/DocumentControls/index.js +1 -2
- package/dist/elements/DocumentControls/index.js.map +1 -0
- package/dist/elements/DocumentDrawer/DrawerContent.js +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -0
- package/dist/elements/DocumentDrawer/index.js +1 -2
- package/dist/elements/DocumentDrawer/index.js.map +1 -0
- package/dist/elements/DocumentDrawer/types.js +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -0
- package/dist/elements/DocumentFields/index.js +1 -2
- package/dist/elements/DocumentFields/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +1 -2
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/index.js +1 -2
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/index.js +1 -2
- package/dist/elements/DocumentHeader/index.js.map +1 -0
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -0
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -0
- package/dist/elements/DraggableSortable/index.js +1 -1
- package/dist/elements/DraggableSortable/index.js.map +1 -0
- package/dist/elements/DraggableSortable/types.js +1 -1
- package/dist/elements/DraggableSortable/types.js.map +1 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/types.js +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -0
- package/dist/elements/Drawer/index.js +1 -2
- package/dist/elements/Drawer/index.js.map +1 -0
- package/dist/elements/Drawer/types.js +1 -1
- package/dist/elements/Drawer/types.js.map +1 -0
- package/dist/elements/Drawer/useDrawerSlug.js +1 -1
- package/dist/elements/Drawer/useDrawerSlug.js.map +1 -0
- package/dist/elements/Dropzone/index.js +1 -2
- package/dist/elements/Dropzone/index.js.map +1 -0
- package/dist/elements/DuplicateDocument/index.js +1 -2
- package/dist/elements/DuplicateDocument/index.js.map +1 -0
- package/dist/elements/DuplicateDocument/types.js +1 -1
- package/dist/elements/DuplicateDocument/types.js.map +1 -0
- package/dist/elements/EditMany/index.js +1 -2
- package/dist/elements/EditMany/index.js.map +1 -0
- package/dist/elements/EditMany/types.js +1 -1
- package/dist/elements/EditMany/types.js.map +1 -0
- package/dist/elements/EditUpload/index.js +1 -3
- package/dist/elements/EditUpload/index.js.map +1 -0
- package/dist/elements/ErrorPill/index.js +1 -2
- package/dist/elements/ErrorPill/index.js.map +1 -0
- package/dist/elements/ErrorPill/types.js +1 -1
- package/dist/elements/ErrorPill/types.js.map +1 -0
- package/dist/elements/FieldSelect/index.js +1 -2
- package/dist/elements/FieldSelect/index.js.map +1 -0
- package/dist/elements/FileDetails/FileMeta/index.js +1 -2
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -0
- package/dist/elements/FileDetails/FileMeta/types.js +1 -1
- package/dist/elements/FileDetails/FileMeta/types.js.map +1 -0
- package/dist/elements/FileDetails/index.js +1 -2
- package/dist/elements/FileDetails/index.js.map +1 -0
- package/dist/elements/FileDetails/types.js +1 -1
- package/dist/elements/FileDetails/types.js.map +1 -0
- package/dist/elements/GenerateConfirmation/index.js +1 -2
- package/dist/elements/GenerateConfirmation/index.js.map +1 -0
- package/dist/elements/GenerateConfirmation/types.js +1 -1
- package/dist/elements/GenerateConfirmation/types.js.map +1 -0
- package/dist/elements/GetFilterOptions/index.js +1 -1
- package/dist/elements/GetFilterOptions/index.js.map +1 -0
- package/dist/elements/Gutter/index.js +1 -2
- package/dist/elements/Gutter/index.js.map +1 -0
- package/dist/elements/Hamburger/index.js +1 -2
- package/dist/elements/Hamburger/index.js.map +1 -0
- package/dist/elements/Header/index.js +1 -2
- package/dist/elements/Header/index.js.map +1 -0
- package/dist/elements/HydrateClientUser/index.js +1 -1
- package/dist/elements/HydrateClientUser/index.js.map +1 -0
- package/dist/elements/IDLabel/index.js +1 -2
- package/dist/elements/IDLabel/index.js.map +1 -0
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -0
- package/dist/elements/ListControls/index.js +1 -2
- package/dist/elements/ListControls/index.js.map +1 -0
- package/dist/elements/ListControls/types.js +1 -1
- package/dist/elements/ListControls/types.js.map +1 -0
- package/dist/elements/ListDrawer/DrawerContent.js +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -0
- package/dist/elements/ListDrawer/index.js +1 -2
- package/dist/elements/ListDrawer/index.js.map +1 -0
- package/dist/elements/ListDrawer/types.js +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -0
- package/dist/elements/ListSelection/index.js +1 -2
- package/dist/elements/ListSelection/index.js.map +1 -0
- package/dist/elements/Loading/index.js +1 -2
- package/dist/elements/Loading/index.js.map +1 -0
- package/dist/elements/LoadingOverlay/index.js +1 -1
- package/dist/elements/LoadingOverlay/index.js.map +1 -0
- package/dist/elements/LoadingOverlay/reducer.js +1 -1
- package/dist/elements/LoadingOverlay/reducer.js.map +1 -0
- package/dist/elements/LoadingOverlay/types.js +1 -1
- package/dist/elements/LoadingOverlay/types.js.map +1 -0
- package/dist/elements/Localizer/LocalizerLabel/index.js +1 -2
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -0
- package/dist/elements/Localizer/index.js +1 -2
- package/dist/elements/Localizer/index.js.map +1 -0
- package/dist/elements/Logout/index.js +1 -1
- package/dist/elements/Logout/index.js.map +1 -0
- package/dist/elements/Nav/NavHamburger/index.js +1 -1
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -0
- package/dist/elements/Nav/NavToggler/index.js +1 -2
- package/dist/elements/Nav/NavToggler/index.js.map +1 -0
- package/dist/elements/Nav/NavWrapper/index.js +1 -2
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -0
- package/dist/elements/Nav/context.js +1 -1
- package/dist/elements/Nav/context.js.map +1 -0
- package/dist/elements/Nav/index.js +1 -2
- package/dist/elements/Nav/index.js.map +1 -0
- package/dist/elements/NavGroup/index.js +1 -2
- package/dist/elements/NavGroup/index.js.map +1 -0
- package/dist/elements/Pagination/ClickableArrow/index.js +1 -2
- package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -0
- package/dist/elements/Pagination/ClickableArrow/types.js +1 -1
- package/dist/elements/Pagination/ClickableArrow/types.js.map +1 -0
- package/dist/elements/Pagination/Page/index.js +1 -1
- package/dist/elements/Pagination/Page/index.js.map +1 -0
- package/dist/elements/Pagination/Page/types.js +1 -1
- package/dist/elements/Pagination/Page/types.js.map +1 -0
- package/dist/elements/Pagination/Separator/index.js +1 -1
- package/dist/elements/Pagination/Separator/index.js.map +1 -0
- package/dist/elements/Pagination/index.js +1 -2
- package/dist/elements/Pagination/index.js.map +1 -0
- package/dist/elements/Pagination/types.js +1 -1
- package/dist/elements/Pagination/types.js.map +1 -0
- package/dist/elements/PerPage/index.js +1 -2
- package/dist/elements/PerPage/index.js.map +1 -0
- package/dist/elements/Pill/index.js +1 -2
- package/dist/elements/Pill/index.js.map +1 -0
- package/dist/elements/Pill/types.js +1 -1
- package/dist/elements/Pill/types.js.map +1 -0
- package/dist/elements/Popup/PopupButtonList/index.js +1 -2
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -0
- package/dist/elements/Popup/PopupTrigger/index.js +1 -2
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -0
- package/dist/elements/Popup/PopupTrigger/types.js +1 -1
- package/dist/elements/Popup/PopupTrigger/types.js.map +1 -0
- package/dist/elements/Popup/index.js +1 -2
- package/dist/elements/Popup/index.js.map +1 -0
- package/dist/elements/Popup/types.js +1 -1
- package/dist/elements/Popup/types.js.map +1 -0
- package/dist/elements/PreviewButton/index.js +1 -1
- package/dist/elements/PreviewButton/index.js.map +1 -0
- package/dist/elements/PreviewSizes/index.js +1 -2
- package/dist/elements/PreviewSizes/index.js.map +1 -0
- package/dist/elements/Publish/index.js +1 -1
- package/dist/elements/Publish/index.js.map +1 -0
- package/dist/elements/PublishMany/index.js +1 -2
- package/dist/elements/PublishMany/index.js.map +1 -0
- package/dist/elements/PublishMany/types.js +1 -1
- package/dist/elements/PublishMany/types.js.map +1 -0
- package/dist/elements/ReactSelect/ClearIndicator/index.js +1 -2
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -0
- package/dist/elements/ReactSelect/Control/index.js +1 -1
- package/dist/elements/ReactSelect/Control/index.js.map +1 -0
- package/dist/elements/ReactSelect/MultiValue/index.js +1 -2
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -0
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +1 -2
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -0
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +1 -2
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -0
- package/dist/elements/ReactSelect/SingleValue/index.js +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -0
- package/dist/elements/ReactSelect/ValueContainer/index.js +1 -2
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -0
- package/dist/elements/ReactSelect/index.js +1 -2
- package/dist/elements/ReactSelect/index.js.map +1 -0
- package/dist/elements/ReactSelect/types.js +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -0
- package/dist/elements/RenderCustomComponent/index.js +1 -1
- package/dist/elements/RenderCustomComponent/index.js.map +1 -0
- package/dist/elements/RenderCustomComponent/types.js +1 -1
- package/dist/elements/RenderCustomComponent/types.js.map +1 -0
- package/dist/elements/RenderTitle/index.js +1 -2
- package/dist/elements/RenderTitle/index.js.map +1 -0
- package/dist/elements/RenderTitle/types.js +1 -1
- package/dist/elements/RenderTitle/types.js.map +1 -0
- package/dist/elements/Save/index.js +1 -1
- package/dist/elements/Save/index.js.map +1 -0
- package/dist/elements/SaveDraft/index.js +1 -1
- package/dist/elements/SaveDraft/index.js.map +1 -0
- package/dist/elements/SearchFilter/index.js +1 -2
- package/dist/elements/SearchFilter/index.js.map +1 -0
- package/dist/elements/SearchFilter/types.js +1 -1
- package/dist/elements/SearchFilter/types.js.map +1 -0
- package/dist/elements/SelectAll/index.js +1 -2
- package/dist/elements/SelectAll/index.js.map +1 -0
- package/dist/elements/SelectRow/index.js +1 -2
- package/dist/elements/SelectRow/index.js.map +1 -0
- package/dist/elements/ShimmerEffect/index.js +1 -2
- package/dist/elements/ShimmerEffect/index.js.map +1 -0
- package/dist/elements/SortColumn/index.js +1 -2
- package/dist/elements/SortColumn/index.js.map +1 -0
- package/dist/elements/SortColumn/types.js +1 -1
- package/dist/elements/SortColumn/types.js.map +1 -0
- package/dist/elements/SortComplex/index.js +1 -2
- package/dist/elements/SortComplex/index.js.map +1 -0
- package/dist/elements/SortComplex/types.js +1 -1
- package/dist/elements/SortComplex/types.js.map +1 -0
- package/dist/elements/Status/index.js +1 -2
- package/dist/elements/Status/index.js.map +1 -0
- package/dist/elements/StayLoggedIn/index.js +1 -2
- package/dist/elements/StayLoggedIn/index.js.map +1 -0
- package/dist/elements/StayLoggedIn/types.js +1 -1
- package/dist/elements/StayLoggedIn/types.js.map +1 -0
- package/dist/elements/StepNav/SetStepNav.js +1 -1
- package/dist/elements/StepNav/SetStepNav.js.map +1 -0
- package/dist/elements/StepNav/index.js +1 -2
- package/dist/elements/StepNav/index.js.map +1 -0
- package/dist/elements/StepNav/types.js +1 -1
- package/dist/elements/StepNav/types.js.map +1 -0
- package/dist/elements/Table/TableCellProvider/index.js +1 -1
- package/dist/elements/Table/TableCellProvider/index.js.map +1 -0
- package/dist/elements/Table/index.js +1 -2
- package/dist/elements/Table/index.js.map +1 -0
- package/dist/elements/Table/types.js +1 -1
- package/dist/elements/Table/types.js.map +1 -0
- package/dist/elements/TableColumns/buildColumns.js +1 -1
- package/dist/elements/TableColumns/buildColumns.js.map +1 -0
- package/dist/elements/TableColumns/columnReducer.js +1 -1
- package/dist/elements/TableColumns/columnReducer.js.map +1 -0
- package/dist/elements/TableColumns/index.js +1 -1
- package/dist/elements/TableColumns/index.js.map +1 -0
- package/dist/elements/Thumbnail/index.js +1 -2
- package/dist/elements/Thumbnail/index.js.map +1 -0
- package/dist/elements/Thumbnail/types.js +1 -1
- package/dist/elements/Thumbnail/types.js.map +1 -0
- package/dist/elements/ThumbnailCard/index.js +1 -2
- package/dist/elements/ThumbnailCard/index.js.map +1 -0
- package/dist/elements/ThumbnailCard/types.js +1 -1
- package/dist/elements/ThumbnailCard/types.js.map +1 -0
- package/dist/elements/Tooltip/index.js +1 -2
- package/dist/elements/Tooltip/index.js.map +1 -0
- package/dist/elements/Tooltip/types.js +1 -1
- package/dist/elements/Tooltip/types.js.map +1 -0
- package/dist/elements/Translation/index.js +1 -1
- package/dist/elements/Translation/index.js.map +1 -0
- package/dist/elements/UnpublishMany/index.js +1 -2
- package/dist/elements/UnpublishMany/index.js.map +1 -0
- package/dist/elements/UnpublishMany/types.js +1 -1
- package/dist/elements/UnpublishMany/types.js.map +1 -0
- package/dist/elements/Upload/index.js +1 -2
- package/dist/elements/Upload/index.js.map +1 -0
- package/dist/elements/Upload/types.js +1 -1
- package/dist/elements/Upload/types.js.map +1 -0
- package/dist/elements/ViewDescription/index.js +1 -2
- package/dist/elements/ViewDescription/index.js.map +1 -0
- package/dist/elements/ViewDescription/types.js +1 -1
- package/dist/elements/ViewDescription/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Date/index.d.ts +1 -2
- package/dist/elements/WhereBuilder/Condition/Date/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js +4 -5
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Number/index.js +1 -2
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +1 -2
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Select/index.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/index.js +3 -4
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/types.js +1 -1
- package/dist/elements/WhereBuilder/Condition/types.js.map +1 -0
- package/dist/elements/WhereBuilder/field-types.js +1 -1
- package/dist/elements/WhereBuilder/field-types.js.map +1 -0
- package/dist/elements/WhereBuilder/index.js +1 -2
- package/dist/elements/WhereBuilder/index.js.map +1 -0
- package/dist/elements/WhereBuilder/reducer.js +1 -1
- package/dist/elements/WhereBuilder/reducer.js.map +1 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js +1 -1
- package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -0
- package/dist/elements/WhereBuilder/types.js +1 -1
- package/dist/elements/WhereBuilder/types.js.map +1 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js +1 -1
- package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -0
- package/dist/exports/assets.js +1 -1
- package/dist/exports/assets.js.map +1 -0
- package/dist/exports/elements.js +1 -1
- package/dist/exports/elements.js.map +1 -0
- package/dist/exports/forms.js +1 -1
- package/dist/exports/forms.js.map +1 -0
- package/dist/exports/graphics.js +1 -1
- package/dist/exports/graphics.js.map +1 -0
- package/dist/exports/hooks.js +1 -1
- package/dist/exports/hooks.js.map +1 -0
- package/dist/exports/icons.js +1 -1
- package/dist/exports/icons.js.map +1 -0
- package/dist/exports/index.js +1 -1
- package/dist/exports/index.js.map +1 -0
- package/dist/exports/providers.js +1 -1
- package/dist/exports/providers.js.map +1 -0
- package/dist/exports/templates.js +1 -1
- package/dist/exports/templates.js.map +1 -0
- package/dist/exports/types.js +1 -1
- package/dist/exports/types.js.map +1 -0
- package/dist/exports/utilities.js +1 -1
- package/dist/exports/utilities.js.map +1 -0
- package/dist/forms/Error/index.js +1 -2
- package/dist/forms/Error/index.js.map +1 -0
- package/dist/forms/FieldDescription/index.js +1 -2
- package/dist/forms/FieldDescription/index.js.map +1 -0
- package/dist/forms/FieldDescription/types.js +1 -1
- package/dist/forms/FieldDescription/types.js.map +1 -0
- package/dist/forms/FieldPathProvider/index.js +1 -1
- package/dist/forms/FieldPathProvider/index.js.map +1 -0
- package/dist/forms/Form/buildFieldSchemaMap.js +1 -1
- package/dist/forms/Form/buildFieldSchemaMap.js.map +1 -0
- package/dist/forms/Form/context.js +1 -1
- package/dist/forms/Form/context.js.map +1 -0
- package/dist/forms/Form/createNestedFieldPath.js +1 -1
- package/dist/forms/Form/createNestedFieldPath.js.map +1 -0
- package/dist/forms/Form/errorMessages.js +1 -1
- package/dist/forms/Form/errorMessages.js.map +1 -0
- package/dist/forms/Form/fieldReducer.js +1 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -0
- package/dist/forms/Form/getDataByPath.js +1 -1
- package/dist/forms/Form/getDataByPath.js.map +1 -0
- package/dist/forms/Form/getSiblingData.js +1 -1
- package/dist/forms/Form/getSiblingData.js.map +1 -0
- package/dist/forms/Form/index.js +1 -1
- package/dist/forms/Form/index.js.map +1 -0
- package/dist/forms/Form/initContextState.js +1 -1
- package/dist/forms/Form/initContextState.js.map +1 -0
- package/dist/forms/Form/mergeServerFormState.js +1 -1
- package/dist/forms/Form/mergeServerFormState.js.map +1 -0
- package/dist/forms/Form/reduceFieldsToValues.js +1 -1
- package/dist/forms/Form/reduceFieldsToValues.js.map +1 -0
- package/dist/forms/Form/rows.js +1 -1
- package/dist/forms/Form/rows.js.map +1 -0
- package/dist/forms/Form/types.js +1 -1
- package/dist/forms/Form/types.js.map +1 -0
- package/dist/forms/Label/index.js +1 -2
- package/dist/forms/Label/index.js.map +1 -0
- package/dist/forms/NullifyField/index.js +1 -1
- package/dist/forms/NullifyField/index.js.map +1 -0
- package/dist/forms/ReadOnlyProvider/index.js +1 -1
- package/dist/forms/ReadOnlyProvider/index.js.map +1 -0
- package/dist/forms/RenderFields/RenderField.js +1 -1
- package/dist/forms/RenderFields/RenderField.js.map +1 -0
- package/dist/forms/RenderFields/index.js +1 -2
- package/dist/forms/RenderFields/index.js.map +1 -0
- package/dist/forms/RenderFields/types.js +1 -1
- package/dist/forms/RenderFields/types.js.map +1 -0
- package/dist/forms/RowLabel/index.js +1 -1
- package/dist/forms/RowLabel/index.js.map +1 -0
- package/dist/forms/RowLabel/types.js +1 -1
- package/dist/forms/RowLabel/types.js.map +1 -0
- package/dist/forms/Submit/index.js +1 -2
- package/dist/forms/Submit/index.js.map +1 -0
- package/dist/forms/WatchChildErrors/buildPathSegments.js +1 -1
- package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -0
- package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js +1 -1
- package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js.map +1 -0
- package/dist/forms/WatchChildErrors/getNestedFieldState.js +1 -1
- package/dist/forms/WatchChildErrors/getNestedFieldState.js.map +1 -0
- package/dist/forms/WatchChildErrors/index.js +1 -1
- package/dist/forms/WatchChildErrors/index.js.map +1 -0
- package/dist/forms/fields/Array/ArrayRow.js +1 -2
- package/dist/forms/fields/Array/ArrayRow.js.map +1 -0
- package/dist/forms/fields/Array/index.js +1 -2
- package/dist/forms/fields/Array/index.js.map +1 -0
- package/dist/forms/fields/Array/types.js +1 -1
- package/dist/forms/fields/Array/types.js.map +1 -0
- package/dist/forms/fields/Blocks/BlockRow.js +1 -1
- package/dist/forms/fields/Blocks/BlockRow.js.map +1 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/BlockSearch/index.js +1 -2
- package/dist/forms/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/index.js +1 -2
- package/dist/forms/fields/Blocks/BlocksDrawer/index.js.map +1 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/types.js +1 -1
- package/dist/forms/fields/Blocks/BlocksDrawer/types.js.map +1 -0
- package/dist/forms/fields/Blocks/RowActions.js +1 -1
- package/dist/forms/fields/Blocks/RowActions.js.map +1 -0
- package/dist/forms/fields/Blocks/SectionTitle/index.js +1 -2
- package/dist/forms/fields/Blocks/SectionTitle/index.js.map +1 -0
- package/dist/forms/fields/Blocks/SectionTitle/types.js +1 -1
- package/dist/forms/fields/Blocks/SectionTitle/types.js.map +1 -0
- package/dist/forms/fields/Blocks/index.js +1 -2
- package/dist/forms/fields/Blocks/index.js.map +1 -0
- package/dist/forms/fields/Blocks/types.js +1 -1
- package/dist/forms/fields/Blocks/types.js.map +1 -0
- package/dist/forms/fields/Checkbox/Input.js +1 -1
- package/dist/forms/fields/Checkbox/Input.js.map +1 -0
- package/dist/forms/fields/Checkbox/index.js +1 -2
- package/dist/forms/fields/Checkbox/index.js.map +1 -0
- package/dist/forms/fields/Checkbox/types.js +1 -1
- package/dist/forms/fields/Checkbox/types.js.map +1 -0
- package/dist/forms/fields/Code/index.js +1 -2
- package/dist/forms/fields/Code/index.js.map +1 -0
- package/dist/forms/fields/Code/types.js +1 -1
- package/dist/forms/fields/Code/types.js.map +1 -0
- package/dist/forms/fields/Collapsible/index.js +1 -2
- package/dist/forms/fields/Collapsible/index.js.map +1 -0
- package/dist/forms/fields/Collapsible/types.js +1 -1
- package/dist/forms/fields/Collapsible/types.js.map +1 -0
- package/dist/forms/fields/ConfirmPassword/index.js +1 -2
- package/dist/forms/fields/ConfirmPassword/index.js.map +1 -0
- package/dist/forms/fields/ConfirmPassword/types.js +1 -1
- package/dist/forms/fields/ConfirmPassword/types.js.map +1 -0
- package/dist/forms/fields/DateTime/index.js +2 -3
- package/dist/forms/fields/DateTime/index.js.map +1 -0
- package/dist/forms/fields/DateTime/types.js +1 -1
- package/dist/forms/fields/DateTime/types.js.map +1 -0
- package/dist/forms/fields/Email/index.js +1 -2
- package/dist/forms/fields/Email/index.js.map +1 -0
- package/dist/forms/fields/Email/types.js +1 -1
- package/dist/forms/fields/Email/types.js.map +1 -0
- package/dist/forms/fields/Group/index.js +1 -2
- package/dist/forms/fields/Group/index.js.map +1 -0
- package/dist/forms/fields/Group/provider.js +1 -1
- package/dist/forms/fields/Group/provider.js.map +1 -0
- package/dist/forms/fields/Group/types.js +1 -1
- package/dist/forms/fields/Group/types.js.map +1 -0
- package/dist/forms/fields/HiddenInput/index.js +1 -1
- package/dist/forms/fields/HiddenInput/index.js.map +1 -0
- package/dist/forms/fields/HiddenInput/types.js +1 -1
- package/dist/forms/fields/HiddenInput/types.js.map +1 -0
- package/dist/forms/fields/JSON/index.js +1 -2
- package/dist/forms/fields/JSON/index.js.map +1 -0
- package/dist/forms/fields/JSON/types.js +1 -1
- package/dist/forms/fields/JSON/types.js.map +1 -0
- package/dist/forms/fields/Number/index.js +1 -2
- package/dist/forms/fields/Number/index.js.map +1 -0
- package/dist/forms/fields/Number/types.js +1 -1
- package/dist/forms/fields/Number/types.js.map +1 -0
- package/dist/forms/fields/Password/index.js +1 -2
- package/dist/forms/fields/Password/index.js.map +1 -0
- package/dist/forms/fields/Password/types.js +1 -1
- package/dist/forms/fields/Password/types.js.map +1 -0
- package/dist/forms/fields/Point/index.js +1 -2
- package/dist/forms/fields/Point/index.js.map +1 -0
- package/dist/forms/fields/Point/types.js +1 -1
- package/dist/forms/fields/Point/types.js.map +1 -0
- package/dist/forms/fields/RadioGroup/Radio/index.js +1 -2
- package/dist/forms/fields/RadioGroup/Radio/index.js.map +1 -0
- package/dist/forms/fields/RadioGroup/index.js +1 -2
- package/dist/forms/fields/RadioGroup/index.js.map +1 -0
- package/dist/forms/fields/RadioGroup/types.js +1 -1
- package/dist/forms/fields/RadioGroup/types.js.map +1 -0
- package/dist/forms/fields/Relationship/AddNew/index.js +1 -2
- package/dist/forms/fields/Relationship/AddNew/index.js.map +1 -0
- package/dist/forms/fields/Relationship/AddNew/types.js +1 -1
- package/dist/forms/fields/Relationship/AddNew/types.js.map +1 -0
- package/dist/forms/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
- package/dist/forms/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -0
- package/dist/forms/fields/Relationship/createRelationMap.js +1 -1
- package/dist/forms/fields/Relationship/createRelationMap.js.map +1 -0
- package/dist/forms/fields/Relationship/findOptionsByValue.js +1 -1
- package/dist/forms/fields/Relationship/findOptionsByValue.js.map +1 -0
- package/dist/forms/fields/Relationship/index.js +1 -2
- package/dist/forms/fields/Relationship/index.js.map +1 -0
- package/dist/forms/fields/Relationship/optionsReducer.js +1 -1
- package/dist/forms/fields/Relationship/optionsReducer.js.map +1 -0
- package/dist/forms/fields/Relationship/select-components/MultiValueLabel/index.js +1 -2
- package/dist/forms/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -0
- package/dist/forms/fields/Relationship/select-components/SingleValue/index.js +1 -2
- package/dist/forms/fields/Relationship/select-components/SingleValue/index.js.map +1 -0
- package/dist/forms/fields/Relationship/types.js +1 -1
- package/dist/forms/fields/Relationship/types.js.map +1 -0
- package/dist/forms/fields/RichText/index.js +1 -1
- package/dist/forms/fields/RichText/index.js.map +1 -0
- package/dist/forms/fields/RichText/types.js +1 -1
- package/dist/forms/fields/RichText/types.js.map +1 -0
- package/dist/forms/fields/Row/index.js +1 -2
- package/dist/forms/fields/Row/index.js.map +1 -0
- package/dist/forms/fields/Row/provider.js +1 -1
- package/dist/forms/fields/Row/provider.js.map +1 -0
- package/dist/forms/fields/Row/types.js +1 -1
- package/dist/forms/fields/Row/types.js.map +1 -0
- package/dist/forms/fields/Select/index.js +1 -2
- package/dist/forms/fields/Select/index.js.map +1 -0
- package/dist/forms/fields/Select/types.js +1 -1
- package/dist/forms/fields/Select/types.js.map +1 -0
- package/dist/forms/fields/Tabs/Tab/index.js +1 -2
- package/dist/forms/fields/Tabs/Tab/index.js.map +1 -0
- package/dist/forms/fields/Tabs/index.js +1 -2
- package/dist/forms/fields/Tabs/index.js.map +1 -0
- package/dist/forms/fields/Tabs/provider.js +1 -1
- package/dist/forms/fields/Tabs/provider.js.map +1 -0
- package/dist/forms/fields/Tabs/types.js +1 -1
- package/dist/forms/fields/Tabs/types.js.map +1 -0
- package/dist/forms/fields/Text/Input.js +1 -2
- package/dist/forms/fields/Text/Input.js.map +1 -0
- package/dist/forms/fields/Text/index.js +1 -2
- package/dist/forms/fields/Text/index.js.map +1 -0
- package/dist/forms/fields/Text/types.js +1 -1
- package/dist/forms/fields/Text/types.js.map +1 -0
- package/dist/forms/fields/Textarea/Input.js +1 -2
- package/dist/forms/fields/Textarea/Input.js.map +1 -0
- package/dist/forms/fields/Textarea/index.js +1 -2
- package/dist/forms/fields/Textarea/index.js.map +1 -0
- package/dist/forms/fields/Textarea/types.js +1 -1
- package/dist/forms/fields/Textarea/types.js.map +1 -0
- package/dist/forms/fields/UI/index.js +1 -1
- package/dist/forms/fields/UI/index.js.map +1 -0
- package/dist/forms/fields/Upload/Input.js +1 -2
- package/dist/forms/fields/Upload/Input.js.map +1 -0
- package/dist/forms/fields/Upload/index.js +1 -2
- package/dist/forms/fields/Upload/index.js.map +1 -0
- package/dist/forms/fields/Upload/types.js +1 -1
- package/dist/forms/fields/Upload/types.js.map +1 -0
- package/dist/forms/fields/getFilterOptionsQuery.js +1 -1
- package/dist/forms/fields/getFilterOptionsQuery.js.map +1 -0
- package/dist/forms/fields/index.js +1 -1
- package/dist/forms/fields/index.js.map +1 -0
- package/dist/forms/fields/shared.js +1 -1
- package/dist/forms/fields/shared.js.map +1 -0
- package/dist/forms/useField/index.js +1 -1
- package/dist/forms/useField/index.js.map +1 -0
- package/dist/forms/useField/types.js +1 -1
- package/dist/forms/useField/types.js.map +1 -0
- package/dist/forms/utilities/buildStateFromSchema/addFieldStatePromise.js +1 -1
- package/dist/forms/utilities/buildStateFromSchema/addFieldStatePromise.js.map +1 -0
- package/dist/forms/utilities/buildStateFromSchema/buildStateFromSchema.spec.js +1 -1
- package/dist/forms/utilities/buildStateFromSchema/buildStateFromSchema.spec.js.map +1 -0
- package/dist/forms/utilities/buildStateFromSchema/index.js +1 -1
- package/dist/forms/utilities/buildStateFromSchema/index.js.map +1 -0
- package/dist/forms/utilities/buildStateFromSchema/iterateFields.js +1 -1
- package/dist/forms/utilities/buildStateFromSchema/iterateFields.js.map +1 -0
- package/dist/forms/withCondition/WatchCondition.js +1 -1
- package/dist/forms/withCondition/WatchCondition.js.map +1 -0
- package/dist/forms/withCondition/index.js +1 -1
- package/dist/forms/withCondition/index.js.map +1 -0
- package/dist/graphics/Account/Default/index.js +1 -2
- package/dist/graphics/Account/Default/index.js.map +1 -0
- package/dist/graphics/Account/Gravatar/index.js +1 -1
- package/dist/graphics/Account/Gravatar/index.js.map +1 -0
- package/dist/graphics/Account/index.js +1 -1
- package/dist/graphics/Account/index.js.map +1 -0
- package/dist/graphics/DefaultBlockImage/index.js +1 -1
- package/dist/graphics/DefaultBlockImage/index.js.map +1 -0
- package/dist/graphics/ExternalLink/index.js +1 -1
- package/dist/graphics/ExternalLink/index.js.map +1 -0
- package/dist/graphics/File/index.js +1 -1
- package/dist/graphics/File/index.js.map +1 -0
- package/dist/graphics/Icon/index.js +1 -1
- package/dist/graphics/Icon/index.js.map +1 -0
- package/dist/graphics/Logo/index.js +1 -1
- package/dist/graphics/Logo/index.js.map +1 -0
- package/dist/graphics/Search/index.js +1 -1
- package/dist/graphics/Search/index.js.map +1 -0
- package/dist/hooks/useAdminThumbnail.js +1 -1
- package/dist/hooks/useAdminThumbnail.js.map +1 -0
- package/dist/hooks/useDebounce.js +1 -1
- package/dist/hooks/useDebounce.js.map +1 -0
- package/dist/hooks/useDebouncedCallback.js +1 -1
- package/dist/hooks/useDebouncedCallback.js.map +1 -0
- package/dist/hooks/useDebouncedEffect.js +1 -1
- package/dist/hooks/useDebouncedEffect.js.map +1 -0
- package/dist/hooks/useDelay.js +1 -1
- package/dist/hooks/useDelay.js.map +1 -0
- package/dist/hooks/useDelayedRender.js +1 -1
- package/dist/hooks/useDelayedRender.js.map +1 -0
- package/dist/hooks/useHotkey.js +1 -1
- package/dist/hooks/useHotkey.js.map +1 -0
- package/dist/hooks/useIntersect.js +1 -1
- package/dist/hooks/useIntersect.js.map +1 -0
- package/dist/hooks/usePayloadAPI.js +1 -1
- package/dist/hooks/usePayloadAPI.js.map +1 -0
- package/dist/hooks/useResize.js +1 -1
- package/dist/hooks/useResize.js.map +1 -0
- package/dist/hooks/useThrottledEffect.js +1 -1
- package/dist/hooks/useThrottledEffect.js.map +1 -0
- package/dist/hooks/useThumbnail.js +1 -1
- package/dist/hooks/useThumbnail.js.map +1 -0
- package/dist/hooks/useUseAsTitle.js +1 -1
- package/dist/hooks/useUseAsTitle.js.map +1 -0
- package/dist/icons/Calendar/index.js +1 -2
- package/dist/icons/Calendar/index.js.map +1 -0
- package/dist/icons/Check/index.js +1 -2
- package/dist/icons/Check/index.js.map +1 -0
- package/dist/icons/Chevron/index.js +1 -2
- package/dist/icons/Chevron/index.js.map +1 -0
- package/dist/icons/CloseMenu/index.js +1 -2
- package/dist/icons/CloseMenu/index.js.map +1 -0
- package/dist/icons/CodeBlock/index.js +1 -1
- package/dist/icons/CodeBlock/index.js.map +1 -0
- package/dist/icons/Copy/index.js +1 -2
- package/dist/icons/Copy/index.js.map +1 -0
- package/dist/icons/DragHandle/index.js +1 -2
- package/dist/icons/DragHandle/index.js.map +1 -0
- package/dist/icons/Edit/index.js +1 -2
- package/dist/icons/Edit/index.js.map +1 -0
- package/dist/icons/Line/index.js +1 -2
- package/dist/icons/Line/index.js.map +1 -0
- package/dist/icons/Link/index.js +1 -2
- package/dist/icons/Link/index.js.map +1 -0
- package/dist/icons/LogOut/index.js +1 -2
- package/dist/icons/LogOut/index.js.map +1 -0
- package/dist/icons/Menu/index.js +1 -2
- package/dist/icons/Menu/index.js.map +1 -0
- package/dist/icons/MinimizeMaximize/index.js +1 -1
- package/dist/icons/MinimizeMaximize/index.js.map +1 -0
- package/dist/icons/More/index.js +1 -2
- package/dist/icons/More/index.js.map +1 -0
- package/dist/icons/Plus/index.js +1 -2
- package/dist/icons/Plus/index.js.map +1 -0
- package/dist/icons/Search/index.js +1 -2
- package/dist/icons/Search/index.js.map +1 -0
- package/dist/icons/Swap/index.js +1 -2
- package/dist/icons/Swap/index.js.map +1 -0
- package/dist/icons/X/index.js +1 -2
- package/dist/icons/X/index.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -0
- package/dist/prod/styles.css +1 -0
- package/dist/providers/ActionsProvider/SetViewActions/index.js +1 -1
- package/dist/providers/ActionsProvider/SetViewActions/index.js.map +1 -0
- package/dist/providers/ActionsProvider/index.js +1 -1
- package/dist/providers/ActionsProvider/index.js.map +1 -0
- package/dist/providers/Auth/index.js +1 -1
- package/dist/providers/Auth/index.js.map +1 -0
- package/dist/providers/Auth/types.js +1 -1
- package/dist/providers/Auth/types.js.map +1 -0
- package/dist/providers/ClientFunction/index.js +1 -1
- package/dist/providers/ClientFunction/index.js.map +1 -0
- package/dist/providers/ComponentMapProvider/index.js +1 -1
- package/dist/providers/ComponentMapProvider/index.js.map +1 -0
- package/dist/providers/Config/index.js +1 -1
- package/dist/providers/Config/index.js.map +1 -0
- package/dist/providers/DocumentEvents/index.js +1 -1
- package/dist/providers/DocumentEvents/index.js.map +1 -0
- package/dist/providers/DocumentEvents/types.js +1 -1
- package/dist/providers/DocumentEvents/types.js.map +1 -0
- package/dist/providers/DocumentInfo/index.js +1 -1
- package/dist/providers/DocumentInfo/index.js.map +1 -0
- package/dist/providers/DocumentInfo/types.js +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -0
- package/dist/providers/EditDepth/index.js +1 -1
- package/dist/providers/EditDepth/index.js.map +1 -0
- package/dist/providers/FormQueryParams/index.js +1 -1
- package/dist/providers/FormQueryParams/index.js.map +1 -0
- package/dist/providers/FormQueryParams/types.js +1 -1
- package/dist/providers/FormQueryParams/types.js.map +1 -0
- package/dist/providers/ListInfo/index.js +1 -1
- package/dist/providers/ListInfo/index.js.map +1 -0
- package/dist/providers/ListInfo/types.js +1 -1
- package/dist/providers/ListInfo/types.js.map +1 -0
- package/dist/providers/Locale/index.js +1 -1
- package/dist/providers/Locale/index.js.map +1 -0
- package/dist/providers/OperationProvider/index.js +1 -1
- package/dist/providers/OperationProvider/index.js.map +1 -0
- package/dist/providers/Params/index.js +1 -1
- package/dist/providers/Params/index.js.map +1 -0
- package/dist/providers/Portal/index.js +1 -1
- package/dist/providers/Portal/index.js.map +1 -0
- package/dist/providers/Preferences/index.js +1 -1
- package/dist/providers/Preferences/index.js.map +1 -0
- package/dist/providers/Root/index.js +1 -1
- package/dist/providers/Root/index.js.map +1 -0
- package/dist/providers/SearchParams/index.js +1 -1
- package/dist/providers/SearchParams/index.js.map +1 -0
- package/dist/providers/SearchParams/types.js +1 -1
- package/dist/providers/SearchParams/types.js.map +1 -0
- package/dist/providers/SelectionProvider/index.js +1 -1
- package/dist/providers/SelectionProvider/index.js.map +1 -0
- package/dist/providers/Theme/index.js +1 -1
- package/dist/providers/Theme/index.js.map +1 -0
- package/dist/providers/Theme/types.js +1 -1
- package/dist/providers/Theme/types.js.map +1 -0
- package/dist/providers/Theme/utilities.js +1 -1
- package/dist/providers/Theme/utilities.js.map +1 -0
- package/dist/providers/Translation/index.js +1 -1
- package/dist/providers/Translation/index.js.map +1 -0
- package/dist/templates/Default/NavHamburger/index.js +1 -1
- package/dist/templates/Default/NavHamburger/index.js.map +1 -0
- package/dist/templates/Default/Wrapper/index.js +1 -2
- package/dist/templates/Default/Wrapper/index.js.map +1 -0
- package/dist/templates/Default/index.js +1 -2
- package/dist/templates/Default/index.js.map +1 -0
- package/dist/templates/Default/types.js +1 -1
- package/dist/templates/Default/types.js.map +1 -0
- package/dist/templates/Minimal/index.js +1 -2
- package/dist/templates/Minimal/index.js.map +1 -0
- package/dist/templates/Minimal/types.js +1 -1
- package/dist/templates/Minimal/types.js.map +1 -0
- package/dist/utilities/api.js +1 -1
- package/dist/utilities/api.js.map +1 -0
- package/dist/utilities/arraysHaveSameStrings.js +1 -1
- package/dist/utilities/arraysHaveSameStrings.js.map +1 -0
- package/dist/utilities/buildComponentMap/index.js +1 -1
- package/dist/utilities/buildComponentMap/index.js.map +1 -0
- package/dist/utilities/buildComponentMap/mapActions.js +1 -1
- package/dist/utilities/buildComponentMap/mapActions.js.map +1 -0
- package/dist/utilities/buildComponentMap/mapFields.d.ts.map +1 -1
- package/dist/utilities/buildComponentMap/mapFields.js +2 -1
- package/dist/utilities/buildComponentMap/mapFields.js.map +1 -0
- package/dist/utilities/buildComponentMap/types.js +1 -1
- package/dist/utilities/buildComponentMap/types.js.map +1 -0
- package/dist/utilities/buildFieldSchemaMap/index.js +1 -1
- package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -0
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -0
- package/dist/utilities/buildFieldSchemaMap/types.js +1 -1
- package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -0
- package/dist/utilities/canUseDOM.js +1 -1
- package/dist/utilities/canUseDOM.js.map +1 -0
- package/dist/utilities/findLocaleFromCode.js +1 -1
- package/dist/utilities/findLocaleFromCode.js.map +1 -0
- package/dist/utilities/formatDate/getSupportedDateLocale.js +1 -1
- package/dist/utilities/formatDate/getSupportedDateLocale.js.map +1 -0
- package/dist/utilities/formatDate/index.js +2 -2
- package/dist/utilities/formatDate/index.js.map +1 -0
- package/dist/utilities/formatDocTitle.js +1 -1
- package/dist/utilities/formatDocTitle.js.map +1 -0
- package/dist/utilities/formatFields.js +1 -1
- package/dist/utilities/formatFields.js.map +1 -0
- package/dist/utilities/getFormState.js +1 -1
- package/dist/utilities/getFormState.js.map +1 -0
- package/dist/utilities/getOffsetTop.js +1 -1
- package/dist/utilities/getOffsetTop.js.map +1 -0
- package/dist/utilities/getRequestLanguage.js +1 -1
- package/dist/utilities/getRequestLanguage.js.map +1 -0
- package/dist/utilities/getSupportedMonacoLocale.js +1 -1
- package/dist/utilities/getSupportedMonacoLocale.js.map +1 -0
- package/dist/utilities/groupNavItems.js +1 -1
- package/dist/utilities/groupNavItems.js.map +1 -0
- package/dist/utilities/scrollToID.js +1 -1
- package/dist/utilities/scrollToID.js.map +1 -0
- package/dist/utilities/setsAreEqual.js +1 -1
- package/dist/utilities/setsAreEqual.js.map +1 -0
- package/dist/utilities/withMergedProps/index.js +1 -1
- package/dist/utilities/withMergedProps/index.js.map +1 -0
- package/package.json +25 -7
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
5
|
-
import './index.scss';
|
|
6
5
|
import { isComponent } from './types.js';
|
|
7
6
|
const ViewDescription = (props)=>{
|
|
8
7
|
const { i18n } = useTranslation();
|
|
@@ -20,4 +19,4 @@ const ViewDescription = (props)=>{
|
|
|
20
19
|
};
|
|
21
20
|
export default ViewDescription;
|
|
22
21
|
|
|
23
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ViewDescription/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\nimport { isComponent } from './types.js'\n\nconst ViewDescription: React.FC<Props> = (props) => {\n const { i18n } = useTranslation()\n const { description } = props\n\n if (isComponent(description)) {\n const Description = description\n return <Description />\n }\n\n if (description) {\n return (\n <div className=\"view-description\">\n {typeof description === 'function' ? description() : getTranslation(description, i18n)}\n </div>\n )\n }\n\n return null\n}\n\nexport default ViewDescription\n"],"names":["getTranslation","React","useTranslation","isComponent","ViewDescription","props","i18n","description","Description","div","className"],"mappings":"AAAA;AACA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,uCAAsC;AAErE,SAASC,WAAW,QAAQ,aAAY;AAExC,MAAMC,kBAAmC,CAACC;IACxC,MAAM,EAAEC,IAAI,EAAE,GAAGJ;IACjB,MAAM,EAAEK,WAAW,EAAE,GAAGF;IAExB,IAAIF,YAAYI,cAAc;QAC5B,MAAMC,cAAcD;QACpB,qBAAO,oBAACC;IACV;IAEA,IAAID,aAAa;QACf,qBACE,oBAACE;YAAIC,WAAU;WACZ,OAAOH,gBAAgB,aAAaA,gBAAgBP,eAAeO,aAAaD;IAGvF;IAEA,OAAO;AACT;AAEA,eAAeF,gBAAe"}
|
|
@@ -3,4 +3,4 @@ export function isComponent(description) {
|
|
|
3
3
|
return React.isValidElement(description);
|
|
4
4
|
}
|
|
5
5
|
|
|
6
|
-
//# sourceMappingURL=
|
|
6
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ViewDescription/types.ts"],"sourcesContent":["import React from 'react'\n\nexport type DescriptionFunction = () => string\n\nexport type DescriptionComponent = React.ComponentType<any>\n\ntype Description = DescriptionComponent | DescriptionFunction | Record<string, string> | string\n\nexport type Props = {\n description?: Description\n}\n\nexport function isComponent(description: Description): description is DescriptionComponent {\n return React.isValidElement(description)\n}\n"],"names":["React","isComponent","description","isValidElement"],"mappings":"AAAA,OAAOA,WAAW,QAAO;AAYzB,OAAO,SAASC,YAAYC,WAAwB;IAClD,OAAOF,MAAMG,cAAc,CAACD;AAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMvC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMvC,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAQrC,CAAA"}
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
2
|
+
import { DatePickerField } from '../../../DatePicker/index.js';
|
|
3
3
|
const baseClass = 'condition-value-date';
|
|
4
|
-
const DateField = ({ admin, disabled, onChange, value })=>{
|
|
4
|
+
export const DateField = ({ admin, disabled, onChange, value })=>{
|
|
5
5
|
const { date } = admin || {};
|
|
6
6
|
return /*#__PURE__*/ React.createElement("div", {
|
|
7
7
|
className: baseClass
|
|
8
|
-
}, /*#__PURE__*/ React.createElement(
|
|
8
|
+
}, /*#__PURE__*/ React.createElement(DatePickerField, {
|
|
9
9
|
...date,
|
|
10
10
|
onChange: onChange,
|
|
11
11
|
readOnly: disabled,
|
|
12
12
|
value: value
|
|
13
13
|
}));
|
|
14
14
|
};
|
|
15
|
-
export default DateField;
|
|
16
15
|
|
|
17
|
-
//# sourceMappingURL=
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { DatePickerField } from '../../../DatePicker/index.js'\n\nconst baseClass = 'condition-value-date'\n\nexport const DateField: React.FC<Props> = ({ admin, disabled, onChange, value }) => {\n const { date } = admin || {}\n\n return (\n <div className={baseClass}>\n <DatePickerField {...date} onChange={onChange} readOnly={disabled} value={value} />\n </div>\n )\n}\n"],"names":["React","DatePickerField","baseClass","DateField","admin","disabled","onChange","value","date","div","className","readOnly"],"mappings":"AAAA,OAAOA,WAAW,QAAO;AAIzB,SAASC,eAAe,QAAQ,+BAA8B;AAE9D,MAAMC,YAAY;AAElB,OAAO,MAAMC,YAA6B,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,KAAK,EAAE;IAC7E,MAAM,EAAEC,IAAI,EAAE,GAAGJ,SAAS,CAAC;IAE3B,qBACE,oBAACK;QAAIC,WAAWR;qBACd,oBAACD;QAAiB,GAAGO,IAAI;QAAEF,UAAUA;QAAUK,UAAUN;QAAUE,OAAOA;;AAGhF,EAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/types.ts"],"sourcesContent":["import type { Props as DateType } from '../../../../elements/DatePicker/types.js'\n\nexport type Props = {\n admin?: {\n date?: DateType\n }\n disabled?: boolean\n onChange: () => void\n value: Date\n}\n"],"names":[],"mappings":"AAEA,WAOC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
3
|
-
import './index.scss';
|
|
4
3
|
const baseClass = 'condition-value-number';
|
|
5
4
|
const NumberField = ({ disabled, onChange, value })=>{
|
|
6
5
|
const { t } = useTranslation();
|
|
@@ -15,4 +14,4 @@ const NumberField = ({ disabled, onChange, value })=>{
|
|
|
15
14
|
};
|
|
16
15
|
export default NumberField;
|
|
17
16
|
|
|
18
|
-
//# sourceMappingURL=
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Number/index.tsx"],"sourcesContent":["import 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\nconst NumberField: React.FC<Props> = ({ disabled, onChange, value }) => {\n const { t } = useTranslation()\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\nexport default NumberField\n"],"names":["React","useTranslation","baseClass","NumberField","disabled","onChange","value","t","input","className","e","target","placeholder","type"],"mappings":"AAAA,OAAOA,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAG3E,MAAMC,YAAY;AAElB,MAAMC,cAA+B,CAAC,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,KAAK,EAAE;IACjE,MAAM,EAAEC,CAAC,EAAE,GAAGN;IACd,qBACE,oBAACO;QACCC,WAAWP;QACXE,UAAUA;QACVC,UAAU,CAACK,IAAML,SAASK,EAAEC,MAAM,CAACL,KAAK;QACxCM,aAAaL,EAAE;QACfM,MAAK;QACLP,OAAOA;;AAGb;AAEA,eAAeH,YAAW"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Number/types.ts"],"sourcesContent":["export type Props = {\n disabled?: boolean\n onChange: (e: string) => void\n value: string\n}\n"],"names":[],"mappings":"AAAA,WAIC"}
|
|
@@ -3,7 +3,6 @@ import useDebounce from '../../../../hooks/useDebounce.js';
|
|
|
3
3
|
import { useConfig } from '../../../../providers/Config/index.js';
|
|
4
4
|
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
5
5
|
import ReactSelect from '../../../ReactSelect/index.js';
|
|
6
|
-
import './index.scss';
|
|
7
6
|
import optionsReducer from './optionsReducer.js';
|
|
8
7
|
const baseClass = 'condition-value-relationship';
|
|
9
8
|
const maxResultsPerRequest = 10;
|
|
@@ -278,4 +277,4 @@ const RelationshipField = (props)=>{
|
|
|
278
277
|
};
|
|
279
278
|
export default RelationshipField;
|
|
280
279
|
|
|
281
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9XaGVyZUJ1aWxkZXIvQ29uZGl0aW9uL1JlbGF0aW9uc2hpcC9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYWdpbmF0ZWREb2NzIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZHVjZXIsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB0eXBlIHsgT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vUmVhY3RTZWxlY3QvdHlwZXMuanMnXG5pbXBvcnQgdHlwZSB7IEdldFJlc3VsdHMsIFByb3BzLCBWYWx1ZVdpdGhSZWxhdGlvbiB9IGZyb20gJy4vdHlwZXMuanMnXG5cbmltcG9ydCB1c2VEZWJvdW5jZSBmcm9tICcuLi8uLi8uLi8uLi9ob29rcy91c2VEZWJvdW5jZS5qcydcbmltcG9ydCB7IHVzZUNvbmZpZyB9IGZyb20gJy4uLy4uLy4uLy4uL3Byb3ZpZGVycy9Db25maWcvaW5kZXguanMnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3Byb3ZpZGVycy9UcmFuc2xhdGlvbi9pbmRleC5qcydcbmltcG9ydCBSZWFjdFNlbGVjdCBmcm9tICcuLi8uLi8uLi9SZWFjdFNlbGVjdC9pbmRleC5qcydcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuaW1wb3J0IG9wdGlvbnNSZWR1Y2VyIGZyb20gJy4vb3B0aW9uc1JlZHVjZXIuanMnXG5cbmNvbnN0IGJhc2VDbGFzcyA9ICdjb25kaXRpb24tdmFsdWUtcmVsYXRpb25zaGlwJ1xuXG5jb25zdCBtYXhSZXN1bHRzUGVyUmVxdWVzdCA9IDEwXG5cbmNvbnN0IFJlbGF0aW9uc2hpcEZpZWxkOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBhZG1pbjogeyBpc1NvcnRhYmxlIH0gPSB7fSwgZGlzYWJsZWQsIGhhc01hbnksIG9uQ2hhbmdlLCByZWxhdGlvblRvLCB2YWx1ZSB9ID0gcHJvcHNcblxuICBjb25zdCB7XG4gICAgY29sbGVjdGlvbnMsXG4gICAgcm91dGVzOiB7IGFwaSB9LFxuICAgIHNlcnZlclVSTCxcbiAgfSA9IHVzZUNvbmZpZygpXG5cbiAgY29uc3QgaGFzTXVsdGlwbGVSZWxhdGlvbnMgPSBBcnJheS5pc0FycmF5KHJlbGF0aW9uVG8pXG4gIGNvbnN0IFtvcHRpb25zLCBkaXNwYXRjaE9wdGlvbnNdID0gdXNlUmVkdWNlcihvcHRpb25zUmVkdWNlciwgW10pXG4gIGNvbnN0IFtsYXN0RnVsbHlMb2FkZWRSZWxhdGlvbiwgc2V0TGFzdEZ1bGx5TG9hZGVkUmVsYXRpb25dID0gdXNlU3RhdGUoLTEpXG4gIGNvbnN0IFtsYXN0TG9hZGVkUGFnZSwgc2V0TGFzdExvYWRlZFBhZ2VdID0gdXNlU3RhdGUoMSlcbiAgY29uc3QgW3NlYXJjaCwgc2V0U2VhcmNoXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbZXJyb3JMb2FkaW5nLCBzZXRFcnJvckxvYWRpbmddID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFtoYXNMb2FkZWRGaXJzdE9wdGlvbnMsIHNldEhhc0xvYWRlZEZpcnN0T3B0aW9uc10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgZGVib3VuY2VkU2VhcmNoID0gdXNlRGVib3VuY2Uoc2VhcmNoLCAzMDApXG4gIGNvbnN0IHsgaTE4biwgdCB9ID0gdXNlVHJhbnNsYXRpb24oKVxuXG4gIGNvbnN0IGFkZE9wdGlvbnMgPSB1c2VDYWxsYmFjayhcbiAgICAoZGF0YSwgcmVsYXRpb24pID0+IHtcbiAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9ucy5maW5kKChjb2xsKSA9PiBjb2xsLnNsdWcgPT09IHJlbGF0aW9uKVxuICAgICAgZGlzcGF0Y2hPcHRpb25zKHsgdHlwZTogJ0FERCcsIGNvbGxlY3Rpb24sIGRhdGEsIGhhc011bHRpcGxlUmVsYXRpb25zLCBpMThuLCByZWxhdGlvbiB9KVxuICAgIH0sXG4gICAgW2NvbGxlY3Rpb25zLCBoYXNNdWx0aXBsZVJlbGF0aW9ucywgaTE4bl0sXG4gIClcblxuICBjb25zdCBnZXRSZXN1bHRzID0gdXNlQ2FsbGJhY2s8R2V0UmVzdWx0cz4oXG4gICAgYXN5bmMgKHtcbiAgICAgIGxhc3RGdWxseUxvYWRlZFJlbGF0aW9uOiBsYXN0RnVsbHlMb2FkZWRSZWxhdGlvbkFyZyxcbiAgICAgIGxhc3RMb2FkZWRQYWdlOiBsYXN0TG9hZGVkUGFnZUFyZyxcbiAgICAgIHNlYXJjaDogc2VhcmNoQXJnLFxuICAgIH0pID0+IHtcbiAgICAgIGxldCBsYXN0TG9hZGVkUGFnZVRvVXNlID0gdHlwZW9mIGxhc3RMb2FkZWRQYWdlQXJnICE9PSAndW5kZWZpbmVkJyA/IGxhc3RMb2FkZWRQYWdlQXJnIDogMVxuICAgICAgY29uc3QgbGFzdEZ1bGx5TG9hZGVkUmVsYXRpb25Ub1VzZSA9XG4gICAgICAgIHR5cGVvZiBsYXN0RnVsbHlMb2FkZWRSZWxhdGlvbkFyZyAhPT0gJ3VuZGVmaW5lZCcgPyBsYXN0RnVsbHlMb2FkZWRSZWxhdGlvbkFyZyA6IC0xXG5cbiAgICAgIGNvbnN0IHJlbGF0aW9ucyA9IEFycmF5LmlzQXJyYXkocmVsYXRpb25UbykgPyByZWxhdGlvblRvIDogW3JlbGF0aW9uVG9dXG4gICAgICBjb25zdCByZWxhdGlvbnNUb0ZldGNoID1cbiAgICAgICAgbGFzdEZ1bGx5TG9hZGVkUmVsYXRpb25Ub1VzZSA9PT0gLTFcbiAgICAgICAgICA/IHJlbGF0aW9uc1xuICAgICAgICAgIDogcmVsYXRpb25zLnNsaWNlKGxhc3RGdWxseUxvYWRlZFJlbGF0aW9uVG9Vc2UgKyAxKVxuXG4gICAgICBsZXQgcmVzdWx0c0ZldGNoZWQgPSAwXG5cbiAgICAgIGlmICghZXJyb3JMb2FkaW5nKSB7XG4gICAgICAgIHJlbGF0aW9uc1RvRmV0Y2gucmVkdWNlKGFzeW5jIChwcmlvclJlbGF0aW9uLCByZWxhdGlvbikgPT4ge1xuICAgICAgICAgIGF3YWl0IHByaW9yUmVsYXRpb25cblxuICAgICAgICAgIGlmIChyZXN1bHRzRmV0Y2hlZCA8IDEwKSB7XG4gICAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29sbGVjdGlvbnMuZmluZCgoY29sbCkgPT4gY29sbC5zbHVnID09PSByZWxhdGlvbilcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVG9TZWFyY2ggPSBjb2xsZWN0aW9uPy5hZG1pbj8udXNlQXNUaXRsZSB8fCAnaWQnXG4gICAgICAgICAgICBjb25zdCBzZWFyY2hQYXJhbSA9IHNlYXJjaEFyZyA/IGAmd2hlcmVbJHtmaWVsZFRvU2VhcmNofV1bbGlrZV09JHtzZWFyY2hBcmd9YCA6ICcnXG5cbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXG4gICAgICAgICAgICAgIGAke3NlcnZlclVSTH0ke2FwaX0vJHtyZWxhdGlvbn0/bGltaXQ9JHttYXhSZXN1bHRzUGVyUmVxdWVzdH0mcGFnZT0ke2xhc3RMb2FkZWRQYWdlVG9Vc2V9JmRlcHRoPTAke3NlYXJjaFBhcmFtfWAsXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnLFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICdBY2NlcHQtTGFuZ3VhZ2UnOiBpMThuLmxhbmd1YWdlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgICBjb25zdCBkYXRhOiBQYWdpbmF0ZWREb2NzID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gICAgICAgICAgICAgIGlmIChkYXRhLmRvY3MubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdHNGZXRjaGVkICs9IGRhdGEuZG9jcy5sZW5ndGhcbiAgICAgICAgICAgICAgICBhZGRPcHRpb25zKGRhdGEsIHJlbGF0aW9uKVxuICAgICAgICAgICAgICAgIHNldExhc3RMb2FkZWRQYWdlKGRhdGEucGFnZSlcblxuICAgICAgICAgICAgICAgIGlmICghZGF0YS5uZXh0UGFnZSkge1xuICAgICAgICAgICAgICAgICAgc2V0TGFzdEZ1bGx5TG9hZGVkUmVsYXRpb24ocmVsYXRpb25zLmluZGV4T2YocmVsYXRpb24pKVxuXG4gICAgICAgICAgICAgICAgICAvLyBJZiB0aGVyZSBhcmUgbW9yZSByZWxhdGlvbnMgdG8gc2VhcmNoLCBuZWVkIHRvIHJlc2V0IGxhc3RMb2FkZWRQYWdlIHRvIDFcbiAgICAgICAgICAgICAgICAgIC8vIGJvdGggbG9jYWxseSB3aXRoaW4gZnVuY3Rpb24gYW5kIHN0YXRlXG4gICAgICAgICAgICAgICAgICBpZiAocmVsYXRpb25zLmluZGV4T2YocmVsYXRpb24pICsgMSA8IHJlbGF0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgbGFzdExvYWRlZFBhZ2VUb1VzZSA9IDFcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNldEVycm9yTG9hZGluZyh0KCdlcnJvcjp1bnNwZWNpZmljJykpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpMThuLCByZWxhdGlvblRvLCBlcnJvckxvYWRpbmcsIGNvbGxlY3Rpb25zLCBzZXJ2ZXJVUkwsIGFwaSwgYWRkT3B0aW9ucywgdF0sXG4gIClcblxuICBjb25zdCBmaW5kT3B0aW9uc0J5VmFsdWUgPSB1c2VDYWxsYmFjaygoKTogT3B0aW9uIHwgT3B0aW9uW10gPT4ge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgaWYgKGhhc01hbnkpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgodmFsKSA9PiB7XG4gICAgICAgICAgICBpZiAoaGFzTXVsdGlwbGVSZWxhdGlvbnMpIHtcbiAgICAgICAgICAgICAgbGV0IG1hdGNoZWRPcHRpb246IE9wdGlvblxuXG4gICAgICAgICAgICAgIG9wdGlvbnMuZm9yRWFjaCgob3B0KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdC5vcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICBvcHQub3B0aW9ucy5zb21lKChzdWJPcHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN1Yk9wdD8udmFsdWUgPT09IHZhbC52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgIG1hdGNoZWRPcHRpb24gPSBzdWJPcHRcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgICByZXR1cm4gbWF0Y2hlZE9wdGlvblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maW5kKChvcHQpID0+IG9wdC52YWx1ZSA9PT0gdmFsKVxuICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgICB9XG5cbiAgICAgIGlmIChoYXNNdWx0aXBsZVJlbGF0aW9ucykge1xuICAgICAgICBsZXQgbWF0Y2hlZE9wdGlvbjogT3B0aW9uXG5cbiAgICAgICAgY29uc3QgdmFsdWVXaXRoUmVsYXRpb24gPSB2YWx1ZSBhcyBWYWx1ZVdpdGhSZWxhdGlvblxuXG4gICAgICAgIG9wdGlvbnMuZm9yRWFjaCgob3B0KSA9PiB7XG4gICAgICAgICAgaWYgKG9wdD8ub3B0aW9ucykge1xuICAgICAgICAgICAgb3B0Lm9wdGlvbnMuc29tZSgoc3ViT3B0KSA9PiB7XG4gICAgICAgICAgICAgIGlmIChzdWJPcHQ/LnZhbHVlID09PSB2YWx1ZVdpdGhSZWxhdGlvbi52YWx1ZSkge1xuICAgICAgICAgICAgICAgIG1hdGNoZWRPcHRpb24gPSBzdWJPcHRcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgcmV0dXJuIG1hdGNoZWRPcHRpb25cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG9wdGlvbnMuZmluZCgob3B0KSA9PiBvcHQudmFsdWUgPT09IHZhbHVlKVxuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfSwgW2hhc01hbnksIGhhc011bHRpcGxlUmVsYXRpb25zLCB2YWx1ZSwgb3B0aW9uc10pXG5cbiAgY29uc3QgaGFuZGxlSW5wdXRDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAobmV3U2VhcmNoKSA9PiB7XG4gICAgICBpZiAoc2VhcmNoICE9PSBuZXdTZWFyY2gpIHtcbiAgICAgICAgc2V0U2VhcmNoKG5ld1NlYXJjaClcbiAgICAgIH1cbiAgICB9LFxuICAgIFtzZWFyY2hdLFxuICApXG5cbiAgY29uc3QgYWRkT3B0aW9uQnlJRCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChpZCwgcmVsYXRpb24pID0+IHtcbiAgICAgIGlmICghZXJyb3JMb2FkaW5nICYmIGlkICE9PSAnbnVsbCcpIHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChgJHtzZXJ2ZXJVUkx9JHthcGl9LyR7cmVsYXRpb259LyR7aWR9P2RlcHRoPTBgLCB7XG4gICAgICAgICAgY3JlZGVudGlhbHM6ICdpbmNsdWRlJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnQWNjZXB0LUxhbmd1YWdlJzogaTE4bi5sYW5ndWFnZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKClcbiAgICAgICAgICBhZGRPcHRpb25zKHsgZG9jczogW2RhdGFdIH0sIHJlbGF0aW9uKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IodCgnZXJyb3I6bG9hZGluZ0RvY3VtZW50JywgeyBpZCB9KSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW2kxOG4sIGFkZE9wdGlvbnMsIGFwaSwgZXJyb3JMb2FkaW5nLCBzZXJ2ZXJVUkwsIHRdLFxuICApXG5cbiAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIEdldCByZXN1bHRzIHdoZW4gc2VhcmNoIGlucHV0IGNoYW5nZXNcbiAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaE9wdGlvbnMoe1xuICAgICAgdHlwZTogJ0NMRUFSJyxcbiAgICAgIGkxOG4sXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuXG4gICAgc2V0SGFzTG9hZGVkRmlyc3RPcHRpb25zKHRydWUpXG4gICAgc2V0TGFzdExvYWRlZFBhZ2UoMSlcbiAgICBzZXRMYXN0RnVsbHlMb2FkZWRSZWxhdGlvbigtMSlcbiAgICBnZXRSZXN1bHRzKHsgc2VhcmNoOiBkZWJvdW5jZWRTZWFyY2ggfSlcbiAgfSwgW2dldFJlc3VsdHMsIGRlYm91bmNlZFNlYXJjaCwgcmVsYXRpb25UbywgaTE4bl0pXG5cbiAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIEZvcm1hdCBvcHRpb25zIG9uY2UgZmlyc3Qgb3B0aW9ucyBoYXZlIGJlZW4gcmV0cmlldmVkXG4gIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHZhbHVlICYmIGhhc0xvYWRlZEZpcnN0T3B0aW9ucykge1xuICAgICAgaWYgKGhhc01hbnkpIHtcbiAgICAgICAgY29uc3QgbWF0Y2hlZE9wdGlvbnMgPSBmaW5kT3B0aW9uc0J5VmFsdWUoKVxuXG4gICAgICAgIDsoKG1hdGNoZWRPcHRpb25zIGFzIE9wdGlvbltdKSB8fCBbXSkuZm9yRWFjaCgob3B0aW9uLCBpKSA9PiB7XG4gICAgICAgICAgaWYgKCFvcHRpb24pIHtcbiAgICAgICAgICAgIGlmIChoYXNNdWx0aXBsZVJlbGF0aW9ucykge1xuICAgICAgICAgICAgICBhZGRPcHRpb25CeUlEKHZhbHVlW2ldLnZhbHVlLCB2YWx1ZVtpXS5yZWxhdGlvblRvKVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgYWRkT3B0aW9uQnlJRCh2YWx1ZVtpXSwgcmVsYXRpb25UbylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBtYXRjaGVkT3B0aW9uID0gZmluZE9wdGlvbnNCeVZhbHVlKClcblxuICAgICAgICBpZiAoIW1hdGNoZWRPcHRpb24pIHtcbiAgICAgICAgICBpZiAoaGFzTXVsdGlwbGVSZWxhdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlV2l0aFJlbGF0aW9uID0gdmFsdWUgYXMgVmFsdWVXaXRoUmVsYXRpb25cbiAgICAgICAgICAgIGFkZE9wdGlvbkJ5SUQodmFsdWVXaXRoUmVsYXRpb24udmFsdWUsIHZhbHVlV2l0aFJlbGF0aW9uLnJlbGF0aW9uVG8pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGFkZE9wdGlvbkJ5SUQodmFsdWUsIHJlbGF0aW9uVG8pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LCBbXG4gICAgYWRkT3B0aW9uQnlJRCxcbiAgICBmaW5kT3B0aW9uc0J5VmFsdWUsXG4gICAgaGFzTWFueSxcbiAgICBoYXNNdWx0aXBsZVJlbGF0aW9ucyxcbiAgICByZWxhdGlvblRvLFxuICAgIHZhbHVlLFxuICAgIGhhc0xvYWRlZEZpcnN0T3B0aW9ucyxcbiAgXSlcblxuICBjb25zdCBjbGFzc2VzID0gWydmaWVsZC10eXBlJywgYmFzZUNsYXNzLCBlcnJvckxvYWRpbmcgJiYgJ2Vycm9yLWxvYWRpbmcnXVxuICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAuam9pbignICcpXG5cbiAgY29uc3QgdmFsdWVUb1JlbmRlciA9IChmaW5kT3B0aW9uc0J5VmFsdWUoKSB8fCB2YWx1ZSkgYXMgT3B0aW9uXG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlc30+XG4gICAgICB7IWVycm9yTG9hZGluZyAmJiAoXG4gICAgICAgIDxSZWFjdFNlbGVjdFxuICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICBpc011bHRpPXtoYXNNYW55fVxuICAgICAgICAgIGlzU29ydGFibGU9e2lzU29ydGFibGV9XG4gICAgICAgICAgb25DaGFuZ2U9eyhzZWxlY3RlZCkgPT4ge1xuICAgICAgICAgICAgaWYgKGhhc01hbnkpIHtcbiAgICAgICAgICAgICAgb25DaGFuZ2UoXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgID8gc2VsZWN0ZWQubWFwKChvcHRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzTXVsdGlwbGVSZWxhdGlvbnMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IG9wdGlvbi5yZWxhdGlvblRvLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvcHRpb24udmFsdWVcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSBlbHNlIGlmIChoYXNNdWx0aXBsZVJlbGF0aW9ucykge1xuICAgICAgICAgICAgICBvbkNoYW5nZSh7XG4gICAgICAgICAgICAgICAgcmVsYXRpb25Ubzogc2VsZWN0ZWQucmVsYXRpb25UbyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogc2VsZWN0ZWQudmFsdWUsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvbkNoYW5nZShzZWxlY3RlZC52YWx1ZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uSW5wdXRDaGFuZ2U9e2hhbmRsZUlucHV0Q2hhbmdlfVxuICAgICAgICAgIG9uTWVudVNjcm9sbFRvQm90dG9tPXsoKSA9PiB7XG4gICAgICAgICAgICBnZXRSZXN1bHRzKHsgbGFzdEZ1bGx5TG9hZGVkUmVsYXRpb24sIGxhc3RMb2FkZWRQYWdlOiBsYXN0TG9hZGVkUGFnZSArIDEgfSlcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9wdGlvbnM9e29wdGlvbnN9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3QoJ2dlbmVyYWw6c2VsZWN0VmFsdWUnKX1cbiAgICAgICAgICB2YWx1ZT17dmFsdWVUb1JlbmRlcn1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICB7ZXJyb3JMb2FkaW5nICYmIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19lcnJvci1sb2FkaW5nYH0+e2Vycm9yTG9hZGluZ308L2Rpdj59XG4gICAgPC9kaXY+XG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQgUmVsYXRpb25zaGlwRmllbGRcbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZUNhbGxiYWNrIiwidXNlRWZmZWN0IiwidXNlUmVkdWNlciIsInVzZVN0YXRlIiwidXNlRGVib3VuY2UiLCJ1c2VDb25maWciLCJ1c2VUcmFuc2xhdGlvbiIsIlJlYWN0U2VsZWN0Iiwib3B0aW9uc1JlZHVjZXIiLCJiYXNlQ2xhc3MiLCJtYXhSZXN1bHRzUGVyUmVxdWVzdCIsIlJlbGF0aW9uc2hpcEZpZWxkIiwicHJvcHMiLCJhZG1pbiIsImlzU29ydGFibGUiLCJkaXNhYmxlZCIsImhhc01hbnkiLCJvbkNoYW5nZSIsInJlbGF0aW9uVG8iLCJ2YWx1ZSIsImNvbGxlY3Rpb25zIiwicm91dGVzIiwiYXBpIiwic2VydmVyVVJMIiwiaGFzTXVsdGlwbGVSZWxhdGlvbnMiLCJBcnJheSIsImlzQXJyYXkiLCJvcHRpb25zIiwiZGlzcGF0Y2hPcHRpb25zIiwibGFzdEZ1bGx5TG9hZGVkUmVsYXRpb24iLCJzZXRMYXN0RnVsbHlMb2FkZWRSZWxhdGlvbiIsImxhc3RMb2FkZWRQYWdlIiwic2V0TGFzdExvYWRlZFBhZ2UiLCJzZWFyY2giLCJzZXRTZWFyY2giLCJlcnJvckxvYWRpbmciLCJzZXRFcnJvckxvYWRpbmciLCJoYXNMb2FkZWRGaXJzdE9wdGlvbnMiLCJzZXRIYXNMb2FkZWRGaXJzdE9wdGlvbnMiLCJkZWJvdW5jZWRTZWFyY2giLCJpMThuIiwidCIsImFkZE9wdGlvbnMiLCJkYXRhIiwicmVsYXRpb24iLCJjb2xsZWN0aW9uIiwiZmluZCIsImNvbGwiLCJzbHVnIiwidHlwZSIsImdldFJlc3VsdHMiLCJsYXN0RnVsbHlMb2FkZWRSZWxhdGlvbkFyZyIsImxhc3RMb2FkZWRQYWdlQXJnIiwic2VhcmNoQXJnIiwibGFzdExvYWRlZFBhZ2VUb1VzZSIsImxhc3RGdWxseUxvYWRlZFJlbGF0aW9uVG9Vc2UiLCJyZWxhdGlvbnMiLCJyZWxhdGlvbnNUb0ZldGNoIiwic2xpY2UiLCJyZXN1bHRzRmV0Y2hlZCIsInJlZHVjZSIsInByaW9yUmVsYXRpb24iLCJmaWVsZFRvU2VhcmNoIiwidXNlQXNUaXRsZSIsInNlYXJjaFBhcmFtIiwicmVzcG9uc2UiLCJmZXRjaCIsImNyZWRlbnRpYWxzIiwiaGVhZGVycyIsImxhbmd1YWdlIiwib2siLCJqc29uIiwiZG9jcyIsImxlbmd0aCIsInBhZ2UiLCJuZXh0UGFnZSIsImluZGV4T2YiLCJQcm9taXNlIiwicmVzb2x2ZSIsImZpbmRPcHRpb25zQnlWYWx1ZSIsIm1hcCIsInZhbCIsIm1hdGNoZWRPcHRpb24iLCJmb3JFYWNoIiwib3B0Iiwic29tZSIsInN1Yk9wdCIsInVuZGVmaW5lZCIsInZhbHVlV2l0aFJlbGF0aW9uIiwiaGFuZGxlSW5wdXRDaGFuZ2UiLCJuZXdTZWFyY2giLCJhZGRPcHRpb25CeUlEIiwiaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJyZXF1aXJlZCIsIm1hdGNoZWRPcHRpb25zIiwib3B0aW9uIiwiaSIsImNsYXNzZXMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsInZhbHVlVG9SZW5kZXIiLCJkaXYiLCJjbGFzc05hbWUiLCJpc011bHRpIiwic2VsZWN0ZWQiLCJvbklucHV0Q2hhbmdlIiwib25NZW51U2Nyb2xsVG9Cb3R0b20iLCJwbGFjZWhvbGRlciJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBT0EsU0FBU0MsV0FBVyxFQUFFQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxRQUFRLFFBQU87QUFLM0UsT0FBT0MsaUJBQWlCLG1DQUFrQztBQUMxRCxTQUFTQyxTQUFTLFFBQVEsd0NBQXVDO0FBQ2pFLFNBQVNDLGNBQWMsUUFBUSw2Q0FBNEM7QUFDM0UsT0FBT0MsaUJBQWlCLGdDQUErQjtBQUN2RCxPQUFPLGVBQWM7QUFDckIsT0FBT0Msb0JBQW9CLHNCQUFxQjtBQUVoRCxNQUFNQyxZQUFZO0FBRWxCLE1BQU1DLHVCQUF1QjtBQUU3QixNQUFNQyxvQkFBcUMsQ0FBQ0M7SUFDMUMsTUFBTSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFQyxRQUFRLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLEtBQUss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
|
|
280
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"sourcesContent":["import type { PaginatedDocs } from 'payload/database'\n\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { Option } from '../../../ReactSelect/types.js'\nimport type { GetResults, 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\nconst RelationshipField: React.FC<Props> = (props) => {\n const { admin: { isSortable } = {}, disabled, hasMany, onChange, relationTo, value } = props\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1)\n const [lastLoadedPage, setLastLoadedPage] = useState(1)\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\n const addOptions = useCallback(\n (data, relation) => {\n const collection = collections.find((coll) => coll.slug === relation)\n dispatchOptions({ type: 'ADD', collection, data, hasMultipleRelations, i18n, relation })\n },\n [collections, hasMultipleRelations, i18n],\n )\n\n const getResults = useCallback<GetResults>(\n async ({\n lastFullyLoadedRelation: lastFullyLoadedRelationArg,\n lastLoadedPage: lastLoadedPageArg,\n search: searchArg,\n }) => {\n let lastLoadedPageToUse = typeof lastLoadedPageArg !== 'undefined' ? lastLoadedPageArg : 1\n const lastFullyLoadedRelationToUse =\n typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1\n\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const relationsToFetch =\n lastFullyLoadedRelationToUse === -1\n ? relations\n : relations.slice(lastFullyLoadedRelationToUse + 1)\n\n let resultsFetched = 0\n\n if (!errorLoading) {\n relationsToFetch.reduce(async (priorRelation, relation) => {\n await priorRelation\n\n if (resultsFetched < 10) {\n const collection = collections.find((coll) => coll.slug === relation)\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n const searchParam = searchArg ? `&where[${fieldToSearch}][like]=${searchArg}` : ''\n\n const response = await fetch(\n `${serverURL}${api}/${relation}?limit=${maxResultsPerRequest}&page=${lastLoadedPageToUse}&depth=0${searchParam}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n if (data.docs.length > 0) {\n resultsFetched += data.docs.length\n addOptions(data, relation)\n setLastLoadedPage(data.page)\n\n if (!data.nextPage) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n\n // If there are more relations to search, need to reset lastLoadedPage to 1\n // both locally within function and state\n if (relations.indexOf(relation) + 1 < relations.length) {\n lastLoadedPageToUse = 1\n }\n }\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n }\n }, Promise.resolve())\n }\n },\n [i18n, relationTo, errorLoading, collections, serverURL, api, addOptions, t],\n )\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 = useCallback(\n (newSearch) => {\n if (search !== newSearch) {\n setSearch(newSearch)\n }\n },\n [search],\n )\n\n const addOptionByID = useCallback(\n async (id, relation) => {\n if (!errorLoading && id !== 'null') {\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 console.error(t('error:loadingDocument', { id }))\n }\n }\n },\n [i18n, addOptions, api, errorLoading, serverURL, t],\n )\n\n // ///////////////////////////\n // Get results when search input changes\n // ///////////////////////////\n\n useEffect(() => {\n dispatchOptions({\n type: 'CLEAR',\n i18n,\n required: true,\n })\n\n setHasLoadedFirstOptions(true)\n setLastLoadedPage(1)\n setLastFullyLoadedRelation(-1)\n getResults({ search: debouncedSearch })\n }, [getResults, debouncedSearch, relationTo, i18n])\n\n // ///////////////////////////\n // Format options once first options have been retrieved\n // ///////////////////////////\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 addOptionByID(value[i].value, value[i].relationTo)\n } else {\n 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 addOptionByID(valueWithRelation.value, valueWithRelation.relationTo)\n } else {\n 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 (hasMany) {\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) {\n onChange({\n relationTo: selected.relationTo,\n value: selected.value,\n })\n } else {\n onChange(selected.value)\n }\n }}\n onInputChange={handleInputChange}\n onMenuScrollToBottom={() => {\n getResults({ lastFullyLoadedRelation, lastLoadedPage: lastLoadedPage + 1 })\n }}\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\nexport default RelationshipField\n"],"names":["React","useCallback","useEffect","useReducer","useState","useDebounce","useConfig","useTranslation","ReactSelect","optionsReducer","baseClass","maxResultsPerRequest","RelationshipField","props","admin","isSortable","disabled","hasMany","onChange","relationTo","value","collections","routes","api","serverURL","hasMultipleRelations","Array","isArray","options","dispatchOptions","lastFullyLoadedRelation","setLastFullyLoadedRelation","lastLoadedPage","setLastLoadedPage","search","setSearch","errorLoading","setErrorLoading","hasLoadedFirstOptions","setHasLoadedFirstOptions","debouncedSearch","i18n","t","addOptions","data","relation","collection","find","coll","slug","type","getResults","lastFullyLoadedRelationArg","lastLoadedPageArg","searchArg","lastLoadedPageToUse","lastFullyLoadedRelationToUse","relations","relationsToFetch","slice","resultsFetched","reduce","priorRelation","fieldToSearch","useAsTitle","searchParam","response","fetch","credentials","headers","language","ok","json","docs","length","page","nextPage","indexOf","Promise","resolve","findOptionsByValue","map","val","matchedOption","forEach","opt","some","subOpt","undefined","valueWithRelation","handleInputChange","newSearch","addOptionByID","id","console","error","required","matchedOptions","option","i","classes","filter","Boolean","join","valueToRender","div","className","isMulti","selected","onInputChange","onMenuScrollToBottom","placeholder"],"mappings":"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"}
|
|
@@ -85,4 +85,4 @@ const optionsReducer = (state, action)=>{
|
|
|
85
85
|
};
|
|
86
86
|
export default optionsReducer;
|
|
87
87
|
|
|
88
|
-
//# sourceMappingURL=
|
|
88
|
+
//# sourceMappingURL=optionsReducer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/optionsReducer.ts"],"sourcesContent":["import { getTranslation } from '@payloadcms/translations'\n\nimport type { Action, Option } from './types.js'\n\nconst reduceToIDs = (options) =>\n options.reduce((ids, option) => {\n if (option.options) {\n return [...ids, ...reduceToIDs(option.options)]\n }\n\n return [...ids, option.id]\n }, [])\n\nconst optionsReducer = (state: Option[], action: Action): Option[] => {\n switch (action.type) {\n case 'CLEAR': {\n return action.required ? [] : [{ label: action.i18n.t('general:none'), value: 'null' }]\n }\n\n case 'ADD': {\n const { collection, data, hasMultipleRelations, i18n, relation } = action\n\n const labelKey = collection.admin.useAsTitle || 'id'\n\n const loadedIDs = reduceToIDs(state)\n\n if (!hasMultipleRelations) {\n return [\n ...state,\n ...data.docs.reduce((docs, doc) => {\n if (loadedIDs.indexOf(doc.id) === -1) {\n loadedIDs.push(doc.id)\n return [\n ...docs,\n {\n label: doc[labelKey],\n value: doc.id,\n },\n ]\n }\n return docs\n }, []),\n ]\n }\n\n const newOptions = [...state]\n const optionsToAddTo = newOptions.find(\n (optionGroup) => optionGroup.label === getTranslation(collection.labels.plural, i18n),\n )\n\n const newSubOptions = data.docs.reduce((docs, doc) => {\n if (loadedIDs.indexOf(doc.id) === -1) {\n loadedIDs.push(doc.id)\n\n return [\n ...docs,\n {\n label: doc[labelKey],\n relationTo: relation,\n value: doc.id,\n },\n ]\n }\n\n return docs\n }, [])\n\n if (optionsToAddTo) {\n optionsToAddTo.options = [...optionsToAddTo.options, ...newSubOptions]\n } else {\n newOptions.push({\n label: getTranslation(collection.labels.plural, i18n),\n options: newSubOptions,\n value: undefined,\n })\n }\n\n return newOptions\n }\n\n default: {\n return state\n }\n }\n}\n\nexport default optionsReducer\n"],"names":["getTranslation","reduceToIDs","options","reduce","ids","option","id","optionsReducer","state","action","type","required","label","i18n","t","value","collection","data","hasMultipleRelations","relation","labelKey","admin","useAsTitle","loadedIDs","docs","doc","indexOf","push","newOptions","optionsToAddTo","find","optionGroup","labels","plural","newSubOptions","relationTo","undefined"],"mappings":"AAAA,SAASA,cAAc,QAAQ,2BAA0B;AAIzD,MAAMC,cAAc,CAACC,UACnBA,QAAQC,MAAM,CAAC,CAACC,KAAKC;QACnB,IAAIA,OAAOH,OAAO,EAAE;YAClB,OAAO;mBAAIE;mBAAQH,YAAYI,OAAOH,OAAO;aAAE;QACjD;QAEA,OAAO;eAAIE;YAAKC,OAAOC,EAAE;SAAC;IAC5B,GAAG,EAAE;AAEP,MAAMC,iBAAiB,CAACC,OAAiBC;IACvC,OAAQA,OAAOC,IAAI;QACjB,KAAK;YAAS;gBACZ,OAAOD,OAAOE,QAAQ,GAAG,EAAE,GAAG;oBAAC;wBAAEC,OAAOH,OAAOI,IAAI,CAACC,CAAC,CAAC;wBAAiBC,OAAO;oBAAO;iBAAE;YACzF;QAEA,KAAK;YAAO;gBACV,MAAM,EAAEC,UAAU,EAAEC,IAAI,EAAEC,oBAAoB,EAAEL,IAAI,EAAEM,QAAQ,EAAE,GAAGV;gBAEnE,MAAMW,WAAWJ,WAAWK,KAAK,CAACC,UAAU,IAAI;gBAEhD,MAAMC,YAAYtB,YAAYO;gBAE9B,IAAI,CAACU,sBAAsB;oBACzB,OAAO;2BACFV;2BACAS,KAAKO,IAAI,CAACrB,MAAM,CAAC,CAACqB,MAAMC;4BACzB,IAAIF,UAAUG,OAAO,CAACD,IAAInB,EAAE,MAAM,CAAC,GAAG;gCACpCiB,UAAUI,IAAI,CAACF,IAAInB,EAAE;gCACrB,OAAO;uCACFkB;oCACH;wCACEZ,OAAOa,GAAG,CAACL,SAAS;wCACpBL,OAAOU,IAAInB,EAAE;oCACf;iCACD;4BACH;4BACA,OAAOkB;wBACT,GAAG,EAAE;qBACN;gBACH;gBAEA,MAAMI,aAAa;uBAAIpB;iBAAM;gBAC7B,MAAMqB,iBAAiBD,WAAWE,IAAI,CACpC,CAACC,cAAgBA,YAAYnB,KAAK,KAAKZ,eAAegB,WAAWgB,MAAM,CAACC,MAAM,EAAEpB;gBAGlF,MAAMqB,gBAAgBjB,KAAKO,IAAI,CAACrB,MAAM,CAAC,CAACqB,MAAMC;oBAC5C,IAAIF,UAAUG,OAAO,CAACD,IAAInB,EAAE,MAAM,CAAC,GAAG;wBACpCiB,UAAUI,IAAI,CAACF,IAAInB,EAAE;wBAErB,OAAO;+BACFkB;4BACH;gCACEZ,OAAOa,GAAG,CAACL,SAAS;gCACpBe,YAAYhB;gCACZJ,OAAOU,IAAInB,EAAE;4BACf;yBACD;oBACH;oBAEA,OAAOkB;gBACT,GAAG,EAAE;gBAEL,IAAIK,gBAAgB;oBAClBA,eAAe3B,OAAO,GAAG;2BAAI2B,eAAe3B,OAAO;2BAAKgC;qBAAc;gBACxE,OAAO;oBACLN,WAAWD,IAAI,CAAC;wBACdf,OAAOZ,eAAegB,WAAWgB,MAAM,CAACC,MAAM,EAAEpB;wBAChDX,SAASgC;wBACTnB,OAAOqB;oBACT;gBACF;gBAEA,OAAOR;YACT;QAEA;YAAS;gBACP,OAAOpB;YACT;IACF;AACF;AAEA,eAAeD,eAAc"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/types.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { PaginatedDocs } from 'payload/database'\nimport type { RelationshipField, SanitizedCollectionConfig } from 'payload/types'\n\nexport type Props = {\n disabled?: boolean\n onChange: (val: unknown) => void\n value: unknown\n} & RelationshipField\n\nexport type Option = {\n label: string\n options?: Option[]\n relationTo?: string\n value: string\n}\n\ntype CLEAR = {\n i18n: I18n\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n hasMultipleRelations: boolean\n i18n: I18n\n relation: string\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n\nexport type GetResults = (args: {\n lastFullyLoadedRelation?: number\n lastLoadedPage?: number\n search?: string\n}) => Promise<void>\n"],"names":[],"mappings":"AAuCA,WAImB"}
|
|
@@ -78,4 +78,4 @@ export const Select = ({ disabled, onChange, operator, options: optionsFromProps
|
|
|
78
78
|
});
|
|
79
79
|
};
|
|
80
80
|
|
|
81
|
-
//# sourceMappingURL=
|
|
81
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Select/index.tsx"],"sourcesContent":["import type { Option, OptionObject } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport ReactSelect from '../../../ReactSelect/index.js'\n\nconst formatOptions = (options: Option[]): OptionObject[] =>\n options.map((option) => {\n if (typeof option === 'object' && (option.value || option.value === '')) {\n return option\n }\n\n return {\n label: option,\n value: option,\n } as OptionObject\n })\n\nexport const Select: React.FC<Props> = ({\n disabled,\n onChange,\n operator,\n options: optionsFromProps,\n value,\n}) => {\n const { i18n } = useTranslation()\n const [options, setOptions] = React.useState(formatOptions(optionsFromProps))\n\n const isMulti = ['in', 'not_in'].includes(operator)\n let valueToRender\n\n if (isMulti && Array.isArray(value)) {\n valueToRender = value.map((val) => {\n const matchingOption = options.find((option) => option.value === val)\n return {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : val,\n value: matchingOption?.value ?? val,\n }\n })\n } else if (value) {\n const matchingOption = options.find((option) => option.value === value)\n valueToRender = {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : value,\n value: matchingOption?.value ?? value,\n }\n }\n\n const onSelect = React.useCallback(\n (selectedOption) => {\n let newValue\n if (!selectedOption) {\n newValue = null\n } else if (isMulti) {\n if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => option.value)\n } else {\n newValue = []\n }\n } else {\n newValue = selectedOption.value\n }\n\n onChange(newValue)\n },\n [isMulti, onChange],\n )\n\n React.useEffect(() => {\n setOptions(formatOptions(optionsFromProps))\n }, [optionsFromProps])\n\n React.useEffect(() => {\n if (!isMulti && Array.isArray(value)) {\n onChange(value[0])\n }\n }, [isMulti, onChange, value])\n\n return (\n <ReactSelect\n disabled={disabled}\n isMulti={isMulti}\n onChange={onSelect}\n options={options.map((option) => ({ ...option, label: getTranslation(option.label, i18n) }))}\n value={valueToRender}\n />\n )\n}\n"],"names":["getTranslation","React","useTranslation","ReactSelect","formatOptions","options","map","option","value","label","Select","disabled","onChange","operator","optionsFromProps","i18n","setOptions","useState","isMulti","includes","valueToRender","Array","isArray","val","matchingOption","find","onSelect","useCallback","selectedOption","newValue","useEffect"],"mappings":"AAEA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,OAAOC,iBAAiB,gCAA+B;AAEvD,MAAMC,gBAAgB,CAACC,UACrBA,QAAQC,GAAG,CAAC,CAACC;QACX,IAAI,OAAOA,WAAW,YAAaA,CAAAA,OAAOC,KAAK,IAAID,OAAOC,KAAK,KAAK,EAAC,GAAI;YACvE,OAAOD;QACT;QAEA,OAAO;YACLE,OAAOF;YACPC,OAAOD;QACT;IACF;AAEF,OAAO,MAAMG,SAA0B,CAAC,EACtCC,QAAQ,EACRC,QAAQ,EACRC,QAAQ,EACRR,SAASS,gBAAgB,EACzBN,KAAK,EACN;IACC,MAAM,EAAEO,IAAI,EAAE,GAAGb;IACjB,MAAM,CAACG,SAASW,WAAW,GAAGf,MAAMgB,QAAQ,CAACb,cAAcU;IAE3D,MAAMI,UAAU;QAAC;QAAM;KAAS,CAACC,QAAQ,CAACN;IAC1C,IAAIO;IAEJ,IAAIF,WAAWG,MAAMC,OAAO,CAACd,QAAQ;QACnCY,gBAAgBZ,MAAMF,GAAG,CAAC,CAACiB;YACzB,MAAMC,iBAAiBnB,QAAQoB,IAAI,CAAC,CAAClB,SAAWA,OAAOC,KAAK,KAAKe;YACjE,OAAO;gBACLd,OAAOe,iBAAiBxB,eAAewB,eAAef,KAAK,EAAEM,QAAQQ;gBACrEf,OAAOgB,gBAAgBhB,SAASe;YAClC;QACF;IACF,OAAO,IAAIf,OAAO;QAChB,MAAMgB,iBAAiBnB,QAAQoB,IAAI,CAAC,CAAClB,SAAWA,OAAOC,KAAK,KAAKA;QACjEY,gBAAgB;YACdX,OAAOe,iBAAiBxB,eAAewB,eAAef,KAAK,EAAEM,QAAQP;YACrEA,OAAOgB,gBAAgBhB,SAASA;QAClC;IACF;IAEA,MAAMkB,WAAWzB,MAAM0B,WAAW,CAChC,CAACC;QACC,IAAIC;QACJ,IAAI,CAACD,gBAAgB;YACnBC,WAAW;QACb,OAAO,IAAIX,SAAS;YAClB,IAAIG,MAAMC,OAAO,CAACM,iBAAiB;gBACjCC,WAAWD,eAAetB,GAAG,CAAC,CAACC,SAAWA,OAAOC,KAAK;YACxD,OAAO;gBACLqB,WAAW,EAAE;YACf;QACF,OAAO;YACLA,WAAWD,eAAepB,KAAK;QACjC;QAEAI,SAASiB;IACX,GACA;QAACX;QAASN;KAAS;IAGrBX,MAAM6B,SAAS,CAAC;QACdd,WAAWZ,cAAcU;IAC3B,GAAG;QAACA;KAAiB;IAErBb,MAAM6B,SAAS,CAAC;QACd,IAAI,CAACZ,WAAWG,MAAMC,OAAO,CAACd,QAAQ;YACpCI,SAASJ,KAAK,CAAC,EAAE;QACnB;IACF,GAAG;QAACU;QAASN;QAAUJ;KAAM;IAE7B,qBACE,oBAACL;QACCQ,UAAUA;QACVO,SAASA;QACTN,UAAUc;QACVrB,SAASA,QAAQC,GAAG,CAAC,CAACC,SAAY,CAAA;gBAAE,GAAGA,MAAM;gBAAEE,OAAOT,eAAeO,OAAOE,KAAK,EAAEM;YAAM,CAAA;QACzFP,OAAOY;;AAGb,EAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Select/types.ts"],"sourcesContent":["import type { Operator, Option } from 'payload/types'\n\nexport type Props = {\n disabled?: boolean\n onChange: (val: string) => void\n operator: Operator\n options: Option[]\n value: string\n}\n"],"names":[],"mappings":"AAEA,WAMC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
3
|
-
import './index.scss';
|
|
4
3
|
const baseClass = 'condition-value-text';
|
|
5
4
|
const Text = ({ disabled, onChange, value })=>{
|
|
6
5
|
const { t } = useTranslation();
|
|
@@ -15,4 +14,4 @@ const Text = ({ disabled, onChange, value })=>{
|
|
|
15
14
|
};
|
|
16
15
|
export default Text;
|
|
17
16
|
|
|
18
|
-
//# sourceMappingURL=
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Text/index.tsx"],"sourcesContent":["import 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-text'\n\nconst Text: React.FC<Props> = ({ disabled, onChange, value }) => {\n const { t } = useTranslation()\n return (\n <input\n className={baseClass}\n disabled={disabled}\n onChange={(e) => onChange(e.target.value)}\n placeholder={t('general:enterAValue')}\n type=\"text\"\n value={value || ''}\n />\n )\n}\n\nexport default Text\n"],"names":["React","useTranslation","baseClass","Text","disabled","onChange","value","t","input","className","e","target","placeholder","type"],"mappings":"AAAA,OAAOA,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAG3E,MAAMC,YAAY;AAElB,MAAMC,OAAwB,CAAC,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,KAAK,EAAE;IAC1D,MAAM,EAAEC,CAAC,EAAE,GAAGN;IACd,qBACE,oBAACO;QACCC,WAAWP;QACXE,UAAUA;QACVC,UAAU,CAACK,IAAML,SAASK,EAAEC,MAAM,CAACL,KAAK;QACxCM,aAAaL,EAAE;QACfM,MAAK;QACLP,OAAOA,SAAS;;AAGtB;AAEA,eAAeH,KAAI"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Text/types.ts"],"sourcesContent":["export type Props = {\n disabled?: boolean\n onChange: (val: string) => void\n value: string\n}\n"],"names":[],"mappings":"AAAA,WAIC"}
|
|
@@ -3,14 +3,13 @@ import { RenderCustomComponent } from '../../../elements/RenderCustomComponent/i
|
|
|
3
3
|
import useDebounce from '../../../hooks/useDebounce.js';
|
|
4
4
|
import { Button } from '../../Button/index.js';
|
|
5
5
|
import ReactSelect from '../../ReactSelect/index.js';
|
|
6
|
-
import
|
|
6
|
+
import { DateField } from './Date/index.js';
|
|
7
7
|
import Number from './Number/index.js';
|
|
8
8
|
import Relationship from './Relationship/index.js';
|
|
9
9
|
import { Select } from './Select/index.js';
|
|
10
10
|
import Text from './Text/index.js';
|
|
11
|
-
import './index.scss';
|
|
12
11
|
const valueFields = {
|
|
13
|
-
|
|
12
|
+
DateField,
|
|
14
13
|
Number,
|
|
15
14
|
Relationship,
|
|
16
15
|
Select,
|
|
@@ -144,4 +143,4 @@ const Condition = (props)=>{
|
|
|
144
143
|
};
|
|
145
144
|
export default Condition;
|
|
146
145
|
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9XaGVyZUJ1aWxkZXIvQ29uZGl0aW9uL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgdHlwZSB7IEZpZWxkQ29uZGl0aW9uIH0gZnJvbSAnLi4vdHlwZXMuanMnXG5pbXBvcnQgdHlwZSB7IFByb3BzIH0gZnJvbSAnLi90eXBlcy5qcydcblxuaW1wb3J0IHsgUmVuZGVyQ3VzdG9tQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZWxlbWVudHMvUmVuZGVyQ3VzdG9tQ29tcG9uZW50L2luZGV4LmpzJ1xuaW1wb3J0IHVzZURlYm91bmNlIGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZURlYm91bmNlLmpzJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uL2luZGV4LmpzJ1xuaW1wb3J0IFJlYWN0U2VsZWN0IGZyb20gJy4uLy4uL1JlYWN0U2VsZWN0L2luZGV4LmpzJ1xuaW1wb3J0IERhdGUgZnJvbSAnLi9EYXRlL2luZGV4LmpzJ1xuaW1wb3J0IE51bWJlciBmcm9tICcuL051bWJlci9pbmRleC5qcydcbmltcG9ydCBSZWxhdGlvbnNoaXAgZnJvbSAnLi9SZWxhdGlvbnNoaXAvaW5kZXguanMnXG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuL1NlbGVjdC9pbmRleC5qcydcbmltcG9ydCBUZXh0IGZyb20gJy4vVGV4dC9pbmRleC5qcydcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuXG5jb25zdCB2YWx1ZUZpZWxkcyA9IHtcbiAgRGF0ZSxcbiAgTnVtYmVyLFxuICBSZWxhdGlvbnNoaXAsXG4gIFNlbGVjdCxcbiAgVGV4dCxcbn1cblxuY29uc3QgYmFzZUNsYXNzID0gJ2NvbmRpdGlvbidcblxuY29uc3QgQ29uZGl0aW9uOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBhbmRJbmRleCwgZGlzcGF0Y2gsIGZpZWxkcywgb3JJbmRleCwgdmFsdWUgfSA9IHByb3BzXG4gIGNvbnN0IGZpZWxkTmFtZSA9IE9iamVjdC5rZXlzKHZhbHVlKVswXVxuICBjb25zdCBbYWN0aXZlRmllbGQsIHNldEFjdGl2ZUZpZWxkXSA9IHVzZVN0YXRlPEZpZWxkQ29uZGl0aW9uPigoKSA9PlxuICAgIGZpZWxkcy5maW5kKChmaWVsZCkgPT4gZmllbGROYW1lID09PSBmaWVsZC52YWx1ZSksXG4gIClcblxuICBjb25zdCBvcGVyYXRvckFuZFZhbHVlID0gdmFsdWU/LltmaWVsZE5hbWVdID8gT2JqZWN0LmVudHJpZXModmFsdWVbZmllbGROYW1lXSlbMF0gOiB1bmRlZmluZWRcbiAgY29uc3QgcXVlcnlWYWx1ZSA9IG9wZXJhdG9yQW5kVmFsdWU/LlsxXVxuICBjb25zdCBvcGVyYXRvclZhbHVlID0gb3BlcmF0b3JBbmRWYWx1ZT8uWzBdXG5cbiAgY29uc3QgW2ludGVybmFsVmFsdWUsIHNldEludGVybmFsVmFsdWVdID0gdXNlU3RhdGUocXVlcnlWYWx1ZSlcbiAgY29uc3QgW2ludGVybmFsT3BlcmF0b3JGaWVsZCwgc2V0SW50ZXJuYWxPcGVyYXRvckZpZWxkXSA9IHVzZVN0YXRlKG9wZXJhdG9yVmFsdWUpXG5cbiAgY29uc3QgZGVib3VuY2VkVmFsdWUgPSB1c2VEZWJvdW5jZShpbnRlcm5hbFZhbHVlLCAzMDApXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBuZXdBY3RpdmVGaWVsZCA9IGZpZWxkcy5maW5kKCh7IHZhbHVlOiBuYW1lIH0pID0+IG5hbWUgPT09IGZpZWxkTmFtZSlcblxuICAgIGlmIChuZXdBY3RpdmVGaWVsZCAmJiBuZXdBY3RpdmVGaWVsZCAhPT0gYWN0aXZlRmllbGQpIHtcbiAgICAgIHNldEFjdGl2ZUZpZWxkKG5ld0FjdGl2ZUZpZWxkKVxuICAgICAgc2V0SW50ZXJuYWxPcGVyYXRvckZpZWxkKG51bGwpXG4gICAgICBzZXRJbnRlcm5hbFZhbHVlKCcnKVxuICAgIH1cbiAgfSwgW2ZpZWxkTmFtZSwgZmllbGRzLCBhY3RpdmVGaWVsZF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaCh7XG4gICAgICB0eXBlOiAndXBkYXRlJyxcbiAgICAgIGFuZEluZGV4LFxuICAgICAgb3JJbmRleCxcbiAgICAgIHZhbHVlOiBkZWJvdW5jZWRWYWx1ZSB8fCAnJyxcbiAgICB9KVxuICB9LCBbZGVib3VuY2VkVmFsdWUsIGRpc3BhdGNoLCBvckluZGV4LCBhbmRJbmRleF0pXG5cbiAgY29uc3QgYm9vbGVhblNlbGVjdCA9IFsnZXhpc3RzJ10uaW5jbHVkZXMob3BlcmF0b3JWYWx1ZSkgfHwgYWN0aXZlRmllbGQucHJvcHMudHlwZSA9PT0gJ2NoZWNrYm94J1xuICBjb25zdCBWYWx1ZUNvbXBvbmVudCA9IGJvb2xlYW5TZWxlY3RcbiAgICA/IFNlbGVjdFxuICAgIDogdmFsdWVGaWVsZHNbYWN0aXZlRmllbGQ/LmNvbXBvbmVudF0gfHwgdmFsdWVGaWVsZHMuVGV4dFxuXG4gIGxldCB2YWx1ZU9wdGlvbnNcbiAgaWYgKGJvb2xlYW5TZWxlY3QpIHtcbiAgICB2YWx1ZU9wdGlvbnMgPSBbJ3RydWUnLCAnZmFsc2UnXVxuICB9IGVsc2UgaWYgKGFjdGl2ZUZpZWxkPy5wcm9wcyAmJiAnb3B0aW9ucycgaW4gYWN0aXZlRmllbGQucHJvcHMpIHtcbiAgICB2YWx1ZU9wdGlvbnMgPSBhY3RpdmVGaWVsZC5wcm9wcy5vcHRpb25zXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX3dyYXBgfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2lucHV0c2B9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19maWVsZGB9PlxuICAgICAgICAgICAgPFJlYWN0U2VsZWN0XG4gICAgICAgICAgICAgIGlzQ2xlYXJhYmxlPXtmYWxzZX1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhmaWVsZCkgPT4ge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICd1cGRhdGUnLFxuICAgICAgICAgICAgICAgICAgYW5kSW5kZXgsXG4gICAgICAgICAgICAgICAgICBmaWVsZDogZmllbGQ/LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgb3JJbmRleCxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBvcHRpb25zPXtmaWVsZHN9XG4gICAgICAgICAgICAgIHZhbHVlPXtmaWVsZHMuZmluZCgoZmllbGQpID0+IGZpZWxkTmFtZSA9PT0gZmllbGQudmFsdWUpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fb3BlcmF0b3JgfT5cbiAgICAgICAgICAgIDxSZWFjdFNlbGVjdFxuICAgICAgICAgICAgICBkaXNhYmxlZD17IWZpZWxkTmFtZX1cbiAgICAgICAgICAgICAgaXNDbGVhcmFibGU9e2ZhbHNlfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KG9wZXJhdG9yKSA9PiB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goe1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgICAgICBhbmRJbmRleCxcbiAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiBvcGVyYXRvci52YWx1ZSxcbiAgICAgICAgICAgICAgICAgIG9ySW5kZXgsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICBzZXRJbnRlcm5hbE9wZXJhdG9yRmllbGQob3BlcmF0b3IudmFsdWUpXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIG9wdGlvbnM9e2FjdGl2ZUZpZWxkLm9wZXJhdG9yc31cbiAgICAgICAgICAgICAgdmFsdWU9e1xuICAgICAgICAgICAgICAgIGFjdGl2ZUZpZWxkLm9wZXJhdG9ycy5maW5kKFxuICAgICAgICAgICAgICAgICAgKG9wZXJhdG9yKSA9PiBpbnRlcm5hbE9wZXJhdG9yRmllbGQgPT09IG9wZXJhdG9yLnZhbHVlLFxuICAgICAgICAgICAgICAgICkgfHwgbnVsbFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X192YWx1ZWB9PlxuICAgICAgICAgICAgPFJlbmRlckN1c3RvbUNvbXBvbmVudFxuICAgICAgICAgICAgICBDdXN0b21Db21wb25lbnQ9e2FjdGl2ZUZpZWxkPy5wcm9wcz8uYWRtaW4/LmNvbXBvbmVudHM/LkZpbHRlcn1cbiAgICAgICAgICAgICAgRGVmYXVsdENvbXBvbmVudD17VmFsdWVDb21wb25lbnR9XG4gICAgICAgICAgICAgIGNvbXBvbmVudFByb3BzPXt7XG4gICAgICAgICAgICAgICAgLi4uYWN0aXZlRmllbGQ/LnByb3BzLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkOiAhb3BlcmF0b3JWYWx1ZSxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogc2V0SW50ZXJuYWxWYWx1ZSxcbiAgICAgICAgICAgICAgICBvcGVyYXRvcjogb3BlcmF0b3JWYWx1ZSxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB2YWx1ZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGludGVybmFsVmFsdWUsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2FjdGlvbnNgfT5cbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBidXR0b25TdHlsZT1cImljb24tbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19hY3Rpb25zLXJlbW92ZWB9XG4gICAgICAgICAgICBpY29uPVwieFwiXG4gICAgICAgICAgICBpY29uU3R5bGU9XCJ3aXRoLWJvcmRlclwiXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PlxuICAgICAgICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3JlbW92ZScsXG4gICAgICAgICAgICAgICAgYW5kSW5kZXgsXG4gICAgICAgICAgICAgICAgb3JJbmRleCxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJvdW5kXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBidXR0b25TdHlsZT1cImljb24tbGFiZWxcIlxuICAgICAgICAgICAgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19hY3Rpb25zLWFkZGB9XG4gICAgICAgICAgICBpY29uPVwicGx1c1wiXG4gICAgICAgICAgICBpY29uU3R5bGU9XCJ3aXRoLWJvcmRlclwiXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PlxuICAgICAgICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZCcsXG4gICAgICAgICAgICAgICAgYW5kSW5kZXg6IGFuZEluZGV4ICsgMSxcbiAgICAgICAgICAgICAgICBmaWVsZDogZmllbGRzWzBdLnZhbHVlLFxuICAgICAgICAgICAgICAgIG9ySW5kZXgsXG4gICAgICAgICAgICAgICAgcmVsYXRpb246ICdhbmQnLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcm91bmRcbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApXG59XG5cbmV4cG9ydCBkZWZhdWx0IENvbmRpdGlvblxuIl0sIm5hbWVzIjpbIlJlYWN0IiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJSZW5kZXJDdXN0b21Db21wb25lbnQiLCJ1c2VEZWJvdW5jZSIsIkJ1dHRvbiIsIlJlYWN0U2VsZWN0IiwiRGF0ZSIsIk51bWJlciIsIlJlbGF0aW9uc2hpcCIsIlNlbGVjdCIsIlRleHQiLCJ2YWx1ZUZpZWxkcyIsImJhc2VDbGFzcyIsIkNvbmRpdGlvbiIsInByb3BzIiwiYW5kSW5kZXgiLCJkaXNwYXRjaCIsImZpZWxkcyIsIm9ySW5kZXgiLCJ2YWx1ZSIsImZpZWxkTmFtZSIsIk9iamVjdCIsImtleXMiLCJhY3RpdmVGaWVsZCIsInNldEFjdGl2ZUZpZWxkIiwiZmluZCIsImZpZWxkIiwib3BlcmF0b3JBbmRWYWx1ZSIsImVudHJpZXMiLCJ1bmRlZmluZWQiLCJxdWVyeVZhbHVlIiwib3BlcmF0b3JWYWx1ZSIsImludGVybmFsVmFsdWUiLCJzZXRJbnRlcm5hbFZhbHVlIiwiaW50ZXJuYWxPcGVyYXRvckZpZWxkIiwic2V0SW50ZXJuYWxPcGVyYXRvckZpZWxkIiwiZGVib3VuY2VkVmFsdWUiLCJuZXdBY3RpdmVGaWVsZCIsIm5hbWUiLCJ0eXBlIiwiYm9vbGVhblNlbGVjdCIsImluY2x1ZGVzIiwiVmFsdWVDb21wb25lbnQiLCJjb21wb25lbnQiLCJ2YWx1ZU9wdGlvbnMiLCJvcHRpb25zIiwiZGl2IiwiY2xhc3NOYW1lIiwiaXNDbGVhcmFibGUiLCJvbkNoYW5nZSIsImRpc2FibGVkIiwib3BlcmF0b3IiLCJvcGVyYXRvcnMiLCJDdXN0b21Db21wb25lbnQiLCJhZG1pbiIsImNvbXBvbmVudHMiLCJGaWx0ZXIiLCJEZWZhdWx0Q29tcG9uZW50IiwiY29tcG9uZW50UHJvcHMiLCJidXR0b25TdHlsZSIsImljb24iLCJpY29uU3R5bGUiLCJvbkNsaWNrIiwicm91bmQiLCJyZWxhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsU0FBU0MsU0FBUyxFQUFFQyxRQUFRLFFBQVEsUUFBTztBQUtsRCxTQUFTQyxxQkFBcUIsUUFBUSxtREFBa0Q7QUFDeEYs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
|
|
146
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\n\nimport type { FieldCondition } from '../types.js'\nimport type { Props } from './types.js'\n\nimport { RenderCustomComponent } from '../../../elements/RenderCustomComponent/index.js'\nimport useDebounce from '../../../hooks/useDebounce.js'\nimport { Button } from '../../Button/index.js'\nimport ReactSelect from '../../ReactSelect/index.js'\nimport { DateField } from './Date/index.js'\nimport Number from './Number/index.js'\nimport Relationship from './Relationship/index.js'\nimport { Select } from './Select/index.js'\nimport Text from './Text/index.js'\nimport './index.scss'\n\nconst valueFields = {\n DateField,\n Number,\n Relationship,\n Select,\n Text,\n}\n\nconst baseClass = 'condition'\n\nconst Condition: React.FC<Props> = (props) => {\n const { andIndex, dispatch, fields, orIndex, value } = props\n const fieldName = Object.keys(value)[0]\n const [activeField, setActiveField] = useState<FieldCondition>(() =>\n fields.find((field) => fieldName === field.value),\n )\n\n const operatorAndValue = value?.[fieldName] ? Object.entries(value[fieldName])[0] : undefined\n const queryValue = operatorAndValue?.[1]\n const operatorValue = operatorAndValue?.[0]\n\n const [internalValue, setInternalValue] = useState(queryValue)\n const [internalOperatorField, setInternalOperatorField] = useState(operatorValue)\n\n const debouncedValue = useDebounce(internalValue, 300)\n\n useEffect(() => {\n const newActiveField = fields.find(({ value: name }) => name === fieldName)\n\n if (newActiveField && newActiveField !== activeField) {\n setActiveField(newActiveField)\n setInternalOperatorField(null)\n setInternalValue('')\n }\n }, [fieldName, fields, activeField])\n\n useEffect(() => {\n dispatch({\n type: 'update',\n andIndex,\n orIndex,\n value: debouncedValue || '',\n })\n }, [debouncedValue, dispatch, orIndex, andIndex])\n\n const booleanSelect = ['exists'].includes(operatorValue) || activeField.props.type === 'checkbox'\n const ValueComponent = booleanSelect\n ? Select\n : valueFields[activeField?.component] || valueFields.Text\n\n let valueOptions\n if (booleanSelect) {\n valueOptions = ['true', 'false']\n } else if (activeField?.props && 'options' in activeField.props) {\n valueOptions = activeField.props.options\n }\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__inputs`}>\n <div className={`${baseClass}__field`}>\n <ReactSelect\n isClearable={false}\n onChange={(field) => {\n dispatch({\n type: 'update',\n andIndex,\n field: field?.value,\n orIndex,\n })\n }}\n options={fields}\n value={fields.find((field) => fieldName === field.value)}\n />\n </div>\n <div className={`${baseClass}__operator`}>\n <ReactSelect\n disabled={!fieldName}\n isClearable={false}\n onChange={(operator) => {\n dispatch({\n type: 'update',\n andIndex,\n operator: operator.value,\n orIndex,\n })\n setInternalOperatorField(operator.value)\n }}\n options={activeField.operators}\n value={\n activeField.operators.find(\n (operator) => internalOperatorField === operator.value,\n ) || null\n }\n />\n </div>\n <div className={`${baseClass}__value`}>\n <RenderCustomComponent\n CustomComponent={activeField?.props?.admin?.components?.Filter}\n DefaultComponent={ValueComponent}\n componentProps={{\n ...activeField?.props,\n disabled: !operatorValue,\n onChange: setInternalValue,\n operator: operatorValue,\n options: valueOptions,\n value: internalValue,\n }}\n />\n </div>\n </div>\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={() =>\n dispatch({\n type: 'remove',\n andIndex,\n orIndex,\n })\n }\n round\n />\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-add`}\n icon=\"plus\"\n iconStyle=\"with-border\"\n onClick={() =>\n dispatch({\n type: 'add',\n andIndex: andIndex + 1,\n field: fields[0].value,\n orIndex,\n relation: 'and',\n })\n }\n round\n />\n </div>\n </div>\n </div>\n )\n}\n\nexport default Condition\n"],"names":["React","useEffect","useState","RenderCustomComponent","useDebounce","Button","ReactSelect","DateField","Number","Relationship","Select","Text","valueFields","baseClass","Condition","props","andIndex","dispatch","fields","orIndex","value","fieldName","Object","keys","activeField","setActiveField","find","field","operatorAndValue","entries","undefined","queryValue","operatorValue","internalValue","setInternalValue","internalOperatorField","setInternalOperatorField","debouncedValue","newActiveField","name","type","booleanSelect","includes","ValueComponent","component","valueOptions","options","div","className","isClearable","onChange","disabled","operator","operators","CustomComponent","admin","components","Filter","DefaultComponent","componentProps","buttonStyle","icon","iconStyle","onClick","round","relation"],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/elements/WhereBuilder/Condition/types.ts"],"sourcesContent":["import type { Where } from 'payload/types'\n\nimport type { Action, FieldCondition } from '../types.js'\n\nexport type Props = {\n andIndex: number\n dispatch: (action: Action) => void\n fields: FieldCondition[]\n orIndex: number\n value: Where\n}\n"],"names":[],"mappings":"AAIA,WAMC"}
|
|
@@ -172,4 +172,4 @@ const fieldTypeConditions = {
|
|
|
172
172
|
};
|
|
173
173
|
export default fieldTypeConditions;
|
|
174
174
|
|
|
175
|
-
//# sourceMappingURL=
|
|
175
|
+
//# sourceMappingURL=field-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/WhereBuilder/field-types.tsx"],"sourcesContent":["const boolean = [\n {\n label: 'equals',\n value: 'equals',\n },\n {\n label: 'isNotEqualTo',\n value: 'not_equals',\n },\n]\n\nconst base = [\n ...boolean,\n {\n label: 'isIn',\n value: 'in',\n },\n {\n label: 'isNotIn',\n value: 'not_in',\n },\n {\n label: 'exists',\n value: 'exists',\n },\n]\n\nconst numeric = [\n ...base,\n {\n label: 'isGreaterThan',\n value: 'greater_than',\n },\n {\n label: 'isLessThan',\n value: 'less_than',\n },\n {\n label: 'isLessThanOrEqualTo',\n value: 'less_than_equal',\n },\n {\n label: 'isGreaterThanOrEqualTo',\n value: 'greater_than_equal',\n },\n]\n\nconst geo = [\n ...boolean,\n {\n label: 'exists',\n value: 'exists',\n },\n {\n label: 'near',\n value: 'near',\n },\n]\n\nconst within = {\n label: 'within',\n value: 'within',\n}\n\nconst intersects = {\n label: 'intersects',\n value: 'intersects',\n}\n\nconst like = {\n label: 'isLike',\n value: 'like',\n}\n\nconst contains = {\n label: 'contains',\n value: 'contains',\n}\n\nconst fieldTypeConditions = {\n checkbox: {\n component: 'Text',\n operators: boolean,\n },\n code: {\n component: 'Text',\n operators: [...base, like, contains],\n },\n date: {\n component: 'Date',\n operators: [...base, ...numeric],\n },\n email: {\n component: 'Text',\n operators: [...base, contains],\n },\n json: {\n component: 'Text',\n operators: [...base, like, contains, within, intersects],\n },\n number: {\n component: 'Number',\n operators: [...base, ...numeric],\n },\n point: {\n component: 'Point',\n operators: [...geo, within, intersects],\n },\n radio: {\n component: 'Select',\n operators: [...base],\n },\n relationship: {\n component: 'Relationship',\n operators: [...base],\n },\n richText: {\n component: 'Text',\n operators: [...base, like, contains],\n },\n select: {\n component: 'Select',\n operators: [...base],\n },\n text: {\n component: 'Text',\n operators: [...base, like, contains],\n },\n textarea: {\n component: 'Text',\n operators: [...base, like, contains],\n },\n upload: {\n component: 'Text',\n operators: [...base],\n },\n}\n\nexport default fieldTypeConditions\n"],"names":["boolean","label","value","base","numeric","geo","within","intersects","like","contains","fieldTypeConditions","checkbox","component","operators","code","date","email","json","number","point","radio","relationship","richText","select","text","textarea","upload"],"mappings":"AAAA,MAAMA,UAAU;IACd;QACEC,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;CACD;AAED,MAAMC,OAAO;OACRH;IACH;QACEC,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;CACD;AAED,MAAME,UAAU;OACXD;IACH;QACEF,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;CACD;AAED,MAAMG,MAAM;OACPL;IACH;QACEC,OAAO;QACPC,OAAO;IACT;IACA;QACED,OAAO;QACPC,OAAO;IACT;CACD;AAED,MAAMI,SAAS;IACbL,OAAO;IACPC,OAAO;AACT;AAEA,MAAMK,aAAa;IACjBN,OAAO;IACPC,OAAO;AACT;AAEA,MAAMM,OAAO;IACXP,OAAO;IACPC,OAAO;AACT;AAEA,MAAMO,WAAW;IACfR,OAAO;IACPC,OAAO;AACT;AAEA,MAAMQ,sBAAsB;IAC1BC,UAAU;QACRC,WAAW;QACXC,WAAWb;IACb;IACAc,MAAM;QACJF,WAAW;QACXC,WAAW;eAAIV;YAAMK;YAAMC;SAAS;IACtC;IACAM,MAAM;QACJH,WAAW;QACXC,WAAW;eAAIV;eAASC;SAAQ;IAClC;IACAY,OAAO;QACLJ,WAAW;QACXC,WAAW;eAAIV;YAAMM;SAAS;IAChC;IACAQ,MAAM;QACJL,WAAW;QACXC,WAAW;eAAIV;YAAMK;YAAMC;YAAUH;YAAQC;SAAW;IAC1D;IACAW,QAAQ;QACNN,WAAW;QACXC,WAAW;eAAIV;eAASC;SAAQ;IAClC;IACAe,OAAO;QACLP,WAAW;QACXC,WAAW;eAAIR;YAAKC;YAAQC;SAAW;IACzC;IACAa,OAAO;QACLR,WAAW;QACXC,WAAW;eAAIV;SAAK;IACtB;IACAkB,cAAc;QACZT,WAAW;QACXC,WAAW;eAAIV;SAAK;IACtB;IACAmB,UAAU;QACRV,WAAW;QACXC,WAAW;eAAIV;YAAMK;YAAMC;SAAS;IACtC;IACAc,QAAQ;QACNX,WAAW;QACXC,WAAW;eAAIV;SAAK;IACtB;IACAqB,MAAM;QACJZ,WAAW;QACXC,WAAW;eAAIV;YAAMK;YAAMC;SAAS;IACtC;IACAgB,UAAU;QACRb,WAAW;QACXC,WAAW;eAAIV;YAAMK;YAAMC;SAAS;IACtC;IACAiB,QAAQ;QACNd,WAAW;QACXC,WAAW;eAAIV;SAAK;IACtB;AACF;AAEA,eAAeO,oBAAmB"}
|
|
@@ -9,7 +9,6 @@ import { useTranslation } from '../../providers/Translation/index.js';
|
|
|
9
9
|
import { Button } from '../Button/index.js';
|
|
10
10
|
import Condition from './Condition/index.js';
|
|
11
11
|
import fieldTypes from './field-types.js';
|
|
12
|
-
import './index.scss';
|
|
13
12
|
import reducer from './reducer.js';
|
|
14
13
|
import { transformWhereQuery } from './transformWhereQuery.js';
|
|
15
14
|
import validateWhereQuery from './validateWhereQuery.js';
|
|
@@ -177,4 +176,4 @@ const reduceFields = (fields, i18n)=>flattenTopLevelFields(fields).reduce((reduc
|
|
|
177
176
|
};
|
|
178
177
|
export default WhereBuilder;
|
|
179
178
|
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9XaGVyZUJ1aWxkZXIvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCBxdWVyeVN0cmluZyBmcm9tICdxcydcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAnQHBheWxvYWRjbXMvdHJhbnNsYXRpb25zJ1xuaW1wb3J0IHsgZmxhdHRlblRvcExldmVsRmllbGRzIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVkdWNlciwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcblxuLy8gaW1wb3J0IHR5cGUgeyBXaGVyZSB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFByb3BzIH0gZnJvbSAnLi90eXBlcy5qcydcblxuaW1wb3J0IHsgdXNlQ29uZmlnIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL0NvbmZpZy9pbmRleC5qcydcbi8vIGltcG9ydCB1c2VUaHJvdHRsZWRFZmZlY3QgZnJvbSAnLi4vLi4vaG9va3MvdXNlVGhyb3R0bGVkRWZmZWN0J1xuaW1wb3J0IHsgdXNlU2VhcmNoUGFyYW1zIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL1NlYXJjaFBhcmFtcy9pbmRleC5qcydcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL1RyYW5zbGF0aW9uL2luZGV4LmpzJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vQnV0dG9uL2luZGV4LmpzJ1xuaW1wb3J0IENvbmRpdGlvbiBmcm9tICcuL0NvbmRpdGlvbi9pbmRleC5qcydcbmltcG9ydCBmaWVsZFR5cGVzIGZyb20gJy4vZmllbGQtdHlwZXMuanMnXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcbmltcG9ydCByZWR1Y2VyIGZyb20gJy4vcmVkdWNlci5qcydcbmltcG9ydCB7IHRyYW5zZm9ybVdoZXJlUXVlcnkgfSBmcm9tICcuL3RyYW5zZm9ybVdoZXJlUXVlcnkuanMnXG5pbXBvcnQgdmFsaWRhdGVXaGVyZVF1ZXJ5IGZyb20gJy4vdmFsaWRhdGVXaGVyZVF1ZXJ5LmpzJ1xuXG5jb25zdCBiYXNlQ2xhc3MgPSAnd2hlcmUtYnVpbGRlcidcblxuY29uc3QgcmVkdWNlRmllbGRzID0gKGZpZWxkcywgaTE4bikgPT5cbiAgZmxhdHRlblRvcExldmVsRmllbGRzKGZpZWxkcykucmVkdWNlKChyZWR1Y2VkLCBmaWVsZCkgPT4ge1xuICAgIGlmICh0eXBlb2YgZmllbGRUeXBlc1tmaWVsZC50eXBlXSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IG9wZXJhdG9yS2V5cyA9IG5ldyBTZXQoKVxuICAgICAgY29uc3Qgb3BlcmF0b3JzID0gZmllbGRUeXBlc1tmaWVsZC50eXBlXS5vcGVyYXRvcnMucmVkdWNlKChhY2MsIG9wZXJhdG9yKSA9PiB7XG4gICAgICAgIGlmICghb3BlcmF0b3JLZXlzLmhhcyhvcGVyYXRvci52YWx1ZSkpIHtcbiAgICAgICAgICBvcGVyYXRvcktleXMuYWRkKG9wZXJhdG9yLnZhbHVlKVxuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIC4uLm9wZXJhdG9yLFxuICAgICAgICAgICAgICBsYWJlbDogaTE4bi50KGBvcGVyYXRvcnM6JHtvcGVyYXRvci5sYWJlbH1gKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2NcbiAgICAgIH0sIFtdKVxuXG4gICAgICBjb25zdCBmb3JtYXR0ZWRGaWVsZCA9IHtcbiAgICAgICAgbGFiZWw6IGdldFRyYW5zbGF0aW9uKGZpZWxkLmxhYmVsIHx8IGZpZWxkLm5hbWUsIGkxOG4pLFxuICAgICAgICB2YWx1ZTogZmllbGQubmFtZSxcbiAgICAgICAgLi4uZmllbGRUeXBlc1tmaWVsZC50eXBlXSxcbiAgICAgICAgb3BlcmF0b3JzLFxuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIC4uLmZpZWxkLFxuICAgICAgICB9LFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gWy4uLnJlZHVjZWQsIGZvcm1hdHRlZEZpZWxkXVxuICAgIH1cblxuICAgIHJldHVybiByZWR1Y2VkXG4gIH0sIFtdKVxuXG4vKipcbiAqIFRoZSBXaGVyZUJ1aWxkZXIgY29tcG9uZW50IGlzIHVzZWQgdG8gcmVuZGVyIHRoZSBmaWx0ZXIgY29udHJvbHMgZm9yIGEgY29sbGVjdGlvbidzIGxpc3Qgdmlldy5cbiAqIEl0IGlzIHBhcnQgb2YgdGhlIHtAbGluayBMaXN0Q29udHJvbHN9IGNvbXBvbmVudCB3aGljaCBpcyB1c2VkIHRvIHJlbmRlciB0aGUgY29udHJvbHMgKHNlYXJjaCwgZmlsdGVyLCB3aGVyZSkuXG4gKi9cbmNvbnN0IFdoZXJlQnVpbGRlcjogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgY29sbGVjdGlvblBsdXJhbExhYmVsLCBjb2xsZWN0aW9uU2x1ZywgaGFuZGxlQ2hhbmdlLCBtb2RpZnlTZWFyY2hRdWVyeSA9IHRydWUgfSA9IHByb3BzXG4gIGNvbnN0IHsgaTE4biwgdCB9ID0gdXNlVHJhbnNsYXRpb24oKVxuXG4gIGNvbnN0IGNvbmZpZyA9IHVzZUNvbmZpZygpXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBjb25maWcuY29sbGVjdGlvbnMuZmluZCgoYykgPT4gYy5zbHVnID09PSBjb2xsZWN0aW9uU2x1ZylcbiAgY29uc3QgW3JlZHVjZWRGaWVsZHNdID0gdXNlU3RhdGUoKCkgPT4gcmVkdWNlRmllbGRzKGNvbGxlY3Rpb24uZmllbGRzLCBpMThuKSlcblxuICBjb25zdCB7IHNlYXJjaFBhcmFtcyB9ID0gdXNlU2VhcmNoUGFyYW1zKClcblxuICAvLyBUaGlzIGhhbmRsZXMgaW5pdGlhbGl6aW5nIHRoZSB3aGVyZSBjb25kaXRpb25zIGZyb20gdGhlIHNlYXJjaCBxdWVyeSAoVVJMKS4gVGhhdCB3YXksIGlmIHlvdSBwYXNzIGluXG4gIC8vIHF1ZXJ5IHBhcmFtcyB0byB0aGUgVVJMLCB0aGUgd2hlcmUgY29uZGl0aW9ucyB3aWxsIGJlIGluaXRpYWxpemVkIGZyb20gdGhvc2UgYW5kIGRpc3BsYXllZCBpbiB0aGUgVUkuXG4gIC8vIEV4YW1wbGU6IC9hZG1pbi9jb2xsZWN0aW9ucy9wb3N0cz93aGVyZVtvcl1bMF1bYW5kXVswXVt0ZXh0XVtlcXVhbHNdPWV4YW1wbGUlMjBwb3N0XG4gIGNvbnN0IFtjb25kaXRpb25zLCBkaXNwYXRjaENvbmRpdGlvbnNdID0gdXNlUmVkdWNlcihcbiAgICByZWR1Y2VyLFxuICAgIHNlYXJjaFBhcmFtcy53aGVyZSxcbiAgICAod2hlcmVGcm9tU2VhcmNoKSA9PiB7XG4gICAgICBpZiAobW9kaWZ5U2VhcmNoUXVlcnkgJiYgd2hlcmVGcm9tU2VhcmNoKSB7XG4gICAgICAgIGlmICh2YWxpZGF0ZVdoZXJlUXVlcnkod2hlcmVGcm9tU2VhcmNoKSkge1xuICAgICAgICAgIHJldHVybiB3aGVyZUZyb21TZWFyY2gub3JcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRyYW5zZm9ybSB0aGUgd2hlcmUgcXVlcnkgdG8gYmUgaW4gdGhlIHJpZ2h0IGZvcm1hdC4gVGhpcyB3aWxsIHRyYW5zZm9ybSBzb21ldGhpbmcgc2ltcGxlIGxpa2UgW3RleHRdW2VxdWFsc109ZXhhbXBsZSUyMHBvc3QgdG8gdGhlIHJpZ2h0IGZvcm1hdFxuICAgICAgICBjb25zdCB0cmFuc2Zvcm1lZFdoZXJlID0gdHJhbnNmb3JtV2hlcmVRdWVyeSh3aGVyZUZyb21TZWFyY2gpXG5cbiAgICAgICAgaWYgKHZhbGlkYXRlV2hlcmVRdWVyeSh0cmFuc2Zvcm1lZFdoZXJlKSkge1xuICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm1lZFdoZXJlLm9yXG4gICAgICAgIH1cblxuICAgICAgICBjb25zb2xlLndhcm4oJ0ludmFsaWQgd2hlcmUgcXVlcnkgaW4gVVJMLiBJZ25vcmluZy4nKVxuICAgICAgfVxuICAgICAgcmV0dXJuIFtdXG4gICAgfSxcbiAgKVxuXG4gIC8vIFRoaXMgaGFuZGxlcyB1cGRhdGluZyB0aGUgc2VhcmNoIHF1ZXJ5IChVUkwpIHdoZW4gdGhlIHdoZXJlIGNvbmRpdGlvbnMgY2hhbmdlXG4gIC8vIHVzZVRocm90dGxlZEVmZmVjdChcbiAgLy8gICAoKSA9PiB7XG4gIC8vICAgICBjb25zdCBjdXJyZW50UGFyYW1zID0gcXVlcnlTdHJpbmcucGFyc2UoaGlzdG9yeS5sb2NhdGlvbi5zZWFyY2gsIHtcbiAgLy8gICAgICAgZGVwdGg6IDEwLFxuICAvLyAgICAgICBpZ25vcmVRdWVyeVByZWZpeDogdHJ1ZSxcbiAgLy8gICAgIH0pIGFzIHsgd2hlcmU6IFdoZXJlIH1cblxuICAvLyAgICAgY29uc3QgcGFyYW1zVG9LZWVwID1cbiAgLy8gICAgICAgdHlwZW9mIGN1cnJlbnRQYXJhbXM/LndoZXJlID09PSAnb2JqZWN0JyAmJiAnb3InIGluIGN1cnJlbnRQYXJhbXMud2hlcmVcbiAgLy8gICAgICAgICA/IGN1cnJlbnRQYXJhbXMud2hlcmUub3IucmVkdWNlKChrZXB0UGFyYW1zLCBwYXJhbSkgPT4ge1xuICAvLyAgICAgICAgICAgICBjb25zdCBuZXdQYXJhbSA9IHsgLi4ucGFyYW0gfVxuICAvLyAgICAgICAgICAgICBpZiAocGFyYW0uYW5kKSB7XG4gIC8vICAgICAgICAgICAgICAgZGVsZXRlIG5ld1BhcmFtLmFuZFxuICAvLyAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgIHJldHVybiBbLi4ua2VwdFBhcmFtcywgbmV3UGFyYW1dXG4gIC8vICAgICAgICAgICB9LCBbXSlcbiAgLy8gICAgICAgICA6IFtdXG5cbiAgLy8gICAgIGNvbnN0IGhhc05ld1doZXJlQ29uZGl0aW9ucyA9IGNvbmRpdGlvbnMubGVuZ3RoID4gMFxuXG4gIC8vICAgICBjb25zdCBuZXdXaGVyZVF1ZXJ5ID0ge1xuICAvLyAgICAgICAuLi4odHlwZW9mIGN1cnJlbnRQYXJhbXM/LndoZXJlID09PSAnb2JqZWN0JyAmJlxuICAvLyAgICAgICAodmFsaWRhdGVXaGVyZVF1ZXJ5KGN1cnJlbnRQYXJhbXM/LndoZXJlKSB8fCAhaGFzTmV3V2hlcmVDb25kaXRpb25zKVxuICAvLyAgICAgICAgID8gY3VycmVudFBhcmFtcy53aGVyZVxuICAvLyAgICAgICAgIDoge30pLFxuICAvLyAgICAgICBvcjogWy4uLmNvbmRpdGlvbnMsIC4uLnBhcmFtc1RvS2VlcF0sXG4gIC8vICAgICB9XG5cbiAgLy8gICAgIGlmIChoYW5kbGVDaGFuZ2UpIGhhbmRsZUNoYW5nZShuZXdXaGVyZVF1ZXJ5IGFzIFdoZXJlKVxuXG4gIC8vICAgICBjb25zdCBoYXNFeGlzdGluZ0NvbmRpdGlvbnMgPVxuICAvLyAgICAgICB0eXBlb2YgY3VycmVudFBhcmFtcz8ud2hlcmUgPT09ICdvYmplY3QnICYmICdvcicgaW4gY3VycmVudFBhcmFtcy53aGVyZVxuXG4gIC8vICAgICBpZiAoXG4gIC8vICAgICAgIG1vZGlmeVNlYXJjaFF1ZXJ5ICYmXG4gIC8vICAgICAgICgoaGFzRXhpc3RpbmdDb25kaXRpb25zICYmICFoYXNOZXdXaGVyZUNvbmRpdGlvbnMpIHx8IGhhc05ld1doZXJlQ29uZGl0aW9ucylcbiAgLy8gICAgICkge1xuICAvLyAgICAgICBoaXN0b3J5LnJlcGxhY2Uoe1xuICAvLyAgICAgICAgIHNlYXJjaDogcXVlcnlTdHJpbmcuc3RyaW5naWZ5KFxuICAvLyAgICAgICAgICAge1xuICAvLyAgICAgICAgICAgICAuLi5jdXJyZW50UGFyYW1zLFxuICAvLyAgICAgICAgICAgICBwYWdlOiAxLFxuICAvLyAgICAgICAgICAgICB3aGVyZTogbmV3V2hlcmVRdWVyeSxcbiAgLy8gICAgICAgICAgIH0sXG4gIC8vICAgICAgICAgICB7IGFkZFF1ZXJ5UHJlZml4OiB0cnVlIH0sXG4gIC8vICAgICAgICAgKSxcbiAgLy8gICAgICAgfSlcbiAgLy8gICAgIH1cbiAgLy8gICB9LFxuICAvLyAgIDUwMCxcbiAgLy8gICBbY29uZGl0aW9ucywgbW9kaWZ5U2VhcmNoUXVlcnksIGhhbmRsZUNoYW5nZV0sXG4gIC8vIClcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9PlxuICAgICAge2NvbmRpdGlvbnMubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fbGFiZWxgfT5cbiAgICAgICAgICAgIHt0KCdnZW5lcmFsOmZpbHRlcldoZXJlJywgeyBsYWJlbDogZ2V0VHJhbnNsYXRpb24oY29sbGVjdGlvblBsdXJhbExhYmVsLCBpMThuKSB9KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8dWwgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19vci1maWx0ZXJzYH0+XG4gICAgICAgICAgICB7Y29uZGl0aW9ucy5tYXAoKG9yLCBvckluZGV4KSA9PiAoXG4gICAgICAgICAgICAgIDxsaSBrZXk9e29ySW5kZXh9PlxuICAgICAgICAgICAgICAgIHtvckluZGV4ICE9PSAwICYmIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19sYWJlbGB9Pnt0KCdnZW5lcmFsOm9yJyl9PC9kaXY+fVxuICAgICAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2FuZC1maWx0ZXJzYH0+XG4gICAgICAgICAgICAgICAgICB7QXJyYXkuaXNBcnJheShvcj8uYW5kKSAmJlxuICAgICAgICAgICAgICAgICAgICBvci5hbmQubWFwKChfLCBhbmRJbmRleCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e2FuZEluZGV4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHthbmRJbmRleCAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19sYWJlbGB9Pnt0KCdnZW5lcmFsOmFuZCcpfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb25kaXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kSW5kZXg9e2FuZEluZGV4fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaD17ZGlzcGF0Y2hDb25kaXRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHM9e3JlZHVjZWRGaWVsZHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YW5kSW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9ySW5kZXg9e29ySW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtjb25kaXRpb25zW29ySW5kZXhdLmFuZFthbmRJbmRleF19XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGJ1dHRvblN0eWxlPVwiaWNvbi1sYWJlbFwiXG4gICAgICAgICAgICBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2FkZC1vcmB9XG4gICAgICAgICAgICBpY29uPVwicGx1c1wiXG4gICAgICAgICAgICBpY29uUG9zaXRpb249XCJsZWZ0XCJcbiAgICAgICAgICAgIGljb25TdHlsZT1cIndpdGgtYm9yZGVyXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHJlZHVjZWRGaWVsZHMubGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICBkaXNwYXRjaENvbmRpdGlvbnMoeyB0eXBlOiAnYWRkJywgZmllbGQ6IHJlZHVjZWRGaWVsZHNbMF0udmFsdWUgfSlcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3QoJ2dlbmVyYWw6b3InKX1cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICl9XG4gICAgICB7Y29uZGl0aW9ucy5sZW5ndGggPT09IDAgJiYgKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fbm8tZmlsdGVyc2B9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19sYWJlbGB9Pnt0KCdnZW5lcmFsOm5vRmlsdGVyc1NldCcpfTwvZGl2PlxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGJ1dHRvblN0eWxlPVwiaWNvbi1sYWJlbFwiXG4gICAgICAgICAgICBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2FkZC1maXJzdC1maWx0ZXJgfVxuICAgICAgICAgICAgaWNvbj1cInBsdXNcIlxuICAgICAgICAgICAgaWNvblBvc2l0aW9uPVwibGVmdFwiXG4gICAgICAgICAgICBpY29uU3R5bGU9XCJ3aXRoLWJvcmRlclwiXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChyZWR1Y2VkRmllbGRzLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2hDb25kaXRpb25zKHsgdHlwZTogJ2FkZCcsIGZpZWxkOiByZWR1Y2VkRmllbGRzWzBdLnZhbHVlIH0pXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt0KCdnZW5lcmFsOmFkZEZpbHRlcicpfVxuICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQgV2hlcmVCdWlsZGVyXG4iXSwibmFtZXMiOlsiZ2V0VHJhbnNsYXRpb24iLCJmbGF0dGVuVG9wTGV2ZWxGaWVsZHMiLCJSZWFjdCIsInVzZVJlZHVjZXIiLCJ1c2VTdGF0ZSIsInVzZUNvbmZpZyIsInVzZVNlYXJjaFBhcmFtcyIsInVzZVRyYW5zbGF0aW9uIiwiQnV0dG9uIiwiQ29uZGl0aW9uIiwiZmllbGRUeXBlcyIsInJlZHVjZXIiLCJ0cmFuc2Zvcm1XaGVyZVF1ZXJ5IiwidmFsaWRhdGVXaGVyZVF1ZXJ5IiwiYmFzZUNsYXNzIiwicmVkdWNlRmllbGRzIiwiZmllbGRzIiwiaTE4biIsInJlZHVjZSIsInJlZHVjZWQiLCJmaWVsZCIsInR5cGUiLCJvcGVyYXRvcktleXMiLCJTZXQiLCJvcGVyYXRvcnMiLCJhY2MiLCJvcGVyYXRvciIsImhhcyIsInZhbHVlIiwiYWRkIiwibGFiZWwiLCJ0IiwiZm9ybWF0dGVkRmllbGQiLCJuYW1lIiwicHJvcHMiLCJXaGVyZUJ1aWxkZXIiLCJjb2xsZWN0aW9uUGx1cmFsTGFiZWwiLCJjb2xsZWN0aW9uU2x1ZyIsImhhbmRsZUNoYW5nZSIsIm1vZGlmeVNlYXJjaFF1ZXJ5IiwiY29uZmlnIiwiY29sbGVjdGlvbiIsImNvbGxlY3Rpb25zIiwiZmluZCIsImMiLCJzbHVnIiwicmVkdWNlZEZpZWxkcyIsInNlYXJjaFBhcmFtcyIsImNvbmRpdGlvbnMiLCJkaXNwYXRjaENvbmRpdGlvbnMiLCJ3aGVyZSIsIndoZXJlRnJvbVNlYXJjaCIsIm9yIiwidHJhbnNmb3JtZWRXaGVyZSIsImNvbnNvbGUiLCJ3YXJuIiwiZGl2IiwiY2xhc3NOYW1lIiwibGVuZ3RoIiwiRnJhZ21lbnQiLCJ1bCIsIm1hcCIsIm9ySW5kZXgiLCJsaSIsImtleSIsIkFycmF5IiwiaXNBcnJheSIsImFuZCIsIl8iLCJhbmRJbmRleCIsImRpc3BhdGNoIiwiYnV0dG9uU3R5bGUiLCJpY29uIiwiaWNvblBvc2l0aW9uIiwiaWNvblN0eWxlIiwib25DbGljayJdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLFNBQVNBLGNBQWMsUUFBUSwyQkFBMEI7QUFDekQsU0FBU0MscUJBQXFCLFFBQVEsb0JBQW1CO0FBQ3pELE9BQU9DLFNBQVNDLFVBQVUsRUFBRUMsUUFBUSxRQUFR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
|
|
179
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/WhereBuilder/index.tsx"],"sourcesContent":["// import queryString from 'qs'\nimport { getTranslation } from '@payloadcms/translations'\nimport { flattenTopLevelFields } from 'payload/utilities'\nimport React, { useReducer, useState } from 'react'\n\n// import type { Where } from 'payload/types'\nimport type { Props } from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\n// import useThrottledEffect from '../../hooks/useThrottledEffect'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport Condition from './Condition/index.js'\nimport fieldTypes from './field-types.js'\nimport './index.scss'\nimport reducer from './reducer.js'\nimport { transformWhereQuery } from './transformWhereQuery.js'\nimport validateWhereQuery from './validateWhereQuery.js'\n\nconst baseClass = 'where-builder'\n\nconst reduceFields = (fields, i18n) =>\n flattenTopLevelFields(fields).reduce((reduced, field) => {\n if (typeof fieldTypes[field.type] === 'object') {\n const operatorKeys = new Set()\n const operators = fieldTypes[field.type].operators.reduce((acc, operator) => {\n if (!operatorKeys.has(operator.value)) {\n operatorKeys.add(operator.value)\n return [\n ...acc,\n {\n ...operator,\n label: i18n.t(`operators:${operator.label}`),\n },\n ]\n }\n return acc\n }, [])\n\n const formattedField = {\n label: getTranslation(field.label || field.name, i18n),\n value: field.name,\n ...fieldTypes[field.type],\n operators,\n props: {\n ...field,\n },\n }\n\n return [...reduced, formattedField]\n }\n\n return reduced\n }, [])\n\n/**\n * The WhereBuilder component is used to render the filter controls for a collection's list view.\n * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where).\n */\nconst WhereBuilder: React.FC<Props> = (props) => {\n const { collectionPluralLabel, collectionSlug, handleChange, modifySearchQuery = true } = props\n const { i18n, t } = useTranslation()\n\n const config = useConfig()\n const collection = config.collections.find((c) => c.slug === collectionSlug)\n const [reducedFields] = useState(() => reduceFields(collection.fields, i18n))\n\n const { searchParams } = useSearchParams()\n\n // This handles initializing the where conditions from the search query (URL). That way, if you pass in\n // query params to the URL, the where conditions will be initialized from those and displayed in the UI.\n // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post\n const [conditions, dispatchConditions] = useReducer(\n reducer,\n searchParams.where,\n (whereFromSearch) => {\n if (modifySearchQuery && whereFromSearch) {\n if (validateWhereQuery(whereFromSearch)) {\n return whereFromSearch.or\n }\n\n // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format\n const transformedWhere = transformWhereQuery(whereFromSearch)\n\n if (validateWhereQuery(transformedWhere)) {\n return transformedWhere.or\n }\n\n console.warn('Invalid where query in URL. Ignoring.')\n }\n return []\n },\n )\n\n // This handles updating the search query (URL) when the where conditions change\n // useThrottledEffect(\n // () => {\n // const currentParams = queryString.parse(history.location.search, {\n // depth: 10,\n // ignoreQueryPrefix: true,\n // }) as { where: Where }\n\n // const paramsToKeep =\n // typeof currentParams?.where === 'object' && 'or' in currentParams.where\n // ? currentParams.where.or.reduce((keptParams, param) => {\n // const newParam = { ...param }\n // if (param.and) {\n // delete newParam.and\n // }\n // return [...keptParams, newParam]\n // }, [])\n // : []\n\n // const hasNewWhereConditions = conditions.length > 0\n\n // const newWhereQuery = {\n // ...(typeof currentParams?.where === 'object' &&\n // (validateWhereQuery(currentParams?.where) || !hasNewWhereConditions)\n // ? currentParams.where\n // : {}),\n // or: [...conditions, ...paramsToKeep],\n // }\n\n // if (handleChange) handleChange(newWhereQuery as Where)\n\n // const hasExistingConditions =\n // typeof currentParams?.where === 'object' && 'or' in currentParams.where\n\n // if (\n // modifySearchQuery &&\n // ((hasExistingConditions && !hasNewWhereConditions) || hasNewWhereConditions)\n // ) {\n // history.replace({\n // search: queryString.stringify(\n // {\n // ...currentParams,\n // page: 1,\n // where: newWhereQuery,\n // },\n // { addQueryPrefix: true },\n // ),\n // })\n // }\n // },\n // 500,\n // [conditions, modifySearchQuery, handleChange],\n // )\n\n return (\n <div className={baseClass}>\n {conditions.length > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__label`}>\n {t('general:filterWhere', { label: getTranslation(collectionPluralLabel, i18n) })}\n </div>\n <ul className={`${baseClass}__or-filters`}>\n {conditions.map((or, orIndex) => (\n <li key={orIndex}>\n {orIndex !== 0 && <div className={`${baseClass}__label`}>{t('general:or')}</div>}\n <ul className={`${baseClass}__and-filters`}>\n {Array.isArray(or?.and) &&\n or.and.map((_, andIndex) => (\n <li key={andIndex}>\n {andIndex !== 0 && (\n <div className={`${baseClass}__label`}>{t('general:and')}</div>\n )}\n <Condition\n andIndex={andIndex}\n dispatch={dispatchConditions}\n fields={reducedFields}\n key={andIndex}\n orIndex={orIndex}\n value={conditions[orIndex].and[andIndex]}\n />\n </li>\n ))}\n </ul>\n </li>\n ))}\n </ul>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-or`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0)\n dispatchConditions({ type: 'add', field: reducedFields[0].value })\n }}\n >\n {t('general:or')}\n </Button>\n </React.Fragment>\n )}\n {conditions.length === 0 && (\n <div className={`${baseClass}__no-filters`}>\n <div className={`${baseClass}__label`}>{t('general:noFiltersSet')}</div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-first-filter`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0)\n dispatchConditions({ type: 'add', field: reducedFields[0].value })\n }}\n >\n {t('general:addFilter')}\n </Button>\n </div>\n )}\n </div>\n )\n}\n\nexport default WhereBuilder\n"],"names":["getTranslation","flattenTopLevelFields","React","useReducer","useState","useConfig","useSearchParams","useTranslation","Button","Condition","fieldTypes","reducer","transformWhereQuery","validateWhereQuery","baseClass","reduceFields","fields","i18n","reduce","reduced","field","type","operatorKeys","Set","operators","acc","operator","has","value","add","label","t","formattedField","name","props","WhereBuilder","collectionPluralLabel","collectionSlug","handleChange","modifySearchQuery","config","collection","collections","find","c","slug","reducedFields","searchParams","conditions","dispatchConditions","where","whereFromSearch","or","transformedWhere","console","warn","div","className","length","Fragment","ul","map","orIndex","li","key","Array","isArray","and","_","andIndex","dispatch","buttonStyle","icon","iconPosition","iconStyle","onClick"],"mappings":"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"}
|