@leav/ui 1.6.0-720c24f0 → 1.6.0-a91c4173

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.
Files changed (121) hide show
  1. package/dist/_gqlTypes/index.d.ts +624 -701
  2. package/dist/_gqlTypes/index.js +46 -166
  3. package/dist/_gqlTypes/index.js.map +1 -1
  4. package/dist/components/Explorer/Explorer.js +2 -2
  5. package/dist/components/Explorer/Explorer.js.map +1 -1
  6. package/dist/components/Explorer/TableCell.js +5 -7
  7. package/dist/components/Explorer/TableCell.js.map +1 -1
  8. package/dist/components/Explorer/TableNameCell.js +3 -2
  9. package/dist/components/Explorer/TableNameCell.js.map +1 -1
  10. package/dist/components/Explorer/_queries/useExplorerData.d.ts +7 -7
  11. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js +3 -2
  12. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -1
  13. package/dist/components/Explorer/actions-item/useReplaceItemAction.js +3 -2
  14. package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
  15. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.d.ts +10 -0
  16. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js +46 -0
  17. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js.map +1 -0
  18. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.d.ts +1 -0
  19. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js +17 -0
  20. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js.map +1 -0
  21. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.d.ts +8 -0
  22. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js +49 -0
  23. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js.map +1 -0
  24. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.d.ts +27 -0
  25. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js +48 -0
  26. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js.map +1 -0
  27. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js +3 -2
  28. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js.map +1 -1
  29. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +3 -2
  30. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
  31. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js +3 -2
  32. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js.map +1 -1
  33. package/dist/components/Explorer/actions-mass/useExportMassAction.d.ts +7 -4
  34. package/dist/components/Explorer/actions-mass/useExportMassAction.js +79 -73
  35. package/dist/components/Explorer/actions-mass/useExportMassAction.js.map +1 -1
  36. package/dist/components/Explorer/actions-mass/useMassActions.js +3 -2
  37. package/dist/components/Explorer/actions-mass/useMassActions.js.map +1 -1
  38. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +3 -2
  39. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
  40. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +3 -2
  41. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
  42. package/dist/components/Explorer/list-saved-views/SavedViews.js +4 -3
  43. package/dist/components/Explorer/list-saved-views/SavedViews.js.map +1 -1
  44. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js +5 -8
  45. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js.map +1 -1
  46. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js +3 -2
  47. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js.map +1 -1
  48. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js +7 -6
  49. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js.map +1 -1
  50. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js +3 -2
  51. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js.map +1 -1
  52. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js +4 -3
  53. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js.map +1 -1
  54. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js +3 -2
  55. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js.map +1 -1
  56. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js +3 -2
  57. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js.map +1 -1
  58. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js +3 -2
  59. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js.map +1 -1
  60. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js +3 -2
  61. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js.map +1 -1
  62. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js +4 -3
  63. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js.map +1 -1
  64. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js +3 -2
  65. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js.map +1 -1
  66. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js +3 -2
  67. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js.map +1 -1
  68. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js +3 -2
  69. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js.map +1 -1
  70. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js +3 -2
  71. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js.map +1 -1
  72. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js +7 -6
  73. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js.map +1 -1
  74. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js +3 -2
  75. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js.map +1 -1
  76. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js.map +1 -1
  77. package/dist/components/Explorer/useSearchInput.js +6 -2
  78. package/dist/components/Explorer/useSearchInput.js.map +1 -1
  79. package/dist/components/Filters/context/filtersReducer.js +2 -3
  80. package/dist/components/Filters/context/filtersReducer.js.map +1 -1
  81. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js +23 -9
  82. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js.map +1 -1
  83. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js +3 -2
  84. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js.map +1 -1
  85. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js +4 -3
  86. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js.map +1 -1
  87. package/dist/components/LibraryItemsList/MenuView/MenuView.js +4 -4
  88. package/dist/components/LibraryItemsList/MenuView/MenuView.js.map +1 -1
  89. package/dist/components/LibraryItemsList/ViewPanel/View/View.js +3 -2
  90. package/dist/components/LibraryItemsList/ViewPanel/View/View.js.map +1 -1
  91. package/dist/components/Notifications/hooks/useNotificationSubscription.js +3 -2
  92. package/dist/components/Notifications/hooks/useNotificationSubscription.js.map +1 -1
  93. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js +5 -20
  94. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js.map +1 -1
  95. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js +4 -3
  96. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js.map +1 -1
  97. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +4 -3
  98. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  99. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +3 -2
  100. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
  101. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js +3 -2
  102. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js.map +1 -1
  103. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js +2 -5
  104. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js.map +1 -1
  105. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js +3 -2
  106. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -1
  107. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js +3 -2
  108. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js.map +1 -1
  109. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +4 -3
  110. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -1
  111. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js +3 -2
  112. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js.map +1 -1
  113. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +3 -5
  114. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
  115. package/dist/components/SelectTreeNode/TreeNodeTitle.js +3 -2
  116. package/dist/components/SelectTreeNode/TreeNodeTitle.js.map +1 -1
  117. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js +1 -2
  118. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js.map +1 -1
  119. package/dist/locales/en/shared.json +13 -2
  120. package/dist/locales/fr/shared.json +13 -2
  121. package/package.json +6 -7
@@ -4,7 +4,6 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
5
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
6
6
  import { KitButton, KitModal, KitTypography } from 'aristid-ds';
7
- import { FaTimes, FaTrash } from 'react-icons/fa';
8
7
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
9
8
  import { useState } from 'react';
10
9
  import { ViewSettingsActionTypes } from '../store-view-settings/viewSettingsReducer';
@@ -12,6 +11,8 @@ import useExecuteDeleteViewMutation from '../../../../hooks/useExecuteDeleteView
12
11
  import { localizedTranslation } from '@leav/utils';
13
12
  import { useLang } from '../../../../hooks';
14
13
  import styled from 'styled-components';
14
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
15
+ import { faTimes, faTrash } from '@fortawesome/free-solid-svg-icons';
15
16
  const StyledButton = styled.button `
16
17
  all: unset;
17
18
  `;
@@ -38,10 +39,10 @@ export const useDeleteView = () => {
38
39
  };
39
40
  const iconDelete = (viewItem) => (_jsx(StyledButton, { className: "delete", title: t('explorer.viewList.delete-view'), onClick: () => {
40
41
  setDataViewOnAction({ id: viewItem.id, label: viewItem.label });
41
- }, children: _jsx(FaTrash, {}) }));
42
+ }, children: _jsx(FontAwesomeIcon, { icon: faTrash }) }));
42
43
  return {
43
44
  iconDelete,
44
- deleteModal: dataViewOnAction.id && dataViewOnAction.label && (_jsx(KitModal, { appElement: document.getElementById('root'), title: t('explorer.viewList.confirm-delete-view'), isOpen: !!dataViewOnAction.id && !!dataViewOnAction.label, footer: _jsxs(_Fragment, { children: [_jsx(KitButton, { type: "secondary", onClick: () => setDataViewOnAction({ id: null, label: null }), icon: _jsx(FaTimes, {}), children: t('global.close') }), _jsx(KitButton, { type: "primary", danger: true, onClick: _onDeleteConfirm, icon: _jsx(FaTrash, {}), children: t('global.delete') })] }), children: _jsx(KitTypography.Text, { size: "fontSize3", weight: "medium", children: localizedTranslation(dataViewOnAction.label, availableLangs) }) })),
45
+ deleteModal: dataViewOnAction.id && dataViewOnAction.label && (_jsx(KitModal, { appElement: document.getElementById('root'), title: t('explorer.viewList.confirm-delete-view'), isOpen: !!dataViewOnAction.id && !!dataViewOnAction.label, footer: _jsxs(_Fragment, { children: [_jsx(KitButton, { type: "secondary", onClick: () => setDataViewOnAction({ id: null, label: null }), icon: _jsx(FontAwesomeIcon, { icon: faTimes }), children: t('global.close') }), _jsx(KitButton, { type: "primary", danger: true, onClick: _onDeleteConfirm, icon: _jsx(FontAwesomeIcon, { icon: faTrash }), children: t('global.delete') })] }), children: _jsx(KitTypography.Text, { size: "fontSize3", weight: "medium", children: localizedTranslation(dataViewOnAction.label, availableLangs) }) })),
45
46
  };
46
47
  };
47
48
  //# sourceMappingURL=useDeleteView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDeleteView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useDeleteView.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAsB,QAAQ,EAAC,MAAM,OAAO,CAAC;AACpD,OAAO,EAAC,uBAAuB,EAAC,MAAM,4CAA4C,CAAC;AACnF,OAAO,4BAA4B,MAAM,qEAAqE,CAAC;AAC/G,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAGvC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAA;;CAEjC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,cAAc,EAAC,GAAG,OAAO,EAAE,CAAC;IACnC,MAAM,EAAC,UAAU,EAAC,GAAG,4BAA4B,EAAE,CAAC;IACpD,MAAM,EAAC,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAoB,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;IAErG,MAAM,gBAAgB,GAA6C,KAAK,IAAI,EAAE;QAC1E,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAErD,IAAI,IAAI,EAAE,CAAC;YACP,QAAQ,CAAC;gBACL,IAAI,EAAE,uBAAuB,CAAC,WAAW;gBACzC,OAAO,EAAE;oBACL,EAAE,EAAE,gBAAgB,CAAC,EAAE;iBAC1B;aACJ,CAAC,CAAC;QACP,CAAC;QACD,mBAAmB,CAAC,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,QAAmB,EAAE,EAAE,CAAC,CACxC,KAAC,YAAY,IACT,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAE,CAAC,CAAC,+BAA+B,CAAC,EACzC,OAAO,EAAE,GAAG,EAAE;YACV,mBAAmB,CAAC,EAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAC,CAAC,CAAC;QAClE,CAAC,YAED,KAAC,OAAO,KAAG,GACA,CAClB,CAAC;IAEF,OAAO;QACH,UAAU;QACV,WAAW,EAAE,gBAAgB,CAAC,EAAE,IAAI,gBAAgB,CAAC,KAAK,IAAI,CAC1D,KAAC,QAAQ,IACL,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,EAC3C,KAAK,EAAE,CAAC,CAAC,uCAAuC,CAAC,EACjD,MAAM,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC,gBAAgB,CAAC,KAAK,EACzD,MAAM,EACF,8BACI,KAAC,SAAS,IACN,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,EAC3D,IAAI,EAAE,KAAC,OAAO,KAAG,YAEhB,CAAC,CAAC,cAAc,CAAC,GACV,EACZ,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,EAAC,MAAM,QAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAC,OAAO,KAAG,YACxE,CAAC,CAAC,eAAe,CAAC,GACX,IACb,YAGP,KAAC,aAAa,CAAC,IAAI,IAAC,IAAI,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,YAC/C,oBAAoB,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAC5C,GACd,CACd;KACJ,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {KitButton, KitModal, KitTypography} from 'aristid-ds';\nimport {FaTimes, FaTrash} from 'react-icons/fa';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {type ComponentProps, useState} from 'react';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport useExecuteDeleteViewMutation from '_ui/hooks/useExecuteDeleteViewMutation/useExecuteDeleteViewMutation';\nimport {localizedTranslation} from '@leav/utils';\nimport {useLang} from '_ui/hooks';\nimport {type IUserView, type IDataViewOnAction} from '../../_types';\nimport styled from 'styled-components';\nimport {type Button} from 'antd';\n\nconst StyledButton = styled.button`\n all: unset;\n`;\n\nexport const useDeleteView = () => {\n const {t} = useSharedTranslation();\n const {availableLangs} = useLang();\n const {deleteView} = useExecuteDeleteViewMutation();\n const {dispatch} = useViewSettingsContext();\n const [dataViewOnAction, setDataViewOnAction] = useState<IDataViewOnAction>({id: null, label: null});\n\n const _onDeleteConfirm: ComponentProps<typeof Button>['onClick'] = async () => {\n if (!dataViewOnAction.id) {\n return;\n }\n const {data} = await deleteView(dataViewOnAction.id);\n\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.DELETE_VIEW,\n payload: {\n id: dataViewOnAction.id,\n },\n });\n }\n setDataViewOnAction({id: null, label: null});\n };\n\n const iconDelete = (viewItem: IUserView) => (\n <StyledButton\n className=\"delete\"\n title={t('explorer.viewList.delete-view')}\n onClick={() => {\n setDataViewOnAction({id: viewItem.id, label: viewItem.label});\n }}\n >\n <FaTrash />\n </StyledButton>\n );\n\n return {\n iconDelete,\n deleteModal: dataViewOnAction.id && dataViewOnAction.label && (\n <KitModal\n appElement={document.getElementById('root')}\n title={t('explorer.viewList.confirm-delete-view')}\n isOpen={!!dataViewOnAction.id && !!dataViewOnAction.label}\n footer={\n <>\n <KitButton\n type=\"secondary\"\n onClick={() => setDataViewOnAction({id: null, label: null})}\n icon={<FaTimes />}\n >\n {t('global.close')}\n </KitButton>\n <KitButton type=\"primary\" danger onClick={_onDeleteConfirm} icon={<FaTrash />}>\n {t('global.delete')}\n </KitButton>\n </>\n }\n >\n <KitTypography.Text size=\"fontSize3\" weight=\"medium\">\n {localizedTranslation(dataViewOnAction.label, availableLangs)}\n </KitTypography.Text>\n </KitModal>\n ),\n };\n};\n"]}
