@leav/ui 1.6.0 → 1.7.0-13483399

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 (301) hide show
  1. package/README.md +13 -12
  2. package/dist/__mocks__/common/library.d.ts +1 -0
  3. package/dist/__mocks__/react-i18next.d.ts +1 -1
  4. package/dist/_gqlTypes/index.d.ts +1046 -687
  5. package/dist/_gqlTypes/index.js +188 -43
  6. package/dist/_gqlTypes/index.js.map +1 -1
  7. package/dist/_queries/attributes/attributeDetailsFragment.js +5 -0
  8. package/dist/_queries/attributes/attributeDetailsFragment.js.map +1 -1
  9. package/dist/_queries/libraries/libraryDetailsFragment.js +1 -0
  10. package/dist/_queries/libraries/libraryDetailsFragment.js.map +1 -1
  11. package/dist/_queries/trees/treeNodeChildrenQuery.js +2 -0
  12. package/dist/_queries/trees/treeNodeChildrenQuery.js.map +1 -1
  13. package/dist/_queries/views/viewDetailsFragment.js +1 -0
  14. package/dist/_queries/views/viewDetailsFragment.js.map +1 -1
  15. package/dist/components/AttributePicker/AttributesList/AttributesList.js +3 -7
  16. package/dist/components/AttributePicker/AttributesList/AttributesList.js.map +1 -1
  17. package/dist/components/AttributesSelectionList/SelectedAttributesList/SelectedAttributesList.js +20 -12
  18. package/dist/components/AttributesSelectionList/SelectedAttributesList/SelectedAttributesList.js.map +1 -1
  19. package/dist/components/AttributesSelectionList/reducer/__mocks__/attributesSelectionListStateContext.d.ts +1 -1
  20. package/dist/components/AttributesSelectionList/sharedComponents.d.ts +159 -153
  21. package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/AttributesList.js +3 -7
  22. package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/AttributesList.js.map +1 -1
  23. package/dist/components/Explorer/DataView.d.ts +2 -0
  24. package/dist/components/Explorer/DataView.js +6 -3
  25. package/dist/components/Explorer/DataView.js.map +1 -1
  26. package/dist/components/Explorer/Explorer.d.ts +2 -0
  27. package/dist/components/Explorer/Explorer.js +7 -5
  28. package/dist/components/Explorer/Explorer.js.map +1 -1
  29. package/dist/components/Explorer/ExplorerFiltersAndSorts.js +1 -1
  30. package/dist/components/Explorer/ExplorerFiltersAndSorts.js.map +1 -1
  31. package/dist/components/Explorer/TableCell.js +15 -23
  32. package/dist/components/Explorer/TableCell.js.map +1 -1
  33. package/dist/components/Explorer/TableNameCell.js +3 -2
  34. package/dist/components/Explorer/TableNameCell.js.map +1 -1
  35. package/dist/components/Explorer/_queries/useExplorerData.d.ts +7 -7
  36. package/dist/components/Explorer/_queries/useExplorerData.js +19 -7
  37. package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -1
  38. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js +3 -2
  39. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -1
  40. package/dist/components/Explorer/actions-item/useReplaceItemAction.d.ts +2 -1
  41. package/dist/components/Explorer/actions-item/useReplaceItemAction.js +5 -4
  42. package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
  43. package/dist/components/Explorer/actions-mass/edit-attribute/EditTreeAttributeValueLine.d.ts +2 -4
  44. package/dist/components/Explorer/actions-mass/edit-attribute/EditTreeAttributeValueLine.js +18 -16
  45. package/dist/components/Explorer/actions-mass/edit-attribute/EditTreeAttributeValueLine.js.map +1 -1
  46. package/dist/components/Explorer/actions-mass/edit-attribute/EditTreeAttributeValuesMapping.js +2 -2
  47. package/dist/components/Explorer/actions-mass/edit-attribute/EditTreeAttributeValuesMapping.js.map +1 -1
  48. package/dist/components/Explorer/actions-mass/edit-attribute/useListEditableAttributeHook.js +9 -1
  49. package/dist/components/Explorer/actions-mass/edit-attribute/useListEditableAttributeHook.js.map +1 -1
  50. package/dist/components/Explorer/actions-mass/edit-attribute/useListTreeAttributeValuesHook.d.ts +10 -3
  51. package/dist/components/Explorer/actions-mass/edit-attribute/useListTreeAttributeValuesHook.js +16 -6
  52. package/dist/components/Explorer/actions-mass/edit-attribute/useListTreeAttributeValuesHook.js.map +1 -1
  53. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.d.ts +10 -0
  54. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js +46 -0
  55. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js.map +1 -0
  56. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.d.ts +1 -0
  57. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js +17 -0
  58. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js.map +1 -0
  59. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.d.ts +8 -0
  60. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js +49 -0
  61. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js.map +1 -0
  62. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.d.ts +27 -0
  63. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js +48 -0
  64. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js.map +1 -0
  65. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js +3 -2
  66. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js.map +1 -1
  67. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +3 -2
  68. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
  69. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js +3 -2
  70. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js.map +1 -1
  71. package/dist/components/Explorer/actions-mass/useExportMassAction.d.ts +7 -4
  72. package/dist/components/Explorer/actions-mass/useExportMassAction.js +80 -73
  73. package/dist/components/Explorer/actions-mass/useExportMassAction.js.map +1 -1
  74. package/dist/components/Explorer/actions-mass/useMassActions.js +3 -2
  75. package/dist/components/Explorer/actions-mass/useMassActions.js.map +1 -1
  76. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +3 -2
  77. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
  78. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +2 -1
  79. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +5 -4
  80. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
  81. package/dist/components/Explorer/link-item/LinkModal.d.ts +1 -0
  82. package/dist/components/Explorer/link-item/LinkModal.js +2 -2
  83. package/dist/components/Explorer/link-item/LinkModal.js.map +1 -1
  84. package/dist/components/Explorer/list-saved-views/SavedViews.js +4 -3
  85. package/dist/components/Explorer/list-saved-views/SavedViews.js.map +1 -1
  86. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js +5 -8
  87. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js.map +1 -1
  88. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js +3 -2
  89. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js.map +1 -1
  90. package/dist/components/Explorer/manage-view-settings/configure-display/view-type/SelectViewType.js +2 -2
  91. package/dist/components/Explorer/manage-view-settings/configure-display/view-type/SelectViewType.js.map +1 -1
  92. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js +7 -6
  93. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js.map +1 -1
  94. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js +3 -2
  95. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js.map +1 -1
  96. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js +5 -4
  97. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js.map +1 -1
  98. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js +3 -2
  99. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js.map +1 -1
  100. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js +3 -2
  101. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js.map +1 -1
  102. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js +3 -2
  103. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js.map +1 -1
  104. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js +3 -0
  105. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js.map +1 -1
  106. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js +3 -2
  107. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js.map +1 -1
  108. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js +4 -3
  109. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js.map +1 -1
  110. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js +3 -2
  111. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js.map +1 -1
  112. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js +3 -2
  113. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js.map +1 -1
  114. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js +3 -2
  115. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js.map +1 -1
  116. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js +3 -2
  117. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js.map +1 -1
  118. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js +7 -6
  119. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js.map +1 -1
  120. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js +3 -2
  121. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js.map +1 -1
  122. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js.map +1 -1
  123. package/dist/components/Explorer/useSearchInput.js +6 -2
  124. package/dist/components/Explorer/useSearchInput.js.map +1 -1
  125. package/dist/components/Filters/FiltersProvider.d.ts +2 -2
  126. package/dist/components/Filters/FiltersProvider.js.map +1 -1
  127. package/dist/components/Filters/_types.d.ts +3 -0
  128. package/dist/components/Filters/_types.js.map +1 -1
  129. package/dist/components/Filters/context/filtersReducer.js +7 -4
  130. package/dist/components/Filters/context/filtersReducer.js.map +1 -1
  131. package/dist/components/Filters/filter-items/CommonFilterItem.d.ts +1 -0
  132. package/dist/components/Filters/filter-items/CommonFilterItem.js +28 -8
  133. package/dist/components/Filters/filter-items/CommonFilterItem.js.map +1 -1
  134. package/dist/components/Filters/filter-items/EmptyValueCheckbox.d.ts +8 -0
  135. package/dist/components/Filters/filter-items/EmptyValueCheckbox.js +16 -0
  136. package/dist/components/Filters/filter-items/EmptyValueCheckbox.js.map +1 -0
  137. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js +23 -9
  138. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js.map +1 -1
  139. package/dist/components/Filters/filter-items/filter-type/ColorAttributeDropDown.js +9 -8
  140. package/dist/components/Filters/filter-items/filter-type/ColorAttributeDropDown.js.map +1 -1
  141. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js +4 -3
  142. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js.map +1 -1
  143. package/dist/components/Filters/filter-items/filter-type/FilterDropdownContent.js +1 -1
  144. package/dist/components/Filters/filter-items/filter-type/FilterDropdownContent.js.map +1 -1
  145. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.d.ts +0 -1
  146. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js +17 -23
  147. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js.map +1 -1
  148. package/dist/components/Filters/filter-items/filter-type/TreeAttributeDropDown.js +10 -12
  149. package/dist/components/Filters/filter-items/filter-type/TreeAttributeDropDown.js.map +1 -1
  150. package/dist/components/Filters/filter-items/filter-type/useConditionOptionsByType.js +3 -13
  151. package/dist/components/Filters/filter-items/filter-type/useConditionOptionsByType.js.map +1 -1
  152. package/dist/components/Filters/index.d.ts +1 -0
  153. package/dist/components/Filters/index.js +1 -0
  154. package/dist/components/Filters/index.js.map +1 -1
  155. package/dist/components/Filters/prepareFiltersForRequest.js +36 -3
  156. package/dist/components/Filters/prepareFiltersForRequest.js.map +1 -1
  157. package/dist/components/Filters/useFilters.d.ts +5 -0
  158. package/dist/components/Filters/useTransformFilters.js +4 -0
  159. package/dist/components/Filters/useTransformFilters.js.map +1 -1
  160. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.d.ts +1 -3
  161. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js +6 -2
  162. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js.map +1 -1
  163. package/dist/components/LibraryItemsList/FiltersPanel/FiltersOptions.js +1 -8
  164. package/dist/components/LibraryItemsList/FiltersPanel/FiltersOptions.js.map +1 -1
  165. package/dist/components/LibraryItemsList/FiltersPanel/FiltersPanel.js +15 -17
  166. package/dist/components/LibraryItemsList/FiltersPanel/FiltersPanel.js.map +1 -1
  167. package/dist/components/LibraryItemsList/LibraryItemsListTable/ChooseTableColumns/ChooseTableColumns.js +0 -6
  168. package/dist/components/LibraryItemsList/LibraryItemsListTable/ChooseTableColumns/ChooseTableColumns.js.map +1 -1
  169. package/dist/components/LibraryItemsList/MenuView/MenuView.js +4 -4
  170. package/dist/components/LibraryItemsList/MenuView/MenuView.js.map +1 -1
  171. package/dist/components/LibraryItemsList/ViewPanel/View/View.d.ts +1 -3
  172. package/dist/components/LibraryItemsList/ViewPanel/View/View.js +9 -4
  173. package/dist/components/LibraryItemsList/ViewPanel/View/View.js.map +1 -1
  174. package/dist/components/LibraryItemsList/ViewPanel/ViewPanel.js +36 -14
  175. package/dist/components/LibraryItemsList/ViewPanel/ViewPanel.js.map +1 -1
  176. package/dist/components/Notifications/hooks/useNotificationSubscription.js +3 -2
  177. package/dist/components/Notifications/hooks/useNotificationSubscription.js.map +1 -1
  178. package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +1 -0
  179. package/dist/components/RecordEdition/EditRecord/EditRecord.js +3 -3
  180. package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
  181. package/dist/components/RecordEdition/EditRecordContent/antdUtils.js +2 -0
  182. package/dist/components/RecordEdition/EditRecordContent/antdUtils.js.map +1 -1
  183. package/dist/components/RecordEdition/EditRecordContent/hooks/__mocks__/useDeleteValueMutation.d.ts +1 -1
  184. package/dist/components/RecordEdition/EditRecordContent/hooks/__mocks__/useSaveValueMutation.d.ts +1 -1
  185. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js +5 -20
  186. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js.map +1 -1
  187. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.d.ts +1 -11
  188. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +8 -95
  189. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
  190. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/_types.d.ts +8 -0
  191. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/_types.js +2 -0
  192. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/_types.js.map +1 -0
  193. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/LinkFieldExplorer.d.ts +6 -0
  194. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/LinkFieldExplorer.js +77 -0
  195. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/LinkFieldExplorer.js.map +1 -0
  196. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record → explorer/link-record}/useExplorerLinkRecords.d.ts +5 -7
  197. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record → explorer/link-record}/useExplorerLinkRecords.js +3 -10
  198. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/link-record/useExplorerLinkRecords.js.map +1 -0
  199. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record → explorer/link-record}/useLinkRecords.d.ts +5 -6
  200. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/link-record/useLinkRecords.js +98 -0
  201. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/explorer/link-record/useLinkRecords.js.map +1 -0
  202. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/{ExplorerWrapper.d.ts → InputExtraAlignLeft.d.ts} +54 -52
  203. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/{link-record/ActionButton.js → shared/InputExtraAlignLeft.js} +4 -4
  204. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/InputExtraAlignLeft.js.map +1 -0
  205. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/InputWrapper.d.ts +3 -0
  206. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/InputWrapper.js +31 -0
  207. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/InputWrapper.js.map +1 -0
  208. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/Wrapper.d.ts +3 -0
  209. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/Wrapper.js +8 -0
  210. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/Wrapper.js.map +1 -0
  211. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/LinkFieldTags.d.ts +3 -0
  212. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/LinkFieldTags.js +57 -0
  213. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/LinkFieldTags.js.map +1 -0
  214. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.d.ts +16 -0
  215. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.js +85 -0
  216. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.js.map +1 -0
  217. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/unlink-record/useUnlinkRecord.d.ts +19 -0
  218. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/unlink-record/useUnlinkRecord.js +43 -0
  219. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/unlink-record/useUnlinkRecord.js.map +1 -0
  220. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/unlink-all-records/useUnlinkAllRecords.d.ts +16 -0
  221. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/unlink-all-records/useUnlinkAllRecords.js +27 -0
  222. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/unlink-all-records/useUnlinkAllRecords.js.map +1 -0
  223. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +4 -3
  224. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  225. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js +1 -1
  226. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js.map +1 -1
  227. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js +2 -0
  228. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js.map +1 -1
  229. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +9 -2
  230. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
  231. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeFieldWrapper.d.ts +53 -51
  232. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js +3 -2
  233. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js.map +1 -1
  234. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.d.ts +2 -1
  235. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js +4 -7
  236. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js.map +1 -1
  237. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.d.ts +3 -2
  238. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js +2 -2
  239. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js.map +1 -1
  240. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js +3 -2
  241. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -1
  242. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.d.ts +1 -0
  243. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +2 -2
  244. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
  245. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js +3 -2
  246. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js.map +1 -1
  247. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +4 -3
  248. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -1
  249. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js +3 -2
  250. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js.map +1 -1
  251. package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js +2 -2
  252. package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js.map +1 -1
  253. package/dist/components/RecordHistory/RecordHistoryLogEntry.js +10 -2
  254. package/dist/components/RecordHistory/RecordHistoryLogEntry.js.map +1 -1
  255. package/dist/components/RecordHistory/_queries/recordHistoryQuery.d.ts +7 -0
  256. package/dist/components/RecordHistory/_queries/recordHistoryQuery.js +64 -0
  257. package/dist/components/RecordHistory/_queries/recordHistoryQuery.js.map +1 -0
  258. package/dist/components/RecordHistory/hooks/useFetchRecordHistory.js +5 -2
  259. package/dist/components/RecordHistory/hooks/useFetchRecordHistory.js.map +1 -1
  260. package/dist/components/RecordHistory/utils/extendedAttribute.d.ts +11 -0
  261. package/dist/components/RecordHistory/utils/extendedAttribute.js +40 -0
  262. package/dist/components/RecordHistory/utils/extendedAttribute.js.map +1 -0
  263. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +1 -0
  264. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +7 -7
  265. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
  266. package/dist/components/SelectTreeNode/SelectTreeNode.d.ts +2 -1
  267. package/dist/components/SelectTreeNode/SelectTreeNode.js +3 -3
  268. package/dist/components/SelectTreeNode/SelectTreeNode.js.map +1 -1
  269. package/dist/components/SelectTreeNode/SelectTreeNodeContent.d.ts +2 -1
  270. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js +6 -2
  271. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js.map +1 -1
  272. package/dist/components/SelectTreeNode/TreeNodeTitle.js +5 -4
  273. package/dist/components/SelectTreeNode/TreeNodeTitle.js.map +1 -1
  274. package/dist/constants.d.ts +1 -0
  275. package/dist/constants.js +1 -0
  276. package/dist/constants.js.map +1 -1
  277. package/dist/hooks/useIFrameMessenger/messageHandlers.d.ts +3 -1
  278. package/dist/hooks/useIFrameMessenger/messageHandlers.js +16 -0
  279. package/dist/hooks/useIFrameMessenger/messageHandlers.js.map +1 -1
  280. package/dist/hooks/useIFrameMessenger/schema.d.ts +6 -3
  281. package/dist/hooks/useIFrameMessenger/schema.js +2 -1
  282. package/dist/hooks/useIFrameMessenger/schema.js.map +1 -1
  283. package/dist/hooks/useIFrameMessenger/types.d.ts +32 -2
  284. package/dist/hooks/useIFrameMessenger/types.js.map +1 -1
  285. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.d.ts +2 -0
  286. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js +16 -2
  287. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js.map +1 -1
  288. package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.d.ts +2 -0
  289. package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.d.ts +2 -0
  290. package/dist/locales/en/shared.json +20 -4
  291. package/dist/locales/fr/shared.json +20 -4
  292. package/dist/types/records.d.ts +1 -0
  293. package/dist/types/records.js.map +1 -1
  294. package/package.json +40 -42
  295. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/ActionButton.d.ts +0 -3
  296. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/ActionButton.js.map +0 -1
  297. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useExplorerLinkRecords.js.map +0 -1
  298. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js +0 -100
  299. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js.map +0 -1
  300. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js +0 -13
  301. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js.map +0 -1
