@payloadcms/ui 4.0.0-internal.a7ca468 → 4.0.0-internal.af6aad0
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/AddNewRelation/index.css +0 -4
- package/dist/elements/AddNewRelation/index.js +2 -2
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AppHeader/index.css +5 -0
- package/dist/elements/AppHeader/index.d.ts +1 -8
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +4 -13
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.d.ts +1 -0
- package/dist/elements/ArrayAction/index.d.ts.map +1 -1
- package/dist/elements/ArrayAction/index.js +45 -32
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.css +10 -4
- package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +71 -51
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/Button/index.css +25 -2
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +2 -0
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.d.ts +1 -1
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +65 -3
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +345 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.css +1 -0
- package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.js +84 -62
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/Drawer/index.css +10 -4
- package/dist/elements/Drawer/types.d.ts +2 -2
- package/dist/elements/Drawer/types.d.ts.map +1 -1
- package/dist/elements/Drawer/types.js.map +1 -1
- package/dist/elements/Dropzone/index.css +10 -4
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
- package/dist/elements/FileManager/index.css +0 -30
- package/dist/elements/FileManager/index.d.ts.map +1 -1
- package/dist/elements/FileManager/index.js +379 -287
- package/dist/elements/FileManager/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +22 -4
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +68 -49
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +100 -15
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +97 -137
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.js +51 -23
- package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +26 -3
- package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
- package/dist/elements/Hierarchy/CreateNewButton/index.css +9 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.d.ts +9 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.d.ts.map +1 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.js +111 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.js.map +1 -0
- package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js +6 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.server.js +1 -3
- package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.d.ts +5 -0
- package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.js +120 -95
- package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.css +3 -34
- package/dist/elements/Hierarchy/Modal/Footer/index.css +45 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +28 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +1 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.js +166 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -0
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +18 -4
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +88 -24
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.css +4 -53
- package/dist/elements/Hierarchy/Modal/index.d.ts +5 -2
- package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.js +136 -99
- package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/types.d.ts +15 -0
- package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.d.ts +7 -3
- package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.js +43 -170
- package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/index.css +2 -9
- package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Search/index.js +6 -73
- package/dist/elements/Hierarchy/Search/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/types.d.ts +2 -6
- package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Search/types.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts +0 -4
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +101 -186
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +1 -21
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.css +3 -3
- package/dist/elements/Hierarchy/Tree/TreeNode/index.css +59 -29
- package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js +54 -10
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.css +8 -9
- package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.js +29 -47
- package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/types.d.ts +9 -1
- package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/types.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js +11 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
- package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts +22 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts.map +1 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.js +17 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.js.map +1 -0
- package/dist/elements/Hierarchy/move/moveDocuments.d.ts +34 -0
- package/dist/elements/Hierarchy/move/moveDocuments.d.ts.map +1 -0
- package/dist/elements/Hierarchy/move/moveDocuments.js +94 -0
- package/dist/elements/Hierarchy/move/moveDocuments.js.map +1 -0
- package/dist/elements/IDLabel/index.css +6 -0
- package/dist/elements/IDLabel/index.d.ts +1 -1
- package/dist/elements/IDLabel/index.d.ts.map +1 -1
- package/dist/elements/IDLabel/index.js +16 -21
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +3 -2
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/types.d.ts +4 -0
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
- package/dist/elements/Nav/NavSidebarToggle/index.js +1 -1
- package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.d.ts +1 -0
- package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +12 -18
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.css +1 -2
- package/dist/elements/Nav/context.d.ts +0 -1
- package/dist/elements/Nav/context.d.ts.map +1 -1
- package/dist/elements/Nav/context.js +92 -67
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Nav/index.css +47 -42
- package/dist/elements/Nav/index.d.ts +4 -0
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +16 -1
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/elements/NavGroup/index.css +29 -15
- package/dist/elements/Popup/PopupButtonList/index.css +33 -17
- package/dist/elements/Popup/index.css +6 -0
- package/dist/elements/Popup/index.d.ts +10 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +13 -6
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
- package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
- package/dist/elements/ReactSelect/types.d.ts +5 -0
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +5 -2
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/SegmentedControl/index.css +58 -0
- package/dist/elements/SegmentedControl/index.d.ts +19 -0
- package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
- package/dist/elements/SegmentedControl/index.js +104 -0
- package/dist/elements/SegmentedControl/index.js.map +1 -0
- package/dist/elements/SelectAll/index.d.ts.map +1 -1
- package/dist/elements/SelectAll/index.js +1 -2
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectRow/index.d.ts.map +1 -1
- package/dist/elements/SelectRow/index.js +1 -2
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/SidebarRow/index.css +1 -5
- package/dist/elements/SidebarToggle/index.css +3 -1
- package/dist/elements/SortHeader/index.d.ts.map +1 -1
- package/dist/elements/SortHeader/index.js +29 -26
- package/dist/elements/SortHeader/index.js.map +1 -1
- package/dist/elements/StepNav/DropTarget/index.css +20 -0
- package/dist/elements/StepNav/DropTarget/index.d.ts +16 -0
- package/dist/elements/StepNav/DropTarget/index.d.ts.map +1 -0
- package/dist/elements/StepNav/DropTarget/index.js +71 -0
- package/dist/elements/StepNav/DropTarget/index.js.map +1 -0
- package/dist/elements/StepNav/index.css +64 -14
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +147 -69
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StepNav/types.d.ts +6 -0
- package/dist/elements/StepNav/types.d.ts.map +1 -1
- package/dist/elements/StepNav/types.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +5 -7
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +14 -3
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +3 -11
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.d.ts +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
- package/dist/elements/Upload/index.css +39 -32
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +37 -99
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/usePasteFromClipboard.d.ts +14 -0
- package/dist/elements/Upload/usePasteFromClipboard.d.ts.map +1 -0
- package/dist/elements/Upload/usePasteFromClipboard.js +93 -0
- package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -0
- package/dist/elements/Upload/useUploadFromUrl.d.ts +20 -0
- package/dist/elements/Upload/useUploadFromUrl.d.ts.map +1 -0
- package/dist/elements/Upload/useUploadFromUrl.js +201 -0
- package/dist/elements/Upload/useUploadFromUrl.js.map +1 -0
- package/dist/elements/UploadDropzoneContent/index.css +31 -0
- package/dist/elements/UploadDropzoneContent/index.d.ts +17 -0
- package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -0
- package/dist/elements/UploadDropzoneContent/index.js +62 -0
- package/dist/elements/UploadDropzoneContent/index.js.map +1 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts +18 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts.map +1 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.js +38 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.js.map +1 -0
- package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/LanguageMenu/index.js +83 -39
- package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/SettingsMenu/index.js +57 -21
- package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/ThemeMenu/index.js +83 -39
- package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/index.css +32 -2
- package/dist/elements/UserMenu/index.d.ts +1 -0
- package/dist/elements/UserMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/index.js +77 -51
- package/dist/elements/UserMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/useHoverSubmenu.d.ts +21 -0
- package/dist/elements/UserMenu/useHoverSubmenu.d.ts.map +1 -0
- package/dist/elements/UserMenu/useHoverSubmenu.js +260 -0
- package/dist/elements/UserMenu/useHoverSubmenu.js.map +1 -0
- package/dist/elements/ViewModeToggle/index.d.ts +8 -0
- package/dist/elements/ViewModeToggle/index.d.ts.map +1 -0
- package/dist/elements/ViewModeToggle/index.js +29 -0
- package/dist/elements/ViewModeToggle/index.js.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.d.ts +32 -0
- package/dist/elements/WhereBuilder/conditionValue.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.js +32 -0
- package/dist/elements/WhereBuilder/conditionValue.js.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.spec.js +65 -0
- package/dist/elements/WhereBuilder/conditionValue.spec.js.map +1 -0
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +15 -4
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +6 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +1 -1
- package/dist/exports/client/index.js.map +3 -3
- package/dist/fields/Array/ArrayRow.d.ts +1 -0
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +2 -0
- 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 +38 -10
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts +1 -0
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +2 -0
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +1 -0
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js +22 -19
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +35 -7
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.d.ts +2 -2
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +134 -152
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.css +168 -155
- package/dist/fields/Relationship/Input.d.ts.map +1 -1
- package/dist/fields/Relationship/Input.js +24 -6
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
- package/dist/fields/Relationship/optionsReducer.js +2 -0
- package/dist/fields/Relationship/optionsReducer.js.map +1 -1
- package/dist/fields/Relationship/types.d.ts +24 -0
- package/dist/fields/Relationship/types.d.ts.map +1 -1
- package/dist/fields/Relationship/types.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +44 -16
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/Input.spec.js +241 -0
- package/dist/fields/Upload/Input.spec.js.map +1 -0
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +4 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -0
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/icons/CollapseLayers/index.css +5 -0
- package/dist/icons/CollapseLayers/index.d.ts +7 -0
- package/dist/icons/CollapseLayers/index.d.ts.map +1 -0
- package/dist/icons/CollapseLayers/index.js +23 -0
- package/dist/icons/CollapseLayers/index.js.map +1 -0
- package/dist/icons/Edit/index.d.ts +0 -1
- package/dist/icons/Edit/index.d.ts.map +1 -1
- package/dist/icons/Edit/index.js +4 -4
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/icons/Table/index.css +5 -0
- package/dist/icons/Table/index.d.ts +7 -0
- package/dist/icons/Table/index.d.ts.map +1 -0
- package/dist/icons/Table/index.js +25 -0
- package/dist/icons/Table/index.js.map +1 -0
- package/dist/providers/Actions/index.d.ts +1 -0
- package/dist/providers/Actions/index.d.ts.map +1 -1
- package/dist/providers/Actions/index.js +43 -11
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
- package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
- package/dist/providers/Auth/authSessionRequests.js +119 -0
- package/dist/providers/Auth/authSessionRequests.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
- package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
- package/dist/providers/Auth/index.d.ts +2 -56
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +283 -135
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Auth/sessionActivity.d.ts +23 -0
- package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
- package/dist/providers/Auth/sessionActivity.js +49 -0
- package/dist/providers/Auth/sessionActivity.js.map +1 -0
- package/dist/providers/Auth/sessionActivity.spec.js +44 -0
- package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
- package/dist/providers/Auth/sessionTiming.d.ts +11 -0
- package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
- package/dist/providers/Auth/sessionTiming.js +18 -0
- package/dist/providers/Auth/sessionTiming.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.js +263 -0
- package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.js +6 -0
- package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
- package/dist/providers/Auth/types.d.ts +65 -0
- package/dist/providers/Auth/types.d.ts.map +1 -0
- package/dist/providers/Auth/types.js +2 -0
- package/dist/providers/Auth/types.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
- package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
- package/dist/providers/FormErrorHandler/index.d.ts +5 -1
- package/dist/providers/FormErrorHandler/index.d.ts.map +1 -1
- package/dist/providers/FormErrorHandler/index.js.map +1 -1
- package/dist/providers/Hierarchy/index.d.ts.map +1 -1
- package/dist/providers/Hierarchy/index.js +53 -24
- package/dist/providers/Hierarchy/index.js.map +1 -1
- package/dist/providers/Hierarchy/types.d.ts +2 -0
- package/dist/providers/Hierarchy/types.d.ts.map +1 -1
- package/dist/providers/Hierarchy/types.js.map +1 -1
- package/dist/providers/HierarchyDnd/index.css +51 -0
- package/dist/providers/HierarchyDnd/index.d.ts +21 -0
- package/dist/providers/HierarchyDnd/index.d.ts.map +1 -0
- package/dist/providers/HierarchyDnd/index.js +163 -0
- package/dist/providers/HierarchyDnd/index.js.map +1 -0
- package/dist/providers/HierarchyDnd/types.d.ts +56 -0
- package/dist/providers/HierarchyDnd/types.d.ts.map +1 -0
- package/dist/providers/HierarchyDnd/types.js +21 -0
- package/dist/providers/HierarchyDnd/types.js.map +1 -0
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +41 -36
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Root/index.js +4 -4
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
- package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
- package/dist/providers/RouteTransition/index.d.ts +2 -0
- package/dist/providers/RouteTransition/index.d.ts.map +1 -1
- package/dist/providers/RouteTransition/index.js +42 -14
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/templates/Default/Wrapper/index.css +2 -1
- package/dist/templates/Default/Wrapper/index.d.ts +2 -0
- package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
- package/dist/templates/Default/Wrapper/index.js +12 -6
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.css +3 -1
- package/dist/templates/Default/index.d.ts +1 -0
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js +19 -15
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/formatMetadata.d.ts.map +1 -1
- package/dist/utilities/formatMetadata.js +0 -5
- package/dist/utilities/formatMetadata.js.map +1 -1
- package/dist/utilities/getFilesFromClipboard.d.ts +10 -0
- package/dist/utilities/getFilesFromClipboard.d.ts.map +1 -0
- package/dist/utilities/getFilesFromClipboard.js +49 -0
- package/dist/utilities/getFilesFromClipboard.js.map +1 -0
- package/dist/utilities/slugify.d.ts.map +1 -1
- package/dist/utilities/slugify.js +1 -0
- package/dist/utilities/slugify.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.css +33 -140
- package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
- package/dist/views/Edit/SetDocumentTitle/index.js +4 -1
- package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +3 -2
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.js +100 -105
- package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.css +216 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts +20 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js +182 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.css +38 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts +15 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js +85 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.css +98 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts +27 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js +84 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts +19 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js +100 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts +53 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js +145 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts +8 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js +21 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/index.css +115 -0
- package/dist/views/HierarchyList/HierarchyCards/index.d.ts +80 -0
- package/dist/views/HierarchyList/HierarchyCards/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/index.js +457 -0
- package/dist/views/HierarchyList/HierarchyCards/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +6 -1
- package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyListHeader/index.js +10 -8
- package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +11 -10
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +3 -6
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/index.css +51 -0
- package/dist/views/HierarchyList/HierarchyTable/index.d.ts +13 -1
- package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/index.js +156 -38
- package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/types.d.ts +6 -0
- package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
- package/dist/views/HierarchyList/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/index.js +103 -20
- package/dist/views/HierarchyList/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.d.ts +1 -10
- package/dist/views/List/ListHeader/index.d.ts.map +1 -1
- package/dist/views/List/ListHeader/index.js +1 -3
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListSelection/index.d.ts.map +1 -1
- package/dist/views/List/ListSelection/index.js +138 -122
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/List/handleHierarchy.d.ts +6 -1
- package/dist/views/List/handleHierarchy.d.ts.map +1 -1
- package/dist/views/List/handleHierarchy.js +34 -3
- package/dist/views/List/handleHierarchy.js.map +1 -1
- package/dist/views/List/index.client.d.ts.map +1 -1
- package/dist/views/List/index.client.js +128 -18
- package/dist/views/List/index.client.js.map +1 -1
- package/dist/views/List/index.css +5 -0
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +27 -16
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
- package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
- package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
- package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
- package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
- package/dist/views/Root/getCustomViewByKey.js.map +1 -1
- package/dist/views/Root/getRouteData.d.ts.map +1 -1
- package/dist/views/Root/getRouteData.js +8 -2
- package/dist/views/Root/getRouteData.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +1 -0
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
- package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
- package/package.json +4 -4
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +0 -36
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +0 -13
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +0 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +0 -141
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +0 -1
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import React, { useCallback } from 'react';
|
|
6
|
+
import { FolderIcon } from '../../../../icons/Folder/index.js';
|
|
7
|
+
import { ReplaceIcon } from '../../../../icons/Replace/index.js';
|
|
8
|
+
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
9
|
+
import { Button } from '../../../Button/index.js';
|
|
10
|
+
import { Chip } from '../../../Chip/index.js';
|
|
11
|
+
import { DialogFooter } from '../../../Dialog/index.js';
|
|
12
|
+
import './index.css';
|
|
13
|
+
const baseClass = 'hierarchy-modal-footer';
|
|
14
|
+
// TODO: replace with a translation key once the hierarchy strings are finalized
|
|
15
|
+
const moveToLabel = 'Move to';
|
|
16
|
+
/** Deeper paths collapse to a leading ellipsis so the chip stays scannable, e.g. "… / Parent / Child" */
|
|
17
|
+
const MAX_VISIBLE_SEGMENTS = 2;
|
|
18
|
+
const Separator = () => /*#__PURE__*/_jsx("span", {
|
|
19
|
+
className: `${baseClass}__chip-separator`,
|
|
20
|
+
children: "/"
|
|
21
|
+
});
|
|
22
|
+
const HierarchyPathChip = ({
|
|
23
|
+
Icon,
|
|
24
|
+
onClick,
|
|
25
|
+
path
|
|
26
|
+
}) => {
|
|
27
|
+
const isTruncated = path.length > MAX_VISIBLE_SEGMENTS;
|
|
28
|
+
const visibleSegments = isTruncated ? path.slice(-MAX_VISIBLE_SEGMENTS) : path;
|
|
29
|
+
return /*#__PURE__*/_jsxs(Chip, {
|
|
30
|
+
"aria-label": path.map(segment => segment.title).join(' / '),
|
|
31
|
+
className: `${baseClass}__chip`,
|
|
32
|
+
icon: Icon ?? /*#__PURE__*/_jsx(FolderIcon, {}),
|
|
33
|
+
onClick: onClick,
|
|
34
|
+
children: [isTruncated ? /*#__PURE__*/_jsxs(React.Fragment, {
|
|
35
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
36
|
+
className: `${baseClass}__chip-ellipsis`,
|
|
37
|
+
children: "…"
|
|
38
|
+
}), /*#__PURE__*/_jsx(Separator, {})]
|
|
39
|
+
}) : null, visibleSegments.map((segment, index) => /*#__PURE__*/_jsxs(React.Fragment, {
|
|
40
|
+
children: [index > 0 && /*#__PURE__*/_jsx(Separator, {}), segment.title]
|
|
41
|
+
}, segment.id))]
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
export const HierarchyModalFooter = t0 => {
|
|
45
|
+
const $ = _c(23);
|
|
46
|
+
const {
|
|
47
|
+
confirmLabel,
|
|
48
|
+
destinationPath,
|
|
49
|
+
Icon,
|
|
50
|
+
isConfirmDisabled,
|
|
51
|
+
isMultiSelect,
|
|
52
|
+
onClear,
|
|
53
|
+
onConfirm,
|
|
54
|
+
onMoveToRoot,
|
|
55
|
+
onRevealPath,
|
|
56
|
+
placeholderLabel,
|
|
57
|
+
previousPath,
|
|
58
|
+
selectionCount,
|
|
59
|
+
selectionCountLabel,
|
|
60
|
+
showMoveToRoot
|
|
61
|
+
} = t0;
|
|
62
|
+
const {
|
|
63
|
+
t
|
|
64
|
+
} = useTranslation();
|
|
65
|
+
let t1;
|
|
66
|
+
if ($[0] !== onRevealPath || $[1] !== previousPath) {
|
|
67
|
+
t1 = () => onRevealPath(previousPath ?? []);
|
|
68
|
+
$[0] = onRevealPath;
|
|
69
|
+
$[1] = previousPath;
|
|
70
|
+
$[2] = t1;
|
|
71
|
+
} else {
|
|
72
|
+
t1 = $[2];
|
|
73
|
+
}
|
|
74
|
+
const revealPrevious = t1;
|
|
75
|
+
let t2;
|
|
76
|
+
if ($[3] !== destinationPath || $[4] !== onRevealPath) {
|
|
77
|
+
t2 = () => onRevealPath(destinationPath ?? []);
|
|
78
|
+
$[3] = destinationPath;
|
|
79
|
+
$[4] = onRevealPath;
|
|
80
|
+
$[5] = t2;
|
|
81
|
+
} else {
|
|
82
|
+
t2 = $[5];
|
|
83
|
+
}
|
|
84
|
+
const revealDestination = t2;
|
|
85
|
+
let t3;
|
|
86
|
+
if ($[6] !== Icon || $[7] !== confirmLabel || $[8] !== destinationPath || $[9] !== isConfirmDisabled || $[10] !== isMultiSelect || $[11] !== onClear || $[12] !== onConfirm || $[13] !== onMoveToRoot || $[14] !== placeholderLabel || $[15] !== previousPath || $[16] !== revealDestination || $[17] !== revealPrevious || $[18] !== selectionCount || $[19] !== selectionCountLabel || $[20] !== showMoveToRoot || $[21] !== t) {
|
|
87
|
+
const placeholder = _jsx("span", {
|
|
88
|
+
className: `${baseClass}__placeholder`,
|
|
89
|
+
children: placeholderLabel
|
|
90
|
+
});
|
|
91
|
+
t3 = _jsxs(DialogFooter, {
|
|
92
|
+
children: [_jsx("div", {
|
|
93
|
+
className: `${baseClass}__lead`,
|
|
94
|
+
children: isMultiSelect ? selectionCount > 0 ? _jsxs(React.Fragment, {
|
|
95
|
+
children: [_jsx("span", {
|
|
96
|
+
className: `${baseClass}__placeholder`,
|
|
97
|
+
children: selectionCountLabel
|
|
98
|
+
}), _jsx(Button, {
|
|
99
|
+
buttonStyle: "link",
|
|
100
|
+
className: `${baseClass}__clear`,
|
|
101
|
+
margin: false,
|
|
102
|
+
onClick: onClear,
|
|
103
|
+
size: "medium",
|
|
104
|
+
children: t("general:clear")
|
|
105
|
+
})]
|
|
106
|
+
}) : placeholder : _jsxs(React.Fragment, {
|
|
107
|
+
children: [previousPath?.length ? _jsxs(React.Fragment, {
|
|
108
|
+
children: [_jsx(HierarchyPathChip, {
|
|
109
|
+
Icon,
|
|
110
|
+
onClick: revealPrevious,
|
|
111
|
+
path: previousPath
|
|
112
|
+
}), _jsx("span", {
|
|
113
|
+
className: `${baseClass}__arrow`,
|
|
114
|
+
children: _jsx(ReplaceIcon, {})
|
|
115
|
+
})]
|
|
116
|
+
}) : null, destinationPath?.length ? _jsxs(React.Fragment, {
|
|
117
|
+
children: [!previousPath?.length && _jsx("span", {
|
|
118
|
+
className: `${baseClass}__placeholder`,
|
|
119
|
+
children: moveToLabel
|
|
120
|
+
}), _jsx(HierarchyPathChip, {
|
|
121
|
+
Icon,
|
|
122
|
+
onClick: revealDestination,
|
|
123
|
+
path: destinationPath
|
|
124
|
+
})]
|
|
125
|
+
}) : placeholder]
|
|
126
|
+
})
|
|
127
|
+
}), _jsxs("div", {
|
|
128
|
+
className: `${baseClass}__trail`,
|
|
129
|
+
children: [showMoveToRoot && onMoveToRoot ? _jsx(Button, {
|
|
130
|
+
buttonStyle: "secondary",
|
|
131
|
+
margin: false,
|
|
132
|
+
onClick: onMoveToRoot,
|
|
133
|
+
size: "medium",
|
|
134
|
+
children: t("hierarchy:moveToRoot")
|
|
135
|
+
}) : null, _jsx(Button, {
|
|
136
|
+
disabled: isConfirmDisabled,
|
|
137
|
+
margin: false,
|
|
138
|
+
onClick: onConfirm,
|
|
139
|
+
size: "medium",
|
|
140
|
+
children: confirmLabel
|
|
141
|
+
})]
|
|
142
|
+
})]
|
|
143
|
+
});
|
|
144
|
+
$[6] = Icon;
|
|
145
|
+
$[7] = confirmLabel;
|
|
146
|
+
$[8] = destinationPath;
|
|
147
|
+
$[9] = isConfirmDisabled;
|
|
148
|
+
$[10] = isMultiSelect;
|
|
149
|
+
$[11] = onClear;
|
|
150
|
+
$[12] = onConfirm;
|
|
151
|
+
$[13] = onMoveToRoot;
|
|
152
|
+
$[14] = placeholderLabel;
|
|
153
|
+
$[15] = previousPath;
|
|
154
|
+
$[16] = revealDestination;
|
|
155
|
+
$[17] = revealPrevious;
|
|
156
|
+
$[18] = selectionCount;
|
|
157
|
+
$[19] = selectionCountLabel;
|
|
158
|
+
$[20] = showMoveToRoot;
|
|
159
|
+
$[21] = t;
|
|
160
|
+
$[22] = t3;
|
|
161
|
+
} else {
|
|
162
|
+
t3 = $[22];
|
|
163
|
+
}
|
|
164
|
+
return t3;
|
|
165
|
+
};
|
|
166
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useCallback","FolderIcon","ReplaceIcon","useTranslation","Button","Chip","DialogFooter","baseClass","moveToLabel","MAX_VISIBLE_SEGMENTS","Separator","_jsx","className","HierarchyPathChip","Icon","onClick","path","isTruncated","length","visibleSegments","slice","_jsxs","map","segment","title","join","icon","Fragment","index","id","HierarchyModalFooter","t0","$","confirmLabel","destinationPath","isConfirmDisabled","isMultiSelect","onClear","onConfirm","onMoveToRoot","onRevealPath","placeholderLabel","previousPath","selectionCount","selectionCountLabel","showMoveToRoot","t","t1","revealPrevious","t2","revealDestination","t3","placeholder","children","buttonStyle","margin","size","disabled"],"sources":["../../../../../src/elements/Hierarchy/Modal/Footer/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback } from 'react'\n\nimport type { PathSegment } from '../../ColumnBrowser/types.js'\n\nimport { FolderIcon } from '../../../../icons/Folder/index.js'\nimport { ReplaceIcon } from '../../../../icons/Replace/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { Button } from '../../../Button/index.js'\nimport { Chip } from '../../../Chip/index.js'\nimport { DialogFooter } from '../../../Dialog/index.js'\nimport './index.css'\n\nconst baseClass = 'hierarchy-modal-footer'\n\n// TODO: replace with a translation key once the hierarchy strings are finalized\nconst moveToLabel = 'Move to'\n\nexport type HierarchyModalFooterProps = {\n /** Label for the primary action, e.g. \"Move\" or \"Confirm\" */\n readonly confirmLabel: string\n /** Path of the item the user has picked in this session, root first */\n readonly destinationPath?: PathSegment[]\n /** Leading icon for the breadcrumb chips - falls back to a folder */\n readonly Icon?: React.ReactNode\n readonly isConfirmDisabled: boolean\n readonly isMultiSelect: boolean\n readonly onClear: () => void\n readonly onConfirm: () => void\n readonly onMoveToRoot?: () => void\n /** Called with a chip's path to expand the browser down to that item and focus it */\n readonly onRevealPath: (path: PathSegment[]) => void\n /** Shown when nothing has been picked yet, e.g. \"Select Folder\" */\n readonly placeholderLabel: string\n /** Path the item lived in before the modal was opened, root first */\n readonly previousPath?: PathSegment[]\n readonly selectionCount: number\n /** Shown in multi-select mode once something is checked, e.g. \"3 Tags selected\" */\n readonly selectionCountLabel: string\n readonly showMoveToRoot?: boolean\n}\n\n/** Deeper paths collapse to a leading ellipsis so the chip stays scannable, e.g. \"… / Parent / Child\" */\nconst MAX_VISIBLE_SEGMENTS = 2\n\nconst Separator: React.FC = () => <span className={`${baseClass}__chip-separator`}>/</span>\n\nconst HierarchyPathChip: React.FC<{\n readonly Icon?: React.ReactNode\n readonly onClick: () => void\n readonly path: PathSegment[]\n}> = ({ Icon, onClick, path }) => {\n const isTruncated = path.length > MAX_VISIBLE_SEGMENTS\n const visibleSegments = isTruncated ? path.slice(-MAX_VISIBLE_SEGMENTS) : path\n\n return (\n <Chip\n aria-label={path.map((segment) => segment.title).join(' / ')}\n className={`${baseClass}__chip`}\n icon={Icon ?? <FolderIcon />}\n onClick={onClick}\n >\n {isTruncated ? (\n <React.Fragment>\n <span className={`${baseClass}__chip-ellipsis`}>…</span>\n <Separator />\n </React.Fragment>\n ) : null}\n {visibleSegments.map((segment, index) => (\n <React.Fragment key={segment.id}>\n {index > 0 && <Separator />}\n {segment.title}\n </React.Fragment>\n ))}\n </Chip>\n )\n}\n\nexport const HierarchyModalFooter: React.FC<HierarchyModalFooterProps> = ({\n confirmLabel,\n destinationPath,\n Icon,\n isConfirmDisabled,\n isMultiSelect,\n onClear,\n onConfirm,\n onMoveToRoot,\n onRevealPath,\n placeholderLabel,\n previousPath,\n selectionCount,\n selectionCountLabel,\n showMoveToRoot,\n}) => {\n const { t } = useTranslation()\n\n const revealPrevious = useCallback(\n () => onRevealPath(previousPath ?? []),\n [onRevealPath, previousPath],\n )\n\n const revealDestination = useCallback(\n () => onRevealPath(destinationPath ?? []),\n [destinationPath, onRevealPath],\n )\n\n const placeholder = <span className={`${baseClass}__placeholder`}>{placeholderLabel}</span>\n\n return (\n <DialogFooter>\n <div className={`${baseClass}__lead`}>\n {isMultiSelect ? (\n selectionCount > 0 ? (\n <React.Fragment>\n <span className={`${baseClass}__placeholder`}>{selectionCountLabel}</span>\n <Button\n buttonStyle=\"link\"\n className={`${baseClass}__clear`}\n margin={false}\n onClick={onClear}\n size=\"medium\"\n >\n {t('general:clear')}\n </Button>\n </React.Fragment>\n ) : (\n placeholder\n )\n ) : (\n <React.Fragment>\n {previousPath?.length ? (\n <React.Fragment>\n <HierarchyPathChip Icon={Icon} onClick={revealPrevious} path={previousPath} />\n <span className={`${baseClass}__arrow`}>\n <ReplaceIcon />\n </span>\n </React.Fragment>\n ) : null}\n {destinationPath?.length ? (\n <React.Fragment>\n {!previousPath?.length && (\n <span className={`${baseClass}__placeholder`}>{moveToLabel}</span>\n )}\n <HierarchyPathChip Icon={Icon} onClick={revealDestination} path={destinationPath} />\n </React.Fragment>\n ) : (\n placeholder\n )}\n </React.Fragment>\n )}\n </div>\n <div className={`${baseClass}__trail`}>\n {showMoveToRoot && onMoveToRoot ? (\n <Button buttonStyle=\"secondary\" margin={false} onClick={onMoveToRoot} size=\"medium\">\n {t('hierarchy:moveToRoot')}\n </Button>\n ) : null}\n <Button disabled={isConfirmDisabled} margin={false} onClick={onConfirm} size=\"medium\">\n {confirmLabel}\n </Button>\n </div>\n </DialogFooter>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,15 +1,29 @@
|
|
|
1
|
+
import type { PathSegment } from '../ColumnBrowser/types.js';
|
|
1
2
|
type FetchAncestorPathArgs = {
|
|
2
3
|
api: string;
|
|
3
4
|
collectionSlug: string;
|
|
4
5
|
itemId: number | string;
|
|
5
6
|
parentFieldName: string;
|
|
6
7
|
serverURL: string;
|
|
8
|
+
useAsTitle: string;
|
|
7
9
|
};
|
|
10
|
+
type FetchAncestorPathsArgs = {
|
|
11
|
+
itemIds: (number | string)[];
|
|
12
|
+
} & Omit<FetchAncestorPathArgs, 'itemId'>;
|
|
13
|
+
export type AncestorPathResult = {
|
|
14
|
+
/** Ancestor IDs from root down to the item's immediate parent, excluding the item itself */
|
|
15
|
+
ancestorIds: (number | string)[];
|
|
16
|
+
/** Full path from root down to the item itself, with titles */
|
|
17
|
+
path: PathSegment[];
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Fetches the ancestor paths for several items in a single API call with depth.
|
|
21
|
+
* Each populated parent chain is walked to build a titled breadcrumb from root to the item.
|
|
22
|
+
*/
|
|
23
|
+
export declare function fetchAncestorPaths({ api, collectionSlug, itemIds, parentFieldName, serverURL, useAsTitle, }: FetchAncestorPathsArgs): Promise<Map<number | string, AncestorPathResult>>;
|
|
8
24
|
/**
|
|
9
|
-
* Fetches the ancestor path for
|
|
10
|
-
* Returns array of ancestor IDs from root to item's parent.
|
|
11
|
-
* Example: item at level 3 returns [grandparentId, parentId]
|
|
25
|
+
* Fetches the ancestor path for a single item. See {@link fetchAncestorPaths}.
|
|
12
26
|
*/
|
|
13
|
-
export declare function fetchAncestorPath({
|
|
27
|
+
export declare function fetchAncestorPath({ itemId, ...rest }: FetchAncestorPathArgs): Promise<AncestorPathResult>;
|
|
14
28
|
export {};
|
|
15
29
|
//# sourceMappingURL=fetchAncestorPath.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAncestorPath.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Modal/fetchAncestorPath.ts"],"names":[],"mappings":"AAGA,KAAK,qBAAqB,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchAncestorPath.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Modal/fetchAncestorPath.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAE5D,KAAK,qBAAqB,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,KAAK,sBAAsB,GAAG;IAC5B,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;CAC7B,GAAG,IAAI,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAA;AAEzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,4FAA4F;IAC5F,WAAW,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAChC,+DAA+D;IAC/D,IAAI,EAAE,WAAW,EAAE,CAAA;CACpB,CAAA;AAMD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,GAAG,EACH,cAAc,EACd,OAAO,EACP,eAAe,EACf,SAAS,EACT,UAAU,GACX,EAAE,sBAAsB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,kBAAkB,CAAC,CAAC,CA0C5E;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,MAAM,EACN,GAAG,IAAI,EACR,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAIrD"}
|
|
@@ -1,27 +1,36 @@
|
|
|
1
1
|
import { formatAdminURL } from 'payload/shared';
|
|
2
2
|
import * as qs from 'qs-esm';
|
|
3
3
|
const MAX_HIERARCHY_DEPTH = 20;
|
|
4
|
+
const EMPTY_RESULT = {
|
|
5
|
+
ancestorIds: [],
|
|
6
|
+
path: []
|
|
7
|
+
};
|
|
4
8
|
/**
|
|
5
|
-
* Fetches the ancestor
|
|
6
|
-
*
|
|
7
|
-
* Example: item at level 3 returns [grandparentId, parentId]
|
|
9
|
+
* Fetches the ancestor paths for several items in a single API call with depth.
|
|
10
|
+
* Each populated parent chain is walked to build a titled breadcrumb from root to the item.
|
|
8
11
|
*/
|
|
9
|
-
export async function
|
|
12
|
+
export async function fetchAncestorPaths({
|
|
10
13
|
api,
|
|
11
14
|
collectionSlug,
|
|
12
|
-
|
|
15
|
+
itemIds,
|
|
13
16
|
parentFieldName,
|
|
14
|
-
serverURL
|
|
17
|
+
serverURL,
|
|
18
|
+
useAsTitle
|
|
15
19
|
}) {
|
|
20
|
+
const results = new Map();
|
|
21
|
+
if (itemIds.length === 0) {
|
|
22
|
+
return results;
|
|
23
|
+
}
|
|
16
24
|
const queryString = qs.stringify({
|
|
17
25
|
depth: MAX_HIERARCHY_DEPTH,
|
|
18
|
-
limit:
|
|
26
|
+
limit: itemIds.length,
|
|
19
27
|
select: {
|
|
20
|
-
[parentFieldName]: true
|
|
28
|
+
[parentFieldName]: true,
|
|
29
|
+
[useAsTitle]: true
|
|
21
30
|
},
|
|
22
31
|
where: {
|
|
23
32
|
id: {
|
|
24
|
-
|
|
33
|
+
in: itemIds
|
|
25
34
|
}
|
|
26
35
|
}
|
|
27
36
|
}, {
|
|
@@ -36,25 +45,80 @@ export async function fetchAncestorPath({
|
|
|
36
45
|
credentials: 'include'
|
|
37
46
|
});
|
|
38
47
|
if (!response.ok) {
|
|
39
|
-
return
|
|
48
|
+
return results;
|
|
40
49
|
}
|
|
41
50
|
const data = await response.json();
|
|
42
|
-
const doc
|
|
43
|
-
|
|
44
|
-
|
|
51
|
+
for (const doc of data.docs || []) {
|
|
52
|
+
const id = doc.id;
|
|
53
|
+
if (id === null || id === undefined) {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
results.set(id, buildAncestorPath({
|
|
57
|
+
id,
|
|
58
|
+
doc,
|
|
59
|
+
parentFieldName,
|
|
60
|
+
useAsTitle
|
|
61
|
+
}));
|
|
45
62
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
63
|
+
return results;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Fetches the ancestor path for a single item. See {@link fetchAncestorPaths}.
|
|
67
|
+
*/
|
|
68
|
+
export async function fetchAncestorPath({
|
|
69
|
+
itemId,
|
|
70
|
+
...rest
|
|
71
|
+
}) {
|
|
72
|
+
const results = await fetchAncestorPaths({
|
|
73
|
+
...rest,
|
|
74
|
+
itemIds: [itemId]
|
|
75
|
+
});
|
|
76
|
+
return results.get(itemId) ?? EMPTY_RESULT;
|
|
77
|
+
}
|
|
78
|
+
function buildAncestorPath({
|
|
79
|
+
id,
|
|
80
|
+
doc,
|
|
81
|
+
parentFieldName,
|
|
82
|
+
useAsTitle
|
|
83
|
+
}) {
|
|
84
|
+
const toTitle = (value, segmentID) => {
|
|
85
|
+
const rawTitle = value?.[useAsTitle];
|
|
86
|
+
return typeof rawTitle === 'string' || typeof rawTitle === 'number' ? String(rawTitle) : String(segmentID);
|
|
87
|
+
};
|
|
88
|
+
const path = [{
|
|
89
|
+
id,
|
|
90
|
+
title: toTitle(doc, id)
|
|
91
|
+
}];
|
|
92
|
+
let current = doc;
|
|
93
|
+
for (let depth = 0; depth < MAX_HIERARCHY_DEPTH; depth++) {
|
|
94
|
+
const parent = current?.[parentFieldName];
|
|
95
|
+
if (parent === null || parent === undefined) {
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
// Parent is either a populated document or a bare ID once the depth limit is hit
|
|
99
|
+
if (typeof parent === 'object') {
|
|
100
|
+
const parentDoc = parent;
|
|
101
|
+
const parentID = parentDoc.id;
|
|
102
|
+
if (parentID === null || parentID === undefined) {
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
path.unshift({
|
|
106
|
+
id: parentID,
|
|
107
|
+
title: toTitle(parentDoc, parentID)
|
|
108
|
+
});
|
|
109
|
+
current = parentDoc;
|
|
110
|
+
} else {
|
|
111
|
+
const parentID = parent;
|
|
112
|
+
path.unshift({
|
|
113
|
+
id: parentID,
|
|
114
|
+
title: String(parentID)
|
|
115
|
+
});
|
|
116
|
+
break;
|
|
54
117
|
}
|
|
55
|
-
// Move to next parent (only if current is populated object)
|
|
56
|
-
current = typeof current === 'object' ? current[parentFieldName] : null;
|
|
57
118
|
}
|
|
58
|
-
return
|
|
119
|
+
return {
|
|
120
|
+
ancestorIds: path.slice(0, -1).map(segment => segment.id),
|
|
121
|
+
path
|
|
122
|
+
};
|
|
59
123
|
}
|
|
60
124
|
//# sourceMappingURL=fetchAncestorPath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAncestorPath.js","names":["formatAdminURL","qs","MAX_HIERARCHY_DEPTH","
|
|
1
|
+
{"version":3,"file":"fetchAncestorPath.js","names":["formatAdminURL","qs","MAX_HIERARCHY_DEPTH","EMPTY_RESULT","ancestorIds","path","fetchAncestorPaths","api","collectionSlug","itemIds","parentFieldName","serverURL","useAsTitle","results","Map","length","queryString","stringify","depth","limit","select","where","id","in","addQueryPrefix","url","apiRoute","response","fetch","credentials","ok","data","json","doc","docs","undefined","set","buildAncestorPath","fetchAncestorPath","itemId","rest","get","toTitle","value","segmentID","rawTitle","String","title","current","parent","parentDoc","parentID","unshift","slice","map","segment"],"sources":["../../../../src/elements/Hierarchy/Modal/fetchAncestorPath.ts"],"sourcesContent":["import { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\n\nimport type { PathSegment } from '../ColumnBrowser/types.js'\n\ntype FetchAncestorPathArgs = {\n api: string\n collectionSlug: string\n itemId: number | string\n parentFieldName: string\n serverURL: string\n useAsTitle: string\n}\n\ntype FetchAncestorPathsArgs = {\n itemIds: (number | string)[]\n} & Omit<FetchAncestorPathArgs, 'itemId'>\n\nexport type AncestorPathResult = {\n /** Ancestor IDs from root down to the item's immediate parent, excluding the item itself */\n ancestorIds: (number | string)[]\n /** Full path from root down to the item itself, with titles */\n path: PathSegment[]\n}\n\nconst MAX_HIERARCHY_DEPTH = 20\n\nconst EMPTY_RESULT: AncestorPathResult = { ancestorIds: [], path: [] }\n\n/**\n * Fetches the ancestor paths for several items in a single API call with depth.\n * Each populated parent chain is walked to build a titled breadcrumb from root to the item.\n */\nexport async function fetchAncestorPaths({\n api,\n collectionSlug,\n itemIds,\n parentFieldName,\n serverURL,\n useAsTitle,\n}: FetchAncestorPathsArgs): Promise<Map<number | string, AncestorPathResult>> {\n const results = new Map<number | string, AncestorPathResult>()\n\n if (itemIds.length === 0) {\n return results\n }\n\n const queryString = qs.stringify(\n {\n depth: MAX_HIERARCHY_DEPTH,\n limit: itemIds.length,\n select: { [parentFieldName]: true, [useAsTitle]: true },\n where: { id: { in: itemIds } },\n },\n { addQueryPrefix: true },\n )\n\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (!response.ok) {\n return results\n }\n\n const data = await response.json()\n\n for (const doc of (data.docs || []) as Record<string, unknown>[]) {\n const id = doc.id as number | string\n\n if (id === null || id === undefined) {\n continue\n }\n\n results.set(id, buildAncestorPath({ id, doc, parentFieldName, useAsTitle }))\n }\n\n return results\n}\n\n/**\n * Fetches the ancestor path for a single item. See {@link fetchAncestorPaths}.\n */\nexport async function fetchAncestorPath({\n itemId,\n ...rest\n}: FetchAncestorPathArgs): Promise<AncestorPathResult> {\n const results = await fetchAncestorPaths({ ...rest, itemIds: [itemId] })\n\n return results.get(itemId) ?? EMPTY_RESULT\n}\n\nfunction buildAncestorPath({\n id,\n doc,\n parentFieldName,\n useAsTitle,\n}: {\n doc: Record<string, unknown>\n id: number | string\n parentFieldName: string\n useAsTitle: string\n}): AncestorPathResult {\n const toTitle = (\n value: Record<string, unknown> | undefined,\n segmentID: number | string,\n ): string => {\n const rawTitle = value?.[useAsTitle]\n return typeof rawTitle === 'string' || typeof rawTitle === 'number'\n ? String(rawTitle)\n : String(segmentID)\n }\n\n const path: PathSegment[] = [{ id, title: toTitle(doc, id) }]\n\n let current: Record<string, unknown> | undefined = doc\n\n for (let depth = 0; depth < MAX_HIERARCHY_DEPTH; depth++) {\n const parent = current?.[parentFieldName]\n\n if (parent === null || parent === undefined) {\n break\n }\n\n // Parent is either a populated document or a bare ID once the depth limit is hit\n if (typeof parent === 'object') {\n const parentDoc = parent as Record<string, unknown>\n const parentID = parentDoc.id as number | string\n\n if (parentID === null || parentID === undefined) {\n break\n }\n\n path.unshift({ id: parentID, title: toTitle(parentDoc, parentID) })\n current = parentDoc\n } else {\n const parentID = parent as number | string\n path.unshift({ id: parentID, title: String(parentID) })\n break\n }\n }\n\n return {\n ancestorIds: path.slice(0, -1).map((segment) => segment.id),\n path,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,66 +14,17 @@
|
|
|
14
14
|
overflow: clip;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
.
|
|
18
|
-
|
|
19
|
-
gap: var(--spacer-2);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.dialog.hierarchy-modal .dialog__body {
|
|
17
|
+
/* Beats the `:has(.dialog__header)` / `:has(.dialog__footer)` padding rules in Dialog/index.css */
|
|
18
|
+
.dialog.hierarchy-modal .hierarchy-modal__content .dialog__body {
|
|
23
19
|
display: flex;
|
|
24
20
|
flex-direction: column;
|
|
25
21
|
padding: 0;
|
|
26
22
|
}
|
|
27
23
|
|
|
28
|
-
.hierarchy-
|
|
29
|
-
display: flex;
|
|
24
|
+
.dialog.hierarchy-modal .dialog__footer {
|
|
30
25
|
justify-content: space-between;
|
|
31
26
|
align-items: center;
|
|
32
|
-
|
|
33
|
-
padding-inline-start: var(--spacer-2-5);
|
|
34
|
-
border-bottom: var(--stroke-width-small) solid var(--color-border);
|
|
35
|
-
flex-shrink: 0;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.hierarchy-modal__subheader-left {
|
|
39
|
-
display: flex;
|
|
40
|
-
align-items: center;
|
|
41
|
-
gap: var(--spacer-1);
|
|
42
|
-
font-weight: 500;
|
|
43
|
-
color: var(--color-text);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.hierarchy-modal__subheader-right {
|
|
47
|
-
display: flex;
|
|
48
|
-
align-items: center;
|
|
49
|
-
gap: var(--spacer-2);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.hierarchy-modal__selection-info {
|
|
53
|
-
color: var(--color-text-secondary);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.hierarchy-modal__move-to-root,
|
|
57
|
-
.hierarchy-modal__clear-all {
|
|
58
|
-
height: auto;
|
|
59
|
-
padding: 0;
|
|
60
|
-
border: 0;
|
|
61
|
-
border-radius: 0;
|
|
62
|
-
background: transparent;
|
|
63
|
-
color: var(--color-text-secondary);
|
|
64
|
-
text-decoration: underline;
|
|
65
|
-
text-underline-offset: 2px;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.hierarchy-modal__move-to-root:hover:not(.btn--disabled),
|
|
69
|
-
.hierarchy-modal__clear-all:hover:not(.btn--disabled) {
|
|
70
|
-
background: transparent;
|
|
71
|
-
color: var(--color-text);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.hierarchy-modal__move-to-root:active:not(.btn--disabled),
|
|
75
|
-
.hierarchy-modal__clear-all:active:not(.btn--disabled) {
|
|
76
|
-
background: transparent;
|
|
27
|
+
border-top: var(--stroke-width-small) solid var(--color-border);
|
|
77
28
|
}
|
|
78
29
|
|
|
79
30
|
.hierarchy-modal__columns {
|
|
@@ -10,9 +10,12 @@ type HierarchyModalContentProps = {
|
|
|
10
10
|
}) => void;
|
|
11
11
|
} & HierarchyModalInternalProps;
|
|
12
12
|
export type HierarchyModalContentRef = {
|
|
13
|
-
selectItem: (
|
|
13
|
+
selectItem: (params: {
|
|
14
|
+
id: number | string;
|
|
15
|
+
title?: string;
|
|
16
|
+
}) => void;
|
|
14
17
|
};
|
|
15
|
-
export declare const HierarchyModalContent: ({ baseFilter, closeModal, columnBrowserRef, disabledIds, filterByCollection, hasMany, hierarchyCollectionSlug, Icon, initialSelections, onCreateNew, onMoveToRoot, onSave, parentFieldName, ref, showMoveToRoot, useAsTitle, }: {
|
|
18
|
+
export declare const HierarchyModalContent: ({ baseFilter, closeModal, columnBrowserRef, confirmLabel, disabledIds, filterByCollection, hasMany, hierarchyCollectionSlug, Icon, initialSelections, onCreateNew, onMoveToRoot, onSave, parentFieldName, ref, showMoveToRoot, title, useAsTitle, }: {
|
|
16
19
|
ref?: React.RefObject<HierarchyModalContentRef | null>;
|
|
17
20
|
} & HierarchyModalContentProps) => React.JSX.Element;
|
|
18
21
|
export declare const HierarchyModal: React.FC<HierarchyModalInternalProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Modal/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAON,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Modal/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAON,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAE1E,OAAO,KAAK,EAAE,2BAA2B,EAAqB,MAAM,YAAY,CAAA;AAYhF,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,oBAAoB,CAAA;AAE1C,KAAK,0BAA0B,GAAG;IAChC,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;IACpE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACrE,GAAG,2BAA2B,CAAA;AAE/B,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,qBAAqB,wPAmB/B;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAAA;CAAE,GAAG,0BAA0B,sBAyPzF,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAoGhE,CAAA"}
|