1
+ {"version":3,"file":"useDeleteView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useDeleteView.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {KitButton, KitModal, KitTypography} from 'aristid-ds';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {type ComponentProps, useState} from 'react';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport useExecuteDeleteViewMutation from '_ui/hooks/useExecuteDeleteViewMutation/useExecuteDeleteViewMutation';\nimport {localizedTranslation} from '@leav/utils';\nimport {useLang} from '_ui/hooks';\nimport {type IUserView, type IDataViewOnAction} from '../../_types';\nimport styled from 'styled-components';\nimport {type Button} from 'antd';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTimes, faTrash} from '@fortawesome/free-solid-svg-icons';\n\nconst StyledButton = styled.button`\n all: unset;\n`;\n\nexport const useDeleteView = () => {\n const {t} = useSharedTranslation();\n const {availableLangs} = useLang();\n const {deleteView} = useExecuteDeleteViewMutation();\n const {dispatch} = useViewSettingsContext();\n const [dataViewOnAction, setDataViewOnAction] = useState<IDataViewOnAction>({id: null, label: null});\n\n const _onDeleteConfirm: ComponentProps<typeof Button>['onClick'] = async () => {\n if (!dataViewOnAction.id) {\n return;\n }\n const {data} = await deleteView(dataViewOnAction.id);\n\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.DELETE_VIEW,\n payload: {\n id: dataViewOnAction.id,\n },\n });\n }\n setDataViewOnAction({id: null, label: null});\n };\n\n const iconDelete = (viewItem: IUserView) => (\n <StyledButton\n className=\"delete\"\n title={t('explorer.viewList.delete-view')}\n onClick={() => {\n setDataViewOnAction({id: viewItem.id, label: viewItem.label});\n }}\n >\n <FontAwesomeIcon icon={faTrash} />\n </StyledButton>\n );\n\n return {\n iconDelete,\n deleteModal: dataViewOnAction.id && dataViewOnAction.label && (\n <KitModal\n appElement={document.getElementById('root')}\n title={t('explorer.viewList.confirm-delete-view')}\n isOpen={!!dataViewOnAction.id && !!dataViewOnAction.label}\n footer={\n <>\n <KitButton\n type=\"secondary\"\n onClick={() => setDataViewOnAction({id: null, label: null})}\n icon={<FontAwesomeIcon icon={faTimes} />}\n >\n {t('global.close')}\n </KitButton>\n <KitButton\n type=\"primary\"\n danger\n onClick={_onDeleteConfirm}\n icon={<FontAwesomeIcon icon={faTrash} />}\n >\n {t('global.delete')}\n </KitButton>\n </>\n }\n >\n <KitTypography.Text size=\"fontSize3\" weight=\"medium\">\n {localizedTranslation(dataViewOnAction.label, availableLangs)}\n </KitTypography.Text>\n </KitModal>\n ),\n };\n};\n"]}
@@ -2,7 +2,6 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
3
  // This file is released under LGPL V3
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
- import { FaEdit } from 'react-icons/fa';
6
5
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
7
6
  import { useState } from 'react';
8
7
  import { ViewSettingsActionTypes } from '../store-view-settings/viewSettingsReducer';
@@ -10,6 +9,8 @@ import useExecuteUpdateViewMutation from '../../_queries/useExecuteUpdateViewMut
10
9
  import { LabelViewFormModal } from './LabelViewFormModal';
11
10
  import styled from 'styled-components';
12
11
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
12
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
13
+ import { faEdit } from '@fortawesome/free-solid-svg-icons';
13
14
  const StyledButton = styled.button `
14
15
  all: unset;
15
16
  `;
@@ -39,7 +40,7 @@ export const useEditLabelView = () => {
39
40
  });
40
41
  }
41
42
  };
42
- const iconEditLabel = (viewItem) => (_jsx(StyledButton, { className: "edit", title: t('explorer.viewList.edit-view'), onClick: () => setDataViewOnAction({ id: viewItem.id, label: viewItem.label }), children: _jsx(FaEdit, {}) }));
43
+ const iconEditLabel = (viewItem) => (_jsx(StyledButton, { className: "edit", title: t('explorer.viewList.edit-view'), onClick: () => setDataViewOnAction({ id: viewItem.id, label: viewItem.label }), children: _jsx(FontAwesomeIcon, { icon: faEdit }) }));
43
44
  return {
44
45
  iconEditLabel,
45
46
  editViewModal: dataViewOnAction.id && dataViewOnAction.label && (_jsx(LabelViewFormModal, { viewData: dataViewOnAction.label, isOpen: true, onSubmit: _onEditLabel, onClose: () => setDataViewOnAction({ id: null, label: null }) })),
@@ -1 +1 @@
1
- {"version":3,"file":"useEditLabelView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useEditLabelView.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,uBAAuB,EAAC,MAAM,4CAA4C,CAAC;AAEnF,OAAO,4BAA4B,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAEpE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAA;;CAEjC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACjC,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,UAAU,EAAC,GAAG,4BAA4B,EAAE,CAAC;IACpD,MAAM,EAAC,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAoB,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;IAErG,MAAM,YAAY,GAAG,KAAK,EAAE,KAA6B,EAAE,EAAE;QACzD,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,MAAM,UAAU,GAAG;YACf,EAAE,EAAE,gBAAgB,CAAC,EAAE;YACvB,KAAK;SACR,CAAC;QAEF,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,UAAU,CAAC;YAC5B,IAAI,EAAE,UAAU;SACnB,CAAC,CAAC;QAEH,IAAI,IAAI,EAAE,CAAC;YACP,QAAQ,CAAC;gBACL,IAAI,EAAE,uBAAuB,CAAC,WAAW;gBACzC,OAAO,EAAE;oBACL,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;oBACtB,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK;iBAC/B;aACJ,CAAC,CAAC;QACP,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,QAAmB,EAAE,EAAE,CAAC,CAC3C,KAAC,YAAY,IACT,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,CAAC,CAAC,6BAA6B,CAAC,EACvC,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAC,CAAC,YAE5E,KAAC,MAAM,KAAG,GACC,CAClB,CAAC;IAEF,OAAO;QACH,aAAa;QACb,aAAa,EAAE,gBAAgB,CAAC,EAAE,IAAI,gBAAgB,CAAC,KAAK,IAAI,CAC5D,KAAC,kBAAkB,IACf,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAChC,MAAM,QACN,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,GAC7D,CACL;KACJ,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {FaEdit} from 'react-icons/fa';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {useState} from 'react';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {type IDataViewOnAction, type IUserView} from '../../_types';\nimport useExecuteUpdateViewMutation from '../../_queries/useExecuteUpdateViewMutation';\nimport {LabelViewFormModal} from './LabelViewFormModal';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\n\nconst StyledButton = styled.button`\n all: unset;\n`;\n\nexport const useEditLabelView = () => {\n const {t} = useSharedTranslation();\n const {updateView} = useExecuteUpdateViewMutation();\n const {dispatch} = useViewSettingsContext();\n const [dataViewOnAction, setDataViewOnAction] = useState<IDataViewOnAction>({id: null, label: null});\n\n const _onEditLabel = async (label: Record<string, string>) => {\n if (!dataViewOnAction.id) {\n return;\n }\n const mappedView = {\n id: dataViewOnAction.id,\n label,\n };\n\n const {data} = await updateView({\n view: mappedView,\n });\n\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.RENAME_VIEW,\n payload: {\n id: data.updateView.id,\n label: data.updateView.label,\n },\n });\n }\n };\n\n const iconEditLabel = (viewItem: IUserView) => (\n <StyledButton\n className=\"edit\"\n title={t('explorer.viewList.edit-view')}\n onClick={() => setDataViewOnAction({id: viewItem.id, label: viewItem.label})}\n >\n <FaEdit />\n </StyledButton>\n );\n\n return {\n iconEditLabel,\n editViewModal: dataViewOnAction.id && dataViewOnAction.label && (\n <LabelViewFormModal\n viewData={dataViewOnAction.label}\n isOpen\n onSubmit={_onEditLabel}\n onClose={() => setDataViewOnAction({id: null, label: null})}\n />\n ),\n };\n};\n"]}
1
+ {"version":3,"file":"useEditLabelView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useEditLabelView.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,uBAAuB,EAAC,MAAM,4CAA4C,CAAC;AAEnF,OAAO,4BAA4B,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAEzD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAA;;CAEjC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACjC,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,UAAU,EAAC,GAAG,4BAA4B,EAAE,CAAC;IACpD,MAAM,EAAC,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAoB,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;IAErG,MAAM,YAAY,GAAG,KAAK,EAAE,KAA6B,EAAE,EAAE;QACzD,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,MAAM,UAAU,GAAG;YACf,EAAE,EAAE,gBAAgB,CAAC,EAAE;YACvB,KAAK;SACR,CAAC;QAEF,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,UAAU,CAAC;YAC5B,IAAI,EAAE,UAAU;SACnB,CAAC,CAAC;QAEH,IAAI,IAAI,EAAE,CAAC;YACP,QAAQ,CAAC;gBACL,IAAI,EAAE,uBAAuB,CAAC,WAAW;gBACzC,OAAO,EAAE;oBACL,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;oBACtB,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK;iBAC/B;aACJ,CAAC,CAAC;QACP,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,QAAmB,EAAE,EAAE,CAAC,CAC3C,KAAC,YAAY,IACT,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,CAAC,CAAC,6BAA6B,CAAC,EACvC,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAC,CAAC,YAE5E,KAAC,eAAe,IAAC,IAAI,EAAE,MAAM,GAAI,GACtB,CAClB,CAAC;IAEF,OAAO;QACH,aAAa;QACb,aAAa,EAAE,gBAAgB,CAAC,EAAE,IAAI,gBAAgB,CAAC,KAAK,IAAI,CAC5D,KAAC,kBAAkB,IACf,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAChC,MAAM,QACN,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,GAC7D,CACL;KACJ,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {useState} from 'react';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {type IDataViewOnAction, type IUserView} from '../../_types';\nimport useExecuteUpdateViewMutation from '../../_queries/useExecuteUpdateViewMutation';\nimport {LabelViewFormModal} from './LabelViewFormModal';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faEdit} from '@fortawesome/free-solid-svg-icons';\n\nconst StyledButton = styled.button`\n all: unset;\n`;\n\nexport const useEditLabelView = () => {\n const {t} = useSharedTranslation();\n const {updateView} = useExecuteUpdateViewMutation();\n const {dispatch} = useViewSettingsContext();\n const [dataViewOnAction, setDataViewOnAction] = useState<IDataViewOnAction>({id: null, label: null});\n\n const _onEditLabel = async (label: Record<string, string>) => {\n if (!dataViewOnAction.id) {\n return;\n }\n const mappedView = {\n id: dataViewOnAction.id,\n label,\n };\n\n const {data} = await updateView({\n view: mappedView,\n });\n\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.RENAME_VIEW,\n payload: {\n id: data.updateView.id,\n label: data.updateView.label,\n },\n });\n }\n };\n\n const iconEditLabel = (viewItem: IUserView) => (\n <StyledButton\n className=\"edit\"\n title={t('explorer.viewList.edit-view')}\n onClick={() => setDataViewOnAction({id: viewItem.id, label: viewItem.label})}\n >\n <FontAwesomeIcon icon={faEdit} />\n </StyledButton>\n );\n\n return {\n iconEditLabel,\n editViewModal: dataViewOnAction.id && dataViewOnAction.label && (\n <LabelViewFormModal\n viewData={dataViewOnAction.label}\n isOpen\n onSubmit={_onEditLabel}\n onClose={() => setDataViewOnAction({id: null, label: null})}\n />\n ),\n };\n};\n"]}
@@ -6,9 +6,10 @@ import { KitButton } from 'aristid-ds';
6
6
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
7
7
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
8
8
  import { ViewSettingsActionTypes } from '../store-view-settings/viewSettingsReducer';
9
- import { FaUndo } from 'react-icons/fa';
10
9
  import { useFiltersContext } from '../../../../components/Filters/useFiltersContext';
11
10
  import { FiltersActionTypes } from '../../../../components/Filters/context/filtersReducer';
