@leav/ui 0.4.0-d1519cc → 0.4.0-daf9f384

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 (251) hide show
  1. package/README.md +1 -0
  2. package/dist/__mocks__/common/form.d.ts +632 -0
  3. package/dist/__mocks__/common/form.js +32 -23
  4. package/dist/__mocks__/common/form.js.map +1 -1
  5. package/dist/_gqlTypes/index.d.ts +3274 -2037
  6. package/dist/_gqlTypes/index.js +1579 -1209
  7. package/dist/_gqlTypes/index.js.map +1 -1
  8. package/dist/_queries/attributes/attributeDetailsFragment.js +1 -0
  9. package/dist/_queries/attributes/attributeDetailsFragment.js.map +1 -1
  10. package/dist/_queries/records/activateRecordsMutation.d.ts +1 -0
  11. package/dist/_queries/records/activateRecordsMutation.js +15 -0
  12. package/dist/_queries/records/activateRecordsMutation.js.map +1 -0
  13. package/dist/_queries/records/getRecordFormQuery.js +14 -5
  14. package/dist/_queries/records/getRecordFormQuery.js.map +1 -1
  15. package/dist/_queries/trees/treeNodeChildrenQuery.js +12 -2
  16. package/dist/_queries/trees/treeNodeChildrenQuery.js.map +1 -1
  17. package/dist/components/CreateDirectory/CreateDirectory.js +3 -3
  18. package/dist/components/CreateDirectory/CreateDirectory.js.map +1 -1
  19. package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/DeleteButton/DeleteButton.js +3 -2
  20. package/dist/components/EditLibraryModal/EditLibrary/EditLibraryAttributes/AttributesList/DeleteButton/DeleteButton.js.map +1 -1
  21. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js +8 -1
  22. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js.map +1 -1
  23. package/dist/components/ErrorBoundary/ErrorBoundaryContent/ErrorBoundaryContent.d.ts +2 -2
  24. package/dist/components/ErrorBoundary/ErrorBoundaryContent/ErrorBoundaryContent.js +4 -3
  25. package/dist/components/ErrorBoundary/ErrorBoundaryContent/ErrorBoundaryContent.js.map +1 -1
  26. package/dist/components/Explorer/DataView.d.ts +2 -1
  27. package/dist/components/Explorer/DataView.js +21 -12
  28. package/dist/components/Explorer/DataView.js.map +1 -1
  29. package/dist/components/Explorer/Explorer.d.ts +8 -5
  30. package/dist/components/Explorer/Explorer.js +12 -9
  31. package/dist/components/Explorer/Explorer.js.map +1 -1
  32. package/dist/components/Explorer/ExplorerToolbar.d.ts +2 -1
  33. package/dist/components/Explorer/ExplorerToolbar.js +5 -4
  34. package/dist/components/Explorer/ExplorerToolbar.js.map +1 -1
  35. package/dist/components/Explorer/TableCell.js +22 -11
  36. package/dist/components/Explorer/TableCell.js.map +1 -1
  37. package/dist/components/Explorer/_queries/useExplorerData.js +7 -3
  38. package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -1
  39. package/dist/components/Explorer/_types.d.ts +9 -3
  40. package/dist/components/Explorer/_types.js.map +1 -1
  41. package/dist/components/Explorer/actions-item/useEditItemAction.d.ts +2 -1
  42. package/dist/components/Explorer/actions-item/useEditItemAction.js +2 -1
  43. package/dist/components/Explorer/actions-item/useEditItemAction.js.map +1 -1
  44. package/dist/components/Explorer/actions-item/{useRemoveItemAction.d.ts → useEditStatusItemAction.d.ts} +2 -2
  45. package/dist/components/Explorer/actions-item/{useRemoveItemAction.js → useEditStatusItemAction.js} +71 -24
  46. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -0
  47. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.d.ts +3 -1
  48. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +14 -6
  49. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
  50. package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js +4 -0
  51. package/dist/components/Explorer/manage-view-settings/_shared/useTransformFilters.js.map +1 -1
  52. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js +1 -1
  53. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsInitialState.js.map +1 -1
  54. package/dist/components/Explorer/useColumnWidth.js +2 -1
  55. package/dist/components/Explorer/useColumnWidth.js.map +1 -1
  56. package/dist/components/Explorer/usePagination.d.ts +2 -1
  57. package/dist/components/Explorer/usePagination.js.map +1 -1
  58. package/dist/components/Explorer/useSearchInput.d.ts +3 -1
  59. package/dist/components/Explorer/useSearchInput.js +2 -1
  60. package/dist/components/Explorer/useSearchInput.js.map +1 -1
  61. package/dist/components/Explorer/useViewSettingsReducer.d.ts +1 -1
  62. package/dist/components/Explorer/useViewSettingsReducer.js +31 -16
  63. package/dist/components/Explorer/useViewSettingsReducer.js.map +1 -1
  64. package/dist/components/ImportModal/ImportModalConfigStep/ImportModalConfigStep.js +1 -1
  65. package/dist/components/ImportModal/ImportModalConfigStep/ImportModalConfigStep.js.map +1 -1
  66. package/dist/components/LibraryItemsList/CreateNewRecordButton/CreateNewRecordButton.js +1 -0
  67. package/dist/components/LibraryItemsList/CreateNewRecordButton/CreateNewRecordButton.js.map +1 -1
  68. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js +3 -3
  69. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.js.map +1 -1
  70. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.utils.js +2 -2
  71. package/dist/components/LibraryItemsList/FiltersPanel/Filter/Filter.utils.js.map +1 -1
  72. package/dist/components/LibraryItemsList/shared/DeactivateRecordBtn/DeactivateRecordBtn.js +3 -3
  73. package/dist/components/LibraryItemsList/shared/DeactivateRecordBtn/DeactivateRecordBtn.js.map +1 -1
  74. package/dist/components/LinkSelect/LinkSelect.d.ts +15 -0
  75. package/dist/components/LinkSelect/LinkSelect.js +88 -0
  76. package/dist/components/LinkSelect/LinkSelect.js.map +1 -0
  77. package/dist/components/LinkSelect/index.d.ts +2 -0
  78. package/dist/components/{SelectTreeNodeModal → LinkSelect}/index.js +2 -1
  79. package/dist/components/LinkSelect/index.js.map +1 -0
  80. package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +1 -4
  81. package/dist/components/RecordEdition/EditRecord/EditRecord.js +15 -28
  82. package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
  83. package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.d.ts +2 -0
  84. package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.js +43 -0
  85. package/dist/components/RecordEdition/EditRecordButtons/EditRecordButtons.js.map +1 -0
  86. package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.d.ts +2 -0
  87. package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js +25 -0
  88. package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js.map +1 -0
  89. package/dist/components/RecordEdition/EditRecordButtons/index.d.ts +2 -0
  90. package/dist/components/RecordEdition/EditRecordButtons/index.js +6 -0
  91. package/dist/components/RecordEdition/EditRecordButtons/index.js.map +1 -0
  92. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +64 -27
  93. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
  94. package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +13 -7
  95. package/dist/components/RecordEdition/EditRecordContent/_types.js.map +1 -1
  96. package/dist/components/RecordEdition/EditRecordContent/antdUtils.d.ts +6 -0
  97. package/dist/components/RecordEdition/EditRecordContent/antdUtils.js +7 -1
  98. package/dist/components/RecordEdition/EditRecordContent/antdUtils.js.map +1 -1
  99. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.d.ts +15 -2
  100. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.js +47 -24
  101. package/dist/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.js.map +1 -1
  102. package/dist/components/RecordEdition/EditRecordContent/hooks/useFetchVisibleFormValue.d.ts +13 -0
  103. package/dist/components/RecordEdition/EditRecordContent/hooks/useFetchVisibleFormValue.js +115 -0
  104. package/dist/components/RecordEdition/EditRecordContent/hooks/useFetchVisibleFormValue.js.map +1 -0
  105. package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.d.ts +12 -0
  106. package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.js +39 -0
  107. package/dist/components/RecordEdition/EditRecordContent/hooks/useTabManagement.js.map +1 -0
  108. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.d.ts +2 -2
  109. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js +3 -5
  110. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js.map +1 -1
  111. package/dist/components/RecordEdition/EditRecordContent/uiElements/FormTabs/FormTabs.js +25 -5
  112. package/dist/components/RecordEdition/EditRecordContent/uiElements/FormTabs/FormTabs.js.map +1 -1
  113. package/dist/components/RecordEdition/EditRecordContent/uiElements/Frame/Frame.d.ts +1 -1
  114. package/dist/components/RecordEdition/EditRecordContent/uiElements/Frame/Frame.js +1 -3
  115. package/dist/components/RecordEdition/EditRecordContent/uiElements/Frame/Frame.js.map +1 -1
  116. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.d.ts +2 -2
  117. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +8 -5
  118. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
  119. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js +2 -2
  120. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js.map +1 -1
  121. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.d.ts +4 -2
  122. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js +258 -53
  123. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js.map +1 -1
  124. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.d.ts +0 -2
  125. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +62 -71
  126. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  127. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js +2 -1
  128. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js.map +1 -1
  129. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.d.ts +2 -1
  130. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js +2 -1
  131. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js.map +1 -1
  132. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js +3 -3
  133. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js.map +1 -1
  134. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/_types.d.ts +1 -0
  135. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.d.ts +1 -1
  136. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +22 -17
  137. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
  138. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.d.ts +2 -1
  139. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js +2 -2
  140. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js.map +1 -1
  141. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/{useDisplayTreeNode.d.ts → TreeNodeList.d.ts} +4 -4
  142. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeList.js +5 -0
  143. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeList.js.map +1 -0
  144. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.d.ts +16 -4
  145. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js +12 -13
  146. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js.map +1 -1
  147. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.d.ts +3 -2
  148. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js +46 -55
  149. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js.map +1 -1
  150. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/calculatedInheritedFlags.js +4 -4
  151. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/calculatedInheritedFlags.js.map +1 -1
  152. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.d.ts +2 -2
  153. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js +6 -6
  154. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.d.ts +3 -0
  155. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js +48 -50
  156. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js.map +1 -1
  157. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.d.ts +3 -1
  158. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +6 -6
  159. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
  160. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js +2 -2
  161. package/dist/components/RecordEdition/EditRecordSidebar/Breacrumb/Breadcrumb.js.map +1 -1
  162. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.d.ts +0 -1
  163. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js +18 -12
  164. package/dist/components/RecordEdition/EditRecordSidebar/EditRecordSidebar.js.map +1 -1
  165. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js +2 -2
  166. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js.map +1 -1
  167. package/dist/components/RecordEdition/constants.d.ts +2 -0
  168. package/dist/components/RecordEdition/constants.js +6 -0
  169. package/dist/components/RecordEdition/constants.js.map +1 -0
  170. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.d.ts +33 -2
  171. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js +48 -3
  172. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js.map +1 -1
  173. package/dist/components/RecordEdition/index.d.ts +3 -0
  174. package/dist/components/RecordEdition/index.js +3 -0
  175. package/dist/components/RecordEdition/index.js.map +1 -1
  176. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +2 -1
  177. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +2 -2
  178. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
  179. package/dist/components/SelectTreeNode/SelectTreeNode.d.ts +5 -3
  180. package/dist/components/SelectTreeNode/SelectTreeNode.js +2 -3
  181. package/dist/components/SelectTreeNode/SelectTreeNode.js.map +1 -1
  182. package/dist/components/SelectTreeNode/SelectTreeNodeContent.d.ts +3 -1
  183. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js +18 -23
  184. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js.map +1 -1
  185. package/dist/components/SelectTreeNode/_types.d.ts +17 -0
  186. package/dist/components/SelectTreeNode/_types.js +2 -0
  187. package/dist/components/SelectTreeNode/_types.js.map +1 -0
  188. package/dist/components/{SelectTreeNodeModal/SelectTreeNodeModal.d.ts → SelectTreeNodeModalOld/SelectTreeNodeModalOld.d.ts} +1 -1
  189. package/dist/components/{SelectTreeNodeModal/SelectTreeNodeModal.js → SelectTreeNodeModalOld/SelectTreeNodeModalOld.js} +4 -2
  190. package/dist/components/SelectTreeNodeModalOld/SelectTreeNodeModalOld.js.map +1 -0
  191. package/dist/components/SelectTreeNodeModalOld/index.d.ts +1 -0
  192. package/dist/components/SelectTreeNodeModalOld/index.js +5 -0
  193. package/dist/components/SelectTreeNodeModalOld/index.js.map +1 -0
  194. package/dist/components/SimpleErrorBoundary/SimpleErrorBoundary.d.ts +1 -1
  195. package/dist/components/SimpleErrorBoundary/SimpleErrorBoundary.js.map +1 -1
  196. package/dist/components/SimpleErrorBoundary/SimpleErrorBoundaryContent/SimpleErrorBoundaryContent.d.ts +2 -2
  197. package/dist/components/SimpleErrorBoundary/SimpleErrorBoundaryContent/SimpleErrorBoundaryContent.js +6 -3
  198. package/dist/components/SimpleErrorBoundary/SimpleErrorBoundaryContent/SimpleErrorBoundaryContent.js.map +1 -1
  199. package/dist/components/UploadFiles/UploadFiles.js +3 -3
  200. package/dist/components/UploadFiles/UploadFiles.js.map +1 -1
  201. package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js +2 -2
  202. package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js.map +1 -1
  203. package/dist/components/index.d.ts +1 -2
  204. package/dist/components/index.js +1 -2
  205. package/dist/components/index.js.map +1 -1
  206. package/dist/contexts/LangContext/LangContext.d.ts +1 -2
  207. package/dist/contexts/LangContext/LangContext.js +2 -2
  208. package/dist/contexts/LangContext/LangContext.js.map +1 -1
  209. package/dist/hooks/index.d.ts +3 -0
  210. package/dist/hooks/index.js +3 -0
  211. package/dist/hooks/index.js.map +1 -1
  212. package/dist/hooks/useAppLang/useAppLang.js.map +1 -1
  213. package/dist/hooks/useGetRecordForm/useGetRecordForm.d.ts +2 -1
  214. package/dist/hooks/useGetRecordForm/useGetRecordForm.js +3 -14
  215. package/dist/hooks/useGetRecordForm/useGetRecordForm.js.map +1 -1
  216. package/dist/hooks/useIFrameMessenger/messageHandlers.d.ts +15 -0
  217. package/dist/hooks/useIFrameMessenger/messageHandlers.js +121 -0
  218. package/dist/hooks/useIFrameMessenger/messageHandlers.js.map +1 -0
  219. package/dist/hooks/useIFrameMessenger/schema.d.ts +21 -0
  220. package/dist/hooks/useIFrameMessenger/schema.js +76 -0
  221. package/dist/hooks/useIFrameMessenger/schema.js.map +1 -0
  222. package/dist/hooks/useIFrameMessenger/types.d.ts +118 -0
  223. package/dist/hooks/useIFrameMessenger/types.js +2 -0
  224. package/dist/hooks/useIFrameMessenger/types.js.map +1 -0
  225. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.d.ts +19 -0
  226. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js +104 -0
  227. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js.map +1 -0
  228. package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.d.ts +7 -0
  229. package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.js +13 -0
  230. package/dist/hooks/useIFrameMessengerClient/IFrameMessengerClient.js.map +1 -0
  231. package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.d.ts +13 -0
  232. package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.js +6 -0
  233. package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.js.map +1 -0
  234. package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.d.ts +13 -0
  235. package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.js +13 -0
  236. package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.js.map +1 -0
  237. package/dist/hooks/useRedirectToLogin/useRedirectToLogin.js +1 -1
  238. package/dist/hooks/useRedirectToLogin/useRedirectToLogin.js.map +1 -1
  239. package/dist/locales/en/shared.json +9 -1
  240. package/dist/locales/fr/shared.json +9 -1
  241. package/dist/types/attributes.d.ts +2 -1
  242. package/package.json +23 -8
  243. package/dist/components/Explorer/actions-item/useRemoveItemAction.js.map +0 -1
  244. package/dist/components/RecordEdition/EditRecordContent/hooks/useRecordEditionContext.d.ts +0 -3
  245. package/dist/components/RecordEdition/EditRecordContent/hooks/useRecordEditionContext.js +0 -7
  246. package/dist/components/RecordEdition/EditRecordContent/hooks/useRecordEditionContext.js.map +0 -1
  247. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/useDisplayTreeNode.js +0 -8
  248. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/useDisplayTreeNode.js.map +0 -1
  249. package/dist/components/SelectTreeNodeModal/SelectTreeNodeModal.js.map +0 -1
  250. package/dist/components/SelectTreeNodeModal/index.d.ts +0 -1
  251. package/dist/components/SelectTreeNodeModal/index.js.map +0 -1
