@leav/ui 0.4.0-9b6d94c → 0.4.0-a04a265e
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/README.md +1 -0
- package/dist/__mocks__/common/form.js +5 -1
- package/dist/__mocks__/common/form.js.map +1 -1
- package/dist/_gqlTypes/index.d.ts +1495 -187
- package/dist/_gqlTypes/index.js +453 -43
- package/dist/_gqlTypes/index.js.map +1 -1
- package/dist/_queries/attributes/attributeDetailsFragment.js +1 -0
- package/dist/_queries/attributes/attributeDetailsFragment.js.map +1 -1
- package/dist/_queries/records/activateRecordsMutation.d.ts +1 -0
- package/dist/_queries/records/activateRecordsMutation.js +15 -0
- package/dist/_queries/records/activateRecordsMutation.js.map +1 -0
- package/dist/_queries/records/getRecordFormQuery.js +13 -0
- package/dist/_queries/records/getRecordFormQuery.js.map +1 -1
- package/dist/_queries/trees/treeNodeChildrenQuery.js +12 -2
- package/dist/_queries/trees/treeNodeChildrenQuery.js.map +1 -1
- package/dist/_utils/attributeType.d.ts +2 -1
- package/dist/_utils/attributeType.js +2 -1
- package/dist/_utils/attributeType.js.map +1 -1
- package/dist/components/CreateDirectory/CreateDirectory.js +3 -3
- package/dist/components/CreateDirectory/CreateDirectory.js.map +1 -1
- package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/DeleteButton/DeleteButton.js +3 -2
- package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/DeleteButton/DeleteButton.js.map +1 -1
- package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js +8 -1
- package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js.map +1 -1
- package/dist/components/Explorer/DataView.d.ts +2 -1
- package/dist/components/Explorer/DataView.js +15 -12
- package/dist/components/Explorer/DataView.js.map +1 -1
- package/dist/components/Explorer/Explorer.d.ts +9 -6
- package/dist/components/Explorer/Explorer.js +25 -11
- package/dist/components/Explorer/Explorer.js.map +1 -1
- package/dist/components/Explorer/ExplorerToolbar.d.ts +2 -1
- package/dist/components/Explorer/ExplorerToolbar.js +15 -5
- package/dist/components/Explorer/ExplorerToolbar.js.map +1 -1
- package/dist/components/Explorer/TableCell.js +22 -11
- package/dist/components/Explorer/TableCell.js.map +1 -1
- package/dist/components/Explorer/_queries/prepareFiltersForRequest.d.ts +1 -1
- package/dist/components/Explorer/_queries/prepareFiltersForRequest.js +99 -31
- package/dist/components/Explorer/_queries/prepareFiltersForRequest.js.map +1 -1
- package/dist/components/Explorer/_queries/useExplorerData.js +35 -26
- package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -1
- package/dist/components/Explorer/_types.d.ts +75 -9
- package/dist/components/Explorer/_types.js +5 -0
- package/dist/components/Explorer/_types.js.map +1 -1
- package/dist/components/Explorer/actions-item/useEditItemAction.d.ts +2 -1
- package/dist/components/Explorer/actions-item/useEditItemAction.js +2 -1
- package/dist/components/Explorer/actions-item/useEditItemAction.js.map +1 -1
- package/dist/components/Explorer/actions-item/{useRemoveItemAction.d.ts → useEditStatusItemAction.d.ts} +2 -2
- package/dist/components/Explorer/actions-item/{useRemoveItemAction.js → useEditStatusItemAction.js} +71 -24
- package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -0
- package/dist/components/Explorer/actions-item/useReplaceItemAction.d.ts +2 -1
- package/dist/components/Explorer/actions-item/useReplaceItemAction.js +2 -2
- package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
- package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.d.ts +5 -1
- package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +20 -22
- package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +6 -3
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +5 -19
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
- package/dist/components/Explorer/link-item/LinkModal.d.ts +3 -0
- package/dist/components/Explorer/link-item/LinkModal.js +44 -4
- package/dist/components/Explorer/link-item/LinkModal.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/_shared/CommonFilterItem.js +4 -4
- package/dist/components/Explorer/manage-view-settings/_shared/CommonFilterItem.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.d.ts +9 -3
- package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js +81 -12
- package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js +21 -8
- package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropDown.js +2 -2
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropDown.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropdownContent.js +9 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropdownContent.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueListDropDown.d.ts +9 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueListDropDown.js +131 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueListDropDown.js.map +1 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TreeAttributeDropDown.d.ts +3 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TreeAttributeDropDown.js +69 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TreeAttributeDropDown.js.map +1 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/_types.d.ts +6 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.d.ts +3 -0
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.js +43 -4
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js +29 -8
- package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js +2 -1
- package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js.map +1 -1
- package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.d.ts +3 -2
- package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js +57 -14
- package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js.map +1 -1
- package/dist/components/Explorer/useLoadView.d.ts +1 -1
- package/dist/components/Explorer/useLoadView.js +32 -38
- package/dist/components/Explorer/useLoadView.js.map +1 -1
- package/dist/components/Explorer/usePagination.d.ts +2 -1
- package/dist/components/Explorer/usePagination.js.map +1 -1
- package/dist/components/Explorer/useSearchInput.d.ts +3 -1
- package/dist/components/Explorer/useSearchInput.js +4 -1
- package/dist/components/Explorer/useSearchInput.js.map +1 -1
- package/dist/components/Explorer/useViewSettingsReducer.d.ts +1 -1
- package/dist/components/Explorer/useViewSettingsReducer.js +31 -16
- package/dist/components/Explorer/useViewSettingsReducer.js.map +1 -1
- package/dist/components/ImportModal/ImportModalConfigStep/ImportModalConfigStep.js +1 -1
- package/dist/components/ImportModal/ImportModalConfigStep/ImportModalConfigStep.js.map +1 -1
- package/dist/components/LibraryItemsList/CreateNewRecordButton/CreateNewRecordButton.js +1 -0
- package/dist/components/LibraryItemsList/CreateNewRecordButton/CreateNewRecordButton.js.map +1 -1
- package/dist/components/LibraryItemsList/FiltersDropdown/FiltersDropdown.js +1 -12
- package/dist/components/LibraryItemsList/FiltersDropdown/FiltersDropdown.js.map +1 -1
- package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js +3 -3
- package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js.map +1 -1
- package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.utils.js +2 -2
- package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.utils.js.map +1 -1
- package/dist/components/LibraryItemsList/shared/DeactivateRecordBtn/DeactivateRecordBtn.js +3 -3
- package/dist/components/LibraryItemsList/shared/DeactivateRecordBtn/DeactivateRecordBtn.js.map +1 -1
- package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +3 -5
- package/dist/components/RecordEdition/EditRecord/EditRecord.js +45 -239
- package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.d.ts +2 -0
- package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.js +43 -0
- package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.d.ts +2 -0
- package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js +25 -0
- package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordButtons/index.d.ts +2 -0
- package/dist/components/{SelectTreeNodeModal → RecordEdition/EditRecordButtons}/index.js +2 -1
- package/dist/components/RecordEdition/EditRecordButtons/index.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.d.ts +3 -3
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +24 -22
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +6 -16
- package/dist/components/RecordEdition/EditRecordContent/_types.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateEmptyRecordMutation.d.ts +5 -0
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateEmptyRecordMutation.js +28 -0
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateEmptyRecordMutation.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.d.ts +11 -0
- package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.js +35 -0
- package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.d.ts +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/FormDivider/FormDivider.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/FormTabs/FormTabs.d.ts +2 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/FormTabs/FormTabs.js +6 -9
- package/dist/components/RecordEdition/EditRecordContent/uiElements/FormTabs/FormTabs.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Frame/Frame.js +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Frame/Frame.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.d.ts +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +11 -35
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/ActionButton.d.ts +3 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/ActionButton.js +9 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/ActionButton.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record-in-edition/useLinkRecords.d.ts → link-record/useExplorerLinkRecords.d.ts} +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record-in-edition/useLinkRecords.js → link-record/useExplorerLinkRecords.js} +3 -3
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useExplorerLinkRecords.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.d.ts +24 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record-in-edition/useLinkRecordsInEdition.js → link-record/useLinkRecords.js} +19 -49
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +27 -22
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js +3 -3
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TextBlock/TextBlock.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.d.ts +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +19 -24
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.d.ts +2 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/{useDisplayTreeNode.d.ts → TreeNodeList.d.ts} +4 -4
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeList.js +5 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeList.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.d.ts +16 -4
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js +12 -13
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.d.ts +4 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js +51 -63
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.d.ts +1 -3
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js +6 -10
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.d.ts +3 -0
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js +49 -16
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.d.ts +1 -0
- package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +49 -12
- package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js +2 -2
- package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.d.ts +0 -1
- package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js +13 -12
- package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js +2 -2
- package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js.map +1 -1
- package/dist/components/RecordEdition/constants.d.ts +2 -0
- package/dist/components/RecordEdition/constants.js +6 -0
- package/dist/components/RecordEdition/constants.js.map +1 -0
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.d.ts +28 -5
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js +44 -3
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js.map +1 -1
- package/dist/components/RecordEdition/index.d.ts +3 -0
- package/dist/components/RecordEdition/index.js +3 -0
- package/dist/components/RecordEdition/index.js.map +1 -1
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +4 -1
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +6 -4
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
- package/dist/components/SelectTreeNode/SelectTreeNode.d.ts +7 -3
- package/dist/components/SelectTreeNode/SelectTreeNode.js +2 -3
- package/dist/components/SelectTreeNode/SelectTreeNode.js.map +1 -1
- package/dist/components/SelectTreeNode/SelectTreeNodeContent.d.ts +5 -1
- package/dist/components/SelectTreeNode/SelectTreeNodeContent.js +70 -56
- package/dist/components/SelectTreeNode/SelectTreeNodeContent.js.map +1 -1
- package/dist/components/SelectTreeNode/_types.d.ts +18 -0
- package/dist/components/SelectTreeNode/_types.js +2 -0
- package/dist/components/SelectTreeNode/_types.js.map +1 -0
- package/dist/components/{SelectTreeNodeModal/SelectTreeNodeModal.d.ts → SelectTreeNodeModalOld/SelectTreeNodeModalOld.d.ts} +1 -1
- package/dist/components/{SelectTreeNodeModal/SelectTreeNodeModal.js → SelectTreeNodeModalOld/SelectTreeNodeModalOld.js} +4 -2
- package/dist/components/SelectTreeNodeModalOld/SelectTreeNodeModalOld.js.map +1 -0
- package/dist/components/SelectTreeNodeModalOld/index.d.ts +1 -0
- package/dist/components/{RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList → SelectTreeNodeModalOld}/index.js +1 -2
- package/dist/components/SelectTreeNodeModalOld/index.js.map +1 -0
- package/dist/components/SimpleErrorBoundary/SimpleErrorBoundary.d.ts +1 -1
- package/dist/components/SimpleErrorBoundary/SimpleErrorBoundary.js.map +1 -1
- package/dist/components/UploadFiles/UploadFiles.js +3 -3
- package/dist/components/UploadFiles/UploadFiles.js.map +1 -1
- package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js +2 -2
- package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js.map +1 -1
- package/dist/components/index.d.ts +1 -2
- package/dist/components/index.js +1 -2
- package/dist/components/index.js.map +1 -1
- package/dist/contexts/LangContext/LangContext.d.ts +1 -2
- package/dist/contexts/LangContext/LangContext.js +2 -2
- package/dist/contexts/LangContext/LangContext.js.map +1 -1
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useAppLang/useAppLang.js.map +1 -1
- package/dist/hooks/useGetRecordForm/useGetRecordForm.d.ts +1 -1
- package/dist/hooks/useGetRecordForm/useGetRecordForm.js +3 -3
- package/dist/hooks/useGetRecordForm/useGetRecordForm.js.map +1 -1
- package/dist/hooks/useIFrameMessenger/messageHandlers.d.ts +15 -0
- package/dist/hooks/useIFrameMessenger/messageHandlers.js +121 -0
- package/dist/hooks/useIFrameMessenger/messageHandlers.js.map +1 -0
- package/dist/hooks/useIFrameMessenger/schema.d.ts +21 -0
- package/dist/hooks/useIFrameMessenger/schema.js +76 -0
- package/dist/hooks/useIFrameMessenger/schema.js.map +1 -0
- package/dist/hooks/useIFrameMessenger/types.d.ts +120 -0
- package/dist/hooks/useIFrameMessenger/types.js +2 -0
- package/dist/hooks/useIFrameMessenger/types.js.map +1 -0
- package/dist/hooks/useIFrameMessenger/useIFrameMessenger.d.ts +19 -0
- package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js +108 -0
- package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js.map +1 -0
- package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.d.ts +7 -0
- package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.js +13 -0
- package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.js.map +1 -0
- package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.d.ts +13 -0
- package/dist/{components/RecordEdition/EditRecord/creationErrorContext.js → hooks/useIFrameMessengerClient/iFrameMessengerClientContext.js} +2 -3
- package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.js.map +1 -0
- package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.d.ts +13 -0
- package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.js +13 -0
- package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.js.map +1 -0
- package/dist/hooks/useRedirectToLogin/useRedirectToLogin.js +1 -1
- package/dist/hooks/useRedirectToLogin/useRedirectToLogin.js.map +1 -1
- package/dist/locales/en/shared.json +11 -2
- package/dist/locales/fr/shared.json +10 -1
- package/dist/types/attributes.d.ts +2 -1
- package/package.json +23 -8
- package/dist/components/Explorer/actions-item/useRemoveItemAction.js.map +0 -1
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueList.d.ts +0 -10
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueList.js +0 -75
- package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueList.js.map +0 -1
- package/dist/components/RecordEdition/EditRecord/creationErrorContext.d.ts +0 -6
- package/dist/components/RecordEdition/EditRecord/creationErrorContext.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.d.ts +0 -5
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.js +0 -28
- package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/hooks/useRunActionsListAndFormatOnValue.d.ts +0 -121
- package/dist/components/RecordEdition/EditRecordContent/hooks/useRunActionsListAndFormatOnValue.js +0 -31
- package/dist/components/RecordEdition/EditRecordContent/hooks/useRunActionsListAndFormatOnValue.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.d.ts +0 -5
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js +0 -39
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.d.ts +0 -8
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js +0 -23
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.d.ts +0 -9
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js +0 -23
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.d.ts +0 -8
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js +0 -26
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.d.ts +0 -12
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js +0 -24
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.d.ts +0 -19
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js +0 -103
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.d.ts +0 -22
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js +0 -104
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.d.ts +0 -26
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.d.ts +0 -9
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js +0 -15
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.d.ts +0 -4
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js +0 -22
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/ValuesList.d.ts +0 -16
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/ValuesList.js +0 -35
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/ValuesList.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/index.d.ts +0 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/index.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/useDisplayTreeNode.js +0 -8
- package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/useDisplayTreeNode.js.map +0 -1
- package/dist/components/SelectTreeNodeModal/SelectTreeNodeModal.js.map +0 -1
- package/dist/components/SelectTreeNodeModal/index.d.ts +0 -1
- package/dist/components/SelectTreeNodeModal/index.js.map +0 -1
|
@@ -8,7 +8,7 @@ import { useKitNotification } from 'aristid-ds';
|
|
|
8
8
|
import { CreateDirectory, EditRecordModal, UploadFiles } from '../../../components';
|
|
9
9
|
import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
|
|
10
10
|
import useSaveValueBatchMutation from '../../../components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation';
|
|
11
|
-
import { LibraryBehavior, useExplorerLibraryDetailsQuery
|
|
11
|
+
import { AttributeType, LibraryBehavior, useExplorerLibraryDetailsQuery } from '../../../_gqlTypes';
|
|
12
12
|
import { CREATE_RECORD_MODAL_CLASSNAME } from '../_constants';
|
|
13
13
|
/**
|
|
14
14
|
* Hook used to get the action for `<DataView />` component.
|
|
@@ -18,41 +18,38 @@ import { CREATE_RECORD_MODAL_CLASSNAME } from '../_constants';
|
|
|
18
18
|
* It returns also two parts : one for the call action button - one for displayed the modal required by the action.
|
|
19
19
|
*
|
|
20
20
|
* @param isEnabled - whether the action is present
|
|
21
|
+
* @param isVisible - wether the button should be visible or not
|
|
21
22
|
* @param libraryId - the library's id to add new item
|
|
22
23
|
* @param entrypoint - represent the current entrypoint
|
|
23
24
|
* @param totalCount - used for display purpose only
|
|
24
25
|
* @param onCreate - callback to let outside world known about creating item (and linking)
|
|
25
26
|
* @param refetch - method to call to refresh the list. New item will be visible if it matches filters and sorts
|
|
26
27
|
*/
|
|
27
|
-
export const useCreatePrimaryAction = ({ isEnabled, libraryId, entrypoint, totalCount, canCreateAndLinkValue, onCreate, formId, refetch }) => {
|
|
28
|
+
export const useCreatePrimaryAction = ({ isEnabled, isVisible, libraryId, entrypoint, totalCount, canCreateAndLinkValue, isMultivalue, onCreate, formId, joinLibraryContext, refetch }) => {
|
|
28
29
|
const { t } = useSharedTranslation();
|
|
29
30
|
const [isModalCreationVisible, setIsModalCreationVisible] = useState(false);
|
|
30
|
-
const [multipleValues, setIsMultivalues] = useState(false);
|
|
31
31
|
const { saveValues } = useSaveValueBatchMutation();
|
|
32
32
|
const { kitNotification } = useKitNotification();
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
if (!attributeData) {
|
|
41
|
-
throw new Error('Unknown link attribute');
|
|
42
|
-
}
|
|
43
|
-
setIsMultivalues(attributeData.multiple_values);
|
|
44
|
-
}
|
|
33
|
+
const _getLibraryId = () => (joinLibraryContext?.mandatoryAttribute &&
|
|
34
|
+
'linked_library' in joinLibraryContext.mandatoryAttribute &&
|
|
35
|
+
joinLibraryContext.mandatoryAttribute.linked_library?.id) ||
|
|
36
|
+
libraryId;
|
|
37
|
+
const { data, loading, error } = useExplorerLibraryDetailsQuery({
|
|
38
|
+
variables: { libraryId: _getLibraryId() },
|
|
39
|
+
skip: !isEnabled
|
|
45
40
|
});
|
|
46
|
-
|
|
47
|
-
if (error || loading) {
|
|
41
|
+
if (error || loading || !isVisible) {
|
|
48
42
|
return { createPrimaryAction: null, createModal: null };
|
|
49
43
|
}
|
|
50
44
|
let canCreateRecord;
|
|
51
|
-
if (
|
|
45
|
+
if (joinLibraryContext?.mandatoryAttribute?.type === AttributeType.tree) {
|
|
46
|
+
canCreateRecord = false;
|
|
47
|
+
}
|
|
48
|
+
else if (entrypoint.type === 'library') {
|
|
52
49
|
canCreateRecord = true;
|
|
53
50
|
}
|
|
54
51
|
else {
|
|
55
|
-
canCreateRecord = canCreateAndLinkValue && (
|
|
52
|
+
canCreateRecord = canCreateAndLinkValue && (isMultivalue || totalCount === 0);
|
|
56
53
|
}
|
|
57
54
|
const _createPrimaryAction = {
|
|
58
55
|
callback: () => {
|
|
@@ -71,21 +68,22 @@ export const useCreatePrimaryAction = ({ isEnabled, libraryId, entrypoint, total
|
|
|
71
68
|
let _createModal = null;
|
|
72
69
|
switch (data?.libraries?.list[0]?.behavior) {
|
|
73
70
|
case LibraryBehavior.files:
|
|
74
|
-
_createModal = (_jsx(UploadFiles, { libraryId:
|
|
71
|
+
_createModal = (_jsx(UploadFiles, { libraryId: _getLibraryId(), multiple: true, onClose: () => setIsModalCreationVisible(false), onCompleted: () => {
|
|
75
72
|
refetch();
|
|
76
73
|
_notifyNewCreation();
|
|
77
74
|
setIsModalCreationVisible(false);
|
|
78
75
|
} }));
|
|
79
76
|
break;
|
|
80
77
|
case LibraryBehavior.directories:
|
|
81
|
-
_createModal = (_jsx(CreateDirectory, { libraryId:
|
|
78
|
+
_createModal = (_jsx(CreateDirectory, { libraryId: _getLibraryId(), onClose: () => setIsModalCreationVisible(false), onCompleted: () => {
|
|
82
79
|
refetch();
|
|
83
80
|
_notifyNewCreation();
|
|
84
81
|
setIsModalCreationVisible(false);
|
|
85
82
|
} }));
|
|
86
83
|
break;
|
|
87
84
|
case LibraryBehavior.standard:
|
|
88
|
-
|
|
85
|
+
case LibraryBehavior.join:
|
|
86
|
+
_createModal = (_jsx(EditRecordModal, { className: CREATE_RECORD_MODAL_CLASSNAME, open: true, record: null, library: _getLibraryId(), creationFormId: formId, onClose: () => {
|
|
89
87
|
setIsModalCreationVisible(false);
|
|
90
88
|
}, onCreate: newRecord => {
|
|
91
89
|
refetch();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreatePrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useCreatePrimaryAction.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAe,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,yBAAyB,MAAM,uFAAuF,CAAC;AAE9H,OAAO,
|
|
1
|
+
{"version":3,"file":"useCreatePrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useCreatePrimaryAction.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ISubmitMultipleResult } from '../../../components/RecordEdition/EditRecordContent/_types';
|
|
2
|
-
import {
|
|
2
|
+
import { FeatureHook, IPrimaryAction } from '../_types';
|
|
3
|
+
import { JoinLibraryContextFragment } from '../../../_gqlTypes';
|
|
3
4
|
/**
|
|
4
5
|
* Hook used to get the action for `<DataView />` component.
|
|
5
6
|
*
|
|
@@ -8,14 +9,16 @@ import { Entrypoint, FeatureHook, IPrimaryAction } from '../_types';
|
|
|
8
9
|
* It returns also two parts : one for the call action button - one for displaying the modal required by the action.
|
|
9
10
|
*
|
|
10
11
|
* @param isEnabled - whether the action is present
|
|
12
|
+
* @param isVisible - wether the button should be visible or not
|
|
11
13
|
* @param maxItemsLeft - the number of items that can be added
|
|
12
14
|
* @param onLink - callback to let outside world know about linking feedback
|
|
13
15
|
*/
|
|
14
|
-
export declare const useLinkPrimaryAction: ({ isEnabled,
|
|
15
|
-
entrypoint: Entrypoint;
|
|
16
|
+
export declare const useLinkPrimaryAction: ({ isEnabled, isVisible, maxItemsLeft, linkId, canAddLinkValue, joinLibraryContext, isMultivalue, onLink }: FeatureHook<{
|
|
16
17
|
linkId?: string;
|
|
17
18
|
maxItemsLeft: number | null;
|
|
18
19
|
canAddLinkValue: boolean;
|
|
20
|
+
joinLibraryContext?: JoinLibraryContextFragment;
|
|
21
|
+
isMultivalue: boolean;
|
|
19
22
|
onLink?: (saveValuesResult: ISubmitMultipleResult) => void;
|
|
20
23
|
}>) => {
|
|
21
24
|
linkPrimaryAction: IPrimaryAction;
|
|
@@ -6,7 +6,6 @@ import { useState } from 'react';
|
|
|
6
6
|
import { FaPlus } from 'react-icons/fa';
|
|
7
7
|
import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
|
|
8
8
|
import { LinkModal } from '../link-item/LinkModal';
|
|
9
|
-
import { useExplorerLinkAttributeQuery } from '../../../_gqlTypes';
|
|
10
9
|
/**
|
|
11
10
|
* Hook used to get the action for `<DataView />` component.
|
|
12
11
|
*
|
|
@@ -15,28 +14,15 @@ import { useExplorerLinkAttributeQuery } from '../../../_gqlTypes';
|
|
|
15
14
|
* It returns also two parts : one for the call action button - one for displaying the modal required by the action.
|
|
16
15
|
*
|
|
17
16
|
* @param isEnabled - whether the action is present
|
|
17
|
+
* @param isVisible - wether the button should be visible or not
|
|
18
18
|
* @param maxItemsLeft - the number of items that can be added
|
|
19
19
|
* @param onLink - callback to let outside world know about linking feedback
|
|
20
20
|
*/
|
|
21
|
-
export const useLinkPrimaryAction = ({ isEnabled,
|
|
21
|
+
export const useLinkPrimaryAction = ({ isEnabled, isVisible, maxItemsLeft, linkId, canAddLinkValue, joinLibraryContext, isMultivalue, onLink }) => {
|
|
22
22
|
const { t } = useSharedTranslation();
|
|
23
23
|
const [isLinkModalVisible, setIsLinkModalVisible] = useState(false);
|
|
24
|
-
const [multipleValues, setIsMultivalues] = useState(false);
|
|
25
24
|
const disableAddItemAction = maxItemsLeft === 0 || !canAddLinkValue;
|
|
26
|
-
|
|
27
|
-
skip: entrypoint.type !== 'link',
|
|
28
|
-
variables: {
|
|
29
|
-
id: entrypoint.linkAttributeId
|
|
30
|
-
},
|
|
31
|
-
onCompleted: data => {
|
|
32
|
-
const attributeData = data?.attributes?.list?.[0];
|
|
33
|
-
if (!attributeData) {
|
|
34
|
-
throw new Error('Unknown link attribute');
|
|
35
|
-
}
|
|
36
|
-
setIsMultivalues(attributeData.multiple_values);
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
const replacementMode = linkId && !multipleValues;
|
|
25
|
+
const replacementMode = linkId && !isMultivalue;
|
|
40
26
|
const _linkPrimaryAction = {
|
|
41
27
|
callback: () => {
|
|
42
28
|
setIsLinkModalVisible(true);
|
|
@@ -46,8 +32,8 @@ export const useLinkPrimaryAction = ({ isEnabled, maxItemsLeft, entrypoint, link
|
|
|
46
32
|
label: replacementMode ? t('record_edition.replace-by-existing-item') : t('explorer.add-existing-item')
|
|
47
33
|
};
|
|
48
34
|
return {
|
|
49
|
-
linkPrimaryAction: isEnabled ? _linkPrimaryAction : null,
|
|
50
|
-
linkModal: isLinkModalVisible ? (_jsx(LinkModal, { open: true, onLink: onLink, linkId: replacementMode ? linkId : undefined, onClose: () => {
|
|
35
|
+
linkPrimaryAction: isEnabled && isVisible ? _linkPrimaryAction : null,
|
|
36
|
+
linkModal: isLinkModalVisible ? (_jsx(LinkModal, { open: true, onLink: onLink, joinLibraryContext: joinLibraryContext, isMultivalue: isMultivalue, linkId: replacementMode ? linkId : undefined, onClose: () => {
|
|
51
37
|
setIsLinkModalVisible(false);
|
|
52
38
|
} })) : null
|
|
53
39
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLinkPrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useLinkPrimaryAction.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAGpE,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"useLinkPrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useLinkPrimaryAction.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAGpE,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAGjD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACjC,SAAS,EACT,SAAS,EACT,YAAY,EACZ,MAAM,EACN,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,MAAM,EAQR,EAAE,EAAE;IACF,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,oBAAoB,GAAG,YAAY,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;IAEpE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;IAEhD,MAAM,kBAAkB,GAAmB;QACvC,QAAQ,EAAE,GAAG,EAAE;YACX,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,EAAE,KAAC,MAAM,KAAG;QAChB,QAAQ,EAAE,oBAAoB;QAC9B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC;KAC1G,CAAC;IAEF,OAAO;QACH,iBAAiB,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;QACrE,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAC5B,KAAC,SAAS,IACN,IAAI,QACJ,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC5C,OAAO,EAAE,GAAG,EAAE;gBACV,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC,GACH,CACL,CAAC,CAAC,CAAC,IAAI;KACX,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react';
|
|
2
|
+
import { JoinLibraryContextFragment } from '../../../_gqlTypes';
|
|
2
3
|
import { ISubmitMultipleResult } from '../../../components/RecordEdition/EditRecordContent/_types';
|
|
3
4
|
interface ILinkModalProps {
|
|
4
5
|
open: boolean;
|
|
5
6
|
linkId?: string;
|
|
7
|
+
joinLibraryContext?: JoinLibraryContextFragment;
|
|
8
|
+
isMultivalue: boolean;
|
|
6
9
|
onClose: () => void;
|
|
7
10
|
onLink?: (saveValuesResult: ISubmitMultipleResult) => void;
|
|
8
11
|
onReplace?: (replaceValuesResult: ISubmitMultipleResult) => void;
|
|
@@ -1,20 +1,32 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
+
// This file is released under LGPL V3
|
|
4
|
+
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
+
import { useMemo } from 'react';
|
|
2
6
|
import { useExplorerLinkAttributeQuery } from '../../../_gqlTypes';
|
|
3
7
|
import { SelectRecordForLinkModal } from '../../../components/SelectRecordForLinkModal';
|
|
4
8
|
import { useAddLinkMassAction } from './useAddLinkMassAction';
|
|
5
9
|
import { useViewSettingsContext } from '../manage-view-settings/store-view-settings/useViewSettingsContext';
|
|
6
10
|
import { useReplaceLinkMassAction } from './useReplaceLinkMassAction';
|
|
7
11
|
import { LINK_RECORDS_MODAL_CLASSNAME } from '../_constants';
|
|
8
|
-
|
|
12
|
+
import { SelectTreeNodeModal } from '../../../components';
|
|
13
|
+
import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
|
|
14
|
+
export const LinkModal = ({ open, linkId, joinLibraryContext, isMultivalue, onLink, onReplace, onClose }) => {
|
|
15
|
+
const { t } = useSharedTranslation();
|
|
9
16
|
const { view } = useViewSettingsContext();
|
|
17
|
+
const linkedLibraryId = joinLibraryContext &&
|
|
18
|
+
'linked_library' in joinLibraryContext.mandatoryAttribute &&
|
|
19
|
+
joinLibraryContext.mandatoryAttribute.linked_library?.id;
|
|
20
|
+
const linkedTreeId = joinLibraryContext &&
|
|
21
|
+
'linked_tree' in joinLibraryContext.mandatoryAttribute &&
|
|
22
|
+
joinLibraryContext.mandatoryAttribute.linked_tree?.id;
|
|
23
|
+
const isReplacement = !!linkId;
|
|
10
24
|
const { data: attributeData } = useExplorerLinkAttributeQuery({
|
|
11
25
|
skip: view.entrypoint.type !== 'link',
|
|
12
26
|
variables: {
|
|
13
27
|
id: view.entrypoint.linkAttributeId
|
|
14
28
|
}
|
|
15
29
|
});
|
|
16
|
-
const isMultiple = attributeData?.attributes?.list?.[0]?.multiple_values;
|
|
17
|
-
const isReplacement = !!linkId;
|
|
18
30
|
const { createLinks } = useAddLinkMassAction({
|
|
19
31
|
store: { view },
|
|
20
32
|
linkAttributeId: view.entrypoint.linkAttributeId,
|
|
@@ -28,6 +40,34 @@ export const LinkModal = ({ open, linkId, onLink, onReplace, onClose }) => {
|
|
|
28
40
|
onReplace,
|
|
29
41
|
closeModal: onClose
|
|
30
42
|
});
|
|
31
|
-
|
|
43
|
+
const linkAttributeData = attributeData?.attributes?.list[0];
|
|
44
|
+
const isValuesListEnabled = linkAttributeData && 'valuesList' in linkAttributeData && linkAttributeData.valuesList?.enable;
|
|
45
|
+
const valuesList = useMemo(() => (isValuesListEnabled ? linkAttributeData.valuesList?.linkedValues?.map(value => value.id) : undefined), [isValuesListEnabled, linkAttributeData]);
|
|
46
|
+
const allowFreeEntry = useMemo(() => (isValuesListEnabled ? Boolean(linkAttributeData.valuesList?.allowFreeEntry) : false), [isValuesListEnabled, linkAttributeData]);
|
|
47
|
+
return linkedTreeId ? (_jsx(SelectTreeNodeModal, { open: true, attribute: {
|
|
48
|
+
multiple_values: isMultivalue,
|
|
49
|
+
linked_tree: {
|
|
50
|
+
id: linkedTreeId
|
|
51
|
+
}
|
|
52
|
+
}, title: t(isMultivalue ? 'tree-node-selection.title_many' : 'tree-node-selection.title'),
|
|
53
|
+
// We can select new node(s), ignoring current value(s).
|
|
54
|
+
// Selected element might be duplicated in link attribute in backend for now.
|
|
55
|
+
backendValues: [], onClose: onClose, onConfirm: selectedNodes => {
|
|
56
|
+
const nodeIds = selectedNodes.map(node => node.id);
|
|
57
|
+
if (isReplacement) {
|
|
58
|
+
replaceLink({
|
|
59
|
+
records: {
|
|
60
|
+
list: nodeIds.map(id => ({ id }))
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
createLinks({
|
|
66
|
+
records: {
|
|
67
|
+
list: nodeIds.map(id => ({ id }))
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
} })) : (_jsx(SelectRecordForLinkModal, { className: LINK_RECORDS_MODAL_CLASSNAME, open: open, childLibraryId: linkedLibraryId || view.libraryId, onSelectionCompleted: isReplacement ? replaceLink : createLinks, replacementMode: isReplacement, selectionMode: isReplacement || !isMultivalue ? 'simple' : 'multiple', hideSelectAllAction: (isReplacement || !isMultivalue) && view.entrypoint.type === 'link', valuesList: valuesList, allowFreeEntry: allowFreeEntry, onClose: onClose }));
|
|
32
72
|
};
|
|
33
73
|
//# sourceMappingURL=LinkModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkModal.js","sourceRoot":"","sources":["../../../../src/components/Explorer/link-item/LinkModal.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"LinkModal.js","sourceRoot":"","sources":["../../../../src/components/Explorer/link-item/LinkModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,13 +6,13 @@ import { nullValueConditions } from '../../conditionsHelper';
|
|
|
6
6
|
const FilterStyled = styled(KitFilter) `
|
|
7
7
|
flex: 0 0 auto;
|
|
8
8
|
`;
|
|
9
|
-
const
|
|
10
|
-
if (nullValueConditions.includes(filter.condition)) {
|
|
9
|
+
const getFilterValues = (filter) => {
|
|
10
|
+
if (filter.condition && nullValueConditions.includes(filter.condition)) {
|
|
11
11
|
return [filter.condition];
|
|
12
12
|
}
|
|
13
|
-
return filter.value ? [filter.value] : [];
|
|
13
|
+
return Array.isArray(filter.value) ? filter.value : filter.value ? [filter.value] : [];
|
|
14
14
|
};
|
|
15
|
-
export const CommonFilterItem = ({ filter, disabled }) => (_jsx(FilterStyled, { expandable: true, disabled: disabled, label: filter.attribute.label, values:
|
|
15
|
+
export const CommonFilterItem = ({ filter, disabled }) => (_jsx(FilterStyled, { expandable: true, disabled: disabled, label: filter.attribute.label, values: getFilterValues(filter), dropDownProps: {
|
|
16
16
|
placement: 'bottomLeft',
|
|
17
17
|
dropdownRender: () => _jsx(FilterDropDown, { filter: filter })
|
|
18
18
|
} }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommonFilterItem.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/_shared/CommonFilterItem.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,4CAA4C,CAAC;AAC1E,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AAErC,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAE3D,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;;CAErC,CAAC;AAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"CommonFilterItem.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/_shared/CommonFilterItem.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,4CAA4C,CAAC;AAC1E,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AAErC,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAE3D,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;;CAErC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAsB,EAAE,EAAE;IAC/C,IAAI,MAAM,CAAC,SAAS,IAAI,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACrE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAoE,CAAC,EAC9F,MAAM,EACN,QAAQ,EACX,EAAE,EAAE,CAAC,CACF,KAAC,YAAY,IACT,UAAU,QACV,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,EAC7B,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,EAC/B,aAAa,EAAE;QACX,SAAS,EAAE,YAAY;QACvB,cAAc,EAAE,GAAG,EAAE,CAAC,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI;KAC3D,GACH,CACL,CAAC"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
import { ExplorerAttributesQuery, ExplorerLinkAttributeQuery, GetViewsListQuery, LinkAttributeDetailsFragment, ViewDetailsFilterFragment } from '../../../../_gqlTypes';
|
|
2
|
-
import { ExplorerFilter, ValidFieldFilter, ValidFieldFilterThrough, validFilter } from '../../_types';
|
|
1
|
+
import { ExplorerAttributesQuery, ExplorerLinkAttributeQuery, GetViewsListQuery, LinkAttributeDetailsFragment, StandardAttributeDetailsFragment, ViewDetailsFilterFragment } from '../../../../_gqlTypes';
|
|
2
|
+
import { ExplorerFilter, ValidFieldFilter, ValidFieldFilterLinkValuesList, ValidFieldFilterStandardValuesList, ValidFieldFilterThrough, validFilter } from '../../_types';
|
|
3
3
|
export declare const _isValidFieldFilter: (filter: ViewDetailsFilterFragment | ExplorerFilter) => filter is ValidFieldFilter;
|
|
4
|
-
export declare const _isValidFieldFilterThrough: (filter:
|
|
4
|
+
export declare const _isValidFieldFilterThrough: (filter: validFilter) => filter is ValidFieldFilterThrough;
|
|
5
|
+
export declare const _isValidFieldFilterStandardValuesList: (filter: validFilter, attribute: NonNullable<ExplorerAttributesQuery["attributes"]>["list"][number]) => filter is ValidFieldFilterStandardValuesList & {
|
|
6
|
+
attribute: StandardAttributeDetailsFragment;
|
|
7
|
+
};
|
|
8
|
+
export declare const _isValidFieldFilterLinkValuesList: (filter: validFilter, attribute: NonNullable<ExplorerAttributesQuery["attributes"]>["list"][number]) => filter is ValidFieldFilterLinkValuesList & {
|
|
9
|
+
attribute: LinkAttributeDetailsFragment;
|
|
10
|
+
};
|
|
5
11
|
export declare const _isLinkAttributeDetails: (linkAttributeData: NonNullable<ExplorerLinkAttributeQuery["attributes"]>["list"][number]) => linkAttributeData is LinkAttributeDetailsFragment & {
|
|
6
12
|
id: string;
|
|
7
13
|
multiple_values: boolean;
|
|
@@ -1,10 +1,23 @@
|
|
|
1
|
+
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
2
|
+
// This file is released under LGPL V3
|
|
3
|
+
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
4
|
+
import { AttributeType, RecordFilterCondition } from '../../../../_gqlTypes';
|
|
1
5
|
import { ThroughConditionFilter } from '../../../../types';
|
|
2
|
-
import { isLinkAttribute, isStandardAttribute } from '../../../../_utils/attributeType';
|
|
6
|
+
import { isLinkAttribute, isStandardAttribute, isTreeAttribute } from '../../../../_utils/attributeType';
|
|
3
7
|
import { localizedTranslation } from '@leav/utils';
|
|
4
8
|
import { useLang } from '../../../../hooks';
|
|
5
9
|
import { v4 as uuid } from 'uuid';
|
|
10
|
+
import { valueListTextConditions } from '../filter-items/filter-type/useConditionOptionsByType';
|
|
6
11
|
export const _isValidFieldFilter = (filter) => !!filter.field;
|
|
7
12
|
export const _isValidFieldFilterThrough = (filter) => filter.condition === ThroughConditionFilter.THROUGH && !!filter.subCondition && !!filter.subField;
|
|
13
|
+
export const _isValidFieldFilterStandardValuesList = (filter, attribute) => valueListTextConditions.includes(filter.condition) &&
|
|
14
|
+
[AttributeType.simple, AttributeType.advanced].includes(attribute.type) &&
|
|
15
|
+
'valuesList' in attribute &&
|
|
16
|
+
!!attribute.valuesList?.enable;
|
|
17
|
+
export const _isValidFieldFilterLinkValuesList = (filter, attribute) => valueListTextConditions.includes(filter.condition) &&
|
|
18
|
+
[AttributeType.simple_link, AttributeType.advanced_link].includes(attribute.type) &&
|
|
19
|
+
'valuesList' in attribute &&
|
|
20
|
+
!!attribute.valuesList?.enable;
|
|
8
21
|
export const _isLinkAttributeDetails = (linkAttributeData) => 'linked_library' in linkAttributeData;
|
|
9
22
|
export const useTransformFilters = () => {
|
|
10
23
|
const { lang } = useLang();
|
|
@@ -19,6 +32,7 @@ export const useTransformFilters = () => {
|
|
|
19
32
|
field,
|
|
20
33
|
subField,
|
|
21
34
|
value: filter.value ?? null,
|
|
35
|
+
hidden: filter.hidden ?? false,
|
|
22
36
|
condition: ThroughConditionFilter.THROUGH,
|
|
23
37
|
subCondition: filter.condition
|
|
24
38
|
};
|
|
@@ -35,22 +49,43 @@ export const useTransformFilters = () => {
|
|
|
35
49
|
return acc;
|
|
36
50
|
}
|
|
37
51
|
const filterAttributeBase = {
|
|
52
|
+
id: attributesDataById[filter.field].id,
|
|
38
53
|
label: localizedTranslation(attributesDataById[filter.field].label, lang),
|
|
39
54
|
type: attributesDataById[filter.field].type
|
|
40
55
|
};
|
|
41
56
|
// filter is standardFilter
|
|
42
57
|
if (isStandardAttribute(filterAttributeBase.type)) {
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
58
|
+
const attributeData = attributesDataById[filter.field];
|
|
59
|
+
if (_isValidFieldFilterStandardValuesList(filter, attributeData)) {
|
|
60
|
+
const newFilter = {
|
|
61
|
+
field: filter.field,
|
|
62
|
+
// TODO : save filter values as string[] when filter and handle fields with libraries
|
|
63
|
+
value: filter.value ? [filter.value] : [],
|
|
64
|
+
hidden: filter.hidden ?? false,
|
|
65
|
+
id: uuid(),
|
|
66
|
+
condition: filter.condition ?? null,
|
|
67
|
+
attribute: {
|
|
68
|
+
...filterAttributeBase,
|
|
69
|
+
format: attributeData.format,
|
|
70
|
+
valuesList: attributeData.valuesList
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
acc.push(newFilter);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const newFilter = {
|
|
77
|
+
field: filter.field,
|
|
78
|
+
value: filter.value ?? null,
|
|
79
|
+
hidden: filter.hidden ?? false,
|
|
80
|
+
id: uuid(),
|
|
81
|
+
condition: filter.condition ?? null,
|
|
82
|
+
attribute: {
|
|
83
|
+
...filterAttributeBase,
|
|
84
|
+
format: attributeData.format
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
acc.push(newFilter);
|
|
88
|
+
}
|
|
54
89
|
}
|
|
55
90
|
if (isLinkAttribute(filterAttributeBase.type)) {
|
|
56
91
|
const attributeData = attributesDataById[filter.field];
|
|
@@ -58,6 +93,7 @@ export const useTransformFilters = () => {
|
|
|
58
93
|
const newFilter = {
|
|
59
94
|
field: filter.field,
|
|
60
95
|
value: filter.value ?? null,
|
|
96
|
+
hidden: filter.hidden ?? false,
|
|
61
97
|
id: uuid(),
|
|
62
98
|
condition: filter.condition,
|
|
63
99
|
attribute: {
|
|
@@ -69,10 +105,27 @@ export const useTransformFilters = () => {
|
|
|
69
105
|
};
|
|
70
106
|
acc.push(newFilter);
|
|
71
107
|
}
|
|
108
|
+
else if (_isValidFieldFilterLinkValuesList(filter, attributeData)) {
|
|
109
|
+
const newFilter = {
|
|
110
|
+
field: filter.field,
|
|
111
|
+
// TODO : save filter values as string[] when filter and handle fields with libraries
|
|
112
|
+
value: filter.value ? [filter.value] : [],
|
|
113
|
+
hidden: filter.hidden ?? false,
|
|
114
|
+
id: uuid(),
|
|
115
|
+
condition: filter.condition,
|
|
116
|
+
attribute: {
|
|
117
|
+
...filterAttributeBase,
|
|
118
|
+
linkedLibrary: attributeData.linked_library,
|
|
119
|
+
valuesList: attributeData.valuesList
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
acc.push(newFilter);
|
|
123
|
+
}
|
|
72
124
|
else {
|
|
73
125
|
const newFilter = {
|
|
74
126
|
field: filter.field,
|
|
75
127
|
value: filter.value ?? null,
|
|
128
|
+
hidden: filter.hidden ?? false,
|
|
76
129
|
id: uuid(),
|
|
77
130
|
condition: filter.condition,
|
|
78
131
|
attribute: {
|
|
@@ -83,6 +136,22 @@ export const useTransformFilters = () => {
|
|
|
83
136
|
acc.push(newFilter);
|
|
84
137
|
}
|
|
85
138
|
}
|
|
139
|
+
if (isTreeAttribute(filterAttributeBase.type) && !_isValidFieldFilterThrough(filter)) {
|
|
140
|
+
const attributeData = attributesDataById[filter.field];
|
|
141
|
+
const newFilter = {
|
|
142
|
+
field: [filter.field],
|
|
143
|
+
// TODO : save filter values as string[] when tree filter and handle fields with libraries
|
|
144
|
+
value: filter.value ? [filter.value] : null,
|
|
145
|
+
hidden: filter.hidden ?? false,
|
|
146
|
+
id: uuid(),
|
|
147
|
+
attribute: {
|
|
148
|
+
...filterAttributeBase,
|
|
149
|
+
linkedTree: attributeData.linked_tree
|
|
150
|
+
},
|
|
151
|
+
condition: filter.condition ?? RecordFilterCondition.EQUAL
|
|
152
|
+
};
|
|
153
|
+
acc.push(newFilter);
|
|
154
|
+
}
|
|
86
155
|
return acc;
|
|
87
156
|
}, []);
|
|
88
157
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTransformFilters.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/_shared/useTransformFilters.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTransformFilters.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/_shared/useTransformFilters.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { FaEye, FaEyeSlash, FaSearch } from 'react-icons/fa';
|
|
3
3
|
import { KitFilter, KitInput, KitTypography } from 'aristid-ds';
|
|
4
4
|
import styled from 'styled-components';
|
|
@@ -29,6 +29,7 @@ const StyledFaEye = styled(FaEye) `
|
|
|
29
29
|
color: var(--general-utilities-neutral-deepDark);
|
|
30
30
|
`;
|
|
31
31
|
const _isLibraryLinkAttribute = (attribute) => [AttributeType.simple_link, AttributeType.advanced_link].includes(attribute.type) && 'linked_library' in attribute;
|
|
32
|
+
const _isLibraryTreeAttribute = (attribute) => attribute.type === AttributeType.tree && 'linked_tree' in attribute;
|
|
32
33
|
export const FilterItems = ({ libraryId }) => {
|
|
33
34
|
const { t } = useSharedTranslation();
|
|
34
35
|
const { view: { filters, maxFilters }, dispatch } = useViewSettingsContext();
|
|
@@ -42,12 +43,17 @@ export const FilterItems = ({ libraryId }) => {
|
|
|
42
43
|
payload: {
|
|
43
44
|
field: attributeId,
|
|
44
45
|
attribute: {
|
|
46
|
+
id: attributeId,
|
|
45
47
|
label: attributeDetailsById[attributeId].label,
|
|
46
48
|
format: attributeDetailsById[attributeId].format ?? AttributeFormat.text,
|
|
47
49
|
type: attributeDetailsById[attributeId].type,
|
|
50
|
+
valuesList: attributeDetailsById[attributeId].valuesList,
|
|
48
51
|
linkedLibrary: _isLibraryLinkAttribute(attributeDetailsById[attributeId])
|
|
49
52
|
? (attributeDetailsById[attributeId].linked_library ?? undefined)
|
|
50
|
-
: undefined // TODO : https://aristid.atlassian.net/browse/XSTREAM-1155
|
|
53
|
+
: undefined, // TODO : https://aristid.atlassian.net/browse/XSTREAM-1155
|
|
54
|
+
linkedTree: _isLibraryTreeAttribute(attributeDetailsById[attributeId])
|
|
55
|
+
? (attributeDetailsById[attributeId].linked_tree ?? undefined)
|
|
56
|
+
: undefined
|
|
51
57
|
}
|
|
52
58
|
}
|
|
53
59
|
});
|
|
@@ -68,16 +74,23 @@ export const FilterItems = ({ libraryId }) => {
|
|
|
68
74
|
}
|
|
69
75
|
dispatch({ type: ViewSettingsActionTypes.MOVE_FILTER, payload: { indexFrom, indexTo } });
|
|
70
76
|
};
|
|
71
|
-
const
|
|
72
|
-
const
|
|
73
|
-
const inactiveFilters = searchFilteredColumnsIds.filter(attributeId => !ignoredTypes.includes(attributeDetailsById?.[attributeId]?.type) &&
|
|
74
|
-
filters.every(filterItem => filterItem.field !== attributeId));
|
|
77
|
+
const activeFilters = filters.filter(({ attribute }) => searchFilteredColumnsIds.includes(attribute.id));
|
|
78
|
+
const inactiveFilters = searchFilteredColumnsIds.filter(attributeId => filters.every(filterItem => filterItem.attribute.id !== attributeId));
|
|
75
79
|
const canAddFilter = activeFilters.length < maxFilters;
|
|
76
|
-
|
|
80
|
+
if (!Object.keys(attributeDetailsById).length) {
|
|
81
|
+
return _jsx(_Fragment, {});
|
|
82
|
+
}
|
|
83
|
+
return (_jsxs(StyledListContainer, { children: [activeFilters.length > 0 && (_jsx(StyledList, { "aria-label": t('explorer.filter-list.active'), children: _jsx(DndContext, { sensors: sensors, collisionDetection: closestCenter, onDragEnd: _handleDragEnd, children: _jsx(SortableContext, { items: activeFilters.map(({ attribute }) => attribute.id), strategy: verticalListSortingStrategy, children: activeFilters.map(activeFilter => (_jsx(FilterListItem, { attributeId: activeFilter.attribute.id, isDraggable: true, visibilityButtonProps: {
|
|
77
84
|
icon: _jsx(StyledFaEye, {}),
|
|
78
85
|
title: String(t('explorer.hide')),
|
|
79
86
|
onClick: removeFilter(activeFilter.id)
|
|
80
|
-
}, children: _jsx(CommonFilterItem, { filter:
|
|
87
|
+
}, children: _jsx(CommonFilterItem, { filter: {
|
|
88
|
+
...activeFilter,
|
|
89
|
+
attribute: {
|
|
90
|
+
...activeFilter.attribute,
|
|
91
|
+
...attributeDetailsById[activeFilter?.attribute?.id]
|
|
92
|
+
}
|
|
93
|
+
} }) }, activeFilter.attribute.id))) }) }) })), _jsx(KitTypography.Title, { level: "h4", children: t('explorer.available-attributes') }), _jsx(KitInput, { placeholder: String(t('global.search')), onChange: onSearchChanged, allowClear: true, prefix: _jsx(FaSearch, {}) }), _jsx(StyledList, { "aria-label": t('explorer.filter-list.inactive'), children: inactiveFilters.map(attributeId => (_jsx(FilterListItem, { attributeId: attributeId, visibilityButtonProps: canAddFilter
|
|
81
94
|
? {
|
|
82
95
|
icon: _jsx(StyledEyeSlash, {}),
|
|
83
96
|
title: String(t('explorer.show')),
|