@@ -54,6 +54,11 @@ export const attributeDetailsFragment = gql `
54
54
  id
55
55
  label
56
56
  }
57
+ permissions_conf_dependent_values {
58
+ dependenciesTreeAttributes {
59
+ id
60
+ }
61
+ }
57
62
  }
58
63
  }
59
64
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"attributeDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/attributes/attributeDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAEnC,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsD1C,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 {gql} from '@apollo/client';\n\nexport const attributeDetailsFragment = gql`\n fragment AttributeDetails on Attribute {\n id\n type\n format\n system\n readonly\n label\n description\n required\n multiple_values\n multi_link_display_option\n multi_tree_display_option\n metadata_fields {\n id\n label\n type\n format\n }\n versions_conf {\n versionable\n mode\n profile {\n id\n label\n trees {\n id\n label\n }\n }\n }\n libraries {\n id\n label\n }\n\n ... on StandardAttribute {\n unique\n }\n\n ... on LinkAttribute {\n linked_library {\n id\n label\n }\n reverse_link\n }\n ... on TreeAttribute {\n linked_tree {\n id\n label\n }\n }\n }\n`;\n"]}
1
+ {"version":3,"file":"attributeDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/attributes/attributeDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAEnC,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2D1C,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 {gql} from '@apollo/client';\n\nexport const attributeDetailsFragment = gql`\n fragment AttributeDetails on Attribute {\n id\n type\n format\n system\n readonly\n label\n description\n required\n multiple_values\n multi_link_display_option\n multi_tree_display_option\n metadata_fields {\n id\n label\n type\n format\n }\n versions_conf {\n versionable\n mode\n profile {\n id\n label\n trees {\n id\n label\n }\n }\n }\n libraries {\n id\n label\n }\n\n ... on StandardAttribute {\n unique\n }\n\n ... on LinkAttribute {\n linked_library {\n id\n label\n }\n reverse_link\n }\n ... on TreeAttribute {\n linked_tree {\n id\n label\n }\n permissions_conf_dependent_values {\n dependenciesTreeAttributes {\n id\n }\n }\n }\n }\n`;\n"]}
@@ -74,6 +74,7 @@ export const libraryDetailsFragment = gql `
74
74
  color