@@ -3,7 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  // This file is released under LGPL V3
4
4
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
5
  import { FORM_ROOT_CONTAINER_ID, FormUIElementTypes, simpleStringHash } from '@leav/utils';
6
- import { useEffect, useMemo } from 'react';
6
+ import { useEffect, useMemo, useState } from 'react';
7
7
  import { ErrorDisplay } from '../../../components';
8
8
  import useGetRecordForm from '../../../hooks/useGetRecordForm';
9
9
  import { useGetRecordUpdatesSubscription } from '../../../hooks/useGetRecordUpdatesSubscription';
@@ -12,15 +12,14 @@ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
12
12
  import { FormElementTypes } from '../../../_gqlTypes';
13
13
  import { EditRecordReducerActionsTypes } from '../editRecordReducer/editRecordReducer';
14
14
  import { useEditRecordReducer } from '../editRecordReducer/useEditRecordReducer';
15
- import extractFormElements from './helpers/extractFormElements';
16
- import { RecordEditionContext } from './hooks/useRecordEditionContext';
17
15
  import { formComponents } from './uiElements';
18
16
  import { Form } from 'antd';
19
17
  import { EDIT_OR_CREATE_RECORD_FORM_ID } from './formConstants';
20
- import { getAntdFormInitialValues } from '../../../components/RecordEdition/EditRecordContent/antdUtils';
21
- import { useGetRecordValuesQuery } from '../../../hooks/useGetRecordValuesQuery/useGetRecordValuesQuery';
22
18
  import EditRecordSkeleton from '../EditRecordSkeleton';