11
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
12
+ import { faUndo } from '@fortawesome/free-solid-svg-icons';
12
13
  export const useResetView = () => {
13
14
  const { t } = useSharedTranslation();
14
15
  const { dispatch } = useViewSettingsContext();
@@ -18,7 +19,7 @@ export const useResetView = () => {
18
19
  filtersDispatch({ type: FiltersActionTypes.RESTORE_INITIAL_VIEW_SETTINGS });
19
20
  };
20
21
  return {
21
- resetViewButton: (_jsx(KitButton, { type: "action", icon: _jsx(FaUndo, {}), onClick: _resetView, children: t('explorer.viewList.reinit-view') })),
22
+ resetViewButton: (_jsx(KitButton, { type: "action", icon: _jsx(FontAwesomeIcon, { icon: faUndo }), onClick: _resetView, children: t('explorer.viewList.reinit-view') })),
22
23
  };
23
24
  };
24
25
  //# sourceMappingURL=useResetView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useResetView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useResetView.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AACrC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAC,uBAAuB,EAAC,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,iBAAiB,EAAC,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,+CAA+C,CAAC;AAEjF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC7B,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAC,GAAG,iBAAiB,EAAE,CAAC;IAExD,MAAM,UAAU,GAAG,GAAG,EAAE;QACpB,QAAQ,CAAC,EAAC,IAAI,EAAE,uBAAuB,CAAC,6BAA6B,EAAC,CAAC,CAAC;QACxE,eAAe,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,6BAA6B,EAAC,CAAC,CAAC;IAC9E,CAAC,CAAC;IAEF,OAAO;QACH,eAAe,EAAE,CACb,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,KAAC,MAAM,KAAG,EAAE,OAAO,EAAE,UAAU,YACzD,CAAC,CAAC,+BAA+B,CAAC,GAC3B,CACf;KACJ,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {KitButton} from 'aristid-ds';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {FaUndo} from 'react-icons/fa';\nimport {useFiltersContext} from '_ui/components/Filters/useFiltersContext';\nimport {FiltersActionTypes} from '_ui/components/Filters/context/filtersReducer';\n\nexport const useResetView = () => {\n const {t} = useSharedTranslation();\n const {dispatch} = useViewSettingsContext();\n const {dispatch: filtersDispatch} = useFiltersContext();\n\n const _resetView = () => {\n dispatch({type: ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS});\n filtersDispatch({type: FiltersActionTypes.RESTORE_INITIAL_VIEW_SETTINGS});\n };\n\n return {\n resetViewButton: (\n <KitButton type=\"action\" icon={<FaUndo />} onClick={_resetView}>\n {t('explorer.viewList.reinit-view')}\n </KitButton>\n ),\n };\n};\n"]}
1
+ {"version":3,"file":"useResetView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useResetView.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AACrC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAC,uBAAuB,EAAC,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAC,iBAAiB,EAAC,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAEzD,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC7B,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAC,GAAG,iBAAiB,EAAE,CAAC;IAExD,MAAM,UAAU,GAAG,GAAG,EAAE;QACpB,QAAQ,CAAC,EAAC,IAAI,EAAE,uBAAuB,CAAC,6BAA6B,EAAC,CAAC,CAAC;QACxE,eAAe,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,6BAA6B,EAAC,CAAC,CAAC;IAC9E,CAAC,CAAC;IAEF,OAAO;QACH,eAAe,EAAE,CACb,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,KAAC,eAAe,IAAC,IAAI,EAAE,MAAM,GAAI,EAAE,OAAO,EAAE,UAAU,YAChF,CAAC,CAAC,+BAA+B,CAAC,GAC3B,CACf;KACJ,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {KitButton} from 'aristid-ds';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {useFiltersContext} from '_ui/components/Filters/useFiltersContext';\nimport {FiltersActionTypes} from '_ui/components/Filters/context/filtersReducer';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faUndo} from '@fortawesome/free-solid-svg-icons';\n\nexport const useResetView = () => {\n const {t} = useSharedTranslation();\n const {dispatch} = useViewSettingsContext();\n const {dispatch: filtersDispatch} = useFiltersContext();\n\n const _resetView = () => {\n dispatch({type: ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS});\n filtersDispatch({type: FiltersActionTypes.RESTORE_INITIAL_VIEW_SETTINGS});\n };\n\n return {\n resetViewButton: (\n <KitButton type=\"action\" icon={<FontAwesomeIcon icon={faUndo} />} onClick={_resetView}>\n {t('explorer.viewList.reinit-view')}\n </KitButton>\n ),\n };\n};\n"]}
@@ -4,7 +4,6 @@ import { jsx as _jsx } from "react/jsx-runtime";
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
5
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
6
6
  import { KitButton } from 'aristid-ds';
7
- import { FaShare } from 'react-icons/fa';
8
7
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
9
8
  import { useEffect, useState } from 'react';
10
9
  import useExecuteSaveViewMutation from '../../../../hooks/useExecuteSaveViewMutation';
@@ -14,6 +13,8 @@ import { mapViewTypeFromExplorerToLegacy } from '../../_constants';
14
13
  import { useMeQuery } from '../../../../_gqlTypes';
15
14
  import { useTransformFilters } from '../../../../components/Filters/useTransformFilters';
16
15
  import { useFiltersContext } from '../../../../components/Filters';
16
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
17
+ import { faShare } from '@fortawesome/free-solid-svg-icons';
17
18
  export const useShareView = () => {
18
19
  const { t } = useSharedTranslation();
19
20
  const { view, dispatch } = useViewSettingsContext();
@@ -60,7 +61,7 @@ export const useShareView = () => {
60
61
  }
61
62
  };
62
63
  return {
63
- shareViewButton: !view.viewId || (isSharedView && !isOwnerView) ? null : (_jsx(KitButton, { type: "action", icon: _jsx(FaShare, {}), onClick: _toggleShareView, children: isSharedView ? t('explorer.viewList.unshare-view') : t('explorer.viewList.share-view') })),
64
+ shareViewButton: !view.viewId || (isSharedView && !isOwnerView) ? null : (_jsx(KitButton, { type: "action", icon: _jsx(FontAwesomeIcon, { icon: faShare }), onClick: _toggleShareView, children: isSharedView ? t('explorer.viewList.unshare-view') : t('explorer.viewList.share-view') })),
64
65
  };
65
66
  };
66
67
  //# sourceMappingURL=useShareView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useShareView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useShareView.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {KitButton} from 'aristid-ds';\nimport {FaShare} from 'react-icons/fa';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {useEffect, useState} from 'react';\nimport useExecuteSaveViewMutation from '_ui/hooks/useExecuteSaveViewMutation';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {prepareViewForRequest} from './prepareViewForRequest';\nimport {type IViewDisplay} from '_ui/types';\nimport {mapViewTypeFromExplorerToLegacy} from '../../_constants';\nimport {useMeQuery} from '_ui/_gqlTypes';\nimport {useTransformFilters} from '_ui/components/Filters/useTransformFilters';\nimport {useFiltersContext} from '_ui/components/Filters';\n\nexport const useShareView = () => {\n const {t} = useSharedTranslation();\n const {view, dispatch} = useViewSettingsContext();\n const {filtersData} = useFiltersContext();\n const {saveView} = useExecuteSaveViewMutation();\n const {toValidFilters} = useTransformFilters();\n const [isSharedView, setIsSharedView] = useState(false);\n const [isOwnerView, setIsOwnerView] = useState(false);\n\n const {data: userData} = useMeQuery();\n\n useEffect(() => {\n const currentView = view.savedViews.find(v => v.id === view.viewId);\n if (currentView === undefined) {\n return;\n }\n setIsSharedView(currentView.shared ?? false);\n setIsOwnerView(currentView.ownerId === userData?.me?.whoAmI?.id);\n }, [view.viewId]);\n\n const _toggleShareView = async () => {\n const mappedView = {\n ...prepareViewForRequest(view, filtersData.filters, view.viewLabels),\n shared: !isSharedView,\n id: view.viewId,\n };\n\n const {data} = await saveView({\n view: mappedView,\n });\n\n setIsSharedView(!isSharedView);\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.UPDATE_VIEWS,\n payload: {\n id: data.saveView.id,\n ownerId: data.saveView.created_by.id,\n label: data.saveView.label,\n shared: data.saveView.shared,\n filters: toValidFilters(data.saveView.filters),\n sort: data.saveView.sort ?? [],\n display: (data.saveView.display as IViewDisplay) ?? {\n type: mapViewTypeFromExplorerToLegacy[view.viewType],\n },\n attributes: data.saveView?.attributes?.map(({id}) => id) ?? [],\n },\n });\n }\n };\n\n return {\n shareViewButton:\n !view.viewId || (isSharedView && !isOwnerView) ? null : (\n <KitButton type=\"action\" icon={<FaShare />} onClick={_toggleShareView}>\n {isSharedView ? t('explorer.viewList.unshare-view') : t('explorer.viewList.share-view')}\n </KitButton>\n ),\n };\n};\n"]}
1
+ {"version":3,"file":"useShareView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useShareView.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {KitButton} from 'aristid-ds';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {useEffect, useState} from 'react';\nimport useExecuteSaveViewMutation from '_ui/hooks/useExecuteSaveViewMutation';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {prepareViewForRequest} from './prepareViewForRequest';\nimport {type IViewDisplay} from '_ui/types';\nimport {mapViewTypeFromExplorerToLegacy} from '../../_constants';\nimport {useMeQuery} from '_ui/_gqlTypes';\nimport {useTransformFilters} from '_ui/components/Filters/useTransformFilters';\nimport {useFiltersContext} from '_ui/components/Filters';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faShare} from '@fortawesome/free-solid-svg-icons';\n\nexport const useShareView = () => {\n const {t} = useSharedTranslation();\n const {view, dispatch} = useViewSettingsContext();\n const {filtersData} = useFiltersContext();\n const {saveView} = useExecuteSaveViewMutation();\n const {toValidFilters} = useTransformFilters();\n const [isSharedView, setIsSharedView] = useState(false);\n const [isOwnerView, setIsOwnerView] = useState(false);\n\n const {data: userData} = useMeQuery();\n\n useEffect(() => {\n const currentView = view.savedViews.find(v => v.id === view.viewId);\n if (currentView === undefined) {\n return;\n }\n setIsSharedView(currentView.shared ?? false);\n setIsOwnerView(currentView.ownerId === userData?.me?.whoAmI?.id);\n }, [view.viewId]);\n\n const _toggleShareView = async () => {\n const mappedView = {\n ...prepareViewForRequest(view, filtersData.filters, view.viewLabels),\n shared: !isSharedView,\n id: view.viewId,\n };\n\n const {data} = await saveView({\n view: mappedView,\n });\n\n setIsSharedView(!isSharedView);\n if (data) {\n dispatch({\n type: ViewSettingsActionTypes.UPDATE_VIEWS,\n payload: {\n id: data.saveView.id,\n ownerId: data.saveView.created_by.id,\n label: data.saveView.label,\n shared: data.saveView.shared,\n filters: toValidFilters(data.saveView.filters),\n sort: data.saveView.sort ?? [],\n display: (data.saveView.display as IViewDisplay) ?? {\n type: mapViewTypeFromExplorerToLegacy[view.viewType],\n },\n attributes: data.saveView?.attributes?.map(({id}) => id) ?? [],\n },\n });\n }\n };\n\n return {\n shareViewButton:\n !view.viewId || (isSharedView && !isOwnerView) ? null : (\n <KitButton type=\"action\" icon={<FontAwesomeIcon icon={faShare} />} onClick={_toggleShareView}>\n {isSharedView ? t('explorer.viewList.unshare-view') : t('explorer.viewList.share-view')}\n </KitButton>\n ),\n };\n};\n"]}
@@ -3,7 +3,6 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  // This file is released under LGPL V3
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
5
  import { KitButton } from 'aristid-ds';
6
- import { FaSave } from 'react-icons/fa';
7
6
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
8
7
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
9
8
  import { ViewSettingsActionTypes } from '../store-view-settings/viewSettingsReducer';
@@ -15,6 +14,8 @@ import { useMeQuery } from '../../../../_gqlTypes';
15
14
  import { useTransformFilters } from '../../../../components/Filters/useTransformFilters';
16
15
  import { useFiltersContext } from '../../../../components/Filters/useFiltersContext';
17
16
  import { FiltersActionTypes } from '../../../../components/Filters/context/filtersReducer';
17
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
18
+ import { faSave } from '@fortawesome/free-solid-svg-icons';
18
19
  export const useUpdateView = () => {
19
20
  const { t } = useSharedTranslation();
20
21
  const { toValidFilters } = useTransformFilters();
@@ -71,7 +72,7 @@ export const useUpdateView = () => {
71
72
  }
72
73
  };
73
74
  return {
74
- updateViewButton: !view.viewId || !view.savedViews.length || !isOwnerView ? null : (_jsx(KitButton, { type: "action", icon: _jsx(FaSave, {}), onClick: _updateView, children: t('global.save') })),
75
+ updateViewButton: !view.viewId || !view.savedViews.length || !isOwnerView ? null : (_jsx(KitButton, { type: "action", icon: _jsx(FontAwesomeIcon, { icon: faSave }), onClick: _updateView, children: t('global.save') })),
75
76
  };
