@leav/ui 0.3.6-e218b23 → 0.3.6-e275df8

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 (414) hide show
  1. package/dist/__mocks__/common/attribute.js +1 -1
  2. package/dist/__mocks__/common/attribute.js.map +1 -1
  3. package/dist/__mocks__/common/form.d.ts +1 -0
  4. package/dist/__mocks__/common/form.js +15 -0
  5. package/dist/__mocks__/common/form.js.map +1 -1
  6. package/dist/__mocks__/common/value.js +1 -1
  7. package/dist/__mocks__/common/value.js.map +1 -1
  8. package/dist/__mocks__/common/view.js +7 -5
  9. package/dist/__mocks__/common/view.js.map +1 -1
  10. package/dist/__mocks__/mockQuery/mockGetLibraryDetailExtendedQuery.js +1 -1
  11. package/dist/__mocks__/mockQuery/mockGetLibraryDetailExtendedQuery.js.map +1 -1
  12. package/dist/__mocks__/mockQuery/mockGetViewListQuery.js +2 -1
  13. package/dist/__mocks__/mockQuery/mockGetViewListQuery.js.map +1 -1
  14. package/dist/_gqlTypes/index.d.ts +526 -76
  15. package/dist/_gqlTypes/index.js +312 -57
  16. package/dist/_gqlTypes/index.js.map +1 -1
  17. package/dist/_queries/attributes/attributeDetailsFragment.js +0 -1
  18. package/dist/_queries/attributes/attributeDetailsFragment.js.map +1 -1
  19. package/dist/_queries/attributes/getAttributesByLib.js +7 -5
  20. package/dist/_queries/attributes/getAttributesByLib.js.map +1 -1
  21. package/dist/_queries/libraries/getLibraryDetailExtendQuery.d.ts +3 -4
  22. package/dist/_queries/libraries/getLibraryDetailExtendQuery.js +2 -3
  23. package/dist/_queries/libraries/getLibraryDetailExtendQuery.js.map +1 -1
  24. package/dist/_queries/records/createRecordMutation.js +2 -3
  25. package/dist/_queries/records/createRecordMutation.js.map +1 -1
  26. package/dist/_queries/records/getRecordColumnsValues.d.ts +1 -1
  27. package/dist/_queries/records/getRecordsFromLibraryQuery.js +1 -0
  28. package/dist/_queries/records/getRecordsFromLibraryQuery.js.map +1 -1
  29. package/dist/_queries/records/recordFormAttributeFragment.js +2 -0
  30. package/dist/_queries/records/recordFormAttributeFragment.js.map +1 -1
  31. package/dist/_queries/views/saveViewMutation.js +1 -1
  32. package/dist/_queries/views/viewDetailsFragment.js +14 -11
  33. package/dist/_queries/views/viewDetailsFragment.js.map +1 -1
  34. package/dist/_utils/attributeType.d.ts +3 -0
  35. package/dist/_utils/attributeType.js +7 -0
  36. package/dist/_utils/attributeType.js.map +1 -0
  37. package/dist/_utils/index.js +6 -3
  38. package/dist/_utils/index.js.map +1 -1
  39. package/dist/antdTheme/index.d.ts +0 -3
  40. package/dist/antdTheme/index.js +3 -42
  41. package/dist/antdTheme/index.js.map +1 -1
  42. package/dist/components/CreateDirectory/CreateDirectory.js +0 -2
  43. package/dist/components/CreateDirectory/CreateDirectory.js.map +1 -1
  44. package/dist/components/EditApplication/EditApplicationInfo/EditApplicationInfoForm/EditApplicationInfoForm.js.map +1 -1
  45. package/dist/components/EditAttributeModal/EditAttribute/EditAttributeInfo/EditAttributeInfo.js +0 -1
  46. package/dist/components/EditAttributeModal/EditAttribute/EditAttributeInfo/EditAttributeInfo.js.map +1 -1
  47. package/dist/components/EditAttributeModal/EditAttribute/EditAttributeInfo/EditAttributeInfoForm/EditAttributeInfoForm.js +2 -5
  48. package/dist/components/EditAttributeModal/EditAttribute/EditAttributeInfo/EditAttributeInfoForm/EditAttributeInfoForm.js.map +1 -1
  49. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/EditTreeInfoForm.d.ts +1 -1
  50. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/EditTreeInfoForm.js.map +1 -1
  51. package/dist/components/Explorer/DataView.d.ts +10 -2
  52. package/dist/components/Explorer/DataView.js +80 -22
  53. package/dist/components/Explorer/DataView.js.map +1 -1
  54. package/dist/components/Explorer/Explorer.d.ts +42 -5
  55. package/dist/components/Explorer/Explorer.js +116 -32
  56. package/dist/components/Explorer/Explorer.js.map +1 -1
  57. package/dist/components/Explorer/ExplorerTitle.d.ts +2 -0
  58. package/dist/components/Explorer/ExplorerTitle.js +28 -11
  59. package/dist/components/Explorer/ExplorerTitle.js.map +1 -1
  60. package/dist/components/Explorer/ExplorerToolbar.d.ts +6 -0
  61. package/dist/components/Explorer/ExplorerToolbar.js +53 -0
  62. package/dist/components/Explorer/ExplorerToolbar.js.map +1 -0
  63. package/dist/components/Explorer/TableCell.js +16 -7
  64. package/dist/components/Explorer/TableCell.js.map +1 -1
  65. package/dist/components/Explorer/_constants.d.ts +5 -0
  66. package/dist/components/Explorer/_constants.js +18 -0
  67. package/dist/components/Explorer/_constants.js.map +1 -0
  68. package/dist/components/Explorer/_queries/prepareFiltersForRequest.d.ts +4 -0
  69. package/dist/components/Explorer/_queries/prepareFiltersForRequest.js +99 -0
  70. package/dist/components/Explorer/_queries/prepareFiltersForRequest.js.map +1 -0
  71. package/dist/components/Explorer/_queries/useExplorerData.d.ts +15 -8
  72. package/dist/components/Explorer/_queries/useExplorerData.js +79 -76
  73. package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -1
  74. package/dist/components/Explorer/_types.d.ts +86 -15
  75. package/dist/components/Explorer/_types.js +7 -1
  76. package/dist/components/Explorer/_types.js.map +1 -1
  77. package/dist/components/Explorer/{useEditAction.d.ts → actions-item/useEditItemAction.d.ts} +7 -4
  78. package/dist/components/Explorer/{useEditAction.js → actions-item/useEditItemAction.js} +11 -10
  79. package/dist/components/Explorer/actions-item/useEditItemAction.js.map +1 -0
  80. package/dist/components/Explorer/actions-item/useRemoveItemAction.d.ts +24 -0
  81. package/dist/components/Explorer/actions-item/useRemoveItemAction.js +113 -0
  82. package/dist/components/Explorer/actions-item/useRemoveItemAction.js.map +1 -0
  83. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.d.ts +28 -0
  84. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js +72 -0
  85. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js.map +1 -0
  86. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.d.ts +19 -0
  87. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +85 -0
  88. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -0
  89. package/dist/components/Explorer/actions-mass/useMassActions.d.ts +27 -0
  90. package/dist/components/Explorer/actions-mass/useMassActions.js +111 -0
  91. package/dist/components/Explorer/actions-mass/useMassActions.js.map +1 -0
  92. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.d.ts +31 -0
  93. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +114 -0
  94. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -0
  95. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +20 -0
  96. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +39 -0
  97. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -0
  98. package/dist/components/Explorer/actions-primary/usePrimaryActions.d.ts +17 -0
  99. package/dist/components/Explorer/actions-primary/usePrimaryActions.js +27 -0
  100. package/dist/components/Explorer/actions-primary/usePrimaryActions.js.map +1 -0
  101. package/dist/components/Explorer/{nullValuesConditions.d.ts → conditionsHelper.d.ts} +1 -0
  102. package/dist/components/Explorer/{nullValuesConditions.js → conditionsHelper.js} +3 -1
  103. package/dist/components/Explorer/conditionsHelper.js.map +1 -0
  104. package/dist/components/Explorer/link-item/LinkModal.d.ts +9 -0
  105. package/dist/components/Explorer/link-item/LinkModal.js +82 -0
  106. package/dist/components/Explorer/link-item/LinkModal.js.map +1 -0
  107. package/dist/components/Explorer/link-item/useLinkMassAction.d.ts +31 -0
  108. package/dist/components/Explorer/link-item/useLinkMassAction.js +59 -0
  109. package/dist/components/Explorer/link-item/useLinkMassAction.js.map +1 -0
  110. package/dist/components/Explorer/list-saved-views/SavedViews.d.ts +2 -0
  111. package/dist/components/Explorer/list-saved-views/SavedViews.js +74 -0
  112. package/dist/components/Explorer/list-saved-views/SavedViews.js.map +1 -0
  113. package/dist/components/Explorer/manage-view-settings/_shared/CommonFilterItem.d.ts +3 -2
  114. package/dist/components/Explorer/manage-view-settings/_shared/CommonFilterItem.js +8 -1
  115. package/dist/components/Explorer/manage-view-settings/_shared/CommonFilterItem.js.map +1 -1
  116. package/dist/components/Explorer/manage-view-settings/_shared/useAttributeDetailsData.d.ts +3 -1
  117. package/dist/components/Explorer/manage-view-settings/_shared/useAttributeDetailsData.js +9 -3
  118. package/dist/components/Explorer/manage-view-settings/_shared/useAttributeDetailsData.js.map +1 -1
  119. package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.d.ts +17 -0
  120. package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js +93 -0
  121. package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js.map +1 -0
  122. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js +1 -2
  123. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js.map +1 -1
  124. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js +15 -4
  125. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js.map +1 -1
  126. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/BooleanAttributeDropdown.d.ts +2 -2
  127. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/BooleanAttributeDropdown.js +16 -31
  128. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/BooleanAttributeDropdown.js.map +1 -1
  129. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ColorAttributeDropDown.d.ts +3 -0
  130. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ColorAttributeDropDown.js +11 -0
  131. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ColorAttributeDropDown.js.map +1 -0
  132. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateAttributeDropDown.d.ts +2 -2
  133. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateAttributeDropDown.js +13 -37
  134. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateAttributeDropDown.js.map +1 -1
  135. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateRangeAttributeDropDown.d.ts +3 -0
  136. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateRangeAttributeDropDown.js +11 -0
  137. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/DateRangeAttributeDropDown.js.map +1 -0
  138. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/EncryptedAttributeDropDown.d.ts +3 -0
  139. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/EncryptedAttributeDropDown.js +11 -0
  140. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/EncryptedAttributeDropDown.js.map +1 -0
  141. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ExtendedAttributeDropDown.d.ts +3 -0
  142. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ExtendedAttributeDropDown.js +11 -0
  143. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/ExtendedAttributeDropDown.js.map +1 -0
  144. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropDown.d.ts +1 -1
  145. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropDown.js +37 -20
  146. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropDown.js.map +1 -1
  147. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropdownContent.d.ts +8 -0
  148. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropdownContent.js +41 -0
  149. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterDropdownContent.js.map +1 -0
  150. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/FilterValueList.js.map +1 -1
  151. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/LinkAttributeDropdown.d.ts +3 -0
  152. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/LinkAttributeDropdown.js +79 -0
  153. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/LinkAttributeDropdown.js.map +1 -0
  154. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/NumericAttributeDropDown.d.ts +2 -2
  155. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/NumericAttributeDropDown.js +7 -32
  156. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/NumericAttributeDropDown.js.map +1 -1
  157. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TextAttributeDropDown.d.ts +2 -2
  158. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TextAttributeDropDown.js +7 -32
  159. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/TextAttributeDropDown.js.map +1 -1
  160. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/_types.d.ts +13 -0
  161. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/_types.js +2 -0
  162. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/_types.js.map +1 -0
  163. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.d.ts +6 -4
  164. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.js +17 -19
  165. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/useConditionOptionsByType.js.map +1 -1
  166. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContext.d.ts +3 -2
  167. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContext.js +2 -2
  168. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContext.js.map +1 -1
  169. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContextProvider.d.ts +1 -0
  170. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContextProvider.js +2 -2
  171. package/dist/components/Explorer/manage-view-settings/open-view-settings/EditSettingsContextProvider.js.map +1 -1
  172. package/dist/components/Explorer/manage-view-settings/open-view-settings/SidePanel.js +3 -3
  173. package/dist/components/Explorer/manage-view-settings/open-view-settings/SidePanel.js.map +1 -1
  174. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.d.ts +11 -2
  175. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js +55 -10
  176. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js.map +1 -1
  177. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.d.ts +2 -1
  178. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js +14 -31
  179. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js.map +1 -1
  180. package/dist/components/Explorer/manage-view-settings/save-view/SaveViewModal.d.ts +8 -0
  181. package/dist/components/Explorer/manage-view-settings/save-view/SaveViewModal.js +44 -0
  182. package/dist/components/Explorer/manage-view-settings/save-view/SaveViewModal.js.map +1 -0
  183. package/dist/components/Explorer/manage-view-settings/save-view/ViewActionsButtons.d.ts +1 -0
  184. package/dist/components/Explorer/manage-view-settings/save-view/ViewActionsButtons.js +22 -0
  185. package/dist/components/Explorer/manage-view-settings/save-view/ViewActionsButtons.js.map +1 -0
  186. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.d.ts +3 -0
  187. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js +24 -0
  188. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js.map +1 -0
  189. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.d.ts +3 -0
  190. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js +52 -0
  191. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js.map +1 -0
  192. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.d.ts +3 -0
  193. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js +20 -0
  194. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js.map +1 -0
  195. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.d.ts +3 -0
  196. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js +64 -0
  197. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js.map +1 -0
  198. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.d.ts +3 -0
  199. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js +62 -0
  200. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js.map +1 -0
  201. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js +30 -28
  202. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js.map +1 -1
  203. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js +23 -1
  204. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js.map +1 -1
  205. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.d.ts +47 -13
  206. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js +125 -38
  207. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js.map +1 -1
  208. package/dist/components/Explorer/useColumnWidth.d.ts +8 -0
  209. package/dist/components/Explorer/useColumnWidth.js +49 -0
  210. package/dist/components/Explorer/useColumnWidth.js.map +1 -0
  211. package/dist/components/Explorer/useLoadView.d.ts +3 -0
  212. package/dist/components/Explorer/useLoadView.js +81 -0
  213. package/dist/components/Explorer/useLoadView.js.map +1 -0
  214. package/dist/components/Explorer/useSearchInput.d.ts +10 -4
  215. package/dist/components/Explorer/useSearchInput.js +10 -1
  216. package/dist/components/Explorer/useSearchInput.js.map +1 -1
  217. package/dist/components/Explorer/useViewSettingsReducer.d.ts +4 -3
  218. package/dist/components/Explorer/useViewSettingsReducer.js +108 -39
  219. package/dist/components/Explorer/useViewSettingsReducer.js.map +1 -1
  220. package/dist/components/ImportModal/ImportModalSelectFileStep/ImportModalSelectFileStep.js +1 -2
  221. package/dist/components/ImportModal/ImportModalSelectFileStep/ImportModalSelectFileStep.js.map +1 -1
  222. package/dist/components/LibraryItemsList/DisplayOptions/DisplayOptions.js.map +1 -1
  223. package/dist/components/LibraryItemsList/LibraryItemsListContent/LibraryItemsListContent.js +7 -11
  224. package/dist/components/LibraryItemsList/LibraryItemsListContent/LibraryItemsListContent.js.map +1 -1
  225. package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/StandardCell/StandardCell.js +7 -2
  226. package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/StandardCell/StandardCell.js.map +1 -1
  227. package/dist/components/LibraryItemsList/LibraryItemsListTable/Header/Header.js +7 -5
  228. package/dist/components/LibraryItemsList/LibraryItemsListTable/Header/Header.js.map +1 -1
  229. package/dist/components/LibraryItemsList/MenuView/MenuView.js +5 -10
  230. package/dist/components/LibraryItemsList/MenuView/MenuView.js.map +1 -1
  231. package/dist/components/LibraryItemsList/ViewPanel/EditView/EditView.js +2 -3
  232. package/dist/components/LibraryItemsList/ViewPanel/EditView/EditView.js.map +1 -1
  233. package/dist/components/LibraryItemsList/ViewPanel/View/View.js +3 -3
  234. package/dist/components/LibraryItemsList/ViewPanel/View/View.js.map +1 -1
  235. package/dist/components/LibraryItemsList/helpers/getFieldsFromView.js +4 -9
  236. package/dist/components/LibraryItemsList/helpers/getFieldsFromView.js.map +1 -1
  237. package/dist/components/LibraryItemsList/hooks/useLibraryView/useLibraryView.js +7 -5
  238. package/dist/components/LibraryItemsList/hooks/useLibraryView/useLibraryView.js.map +1 -1
  239. package/dist/components/LibraryItemsList/hooks/useSearchReducer/_types.d.ts +1 -1
  240. package/dist/components/LibraryItemsList/hooks/useSearchReducer/searchReducer.d.ts +1 -1
  241. package/dist/components/LibraryItemsList/hooks/useSearchReducer/searchReducer.js +25 -33
  242. package/dist/components/LibraryItemsList/hooks/useSearchReducer/searchReducer.js.map +1 -1
  243. package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +2 -0
  244. package/dist/components/RecordEdition/EditRecord/EditRecord.js +83 -77
  245. package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
  246. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.d.ts +3 -1
  247. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +12 -9
  248. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
  249. package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +8 -2
  250. package/dist/components/RecordEdition/EditRecordContent/_types.js.map +1 -1
  251. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.d.ts +3 -1
  252. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.js +8 -2
  253. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.js.map +1 -1
  254. package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.d.ts +5 -0
  255. package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.js +28 -0
  256. package/dist/components/RecordEdition/EditRecordContent/hooks/useCreateRecordMutation.js.map +1 -0
  257. package/dist/components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation.js +3 -8
  258. package/dist/components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation.js.map +1 -1
  259. package/dist/components/RecordEdition/EditRecordContent/shared/ValueDetailsBtn/ValueDetailsBtn.js +1 -7
  260. package/dist/components/RecordEdition/EditRecordContent/shared/ValueDetailsBtn/ValueDetailsBtn.js.map +1 -1
  261. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +2 -2
  262. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
  263. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/ComputeIndicator.js +2 -4
  264. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/ComputeIndicator.js.map +1 -1
  265. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +92 -28
  266. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  267. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js +2 -1
  268. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js.map +1 -1
  269. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js +46 -7
  270. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js.map +1 -1
  271. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js +9 -3
  272. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js.map +1 -1
  273. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js +16 -8
  274. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js.map +1 -1
  275. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js +6 -2
  276. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js.map +1 -1
  277. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js +7 -14
  278. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js.map +1 -1
  279. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js +12 -9
  280. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js.map +1 -1
  281. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js +7 -7
  282. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js.map +1 -1
  283. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.d.ts +2 -2
  284. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js +4 -15
  285. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js.map +1 -1
  286. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js +5 -2
  287. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js.map +1 -1
  288. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/_types.d.ts +1 -1
  289. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/calculatedInheritedFlags.js +3 -2
  290. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/calculatedInheritedFlags.js.map +1 -1
  291. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/useGetPresentationValues.js +2 -6
  292. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/useGetPresentationValues.js.map +1 -1
  293. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +4 -7
  294. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
  295. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.d.ts +2 -0
  296. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js +13 -6
  297. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js.map +1 -1
  298. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.d.ts +4 -0
  299. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +3 -2
  300. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
  301. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/AttributeSummary.d.ts +7 -0
  302. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/AttributeSummary.js +9 -0
  303. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/AttributeSummary.js.map +1 -0
  304. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/index.d.ts +2 -0
  305. package/dist/components/RecordEdition/EditRecordSidebar/{ValueDetails/ValueMetadata → AttributeSummary}/index.js +2 -2
  306. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/index.js.map +1 -0
  307. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/useAttributeInformations.d.ts +2 -0
  308. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/useAttributeInformations.js +25 -0
  309. package/dist/components/RecordEdition/EditRecordSidebar/AttributeSummary/useAttributeInformations.js.map +1 -0
  310. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.d.ts +3 -0
  311. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js +53 -0
  312. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js.map +1 -0
  313. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/index.d.ts +2 -0
  314. package/dist/components/RecordEdition/EditRecordSidebar/{ValueDetails → Breacrumb}/index.js +2 -2
  315. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/index.js.map +1 -0
  316. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.d.ts +4 -1
  317. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js +48 -6
  318. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js.map +1 -1
  319. package/dist/components/RecordEdition/EditRecordSidebar/PropertiesList/PropertiesList.d.ts +4 -7
  320. package/dist/components/RecordEdition/EditRecordSidebar/PropertiesList/PropertiesList.js +6 -8
  321. package/dist/components/RecordEdition/EditRecordSidebar/PropertiesList/PropertiesList.js.map +1 -1
  322. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.d.ts +9 -0
  323. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js +42 -0
  324. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js.map +1 -0
  325. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/useRecordInformations.d.ts +6 -0
  326. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/useRecordInformations.js +35 -0
  327. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/useRecordInformations.js.map +1 -0
  328. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordSummary.d.ts +3 -282
  329. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordSummary.js +28 -61
  330. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordSummary.js.map +1 -1
  331. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.d.ts +8 -0
  332. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +81 -0
  333. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -0
  334. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/index.d.ts +2 -0
  335. package/dist/components/RecordEdition/EditRecordSidebar/{ValueDetails/TreeValuePath → ValuesSummary}/index.js +2 -2
  336. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/index.js.map +1 -0
  337. package/dist/components/RecordEdition/{EditRecordContent → EditRecordSkeleton}/EditRecordSkeleton.d.ts +1 -1
  338. package/dist/components/RecordEdition/{EditRecordContent → EditRecordSkeleton}/EditRecordSkeleton.js +2 -2
  339. package/dist/components/RecordEdition/EditRecordSkeleton/EditRecordSkeleton.js.map +1 -0
  340. package/dist/components/RecordEdition/EditRecordSkeleton/index.d.ts +2 -0
  341. package/dist/components/RecordEdition/{EditRecordSidebar/ValueDetails/AttributeDetails → EditRecordSkeleton}/index.js +2 -2
  342. package/dist/components/RecordEdition/EditRecordSkeleton/index.js.map +1 -0
  343. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.d.ts +12 -10
  344. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js +15 -13
  345. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js.map +1 -1
  346. package/dist/components/RecordEdition/index.d.ts +1 -0
  347. package/dist/components/RecordEdition/index.js +1 -0
  348. package/dist/components/RecordEdition/index.js.map +1 -1
  349. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js +3 -4
  350. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js.map +1 -1
  351. package/dist/constants.d.ts +3 -0
  352. package/dist/constants.js +3 -0
  353. package/dist/constants.js.map +1 -1
  354. package/dist/hooks/useExecuteSaveViewMutation/index.d.ts +1 -0
  355. package/dist/{components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo → hooks/useExecuteSaveViewMutation}/index.js +1 -2
  356. package/dist/hooks/useExecuteSaveViewMutation/index.js.map +1 -0
  357. package/dist/hooks/useExecuteSaveViewMutation/useExecuteSaveViewMutation.d.ts +6 -0
  358. package/dist/hooks/{useExecuteAddViewMutation/useExecuteAddViewMutation.js → useExecuteSaveViewMutation/useExecuteSaveViewMutation.js} +8 -7
  359. package/dist/hooks/useExecuteSaveViewMutation/useExecuteSaveViewMutation.js.map +1 -0
  360. package/dist/hooks/useGetRecordValuesQuery/useGetRecordValuesQuery.d.ts +1 -1
  361. package/dist/hooks/useGetRecordValuesQuery/useGetRecordValuesQuery.js +2 -2
  362. package/dist/hooks/useGetRecordValuesQuery/useGetRecordValuesQuery.js.map +1 -1
  363. package/dist/locales/en/shared.json +69 -12
  364. package/dist/locales/fr/shared.json +72 -15
  365. package/dist/types/views.d.ts +4 -4
  366. package/package.json +5 -5
  367. package/dist/components/Explorer/display-view-filters/ExplorerFilterBar.d.ts +0 -2
  368. package/dist/components/Explorer/display-view-filters/ExplorerFilterBar.js +0 -37
  369. package/dist/components/Explorer/display-view-filters/ExplorerFilterBar.js.map +0 -1
  370. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/SimpleFilterDropDown.d.ts +0 -3
  371. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/SimpleFilterDropDown.js +0 -72
  372. package/dist/components/Explorer/manage-view-settings/filter-items/filter-type/SimpleFilterDropDown.js.map +0 -1
  373. package/dist/components/Explorer/nullValuesConditions.js.map +0 -1
  374. package/dist/components/Explorer/useCreateAction.d.ts +0 -19
  375. package/dist/components/Explorer/useCreateAction.js +0 -40
  376. package/dist/components/Explorer/useCreateAction.js.map +0 -1
  377. package/dist/components/Explorer/useDeactivateAction.d.ts +0 -12
  378. package/dist/components/Explorer/useDeactivateAction.js +0 -52
  379. package/dist/components/Explorer/useDeactivateAction.js.map +0 -1
  380. package/dist/components/Explorer/useEditAction.js.map +0 -1
  381. package/dist/components/Explorer/usePrimaryActions.d.ts +0 -12
  382. package/dist/components/Explorer/usePrimaryActions.js +0 -21
  383. package/dist/components/Explorer/usePrimaryActions.js.map +0 -1
  384. package/dist/components/RecordEdition/EditRecordContent/EditRecordSkeleton.js.map +0 -1
  385. package/dist/components/RecordEdition/EditRecordContent/shared/ValueDetailsBtn/useValueDetailsButton.d.ts +0 -8
  386. package/dist/components/RecordEdition/EditRecordContent/shared/ValueDetailsBtn/useValueDetailsButton.js +0 -23
  387. package/dist/components/RecordEdition/EditRecordContent/shared/ValueDetailsBtn/useValueDetailsButton.js.map +0 -1
  388. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/AttributeDetails/AttributeDetails.d.ts +0 -6
  389. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/AttributeDetails/AttributeDetails.js +0 -56
  390. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/AttributeDetails/AttributeDetails.js.map +0 -1
  391. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/AttributeDetails/index.d.ts +0 -2
  392. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/AttributeDetails/index.js.map +0 -1
  393. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/TreeValuePath/TreeValuePath.d.ts +0 -8
  394. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/TreeValuePath/TreeValuePath.js +0 -41
  395. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/TreeValuePath/TreeValuePath.js.map +0 -1
  396. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/TreeValuePath/index.d.ts +0 -2
  397. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/TreeValuePath/index.js.map +0 -1
  398. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueDetails.d.ts +0 -10
  399. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueDetails.js +0 -63
  400. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueDetails.js.map +0 -1
  401. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo/ValueInfo.d.ts +0 -2
  402. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo/ValueInfo.js +0 -76
  403. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo/ValueInfo.js.map +0 -1
  404. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo/index.d.ts +0 -2
  405. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueInfo/index.js.map +0 -1
  406. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueMetadata/ValueMetadata.d.ts +0 -11
  407. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueMetadata/ValueMetadata.js +0 -43
  408. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueMetadata/ValueMetadata.js.map +0 -1
  409. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueMetadata/index.d.ts +0 -2
  410. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/ValueMetadata/index.js.map +0 -1
  411. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/index.d.ts +0 -2
  412. package/dist/components/RecordEdition/EditRecordSidebar/ValueDetails/index.js.map +0 -1
  413. package/dist/hooks/useExecuteAddViewMutation/useExecuteAddViewMutation.d.ts +0 -6
  414. package/dist/hooks/useExecuteAddViewMutation/useExecuteAddViewMutation.js.map +0 -1