23
19
  import styled from 'styled-components';
20
+ import { useFetchVisibleFormValue } from '../../../components/RecordEdition/EditRecordContent/hooks/useFetchVisibleFormValue';
21
+ import extractFormElements from '../../../components/RecordEdition/EditRecordContent/helpers/extractFormElements';
22
+ import useTabManagement from '../../../components/RecordEdition/EditRecordContent/hooks/useTabManagement';
24
23
  const WrappedForm = styled(Form) `
25
24
  height: 100%;
26
25
  `;
@@ -31,6 +30,8 @@ const EditRecordContent = ({ antdForm, formId, formElementId, record, library, p
31
30
  }
32
31
  const { t } = useSharedTranslation();
33
32
  const { state, dispatch } = useEditRecordReducer();
33
+ // Reformat values with key as attribute id to facilitate the usage in form (attribute id as reference)
34
+ const [valuesMappedByAttributeId, setValuesMappedByAttributeId] = useState(null);
34
35
  useRecordsConsultationHistory(record?.library?.id ?? null, record?.id ?? null);
35
36
  const { data: recordUpdateData } = useGetRecordUpdatesSubscription({ records: [record?.id], ignoreOwnEvents: true }, !record?.id);
36
37
  useEffect(() => {
@@ -42,29 +43,60 @@ const EditRecordContent = ({ antdForm, formId, formElementId, record, library, p
42
43
  });
43
44
  }
44
45
  }, [recordUpdateData]);