76
77
  };
77
78
  //# sourceMappingURL=useUpdateView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useUpdateView.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {KitButton} from 'aristid-ds';\nimport {FaSave} from 'react-icons/fa';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport useExecuteUpdateViewMutation from '../../_queries/useExecuteUpdateViewMutation';\nimport {prepareViewForRequest} from './prepareViewForRequest';\nimport {type IViewDisplay} from '_ui/types';\nimport {mapViewTypeFromExplorerToLegacy} from '../../_constants';\nimport {useEffect, useRef, useState} from 'react';\nimport {useMeQuery} from '_ui/_gqlTypes';\nimport {type IUserView} from '../../_types';\nimport {useTransformFilters} from '_ui/components/Filters/useTransformFilters';\nimport {useFiltersContext} from '_ui/components/Filters/useFiltersContext';\nimport {FiltersActionTypes} from '_ui/components/Filters/context/filtersReducer';\nimport {type UIFilter} from '_ui/components/Filters/_types';\n\nexport const useUpdateView = () => {\n const {t} = useSharedTranslation();\n const {toValidFilters} = useTransformFilters();\n const {view, dispatch} = useViewSettingsContext();\n const {filtersData, dispatch: filtersDispatch} = useFiltersContext();\n const {updateView} = useExecuteUpdateViewMutation();\n const [isOwnerView, setIsOwnerView] = useState(false);\n const currentView = useRef<IUserView | undefined>();\n\n const {data: userData} = useMeQuery();\n\n useEffect(() => {\n currentView.current = view.savedViews.find(v => v.id === view.viewId);\n if (currentView.current === undefined) {\n return;\n }\n setIsOwnerView(currentView.current.ownerId === userData?.me?.whoAmI?.id);\n }, [view.viewId]);\n\n const _updateView = async () => {\n if (!view.viewId) {\n return;\n }\n const mappedView = {\n ...prepareViewForRequest(view, filtersData.filters, view.viewLabels),\n id: view.viewId,\n shared: currentView.current?.shared ?? false,\n };\n\n const {data} = await updateView({\n view: mappedView,\n });\n\n if (data) {\n const validFilters = toValidFilters(data.updateView.filters);\n dispatch({\n type: ViewSettingsActionTypes.UPDATE_VIEWS,\n payload: {\n id: data.updateView.id,\n ownerId: data.updateView.created_by.id,\n label: data.updateView.label,\n shared: data.updateView.shared,\n filters: validFilters,\n sort: data.updateView.sort ?? [],\n display: (data.updateView.display as IViewDisplay) ?? {\n type: mapViewTypeFromExplorerToLegacy[view.viewType],\n },\n attributes: data.updateView?.attributes?.map(({id}) => id) ?? [],\n },\n });\n filtersDispatch({\n type: FiltersActionTypes.UPDATE_VIEWS,\n payload: {\n ...filtersData,\n viewId: data.updateView.id,\n filters: data.updateView.filters as UIFilter[],\n },\n });\n }\n };\n\n return {\n updateViewButton:\n !view.viewId || !view.savedViews.length || !isOwnerView ? null : (\n <KitButton type=\"action\" icon={<FaSave />} onClick={_updateView}>\n {t('global.save')}\n </KitButton>\n ),\n };\n};\n"]}
1
+ {"version":3,"file":"useUpdateView.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/save-view/useUpdateView.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {KitButton} from 'aristid-ds';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport useExecuteUpdateViewMutation from '../../_queries/useExecuteUpdateViewMutation';\nimport {prepareViewForRequest} from './prepareViewForRequest';\nimport {type IViewDisplay} from '_ui/types';\nimport {mapViewTypeFromExplorerToLegacy} from '../../_constants';\nimport {useEffect, useRef, useState} from 'react';\nimport {useMeQuery} from '_ui/_gqlTypes';\nimport {type IUserView} from '../../_types';\nimport {useTransformFilters} from '_ui/components/Filters/useTransformFilters';\nimport {useFiltersContext} from '_ui/components/Filters/useFiltersContext';\nimport {FiltersActionTypes} from '_ui/components/Filters/context/filtersReducer';\nimport {type UIFilter} from '_ui/components/Filters/_types';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faSave} from '@fortawesome/free-solid-svg-icons';\n\nexport const useUpdateView = () => {\n const {t} = useSharedTranslation();\n const {toValidFilters} = useTransformFilters();\n const {view, dispatch} = useViewSettingsContext();\n const {filtersData, dispatch: filtersDispatch} = useFiltersContext();\n const {updateView} = useExecuteUpdateViewMutation();\n const [isOwnerView, setIsOwnerView] = useState(false);\n const currentView = useRef<IUserView | undefined>();\n\n const {data: userData} = useMeQuery();\n\n useEffect(() => {\n currentView.current = view.savedViews.find(v => v.id === view.viewId);\n if (currentView.current === undefined) {\n return;\n }\n setIsOwnerView(currentView.current.ownerId === userData?.me?.whoAmI?.id);\n }, [view.viewId]);\n\n const _updateView = async () => {\n if (!view.viewId) {\n return;\n }\n const mappedView = {\n ...prepareViewForRequest(view, filtersData.filters, view.viewLabels),\n id: view.viewId,\n shared: currentView.current?.shared ?? false,\n };\n\n const {data} = await updateView({\n view: mappedView,\n });\n\n if (data) {\n const validFilters = toValidFilters(data.updateView.filters);\n dispatch({\n type: ViewSettingsActionTypes.UPDATE_VIEWS,\n payload: {\n id: data.updateView.id,\n ownerId: data.updateView.created_by.id,\n label: data.updateView.label,\n shared: data.updateView.shared,\n filters: validFilters,\n sort: data.updateView.sort ?? [],\n display: (data.updateView.display as IViewDisplay) ?? {\n type: mapViewTypeFromExplorerToLegacy[view.viewType],\n },\n attributes: data.updateView?.attributes?.map(({id}) => id) ?? [],\n },\n });\n filtersDispatch({\n type: FiltersActionTypes.UPDATE_VIEWS,\n payload: {\n ...filtersData,\n viewId: data.updateView.id,\n filters: data.updateView.filters as UIFilter[],\n },\n });\n }\n };\n\n return {\n updateViewButton:\n !view.viewId || !view.savedViews.length || !isOwnerView ? null : (\n <KitButton type=\"action\" icon={<FontAwesomeIcon icon={faSave} />} onClick={_updateView}>\n {t('global.save')}\n </KitButton>\n ),\n };\n};\n"]}
@@ -1,5 +1,4 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { FaEye, FaEyeSlash, FaSearch } from 'react-icons/fa';
3
2
  import { KitInput, KitTypography } from 'aristid-ds';
4
3
  import styled from 'styled-components';
5
4
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
@@ -10,6 +9,8 @@ import { useAttributeDetailsData } from '../_shared/useAttributeDetailsData';
10
9
  import { ViewSettingsActionTypes } from '../store-view-settings/viewSettingsReducer';
11
10
  import { useViewSettingsContext } from '../store-view-settings/useViewSettingsContext';
12
11
  import { SortListItem } from './SortListItem';
12
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
13
+ import { faSearch, faEye, faEyeSlash } from '@fortawesome/free-solid-svg-icons';
13
14
  const StyledListContainer = styled.div `
14
15
  display: flex;
15
16
  flex-direction: column;
@@ -20,10 +21,10 @@ const StyledList = styled.ul `
20
21
  list-style: none;
21
22
  color: var(--general-utilities-text-primary);
22
23
  `;
23
- const StyledEyeSlash = styled(FaEyeSlash) `
24
+ const StyledEyeSlash = styled(FontAwesomeIcon) `
24
25
  color: var(--general-utilities-neutral-dark);
25
26
  `;
26
- const StyledFaEye = styled(FaEye) `
27
+ const StyledFaEye = styled(FontAwesomeIcon) `
27
28
  color: var(--general-utilities-neutral-deepDark);