@@ -0,0 +1,28 @@
1
+ import { Dispatch } from 'react';
2
+ import { FeatureHook, IMassActions } from '../_types';
3
+ import { IViewSettingsAction, IViewSettingsState } from '../manage-view-settings';
4
+ import type { useExplorerData } from '../_queries/useExplorerData';
5
+ /**
6
+ * Hook used to get the action for mass actions only available on selection.
7
+ *
8
+ * When the mutation for deactivation is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)
9
+ * from deactivated record.
10
+ *
11
+ * @param isEnabled - whether the action is present
12
+ * @param view - represent the current view
13
+ * @param dispatch - method to change the current view
14
+ * @param libraryId - concerned library
15
+ * @param allVisibleKeys - list of all visible keys used to know if we need to change page
16
+ * @param refetch - method to get fresh data when we delete last page
17
+ */
18
+ export declare const useDeactivateMassAction: ({ isEnabled, store: { view, dispatch }, allVisibleKeys, onDeactivate, refetch }: FeatureHook<{
19
+ store: {
20
+ view: IViewSettingsState;
21
+ dispatch: Dispatch<IViewSettingsAction>;
22
+ };
23
+ allVisibleKeys: string[];
24
+ onDeactivate?: IMassActions["callback"];
25
+ refetch: ReturnType<typeof useExplorerData>["refetch"];
26
+ }>) => {
27
+ deactivateMassAction: IMassActions;
28
+ };
@@ -0,0 +1,72 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { useMemo } from 'react';
6
+ import { FaTrash } from 'react-icons/fa';
7
+ import { KitModal } from 'aristid-ds';
8
+ import { useDeactivateRecordsMutation } from '../../../_gqlTypes';
9
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
10
+ import { ViewSettingsActionTypes } from '../manage-view-settings';
11
+ import { MASS_SELECTION_ALL } from '../_constants';
12
+ /**
13
+ * Hook used to get the action for mass actions only available on selection.
14
+ *
15
+ * When the mutation for deactivation is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)
16
+ * from deactivated record.
17
+ *
18
+ * @param isEnabled - whether the action is present
19
+ * @param view - represent the current view
20
+ * @param dispatch - method to change the current view
21
+ * @param libraryId - concerned library
22
+ * @param allVisibleKeys - list of all visible keys used to know if we need to change page
23
+ * @param refetch - method to get fresh data when we delete last page
24
+ */
25
+ export const useDeactivateMassAction = ({ isEnabled, store: { view, dispatch }, allVisibleKeys, onDeactivate, refetch }) => {
26
+ const { t } = useSharedTranslation();
27
+ const [deactivateRecordsMutation] = useDeactivateRecordsMutation();
28
+ const _deactivateMassAction = useMemo(() => ({
29
+ label: t('explorer.massAction.deactivate'),
30
+ icon: _jsx(FaTrash, {}),
31
+ callback: massSelectionFilter => {
32
+ KitModal.confirm({
33
+ type: 'confirm',
34
+ dangerConfirm: true,
35
+ content: t('records_deactivation.confirm', {
36
+ count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length
37
+ }),
38
+ okText: t('global.submit') ?? undefined,
39
+ cancelText: t('global.cancel') ?? undefined,
40
+ onOk: async () => {
41
+ await deactivateRecordsMutation({
42
+ variables: {
43
+ libraryId: view.libraryId,
44
+ filters: massSelectionFilter
45
+ }
46
+ });
47
+ if (view.massSelection === MASS_SELECTION_ALL ||
48
+ allVisibleKeys.every(key => view.massSelection.includes(key))) {
49
+ await refetch({
50
+ pagination: {
51
+ limit: view.pageSize,
52
+ offset: 0
53
+ }
54
+ });
55
+ }
56
+ else {
57
+ await refetch();
58
+ }
59
+ onDeactivate?.(massSelectionFilter, view.massSelection);
60
+ dispatch({
61
+ type: ViewSettingsActionTypes.SET_SELECTED_KEYS,
62
+ payload: []
63
+ });
64
+ }
65
+ });
66
+ }
67
+ }), [t, deactivateRecordsMutation, view.massSelection, dispatch, view.libraryId, allVisibleKeys, refetch]);
68
+ return {
69
+ deactivateMassAction: isEnabled ? _deactivateMassAction : null
70
+ };
71
+ };
72
+ //# sourceMappingURL=useDeactivateMassAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDeactivateMassAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeactivateMassAction.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAW,OAAO,EAAC,MAAM,OAAO,CAAC;AACxC,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAA0C,uBAAuB,EAAC,MAAM,yBAAyB,CAAC;AACzG,OAAO,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAGjD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACpC,SAAS,EACT,KAAK,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EACvB,cAAc,EACd,YAAY,EACZ,OAAO,EAST,EAAE,EAAE;IACF,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,MAAM,CAAC,yBAAyB,CAAC,GAAG,4BAA4B,EAAE,CAAC;IAEnE,MAAM,qBAAqB,GAAiB,OAAO,CAC/C,GAAG,EAAE,CAAC,CAAC;QACH,KAAK,EAAE,CAAC,CAAC,gCAAgC,CAAC;QAC1C,IAAI,EAAE,KAAC,OAAO,KAAG;QACjB,QAAQ,EAAE,mBAAmB,CAAC,EAAE;YAC5B,QAAQ,CAAC,OAAO,CAAC;gBACb,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,IAAI;gBACnB,OAAO,EAAE,CAAC,CAAC,8BAA8B,EAAE;oBACvC,KAAK,EAAE,IAAI,CAAC,aAAa,KAAK,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;iBAC1F,CAAC;gBACF,MAAM,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,SAAS;gBACvC,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,SAAS;gBAC3C,IAAI,EAAE,KAAK,IAAI,EAAE;oBACb,MAAM,yBAAyB,CAAC;wBAC5B,SAAS,EAAE;4BACP,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,OAAO,EAAE,mBAAmB;yBAC/B;qBACJ,CAAC,CAAC;oBACH,IACI,IAAI,CAAC,aAAa,KAAK,kBAAkB;wBACzC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC/D,CAAC;wBACC,MAAM,OAAO,CAAC;4BACV,UAAU,EAAE;gCACR,KAAK,EAAE,IAAI,CAAC,QAAQ;gCACpB,MAAM,EAAE,CAAC;6BACZ;yBACJ,CAAC,CAAC;oBACP,CAAC;yBAAM,CAAC;wBACJ,MAAM,OAAO,EAAE,CAAC;oBACpB,CAAC;oBACD,YAAY,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;oBACxD,QAAQ,CAAC;wBACL,IAAI,EAAE,uBAAuB,CAAC,iBAAiB;wBAC/C,OAAO,EAAE,EAAE;qBACd,CAAC,CAAC;gBACP,CAAC;aACJ,CAAC,CAAC;QACP,CAAC;KACJ,CAAC,EACF,CAAC,CAAC,EAAE,yBAAyB,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,CACxG,CAAC;IAEF,OAAO;QACH,oBAAoB,EAAE,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI;KACjE,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { FeatureHook, IMassActions } from '../_types';
2
+ import { IViewSettingsAction, IViewSettingsState } from '../manage-view-settings';
3
+ import { Dispatch } from 'react';
4
+ import { useExplorerData } from '../_queries/useExplorerData';
5
+ export declare const useDeleteLinkValues: ({ isEnabled, store: { view, dispatch }, pagination, allVisibleKeys, onDelete, refetch }: FeatureHook<{
6
+ pagination: null | {
7
+ limit: number;
8
+ offset: number;
9
+ };
10
+ store: {
11
+ view: IViewSettingsState;
12
+ dispatch: Dispatch<IViewSettingsAction>;
13
+ };
14
+ allVisibleKeys: string[];
15
+ onDelete?: IMassActions["callback"];
16
+ refetch: ReturnType<typeof useExplorerData>["refetch"];
17
+ }>) => {
18
+ unlinkMassAction: IMassActions;
19
+ };
@@ -0,0 +1,85 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import useSaveValueBatchMutation from '../../../components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation';
6
+ import { ViewSettingsActionTypes } from '../manage-view-settings';
7
+ import { useMemo } from 'react';
8
+ import { useExplorerData } from '../_queries/useExplorerData';
9
+ import { FaTrash } from 'react-icons/fa';
10
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
11
+ import { KitModal } from 'aristid-ds';
12
+ import { MASS_SELECTION_ALL } from '../_constants';
13
+ export const useDeleteLinkValues = ({ isEnabled, store: { view, dispatch }, pagination, allVisibleKeys, onDelete, refetch }) => {
14
+ const { t } = useSharedTranslation();
15
+ const { saveValues } = useSaveValueBatchMutation();
16
+ const isLink = view.entrypoint.type === 'link';
17
+ const { data: linkData } = useExplorerData({
18
+ entrypoint: view.entrypoint,
19
+ libraryId: view.libraryId,
20
+ attributeIds: view.attributesIds,
21
+ fulltextSearch: view.fulltextSearch,
22
+ pagination,
23
+ sorts: view.sort,
24
+ filters: view.filters,
25
+ skip: !isLink
26
+ });
27
+ const _unlinkMassAction = useMemo(() => ({
28
+ label: t('explorer.massAction.deactivate'),
29
+ icon: _jsx(FaTrash, {}),
30
+ callback: massSelectionFilter => {
31
+ KitModal.confirm({
32
+ type: 'confirm',
33
+ dangerConfirm: true,
34
+ content: t('record_edition.delete_links_confirm', {
35
+ count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length
36
+ }),
37
+ okText: t('global.submit') ?? undefined,
38
+ cancelText: t('global.cancel') ?? undefined,
39
+ onOk: async () => {
40
+ const entrypoint = view.entrypoint;
41
+ let values;
42
+ if (view.massSelection === MASS_SELECTION_ALL ||
43
+ allVisibleKeys.every(key => view.massSelection.includes(key))) {
44
+ values =
45
+ (linkData?.records ?? []).map(({ id_value }) => ({
46
+ attribute: entrypoint.linkAttributeId,
47
+ idValue: id_value ?? null,
48
+ value: null
49
+ })) ?? [];
50
+ }
51
+ else {
52
+ values = (linkData?.records ?? []).reduce((acc, { id_value, itemId }) => {
53
+ if (view.massSelection.includes(itemId)) {
54
+ acc.push({
55
+ attribute: entrypoint.linkAttributeId,
56
+ idValue: id_value ?? null,
57
+ value: null
58
+ });
59
+ }
60
+ return acc;
61
+ }, []);
62
+ }
63
+ if (values.length > 0) {
64
+ await saveValues({
65
+ id: entrypoint.parentRecordId,
66
+ library: {
67
+ id: entrypoint.parentLibraryId
68
+ }
69
+ }, values, undefined, true);
70
+ onDelete?.(massSelectionFilter, view.massSelection);
71
+ await refetch();
72
+ }
73
+ dispatch({
74
+ type: ViewSettingsActionTypes.SET_SELECTED_KEYS,
75
+ payload: []
76
+ });
77
+ }
78
+ });
79
+ }
80
+ }), [t, saveValues, view.massSelection, dispatch, view.libraryId, allVisibleKeys]);
81
+ return {
82
+ unlinkMassAction: isEnabled ? _unlinkMassAction : null
83
+ };
84
+ };
85
+ //# sourceMappingURL=useDeleteLinkValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDeleteLinkValues.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeleteLinkValues.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { Dispatch } from 'react';
2
+ import { IMassActions, MassSelection } from '../_types';
3
+ import { IViewSettingsAction, IViewSettingsState } from '../manage-view-settings';
4
+ export declare const SNACKBAR_MASS_ID = "SNACKBAR_MASS_ID";
5
+ /**
6
+ * Hook used to manage mass selection as the snackbar and all kind of selection (manual, all in page, all in filters)
7
+ *
8
+ * @param isEnabled - whether the selection is present
9
+ * @param view - represent the current view
10
+ * @param dispatch - method to change the current view
11
+ * @param totalCount - used for display purpose only
12
+ * @param allVisibleKeys - list of all ids currently selected
13
+ * @param massActions - array of all actions available on mass selection
14
+ */
15
+ export declare const useMassActions: ({ isEnabled, store: { dispatch, view }, totalCount, allVisibleKeys, massActions }: {
16
+ isEnabled: boolean;
17
+ store: {
18
+ view: IViewSettingsState;
19
+ dispatch: Dispatch<IViewSettingsAction>;
20
+ };
21
+ totalCount: number;
22
+ allVisibleKeys: string[];
23
+ massActions: IMassActions[];
24
+ }) => {
25
+ selectAllButton: JSX.Element;
26
+ setSelectedKeys: (keys: MassSelection) => void;
27
+ };
@@ -0,0 +1,111 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { closeKitSnackBar, KitCheckbox, KitDropDown, KitSpace, openKitSnackBar } from 'aristid-ds';
6
+ import { useCallback, useEffect } from 'react';
7
+ import { FaChevronDown } from 'react-icons/fa';
8
+ import { RecordFilterCondition, RecordFilterOperator } from '../../../_gqlTypes';
9
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
10
+ import { interleaveElement } from '../../../_utils/interleaveElement';
11
+ import { MASS_SELECTION_ALL } from '../_constants';
12
+ import { ViewSettingsActionTypes } from '../manage-view-settings';
13
+ import { prepareFiltersForRequest } from '../_queries/prepareFiltersForRequest';
14
+ export const SNACKBAR_MASS_ID = 'SNACKBAR_MASS_ID';
15
+ /**
16
+ * Hook used to manage mass selection as the snackbar and all kind of selection (manual, all in page, all in filters)
17
+ *
18
+ * @param isEnabled - whether the selection is present
19
+ * @param view - represent the current view
20
+ * @param dispatch - method to change the current view
21
+ * @param totalCount - used for display purpose only
22
+ * @param allVisibleKeys - list of all ids currently selected
23
+ * @param massActions - array of all actions available on mass selection
24
+ */
25
+ export const useMassActions = ({ isEnabled, store: { dispatch, view }, totalCount, allVisibleKeys, massActions }) => {
26
+ const { t } = useSharedTranslation();
27
+ useEffect(() => {
28
+ if (view.massSelection === MASS_SELECTION_ALL || view.massSelection.length !== 0) {
29
+ openKitSnackBar({
30
+ duration: 0,
31
+ closable: true,
32
+ snackbarId: SNACKBAR_MASS_ID,
33
+ onClose: () => _setSelectedKeys([]),
34
+ message: t('explorer.massAction.selectedItems', {
35
+ count: view.massSelection === MASS_SELECTION_ALL ? totalCount : view.massSelection.length
36
+ }),
37
+ actions: massActions.map(({ label, icon, callback }, index) => ({
38
+ key: index,
39
+ label,
40
+ icon,
41
+ onClick: async () => {
42
+ await callback(view.massSelection === MASS_SELECTION_ALL
43
+ ? prepareFiltersForRequest(view.filters)
44
+ : interleaveElement({ operator: RecordFilterOperator.OR }, view.massSelection.map(key => [
45
+ {
46
+ field: 'id',
47
+ condition: RecordFilterCondition.EQUAL,
48
+ value: String(key)
49
+ }
50
+ ])), view.massSelection);
51
+ dispatch({
52
+ type: ViewSettingsActionTypes.SET_SELECTED_KEYS,
53
+ payload: []
54
+ });
55
+ }
56
+ }))
57
+ });
58
+ }
59
+ else {
60
+ closeKitSnackBar(SNACKBAR_MASS_ID);
61
+ }
62
+ }, [view.massSelection, view.filters, totalCount]);
63
+ const isOnePage = view.pageSize > totalCount;
64
+ const hasSelectedAllAvailableItems = view.massSelection === MASS_SELECTION_ALL || view.massSelection.length === totalCount;
65
+ const hasSelectedSomeItems = view.massSelection !== MASS_SELECTION_ALL &&
66
+ view.massSelection.length > 0 &&
67
+ view.massSelection.length < totalCount;
68
+ const _selectAllButton = isOnePage ? (_jsx(KitCheckbox, { indeterminate: hasSelectedSomeItems, checked: hasSelectedAllAvailableItems, onChange: _ => {
69
+ if (hasSelectedAllAvailableItems) {
70
+ _setSelectedKeys([]);
71
+ }
72
+ else {
73
+ _setSelectedKeys(allVisibleKeys);
74
+ }
75
+ }, children: t('explorer.massAction.itemsTotal', { count: totalCount }) })) : (_jsx(KitDropDown, { trigger: ['click'], menu: {
76
+ items: [
77
+ hasSelectedAllAvailableItems
78
+ ? null
79
+ : {
80
+ key: 'toggle_page_selection',
81
+ label: t('explorer.massAction.toggle_selection.select_page', { count: view.pageSize }),
82
+ onClick: () => {
83
+ _setSelectedKeys([...new Set([...view.massSelection, ...allVisibleKeys])]);
84
+ }
85
+ },
86
+ {
87
+ key: 'toggle_all_selection',
88
+ label: hasSelectedAllAvailableItems
89
+ ? t('explorer.massAction.toggle_selection.deselect_all', { count: totalCount })
90
+ : t('explorer.massAction.toggle_selection.select_all', { count: totalCount }),
91
+ onClick: async () => {
92
+ if (hasSelectedAllAvailableItems) {
93
+ _setSelectedKeys([]);
94
+ }
95
+ else {
96
+ _setSelectedKeys(MASS_SELECTION_ALL);
97
+ }
98
+ }
99
+ }
100
+ ]
101
+ }, children: _jsx(KitCheckbox, { indeterminate: hasSelectedSomeItems, checked: hasSelectedAllAvailableItems, children: _jsxs(KitSpace, { size: "s", children: [t('explorer.massAction.itemsTotal', { count: totalCount }), _jsx(FaChevronDown, {})] }) }) }));
102
+ const _setSelectedKeys = useCallback((keys) => dispatch({
103
+ type: ViewSettingsActionTypes.SET_SELECTED_KEYS,
104
+ payload: keys
105
+ }), [dispatch]);
106
+ return {
107
+ selectAllButton: isEnabled ? _selectAllButton : null,
108
+ setSelectedKeys: isEnabled ? _setSelectedKeys : null
109
+ };
110
+ };
111
+ //# sourceMappingURL=useMassActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMassActions.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useMassActions.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { ReactElement } from 'react';
2
+ import { ISubmitMultipleResult } from '../../../components/RecordEdition/EditRecordContent/_types';
3
+ import { FeatureHook, Entrypoint, IPrimaryAction } from '../_types';
4
+ /**
5
+ * Hook used to get the action for `<DataView />` component.
6
+ *
7
+ * When the creation is done, we refresh all data even if the new record will not be visible due to some filters.
8
+ *
9
+ * It returns also two parts : one for the call action button - one for displayed the modal required by the action.
10
+ *
11
+ * @param isEnabled - whether the action is present
12
+ * @param libraryId - the library's id to add new item
13
+ * @param entrypoint - represent the current entrypoint
14
+ * @param totalCount - used for display purpose only
15
+ * @param onCreate - callback to let outside world known about creating item (and linking)
16
+ * @param refetch - method to call to refresh the list. New item will be visible if it matches filters and sorts
17
+ */
18
+ export declare const useCreatePrimaryAction: ({ isEnabled, libraryId, entrypoint, totalCount, onCreate, formId, refetch }: FeatureHook<{
19
+ libraryId: string;
20
+ entrypoint: Entrypoint;
21
+ totalCount: number;
22
+ onCreate?: ({ recordIdCreated, saveValuesResultOnLink }: {
23
+ recordIdCreated: string;
24
+ saveValuesResultOnLink?: ISubmitMultipleResult;
25
+ }) => void;
26
+ formId?: string;
27
+ refetch: () => void;
28
+ }>) => {
29
+ createPrimaryAction: IPrimaryAction;
30
+ createModal: ReactElement<any, string | import("react").JSXElementConstructor<any>>;
31
+ };
@@ -0,0 +1,114 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { useState } from 'react';
6
+ import { FaPlus } from 'react-icons/fa';
7
+ import { useKitNotification } from 'aristid-ds';
8
+ import { CreateDirectory, EditRecordModal, UploadFiles } from '../../../components';
9
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
10
+ import useSaveValueBatchMutation from '../../../components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation';
11
+ import { LibraryBehavior, useExplorerLibraryDetailsQuery, useExplorerLinkAttributeQuery } from '../../../_gqlTypes';
12
+ /**
13
+ * Hook used to get the action for `<DataView />` component.
14
+ *
15
+ * When the creation is done, we refresh all data even if the new record will not be visible due to some filters.
16
+ *
17
+ * It returns also two parts : one for the call action button - one for displayed the modal required by the action.
18
+ *
19
+ * @param isEnabled - whether the action is present
20
+ * @param libraryId - the library's id to add new item
21
+ * @param entrypoint - represent the current entrypoint
22
+ * @param totalCount - used for display purpose only
23
+ * @param onCreate - callback to let outside world known about creating item (and linking)
24
+ * @param refetch - method to call to refresh the list. New item will be visible if it matches filters and sorts
25
+ */
26
+ export const useCreatePrimaryAction = ({ isEnabled, libraryId, entrypoint, totalCount, onCreate, formId, refetch }) => {
27
+ const { t } = useSharedTranslation();
28
+ const [isModalCreationVisible, setIsModalCreationVisible] = useState(false);
29
+ const [multipleValues, setIsMultivalues] = useState(false);
30
+ const { saveValues } = useSaveValueBatchMutation();
31
+ const { kitNotification } = useKitNotification();
32
+ useExplorerLinkAttributeQuery({
33
+ skip: entrypoint.type !== 'link',
34
+ variables: {
35
+ id: entrypoint.linkAttributeId
36
+ },
37
+ onCompleted: data => {
38
+ const attributeData = data?.attributes?.list?.[0];
39
+ if (!attributeData) {
40
+ throw new Error('Unknown link attribute');
41
+ }
42
+ setIsMultivalues(attributeData.multiple_values);
43
+ }
44
+ });
45
+ const { data, loading, error } = useExplorerLibraryDetailsQuery({ variables: { libraryId }, skip: !isEnabled });
46
+ if (error || loading) {
47
+ return { createPrimaryAction: null, createModal: null };
48
+ }
49
+ const canCreateRecord = entrypoint.type === 'library' ? true : multipleValues || totalCount === 0;
50
+ const _createPrimaryAction = {
51
+ callback: () => {
52
+ setIsModalCreationVisible(true);
53
+ },
54
+ icon: _jsx(FaPlus, {}),
55
+ disabled: !canCreateRecord,
56
+ label: t('explorer.create-one')
57
+ };
58
+ const _notifyNewCreation = () => {
59
+ kitNotification.success({
60
+ message: t('items_list.created_in_success.message'),
61
+ description: ''
62
+ });
63
+ };
64
+ let _createModal = null;
65
+ switch (data?.libraries?.list[0]?.behavior) {
66
+ case LibraryBehavior.files:
67
+ _createModal = (_jsx(UploadFiles, { libraryId: libraryId, multiple: true, onClose: () => setIsModalCreationVisible(false), onCompleted: () => {
68
+ refetch();
69
+ _notifyNewCreation();
70
+ setIsModalCreationVisible(false);
71
+ } }));
72
+ break;
73
+ case LibraryBehavior.directories:
74
+ _createModal = (_jsx(CreateDirectory, { libraryId: libraryId, onClose: () => setIsModalCreationVisible(false), onCompleted: () => {
75
+ refetch();
76
+ _notifyNewCreation();
77
+ setIsModalCreationVisible(false);
78
+ } }));
79
+ break;
80
+ case LibraryBehavior.standard:
81
+ _createModal = (_jsx(EditRecordModal, { open: true, record: null, library: libraryId, creationFormId: formId, onClose: () => {
82
+ setIsModalCreationVisible(false);
83
+ }, onCreate: newRecord => {
84
+ refetch();
85
+ _notifyNewCreation();
86
+ setIsModalCreationVisible(false);
87
+ if (entrypoint.type === 'link') {
88
+ saveValues({
89
+ id: entrypoint.parentRecordId,
90
+ library: {
91
+ id: entrypoint.parentLibraryId
92
+ }
93
+ }, [
94
+ {
95
+ attribute: entrypoint.linkAttributeId,
96
+ idValue: null,
97
+ value: newRecord.id
98
+ }
99
+ ]).then(saveValuesResult => {
100
+ onCreate?.({ recordIdCreated: newRecord.id, saveValuesResultOnLink: saveValuesResult });
101
+ });
102
+ }
103
+ else {
104
+ onCreate?.({ recordIdCreated: newRecord.id });
105
+ }
106
+ }, submitButtons: ['create'] }));
107
+ break;
108
+ }
109
+ return {
110
+ createPrimaryAction: isEnabled ? _createPrimaryAction : null,
111
+ createModal: isModalCreationVisible ? _createModal : null
112
+ };
113
+ };
114
+ //# sourceMappingURL=useCreatePrimaryAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCreatePrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useCreatePrimaryAction.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { ISubmitMultipleResult } from '../../../components/RecordEdition/EditRecordContent/_types';
2
+ import { FeatureHook, IPrimaryAction } from '../_types';
3
+ /**
4
+ * Hook used to get the action for `<DataView />` component.
5
+ *
6
+ * When items are linked, the view is refreshed
7
+ *
8
+ * It returns also two parts : one for the call action button - one for displaying the modal required by the action.
9
+ *
10
+ * @param isEnabled - whether the action is present
11
+ * @param maxItemsLeft - the number of items that can be added
12
+ * @param onLink - callback to let outside world know about linking feedback
13
+ */
14
+ export declare const useLinkPrimaryAction: ({ isEnabled, maxItemsLeft, onLink }: FeatureHook<{
15
+ maxItemsLeft: number | null;
16
+ onLink?: (saveValuesResult: ISubmitMultipleResult) => void;
17
+ }>) => {
18
+ linkPrimaryAction: IPrimaryAction;
19
+ linkModal: JSX.Element;
20
+ };
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { useState } from 'react';
6
+ import { FaPlus } from 'react-icons/fa';
7
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
8
+ import { LinkModal } from '../link-item/LinkModal';
9
+ /**
10
+ * Hook used to get the action for `<DataView />` component.
11
+ *
12
+ * When items are linked, the view is refreshed
13
+ *
14
+ * It returns also two parts : one for the call action button - one for displaying the modal required by the action.
15
+ *
16
+ * @param isEnabled - whether the action is present
17
+ * @param maxItemsLeft - the number of items that can be added
18
+ * @param onLink - callback to let outside world know about linking feedback
19
+ */
20
+ export const useLinkPrimaryAction = ({ isEnabled, maxItemsLeft, onLink }) => {
21
+ const { t } = useSharedTranslation();
22
+ const [isLinkModalVisible, setIsLinkModalVisible] = useState(false);
23
+ const disableAddItemAction = maxItemsLeft === 0;
24
+ const _linkPrimaryAction = {
25
+ callback: () => {
26
+ setIsLinkModalVisible(true);
27
+ },
28
+ icon: _jsx(FaPlus, {}),
29
+ disabled: disableAddItemAction,
30
+ label: t('explorer.add-existing-item')
31
+ };
32
+ return {
33
+ linkPrimaryAction: isEnabled ? _linkPrimaryAction : null,
34
+ linkModal: isLinkModalVisible ? (_jsx(LinkModal, { open: true, onLink: onLink, onClose: () => {
35
+ setIsLinkModalVisible(false);
36
+ } })) : null
37
+ };
38
+ };
39
+ //# sourceMappingURL=useLinkPrimaryAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLinkPrimaryAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-primary/useLinkPrimaryAction.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAGpE,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACjC,SAAS,EACT,YAAY,EACZ,MAAM,EAIR,EAAE,EAAE;IACF,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC;IAEhD,MAAM,kBAAkB,GAAmB;QACvC,QAAQ,EAAE,GAAG,EAAE;YACX,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,EAAE,KAAC,MAAM,KAAG;QAChB,QAAQ,EAAE,oBAAoB;QAC9B,KAAK,EAAE,CAAC,CAAC,4BAA4B,CAAC;KACzC,CAAC;IAEF,OAAO;QACH,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;QACxD,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAC5B,KAAC,SAAS,IACN,IAAI,QACJ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,GAAG,EAAE;gBACV,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC,GACH,CACL,CAAC,CAAC,CAAC,IAAI;KACX,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { IPrimaryAction } from '../_types';
2
+ import { IViewSettingsState } from '../manage-view-settings';
3
+ /**
4
+ * Hook used to get the primary actions for `<DataView />` component.
5
+ *
6
+ * Based on default actions and custom actions, it returns a primary with first action as "main" action and the others
7
+ * in the dropdown accessible via a split button.
8
+ *
9
+ * @param view - list of actions to be display as one button: the primary action button
10
+ * @param actions - list of actions to be display as one button: the primary action button
11
+ */
12
+ export declare const usePrimaryActionsButton: ({ view, actions }: {
13
+ view: IViewSettingsState;
14
+ actions: IPrimaryAction[];
15
+ }) => {
16
+ primaryButton: JSX.Element;
17
+ };
@@ -0,0 +1,27 @@
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { KitButton, KitSpace } from 'aristid-ds';
6
+ import { MASS_SELECTION_ALL } from '../_constants';
7
+ /**
8
+ * Hook used to get the primary actions for `<DataView />` component.
9
+ *
10
+ * Based on default actions and custom actions, it returns a primary with first action as "main" action and the others
11
+ * in the dropdown accessible via a split button.
12
+ *
13
+ * @param view - list of actions to be display as one button: the primary action button
14
+ * @param actions - list of actions to be display as one button: the primary action button
15
+ */
16
+ export const usePrimaryActionsButton = ({ view, actions }) => {
17
+ const [firstAction, ...dropdownActions] = actions;
18
+ return {
19
+ primaryButton: actions.length === 0 ? null : (_jsx(_Fragment, { children: _jsx(KitButton, { type: "primary", icon: firstAction.icon, disabled: firstAction.disabled || view.massSelection === MASS_SELECTION_ALL, onClick: firstAction.callback, items: dropdownActions.map((action, index) => ({
20
+ key: index,
21
+ label: (_jsxs(KitSpace, { size: 8, children: [action.icon, " ", action.label] })),
22
+ disabled: action.disabled || view.massSelection === MASS_SELECTION_ALL,
23
+ onClick: action.callback
24
+ })), children: firstAction.label }) }))
25
+ };
26
+ };
27
+ //# sourceMappingURL=usePrimaryActions.js.map