45
- const { loading, error, recordForm, refetch } = useGetRecordForm({
46
+ // Get form without values
47
+ const { loading, error, recordForm } = useGetRecordForm({
46
48
  libraryId: library,
47
49
  recordId: record?.id,
48
50
  formId: formIdToLoad,
49
51
  version: state.valuesVersion
50
52
  });
51
- const { data: computeFieldsData, error: computeFieldsError, refetch: refetchComputeFields } = useGetRecordValuesQuery(library, recordForm
52
- ? recordForm.elements.filter(element => element.attribute?.compute).map(element => element.attribute.id)
53
- : [], [record?.id], true);
53
+ // Keep tabId displayed in reference to re-calculate visible elementIds and get its values
54
+ const { tabIdVisible, handleTabClick } = useTabManagement(recordForm?.elements);
55
+ // Get values of formElements
56
+ const { loading: loadingValues, refetchRecordFormWithValues, recordFormWithValues, error: errorOnGetValues } = useFetchVisibleFormValue(formIdToLoad, recordForm, tabIdVisible);
57
+ useEffect(() => {
58
+ if (!recordFormWithValues?.recordId || !recordFormWithValues?.elements?.length) {
59
+ return;
60
+ }
61
+ // Transform elementsValues into the format by attribute id
62
+ const valuesMappedByAttributeIdTmp = {};
63
+ recordFormWithValues.elements.forEach(element => {
64
+ if (element.attribute && element.values) {
65
+ valuesMappedByAttributeIdTmp[element.attribute.id] = element.values;
66
+ }
67
+ });
68
+ setValuesMappedByAttributeId(valuesMappedByAttributeIdTmp);
69
+ }, [recordFormWithValues]);
70
+ useEffect(() => {
71
+ if (!loading && recordForm) {
72
+ dispatch({
73
+ type: EditRecordReducerActionsTypes.INITIALIZE_SIDEBAR,
74
+ enabled: recordForm.sidePanel.enable,
75
+ isOpenByDefault: recordForm.sidePanel.isOpenByDefault
76
+ });
77
+ }
78
+ }, [recordForm, loading]);
54
79
  // Generate a hash of recordForm to detect changes
55
80
  const recordFormHash = useMemo(() => simpleStringHash(JSON.stringify(recordForm)), [recordForm]);
56
81
  useEffect(() => {
57
82
  if (state.refreshRequested) {
58
- refetch();
83
+ refetchRecordFormWithValues();
59
84
  dispatch({ type: EditRecordReducerActionsTypes.REFRESH_DONE });
60
85
  }
61
86
  }, [state.refreshRequested]);
62
- if (loading && !recordForm) {
87
+ if ((loading && !recordForm) || loadingValues) {
63
88
  return _jsx(EditRecordSkeleton, { rows: 5 });
64
89
  }
65
- if (error) {
66
- const message = Object.values(error.graphQLErrors[0]?.extensions?.exception?.fields ?? {}).join('\n') ?? error?.message;
90
+ const displayError = e => {
91
+ const message = Object.values(e.graphQLErrors[0]?.extensions?.exception?.fields ?? {}).join('\n') ??
92
+ error?.message;
67
93
  return _jsx(ErrorDisplay, { message: message ?? t('record_edition.no_form_error') });
94
+ };
95
+ if (error) {
96
+ return displayError(error);
97
+ }
98
+ else if (errorOnGetValues) {
99
+ return displayError(errorOnGetValues);
68
100
  }
69
101
  const _checkDependencyChange = (changedAttribute) => {
70
102
  // If a dependency attribute has changed, we need to refresh the form
@@ -77,13 +109,14 @@ const EditRecordContent = ({ antdForm, formId, formElementId, record, library, p
77
109
  _checkDependencyChange(element[0].attribute.id);
78
110
  const isEditing = Boolean(record);
79
111
  if (isEditing) {
80
- refetchComputeFields([record.id]);
112
+ await refetchRecordFormWithValues();
81
113
  }
82
114
  return submitRes;
83
115
  };
84
116
  const _handleValueDelete = async (value, attribute) => {
85
117
  const deleteRes = await onValueDelete(value, attribute);
86
118
  _checkDependencyChange(attribute);
119
+ await refetchRecordFormWithValues();
87
120
  return deleteRes;
88
121
  };
89
122
  const rootElement = {
@@ -93,20 +126,24 @@ const EditRecordContent = ({ antdForm, formId, formElementId, record, library, p
93
126
  uiElementType: FormUIElementTypes.FIELDS_CONTAINER,
94
127
  settings: {},
95
128
  attribute: null,
96
- valueError: null,
97
- values: null,
98
- uiElement: formComponents[FormUIElementTypes.FIELDS_CONTAINER]
129
+ uiElement: formComponents[FormUIElementTypes.FIELDS_CONTAINER],
130
+ record
131
+ };
132
+ // Used to get different event from children elements (e.g., listen to onTabClick event from FormTab element)
133
+ const onCustomEvent = (event) => {
134
+ // If a tab has been click
135
+ // Re-calculate visible elements and fetch values
136
+ if (event.eventName === 'onTabClick') {
137
+ handleTabClick(event.tabIdClicked);
138
+ }
99
139
  };
100
- const antdFormInitialValues = getAntdFormInitialValues(recordForm);
101
- const recordComputedValues = computeFieldsData && record ? computeFieldsData[record.id] : null;
102
- const elementsByContainer = extractFormElements(recordForm, recordComputedValues, computeFieldsError);
103
- return (_jsx(WrappedForm, { id: formElementId ?? EDIT_OR_CREATE_RECORD_FORM_ID, form: antdForm, initialValues: antdFormInitialValues, onFinish: () => onRecordSubmit(recordForm.elements.map(element => element.attribute)), children: _jsx(RecordEditionContext.Provider, { value: {
104
- elements: elementsByContainer,
105
- readOnly: readonly,
106
- record
107
- }, children: _jsx(rootElement.uiElement
108
- // Use a hash of record form as a key to force a full re-render when the form changes
109
- , { antdForm: antdForm, formIdToLoad: formIdToLoad, element: rootElement, computedValues: recordComputedValues, readonly: readonly, pendingValues: pendingValues, onValueSubmit: _handleValueSubmit, onValueDelete: _handleValueDelete, onDeleteMultipleValues: onDeleteMultipleValues }, recordFormHash) }) }));
140
+ // Create an object where key is container id and value is the element
141
+ const elementsByContainer = extractFormElements(recordFormWithValues || recordForm, errorOnGetValues);
142
+ return (_jsx(WrappedForm, { id: formElementId ?? EDIT_OR_CREATE_RECORD_FORM_ID, form: antdForm, onFinish: () => onRecordSubmit(recordForm.elements.filter(element => element.attribute?.id).map(element => element.attribute)), children: _jsx(rootElement.uiElement
143
+ // Use a hash of a record form as a key to force a full re-render when the form changes
144
+ , { antdForm: antdForm, valuesMappedByAttributeId: valuesMappedByAttributeId, formIdToLoad: formIdToLoad, element: rootElement, readonly: readonly,
145
+ // todo there is two readonly, one for form and for the attribut
146
+ pendingValues: pendingValues, onValueSubmit: _handleValueSubmit, onValueDelete: _handleValueDelete, onDeleteMultipleValues: onDeleteMultipleValues, onCustomEvent: onCustomEvent, record: record, elementsByContainer: elementsByContainer }, recordFormHash) }));
110
147
  };
111
148
  export default EditRecordContent;
112
149
  //# sourceMappingURL=EditRecordContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditRecordContent.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/EditRecordContent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditRecordContent.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/EditRecordContent.tsx"],"names":[],"mappings":"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"}
@@ -30,16 +30,16 @@ export interface IDeleteValueResult {
30
30
  status: APICallStatus;
31
31
  error?: string;
32
32
  }
33
+ export interface ICustomEventResult {
34
+ [key: string]: any;
35
+ eventName: string;
36
+ element: FormElement<unknown>;
37
+ }
33
38
  export interface ICreateRecordResult {
34
39
  status: APICallStatus;
35
40
  record?: RecordIdentityFragment['whoAmI'];
36
41
  errors?: CreateRecordMutation['createRecord']['valuesErrors'];
37
42
  }
38
- export interface IRecordEditionContext {
39
- elements: IFormElementsByContainer;
40
- readOnly: boolean;
41
- record: IRecordIdentityWhoAmI;
42
- }
43
43
  export interface IFormElementsByContainer {
44
44
  [containerId: string]: Array<FormElement<unknown>>;
45
45
  }
@@ -55,6 +55,7 @@ export interface ISubmittedValueTree extends ISubmittedValueBase {
55
55
  export type SubmittedValue = ISubmittedValueStandard | ISubmittedValueLink | ISubmittedValueTree;
56
56
  export type SubmitValueFunc = (values: SubmittedValue[], version: IValueVersion) => Promise<ISubmitMultipleResult>;
57
57
  export type DeleteValueFunc = (value: ValueInput | null, attribute: string) => Promise<IDeleteValueResult>;
58
+ export type CustomEventFunc = (details: ICustomEventResult) => void;
58
59
  export type CreateRecordFunc = (library: string, values: ValueBatchInput[]) => Promise<ICreateRecordResult>;
59
60
  export type DeleteMultipleValuesFunc = (attribute: string, values: RecordProperty[], version: IValueVersion) => Promise<ISubmitMultipleResult>;
60
61
  export type MetadataSubmitValueFunc = (value: RecordProperty, attribute: RecordFormAttributeFragment, metadata: IKeyValue<AnyPrimitive>) => Promise<ISubmitMultipleResult>;
@@ -70,17 +71,22 @@ export interface IFormElementProps<SettingsType, RecordFormElements = RecordForm
70
71
  readonly?: boolean;
71
72
  onValueSubmit?: SubmitValueFunc;
72
73
  onValueDelete?: DeleteValueFunc;
74
+ onCustomEvent?: CustomEventFunc;
73
75
  onDeleteMultipleValues?: DeleteMultipleValuesFunc;
74
76
  metadataEdit?: boolean;
77
+ record?: IRecordIdentityWhoAmI;
78
+ elementsByContainer?: any;
75
79
  }
76
80
  export type FormElement<SettingsType, RecordFormElements = RecordFormElementsValue> = Override<RecordFormElementFragment, {
77
81
  settings: SettingsType;
78
82
  uiElementType: FormUIElementTypes | FormFieldTypes;
79
- values: RecordFormElements[];
83
+ values?: RecordFormElements[];
84
+ valueError?: string;
85
+ record?: IRecordIdentityWhoAmI;
80
86
  }> & {
81
87
  uiElement: (props: IFormElementProps<unknown> & {
82
88
  antdForm?: FormInstance;
83
- computedValues?: GetRecordColumnsValuesRecord;
89
+ valuesMappedByAttributeId?: GetRecordColumnsValuesRecord;
84
90
  }) => JSX.Element;
85
91
  };
86
92
  export interface IDependencyValues {
@@ -1 +1 @@
1
- {"version":3,"file":"_types.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/_types.ts"],"names":[],"mappings":"AAoCA,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;IACf,oCAAmB,CAAA;AACvB,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAyGD,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IACzB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA,CAAC,oEAAoE;AAC5F,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B"}
1
+ {"version":3,"file":"_types.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/_types.ts"],"names":[],"mappings":"AAoCA,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;IACf,oCAAmB,CAAA;AACvB,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AA+GD,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IACzB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA,CAAC,oEAAoE;AAC5F,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B"}
@@ -4,4 +4,10 @@ export declare const EMPTY_INITIAL_VALUE_STRING = "";
4
4
  export declare const EMPTY_INITIAL_VALUE_UNDEFINED: any;
5
5
  export declare const getEmptyInitialValue: (attribute: RecordFormElementAttribute) => any;
6
6
  export declare const getAntdDisplayedValue: (values: RecordFormElementsValueStandardValue[], attribute: RecordFormElementAttribute) => any;
7
+ /**
8
+ * @deprecated This function will be removed after 2026-01-01.
9
+ * This fn is not used anymore, this hook is used useFetchVisibleFormValue, so we don't load default values
10
+ * Return formatted values for an antdForm
11
+ * @param recordForm
12
+ */
7
13
  export declare const getAntdFormInitialValues: (recordForm: IRecordForm) => Store;
@@ -44,8 +44,14 @@ export const getEmptyInitialValue = (attribute) => {
44
44
  return EMPTY_INITIAL_VALUE_STRING;
45
45
  };
46
46
  export const getAntdDisplayedValue = (values, attribute) => formatStandardInitialValue(getUserInputValue(values) ?? getInheritedValue(values) ?? getCalculatedValue(values) ?? null, attribute);
47
+ /**
48
+ * @deprecated This function will be removed after 2026-01-01.
49
+ * This fn is not used anymore, this hook is used useFetchVisibleFormValue, so we don't load default values
50
+ * Return formatted values for an antdForm
51
+ * @param recordForm
52
+ */
47
53
  export const getAntdFormInitialValues = (recordForm) => recordForm.elements.reduce((acc, { attribute, values }) => {
48
- if (!attribute) {
54
+ if (!attribute || values === null) {
49
55
  return acc;
50
56
  }
51
57
  const value = getUserInputValue(values) ?? getInheritedValue(values) ?? getCalculatedValue(values) ?? null;
@@ -1 +1 @@
1
- {"version":3,"file":"antdUtils.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/antdUtils.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"antdUtils.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordContent/antdUtils.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,18 @@
1
1
  import { IRecordForm } from '../../../../../hooks/useGetRecordForm/useGetRecordForm';
2
2
  import { IFormElementsByContainer } from '../../_types';
3
- import { GetRecordColumnsValuesRecord } from '../../../../../_queries/records/getRecordColumnsValues';
4
3
  import { QueryResult } from '@apollo/client';
5
- export declare const extractFormElements: (form: IRecordForm, computedValues: GetRecordColumnsValuesRecord, computeErrors: QueryResult["error"]) => IFormElementsByContainer;
4
+ /**
5
+ * Extracts and organizes form elements by their container IDs.
6
+ *
7
+ * This function processes the `elements` property of the given form object, organizing
8
+ * them into a structured object grouped by their respective `containerId`. If no `containerId`
9
+ * is specified for an element, it defaults to `FORM_ROOT_CONTAINER_ID`. Additionally, it determines
10
+ * the UI representation (`uiElement`) of each element based on various properties, such as error states
11
+ * and type, and processes element settings.
12
+ *
13
+ * @param {IRecordForm} form - The form object containing elements to be processed.
14
+ * @param {QueryResult['error']} computeErrors - The set of compute errors used to determine error states of elements.
15
+ * @returns {IFormElementsByContainer} An object where each key represents a container ID and its value is an array of
16
+ * elements belonging to that container. Each element includes processed properties such as `uiElement` and updated settings.
17
+ */
18
+ export declare const extractFormElements: (form: IRecordForm, computeErrors: QueryResult["error"]) => IFormElementsByContainer;
@@ -1,31 +1,54 @@
1
1
  import { formComponents } from '../../uiElements';
2
2
  import ErrorField from '../../uiElements/ErrorField';
3
+ import { FORM_ROOT_CONTAINER_ID } from '@leav/utils';
3
4
  const isComputeValueInError = (computeErrors, attributeId) => computeErrors?.graphQLErrors[0]?.extensions?.fields?.[attributeId];
4
- export const extractFormElements = (form, computedValues, computeErrors) => form.elements.reduce((allElements, element) => {
5
- if (typeof allElements[element.containerId] === 'undefined') {
6
- allElements[element.containerId] = [];
5
+ /**
6
+ * Extracts and organizes form elements by their container IDs.
7
+ *
8
+ * This function processes the `elements` property of the given form object, organizing
9
+ * them into a structured object grouped by their respective `containerId`. If no `containerId`
10
+ * is specified for an element, it defaults to `FORM_ROOT_CONTAINER_ID`. Additionally, it determines
11
+ * the UI representation (`uiElement`) of each element based on various properties, such as error states
12
+ * and type, and processes element settings.
13
+ *
14
+ * @param {IRecordForm} form - The form object containing elements to be processed.
15
+ * @param {QueryResult['error']} computeErrors - The set of compute errors used to determine error states of elements.
16
+ * @returns {IFormElementsByContainer} An object where each key represents a container ID and its value is an array of
17
+ * elements belonging to that container. Each element includes processed properties such as `uiElement` and updated settings.
18
+ */
19
+ export const extractFormElements = (form, computeErrors) => {
20
+ if (!form?.elements) {
21
+ return {};
7
22
  }
8
- const computeInError = element.attribute?.id
9
- ? isComputeValueInError(computeErrors, element.attribute?.id)
10
- : false;
11
- const uiElement = (element.valueError && (!computedValues || !computedValues[element.attribute?.id])) || computeInError
12
- ? ErrorField
13
- : formComponents[element.uiElementType];
14
- const useAttributeLabel = element.settings.find(setting => setting.key === 'useAttributeLabel')?.value;
15
- const settings = element.settings.reduce((allSettings, curSettings) => {
16
- if (curSettings.key === 'label') {
17
- return {
18
- ...allSettings,
19
- label: useAttributeLabel ? element.attribute.label : curSettings.value
20
- };
23
+ return form.elements.reduce((allElements, element) => {
24
+ // Ensure containerId exists (use FORM_ROOT_CONTAINER_ID for root elements)
25
+ const containerId = element.containerId || FORM_ROOT_CONTAINER_ID;
26
+ // Initialize array for this container if it doesn't exist
27
+ if (!allElements[containerId]) {
28
+ allElements[containerId] = [];
21
29
  }
22
- return { ...allSettings, [curSettings.key]: curSettings.value };
30
+ const computeInError = element.attribute?.id
31
+ ? isComputeValueInError(computeErrors, element.attribute?.id)
32
+ : false;
33
+ const uiElement = (element.valueError && (!element.values || !element.values[element.attribute?.id])) || computeInError
34
+ ? ErrorField
35
+ : formComponents[element.uiElementType];
36
+ const useAttributeLabel = element.settings.find(setting => setting.key === 'useAttributeLabel')?.value;
37
+ const settings = element.settings.reduce((allSettings, curSettings) => {
38
+ if (curSettings.key === 'label') {
39
+ return {
40
+ ...allSettings,
41
+ label: useAttributeLabel ? element.attribute?.label : curSettings.value
42
+ };
43
+ }
44
+ return { ...allSettings, [curSettings.key]: curSettings.value };
45
+ }, {});
46
+ allElements[containerId].push({
47
+ ...element,
48
+ uiElement,
49
+ settings
50
+ });
51
+ return allElements;
23
52
  }, {});
24
- allElements[element.containerId].push({
25
- ...element,
26
- uiElement,
27
- settings
28
- });
29
- return allElements;
30
- }, {});
53
+ };
31
54
  //# sourceMappingURL=extractFormElements.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractFormElements.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,UAAU,MAAM,6BAA6B,CAAC;AAKrD,MAAM,qBAAqB,GAAG,CAAC,aAAmC,EAAE,WAAmB,EAAW,EAAE,CAChG,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,IAAiB,EACjB,cAA4C,EAC5C,aAAmC,EACX,EAAE,CAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE;IAC1C,IAAI,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,WAAW,EAAE,CAAC;QAC1D,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE;QACxC,CAAC,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QAC7D,CAAC,CAAC,KAAK,CAAC;IAEZ,MAAM,SAAS,GACX,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,cAAc;QACjG,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhD,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,mBAAmB,CAAC,EAAE,KAAK,CAAC;IAEvG,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;QAClE,IAAI,WAAW,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;YAC9B,OAAO;gBACH,GAAG,WAAW;gBACd,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK;aACzE,CAAC;QACN,CAAC;QACD,OAAO,EAAC,GAAG,WAAW,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,KAAK,EAAC,CAAC;IAClE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QAClC,GAAG,OAAO;QACV,SAAS;QACT,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACvB,CAAC,EAAE,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"extractFormElements.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/helpers/extractFormElements/extractFormElements.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,UAAU,MAAM,6BAA6B,CAAC;AAGrD,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAEnD,MAAM,qBAAqB,GAAG,CAAC,aAAmC,EAAE,WAAmB,EAAW,EAAE,CAChG,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC;AAEvE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,IAAiB,EACjB,aAAmC,EACX,EAAE;IAC1B,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE;QACjD,2EAA2E;QAC3E,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,sBAAsB,CAAC;QAElE,0DAA0D;QAC1D,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE;YACxC,CAAC,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;YAC7D,CAAC,CAAC,KAAK,CAAC;QAEZ,MAAM,SAAS,GACX,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,cAAc;YACjG,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,mBAAmB,CAAC,EAAE,KAAK,CAAC;QAEvG,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;YAClE,IAAI,WAAW,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO;oBACH,GAAG,WAAW;oBACd,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK;iBAC1E,CAAC;YACN,CAAC;YACD,OAAO,EAAC,GAAG,WAAW,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,KAAK,EAAC,CAAC;QAClE,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;YAC1B,GAAG,OAAO;YACV,SAAS;YACT,QAAQ;SACX,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACvB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { IRecordForm } from '../../../../hooks/useGetRecordForm';
2
+ /**
3
+ * Hook to fetch values from visible elements in a form (elements in the visible tab + other elements outside a tab)
4
+ * @param formIdToLoad
5
+ * @param recordForm
6
+ * @param tabIdVisible
7
+ */
8
+ export declare const useFetchVisibleFormValue: (formIdToLoad: string, recordForm: IRecordForm, tabIdVisible: string) => {
9
+ loading: boolean;
10
+ error: any;
11
+ refetchRecordFormWithValues: () => Promise<void>;
12
+ recordFormWithValues: IRecordForm;
13
+ };
@@ -0,0 +1,115 @@
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
+ // This file is released under LGPL V3
3
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
+ import { useGetRecordFormElementsValuesLazyQuery } from '../../../../_gqlTypes';
5
+ import { useEffect, useState } from 'react';
6
+ import { FormUIElementTypes } from '@leav/utils';
7
+ /**
8
+ * Hook to fetch values from visible elements in a form (elements in the visible tab + other elements outside a tab)
9
+ * @param formIdToLoad
10
+ * @param recordForm
11
+ * @param tabIdVisible
12
+ */
13
+ export const useFetchVisibleFormValue = (formIdToLoad, recordForm, tabIdVisible) => {
14
+ const [error, setError] = useState(null);
15
+ const [recordFormWithValues, setRecordFormWithValues] = useState(null);
16
+ const [elementIdsVisible, setElementIdsVisible] = useState([]);
17
+ const [elementsIdsFetched, setElementsIdsFetched] = useState([]);
18
+ const [getRecordFormElementsValues, { loading }] = useGetRecordFormElementsValuesLazyQuery({
19
+ fetchPolicy: 'no-cache'
20
+ });
21
+ // Get all elements visible
22
+ // Exclude uiElement of a type link
23
+ const getElementIdsVisible = () => {
24
+ // Find element ids from record.elements that are in the first page of a tab or are not a tab
25
+ const containerToExclude = [];
26
+ recordForm.elements.forEach(el => {
27
+ if (el.uiElementType === FormUIElementTypes.TABS) {
28
+ const tabSettings = el.settings?.find(s => s.key === 'tabs');
29
+ // Exclude all tab ids that are not equals to tabIdVisible variable
30
+ containerToExclude.push(...tabSettings.value.filter(e => e.id !== tabIdVisible).map(e => e.id));
31
+ }
32
+ });
33
+ // Find all elements visible
34
+ return recordForm.elements
35
+ .filter(e => e.uiElementType !== FormUIElementTypes.LINK)
36
+ .filter(e =>
37
+ // filters all elements where containers id contains /${e.id}
38
+ !containerToExclude.some(c => e.containerId?.includes(c)))
39
+ .map(e => e.id);
40
+ };
41
+ useEffect(() => {
42
+ (async () => {
43
+ if (!recordForm || !formIdToLoad || tabIdVisible === undefined) {
44
+ return;
45
+ }
46
+ const elementIds = getElementIdsVisible();
47
+ setElementIdsVisible(elementIds);
48
+ // List of elementIds that we don't have fetched their values yet
49
+ const elementIdsToFetch = elementIds.filter(e => !elementsIdsFetched.includes(e));
50
+ if (!elementIdsToFetch.length) {
51
+ return;
52
+ }
53
+ try {
54
+ const result = await getRecordFormElementsValues({
55
+ variables: {
56
+ libraryId: recordForm.library.id,
57
+ recordId: recordForm.recordId,
58
+ formId: formIdToLoad,
59
+ elementIds: elementIdsToFetch
60
+ }
61
+ });
62
+ setElementsIdsFetched([...elementsIdsFetched, ...elementIdsToFetch]);
63
+ const recordFormElementValues = (result.data?.getRecordFormElementsValues ||
64
+ []);
65
+ updateRecordFormWithValues(recordFormElementValues);
66
+ }
67
+ catch (e) {
68
+ setError(e);
69
+ }
70
+ })();
71
+ }, [formIdToLoad, recordForm, tabIdVisible]);
72
+ // Merge new values into recordForm
73
+ const updateRecordFormWithValues = (elementsValues) => {
74
+ setRecordFormWithValues({
75
+ ...recordForm,
76
+ elements: recordForm.elements.map(e => {
77
+ const elementValue = elementsValues.find((v) => v.id === e.id);
78
+ if (elementValue) {
79
+ return {
80
+ ...e,
81
+ values: elementValue.values,
82
+ valueError: elementValue.valueError
83
+ };
84
+ }
85
+ else {
86
+ return e;
87
+ }
88
+ })
89
+ });
90
+ };
91
+ // Create a refetch function for computed fields
92
+ const refetchRecordFormWithValues = async () => {
93
+ try {
94
+ const result = await getRecordFormElementsValues({
95
+ variables: {
96
+ libraryId: recordForm.library.id,
97
+ recordId: recordForm.recordId,
98
+ formId: formIdToLoad,
99
+ elementIds: elementIdsVisible
100
+ }
101
+ });
102
+ updateRecordFormWithValues((result.data?.getRecordFormElementsValues || []));
103
+ }
104
+ catch (e) {
105
+ setError(e);
106
+ }
107
+ };
108
+ return {
109
+ loading,
110
+ error,
111
+ refetchRecordFormWithValues,
112
+ recordFormWithValues
113
+ };
114
+ };
115
+ //# sourceMappingURL=useFetchVisibleFormValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFetchVisibleFormValue.js","sourceRoot":"","sources":["../../../../../src/components/RecordEdition/EditRecordContent/hooks/useFetchVisibleFormValue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { RecordFormElement } from '../../../../hooks/useGetRecordForm';
2
+ /**
3
+ * Hook to manage tab visibility and tab click events in the EditRecordContent component
4
+ * @returns Object containing the visible tab ID and a handler for tab click events
5
+ * undefined = not loaded yet, null = no tabs found, string = id found
6
+ * @param elements
7
+ */
8
+ export declare const useTabManagement: (elements: RecordFormElement[]) => {
9
+ tabIdVisible: string;
10
+ handleTabClick: (tabIdClicked: string) => void;
11
+ };
12
+ export default useTabManagement;
@@ -0,0 +1,39 @@
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
+ // This file is released under LGPL V3
3
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
+ import { useState, useEffect } from 'react';
5
+ /**
6
+ * Hook to manage tab visibility and tab click events in the EditRecordContent component
7
+ * @returns Object containing the visible tab ID and a handler for tab click events
8
+ * undefined = not loaded yet, null = no tabs found, string = id found
9
+ * @param elements
10
+ */
11
+ export const useTabManagement = (elements) => {
12
+ // State to track the currently visible tab ID
13
+ const [tabIdVisible, setTabIdVisible] = useState(undefined);
14
+ // Initialize the visible tab ID when the record form is loaded
15
+ useEffect(() => {
16
+ // When we load the record form, get the ID of the first tab
17
+ const firstTabId = elements?.find(e => e.uiElementType === 'tabs')?.settings?.find(s => s.key === 'tabs')
18
+ ?.value[0]?.id;
19
+ if (firstTabId) {
20
+ setTabIdVisible(firstTabId);
21
+ }
22
+ else {
23
+ setTabIdVisible(null);
24
+ }
25
+ }, [elements]);
26
+ /**
27
+ * Handler for tab click events
28
+ * @param tabIdClicked The ID of the tab that was clicked
29
+ */
30
+ const handleTabClick = (tabIdClicked) => {
31
+ setTabIdVisible(tabIdClicked);
32
+ };
33
+ return {
34
+ tabIdVisible,
35
+ handleTabClick
36
+ };
37
+ };
38
+ export default useTabManagement;
39
+ //# sourceMappingURL=useTabManagement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTabManagement.js","sourceRoot":"","sources":["../../../../../src/components/RecordEdition/EditRecordContent/hooks/useTabManagement.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AAG1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAA6B,EAAE,EAAE;IAC9D,8CAA8C;IAC9C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAA4B,SAAS,CAAC,CAAC;IAEvF,+DAA+D;IAC/D,SAAS,CAAC,GAAG,EAAE;QACX,4DAA4D;QAC5D,MAAM,UAAU,GAAG,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC;YACrG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAEnB,IAAI,UAAU,EAAE,CAAC;YACb,eAAe,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACJ,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf;;;OAGG;IACH,MAAM,cAAc,GAAG,CAAC,YAAoB,EAAE,EAAE;QAC5C,eAAe,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,OAAO;QACH,YAAY;QACZ,cAAc;KACjB,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}