28
29
  `;
29
30
  export const SortItems = ({ libraryId }) => {
@@ -97,13 +98,13 @@ export const SortItems = ({ libraryId }) => {
97
98
  },
98
99
  },
99
100
  }, visibilityButtonProps: {
100
- icon: _jsx(StyledFaEye, {}),
101
+ icon: _jsx(StyledFaEye, { icon: faEye }),
101
102
  title: String(t('explorer.hide')),
102
103
  onClick: _toggleColumnVisibility(field),
103
- } }, field))) }) }) })), _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.sort-list.inactive'), children: inactiveFilters.map(field => (_jsx(SortListItem, { attributeId: field, filterChipProps: {
104
+ } }, field))) }) }) })), _jsx(KitTypography.Title, { level: "h4", children: t('explorer.available-attributes') }), _jsx(KitInput, { placeholder: String(t('global.search')), onChange: onSearchChanged, allowClear: true, prefix: _jsx(FontAwesomeIcon, { icon: faSearch }) }), _jsx(StyledList, { "aria-label": t('explorer.sort-list.inactive'), children: inactiveFilters.map(field => (_jsx(SortListItem, { attributeId: field, filterChipProps: {
104
105
  label: attributeDetailsById[field].label,
105
106
  }, visibilityButtonProps: {
106
- icon: _jsx(StyledEyeSlash, {}),
107
+ icon: _jsx(StyledEyeSlash, { icon: faEyeSlash }),
107
108
  title: String(t('explorer.show')),
108
109
  onClick: _toggleColumnVisibility(field),
109
110
  } }, field))) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"SortItems.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/sort-items/SortItems.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type FunctionComponent} from 'react';\nimport {FaEye, FaEyeSlash, FaSearch} from 'react-icons/fa';\nimport {KitInput, KitTypography} from 'aristid-ds';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {SortOrder} from '_ui/_gqlTypes';\nimport {\n closestCenter,\n DndContext,\n type DragEndEvent,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport {SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy} from '@dnd-kit/sortable';\nimport {useAttributeDetailsData} from '../_shared/useAttributeDetailsData';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {SortListItem} from './SortListItem';\n\nconst StyledListContainer = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst StyledList = styled.ul`\n padding: calc(var(--general-spacing-s) * 1px) 0;\n margin: 0;\n list-style: none;\n color: var(--general-utilities-text-primary);\n`;\n\nconst StyledEyeSlash = styled(FaEyeSlash)`\n color: var(--general-utilities-neutral-dark);\n`;\n\nconst StyledFaEye = styled(FaEye)`\n color: var(--general-utilities-neutral-deepDark);\n`;\n\nexport const SortItems: FunctionComponent<{libraryId: string}> = ({libraryId}) => {\n const {t} = useSharedTranslation();\n const {view, dispatch} = useViewSettingsContext();\n\n const {onSearchChanged, searchFilteredColumnsIds, attributeDetailsById} = useAttributeDetailsData(libraryId);\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n );\n\n const _toggleColumnVisibility = (field: string) => () => {\n const isAttributeAlreadySorting = view.sort.some(sortItem => sortItem.field === field);\n if (isAttributeAlreadySorting) {\n dispatch({\n type: ViewSettingsActionTypes.REMOVE_SORT,\n payload: {\n field,\n },\n });\n } else {\n dispatch({\n type: ViewSettingsActionTypes.ADD_SORT,\n payload: {\n order: SortOrder.asc,\n field,\n },\n });\n }\n };\n\n const _changeOrderActiveFilterTo = (field: string) => (order: SortOrder) =>\n dispatch({\n type: ViewSettingsActionTypes.CHANGE_SORT_ORDER,\n payload: {\n field,\n order,\n },\n });\n\n const _handleDragEnd = ({active: draggedElement, over: dropTarget}: DragEndEvent) => {\n const indexFrom = activeFilters.findIndex(({field}) => field === String(draggedElement.id));\n const indexTo = activeFilters.findIndex(({field}) => field === String(dropTarget?.id));\n\n if (!dropTarget || indexFrom === indexTo || indexTo === -1) {\n return;\n }\n\n dispatch({type: ViewSettingsActionTypes.MOVE_SORT, payload: {indexFrom, indexTo}});\n };\n\n const activeFilters = view.sort.filter(({field}) => searchFilteredColumnsIds.includes(field));\n const inactiveFilters = searchFilteredColumnsIds.filter(field =>\n view.sort.every(sortItem => sortItem.field !== field),\n );\n\n return (\n <StyledListContainer>\n {activeFilters.length > 0 && (\n <StyledList aria-label={t('explorer.sort-list.active')}>\n <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={_handleDragEnd}>\n <SortableContext\n items={activeFilters.map(({field}) => ({id: field}))}\n strategy={verticalListSortingStrategy}\n >\n {activeFilters.map(({field, order}) => (\n <SortListItem\n key={field}\n attributeId={field}\n isDraggable\n filterChipProps={{\n label: attributeDetailsById[field].label,\n values: [\n order === SortOrder.asc\n ? t('explorer.sort-ascending')\n : t('explorer.sort-descending'),\n ],\n expandable: true,\n dropDownProps: {\n menu: {\n selectable: true,\n selectedKeys: [order],\n items: [\n {\n key: SortOrder.asc,\n label: t('explorer.sort-ascending'),\n },\n {\n key: SortOrder.desc,\n label: t('explorer.sort-descending'),\n },\n ],\n onSelect: ({selectedKeys: [newOrder]}) =>\n _changeOrderActiveFilterTo(field)(newOrder as SortOrder),\n onDeselect: ({selectedKeys: [newOrder]}) =>\n _changeOrderActiveFilterTo(field)(newOrder as SortOrder),\n },\n },\n }}\n visibilityButtonProps={{\n icon: <StyledFaEye />,\n title: String(t('explorer.hide')),\n onClick: _toggleColumnVisibility(field),\n }}\n />\n ))}\n </SortableContext>\n </DndContext>\n </StyledList>\n )}\n <KitTypography.Title level=\"h4\">{t('explorer.available-attributes')}</KitTypography.Title>\n <KitInput\n placeholder={String(t('global.search'))}\n onChange={onSearchChanged}\n allowClear\n prefix={<FaSearch />}\n />\n <StyledList aria-label={t('explorer.sort-list.inactive')}>\n {inactiveFilters.map(field => (\n <SortListItem\n key={field}\n attributeId={field}\n filterChipProps={{\n label: attributeDetailsById[field].label,\n }}\n visibilityButtonProps={{\n icon: <StyledEyeSlash />,\n title: String(t('explorer.show')),\n onClick: _toggleColumnVisibility(field),\n }}\n />\n ))}\n </StyledList>\n </StyledListContainer>\n );\n};\n"]}
1
+ {"version":3,"file":"SortItems.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/sort-items/SortItems.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type FunctionComponent} from 'react';\nimport {KitInput, KitTypography} from 'aristid-ds';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {SortOrder} from '_ui/_gqlTypes';\nimport {\n closestCenter,\n DndContext,\n type DragEndEvent,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport {SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy} from '@dnd-kit/sortable';\nimport {useAttributeDetailsData} from '../_shared/useAttributeDetailsData';\nimport {ViewSettingsActionTypes} from '../store-view-settings/viewSettingsReducer';\nimport {useViewSettingsContext} from '../store-view-settings/useViewSettingsContext';\nimport {SortListItem} from './SortListItem';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faSearch, faEye, faEyeSlash} from '@fortawesome/free-solid-svg-icons';\n\nconst StyledListContainer = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst StyledList = styled.ul`\n padding: calc(var(--general-spacing-s) * 1px) 0;\n margin: 0;\n list-style: none;\n color: var(--general-utilities-text-primary);\n`;\n\nconst StyledEyeSlash = styled(FontAwesomeIcon)`\n color: var(--general-utilities-neutral-dark);\n`;\n\nconst StyledFaEye = styled(FontAwesomeIcon)`\n color: var(--general-utilities-neutral-deepDark);\n`;\n\nexport const SortItems: FunctionComponent<{libraryId: string}> = ({libraryId}) => {\n const {t} = useSharedTranslation();\n const {view, dispatch} = useViewSettingsContext();\n\n const {onSearchChanged, searchFilteredColumnsIds, attributeDetailsById} = useAttributeDetailsData(libraryId);\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n );\n\n const _toggleColumnVisibility = (field: string) => () => {\n const isAttributeAlreadySorting = view.sort.some(sortItem => sortItem.field === field);\n if (isAttributeAlreadySorting) {\n dispatch({\n type: ViewSettingsActionTypes.REMOVE_SORT,\n payload: {\n field,\n },\n });\n } else {\n dispatch({\n type: ViewSettingsActionTypes.ADD_SORT,\n payload: {\n order: SortOrder.asc,\n field,\n },\n });\n }\n };\n\n const _changeOrderActiveFilterTo = (field: string) => (order: SortOrder) =>\n dispatch({\n type: ViewSettingsActionTypes.CHANGE_SORT_ORDER,\n payload: {\n field,\n order,\n },\n });\n\n const _handleDragEnd = ({active: draggedElement, over: dropTarget}: DragEndEvent) => {\n const indexFrom = activeFilters.findIndex(({field}) => field === String(draggedElement.id));\n const indexTo = activeFilters.findIndex(({field}) => field === String(dropTarget?.id));\n\n if (!dropTarget || indexFrom === indexTo || indexTo === -1) {\n return;\n }\n\n dispatch({type: ViewSettingsActionTypes.MOVE_SORT, payload: {indexFrom, indexTo}});\n };\n\n const activeFilters = view.sort.filter(({field}) => searchFilteredColumnsIds.includes(field));\n const inactiveFilters = searchFilteredColumnsIds.filter(field =>\n view.sort.every(sortItem => sortItem.field !== field),\n );\n\n return (\n <StyledListContainer>\n {activeFilters.length > 0 && (\n <StyledList aria-label={t('explorer.sort-list.active')}>\n <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={_handleDragEnd}>\n <SortableContext\n items={activeFilters.map(({field}) => ({id: field}))}\n strategy={verticalListSortingStrategy}\n >\n {activeFilters.map(({field, order}) => (\n <SortListItem\n key={field}\n attributeId={field}\n isDraggable\n filterChipProps={{\n label: attributeDetailsById[field].label,\n values: [\n order === SortOrder.asc\n ? t('explorer.sort-ascending')\n : t('explorer.sort-descending'),\n ],\n expandable: true,\n dropDownProps: {\n menu: {\n selectable: true,\n selectedKeys: [order],\n items: [\n {\n key: SortOrder.asc,\n label: t('explorer.sort-ascending'),\n },\n {\n key: SortOrder.desc,\n label: t('explorer.sort-descending'),\n },\n ],\n onSelect: ({selectedKeys: [newOrder]}) =>\n _changeOrderActiveFilterTo(field)(newOrder as SortOrder),\n onDeselect: ({selectedKeys: [newOrder]}) =>\n _changeOrderActiveFilterTo(field)(newOrder as SortOrder),\n },\n },\n }}\n visibilityButtonProps={{\n icon: <StyledFaEye icon={faEye} />,\n title: String(t('explorer.hide')),\n onClick: _toggleColumnVisibility(field),\n }}\n />\n ))}\n </SortableContext>\n </DndContext>\n </StyledList>\n )}\n <KitTypography.Title level=\"h4\">{t('explorer.available-attributes')}</KitTypography.Title>\n <KitInput\n placeholder={String(t('global.search'))}\n onChange={onSearchChanged}\n allowClear\n prefix={<FontAwesomeIcon icon={faSearch} />}\n />\n <StyledList aria-label={t('explorer.sort-list.inactive')}>\n {inactiveFilters.map(field => (\n <SortListItem\n key={field}\n attributeId={field}\n filterChipProps={{\n label: attributeDetailsById[field].label,\n }}\n visibilityButtonProps={{\n icon: <StyledEyeSlash icon={faEyeSlash} />,\n title: String(t('explorer.show')),\n onClick: _toggleColumnVisibility(field),\n }}\n />\n ))}\n </StyledList>\n </StyledListContainer>\n );\n};\n"]}
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import styled from 'styled-components';
3
- import { FaGripLines } from 'react-icons/fa';
4
3
  import { KitButton, KitFilter } from 'aristid-ds';
5
4
  import { useSortable } from '@dnd-kit/sortable';
6
5
  import { CSS } from '@dnd-kit/utilities';
6
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
7
+ import { faGripLines } from '@fortawesome/free-solid-svg-icons';
7
8
  const StyledSortListItem = styled.li `
8
9
  display: flex;
9
10
  justify-content: space-between;
@@ -27,6 +28,6 @@ export const SortListItem = ({ attributeId, isDraggable, visibilityButtonProps,
27
28
  transform: CSS.Transform.toString(transform),
28
29
  transition,
29
30
  };
30
- return (_jsxs(StyledSortListItem, { ref: setNodeRef, style: style, children: [_jsxs("div", { children: [isDraggable && (_jsx(StyledDragHandle, { ...attributes, ...listeners, "$isDragging": isDragging, children: _jsx(FaGripLines, {}) })), _jsx(KitFilter, { ...filterChipProps }, attributeId)] }), _jsx(KitButton, { size: "m", type: "tertiary", ...visibilityButtonProps })] }));
31
+ return (_jsxs(StyledSortListItem, { ref: setNodeRef, style: style, children: [_jsxs("div", { children: [isDraggable && (_jsx(StyledDragHandle, { ...attributes, ...listeners, "$isDragging": isDragging, children: _jsx(FontAwesomeIcon, { icon: faGripLines }) })), _jsx(KitFilter, { ...filterChipProps }, attributeId)] }), _jsx(KitButton, { size: "m", type: "tertiary", ...visibilityButtonProps })] }));
31
32
  };
32
33
  //# sourceMappingURL=SortListItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SortListItem.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/sort-items/SortListItem.tsx"],"names":[],"mappings":";AAIA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,GAAG,EAAC,MAAM,oBAAoB,CAAC;AAEvC,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAA;;;;;;;;;;;CAWnC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAwB;;;cAG9C,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;CAC/D,CAAC;AASF,MAAM,CAAC,MAAM,YAAY,GAAkD,CAAC,EACxE,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,eAAe,GAClB,EAAE,EAAE;IACD,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,GAAG,WAAW,CAAC,EAAC,EAAE,EAAE,WAAW,EAAC,CAAC,CAAC;IAC9G,MAAM,KAAK,GAAG;QACV,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5C,UAAU;KACb,CAAC;IAEF,OAAO,CACH,MAAC,kBAAkB,IAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,aAC7C,0BACK,WAAW,IAAI,CACZ,KAAC,gBAAgB,OAAK,UAAU,KAAM,SAAS,iBAAe,UAAU,YACpE,KAAC,WAAW,KAAG,GACA,CACtB,EACD,KAAC,SAAS,OAAuB,eAAe,IAAhC,WAAW,CAAyB,IAClD,EACN,KAAC,SAAS,IAAC,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,UAAU,KAAK,qBAAqB,GAAI,IAChD,CACxB,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type ComponentProps, type FunctionComponent} from 'react';\nimport styled from 'styled-components';\nimport {FaGripLines} from 'react-icons/fa';\nimport {KitButton, KitFilter} from 'aristid-ds';\nimport {useSortable} from '@dnd-kit/sortable';\nimport {CSS} from '@dnd-kit/utilities';\n\nconst StyledSortListItem = styled.li`\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n div {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: calc(var(--general-spacing-xs) * 1px);\n }\n`;\n\nconst StyledDragHandle = styled.span<{$isDragging: boolean}>`\n display: flex;\n align-items: center;\n cursor: ${props => (props.$isDragging ? 'grabbing' : 'grab')};\n`;\n\ninterface IActiveFilterListItemProps {\n attributeId: string;\n isDraggable?: true;\n filterChipProps: Pick<ComponentProps<typeof KitFilter>, 'label' | 'values' | 'expandable' | 'dropDownProps'>;\n visibilityButtonProps: Pick<ComponentProps<typeof KitButton>, 'onClick' | 'icon' | 'title'>;\n}\n\nexport const SortListItem: FunctionComponent<IActiveFilterListItemProps> = ({\n attributeId,\n isDraggable,\n visibilityButtonProps,\n filterChipProps,\n}) => {\n const {attributes, listeners, setNodeRef, transform, transition, isDragging} = useSortable({id: attributeId});\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n return (\n <StyledSortListItem ref={setNodeRef} style={style}>\n <div>\n {isDraggable && (\n <StyledDragHandle {...attributes} {...listeners} $isDragging={isDragging}>\n <FaGripLines />\n </StyledDragHandle>\n )}\n <KitFilter key={attributeId} {...filterChipProps} />\n </div>\n <KitButton size=\"m\" type=\"tertiary\" {...visibilityButtonProps} />\n </StyledSortListItem>\n );\n};\n"]}
