@payloadcms/ui 3.0.0-canary.95fcd13 → 3.0.0-canary.98cbdb9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +5 -2
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/AppHeader/index.scss +5 -3
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +3 -3
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Card/index.scss +3 -3
- package/dist/elements/Collapsible/index.scss +4 -1
- package/dist/elements/ColumnSelector/index.d.ts +1 -1
- package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
- package/dist/elements/ColumnSelector/index.js +2 -2
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +1 -1
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.scss +1 -0
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +1 -1
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.scss +1 -0
- package/dist/elements/DocumentControls/index.d.ts +10 -10
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +11 -13
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.scss +18 -7
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +6 -5
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +10 -10
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.d.ts +9 -9
- package/dist/elements/DocumentFields/index.d.ts.map +1 -1
- package/dist/elements/DocumentFields/index.js +6 -5
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +6 -6
- package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
- package/dist/elements/Drawer/types.d.ts +7 -7
- package/dist/elements/Drawer/types.d.ts.map +1 -1
- package/dist/elements/Drawer/types.js.map +1 -1
- package/dist/elements/Dropzone/index.d.ts +5 -4
- package/dist/elements/Dropzone/index.d.ts.map +1 -1
- package/dist/elements/Dropzone/index.js +4 -2
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +1 -2
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.scss +1 -0
- package/dist/elements/EditMany/index.d.ts +3 -3
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +4 -4
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditMany/index.scss +4 -10
- package/dist/elements/FieldSelect/index.d.ts +4 -4
- package/dist/elements/FieldSelect/index.d.ts.map +1 -1
- package/dist/elements/FieldSelect/index.js +32 -21
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.scss +1 -0
- package/dist/elements/Hamburger/index.d.ts +2 -2
- package/dist/elements/Hamburger/index.d.ts.map +1 -1
- package/dist/elements/Hamburger/index.js +2 -1
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/HydrateAuthProvider/index.d.ts +13 -0
- package/dist/elements/HydrateAuthProvider/index.d.ts.map +1 -0
- package/dist/elements/{HydrateClientUser → HydrateAuthProvider}/index.js +3 -6
- package/dist/elements/HydrateAuthProvider/index.js.map +1 -0
- package/dist/elements/IDLabel/index.scss +3 -2
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -2
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +4 -3
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts +8 -8
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +9 -9
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +14 -5
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +14 -7
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/index.d.ts.map +1 -1
- package/dist/elements/ListDrawer/index.js +1 -1
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListDrawer/index.scss +4 -4
- package/dist/elements/ListDrawer/types.d.ts +6 -6
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +5 -4
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.scss +6 -0
- package/dist/elements/Localizer/index.js +1 -1
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Logout/index.d.ts.map +1 -1
- package/dist/elements/Logout/index.js +6 -6
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/context.d.ts +3 -0
- package/dist/elements/Nav/context.d.ts.map +1 -1
- package/dist/elements/Nav/context.js +16 -7
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Popup/index.d.ts +1 -1
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.d.ts +2 -1
- package/dist/elements/PreviewButton/index.d.ts.map +1 -1
- package/dist/elements/PreviewButton/index.js +6 -1
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
- package/dist/elements/PreviewButton/usePreviewURL.js +1 -1
- package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts +2 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +4 -1
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/index.d.ts.map +1 -1
- package/dist/elements/PublishMany/index.js +1 -1
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/PublishMany/index.scss +1 -0
- package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/Control/index.js.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.scss +1 -1
- package/dist/elements/RenderTitle/index.scss +1 -1
- package/dist/elements/SaveButton/index.d.ts +2 -1
- package/dist/elements/SaveButton/index.d.ts.map +1 -1
- package/dist/elements/SaveButton/index.js +4 -1
- package/dist/elements/SaveButton/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts +2 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +5 -2
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/Status/index.d.ts.map +1 -1
- package/dist/elements/Status/index.js +1 -1
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/Status/index.scss +1 -0
- package/dist/elements/StayLoggedIn/index.js +1 -1
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.scss +1 -0
- package/dist/elements/StepNav/index.d.ts +2 -2
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +11 -8
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StepNav/index.scss +1 -1
- package/dist/elements/StepNav/types.d.ts +2 -2
- package/dist/elements/StepNav/types.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +2 -3
- package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +2 -2
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -4
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +3 -3
- package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -4
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +6 -8
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +2 -3
- package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +16 -12
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +1 -2
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/TableCellProvider/index.d.ts +6 -6
- package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
- package/dist/elements/Table/index.d.ts +11 -14
- package/dist/elements/Table/index.d.ts.map +1 -1
- package/dist/elements/Table/index.js +7 -1
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.d.ts +2 -2
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.js +30 -32
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
- package/dist/elements/TableColumns/filterFields.d.ts +2 -2
- package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
- package/dist/elements/TableColumns/filterFields.js +8 -11
- package/dist/elements/TableColumns/filterFields.js.map +1 -1
- package/dist/elements/TableColumns/getInitialColumns.d.ts +2 -3
- package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
- package/dist/elements/TableColumns/getInitialColumns.js +9 -11
- package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
- package/dist/elements/TableColumns/index.d.ts +6 -6
- package/dist/elements/TableColumns/index.d.ts.map +1 -1
- package/dist/elements/TableColumns/index.js +8 -11
- package/dist/elements/TableColumns/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.d.ts +2 -2
- package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
- package/dist/elements/ThumbnailCard/index.js +1 -1
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +2 -2
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.scss +1 -0
- package/dist/elements/Upload/index.d.ts +9 -9
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +9 -10
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +5 -5
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
- package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -2
- package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.d.ts +9 -9
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +33 -22
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.js +9 -8
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WhereBuilder/reduceClientFields.d.ts +15 -0
- package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/{reduceFieldMap.js → reduceClientFields.js} +28 -26
- package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -0
- package/dist/elements/WhereBuilder/types.d.ts +6 -5
- package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/types.js.map +1 -1
- package/dist/exports/client/{CodeEditor-UPOVAXRP.js → CodeEditor-MODTAQNB.js} +1 -1
- package/dist/exports/client/{CodeEditor-UPOVAXRP.js.map → CodeEditor-MODTAQNB.js.map} +1 -1
- package/dist/exports/client/{DatePicker-XJHHMZP7.js → DatePicker-QKRYICNS.js} +2 -2
- package/dist/exports/client/chunk-HR5HEGNB.js +30 -0
- package/dist/exports/client/{chunk-TIH7OFW3.js.map → chunk-HR5HEGNB.js.map} +4 -4
- package/dist/exports/client/index.d.ts +11 -3
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +27 -27
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +3 -1
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.d.ts +21 -21
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +3 -3
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +11 -9
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts +3 -3
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +9 -6
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts +6 -6
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +13 -13
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.scss +12 -2
- package/dist/fields/Blocks/index.d.ts +2 -2
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +10 -6
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Blocks/index.scss +1 -0
- package/dist/fields/Checkbox/Input.d.ts +15 -15
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +9 -4
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +9 -6
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +14 -6
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.js +7 -5
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.d.ts +2 -2
- package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.d.ts.map +1 -1
- package/dist/fields/DateTime/index.js +14 -6
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js +15 -6
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/FieldDescription/index.d.ts.map +1 -1
- package/dist/fields/FieldDescription/index.js +8 -4
- package/dist/fields/FieldDescription/index.js.map +1 -1
- package/dist/fields/FieldError/index.d.ts.map +1 -1
- package/dist/fields/FieldError/index.js +8 -4
- package/dist/fields/FieldError/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.d.ts.map +1 -1
- package/dist/fields/FieldLabel/index.js +8 -4
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +63 -56
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Hidden/index.d.ts.map +1 -1
- package/dist/fields/Hidden/index.js +1 -1
- package/dist/fields/Hidden/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +14 -6
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Number/Input.d.ts +2 -0
- package/dist/fields/Number/Input.d.ts.map +1 -0
- package/dist/fields/Number/Input.js +2 -0
- package/dist/fields/Number/Input.js.map +1 -0
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js +14 -6
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts +1 -24
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js +11 -8
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Password/input.d.ts.map +1 -1
- package/dist/fields/Password/input.js +18 -8
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/Password/types.d.ts +32 -23
- package/dist/fields/Password/types.d.ts.map +1 -1
- package/dist/fields/Password/types.js.map +1 -1
- package/dist/fields/Point/index.d.ts.map +1 -1
- package/dist/fields/Point/index.js +23 -9
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +7 -4
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
- package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +8 -5
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/RichText/index.d.ts +2 -2
- package/dist/fields/RichText/index.d.ts.map +1 -1
- package/dist/fields/RichText/index.js.map +1 -1
- package/dist/fields/Row/index.d.ts.map +1 -1
- package/dist/fields/Row/index.js +6 -8
- package/dist/fields/Row/index.js.map +1 -1
- package/dist/fields/Select/Input.d.ts +26 -6
- package/dist/fields/Select/Input.d.ts.map +1 -1
- package/dist/fields/Select/Input.js +13 -6
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +8 -9
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.d.ts +5 -5
- package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +4 -5
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +10 -9
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/index.scss +2 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +13 -6
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.js +9 -10
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Text/index.scss +6 -0
- package/dist/fields/Text/types.d.ts +32 -13
- package/dist/fields/Text/types.d.ts.map +1 -1
- package/dist/fields/Text/types.js.map +1 -1
- package/dist/fields/Textarea/Input.d.ts.map +1 -1
- package/dist/fields/Textarea/Input.js +13 -6
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.js +9 -10
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Textarea/types.d.ts +28 -6
- package/dist/fields/Textarea/types.d.ts.map +1 -1
- package/dist/fields/Textarea/types.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts +25 -12
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +5 -4
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/index.d.ts.map +1 -1
- package/dist/fields/Upload/index.js +7 -10
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/fields/index.d.ts +5 -1
- package/dist/fields/index.d.ts.map +1 -1
- package/dist/fields/index.js.map +1 -1
- package/dist/forms/FieldPropsProvider/index.d.ts +11 -11
- package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
- package/dist/forms/FieldPropsProvider/index.js.map +1 -1
- package/dist/forms/Form/createNestedClientFieldPath.d.ts +3 -0
- package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -0
- package/dist/forms/Form/{createNestedFieldPath.js → createNestedClientFieldPath.js} +2 -13
- package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -0
- package/dist/forms/Form/index.js +1 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/types.d.ts +3 -3
- package/dist/forms/Form/types.d.ts.map +1 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/NullifyField/index.d.ts +3 -3
- package/dist/forms/NullifyField/index.d.ts.map +1 -1
- package/dist/forms/NullifyField/index.js +5 -15
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.d.ts +12 -15
- package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +34 -14
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.d.ts.map +1 -1
- package/dist/forms/RenderFields/index.js +7 -14
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RenderFields/types.d.ts +11 -11
- package/dist/forms/RenderFields/types.d.ts.map +1 -1
- package/dist/forms/RenderFields/types.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.d.ts +4 -4
- package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/RowLabel/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/index.js +8 -2
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/RowLabel/types.d.ts +7 -8
- package/dist/forms/RowLabel/types.d.ts.map +1 -1
- package/dist/forms/RowLabel/types.js.map +1 -1
- package/dist/forms/WatchChildErrors/buildPathSegments.d.ts +2 -2
- package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
- package/dist/forms/WatchChildErrors/buildPathSegments.js +11 -10
- package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
- package/dist/forms/WatchChildErrors/index.d.ts +2 -2
- package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
- package/dist/forms/WatchChildErrors/index.js +3 -3
- package/dist/forms/WatchChildErrors/index.js.map +1 -1
- package/dist/forms/useField/index.js +1 -1
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/useField/types.d.ts +1 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
- package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
- package/dist/forms/withCondition/WatchCondition.js.map +1 -1
- package/dist/graphics/Account/index.d.ts.map +1 -1
- package/dist/graphics/Account/index.js +12 -6
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/hooks/useDelayedRender.d.ts.map +1 -1
- package/dist/hooks/useDelayedRender.js.map +1 -1
- package/dist/hooks/useUseAsTitle.d.ts +2 -2
- package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
- package/dist/hooks/useUseAsTitle.js +3 -3
- package/dist/hooks/useUseAsTitle.js.map +1 -1
- package/dist/icons/Chevron/index.js +1 -1
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/LogOut/index.d.ts.map +1 -1
- package/dist/icons/LogOut/index.js +2 -1
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/providers/Actions/SetViewActions/index.d.ts +3 -3
- package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
- package/dist/providers/Actions/SetViewActions/index.js +1 -1
- package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
- package/dist/providers/Actions/index.d.ts +6 -6
- package/dist/providers/Actions/index.d.ts.map +1 -1
- package/dist/providers/Actions/index.js +2 -2
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/index.d.ts +6 -2
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +11 -5
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Config/RenderComponent.d.ts +12 -0
- package/dist/providers/Config/RenderComponent.d.ts.map +1 -0
- package/dist/providers/Config/RenderComponent.js +72 -0
- package/dist/providers/Config/RenderComponent.js.map +1 -0
- package/dist/providers/Config/createClientConfig/collections.d.ts +24 -0
- package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/collections.js +173 -0
- package/dist/providers/Config/createClientConfig/collections.js.map +1 -0
- package/dist/providers/Config/createClientConfig/fields.d.ts +22 -0
- package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/fields.js +299 -0
- package/dist/providers/Config/createClientConfig/fields.js.map +1 -0
- package/dist/providers/Config/createClientConfig/getComponent.d.ts +11 -0
- package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/getComponent.js +30 -0
- package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -0
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts +11 -0
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +91 -0
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -0
- package/dist/providers/Config/createClientConfig/globals.d.ts +22 -0
- package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/globals.js +103 -0
- package/dist/providers/Config/createClientConfig/globals.js.map +1 -0
- package/dist/providers/Config/createClientConfig/index.d.ts +21 -0
- package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -0
- package/dist/providers/Config/createClientConfig/index.js +98 -0
- package/dist/providers/Config/createClientConfig/index.js.map +1 -0
- package/dist/providers/Config/index.d.ts +10 -3
- package/dist/providers/Config/index.d.ts.map +1 -1
- package/dist/providers/Config/index.js +17 -3
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +16 -16
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/FieldComponents/index.d.ts +4 -3
- package/dist/providers/FieldComponents/index.d.ts.map +1 -1
- package/dist/providers/FieldComponents/index.js +2 -3
- package/dist/providers/FieldComponents/index.js.map +1 -1
- package/dist/providers/ListInfo/index.d.ts +12 -12
- package/dist/providers/ListInfo/index.d.ts.map +1 -1
- package/dist/providers/ListInfo/index.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +1 -1
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Params/index.d.ts +2 -1
- package/dist/providers/Params/index.d.ts.map +1 -1
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/Preferences/index.js +1 -1
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts +4 -3
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +47 -46
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/scss/app.scss +4 -4
- package/dist/scss/toasts.scss +15 -14
- package/dist/scss/type.scss +1 -0
- package/dist/scss/vars.scss +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -0
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +19 -7
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/utilities/flattenFieldMap.d.ts +2 -2
- package/dist/utilities/flattenFieldMap.d.ts.map +1 -1
- package/dist/utilities/flattenFieldMap.js +8 -8
- package/dist/utilities/flattenFieldMap.js.map +1 -1
- package/dist/utilities/groupNavItems.d.ts +3 -3
- package/dist/utilities/groupNavItems.d.ts.map +1 -1
- package/dist/utilities/groupNavItems.js.map +1 -1
- package/dist/utilities/reduceFieldsToValuesWithValidation.js +1 -1
- package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
- package/package.json +14 -8
- package/dist/elements/HydrateClientUser/index.d.ts +0 -6
- package/dist/elements/HydrateClientUser/index.d.ts.map +0 -1
- package/dist/elements/HydrateClientUser/index.js.map +0 -1
- package/dist/elements/RenderCustomClientComponent/index.d.ts +0 -8
- package/dist/elements/RenderCustomClientComponent/index.d.ts.map +0 -1
- package/dist/elements/RenderCustomClientComponent/index.js +0 -19
- package/dist/elements/RenderCustomClientComponent/index.js.map +0 -1
- package/dist/elements/RenderCustomComponent/index.d.ts +0 -17
- package/dist/elements/RenderCustomComponent/index.d.ts.map +0 -1
- package/dist/elements/RenderCustomComponent/index.js +0 -26
- package/dist/elements/RenderCustomComponent/index.js.map +0 -1
- package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +0 -14
- package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +0 -1
- package/dist/elements/WhereBuilder/reduceFieldMap.js.map +0 -1
- package/dist/exports/client/chunk-TIH7OFW3.js +0 -30
- package/dist/forms/Form/createNestedFieldPath.d.ts +0 -4
- package/dist/forms/Form/createNestedFieldPath.d.ts.map +0 -1
- package/dist/forms/Form/createNestedFieldPath.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +0 -9
- package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/actions.js +0 -45
- package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +0 -17
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.js +0 -117
- package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +0 -17
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.js +0 -696
- package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +0 -18
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.js +0 -80
- package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +0 -16
- package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.js +0 -77
- package/dist/providers/ComponentMap/buildComponentMap/index.js.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +0 -39
- package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +0 -1
- package/dist/providers/ComponentMap/buildComponentMap/types.js +0 -3
- package/dist/providers/ComponentMap/buildComponentMap/types.js.map +0 -1
- package/dist/providers/ComponentMap/index.d.ts +0 -25
- package/dist/providers/ComponentMap/index.d.ts.map +0 -1
- package/dist/providers/ComponentMap/index.js +0 -53
- package/dist/providers/ComponentMap/index.js.map +0 -1
- package/dist/utilities/buildComponentMap.d.ts +0 -4
- package/dist/utilities/buildComponentMap.d.ts.map +0 -1
- package/dist/utilities/buildComponentMap.js +0 -4
- package/dist/utilities/buildComponentMap.js.map +0 -1
- /package/dist/exports/client/{DatePicker-XJHHMZP7.js.map → DatePicker-QKRYICNS.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAc1D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAsF7B,CAAA"}
|
|
@@ -4,6 +4,7 @@ import LinkWithDefault from 'next/link.js';
|
|
|
4
4
|
import React, { useEffect, useRef, useState } from 'react';
|
|
5
5
|
import { Account } from '../../graphics/Account/index.js';
|
|
6
6
|
import { useActions } from '../../providers/Actions/index.js';
|
|
7
|
+
import { RenderComponent } from '../../providers/Config/RenderComponent.js';
|
|
7
8
|
import { useConfig } from '../../providers/Config/index.js';
|
|
8
9
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
9
10
|
import { formatAdminURL } from '../../utilities/formatAdminURL.js';
|
|
@@ -17,7 +18,7 @@ import './index.scss';
|
|
|
17
18
|
const baseClass = 'app-header';
|
|
18
19
|
export const AppHeader = ()=>{
|
|
19
20
|
const { t } = useTranslation();
|
|
20
|
-
const { admin: { routes: { account: accountRoute } }, localization, routes: { admin: adminRoute } } = useConfig();
|
|
21
|
+
const { config: { admin: { routes: { account: accountRoute } }, localization, routes: { admin: adminRoute } } } = useConfig();
|
|
21
22
|
const { actions } = useActions();
|
|
22
23
|
const { navOpen } = useNav();
|
|
23
24
|
const customControlsRef = useRef(null);
|
|
@@ -77,7 +78,9 @@ export const AppHeader = ()=>{
|
|
|
77
78
|
ref: customControlsRef,
|
|
78
79
|
children: Array.isArray(actions) && actions.map((Action, i)=>/*#__PURE__*/ _jsx("div", {
|
|
79
80
|
className: isScrollable && i === actions.length - 1 ? `${baseClass}__last-action` : '',
|
|
80
|
-
children:
|
|
81
|
+
children: /*#__PURE__*/ _jsx(RenderComponent, {
|
|
82
|
+
mappedComponent: Action
|
|
83
|
+
})
|
|
81
84
|
}, i))
|
|
82
85
|
}),
|
|
83
86
|
isScrollable && /*#__PURE__*/ _jsx("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/AppHeader/index.tsx"],"sourcesContent":["'use client'\nimport LinkWithDefault from 'next/link.js'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { Account } from '../../graphics/Account/index.js'\nimport { useActions } from '../../providers/Actions/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Hamburger } from '../Hamburger/index.js'\nimport { LocalizerLabel } from '../Localizer/LocalizerLabel/index.js'\nimport { Localizer } from '../Localizer/index.js'\nimport { NavToggler } from '../Nav/NavToggler/index.js'\nimport { useNav } from '../Nav/context.js'\nimport { StepNav } from '../StepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'app-header'\n\nexport const AppHeader: React.FC = () => {\n const { t } = useTranslation()\n\n const {\n admin: {\n
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/AppHeader/index.tsx"],"sourcesContent":["'use client'\nimport LinkWithDefault from 'next/link.js'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { Account } from '../../graphics/Account/index.js'\nimport { useActions } from '../../providers/Actions/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Hamburger } from '../Hamburger/index.js'\nimport { LocalizerLabel } from '../Localizer/LocalizerLabel/index.js'\nimport { Localizer } from '../Localizer/index.js'\nimport { NavToggler } from '../Nav/NavToggler/index.js'\nimport { useNav } from '../Nav/context.js'\nimport { StepNav } from '../StepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'app-header'\n\nexport const AppHeader: React.FC = () => {\n const { t } = useTranslation()\n\n const {\n config: {\n admin: {\n routes: { account: accountRoute },\n },\n localization,\n routes: { admin: adminRoute },\n },\n } = useConfig()\n\n const { actions } = useActions()\n\n const { navOpen } = useNav()\n\n const customControlsRef = useRef<HTMLDivElement>(null)\n const [isScrollable, setIsScrollable] = useState(false)\n\n useEffect(() => {\n const checkIsScrollable = () => {\n const el = customControlsRef.current\n if (el) {\n const scrollable = el.scrollWidth > el.clientWidth\n setIsScrollable(scrollable)\n }\n }\n\n checkIsScrollable()\n window.addEventListener('resize', checkIsScrollable)\n\n return () => {\n window.removeEventListener('resize', checkIsScrollable)\n }\n }, [actions])\n\n const Link = LinkWithDefault.default\n\n const LinkElement = Link || 'a'\n\n return (\n <header className={[baseClass, navOpen && `${baseClass}--nav-open`].filter(Boolean).join(' ')}>\n <div className={`${baseClass}__bg`} />\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__wrapper`}>\n <NavToggler className={`${baseClass}__mobile-nav-toggler`} tabIndex={-1}>\n <Hamburger />\n </NavToggler>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__step-nav-wrapper`}>\n <StepNav Link={Link} className={`${baseClass}__step-nav`} />\n </div>\n <div className={`${baseClass}__actions-wrapper`}>\n <div className={`${baseClass}__actions`} ref={customControlsRef}>\n {Array.isArray(actions) &&\n actions.map((Action, i) => (\n <div\n className={\n isScrollable && i === actions.length - 1 ? `${baseClass}__last-action` : ''\n }\n key={i}\n >\n <RenderComponent mappedComponent={Action} />\n </div>\n ))}\n </div>\n {isScrollable && <div className={`${baseClass}__gradient-placeholder`} />}\n </div>\n {localization && (\n <LocalizerLabel ariaLabel=\"invisible\" className={`${baseClass}__localizer-spacing`} />\n )}\n <LinkElement\n aria-label={t('authentication:account')}\n className={`${baseClass}__account`}\n href={formatAdminURL({ adminRoute, path: accountRoute })}\n tabIndex={0}\n >\n <Account />\n </LinkElement>\n </div>\n </div>\n </div>\n <Localizer className={`${baseClass}__localizer`} />\n </header>\n )\n}\n"],"names":["LinkWithDefault","React","useEffect","useRef","useState","Account","useActions","RenderComponent","useConfig","useTranslation","formatAdminURL","Hamburger","LocalizerLabel","Localizer","NavToggler","useNav","StepNav","baseClass","AppHeader","t","config","admin","routes","account","accountRoute","localization","adminRoute","actions","navOpen","customControlsRef","isScrollable","setIsScrollable","checkIsScrollable","el","current","scrollable","scrollWidth","clientWidth","window","addEventListener","removeEventListener","Link","default","LinkElement","header","className","filter","Boolean","join","div","tabIndex","ref","Array","isArray","map","Action","i","length","mappedComponent","ariaLabel","aria-label","href","path"],"mappings":"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"}
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
height: 100%;
|
|
58
58
|
flex-grow: 1;
|
|
59
59
|
justify-content: space-between;
|
|
60
|
-
|
|
60
|
+
width: 100%;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
&__account {
|
|
@@ -90,12 +90,14 @@
|
|
|
90
90
|
align-items: center;
|
|
91
91
|
flex-grow: 1;
|
|
92
92
|
overflow: hidden;
|
|
93
|
+
width: 100%;
|
|
93
94
|
}
|
|
94
95
|
|
|
95
96
|
&__step-nav-wrapper {
|
|
96
|
-
flex:
|
|
97
|
+
flex-grow: 0;
|
|
97
98
|
overflow: auto;
|
|
98
99
|
display: flex;
|
|
100
|
+
width: 100%;
|
|
99
101
|
|
|
100
102
|
&::-webkit-scrollbar {
|
|
101
103
|
display: none;
|
|
@@ -156,7 +158,7 @@
|
|
|
156
158
|
}
|
|
157
159
|
|
|
158
160
|
@include small-break {
|
|
159
|
-
&__localizer {
|
|
161
|
+
&__localizer.localizer {
|
|
160
162
|
right: base(2);
|
|
161
163
|
}
|
|
162
164
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Autosave/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAGzE,OAAO,KAAsC,MAAM,OAAO,CAAA;AAiB1D,OAAO,cAAc,CAAA;AAMrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,CAAC,EAAE,sBAAsB,CAAA;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,qBAAqB,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Autosave/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAGzE,OAAO,KAAsC,MAAM,OAAO,CAAA;AAiB1D,OAAO,cAAc,CAAA;AAMrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,CAAC,EAAE,sBAAsB,CAAA;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,qBAAqB,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA6OpC,CAAA"}
|
|
@@ -17,7 +17,7 @@ const baseClass = 'autosave';
|
|
|
17
17
|
// The minimum time the saving state should be shown
|
|
18
18
|
const minimumAnimationTime = 1000;
|
|
19
19
|
export const Autosave = ({ id, collection, global: globalDoc, publishedDocUpdatedAt })=>{
|
|
20
|
-
const { routes: { api }, serverURL } = useConfig();
|
|
20
|
+
const { config: { routes: { api }, serverURL } } = useConfig();
|
|
21
21
|
const { docConfig, getVersions, versions } = useDocumentInfo();
|
|
22
22
|
const { reportUpdate } = useDocumentEvents();
|
|
23
23
|
const { dispatchFields, setModified, setSubmitted } = useForm();
|
|
@@ -107,7 +107,7 @@ export const Autosave = ({ id, collection, global: globalDoc, publishedDocUpdate
|
|
|
107
107
|
return res.json();
|
|
108
108
|
}
|
|
109
109
|
}).then((json)=>{
|
|
110
|
-
if (versionsConfig?.drafts && versionsConfig?.drafts?.validate && json
|
|
110
|
+
if (versionsConfig?.drafts && versionsConfig?.drafts?.validate && json?.errors) {
|
|
111
111
|
if (Array.isArray(json.errors)) {
|
|
112
112
|
const [fieldErrors, nonFieldErrors] = json.errors.reduce(([fieldErrs, nonFieldErrs], err)=>{
|
|
113
113
|
const newFieldErrs = [];
|
|
@@ -170,7 +170,7 @@ export const Autosave = ({ id, collection, global: globalDoc, publishedDocUpdate
|
|
|
170
170
|
if (autosaveTimeout) clearTimeout(autosaveTimeout);
|
|
171
171
|
if (abortController.signal) {
|
|
172
172
|
try {
|
|
173
|
-
abortController.abort();
|
|
173
|
+
abortController.abort('Autosave closed early.');
|
|
174
174
|
} catch (error) {
|
|
175
175
|
// swallow error
|
|
176
176
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Autosave/index.tsx"],"sourcesContent":["'use client'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport type { ClientCollectionConfig, ClientGlobalConfig } from 'payload'\n\nimport { versionDefaults } from 'payload/shared'\nimport React, { useEffect, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport {\n useAllFormFields,\n useForm,\n useFormModified,\n useFormSubmitted,\n} from '../../forms/Form/context.js'\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatTimeToNow } from '../../utilities/formatDate.js'\nimport { reduceFieldsToValuesWithValidation } from '../../utilities/reduceFieldsToValuesWithValidation.js'\nimport './index.scss'\n\nconst baseClass = 'autosave'\n// The minimum time the saving state should be shown\nconst minimumAnimationTime = 1000\n\nexport type Props = {\n collection?: ClientCollectionConfig\n global?: ClientGlobalConfig\n id?: number | string\n publishedDocUpdatedAt: string\n}\n\nexport const Autosave: React.FC<Props> = ({\n id,\n collection,\n global: globalDoc,\n publishedDocUpdatedAt,\n}) => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { docConfig, getVersions, versions } = useDocumentInfo()\n const { reportUpdate } = useDocumentEvents()\n const { dispatchFields, setModified, setSubmitted } = useForm()\n const submitted = useFormSubmitted()\n const versionsConfig = docConfig?.versions\n\n const [fields] = useAllFormFields()\n const formModified = useFormModified()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n let interval = versionDefaults.autosaveInterval\n if (versionsConfig.drafts && versionsConfig.drafts.autosave)\n interval = versionsConfig.drafts.autosave.interval\n\n const [saving, setSaving] = useState(false)\n const [lastSaved, setLastSaved] = useState<number>()\n const debouncedFields = useDebounce(fields, interval)\n const modified = useDebounce(formModified, interval)\n const fieldRef = useRef(fields)\n const modifiedRef = useRef(modified)\n const localeRef = useRef(locale)\n const debouncedRef = useRef(debouncedFields)\n\n debouncedRef.current = debouncedFields\n\n // Store fields in ref so the autosave func\n // can always retrieve the most to date copies\n // after the timeout has executed\n fieldRef.current = fields\n\n // Store modified in ref so the autosave func\n // can bail out if modified becomes false while\n // timing out during autosave\n modifiedRef.current = modified\n\n // Store locale in ref so the autosave func\n // can always retrieve the most to date locale\n localeRef.current = locale\n\n // When debounced fields change, autosave\n useEffect(() => {\n const abortController = new AbortController()\n let autosaveTimeout = undefined\n // We need to log the time in order to figure out if we need to trigger the state off later\n let startTimestamp = undefined\n let endTimestamp = undefined\n\n const autosave = () => {\n if (modified) {\n startTimestamp = new Date().getTime()\n\n setSaving(true)\n\n let url: string\n let method: string\n let entitySlug: string\n\n if (collection && id) {\n entitySlug = collection.slug\n url = `${serverURL}${api}/${entitySlug}/${id}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'PATCH'\n }\n\n if (globalDoc) {\n entitySlug = globalDoc.slug\n url = `${serverURL}${api}/globals/${entitySlug}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'POST'\n }\n\n if (url) {\n if (modifiedRef.current) {\n const { data, valid } = {\n ...reduceFieldsToValuesWithValidation(fieldRef.current, true),\n }\n data._status = 'draft'\n const skipSubmission =\n submitted && !valid && versionsConfig?.drafts && versionsConfig?.drafts?.validate\n\n if (!skipSubmission) {\n void fetch(url, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method,\n signal: abortController.signal,\n })\n .then((res) => {\n const newDate = new Date()\n // We need to log the time in order to figure out if we need to trigger the state off later\n endTimestamp = newDate.getTime()\n\n if (res.status === 200) {\n setLastSaved(newDate.getTime())\n\n reportUpdate({\n id,\n entitySlug,\n updatedAt: newDate.toISOString(),\n })\n setModified(false)\n void getVersions()\n } else {\n return res.json()\n }\n })\n .then((json) => {\n if (versionsConfig?.drafts && versionsConfig?.drafts?.validate && json.errors) {\n if (Array.isArray(json.errors)) {\n const [fieldErrors, nonFieldErrors] = json.errors.reduce(\n ([fieldErrs, nonFieldErrs], err) => {\n const newFieldErrs = []\n const newNonFieldErrs = []\n\n if (err?.message) {\n newNonFieldErrs.push(err)\n }\n\n if (Array.isArray(err?.data)) {\n err.data.forEach((dataError) => {\n if (dataError?.field) {\n newFieldErrs.push(dataError)\n } else {\n newNonFieldErrs.push(dataError)\n }\n })\n }\n\n return [\n [...fieldErrs, ...newFieldErrs],\n [...nonFieldErrs, ...newNonFieldErrs],\n ]\n },\n [[], []],\n )\n\n dispatchFields({\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n })\n\n nonFieldErrors.forEach((err) => {\n toast.error(err.message || i18n.t('error:unknown'))\n })\n\n setSubmitted(true)\n setSaving(false)\n return\n }\n }\n })\n .then(() => {\n // If request was faster than minimum animation time, animate the difference\n if (endTimestamp - startTimestamp < minimumAnimationTime) {\n autosaveTimeout = setTimeout(\n () => {\n setSaving(false)\n },\n minimumAnimationTime - (endTimestamp - startTimestamp),\n )\n } else {\n setSaving(false)\n }\n })\n }\n }\n }\n }\n }\n\n void autosave()\n\n return () => {\n if (autosaveTimeout) clearTimeout(autosaveTimeout)\n if (abortController.signal) {\n try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n setSaving(false)\n }\n }, [\n api,\n collection,\n dispatchFields,\n getVersions,\n globalDoc,\n i18n,\n id,\n interval,\n modified,\n reportUpdate,\n serverURL,\n setSubmitted,\n setModified,\n versionsConfig?.drafts,\n debouncedFields,\n submitted,\n ])\n\n useEffect(() => {\n if (versions?.docs?.[0]) {\n setLastSaved(new Date(versions.docs[0].updatedAt).getTime())\n } else if (publishedDocUpdatedAt) {\n setLastSaved(new Date(publishedDocUpdatedAt).getTime())\n }\n }, [publishedDocUpdatedAt, versions])\n\n return (\n <div className={baseClass}>\n {saving && t('general:saving')}\n {!saving && Boolean(lastSaved) && (\n <React.Fragment>\n {t('version:lastSavedAgo', {\n distance: formatTimeToNow({ date: lastSaved, i18n }),\n })}\n </React.Fragment>\n )}\n </div>\n )\n}\n"],"names":["versionDefaults","React","useEffect","useRef","useState","toast","useAllFormFields","useForm","useFormModified","useFormSubmitted","useDebounce","useConfig","useDocumentEvents","useDocumentInfo","useLocale","useTranslation","formatTimeToNow","reduceFieldsToValuesWithValidation","baseClass","minimumAnimationTime","Autosave","id","collection","global","globalDoc","publishedDocUpdatedAt","routes","api","serverURL","docConfig","getVersions","versions","reportUpdate","dispatchFields","setModified","setSubmitted","submitted","versionsConfig","fields","formModified","code","locale","i18n","t","interval","autosaveInterval","drafts","autosave","saving","setSaving","lastSaved","setLastSaved","debouncedFields","modified","fieldRef","modifiedRef","localeRef","debouncedRef","current","abortController","AbortController","autosaveTimeout","undefined","startTimestamp","endTimestamp","Date","getTime","url","method","entitySlug","slug","data","valid","_status","skipSubmission","validate","fetch","body","JSON","stringify","credentials","headers","language","signal","then","res","newDate","status","updatedAt","toISOString","json","errors","Array","isArray","fieldErrors","nonFieldErrors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","push","forEach","dataError","field","type","error","setTimeout","clearTimeout","abort","docs","div","className","Boolean","Fragment","distance","date"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Autosave/index.tsx"],"sourcesContent":["'use client'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport type { ClientCollectionConfig, ClientGlobalConfig } from 'payload'\n\nimport { versionDefaults } from 'payload/shared'\nimport React, { useEffect, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport {\n useAllFormFields,\n useForm,\n useFormModified,\n useFormSubmitted,\n} from '../../forms/Form/context.js'\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatTimeToNow } from '../../utilities/formatDate.js'\nimport { reduceFieldsToValuesWithValidation } from '../../utilities/reduceFieldsToValuesWithValidation.js'\nimport './index.scss'\n\nconst baseClass = 'autosave'\n// The minimum time the saving state should be shown\nconst minimumAnimationTime = 1000\n\nexport type Props = {\n collection?: ClientCollectionConfig\n global?: ClientGlobalConfig\n id?: number | string\n publishedDocUpdatedAt: string\n}\n\nexport const Autosave: React.FC<Props> = ({\n id,\n collection,\n global: globalDoc,\n publishedDocUpdatedAt,\n}) => {\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { docConfig, getVersions, versions } = useDocumentInfo()\n const { reportUpdate } = useDocumentEvents()\n const { dispatchFields, setModified, setSubmitted } = useForm()\n const submitted = useFormSubmitted()\n const versionsConfig = docConfig?.versions\n\n const [fields] = useAllFormFields()\n const formModified = useFormModified()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n let interval = versionDefaults.autosaveInterval\n if (versionsConfig.drafts && versionsConfig.drafts.autosave)\n interval = versionsConfig.drafts.autosave.interval\n\n const [saving, setSaving] = useState(false)\n const [lastSaved, setLastSaved] = useState<number>()\n const debouncedFields = useDebounce(fields, interval)\n const modified = useDebounce(formModified, interval)\n const fieldRef = useRef(fields)\n const modifiedRef = useRef(modified)\n const localeRef = useRef(locale)\n const debouncedRef = useRef(debouncedFields)\n\n debouncedRef.current = debouncedFields\n\n // Store fields in ref so the autosave func\n // can always retrieve the most to date copies\n // after the timeout has executed\n fieldRef.current = fields\n\n // Store modified in ref so the autosave func\n // can bail out if modified becomes false while\n // timing out during autosave\n modifiedRef.current = modified\n\n // Store locale in ref so the autosave func\n // can always retrieve the most to date locale\n localeRef.current = locale\n\n // When debounced fields change, autosave\n useEffect(() => {\n const abortController = new AbortController()\n let autosaveTimeout = undefined\n // We need to log the time in order to figure out if we need to trigger the state off later\n let startTimestamp = undefined\n let endTimestamp = undefined\n\n const autosave = () => {\n if (modified) {\n startTimestamp = new Date().getTime()\n\n setSaving(true)\n\n let url: string\n let method: string\n let entitySlug: string\n\n if (collection && id) {\n entitySlug = collection.slug\n url = `${serverURL}${api}/${entitySlug}/${id}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'PATCH'\n }\n\n if (globalDoc) {\n entitySlug = globalDoc.slug\n url = `${serverURL}${api}/globals/${entitySlug}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'POST'\n }\n\n if (url) {\n if (modifiedRef.current) {\n const { data, valid } = {\n ...reduceFieldsToValuesWithValidation(fieldRef.current, true),\n }\n data._status = 'draft'\n const skipSubmission =\n submitted && !valid && versionsConfig?.drafts && versionsConfig?.drafts?.validate\n\n if (!skipSubmission) {\n void fetch(url, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method,\n signal: abortController.signal,\n })\n .then((res) => {\n const newDate = new Date()\n // We need to log the time in order to figure out if we need to trigger the state off later\n endTimestamp = newDate.getTime()\n\n if (res.status === 200) {\n setLastSaved(newDate.getTime())\n\n reportUpdate({\n id,\n entitySlug,\n updatedAt: newDate.toISOString(),\n })\n setModified(false)\n void getVersions()\n } else {\n return res.json()\n }\n })\n .then((json) => {\n if (versionsConfig?.drafts && versionsConfig?.drafts?.validate && json?.errors) {\n if (Array.isArray(json.errors)) {\n const [fieldErrors, nonFieldErrors] = json.errors.reduce(\n ([fieldErrs, nonFieldErrs], err) => {\n const newFieldErrs = []\n const newNonFieldErrs = []\n\n if (err?.message) {\n newNonFieldErrs.push(err)\n }\n\n if (Array.isArray(err?.data)) {\n err.data.forEach((dataError) => {\n if (dataError?.field) {\n newFieldErrs.push(dataError)\n } else {\n newNonFieldErrs.push(dataError)\n }\n })\n }\n\n return [\n [...fieldErrs, ...newFieldErrs],\n [...nonFieldErrs, ...newNonFieldErrs],\n ]\n },\n [[], []],\n )\n\n dispatchFields({\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n })\n\n nonFieldErrors.forEach((err) => {\n toast.error(err.message || i18n.t('error:unknown'))\n })\n\n setSubmitted(true)\n setSaving(false)\n return\n }\n }\n })\n .then(() => {\n // If request was faster than minimum animation time, animate the difference\n if (endTimestamp - startTimestamp < minimumAnimationTime) {\n autosaveTimeout = setTimeout(\n () => {\n setSaving(false)\n },\n minimumAnimationTime - (endTimestamp - startTimestamp),\n )\n } else {\n setSaving(false)\n }\n })\n }\n }\n }\n }\n }\n\n void autosave()\n\n return () => {\n if (autosaveTimeout) clearTimeout(autosaveTimeout)\n if (abortController.signal) {\n try {\n abortController.abort('Autosave closed early.')\n } catch (error) {\n // swallow error\n }\n }\n setSaving(false)\n }\n }, [\n api,\n collection,\n dispatchFields,\n getVersions,\n globalDoc,\n i18n,\n id,\n interval,\n modified,\n reportUpdate,\n serverURL,\n setSubmitted,\n setModified,\n versionsConfig?.drafts,\n debouncedFields,\n submitted,\n ])\n\n useEffect(() => {\n if (versions?.docs?.[0]) {\n setLastSaved(new Date(versions.docs[0].updatedAt).getTime())\n } else if (publishedDocUpdatedAt) {\n setLastSaved(new Date(publishedDocUpdatedAt).getTime())\n }\n }, [publishedDocUpdatedAt, versions])\n\n return (\n <div className={baseClass}>\n {saving && t('general:saving')}\n {!saving && Boolean(lastSaved) && (\n <React.Fragment>\n {t('version:lastSavedAgo', {\n distance: formatTimeToNow({ date: lastSaved, i18n }),\n })}\n </React.Fragment>\n )}\n </div>\n )\n}\n"],"names":["versionDefaults","React","useEffect","useRef","useState","toast","useAllFormFields","useForm","useFormModified","useFormSubmitted","useDebounce","useConfig","useDocumentEvents","useDocumentInfo","useLocale","useTranslation","formatTimeToNow","reduceFieldsToValuesWithValidation","baseClass","minimumAnimationTime","Autosave","id","collection","global","globalDoc","publishedDocUpdatedAt","config","routes","api","serverURL","docConfig","getVersions","versions","reportUpdate","dispatchFields","setModified","setSubmitted","submitted","versionsConfig","fields","formModified","code","locale","i18n","t","interval","autosaveInterval","drafts","autosave","saving","setSaving","lastSaved","setLastSaved","debouncedFields","modified","fieldRef","modifiedRef","localeRef","debouncedRef","current","abortController","AbortController","autosaveTimeout","undefined","startTimestamp","endTimestamp","Date","getTime","url","method","entitySlug","slug","data","valid","_status","skipSubmission","validate","fetch","body","JSON","stringify","credentials","headers","language","signal","then","res","newDate","status","updatedAt","toISOString","json","errors","Array","isArray","fieldErrors","nonFieldErrors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","push","forEach","dataError","field","type","error","setTimeout","clearTimeout","abort","docs","div","className","Boolean","Fragment","distance","date"],"mappings":"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"}
|
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
gap: base(0.8);
|
|
18
18
|
|
|
19
19
|
&__title {
|
|
20
|
-
@extend %
|
|
20
|
+
@extend %h5;
|
|
21
21
|
letter-spacing: 0;
|
|
22
22
|
font-weight: 600;
|
|
23
|
-
line-height: base(
|
|
23
|
+
line-height: base(0.8);
|
|
24
24
|
width: 100%;
|
|
25
|
-
margin: 0;
|
|
25
|
+
margin: base(0.1) 0;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
&__actions {
|
|
@@ -17,9 +17,10 @@
|
|
|
17
17
|
gap: base(0.2);
|
|
18
18
|
border-top-right-radius: $style-radius-m;
|
|
19
19
|
border-top-left-radius: $style-radius-m;
|
|
20
|
+
width: 100%;
|
|
20
21
|
|
|
21
22
|
& > * {
|
|
22
|
-
z-index:
|
|
23
|
+
z-index: 1;
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
&:has(.collapsible__drag) {
|
|
@@ -87,6 +88,8 @@
|
|
|
87
88
|
left: 0;
|
|
88
89
|
pointer-events: none;
|
|
89
90
|
width: 100%;
|
|
91
|
+
overflow: hidden;
|
|
92
|
+
max-width: 100%;
|
|
90
93
|
}
|
|
91
94
|
|
|
92
95
|
&__header-wrap--has-drag-handle {
|
|
@@ -2,7 +2,7 @@ import type { SanitizedCollectionConfig } from 'payload';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import './index.scss';
|
|
4
4
|
export type Props = {
|
|
5
|
-
collectionSlug: SanitizedCollectionConfig['slug'];
|
|
5
|
+
readonly collectionSlug: SanitizedCollectionConfig['slug'];
|
|
6
6
|
};
|
|
7
7
|
export declare const ColumnSelector: React.FC<Props>;
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ColumnSelector/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,KAAgB,MAAM,OAAO,CAAA;AAUpC,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ColumnSelector/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,KAAgB,MAAM,OAAO,CAAA;AAUpC,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;CAC3D,CAAA;AAQD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAmD1C,CAAA"}
|
|
@@ -11,7 +11,7 @@ import './index.scss';
|
|
|
11
11
|
const baseClass = 'column-selector';
|
|
12
12
|
const filterColumnFields = (fields)=>{
|
|
13
13
|
return fields.filter((field)=>{
|
|
14
|
-
return !field.admin?.disableListColumn;
|
|
14
|
+
return !field.cellProps?.field?.admin?.disableListColumn;
|
|
15
15
|
});
|
|
16
16
|
};
|
|
17
17
|
export const ColumnSelector = ({ collectionSlug })=>{
|
|
@@ -49,7 +49,7 @@ export const ColumnSelector = ({ collectionSlug })=>{
|
|
|
49
49
|
toggleColumn(accessor);
|
|
50
50
|
},
|
|
51
51
|
children: Label
|
|
52
|
-
}, `${collectionSlug}-${col.name
|
|
52
|
+
}, `${collectionSlug}-${col.cellProps?.field && 'name' in col.cellProps.field ? col.cellProps?.field?.name : i}${editDepth ? `-${editDepth}-` : ''}${uuid}`);
|
|
53
53
|
})
|
|
54
54
|
});
|
|
55
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ColumnSelector/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport React, { useId } from 'react'\n\nimport type { Column } from '../Table/index.js'\n\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { DraggableSortable } from '../DraggableSortable/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { useTableColumns } from '../TableColumns/index.js'\nimport './index.scss'\n\nconst baseClass = 'column-selector'\n\nexport type Props = {\n collectionSlug: SanitizedCollectionConfig['slug']\n}\n\nconst filterColumnFields = (fields: Column[]): Column[] => {\n return fields.filter((field) => {\n return !field.admin?.disableListColumn\n })\n}\n\nexport const ColumnSelector: React.FC<Props> = ({ collectionSlug }) => {\n const { columns, moveColumn, toggleColumn } = useTableColumns()\n\n const uuid = useId()\n const editDepth = useEditDepth()\n\n if (!columns) {\n return null\n }\n\n const filteredColumns = filterColumnFields(columns)\n\n return (\n <DraggableSortable\n className={baseClass}\n ids={filteredColumns.map((col) => col?.accessor)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => {\n moveColumn({\n fromIndex: moveFromIndex,\n toIndex: moveToIndex,\n })\n }}\n >\n {filteredColumns.map((col, i) => {\n if (!col) return null\n\n const { Label, accessor, active } = col\n\n if (col.accessor === '_select') return null\n\n return (\n <Pill\n alignIcon=\"left\"\n aria-checked={active}\n className={[`${baseClass}__column`, active && `${baseClass}__column--active`]\n .filter(Boolean)\n .join(' ')}\n draggable\n icon={active ? <XIcon /> : <PlusIcon />}\n id={accessor}\n key={`${collectionSlug}-${col.name
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ColumnSelector/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport React, { useId } from 'react'\n\nimport type { Column } from '../Table/index.js'\n\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { DraggableSortable } from '../DraggableSortable/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { useTableColumns } from '../TableColumns/index.js'\nimport './index.scss'\n\nconst baseClass = 'column-selector'\n\nexport type Props = {\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n}\n\nconst filterColumnFields = (fields: Column[]): Column[] => {\n return fields.filter((field) => {\n return !field.cellProps?.field?.admin?.disableListColumn\n })\n}\n\nexport const ColumnSelector: React.FC<Props> = ({ collectionSlug }) => {\n const { columns, moveColumn, toggleColumn } = useTableColumns()\n\n const uuid = useId()\n const editDepth = useEditDepth()\n\n if (!columns) {\n return null\n }\n\n const filteredColumns = filterColumnFields(columns)\n\n return (\n <DraggableSortable\n className={baseClass}\n ids={filteredColumns.map((col) => col?.accessor)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => {\n moveColumn({\n fromIndex: moveFromIndex,\n toIndex: moveToIndex,\n })\n }}\n >\n {filteredColumns.map((col, i) => {\n if (!col) return null\n\n const { Label, accessor, active } = col\n\n if (col.accessor === '_select') return null\n\n return (\n <Pill\n alignIcon=\"left\"\n aria-checked={active}\n className={[`${baseClass}__column`, active && `${baseClass}__column--active`]\n .filter(Boolean)\n .join(' ')}\n draggable\n icon={active ? <XIcon /> : <PlusIcon />}\n id={accessor}\n key={`${collectionSlug}-${col.cellProps?.field && 'name' in col.cellProps.field ? col.cellProps?.field?.name : i}${editDepth ? `-${editDepth}-` : ''}${uuid}`}\n onClick={() => {\n toggleColumn(accessor)\n }}\n >\n {Label}\n </Pill>\n )\n })}\n </DraggableSortable>\n )\n}\n"],"names":["React","useId","PlusIcon","XIcon","useEditDepth","DraggableSortable","Pill","useTableColumns","baseClass","filterColumnFields","fields","filter","field","cellProps","admin","disableListColumn","ColumnSelector","collectionSlug","columns","moveColumn","toggleColumn","uuid","editDepth","filteredColumns","className","ids","map","col","accessor","onDragEnd","moveFromIndex","moveToIndex","fromIndex","toIndex","i","Label","active","alignIcon","aria-checked","Boolean","join","draggable","icon","id","onClick","name"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,KAAK,QAAQ,QAAO;AAIpC,SAASC,QAAQ,QAAQ,4BAA2B;AACpD,SAASC,KAAK,QAAQ,yBAAwB;AAC9C,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,iBAAiB,QAAQ,gCAA+B;AACjE,SAASC,IAAI,QAAQ,mBAAkB;AACvC,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAMlB,MAAMC,qBAAqB,CAACC;IAC1B,OAAOA,OAAOC,MAAM,CAAC,CAACC;QACpB,OAAO,CAACA,MAAMC,SAAS,EAAED,OAAOE,OAAOC;IACzC;AACF;AAEA,OAAO,MAAMC,iBAAkC,CAAC,EAAEC,cAAc,EAAE;IAChE,MAAM,EAAEC,OAAO,EAAEC,UAAU,EAAEC,YAAY,EAAE,GAAGb;IAE9C,MAAMc,OAAOpB;IACb,MAAMqB,YAAYlB;IAElB,IAAI,CAACc,SAAS;QACZ,OAAO;IACT;IAEA,MAAMK,kBAAkBd,mBAAmBS;IAE3C,qBACE,KAACb;QACCmB,WAAWhB;QACXiB,KAAKF,gBAAgBG,GAAG,CAAC,CAACC,MAAQA,KAAKC;QACvCC,WAAW,CAAC,EAAEC,aAAa,EAAEC,WAAW,EAAE;YACxCZ,WAAW;gBACTa,WAAWF;gBACXG,SAASF;YACX;QACF;kBAECR,gBAAgBG,GAAG,CAAC,CAACC,KAAKO;YACzB,IAAI,CAACP,KAAK,OAAO;YAEjB,MAAM,EAAEQ,KAAK,EAAEP,QAAQ,EAAEQ,MAAM,EAAE,GAAGT;YAEpC,IAAIA,IAAIC,QAAQ,KAAK,WAAW,OAAO;YAEvC,qBACE,KAACtB;gBACC+B,WAAU;gBACVC,gBAAcF;gBACdZ,WAAW;oBAAC,CAAC,EAAEhB,UAAU,QAAQ,CAAC;oBAAE4B,UAAU,CAAC,EAAE5B,UAAU,gBAAgB,CAAC;iBAAC,CAC1EG,MAAM,CAAC4B,SACPC,IAAI,CAAC;gBACRC,SAAS;gBACTC,MAAMN,uBAAS,KAACjC,2BAAW,KAACD;gBAC5ByC,IAAIf;gBAEJgB,SAAS;oBACPxB,aAAaQ;gBACf;0BAECO;eALI,CAAC,EAAElB,eAAe,CAAC,EAAEU,IAAId,SAAS,EAAED,SAAS,UAAUe,IAAId,SAAS,CAACD,KAAK,GAAGe,IAAId,SAAS,EAAED,OAAOiC,OAAOX,EAAE,EAAEZ,YAAY,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC,GAAG,GAAG,EAAED,KAAK,CAAC;QAQnK;;AAGN,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACjD,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACjD,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuI1C,CAAA"}
|
|
@@ -18,7 +18,7 @@ import './index.scss';
|
|
|
18
18
|
const baseClass = 'delete-document';
|
|
19
19
|
export const DeleteDocument = (props)=>{
|
|
20
20
|
const { id, buttonId, collectionSlug, singularLabel, title: titleFromProps } = props;
|
|
21
|
-
const { routes: { admin: adminRoute, api }, serverURL } = useConfig();
|
|
21
|
+
const { config: { routes: { admin: adminRoute, api }, serverURL } } = useConfig();
|
|
22
22
|
const { setModified } = useForm();
|
|
23
23
|
const [deleting, setDeleting] = useState(false);
|
|
24
24
|
const { toggleModal } = useModal();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Button } from '../Button/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n buttonId?: string\n collectionSlug: SanitizedCollectionConfig['slug']\n id?: string\n singularLabel: SanitizedCollectionConfig['labels']['singular']\n title?: string\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const { id, buttonId, collectionSlug, singularLabel, title: titleFromProps } = props\n\n const {\n routes: { admin: adminRoute, api },\n
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Button } from '../Button/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n buttonId?: string\n collectionSlug: SanitizedCollectionConfig['slug']\n id?: string\n singularLabel: SanitizedCollectionConfig['labels']['singular']\n title?: string\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const { id, buttonId, collectionSlug, singularLabel, title: titleFromProps } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n serverURL,\n },\n } = useConfig()\n\n const { setModified } = useForm()\n const [deleting, setDeleting] = useState(false)\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentInfo()\n\n const titleToRender = titleFromProps || title || id\n\n const modalSlug = `delete-${id}`\n\n const addDefaultError = useCallback(() => {\n setDeleting(false)\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setDeleting(true)\n setModified(false)\n try {\n await requests\n .delete(`${serverURL}${api}/${collectionSlug}/${id}`, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n setDeleting(false)\n toggleModal(modalSlug)\n toast.success(\n t('general:titleDeleted', { label: getTranslation(singularLabel, i18n), title }) ||\n json.message,\n )\n\n return router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n }),\n )\n }\n toggleModal(modalSlug)\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n } catch (e) {\n addDefaultError()\n }\n }, [\n setModified,\n serverURL,\n api,\n collectionSlug,\n id,\n toggleModal,\n modalSlug,\n t,\n singularLabel,\n i18n,\n title,\n router,\n adminRoute,\n addDefaultError,\n ])\n\n if (id) {\n return (\n <React.Fragment>\n <PopupList.Button\n id={buttonId}\n onClick={() => {\n setDeleting(false)\n toggleModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </PopupList.Button>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__template`}>\n <h1>{t('general:confirmDeletion')}</h1>\n <p>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleToRender,\n }}\n />\n </p>\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={deleting ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button id=\"confirm-delete\" onClick={deleting ? undefined : handleDelete}>\n {deleting ? t('general:deleting') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </React.Fragment>\n )\n }\n\n return null\n}\n"],"names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","toast","useForm","useConfig","useDocumentInfo","useTranslation","requests","formatAdminURL","Button","PopupList","Translation","baseClass","DeleteDocument","props","id","buttonId","collectionSlug","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","serverURL","setModified","deleting","setDeleting","toggleModal","router","i18n","t","titleToRender","modalSlug","addDefaultError","error","handleDelete","delete","headers","language","then","res","json","status","success","label","message","push","path","errors","forEach","e","Fragment","onClick","className","slug","div","h1","p","elements","children","strong","i18nKey","variables","buttonStyle","undefined","type"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAKrD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,sBAAsB,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAKrD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,sBAAsB,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAsHtC,CAAA"}
|
|
@@ -19,7 +19,7 @@ const baseClass = 'delete-documents';
|
|
|
19
19
|
export const DeleteMany = (props)=>{
|
|
20
20
|
const { collection: { slug, labels: { plural } } = {} } = props;
|
|
21
21
|
const { permissions } = useAuth();
|
|
22
|
-
const { routes: { api }, serverURL } = useConfig();
|
|
22
|
+
const { config: { routes: { api }, serverURL } } = useConfig();
|
|
23
23
|
const { toggleModal } = useModal();
|
|
24
24
|
const { count, getQueryParams, selectAll, toggleAll } = useSelection();
|
|
25
25
|
const { i18n, t } = useTranslation();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/DeleteMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'delete-documents'\n\nexport type Props = {\n collection: ClientCollectionConfig\n title?: string\n}\n\nexport const DeleteMany: React.FC<Props> = (props) => {\n const { collection: { slug, labels: { plural } } = {} } = props\n\n const { permissions } = useAuth()\n const {\n routes: { api },\n
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/DeleteMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'delete-documents'\n\nexport type Props = {\n collection: ClientCollectionConfig\n title?: string\n}\n\nexport const DeleteMany: React.FC<Props> = (props) => {\n const { collection: { slug, labels: { plural } } = {} } = props\n\n const { permissions } = useAuth()\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { toggleModal } = useModal()\n const { count, getQueryParams, selectAll, toggleAll } = useSelection()\n const { i18n, t } = useTranslation()\n const [deleting, setDeleting] = useState(false)\n const router = useRouter()\n const { stringifyParams } = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasDeletePermission = collectionPermissions?.delete?.permission\n\n const modalSlug = `delete-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handleDelete = useCallback(async () => {\n setDeleting(true)\n await requests\n .delete(`${serverURL}${api}/${slug}${getQueryParams()}`, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n toggleModal(modalSlug)\n if (res.status < 400) {\n toast.success(json.message || t('general:deletedSuccessfully'))\n toggleAll()\n router.replace(\n stringifyParams({\n params: {\n page: selectAll ? '1' : undefined,\n },\n replace: true,\n }),\n )\n clearRouteCache()\n return null\n }\n\n if (json.errors) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n }, [\n addDefaultError,\n api,\n getQueryParams,\n i18n.language,\n modalSlug,\n router,\n selectAll,\n serverURL,\n slug,\n stringifyParams,\n t,\n toggleAll,\n toggleModal,\n clearRouteCache,\n ])\n\n if (selectAll === SelectAllStatus.None || !hasDeletePermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <Pill\n className={`${baseClass}__toggle`}\n onClick={() => {\n setDeleting(false)\n toggleModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </Pill>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__template`}>\n <h1>{t('general:confirmDeletion')}</h1>\n <p>{t('general:aboutToDeleteCount', { count, label: getTranslation(plural, i18n) })}</p>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={deleting ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button id=\"confirm-delete\" onClick={deleting ? undefined : () => void handleDelete()}>\n {deleting ? t('general:deleting') : t('general:confirm')}\n </Button>\n </div>\n </Modal>\n </React.Fragment>\n )\n}\n"],"names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","toast","useAuth","useConfig","useRouteCache","useSearchParams","SelectAllStatus","useSelection","useTranslation","requests","Button","Pill","baseClass","DeleteMany","props","collection","slug","labels","plural","permissions","config","routes","api","serverURL","toggleModal","count","getQueryParams","selectAll","toggleAll","i18n","t","deleting","setDeleting","router","stringifyParams","clearRouteCache","collectionPermissions","collections","hasDeletePermission","delete","permission","modalSlug","addDefaultError","error","handleDelete","headers","language","then","res","json","status","success","message","replace","params","page","undefined","errors","description","map","join","e","None","Fragment","className","onClick","div","h1","p","label","buttonStyle","id","type"],"mappings":"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"}
|
|
@@ -2,15 +2,15 @@ import type { CollectionPermission, GlobalPermission, SanitizedCollectionConfig
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import './index.scss';
|
|
4
4
|
export declare const DocumentControls: React.FC<{
|
|
5
|
-
apiURL: string;
|
|
6
|
-
data?: any;
|
|
7
|
-
disableActions?: boolean;
|
|
8
|
-
hasPublishPermission?: boolean;
|
|
9
|
-
hasSavePermission?: boolean;
|
|
10
|
-
id?: number | string;
|
|
11
|
-
isAccountView?: boolean;
|
|
12
|
-
isEditing?: boolean;
|
|
13
|
-
permissions: CollectionPermission | GlobalPermission | null;
|
|
14
|
-
slug: SanitizedCollectionConfig['slug'];
|
|
5
|
+
readonly apiURL: string;
|
|
6
|
+
readonly data?: any;
|
|
7
|
+
readonly disableActions?: boolean;
|
|
8
|
+
readonly hasPublishPermission?: boolean;
|
|
9
|
+
readonly hasSavePermission?: boolean;
|
|
10
|
+
readonly id?: number | string;
|
|
11
|
+
readonly isAccountView?: boolean;
|
|
12
|
+
readonly isEditing?: boolean;
|
|
13
|
+
readonly permissions: CollectionPermission | GlobalPermission | null;
|
|
14
|
+
readonly slug: SanitizedCollectionConfig['slug'];
|
|
15
15
|
}>;
|
|
16
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,oBAAoB,EACpB,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAGhB,OAAO,KAA8B,MAAM,OAAO,CAAA;AAgBlD,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAA;IACnB,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,oBAAoB,GAAG,gBAAgB,GAAG,IAAI,CAAA;IACpE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;CACjD,CAsNA,CAAA"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
4
|
import React, { Fragment, useEffect } from 'react';
|
|
5
|
-
import { useComponentMap } from '../../providers/ComponentMap/index.js';
|
|
6
5
|
import { useConfig } from '../../providers/Config/index.js';
|
|
7
6
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
8
7
|
import { formatAdminURL } from '../../utilities/formatAdminURL.js';
|
|
@@ -22,13 +21,12 @@ const baseClass = 'doc-controls';
|
|
|
22
21
|
export const DocumentControls = (props)=>{
|
|
23
22
|
const { id, slug, data, disableActions, hasSavePermission, isAccountView, isEditing, permissions } = props;
|
|
24
23
|
const { i18n } = useTranslation();
|
|
25
|
-
const config = useConfig();
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
globalSlug: globalConfig?.slug
|
|
24
|
+
const { config, getEntityConfig } = useConfig();
|
|
25
|
+
const collectionConfig = getEntityConfig({
|
|
26
|
+
collectionSlug: slug
|
|
27
|
+
});
|
|
28
|
+
const globalConfig = getEntityConfig({
|
|
29
|
+
globalSlug: slug
|
|
32
30
|
});
|
|
33
31
|
const { admin: { dateFormat }, routes: { admin: adminRoute } } = config;
|
|
34
32
|
// Settings these in state to avoid hydration issues if there is a mismatch between the server and client
|
|
@@ -151,21 +149,21 @@ export const DocumentControls = (props)=>{
|
|
|
151
149
|
/*#__PURE__*/ _jsxs("div", {
|
|
152
150
|
className: `${baseClass}__controls`,
|
|
153
151
|
children: [
|
|
154
|
-
|
|
155
|
-
CustomComponent:
|
|
152
|
+
(collectionConfig?._isPreviewEnabled || globalConfig?._isPreviewEnabled) && /*#__PURE__*/ _jsx(PreviewButton, {
|
|
153
|
+
CustomComponent: collectionConfig?.admin?.components?.edit?.PreviewButton || globalConfig?.admin?.components?.elements?.PreviewButton
|
|
156
154
|
}),
|
|
157
155
|
hasSavePermission && /*#__PURE__*/ _jsx(React.Fragment, {
|
|
158
156
|
children: collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? /*#__PURE__*/ _jsxs(React.Fragment, {
|
|
159
157
|
children: [
|
|
160
158
|
(collectionConfig?.versions?.drafts && !collectionConfig?.versions?.drafts?.autosave || unsavedDraftWithValidations || globalConfig?.versions?.drafts && !globalConfig?.versions?.drafts?.autosave) && /*#__PURE__*/ _jsx(SaveDraftButton, {
|
|
161
|
-
CustomComponent:
|
|
159
|
+
CustomComponent: collectionConfig?.admin?.components?.edit?.SaveDraftButton || globalConfig?.admin?.components?.elements?.SaveDraftButton
|
|
162
160
|
}),
|
|
163
161
|
/*#__PURE__*/ _jsx(PublishButton, {
|
|
164
|
-
CustomComponent:
|
|
162
|
+
CustomComponent: collectionConfig?.admin?.components?.edit?.PublishButton || globalConfig?.admin?.components?.elements?.PublishButton
|
|
165
163
|
})
|
|
166
164
|
]
|
|
167
165
|
}) : /*#__PURE__*/ _jsx(SaveButton, {
|
|
168
|
-
CustomComponent:
|
|
166
|
+
CustomComponent: collectionConfig?.admin?.components?.edit?.SaveButton || globalConfig?.admin?.components?.elements?.SaveButton
|
|
169
167
|
})
|
|
170
168
|
})
|
|
171
169
|
]
|