75
75
  preview
76
76
  treeColorPreview
77
+ parentContext
77
78
  }
78
79
  permissions {
79
80
  admin_library
@@ -1 +1 @@
1
- {"version":3,"file":"libraryDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/libraries/libraryDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAA;MACnC,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsF3B,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '../../gqlFragments';\n\nexport const libraryDetailsFragment = gql`\n ${recordIdentityFragment}\n\n fragment LibraryLinkAttributeDetails on LinkAttribute {\n linked_library {\n id\n behavior\n }\n }\n\n fragment LibraryTreeAttributeDetails on TreeAttribute {\n linked_tree {\n id\n }\n }\n\n fragment LibraryAttributes on Attribute {\n id\n label\n system\n type\n format\n ...LibraryLinkAttributeDetails\n ...LibraryTreeAttributeDetails\n }\n\n fragment LibraryPreviewsSettings on LibraryPreviewsSettings {\n label\n description\n system\n versions {\n background\n density\n sizes {\n name\n size\n }\n }\n }\n\n fragment LibraryDetails on Library {\n id\n label\n behavior\n system\n label\n fullTextAttributes {\n id\n label\n }\n attributes {\n ...LibraryAttributes\n }\n permissions_conf {\n permissionTreeAttributes {\n id\n ... on TreeAttribute {\n linked_tree {\n id\n }\n }\n label\n }\n relation\n }\n recordIdentityConf {\n label\n subLabel\n color\n preview\n treeColorPreview\n }\n permissions {\n admin_library\n access_library\n access_record\n create_record\n edit_record\n delete_record\n }\n icon {\n ...RecordIdentity\n }\n previewsSettings {\n ...LibraryPreviewsSettings\n }\n }\n`;\n"]}
1
+ {"version":3,"file":"libraryDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/libraries/libraryDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAA;MACnC,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuF3B,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '../../gqlFragments';\n\nexport const libraryDetailsFragment = gql`\n ${recordIdentityFragment}\n\n fragment LibraryLinkAttributeDetails on LinkAttribute {\n linked_library {\n id\n behavior\n }\n }\n\n fragment LibraryTreeAttributeDetails on TreeAttribute {\n linked_tree {\n id\n }\n }\n\n fragment LibraryAttributes on Attribute {\n id\n label\n system\n type\n format\n ...LibraryLinkAttributeDetails\n ...LibraryTreeAttributeDetails\n }\n\n fragment LibraryPreviewsSettings on LibraryPreviewsSettings {\n label\n description\n system\n versions {\n background\n density\n sizes {\n name\n size\n }\n }\n }\n\n fragment LibraryDetails on Library {\n id\n label\n behavior\n system\n label\n fullTextAttributes {\n id\n label\n }\n attributes {\n ...LibraryAttributes\n }\n permissions_conf {\n permissionTreeAttributes {\n id\n ... on TreeAttribute {\n linked_tree {\n id\n }\n }\n label\n }\n relation\n }\n recordIdentityConf {\n label\n subLabel\n color\n preview\n treeColorPreview\n parentContext\n }\n permissions {\n admin_library\n access_library\n access_record\n create_record\n edit_record\n delete_record\n }\n icon {\n ...RecordIdentity\n }\n previewsSettings {\n ...LibraryPreviewsSettings\n }\n }\n`;\n"]}
@@ -41,12 +41,14 @@ export const getTreeNodeChildrenQuery = gql `
41
41
  $node: ID
42
42
  $pagination: Pagination
43
43
  $childrenAsRecordValuePermissionFilter: ChildrenAsRecordValuePermissionFilterInput
44
+ $dependentValuesPermissionFilter: DependentValuesPermissionFilterInput
44
45
  ) {
45
46
  treeNodeChildren(
46
47
  treeId: $treeId
47
48
  node: $node
48
49
  pagination: $pagination
49
50
  childrenAsRecordValuePermissionFilter: $childrenAsRecordValuePermissionFilter
51
+ dependentValuesPermissionFilter: $dependentValuesPermissionFilter
50
52
  ) {
51
53
  totalCount
52
54
  list {
@@ -1 +1 @@
1
- {"version":3,"file":"treeNodeChildrenQuery.js","sourceRoot":"","sources":["../../../src/_queries/trees/treeNodeChildrenQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAA;MACrC,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD3B,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '../../gqlFragments';\n\nexport const getTreeNodeChildrenQuery = gql`\n ${recordIdentityFragment}\n\n fragment TreeNodeChild on TreeNodeLight {\n id\n order\n childrenCount\n record {\n ...RecordIdentity\n active: property(attribute: \"active\") {\n ... on Value {\n value\n }\n }\n }\n ancestors {\n id\n record {\n id\n library {\n id\n label\n }\n ...RecordIdentity\n }\n }\n permissions {\n access_tree\n detach\n edit_children\n }\n }\n\n query TREE_NODE_CHILDREN(\n $treeId: ID!\n $node: ID\n $pagination: Pagination\n $childrenAsRecordValuePermissionFilter: ChildrenAsRecordValuePermissionFilterInput\n ) {\n treeNodeChildren(\n treeId: $treeId\n node: $node\n pagination: $pagination\n childrenAsRecordValuePermissionFilter: $childrenAsRecordValuePermissionFilter\n ) {\n totalCount\n list {\n ...TreeNodeChild\n }\n }\n }\n`;\n"]}
1
+ {"version":3,"file":"treeNodeChildrenQuery.js","sourceRoot":"","sources":["../../../src/_queries/trees/treeNodeChildrenQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAA;MACrC,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoD3B,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '../../gqlFragments';\n\nexport const getTreeNodeChildrenQuery = gql`\n ${recordIdentityFragment}\n\n fragment TreeNodeChild on TreeNodeLight {\n id\n order\n childrenCount\n record {\n ...RecordIdentity\n active: property(attribute: \"active\") {\n ... on Value {\n value\n }\n }\n }\n ancestors {\n id\n record {\n id\n library {\n id\n label\n }\n ...RecordIdentity\n }\n }\n permissions {\n access_tree\n detach\n edit_children\n }\n }\n\n query TREE_NODE_CHILDREN(\n $treeId: ID!\n $node: ID\n $pagination: Pagination\n $childrenAsRecordValuePermissionFilter: ChildrenAsRecordValuePermissionFilterInput\n $dependentValuesPermissionFilter: DependentValuesPermissionFilterInput\n ) {\n treeNodeChildren(\n treeId: $treeId\n node: $node\n pagination: $pagination\n childrenAsRecordValuePermissionFilter: $childrenAsRecordValuePermissionFilter\n dependentValuesPermissionFilter: $dependentValuesPermissionFilter\n ) {\n totalCount\n list {\n ...TreeNodeChild\n }\n }\n }\n`;\n"]}
@@ -14,6 +14,7 @@ const viewDetailsFragment = gql `
14
14
  }
15
15
  condition
16
16
  operator
17
+ withEmptyValues
17
18
  }
18
19
 
19
20
  fragment ViewDetails on View {
@@ -1 +1 @@
1
- {"version":3,"file":"viewDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/views/viewDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AAExD,MAAM,mBAAmB,GAAG,GAAG,CAAA;MACzB,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoD3B,CAAC;AAEF,eAAe,mBAAmB,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '_ui/gqlFragments';\n\nconst viewDetailsFragment = gql`\n ${recordIdentityFragment}\n fragment ViewDetailsFilter on RecordFilter {\n field\n value\n tree {\n id\n label\n }\n condition\n operator\n }\n\n fragment ViewDetails on View {\n id\n display {\n size\n type\n }\n shared\n created_by {\n id\n whoAmI {\n id\n label\n library {\n id\n }\n }\n }\n label\n description\n color\n filters {\n ...ViewDetailsFilter\n }\n sort {\n field\n order\n }\n valuesVersions {\n treeId\n treeNode {\n id\n record {\n ...RecordIdentity\n }\n }\n }\n attributes {\n id\n }\n }\n`;\n\nexport default viewDetailsFragment;\n"]}
1
+ {"version":3,"file":"viewDetailsFragment.js","sourceRoot":"","sources":["../../../src/_queries/views/viewDetailsFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AAExD,MAAM,mBAAmB,GAAG,GAAG,CAAA;MACzB,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD3B,CAAC;AAEF,eAAe,mBAAmB,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 {gql} from '@apollo/client';\nimport {recordIdentityFragment} from '_ui/gqlFragments';\n\nconst viewDetailsFragment = gql`\n ${recordIdentityFragment}\n fragment ViewDetailsFilter on RecordFilter {\n field\n value\n tree {\n id\n label\n }\n condition\n operator\n withEmptyValues\n }\n\n fragment ViewDetails on View {\n id\n display {\n size\n type\n }\n shared\n created_by {\n id\n whoAmI {\n id\n label\n library {\n id\n }\n }\n }\n label\n description\n color\n filters {\n ...ViewDetailsFilter\n }\n sort {\n field\n order\n }\n valuesVersions {\n treeId\n treeNode {\n id\n record {\n ...RecordIdentity\n }\n }\n }\n attributes {\n id\n }\n }\n`;\n\nexport default viewDetailsFragment;\n"]}
@@ -6,7 +6,7 @@ import { PlusOutlined, SearchOutlined } from '@ant-design/icons';
6
6
  import { useApolloClient } from '@apollo/client';
7
7
  import { localizedTranslation } from '@leav/utils';
8
8
  import { Table } from 'antd';
9
- import { KitButton, KitInput, KitTag } from 'aristid-ds';
9
+ import { KitButton, KitIdCard, KitInput, KitTag } from 'aristid-ds';
10
10
  import { useEffect, useRef, useState } from 'react';
11
11
  import styled from 'styled-components';
12
12
  import { defaultPaginationPageSize, PreviewSize, tagColorByAttributeFormat, tagColorByAttributeType, } from '../../../constants';
@@ -153,9 +153,7 @@ function AttributesList({ onSelect, selected = [], multiple = true, showCreateBu
153
153
  render: (type) => (_jsx(KitTag, { style: {
154
154
  borderColor: tagColorByAttributeType[type][0],
155
155
  backgroundColor: tagColorByAttributeType[type][1],
156
- }, idCardProps: {
157
- description: t(`attributes.type_${type}`),
158
- } })),
156
+ }, children: _jsx(KitIdCard, { description: t(`attributes.type_${type}`) }) })),
159
157
  filters: Object.values(AttributeType).map(type => ({
160
158
  text: t(`attributes.type_${type}`),
161
159
  value: type,
@@ -175,9 +173,7 @@ function AttributesList({ onSelect, selected = [], multiple = true, showCreateBu
175
173
  render: (format) => format ? (_jsx(KitTag, { style: {
176
174
  borderColor: tagColorByAttributeFormat[format][0],
177
175
  backgroundColor: tagColorByAttributeFormat[format][1],
178
- }, idCardProps: {
179
- description: t(`attributes.format_${format}`),
180
- } })) : null,
176
+ }, children: _jsx(KitIdCard, { description: t(`attributes.format_${format}`) }) })) : null,
181
177
  filters: Object.values(AttributeFormat).map(format => ({
182
178
  text: t(`attributes.format_${format}`),
183
179
  value: format,
@@ -1 +1 @@
1
- {"version":3,"file":"AttributesList.js","sourceRoot":"","sources":["../../../../src/components/AttributePicker/AttributesList/AttributesList.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 {PlusOutlined, SearchOutlined} from '@ant-design/icons';\nimport {useApolloClient} from '@apollo/client';\nimport {localizedTranslation, type Override} from '@leav/utils';\nimport {Table, type TableColumnsType, type TablePaginationConfig} from 'antd';\nimport {type FilterValue, type SorterResult} from 'antd/lib/table/interface';\nimport {KitButton, KitInput, KitTag} from 'aristid-ds';\nimport {type Key, useEffect, useRef, useState} from 'react';\nimport styled from 'styled-components';\nimport {\n defaultPaginationPageSize,\n PreviewSize,\n tagColorByAttributeFormat,\n tagColorByAttributeType,\n} from '../../../constants';\nimport {useLang} from '../../../hooks';\nimport {useSharedTranslation} from '../../../hooks/useSharedTranslation';\nimport {\n type AttributeDetailsFragment,\n AttributeFormat,\n AttributesSortableFields,\n AttributeType,\n type GetAttributesQuery,\n type GetAttributesQueryVariables,\n PermissionsActions,\n PermissionTypes,\n SortOrder,\n useGetAttributesQuery,\n useIsAllowedQuery,\n} from '../../../_gqlTypes';\nimport {getAttributesQuery} from '../../../_queries/attributes/getAttributesQuery';\nimport {extractPermissionFromQuery} from '../../../_utils';\nimport {EditAttributeModal} from '../../EditAttributeModal';\nimport {EntityCard, type IEntityData} from '../../EntityCard';\nimport {ErrorDisplay} from '../../ErrorDisplay';\n\nconst HeaderWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 0.5rem;\n\n .kit-input-wrapper {\n flex-grow: 1;\n }\n`;\n\ntype ListAttributeType = Override<GetAttributesQuery['attributes']['list'][number], {label: string}> & {key: string};\n\ninterface IAttributesListProps {\n onSelect: (selectedAttributes: string[]) => void;\n selected?: string[];\n multiple?: boolean;\n showCreateButton?: boolean;\n baseFilters?: GetAttributesQueryVariables['filters'];\n}\n\nfunction AttributesList({\n onSelect,\n selected = [],\n multiple = true,\n showCreateButton = true,\n baseFilters,\n}: IAttributesListProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [pageSize, setPageSize] = useState(defaultPaginationPageSize);\n const [currentPage, setCurrentPage] = useState(1);\n const [sort, setSort] = useState<GetAttributesQueryVariables['sort']>();\n const [filters, setFilters] = useState<GetAttributesQueryVariables['filters']>({});\n const [tableData, setTableData] = useState<ListAttributeType[]>([]);\n\n const {loading, error, data} = useGetAttributesQuery({\n variables: {\n pagination: {\n limit: pageSize,\n offset: (currentPage - 1) * pageSize,\n },\n sort,\n filters: {\n ...filters,\n ...baseFilters,\n },\n },\n });\n\n const isAllowedQueryResult = useIsAllowedQuery({\n fetchPolicy: 'cache-and-network',\n variables: {\n type: PermissionTypes.admin,\n actions: [PermissionsActions.admin_create_attribute],\n },\n });\n const canCreate =\n showCreateButton && extractPermissionFromQuery(isAllowedQueryResult, PermissionsActions.admin_create_attribute);\n\n const [selectedRowKeys, setSelectedRowKeys] = useState<Key[]>(selected);\n const [isNewAttributeModalOpen, setIsNewAttributeModalOpen] = useState(false);\n const client = useApolloClient();\n\n const _handleSelectionChange = (selection: Key[]) => {\n setSelectedRowKeys(selection);\n onSelect(selection as string[]);\n };\n\n const _handleRowClick = (record: ListAttributeType) => {\n let newSelection;\n\n if (selectedRowKeys.indexOf(record.key) === -1) {\n newSelection = multiple ? [...selectedRowKeys, record.key] : [record.key]; // Add to selection\n } else {\n newSelection = multiple ? selectedRowKeys.filter(key => key !== record.key) : []; // Remove from selection\n }\n\n setSelectedRowKeys(newSelection);\n onSelect(newSelection as string[]);\n };\n\n const _handleSearchSubmit = (e: React.SyntheticEvent<HTMLInputElement>) => {\n setFilters({\n ...filters,\n label: `%${e.currentTarget.value}%`,\n });\n };\n\n const _handleSearchChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n // Handle clearing input only. Submitting input is otherwise handled by \"onPressEnter\"\n if (!e.currentTarget.value) {\n _handleSearchSubmit(e);\n }\n };\n\n const _handleClickNewAttribute = () => {\n setIsNewAttributeModalOpen(true);\n };\n const _handleCloseNewAttribute = () => setIsNewAttributeModalOpen(false);\n\n const _handlePostCreate = async (newAttribute: AttributeDetailsFragment) => {\n const allAttributesData = client.readQuery<GetAttributesQuery>({query: getAttributesQuery});\n\n if (allAttributesData) {\n client.writeQuery({\n query: getAttributesQuery,\n data: {\n attributes: {\n ...allAttributesData.attributes,\n list: [newAttribute, ...allAttributesData.attributes.list],\n },\n },\n });\n }\n const newSelection = [...selectedRowKeys, newAttribute.id];\n onSelect(newSelection as string[]);\n setSelectedRowKeys(newSelection);\n };\n\n const _handleChange = (\n pagination: TablePaginationConfig,\n filter: Record<string, FilterValue | null>,\n sorter: SorterResult<ListAttributeType> | Array<SorterResult<ListAttributeType>>,\n ) => {\n setCurrentPage(pagination.current);\n setPageSize(pagination.pageSize);\n\n const relevantSorter = Array.isArray(sorter) ? sorter[0] : sorter;\n if (relevantSorter.column && relevantSorter.order) {\n const newSort = {\n field: AttributesSortableFields[relevantSorter.columnKey],\n order: relevantSorter.order === 'ascend' ? SortOrder.asc : SortOrder.desc,\n };\n setSort(newSort);\n }\n\n const newFilters: GetAttributesQueryVariables['filters'] = {};\n for (const [field, filterValue] of Object.entries(filter)) {\n if (filterValue) {\n newFilters[field] = filterValue;\n }\n }\n setFilters(newFilters);\n };\n\n if (error || isAllowedQueryResult.error) {\n return <ErrorDisplay message={error?.message || isAllowedQueryResult?.error?.message} />;\n }\n\n const columns: TableColumnsType<ListAttributeType> = [\n {\n title: t('attributes.attribute'),\n key: 'attribute',\n render: (_, attribute) => {\n const attributeIdentity: IEntityData = {\n label: attribute.label,\n subLabel: attribute.id,\n preview: null,\n color: null,\n };\n return <EntityCard entity={attributeIdentity} size={PreviewSize.SMALL} />;\n },\n },\n {\n title: t('attributes.type'),\n dataIndex: 'type',\n key: 'type',\n width: '150px',\n render: (type: AttributeType) => (\n <KitTag\n style={{\n borderColor: tagColorByAttributeType[type][0],\n backgroundColor: tagColorByAttributeType[type][1],\n }}\n idCardProps={{\n description: t(`attributes.type_${type}`),\n }}\n />\n ),\n filters: Object.values(AttributeType).map(type => ({\n text: t(`attributes.type_${type}`),\n value: type,\n })),\n onFilter: (value, record) => record.type === value,\n sorter: (a, b) => {\n const aTypeLabel = t(`attributes.type_${a.type}`);\n const bTypeLabel = t(`attributes.type_${b.type}`);\n\n return aTypeLabel.localeCompare(bTypeLabel);\n },\n },\n {\n title: t('attributes.format'),\n dataIndex: 'format',\n key: 'format',\n width: '150px',\n render: (format: AttributeFormat) =>\n format ? (\n <KitTag\n style={{\n borderColor: tagColorByAttributeFormat[format][0],\n backgroundColor: tagColorByAttributeFormat[format][1],\n }}\n idCardProps={{\n description: t(`attributes.format_${format}`),\n }}\n />\n ) : null,\n filters: Object.values(AttributeFormat).map(format => ({\n text: t(`attributes.format_${format}`),\n value: format,\n })),\n onFilter: (value, record) => record.format === value,\n sorter: (a, b) => {\n const aFormatLabel = t(`attributes.format_${a.format}`);\n const bFormatLabel = t(`attributes.format_${b.format}`);\n\n return aFormatLabel.localeCompare(bFormatLabel);\n },\n },\n ];\n\n useEffect(() => {\n // To avoid temporary display of \"no data\" when pagination changes\n if (loading || !data) {\n return;\n }\n\n const newTableData = data?.attributes?.list\n ? [...data.attributes.list].map(attribute => ({\n ...attribute,\n key: attribute.id,\n label: localizedTranslation(attribute.label, lang),\n }))\n : [];\n\n setTableData(newTableData);\n }, [loading, data]);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n }, [inputRef]);\n\n const tableHeader = (\n <HeaderWrapper>\n <KitInput\n onPressEnter={_handleSearchSubmit}\n onChange={_handleSearchChange}\n placeholder={t('global.search') + '...'}\n allowClear\n suffix={<SearchOutlined />}\n // @ts-ignore - ref is a valid prop\n ref={inputRef}\n />\n {canCreate && (\n <KitButton type=\"primary\" icon={<PlusOutlined />} onClick={_handleClickNewAttribute}>\n {t('attributes.new_attribute')}\n </KitButton>\n )}\n </HeaderWrapper>\n );\n\n return (\n <>\n <Table\n loading={loading}\n size=\"middle\"\n rowSelection={{\n type: multiple ? 'checkbox' : 'radio',\n selectedRowKeys,\n onChange: _handleSelectionChange,\n }}\n columns={columns}\n dataSource={tableData}\n bordered\n pagination={{\n position: ['bottomCenter'],\n pageSize,\n current: currentPage,\n total: data?.attributes?.totalCount ?? 0,\n showTotal: total => t('global.total_count', {total}),\n }}\n scroll={{y: 'calc(95vh - 20rem)'}}\n title={() => tableHeader}\n onRow={record => ({\n onClick: () => _handleRowClick(record),\n })}\n onChange={_handleChange}\n />\n {isNewAttributeModalOpen && (\n <EditAttributeModal\n open={isNewAttributeModalOpen}\n onClose={_handleCloseNewAttribute}\n onPostCreate={_handlePostCreate}\n width={790}\n />\n )}\n </>\n );\n}\n\nexport default AttributesList;\n"]}
1
+ {"version":3,"file":"AttributesList.js","sourceRoot":"","sources":["../../../../src/components/AttributePicker/AttributesList/AttributesList.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 {PlusOutlined, SearchOutlined} from '@ant-design/icons';\nimport {useApolloClient} from '@apollo/client';\nimport {localizedTranslation, type Override} from '@leav/utils';\nimport {Table, type TableColumnsType, type TablePaginationConfig} from 'antd';\nimport {type FilterValue, type SorterResult} from 'antd/lib/table/interface';\nimport {KitButton, KitIdCard, KitInput, KitTag} from 'aristid-ds';\nimport {type Key, useEffect, useRef, useState} from 'react';\nimport styled from 'styled-components';\nimport {\n defaultPaginationPageSize,\n PreviewSize,\n tagColorByAttributeFormat,\n tagColorByAttributeType,\n} from '../../../constants';\nimport {useLang} from '../../../hooks';\nimport {useSharedTranslation} from '../../../hooks/useSharedTranslation';\nimport {\n type AttributeDetailsFragment,\n AttributeFormat,\n AttributesSortableFields,\n AttributeType,\n type GetAttributesQuery,\n type GetAttributesQueryVariables,\n PermissionsActions,\n PermissionTypes,\n SortOrder,\n useGetAttributesQuery,\n useIsAllowedQuery,\n} from '../../../_gqlTypes';\nimport {getAttributesQuery} from '../../../_queries/attributes/getAttributesQuery';\nimport {extractPermissionFromQuery} from '../../../_utils';\nimport {EditAttributeModal} from '../../EditAttributeModal';\nimport {EntityCard, type IEntityData} from '../../EntityCard';\nimport {ErrorDisplay} from '../../ErrorDisplay';\n\nconst HeaderWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 0.5rem;\n\n .kit-input-wrapper {\n flex-grow: 1;\n }\n`;\n\ntype ListAttributeType = Override<GetAttributesQuery['attributes']['list'][number], {label: string}> & {key: string};\n\ninterface IAttributesListProps {\n onSelect: (selectedAttributes: string[]) => void;\n selected?: string[];\n multiple?: boolean;\n showCreateButton?: boolean;\n baseFilters?: GetAttributesQueryVariables['filters'];\n}\n\nfunction AttributesList({\n onSelect,\n selected = [],\n multiple = true,\n showCreateButton = true,\n baseFilters,\n}: IAttributesListProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [pageSize, setPageSize] = useState(defaultPaginationPageSize);\n const [currentPage, setCurrentPage] = useState(1);\n const [sort, setSort] = useState<GetAttributesQueryVariables['sort']>();\n const [filters, setFilters] = useState<GetAttributesQueryVariables['filters']>({});\n const [tableData, setTableData] = useState<ListAttributeType[]>([]);\n\n const {loading, error, data} = useGetAttributesQuery({\n variables: {\n pagination: {\n limit: pageSize,\n offset: (currentPage - 1) * pageSize,\n },\n sort,\n filters: {\n ...filters,\n ...baseFilters,\n },\n },\n });\n\n const isAllowedQueryResult = useIsAllowedQuery({\n fetchPolicy: 'cache-and-network',\n variables: {\n type: PermissionTypes.admin,\n actions: [PermissionsActions.admin_create_attribute],\n },\n });\n const canCreate =\n showCreateButton && extractPermissionFromQuery(isAllowedQueryResult, PermissionsActions.admin_create_attribute);\n\n const [selectedRowKeys, setSelectedRowKeys] = useState<Key[]>(selected);\n const [isNewAttributeModalOpen, setIsNewAttributeModalOpen] = useState(false);\n const client = useApolloClient();\n\n const _handleSelectionChange = (selection: Key[]) => {\n setSelectedRowKeys(selection);\n onSelect(selection as string[]);\n };\n\n const _handleRowClick = (record: ListAttributeType) => {\n let newSelection;\n\n if (selectedRowKeys.indexOf(record.key) === -1) {\n newSelection = multiple ? [...selectedRowKeys, record.key] : [record.key]; // Add to selection\n } else {\n newSelection = multiple ? selectedRowKeys.filter(key => key !== record.key) : []; // Remove from selection\n }\n\n setSelectedRowKeys(newSelection);\n onSelect(newSelection as string[]);\n };\n\n const _handleSearchSubmit = (e: React.SyntheticEvent<HTMLInputElement>) => {\n setFilters({\n ...filters,\n label: `%${e.currentTarget.value}%`,\n });\n };\n\n const _handleSearchChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n // Handle clearing input only. Submitting input is otherwise handled by \"onPressEnter\"\n if (!e.currentTarget.value) {\n _handleSearchSubmit(e);\n }\n };\n\n const _handleClickNewAttribute = () => {\n setIsNewAttributeModalOpen(true);\n };\n const _handleCloseNewAttribute = () => setIsNewAttributeModalOpen(false);\n\n const _handlePostCreate = async (newAttribute: AttributeDetailsFragment) => {\n const allAttributesData = client.readQuery<GetAttributesQuery>({query: getAttributesQuery});\n\n if (allAttributesData) {\n client.writeQuery({\n query: getAttributesQuery,\n data: {\n attributes: {\n ...allAttributesData.attributes,\n list: [newAttribute, ...allAttributesData.attributes.list],\n },\n },\n });\n }\n const newSelection = [...selectedRowKeys, newAttribute.id];\n onSelect(newSelection as string[]);\n setSelectedRowKeys(newSelection);\n };\n\n const _handleChange = (\n pagination: TablePaginationConfig,\n filter: Record<string, FilterValue | null>,\n sorter: SorterResult<ListAttributeType> | Array<SorterResult<ListAttributeType>>,\n ) => {\n setCurrentPage(pagination.current);\n setPageSize(pagination.pageSize);\n\n const relevantSorter = Array.isArray(sorter) ? sorter[0] : sorter;\n if (relevantSorter.column && relevantSorter.order) {\n const newSort = {\n field: AttributesSortableFields[relevantSorter.columnKey],\n order: relevantSorter.order === 'ascend' ? SortOrder.asc : SortOrder.desc,\n };\n setSort(newSort);\n }\n\n const newFilters: GetAttributesQueryVariables['filters'] = {};\n for (const [field, filterValue] of Object.entries(filter)) {\n if (filterValue) {\n newFilters[field] = filterValue;\n }\n }\n setFilters(newFilters);\n };\n\n if (error || isAllowedQueryResult.error) {\n return <ErrorDisplay message={error?.message || isAllowedQueryResult?.error?.message} />;\n }\n\n const columns: TableColumnsType<ListAttributeType> = [\n {\n title: t('attributes.attribute'),\n key: 'attribute',\n render: (_, attribute) => {\n const attributeIdentity: IEntityData = {\n label: attribute.label,\n subLabel: attribute.id,\n preview: null,\n color: null,\n };\n return <EntityCard entity={attributeIdentity} size={PreviewSize.SMALL} />;\n },\n },\n {\n title: t('attributes.type'),\n dataIndex: 'type',\n key: 'type',\n width: '150px',\n render: (type: AttributeType) => (\n <KitTag\n style={{\n borderColor: tagColorByAttributeType[type][0],\n backgroundColor: tagColorByAttributeType[type][1],\n }}\n >\n <KitIdCard description={t(`attributes.type_${type}`)} />\n </KitTag>\n ),\n filters: Object.values(AttributeType).map(type => ({\n text: t(`attributes.type_${type}`),\n value: type,\n })),\n onFilter: (value, record) => record.type === value,\n sorter: (a, b) => {\n const aTypeLabel = t(`attributes.type_${a.type}`);\n const bTypeLabel = t(`attributes.type_${b.type}`);\n\n return aTypeLabel.localeCompare(bTypeLabel);\n },\n },\n {\n title: t('attributes.format'),\n dataIndex: 'format',\n key: 'format',\n width: '150px',\n render: (format: AttributeFormat) =>\n format ? (\n <KitTag\n style={{\n borderColor: tagColorByAttributeFormat[format][0],\n backgroundColor: tagColorByAttributeFormat[format][1],\n }}\n >\n <KitIdCard description={t(`attributes.format_${format}`)} />\n </KitTag>\n ) : null,\n filters: Object.values(AttributeFormat).map(format => ({\n text: t(`attributes.format_${format}`),\n value: format,\n })),\n onFilter: (value, record) => record.format === value,\n sorter: (a, b) => {\n const aFormatLabel = t(`attributes.format_${a.format}`);\n const bFormatLabel = t(`attributes.format_${b.format}`);\n\n return aFormatLabel.localeCompare(bFormatLabel);\n },\n },\n ];\n\n useEffect(() => {\n // To avoid temporary display of \"no data\" when pagination changes\n if (loading || !data) {\n return;\n }\n\n const newTableData = data?.attributes?.list\n ? [...data.attributes.list].map(attribute => ({\n ...attribute,\n key: attribute.id,\n label: localizedTranslation(attribute.label, lang),\n }))\n : [];\n\n setTableData(newTableData);\n }, [loading, data]);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n }, [inputRef]);\n\n const tableHeader = (\n <HeaderWrapper>\n <KitInput\n onPressEnter={_handleSearchSubmit}\n onChange={_handleSearchChange}\n placeholder={t('global.search') + '...'}\n allowClear\n suffix={<SearchOutlined />}\n // @ts-ignore - ref is a valid prop\n ref={inputRef}\n />\n {canCreate && (\n <KitButton type=\"primary\" icon={<PlusOutlined />} onClick={_handleClickNewAttribute}>\n {t('attributes.new_attribute')}\n </KitButton>\n )}\n </HeaderWrapper>\n );\n\n return (\n <>\n <Table\n loading={loading}\n size=\"middle\"\n rowSelection={{\n type: multiple ? 'checkbox' : 'radio',\n selectedRowKeys,\n onChange: _handleSelectionChange,\n }}\n columns={columns}\n dataSource={tableData}\n bordered\n pagination={{\n position: ['bottomCenter'],\n pageSize,\n current: currentPage,\n total: data?.attributes?.totalCount ?? 0,\n showTotal: total => t('global.total_count', {total}),\n }}\n scroll={{y: 'calc(95vh - 20rem)'}}\n title={() => tableHeader}\n onRow={record => ({\n onClick: () => _handleRowClick(record),\n })}\n onChange={_handleChange}\n />\n {isNewAttributeModalOpen && (\n <EditAttributeModal\n open={isNewAttributeModalOpen}\n onClose={_handleCloseNewAttribute}\n onPostCreate={_handlePostCreate}\n width={790}\n />\n )}\n </>\n );\n}\n\nexport default AttributesList;\n"]}
@@ -1,8 +1,10 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ 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 { DragDropContext, Draggable, Droppable } from 'react-beautiful-dnd';
5
+ import { DndContext, closestCenter } from '@dnd-kit/core';
6
+ import { SortableContext, verticalListSortingStrategy, useSortable } from '@dnd-kit/sortable';
7
+ import { CSS } from '@dnd-kit/utilities';
6
8
  import styled from 'styled-components';
7
9
  import { infosCol } from '../../../components/LibraryItemsList/constants';
8
10
  import { AttributesSelectionListActionTypes } from '../reducer/attributesSelectionListReducer';
@@ -35,21 +37,27 @@ const CustomCard = styled.div `
35
37
  `;
36
38
  function SelectedAttributesList() {
37
39
  const { state, dispatch } = useAttributesSelectionListState();
38
- const selection = state.selectedAttributes;
39
- const _onDragEnd = result => {
40
- if (!result.destination) {
40
+ const selection = state.selectedAttributes.filter(a => a.path !== infosCol);
41
+ const handleDragEnd = event => {
42
+ const { active, over } = event;
43
+ if (!over || active.id === over.id) {
41
44
  return;
42
45
  }
43
- if (result.destination.index === result.source.index) {
46
+ const from = selection.findIndex(item => item.path === active.id);
47
+ const to = selection.findIndex(item => item.path === over.id);
48
+ if (from === -1 || to === -1) {
44
49
  return;
45
50
  }
46
- dispatch({
47
- type: AttributesSelectionListActionTypes.MOVE_SELECTED_ATTRIBUTE,
48
- from: result.source.index,
49
- to: result.destination.index,
50
- });
51
+ dispatch({ type: AttributesSelectionListActionTypes.MOVE_SELECTED_ATTRIBUTE, from, to });
51
52
  };
52
- return (_jsx(WrapperItemSelected, { children: _jsx(DragDropContext, { onDragEnd: _onDragEnd, children: _jsx(Droppable, { droppableId: "list-attributes-selected", children: provided => (_jsxs("div", { ref: provided.innerRef, ...provided.droppableProps, children: [selection.map((selectedAttribute, index) => selectedAttribute.path !== infosCol && (_jsx(Draggable, { index: index, draggableId: selectedAttribute.path, children: dragProvided => (_jsx(CustomCard, { ref: dragProvided.innerRef, ...dragProvided.draggableProps, children: _jsx(SelectedAttribute, { selectedAttribute: selectedAttribute, handleProps: dragProvided.dragHandleProps }) })) }, selectedAttribute.path))), provided.placeholder] })) }) }) }));
53
+ return (_jsx(WrapperItemSelected, { children: _jsx(DndContext, { collisionDetection: closestCenter, onDragEnd: handleDragEnd, children: _jsx(SortableContext, { items: selection.map(a => a.path), strategy: verticalListSortingStrategy, children: selection.map(selectedAttribute => (_jsx(SortableItem, { selectedAttribute: selectedAttribute }, selectedAttribute.path))) }) }) }));
54
+ }
55
+ function SortableItem({ selectedAttribute }) {
56
+ const { attributes, listeners, setNodeRef, transform, transition } = useSortable({
57
+ id: selectedAttribute.path,
58
+ });
59
+ const style = { transform: CSS.Transform.toString(transform), transition };
60
+ return (_jsx(CustomCard, { ref: setNodeRef, style: style, ...attributes, children: _jsx(SelectedAttribute, { selectedAttribute: selectedAttribute, handleProps: listeners }) }));
53
61
  }
54
62
  export default SelectedAttributesList;
55
63
  //# sourceMappingURL=SelectedAttributesList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectedAttributesList.js","sourceRoot":"","sources":["../../../../src/components/AttributesSelectionList/SelectedAttributesList/SelectedAttributesList.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,eAAe,EAAE,SAAS,EAAE,SAAS,EAAC,MAAM,qBAAqB,CAAC;AAC1E,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,QAAQ,EAAC,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAC,kCAAkC,EAAC,MAAM,2CAA2C,CAAC;AAC7F,OAAO,EAAC,+BAA+B,EAAC,MAAM,gDAAgD,CAAC;AAC/F,OAAO,iBAAiB,MAAM,uCAAuC,CAAC;AAEtE,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;CAWrC,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;CAY5B,CAAC;AAEF,SAAS,sBAAsB;IAC3B,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,+BAA+B,EAAE,CAAC;IAE5D,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,CAAC;IAE3C,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE;QACxB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QAED,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnD,OAAO;QACX,CAAC;QAED,QAAQ,CAAC;YACL,IAAI,EAAE,kCAAkC,CAAC,uBAAuB;YAChE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;YACzB,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK;SAC/B,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,mBAAmB,cAChB,KAAC,eAAe,IAAC,SAAS,EAAE,UAAU,YAClC,KAAC,SAAS,IAAC,WAAW,EAAC,0BAA0B,YAC5C,QAAQ,CAAC,EAAE,CAAC,CACT,eAAK,GAAG,EAAE,QAAQ,CAAC,QAAQ,KAAM,QAAQ,CAAC,cAAc,aACnD,SAAS,CAAC,GAAG,CACV,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,CACzB,iBAAiB,CAAC,IAAI,KAAK,QAAQ,IAAI,CACnC,KAAC,SAAS,IAEN,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,iBAAiB,CAAC,IAAI,YAElC,YAAY,CAAC,EAAE,CAAC,CACb,KAAC,UAAU,IACP,GAAG,EAAE,YAAY,CAAC,QAAQ,KACtB,YAAY,CAAC,cAAc,YAE/B,KAAC,iBAAiB,IACd,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,YAAY,CAAC,eAAe,GAC3C,GACO,CAChB,IAdI,iBAAiB,CAAC,IAAI,CAenB,CACf,CACR,EACA,QAAQ,CAAC,WAAW,IACnB,CACT,GACO,GACE,GACA,CACzB,CAAC;AACN,CAAC;AAED,eAAe,sBAAsB,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 {DragDropContext, Draggable, Droppable} from 'react-beautiful-dnd';\nimport styled from 'styled-components';\nimport {infosCol} from '_ui/components/LibraryItemsList/constants';\nimport {AttributesSelectionListActionTypes} from '../reducer/attributesSelectionListReducer';\nimport {useAttributesSelectionListState} from '../reducer/attributesSelectionListStateContext';\nimport SelectedAttribute from './SelectedAttribute/SelectedAttribute';\n\nconst WrapperItemSelected = styled.div`\n overflow-y: auto;\n height: calc(100vh - 15rem);\n\n &&& > *:first-child {\n margin-top: 0;\n }\n\n &&& > *:last-child {\n margin-bottom: 0;\n }\n`;\n\nconst CustomCard = styled.div`\n &&& {\n padding: 0;\n margin: 0 10px 10px 10px;\n display: flex;\n justify-content: space-between;\n border: 1px solid #f0f0f0;\n border-radius: 2px;\n min-height: 3rem;\n box-shadow: 0 2px 0 rgba(0, 0, 0, 0.015);\n background: #fff;\n }\n`;\n\nfunction SelectedAttributesList(): JSX.Element {\n const {state, dispatch} = useAttributesSelectionListState();\n\n const selection = state.selectedAttributes;\n\n const _onDragEnd = result => {\n if (!result.destination) {\n return;\n }\n\n if (result.destination.index === result.source.index) {\n return;\n }\n\n dispatch({\n type: AttributesSelectionListActionTypes.MOVE_SELECTED_ATTRIBUTE,\n from: result.source.index,\n to: result.destination.index,\n });\n };\n\n return (\n <WrapperItemSelected>\n <DragDropContext onDragEnd={_onDragEnd}>\n <Droppable droppableId=\"list-attributes-selected\">\n {provided => (\n <div ref={provided.innerRef} {...provided.droppableProps}>\n {selection.map(\n (selectedAttribute, index) =>\n selectedAttribute.path !== infosCol && (\n <Draggable\n key={selectedAttribute.path}\n index={index}\n draggableId={selectedAttribute.path}\n >\n {dragProvided => (\n <CustomCard\n ref={dragProvided.innerRef}\n {...dragProvided.draggableProps}\n >\n <SelectedAttribute\n selectedAttribute={selectedAttribute}\n handleProps={dragProvided.dragHandleProps}\n />\n </CustomCard>\n )}\n </Draggable>\n ),\n )}\n {provided.placeholder}\n </div>\n )}\n </Droppable>\n </DragDropContext>\n </WrapperItemSelected>\n );\n}\n\nexport default SelectedAttributesList;\n"]}
1
+ {"version":3,"file":"SelectedAttributesList.js","sourceRoot":"","sources":["../../../../src/components/AttributesSelectionList/SelectedAttributesList/SelectedAttributesList.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 {DndContext, closestCenter} from '@dnd-kit/core';\nimport {SortableContext, verticalListSortingStrategy, useSortable} from '@dnd-kit/sortable';\nimport {CSS} from '@dnd-kit/utilities';\nimport styled from 'styled-components';\nimport {infosCol} from '_ui/components/LibraryItemsList/constants';\nimport {AttributesSelectionListActionTypes} from '../reducer/attributesSelectionListReducer';\nimport {useAttributesSelectionListState} from '../reducer/attributesSelectionListStateContext';\nimport SelectedAttribute from './SelectedAttribute/SelectedAttribute';\nimport {type ISelectedAttribute} from '_ui/types';\n\nconst WrapperItemSelected = styled.div`\n overflow-y: auto;\n height: calc(100vh - 15rem);\n\n &&& > *:first-child {\n margin-top: 0;\n }\n\n &&& > *:last-child {\n margin-bottom: 0;\n }\n`;\n\nconst CustomCard = styled.div`\n &&& {\n padding: 0;\n margin: 0 10px 10px 10px;\n display: flex;\n justify-content: space-between;\n border: 1px solid #f0f0f0;\n border-radius: 2px;\n min-height: 3rem;\n box-shadow: 0 2px 0 rgba(0, 0, 0, 0.015);\n background: #fff;\n }\n`;\n\nfunction SelectedAttributesList(): JSX.Element {\n const {state, dispatch} = useAttributesSelectionListState();\n const selection = state.selectedAttributes.filter(a => a.path !== infosCol);\n\n const handleDragEnd = event => {\n const {active, over} = event;\n if (!over || active.id === over.id) {\n return;\n }\n const from = selection.findIndex(item => item.path === active.id);\n const to = selection.findIndex(item => item.path === over.id);\n if (from === -1 || to === -1) {\n return;\n }\n dispatch({type: AttributesSelectionListActionTypes.MOVE_SELECTED_ATTRIBUTE, from, to});\n };\n\n return (\n <WrapperItemSelected>\n <DndContext collisionDetection={closestCenter} onDragEnd={handleDragEnd}>\n <SortableContext items={selection.map(a => a.path)} strategy={verticalListSortingStrategy}>\n {selection.map(selectedAttribute => (\n <SortableItem key={selectedAttribute.path} selectedAttribute={selectedAttribute} />\n ))}\n </SortableContext>\n </DndContext>\n </WrapperItemSelected>\n );\n}\n\nfunction SortableItem({selectedAttribute}: {selectedAttribute: ISelectedAttribute}) {\n const {attributes, listeners, setNodeRef, transform, transition} = useSortable({\n id: selectedAttribute.path,\n });\n const style = {transform: CSS.Transform.toString(transform), transition};\n\n return (\n <CustomCard ref={setNodeRef} style={style} {...attributes}>\n <SelectedAttribute selectedAttribute={selectedAttribute} handleProps={listeners} />\n </CustomCard>\n );\n}\n\nexport default SelectedAttributesList;\n"]}
@@ -7,5 +7,5 @@ export declare const useAttributesSelectionListState: () => {
7
7
  expandedAttributePath: string;
8
8
  attributes: import("../../../../_gqlTypes").AttributesByLibAttributeFragment[];
9
9
  };
10
- dispatch: jest.Mock<any, any>;
10
+ dispatch: jest.Mock<any, any, any>;
11
11
  };