1
+ {"version":3,"file":"SortListItem.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/sort-items/SortListItem.tsx"],"names":[],"mappings":";AAIA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,GAAG,EAAC,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,WAAW,EAAC,MAAM,mCAAmC,CAAC;AAE9D,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAA;;;;;;;;;;;CAWnC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAwB;;;cAG9C,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;CAC/D,CAAC;AASF,MAAM,CAAC,MAAM,YAAY,GAAkD,CAAC,EACxE,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,eAAe,GAClB,EAAE,EAAE;IACD,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,GAAG,WAAW,CAAC,EAAC,EAAE,EAAE,WAAW,EAAC,CAAC,CAAC;IAC9G,MAAM,KAAK,GAAG;QACV,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5C,UAAU;KACb,CAAC;IAEF,OAAO,CACH,MAAC,kBAAkB,IAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,aAC7C,0BACK,WAAW,IAAI,CACZ,KAAC,gBAAgB,OAAK,UAAU,KAAM,SAAS,iBAAe,UAAU,YACpE,KAAC,eAAe,IAAC,IAAI,EAAE,WAAW,GAAI,GACvB,CACtB,EACD,KAAC,SAAS,OAAuB,eAAe,IAAhC,WAAW,CAAyB,IAClD,EACN,KAAC,SAAS,IAAC,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,UAAU,KAAK,qBAAqB,GAAI,IAChD,CACxB,CAAC;AACN,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type ComponentProps, type FunctionComponent} from 'react';\nimport styled from 'styled-components';\nimport {KitButton, KitFilter} from 'aristid-ds';\nimport {useSortable} from '@dnd-kit/sortable';\nimport {CSS} from '@dnd-kit/utilities';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faGripLines} from '@fortawesome/free-solid-svg-icons';\n\nconst StyledSortListItem = styled.li`\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n div {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: calc(var(--general-spacing-xs) * 1px);\n }\n`;\n\nconst StyledDragHandle = styled.span<{$isDragging: boolean}>`\n display: flex;\n align-items: center;\n cursor: ${props => (props.$isDragging ? 'grabbing' : 'grab')};\n`;\n\ninterface IActiveFilterListItemProps {\n attributeId: string;\n isDraggable?: true;\n filterChipProps: Pick<ComponentProps<typeof KitFilter>, 'label' | 'values' | 'expandable' | 'dropDownProps'>;\n visibilityButtonProps: Pick<ComponentProps<typeof KitButton>, 'onClick' | 'icon' | 'title'>;\n}\n\nexport const SortListItem: FunctionComponent<IActiveFilterListItemProps> = ({\n attributeId,\n isDraggable,\n visibilityButtonProps,\n filterChipProps,\n}) => {\n const {attributes, listeners, setNodeRef, transform, transition, isDragging} = useSortable({id: attributeId});\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n return (\n <StyledSortListItem ref={setNodeRef} style={style}>\n <div>\n {isDraggable && (\n <StyledDragHandle {...attributes} {...listeners} $isDragging={isDragging}>\n <FontAwesomeIcon icon={faGripLines} />\n </StyledDragHandle>\n )}\n <KitFilter key={attributeId} {...filterChipProps} />\n </div>\n <KitButton size=\"m\" type=\"tertiary\" {...visibilityButtonProps} />\n </StyledSortListItem>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"viewSettingsReducer.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {v4 as uuid} from 'uuid';\nimport {AttributeFormat, type RecordFilterCondition, type SortOrder} from '_ui/_gqlTypes';\nimport {type DefaultViewSettings, type Entrypoint, type IUserView, type MassSelection} from '../../_types';\nimport {hasOnlyNoValueConditions, nullValueConditions} from '../../conditionsHelper';\nimport {AttributeConditionFilter, ThroughConditionFilter} from '_ui/types';\nimport {DefaultViewId} from './viewSettingsInitialState';\nimport {isLinkAttribute} from '_ui/_utils/attributeType';\nimport {\n conditionsByFormat,\n getFirstConditionByFilterType,\n} from '_ui/components/Filters/filter-items/filter-type/useConditionOptionsByType';\nimport {\n isUIFilterLink,\n isUIFilterStandard,\n isUIFilterThrough,\n isUIFilterTree,\n isUIFilterValueList,\n type IUIFilterStandard,\n type IUIFilterTree,\n type UIFilter,\n} from '_ui/components/Filters';\n\nexport type ViewType = 'table' | 'list' | 'timeline' | 'mosaic';\n\nexport const ViewSettingsActionTypes = {\n RESET: 'RESET',\n ADD_ATTRIBUTE: 'ADD_ATTRIBUTE',\n REMOVE_ATTRIBUTE: 'REMOVE_ATTRIBUTE',\n MOVE_ATTRIBUTE: 'MOVE_ATTRIBUTE',\n RESET_ATTRIBUTES: 'RESET_ATTRIBUTES',\n CHANGE_VIEW_TYPE: 'CHANGE_VIEW_TYPE',\n ADD_SORT: 'ADD_SORT',\n REMOVE_SORT: 'REMOVE_SORT',\n MOVE_SORT: 'MOVE_SORT',\n CHANGE_SORT_ORDER: 'CHANGE_SORT_ORDER',\n CHANGE_PAGE_SIZE: 'CHANGE_PAGE_SIZE',\n CHANGE_FULLTEXT_SEARCH: 'CHANGE_FULLTEXT_SEARCH',\n CLEAR_FULLTEXT_SEARCH: 'CLEAR_FULLTEXT_SEARCH',\n ADD_FILTER: 'ADD_FILTER',\n RESET_FILTER: 'RESET_FILTER',\n REMOVE_FILTER: 'REMOVE_FILTER',\n MOVE_FILTER: 'MOVE_FILTER',\n CHANGE_FILTER_CONFIG: 'CHANGE_FILTER_CONFIG',\n SET_SELECTED_KEYS: 'SET_SELECTED_KEYS',\n RESTORE_INITIAL_VIEW_SETTINGS: 'RESTORE_INITIAL_VIEW_SETTINGS',\n UPDATE_VIEWS: 'UPDATE_VIEWS',\n RENAME_VIEW: 'RENAME_VIEW',\n DELETE_VIEW: 'DELETE_VIEW',\n LOAD_VIEW: 'LOAD_VIEW',\n} as const;\n\nexport interface IViewSettingsState {\n libraryId: string;\n viewId: string | null;\n viewLabels: Record<string, string>;\n viewModified: boolean;\n entrypoint: Entrypoint;\n viewType: ViewType;\n savedViews: IUserView[];\n attributesIds: string[];\n fulltextSearch: string;\n sort: Array<{\n field: string;\n order: SortOrder;\n }>;\n pageSize: number;\n initialViewSettings: Pick<IViewSettingsState, 'viewType' | 'attributesIds' | 'sort' | 'pageSize'>;\n defaultViewSettings: DefaultViewSettings;\n massSelection: MassSelection;\n enableConfigureView?: boolean;\n}\n\ninterface IViewSettingsActionChangePageSize {\n type: typeof ViewSettingsActionTypes.CHANGE_PAGE_SIZE;\n payload: {pageSize: number};\n}\n\ninterface IViewSettingsActionAddAttribute {\n type: typeof ViewSettingsActionTypes.ADD_ATTRIBUTE;\n payload: {attributeId: string};\n}\n\ninterface IViewSettingsActionRemoveAttribute {\n type: typeof ViewSettingsActionTypes.REMOVE_ATTRIBUTE;\n payload: {attributeId: string};\n}\n\ninterface IViewSettingsActionMoveAttribute {\n type: typeof ViewSettingsActionTypes.MOVE_ATTRIBUTE;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionChangeViewType {\n type: typeof ViewSettingsActionTypes.CHANGE_VIEW_TYPE;\n payload: {viewType: ViewType};\n}\n\ninterface IViewSettingsActionResetAttributes {\n type: typeof ViewSettingsActionTypes.RESET_ATTRIBUTES;\n}\n\ninterface IViewSettingsActionAddSort {\n type: typeof ViewSettingsActionTypes.ADD_SORT;\n payload: {field: string; order: SortOrder};\n}\n\ninterface IViewSettingsActionRemoveSort {\n type: typeof ViewSettingsActionTypes.REMOVE_SORT;\n payload: {field: string};\n}\n\ninterface IViewSettingsActionChangeSortOrder {\n type: typeof ViewSettingsActionTypes.CHANGE_SORT_ORDER;\n payload: {field: string; order: SortOrder};\n}\n\ninterface IViewSettingsActionMoveSort {\n type: typeof ViewSettingsActionTypes.MOVE_SORT;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionChangeFulltextSearch {\n type: typeof ViewSettingsActionTypes.CHANGE_FULLTEXT_SEARCH;\n payload: {search: string};\n}\n\ninterface IViewSettingsActionClearFulltextSearch {\n type: typeof ViewSettingsActionTypes.CLEAR_FULLTEXT_SEARCH;\n}\n\ninterface IViewSettingsActionAddFilter {\n type: typeof ViewSettingsActionTypes.ADD_FILTER;\n payload: Omit<UIFilter, 'id' | 'value' | 'condition'>;\n}\n\ninterface IViewSettingsActionResetFilter {\n type: typeof ViewSettingsActionTypes.RESET_FILTER;\n payload: Pick<UIFilter, 'id'>;\n}\n\ninterface IViewSettingsActionRemoveFilter {\n type: typeof ViewSettingsActionTypes.REMOVE_FILTER;\n payload: Pick<UIFilter, 'id'>;\n}\n\ninterface IViewSettingsActionChangeFilterConfig {\n type: typeof ViewSettingsActionTypes.CHANGE_FILTER_CONFIG;\n payload: UIFilter | IUIFilterTree;\n}\n\ninterface IViewSettingsActionMoveFilter {\n type: typeof ViewSettingsActionTypes.MOVE_FILTER;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionReset {\n type: typeof ViewSettingsActionTypes.RESET;\n payload: IViewSettingsState;\n}\n\ninterface IViewSettingsActionSetSelectedKeys {\n type: typeof ViewSettingsActionTypes.SET_SELECTED_KEYS;\n payload: MassSelection;\n}\n\ninterface IViewSettingsActionRestoreInitialViewSettings {\n type: typeof ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS;\n}\n\ninterface IViewSettingsActionUpdateViewListAndCurrentView {\n type: typeof ViewSettingsActionTypes.UPDATE_VIEWS;\n payload: IUserView;\n}\n\ninterface IViewDataPayload {\n id: string;\n label: Record<string, string>;\n}\n\ninterface IViewSettingsActionRenameView {\n type: typeof ViewSettingsActionTypes.RENAME_VIEW;\n payload: IViewDataPayload;\n}\n\ninterface IViewSettingsActionDeleteView {\n type: typeof ViewSettingsActionTypes.DELETE_VIEW;\n payload: {id: string};\n}\n\nexport type IViewSettingsActionLoadViewPayload = Pick<\n IViewSettingsState,\n 'viewId' | 'viewLabels' | 'viewType' | 'attributesIds' | 'sort'\n>;\n\ninterface IViewSettingsActionLoadView {\n type: typeof ViewSettingsActionTypes.LOAD_VIEW;\n payload: IViewSettingsActionLoadViewPayload;\n}\n\ntype Reducer<\n PAYLOAD extends {\n type: keyof typeof ViewSettingsActionTypes;\n payload?: unknown;\n } = {type: any; payload: 'no_payload'},\n> = PAYLOAD['payload'] extends 'no_payload'\n ? (state: IViewSettingsState) => IViewSettingsState\n : (state: IViewSettingsState, payload: PAYLOAD['payload']) => IViewSettingsState;\n\nconst changePageSize: Reducer<IViewSettingsActionChangePageSize> = (state, payload) => ({\n ...state,\n pageSize: payload.pageSize,\n});\n\nconst addAttribute: Reducer<IViewSettingsActionAddAttribute> = (state, payload) => ({\n ...state,\n attributesIds: [...state.attributesIds, payload.attributeId],\n viewModified: true,\n});\n\nconst removeAttribute: Reducer<IViewSettingsActionRemoveAttribute> = (state, payload) => ({\n ...state,\n attributesIds: state.attributesIds.filter(attributesId => attributesId !== payload.attributeId),\n viewModified: true,\n});\n\nconst moveAttribute: Reducer<IViewSettingsActionMoveAttribute> = (state, payload) => {\n const attributesIds = [...state.attributesIds];\n const [attributeIdToMove] = attributesIds.splice(payload.indexFrom, 1);\n // TODO use newES6 syntax (toSpliced)\n attributesIds.splice(payload.indexTo, 0, attributeIdToMove);\n return {\n ...state,\n attributesIds,\n viewModified: true,\n };\n};\n\nconst resetAttributes: Reducer = state => ({\n ...state,\n attributesIds: [],\n});\n\nconst changeViewType: Reducer<IViewSettingsActionChangeViewType> = (state, payload) => ({\n ...state,\n viewType: payload.viewType,\n viewModified: true,\n});\n\nconst addSort: Reducer<IViewSettingsActionAddSort> = (state, payload) => ({\n ...state,\n sort: [...state.sort, {field: payload.field, order: payload.order}],\n viewModified: true,\n});\n\nconst removeSort: Reducer<IViewSettingsActionRemoveSort> = (state, payload) => ({\n ...state,\n sort: state.sort.filter(({field: attributeId}) => attributeId !== payload.field),\n viewModified: true,\n});\n\nconst changeSortOrder: Reducer<IViewSettingsActionChangeSortOrder> = (state, payload) => ({\n ...state,\n sort: state.sort.map(sort => (sort.field === payload.field ? {...sort, order: payload.order} : sort)),\n viewModified: true,\n});\n\nconst moveSort: Reducer<IViewSettingsActionMoveSort> = (state, payload) => {\n const attributesUsedToSort = [...state.sort];\n const [sortToMove] = attributesUsedToSort.splice(payload.indexFrom, 1);\n attributesUsedToSort.splice(payload.indexTo, 0, sortToMove);\n return {\n ...state,\n sort: attributesUsedToSort,\n viewModified: true,\n };\n};\n\nconst changeFulltextSearch: Reducer<IViewSettingsActionChangeFulltextSearch> = (state, payload) => ({\n ...state,\n fulltextSearch: payload.search,\n});\n\nexport const clearFulltextSearch: Reducer = state => ({\n ...state,\n fulltextSearch: '',\n});\n\nconst reset: Reducer<IViewSettingsActionReset> = (_, payload) => payload;\n\nconst setSelectedKeys: Reducer<IViewSettingsActionSetSelectedKeys> = (state, payload) => ({\n ...state,\n massSelection: payload,\n});\n\nconst restoreInitialViewSettings: Reducer = state => ({\n ...state,\n ...state.initialViewSettings,\n viewModified: false,\n});\n\nconst updateViewListAndCurrentView: Reducer<IViewSettingsActionUpdateViewListAndCurrentView> = (state, payload) => ({\n ...state,\n viewId: payload.id ?? null,\n viewLabels: payload.label,\n savedViews: state.savedViews.find(({id}) => id === payload.id)\n ? state.savedViews.map(view => (view.id === payload.id ? payload : view))\n : state.savedViews.concat([payload]),\n initialViewSettings: {\n viewType: state.viewType,\n attributesIds: state.attributesIds,\n sort: state.sort,\n pageSize: state.pageSize,\n },\n viewModified: false,\n});\n\nconst renameView: Reducer<IViewSettingsActionRenameView> = (state, payload) => ({\n ...state,\n viewLabels: payload.label,\n savedViews: state.savedViews.map(view => (view.id === payload.id ? {...view, label: payload?.label} : view)),\n});\n\nconst deleteView: Reducer<IViewSettingsActionDeleteView> = (state, payload) => {\n const newSavedViews = [...state.savedViews];\n const indexViewDeleted = newSavedViews.findIndex(view => view.id === payload.id);\n // TODO use newES6 syntax (toSpliced)\n if (indexViewDeleted !== -1) {\n newSavedViews.splice(indexViewDeleted, 1);\n }\n if (state.viewId === payload.id) {\n const defaultViewSettings = {\n ...state.defaultViewSettings,\n viewId: DefaultViewId,\n viewLabels: {},\n viewModified: false,\n };\n return {\n ...state,\n ...defaultViewSettings,\n savedViews: newSavedViews,\n };\n }\n return {\n ...state,\n savedViews: newSavedViews,\n };\n};\n\nconst loadView: Reducer<IViewSettingsActionLoadView> = (state, payload) => ({\n ...state,\n ...payload,\n initialViewSettings: {\n viewType: payload.viewType,\n attributesIds: payload.attributesIds,\n sort: payload.sort,\n pageSize: state.pageSize,\n },\n viewModified: false,\n});\n\nexport type IViewSettingsAction =\n | IViewSettingsActionResetAttributes\n | IViewSettingsActionAddAttribute\n | IViewSettingsActionRemoveAttribute\n | IViewSettingsActionMoveAttribute\n | IViewSettingsActionChangeViewType\n | IViewSettingsActionAddSort\n | IViewSettingsActionRemoveSort\n | IViewSettingsActionChangeSortOrder\n | IViewSettingsActionMoveSort\n | IViewSettingsActionChangePageSize\n | IViewSettingsActionChangeFulltextSearch\n | IViewSettingsActionClearFulltextSearch\n | IViewSettingsActionAddFilter\n | IViewSettingsActionResetFilter\n | IViewSettingsActionRemoveFilter\n | IViewSettingsActionChangeFilterConfig\n | IViewSettingsActionMoveFilter\n | IViewSettingsActionReset\n | IViewSettingsActionSetSelectedKeys\n | IViewSettingsActionRestoreInitialViewSettings\n | IViewSettingsActionUpdateViewListAndCurrentView\n | IViewSettingsActionRenameView\n | IViewSettingsActionDeleteView\n | IViewSettingsActionLoadView;\n\nexport const viewSettingsReducer = (state: IViewSettingsState, action: IViewSettingsAction): IViewSettingsState => {\n switch (action.type) {\n case ViewSettingsActionTypes.CHANGE_PAGE_SIZE: {\n return changePageSize(state, action.payload);\n }\n case ViewSettingsActionTypes.ADD_ATTRIBUTE: {\n return addAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_ATTRIBUTE: {\n return removeAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_ATTRIBUTE: {\n return moveAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.RESET_ATTRIBUTES: {\n return resetAttributes(state);\n }\n case ViewSettingsActionTypes.CHANGE_VIEW_TYPE: {\n return changeViewType(state, action.payload);\n }\n case ViewSettingsActionTypes.ADD_SORT: {\n return addSort(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_SORT: {\n return removeSort(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_SORT: {\n return moveSort(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_SORT_ORDER: {\n return changeSortOrder(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_FULLTEXT_SEARCH: {\n return changeFulltextSearch(state, action.payload);\n }\n case ViewSettingsActionTypes.CLEAR_FULLTEXT_SEARCH: {\n return clearFulltextSearch(state);\n }\n /*case ViewSettingsActionTypes.ADD_FILTER: {\n return addFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.RESET_FILTER: {\n return resetFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_FILTER: {\n return removeFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_FILTER_CONFIG: {\n return changeFilterConfig(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_FILTER: {\n return moveFilter(state, action.payload);\n }*/\n case ViewSettingsActionTypes.RESET: {\n return reset(state, action.payload);\n }\n case ViewSettingsActionTypes.SET_SELECTED_KEYS: {\n return setSelectedKeys(state, action.payload);\n }\n case ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS: {\n return restoreInitialViewSettings(state);\n }\n case ViewSettingsActionTypes.UPDATE_VIEWS: {\n return updateViewListAndCurrentView(state, action.payload);\n }\n case ViewSettingsActionTypes.RENAME_VIEW: {\n return renameView(state, action.payload);\n }\n case ViewSettingsActionTypes.DELETE_VIEW: {\n return deleteView(state, action.payload);\n }\n case ViewSettingsActionTypes.LOAD_VIEW: {\n return loadView(state, action.payload);\n }\n default:\n return state;\n }\n};\n"]}
1
+ {"version":3,"file":"viewSettingsReducer.js","sourceRoot":"","sources":["../../../../../src/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {AttributeFormat, type RecordFilterCondition, type SortOrder} from '_ui/_gqlTypes';\nimport {type DefaultViewSettings, type Entrypoint, type IUserView, type MassSelection} from '../../_types';\nimport {hasOnlyNoValueConditions, nullValueConditions} from '../../conditionsHelper';\nimport {AttributeConditionFilter, ThroughConditionFilter} from '_ui/types';\nimport {DefaultViewId} from './viewSettingsInitialState';\nimport {isLinkAttribute} from '_ui/_utils/attributeType';\nimport {\n conditionsByFormat,\n getFirstConditionByFilterType,\n} from '_ui/components/Filters/filter-items/filter-type/useConditionOptionsByType';\nimport {\n isUIFilterLink,\n isUIFilterStandard,\n isUIFilterThrough,\n isUIFilterTree,\n isUIFilterValueList,\n type IUIFilterStandard,\n type IUIFilterTree,\n type UIFilter,\n} from '_ui/components/Filters';\n\nexport type ViewType = 'table' | 'list' | 'timeline' | 'mosaic';\n\nexport const ViewSettingsActionTypes = {\n RESET: 'RESET',\n ADD_ATTRIBUTE: 'ADD_ATTRIBUTE',\n REMOVE_ATTRIBUTE: 'REMOVE_ATTRIBUTE',\n MOVE_ATTRIBUTE: 'MOVE_ATTRIBUTE',\n RESET_ATTRIBUTES: 'RESET_ATTRIBUTES',\n CHANGE_VIEW_TYPE: 'CHANGE_VIEW_TYPE',\n ADD_SORT: 'ADD_SORT',\n REMOVE_SORT: 'REMOVE_SORT',\n MOVE_SORT: 'MOVE_SORT',\n CHANGE_SORT_ORDER: 'CHANGE_SORT_ORDER',\n CHANGE_PAGE_SIZE: 'CHANGE_PAGE_SIZE',\n CHANGE_FULLTEXT_SEARCH: 'CHANGE_FULLTEXT_SEARCH',\n CLEAR_FULLTEXT_SEARCH: 'CLEAR_FULLTEXT_SEARCH',\n ADD_FILTER: 'ADD_FILTER',\n RESET_FILTER: 'RESET_FILTER',\n REMOVE_FILTER: 'REMOVE_FILTER',\n MOVE_FILTER: 'MOVE_FILTER',\n CHANGE_FILTER_CONFIG: 'CHANGE_FILTER_CONFIG',\n SET_SELECTED_KEYS: 'SET_SELECTED_KEYS',\n RESTORE_INITIAL_VIEW_SETTINGS: 'RESTORE_INITIAL_VIEW_SETTINGS',\n UPDATE_VIEWS: 'UPDATE_VIEWS',\n RENAME_VIEW: 'RENAME_VIEW',\n DELETE_VIEW: 'DELETE_VIEW',\n LOAD_VIEW: 'LOAD_VIEW',\n} as const;\n\nexport interface IViewSettingsState {\n libraryId: string;\n viewId: string | null;\n viewLabels: Record<string, string>;\n viewModified: boolean;\n entrypoint: Entrypoint;\n viewType: ViewType;\n savedViews: IUserView[];\n attributesIds: string[];\n fulltextSearch: string;\n sort: Array<{\n field: string;\n order: SortOrder;\n }>;\n pageSize: number;\n initialViewSettings: Pick<IViewSettingsState, 'viewType' | 'attributesIds' | 'sort' | 'pageSize'>;\n defaultViewSettings: DefaultViewSettings;\n massSelection: MassSelection;\n enableConfigureView?: boolean;\n}\n\ninterface IViewSettingsActionChangePageSize {\n type: typeof ViewSettingsActionTypes.CHANGE_PAGE_SIZE;\n payload: {pageSize: number};\n}\n\ninterface IViewSettingsActionAddAttribute {\n type: typeof ViewSettingsActionTypes.ADD_ATTRIBUTE;\n payload: {attributeId: string};\n}\n\ninterface IViewSettingsActionRemoveAttribute {\n type: typeof ViewSettingsActionTypes.REMOVE_ATTRIBUTE;\n payload: {attributeId: string};\n}\n\ninterface IViewSettingsActionMoveAttribute {\n type: typeof ViewSettingsActionTypes.MOVE_ATTRIBUTE;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionChangeViewType {\n type: typeof ViewSettingsActionTypes.CHANGE_VIEW_TYPE;\n payload: {viewType: ViewType};\n}\n\ninterface IViewSettingsActionResetAttributes {\n type: typeof ViewSettingsActionTypes.RESET_ATTRIBUTES;\n}\n\ninterface IViewSettingsActionAddSort {\n type: typeof ViewSettingsActionTypes.ADD_SORT;\n payload: {field: string; order: SortOrder};\n}\n\ninterface IViewSettingsActionRemoveSort {\n type: typeof ViewSettingsActionTypes.REMOVE_SORT;\n payload: {field: string};\n}\n\ninterface IViewSettingsActionChangeSortOrder {\n type: typeof ViewSettingsActionTypes.CHANGE_SORT_ORDER;\n payload: {field: string; order: SortOrder};\n}\n\ninterface IViewSettingsActionMoveSort {\n type: typeof ViewSettingsActionTypes.MOVE_SORT;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionChangeFulltextSearch {\n type: typeof ViewSettingsActionTypes.CHANGE_FULLTEXT_SEARCH;\n payload: {search: string};\n}\n\ninterface IViewSettingsActionClearFulltextSearch {\n type: typeof ViewSettingsActionTypes.CLEAR_FULLTEXT_SEARCH;\n}\n\ninterface IViewSettingsActionAddFilter {\n type: typeof ViewSettingsActionTypes.ADD_FILTER;\n payload: Omit<UIFilter, 'id' | 'value' | 'condition'>;\n}\n\ninterface IViewSettingsActionResetFilter {\n type: typeof ViewSettingsActionTypes.RESET_FILTER;\n payload: Pick<UIFilter, 'id'>;\n}\n\ninterface IViewSettingsActionRemoveFilter {\n type: typeof ViewSettingsActionTypes.REMOVE_FILTER;\n payload: Pick<UIFilter, 'id'>;\n}\n\ninterface IViewSettingsActionChangeFilterConfig {\n type: typeof ViewSettingsActionTypes.CHANGE_FILTER_CONFIG;\n payload: UIFilter | IUIFilterTree;\n}\n\ninterface IViewSettingsActionMoveFilter {\n type: typeof ViewSettingsActionTypes.MOVE_FILTER;\n payload: {\n indexFrom: number;\n indexTo: number;\n };\n}\n\ninterface IViewSettingsActionReset {\n type: typeof ViewSettingsActionTypes.RESET;\n payload: IViewSettingsState;\n}\n\ninterface IViewSettingsActionSetSelectedKeys {\n type: typeof ViewSettingsActionTypes.SET_SELECTED_KEYS;\n payload: MassSelection;\n}\n\ninterface IViewSettingsActionRestoreInitialViewSettings {\n type: typeof ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS;\n}\n\ninterface IViewSettingsActionUpdateViewListAndCurrentView {\n type: typeof ViewSettingsActionTypes.UPDATE_VIEWS;\n payload: IUserView;\n}\n\ninterface IViewDataPayload {\n id: string;\n label: Record<string, string>;\n}\n\ninterface IViewSettingsActionRenameView {\n type: typeof ViewSettingsActionTypes.RENAME_VIEW;\n payload: IViewDataPayload;\n}\n\ninterface IViewSettingsActionDeleteView {\n type: typeof ViewSettingsActionTypes.DELETE_VIEW;\n payload: {id: string};\n}\n\nexport type IViewSettingsActionLoadViewPayload = Pick<\n IViewSettingsState,\n 'viewId' | 'viewLabels' | 'viewType' | 'attributesIds' | 'sort'\n>;\n\ninterface IViewSettingsActionLoadView {\n type: typeof ViewSettingsActionTypes.LOAD_VIEW;\n payload: IViewSettingsActionLoadViewPayload;\n}\n\ntype Reducer<\n PAYLOAD extends {\n type: keyof typeof ViewSettingsActionTypes;\n payload?: unknown;\n } = {type: any; payload: 'no_payload'},\n> = PAYLOAD['payload'] extends 'no_payload'\n ? (state: IViewSettingsState) => IViewSettingsState\n : (state: IViewSettingsState, payload: PAYLOAD['payload']) => IViewSettingsState;\n\nconst changePageSize: Reducer<IViewSettingsActionChangePageSize> = (state, payload) => ({\n ...state,\n pageSize: payload.pageSize,\n});\n\nconst addAttribute: Reducer<IViewSettingsActionAddAttribute> = (state, payload) => ({\n ...state,\n attributesIds: [...state.attributesIds, payload.attributeId],\n viewModified: true,\n});\n\nconst removeAttribute: Reducer<IViewSettingsActionRemoveAttribute> = (state, payload) => ({\n ...state,\n attributesIds: state.attributesIds.filter(attributesId => attributesId !== payload.attributeId),\n viewModified: true,\n});\n\nconst moveAttribute: Reducer<IViewSettingsActionMoveAttribute> = (state, payload) => {\n const attributesIds = [...state.attributesIds];\n const [attributeIdToMove] = attributesIds.splice(payload.indexFrom, 1);\n // TODO use newES6 syntax (toSpliced)\n attributesIds.splice(payload.indexTo, 0, attributeIdToMove);\n return {\n ...state,\n attributesIds,\n viewModified: true,\n };\n};\n\nconst resetAttributes: Reducer = state => ({\n ...state,\n attributesIds: [],\n});\n\nconst changeViewType: Reducer<IViewSettingsActionChangeViewType> = (state, payload) => ({\n ...state,\n viewType: payload.viewType,\n viewModified: true,\n});\n\nconst addSort: Reducer<IViewSettingsActionAddSort> = (state, payload) => ({\n ...state,\n sort: [...state.sort, {field: payload.field, order: payload.order}],\n viewModified: true,\n});\n\nconst removeSort: Reducer<IViewSettingsActionRemoveSort> = (state, payload) => ({\n ...state,\n sort: state.sort.filter(({field: attributeId}) => attributeId !== payload.field),\n viewModified: true,\n});\n\nconst changeSortOrder: Reducer<IViewSettingsActionChangeSortOrder> = (state, payload) => ({\n ...state,\n sort: state.sort.map(sort => (sort.field === payload.field ? {...sort, order: payload.order} : sort)),\n viewModified: true,\n});\n\nconst moveSort: Reducer<IViewSettingsActionMoveSort> = (state, payload) => {\n const attributesUsedToSort = [...state.sort];\n const [sortToMove] = attributesUsedToSort.splice(payload.indexFrom, 1);\n attributesUsedToSort.splice(payload.indexTo, 0, sortToMove);\n return {\n ...state,\n sort: attributesUsedToSort,\n viewModified: true,\n };\n};\n\nconst changeFulltextSearch: Reducer<IViewSettingsActionChangeFulltextSearch> = (state, payload) => ({\n ...state,\n fulltextSearch: payload.search,\n});\n\nexport const clearFulltextSearch: Reducer = state => ({\n ...state,\n fulltextSearch: '',\n});\n\nconst reset: Reducer<IViewSettingsActionReset> = (_, payload) => payload;\n\nconst setSelectedKeys: Reducer<IViewSettingsActionSetSelectedKeys> = (state, payload) => ({\n ...state,\n massSelection: payload,\n});\n\nconst restoreInitialViewSettings: Reducer = state => ({\n ...state,\n ...state.initialViewSettings,\n viewModified: false,\n});\n\nconst updateViewListAndCurrentView: Reducer<IViewSettingsActionUpdateViewListAndCurrentView> = (state, payload) => ({\n ...state,\n viewId: payload.id ?? null,\n viewLabels: payload.label,\n savedViews: state.savedViews.find(({id}) => id === payload.id)\n ? state.savedViews.map(view => (view.id === payload.id ? payload : view))\n : state.savedViews.concat([payload]),\n initialViewSettings: {\n viewType: state.viewType,\n attributesIds: state.attributesIds,\n sort: state.sort,\n pageSize: state.pageSize,\n },\n viewModified: false,\n});\n\nconst renameView: Reducer<IViewSettingsActionRenameView> = (state, payload) => ({\n ...state,\n viewLabels: payload.label,\n savedViews: state.savedViews.map(view => (view.id === payload.id ? {...view, label: payload?.label} : view)),\n});\n\nconst deleteView: Reducer<IViewSettingsActionDeleteView> = (state, payload) => {\n const newSavedViews = [...state.savedViews];\n const indexViewDeleted = newSavedViews.findIndex(view => view.id === payload.id);\n // TODO use newES6 syntax (toSpliced)\n if (indexViewDeleted !== -1) {\n newSavedViews.splice(indexViewDeleted, 1);\n }\n if (state.viewId === payload.id) {\n const defaultViewSettings = {\n ...state.defaultViewSettings,\n viewId: DefaultViewId,\n viewLabels: {},\n viewModified: false,\n };\n return {\n ...state,\n ...defaultViewSettings,\n savedViews: newSavedViews,\n };\n }\n return {\n ...state,\n savedViews: newSavedViews,\n };\n};\n\nconst loadView: Reducer<IViewSettingsActionLoadView> = (state, payload) => ({\n ...state,\n ...payload,\n initialViewSettings: {\n viewType: payload.viewType,\n attributesIds: payload.attributesIds,\n sort: payload.sort,\n pageSize: state.pageSize,\n },\n viewModified: false,\n});\n\nexport type IViewSettingsAction =\n | IViewSettingsActionResetAttributes\n | IViewSettingsActionAddAttribute\n | IViewSettingsActionRemoveAttribute\n | IViewSettingsActionMoveAttribute\n | IViewSettingsActionChangeViewType\n | IViewSettingsActionAddSort\n | IViewSettingsActionRemoveSort\n | IViewSettingsActionChangeSortOrder\n | IViewSettingsActionMoveSort\n | IViewSettingsActionChangePageSize\n | IViewSettingsActionChangeFulltextSearch\n | IViewSettingsActionClearFulltextSearch\n | IViewSettingsActionAddFilter\n | IViewSettingsActionResetFilter\n | IViewSettingsActionRemoveFilter\n | IViewSettingsActionChangeFilterConfig\n | IViewSettingsActionMoveFilter\n | IViewSettingsActionReset\n | IViewSettingsActionSetSelectedKeys\n | IViewSettingsActionRestoreInitialViewSettings\n | IViewSettingsActionUpdateViewListAndCurrentView\n | IViewSettingsActionRenameView\n | IViewSettingsActionDeleteView\n | IViewSettingsActionLoadView;\n\nexport const viewSettingsReducer = (state: IViewSettingsState, action: IViewSettingsAction): IViewSettingsState => {\n switch (action.type) {\n case ViewSettingsActionTypes.CHANGE_PAGE_SIZE: {\n return changePageSize(state, action.payload);\n }\n case ViewSettingsActionTypes.ADD_ATTRIBUTE: {\n return addAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_ATTRIBUTE: {\n return removeAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_ATTRIBUTE: {\n return moveAttribute(state, action.payload);\n }\n case ViewSettingsActionTypes.RESET_ATTRIBUTES: {\n return resetAttributes(state);\n }\n case ViewSettingsActionTypes.CHANGE_VIEW_TYPE: {\n return changeViewType(state, action.payload);\n }\n case ViewSettingsActionTypes.ADD_SORT: {\n return addSort(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_SORT: {\n return removeSort(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_SORT: {\n return moveSort(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_SORT_ORDER: {\n return changeSortOrder(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_FULLTEXT_SEARCH: {\n return changeFulltextSearch(state, action.payload);\n }\n case ViewSettingsActionTypes.CLEAR_FULLTEXT_SEARCH: {\n return clearFulltextSearch(state);\n }\n /*case ViewSettingsActionTypes.ADD_FILTER: {\n return addFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.RESET_FILTER: {\n return resetFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.REMOVE_FILTER: {\n return removeFilter(state, action.payload);\n }\n case ViewSettingsActionTypes.CHANGE_FILTER_CONFIG: {\n return changeFilterConfig(state, action.payload);\n }\n case ViewSettingsActionTypes.MOVE_FILTER: {\n return moveFilter(state, action.payload);\n }*/\n case ViewSettingsActionTypes.RESET: {\n return reset(state, action.payload);\n }\n case ViewSettingsActionTypes.SET_SELECTED_KEYS: {\n return setSelectedKeys(state, action.payload);\n }\n case ViewSettingsActionTypes.RESTORE_INITIAL_VIEW_SETTINGS: {\n return restoreInitialViewSettings(state);\n }\n case ViewSettingsActionTypes.UPDATE_VIEWS: {\n return updateViewListAndCurrentView(state, action.payload);\n }\n case ViewSettingsActionTypes.RENAME_VIEW: {\n return renameView(state, action.payload);\n }\n case ViewSettingsActionTypes.DELETE_VIEW: {\n return deleteView(state, action.payload);\n }\n case ViewSettingsActionTypes.LOAD_VIEW: {\n return loadView(state, action.payload);\n }\n default:\n return state;\n }\n};\n"]}
@@ -3,12 +3,16 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  // This file is released under LGPL V3
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
5
  import { useSharedTranslation } from '../../hooks/useSharedTranslation';
6
- import { KitInput } from 'aristid-ds';
6
+ import { KitSearchInput } from 'aristid-ds';
7
7
  import { useState } from 'react';
8
8
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
9
9
  import { faMagnifyingGlass } from '@fortawesome/free-solid-svg-icons';
10
10
  import { ViewSettingsActionTypes, } from './manage-view-settings/store-view-settings/viewSettingsReducer';
11
11
  import { MASS_SELECTION_ALL } from './_constants';
12
+ import styled from 'styled-components';
13
+ const SearchInputStyled = styled(KitSearchInput) `
14
+ width: 214px;
15
+ `;
12
16
  /**
13
17
  * Hook used to handle a full search text in a library
14
18
  *
@@ -37,7 +41,7 @@ export const useSearchInput = ({ view, dispatch, setNewPage, }) => {
37
41
  setNewPage(1, 0);
38
42
  };
39
43
  return {
40
- searchInput: view.entrypoint.type === 'library' ? (_jsx("form", { onSubmit: _handleSubmit, children: _jsx(KitInput, { prefix: _jsx(FontAwesomeIcon, { icon: faMagnifyingGlass }), title: String(t('global.search')), placeholder: String(t('global.search')), value: search ?? '', disabled: view.massSelection === MASS_SELECTION_ALL, onChange: _handleChange, size: "middle" }) })) : null,
44
+ searchInput: view.entrypoint.type === 'library' ? (_jsx("form", { onSubmit: _handleSubmit, children: _jsx(SearchInputStyled, { prefix: _jsx(FontAwesomeIcon, { icon: faMagnifyingGlass }), title: String(t('global.search')), placeholder: String(t('global.search')), value: search ?? '', disabled: view.massSelection === MASS_SELECTION_ALL, onChange: _handleChange, size: "middle", expandable: true }) })) : null,
41
45
  };
42
46
  };
43
47
  //# sourceMappingURL=useSearchInput.js.map