@leav/ui 1.5.3 → 1.6.0-0f019af0

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 (203) hide show
  1. package/dist/_gqlTypes/index.d.ts +640 -701
  2. package/dist/_gqlTypes/index.js +50 -167
  3. package/dist/_gqlTypes/index.js.map +1 -1
  4. package/dist/_queries/trees/treeNodeChildrenQuery.js +2 -0
  5. package/dist/_queries/trees/treeNodeChildrenQuery.js.map +1 -1
  6. package/dist/_queries/views/viewDetailsFragment.js +1 -0
  7. package/dist/_queries/views/viewDetailsFragment.js.map +1 -1
  8. package/dist/components/AttributesSelectionList/sharedComponents.d.ts +159 -153
  9. package/dist/components/Explorer/Explorer.js +5 -3
  10. package/dist/components/Explorer/Explorer.js.map +1 -1
  11. package/dist/components/Explorer/ExplorerFiltersAndSorts.js +1 -1
  12. package/dist/components/Explorer/ExplorerFiltersAndSorts.js.map +1 -1
  13. package/dist/components/Explorer/TableCell.js +6 -7
  14. package/dist/components/Explorer/TableCell.js.map +1 -1
  15. package/dist/components/Explorer/TableNameCell.js +9 -3
  16. package/dist/components/Explorer/TableNameCell.js.map +1 -1
  17. package/dist/components/Explorer/_queries/useExplorerData.d.ts +7 -7
  18. package/dist/components/Explorer/_queries/useExplorerData.js +19 -7
  19. package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -1
  20. package/dist/components/Explorer/_types.d.ts +1 -0
  21. package/dist/components/Explorer/_types.js.map +1 -1
  22. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js +3 -2
  23. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -1
  24. package/dist/components/Explorer/actions-item/useReplaceItemAction.d.ts +2 -1
  25. package/dist/components/Explorer/actions-item/useReplaceItemAction.js +5 -4
  26. package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
  27. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.d.ts +10 -0
  28. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js +46 -0
  29. package/dist/components/Explorer/actions-mass/export/ExportProfileSelectionModal.js.map +1 -0
  30. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.d.ts +1 -0
  31. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js +17 -0
  32. package/dist/components/Explorer/actions-mass/export/content/NoProfiles.js.map +1 -0
  33. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.d.ts +8 -0
  34. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js +49 -0
  35. package/dist/components/Explorer/actions-mass/export/content/ProfilesSelection.js.map +1 -0
  36. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.d.ts +27 -0
  37. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js +48 -0
  38. package/dist/components/Explorer/actions-mass/export/useGetLibraryExportProfiles.js.map +1 -0
  39. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js +3 -2
  40. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js.map +1 -1
  41. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +3 -2
  42. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
  43. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js +8 -7
  44. package/dist/components/Explorer/actions-mass/useEditAttributeMassAction.js.map +1 -1
  45. package/dist/components/Explorer/actions-mass/useExportMassAction.d.ts +7 -4
  46. package/dist/components/Explorer/actions-mass/useExportMassAction.js +81 -74
  47. package/dist/components/Explorer/actions-mass/useExportMassAction.js.map +1 -1
  48. package/dist/components/Explorer/actions-mass/useMassActions.js +3 -2
  49. package/dist/components/Explorer/actions-mass/useMassActions.js.map +1 -1
  50. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +3 -2
  51. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
  52. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +2 -1
  53. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +5 -4
  54. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
  55. package/dist/components/Explorer/link-item/LinkModal.d.ts +1 -0
  56. package/dist/components/Explorer/link-item/LinkModal.js +2 -2
  57. package/dist/components/Explorer/link-item/LinkModal.js.map +1 -1
  58. package/dist/components/Explorer/list-saved-views/SavedViews.js +12 -9
  59. package/dist/components/Explorer/list-saved-views/SavedViews.js.map +1 -1
  60. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js +5 -8
  61. package/dist/components/Explorer/manage-view-settings/_shared/ColumnItem.js.map +1 -1
  62. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js +3 -2
  63. package/dist/components/Explorer/manage-view-settings/configure-display/attributes/SelectVisibleAttributes.js.map +1 -1
  64. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js +7 -6
  65. package/dist/components/Explorer/manage-view-settings/filter-items/FilterItems.js.map +1 -1
  66. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js +3 -2
  67. package/dist/components/Explorer/manage-view-settings/filter-items/FilterListItem.js.map +1 -1
  68. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js +4 -3
  69. package/dist/components/Explorer/manage-view-settings/open-view-settings/useOpenViewSettings.js.map +1 -1
  70. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js +3 -2
  71. package/dist/components/Explorer/manage-view-settings/router-menu/SettingItem.js.map +1 -1
  72. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js +3 -2
  73. package/dist/components/Explorer/manage-view-settings/router-menu/SettingsPanel.js.map +1 -1
  74. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js +3 -2
  75. package/dist/components/Explorer/manage-view-settings/save-view/LabelViewFormModal.js.map +1 -1
  76. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js +3 -0
  77. package/dist/components/Explorer/manage-view-settings/save-view/prepareViewForRequest.js.map +1 -1
  78. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js +3 -2
  79. package/dist/components/Explorer/manage-view-settings/save-view/useCreateNewView.js.map +1 -1
  80. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js +4 -3
  81. package/dist/components/Explorer/manage-view-settings/save-view/useDeleteView.js.map +1 -1
  82. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js +3 -2
  83. package/dist/components/Explorer/manage-view-settings/save-view/useEditLabelView.js.map +1 -1
  84. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js +3 -2
  85. package/dist/components/Explorer/manage-view-settings/save-view/useResetView.js.map +1 -1
  86. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js +3 -2
  87. package/dist/components/Explorer/manage-view-settings/save-view/useShareView.js.map +1 -1
  88. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js +3 -2
  89. package/dist/components/Explorer/manage-view-settings/save-view/useUpdateView.js.map +1 -1
  90. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js +7 -6
  91. package/dist/components/Explorer/manage-view-settings/sort-items/SortItems.js.map +1 -1
  92. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js +3 -2
  93. package/dist/components/Explorer/manage-view-settings/sort-items/SortListItem.js.map +1 -1
  94. package/dist/components/Explorer/manage-view-settings/store-view-settings/viewSettingsReducer.js.map +1 -1
  95. package/dist/components/Explorer/useSearchInput.js +6 -2
  96. package/dist/components/Explorer/useSearchInput.js.map +1 -1
  97. package/dist/components/Filters/FiltersProvider.d.ts +2 -2
  98. package/dist/components/Filters/FiltersProvider.js.map +1 -1
  99. package/dist/components/Filters/_types.d.ts +3 -0
  100. package/dist/components/Filters/_types.js.map +1 -1
  101. package/dist/components/Filters/context/filtersReducer.js +7 -4
  102. package/dist/components/Filters/context/filtersReducer.js.map +1 -1
  103. package/dist/components/Filters/context/useGetTreeFilters.js +3 -1
  104. package/dist/components/Filters/context/useGetTreeFilters.js.map +1 -1
  105. package/dist/components/Filters/filter-items/CommonFilterItem.d.ts +1 -0
  106. package/dist/components/Filters/filter-items/CommonFilterItem.js +28 -8
  107. package/dist/components/Filters/filter-items/CommonFilterItem.js.map +1 -1
  108. package/dist/components/Filters/filter-items/EmptyValueCheckbox.d.ts +8 -0
  109. package/dist/components/Filters/filter-items/EmptyValueCheckbox.js +16 -0
  110. package/dist/components/Filters/filter-items/EmptyValueCheckbox.js.map +1 -0
  111. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js +23 -9
  112. package/dist/components/Filters/filter-items/filter-type/BooleanAttributeDropdown.js.map +1 -1
  113. package/dist/components/Filters/filter-items/filter-type/ColorAttributeDropDown.js +9 -8
  114. package/dist/components/Filters/filter-items/filter-type/ColorAttributeDropDown.js.map +1 -1
  115. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js +4 -3
  116. package/dist/components/Filters/filter-items/filter-type/FilterDropDown.js.map +1 -1
  117. package/dist/components/Filters/filter-items/filter-type/FilterDropdownContent.js +1 -1
  118. package/dist/components/Filters/filter-items/filter-type/FilterDropdownContent.js.map +1 -1
  119. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.d.ts +0 -1
  120. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js +17 -23
  121. package/dist/components/Filters/filter-items/filter-type/FilterValueListDropDown.js.map +1 -1
  122. package/dist/components/Filters/filter-items/filter-type/TreeAttributeDropDown.js +10 -12
  123. package/dist/components/Filters/filter-items/filter-type/TreeAttributeDropDown.js.map +1 -1
  124. package/dist/components/Filters/filter-items/filter-type/useConditionOptionsByType.js +3 -13
  125. package/dist/components/Filters/filter-items/filter-type/useConditionOptionsByType.js.map +1 -1
  126. package/dist/components/Filters/index.d.ts +1 -0
  127. package/dist/components/Filters/index.js +1 -0
  128. package/dist/components/Filters/index.js.map +1 -1
  129. package/dist/components/Filters/prepareFiltersForRequest.js +36 -3
  130. package/dist/components/Filters/prepareFiltersForRequest.js.map +1 -1
  131. package/dist/components/Filters/useFilters.d.ts +5 -0
  132. package/dist/components/Filters/useTransformFilters.js +4 -0
  133. package/dist/components/Filters/useTransformFilters.js.map +1 -1
  134. package/dist/components/ImportModal/ImportModalSelectFileStep/ImportModalSelectFileStep.js +8 -4
  135. package/dist/components/ImportModal/ImportModalSelectFileStep/ImportModalSelectFileStep.js.map +1 -1
  136. package/dist/components/LibraryItemsList/FiltersPanel/FiltersOptions.js +1 -8
  137. package/dist/components/LibraryItemsList/FiltersPanel/FiltersOptions.js.map +1 -1
  138. package/dist/components/LibraryItemsList/LibraryItemsListContent/LibraryItemsListContent.js +5 -3
  139. package/dist/components/LibraryItemsList/LibraryItemsListContent/LibraryItemsListContent.js.map +1 -1
  140. package/dist/components/LibraryItemsList/MenuView/MenuView.js +4 -4
  141. package/dist/components/LibraryItemsList/MenuView/MenuView.js.map +1 -1
  142. package/dist/components/LibraryItemsList/ViewPanel/View/View.js +3 -2
  143. package/dist/components/LibraryItemsList/ViewPanel/View/View.js.map +1 -1
  144. package/dist/components/Notifications/hooks/useNotificationSubscription.js +10 -8
  145. package/dist/components/Notifications/hooks/useNotificationSubscription.js.map +1 -1
  146. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js +5 -20
  147. package/dist/components/RecordEdition/EditRecordContent/shared/ValuesVersionBtn/ValuesVersionBtn.js.map +1 -1
  148. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js +4 -3
  149. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record/useLinkRecords.js.map +1 -1
  150. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.d.ts +53 -51
  151. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +4 -3
  152. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  153. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js +9 -2
  154. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/TreeField.js.map +1 -1
  155. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeFieldWrapper.d.ts +53 -51
  156. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js +3 -2
  157. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/display-tree-node/TreeNodeItem.js.map +1 -1
  158. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.d.ts +2 -1
  159. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js +4 -7
  160. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/SelectTreeNodeModal.js.map +1 -1
  161. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.d.ts +3 -2
  162. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js +2 -2
  163. package/dist/components/RecordEdition/EditRecordContent/uiElements/TreeField/manage-tree-node-selection/useManageTreeNodeSelection.js.map +1 -1
  164. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js +3 -2
  165. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -1
  166. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js +3 -2
  167. package/dist/components/RecordEdition/EditRecordSidebar/RecordSummary/RecordInformations/RecordInformations.js.map +1 -1
  168. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +4 -3
  169. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -1
  170. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js +3 -2
  171. package/dist/components/RecordEdition/EditRecordSidebar/ValuesVersions/ValuesVersions.js.map +1 -1
  172. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +1 -0
  173. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +7 -7
  174. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
  175. package/dist/components/SelectTreeNode/SelectTreeNode.d.ts +2 -1
  176. package/dist/components/SelectTreeNode/SelectTreeNode.js +3 -3
  177. package/dist/components/SelectTreeNode/SelectTreeNode.js.map +1 -1
  178. package/dist/components/SelectTreeNode/SelectTreeNodeContent.d.ts +2 -1
  179. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js +6 -2
  180. package/dist/components/SelectTreeNode/SelectTreeNodeContent.js.map +1 -1
  181. package/dist/components/SelectTreeNode/TreeNodeTitle.js +3 -2
  182. package/dist/components/SelectTreeNode/TreeNodeTitle.js.map +1 -1
  183. package/dist/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.js +14 -4
  184. package/dist/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.js.map +1 -1
  185. package/dist/constants.d.ts +5 -1
  186. package/dist/constants.js +5 -1
  187. package/dist/constants.js.map +1 -1
  188. package/dist/hooks/useIFrameMessenger/messageHandlers.d.ts +2 -1
  189. package/dist/hooks/useIFrameMessenger/messageHandlers.js +8 -0
  190. package/dist/hooks/useIFrameMessenger/messageHandlers.js.map +1 -1
  191. package/dist/hooks/useIFrameMessenger/schema.d.ts +5 -0
  192. package/dist/hooks/useIFrameMessenger/schema.js +2 -0
  193. package/dist/hooks/useIFrameMessenger/schema.js.map +1 -1
  194. package/dist/hooks/useIFrameMessenger/types.d.ts +12 -2
  195. package/dist/hooks/useIFrameMessenger/types.js.map +1 -1
  196. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.d.ts +1 -0
  197. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js +16 -2
  198. package/dist/hooks/useIFrameMessenger/useIFrameMessenger.js.map +1 -1
  199. package/dist/hooks/useIFrameMessengerClient/iFrameMessengerClientContext.d.ts +1 -0
  200. package/dist/hooks/useIFrameMessengerClient/useIFrameMessengerClient.d.ts +1 -0
  201. package/dist/locales/en/shared.json +15 -3
  202. package/dist/locales/fr/shared.json +15 -3
  203. package/package.json +21 -24
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerPreviewsGenerationModal.js","sourceRoot":"","sources":["../../../src/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.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 {localizedTranslation} from '@leav/utils';\nimport {Checkbox, Divider, Modal, Tree} from 'antd';\nimport {useKitNotification} from 'aristid-ds';\nimport {useState} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type RecordFilterInput,\n useForcePreviewsGenerationMutation,\n useGetLibraryPreviewsSettingsQuery,\n} from '_ui/_gqlTypes';\nimport useLang from '../../hooks/useLang';\nimport {ErrorDisplay} from '../ErrorDisplay';\nimport {Loading} from '../Loading';\n\ninterface ITriggerPreviewsGenerationModalProps {\n libraryId: string;\n filesLibraryId?: string;\n recordIds?: string[];\n filters?: RecordFilterInput[];\n onClose: () => void;\n}\n\nfunction TriggerPreviewsGenerationModal({\n libraryId,\n filesLibraryId,\n recordIds,\n filters,\n onClose,\n}: ITriggerPreviewsGenerationModalProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const {kitNotification} = useKitNotification();\n\n const [isFailedOnlyChecked, setIsFailedOnlyChecked] = useState(false);\n const [checkedSizes, setCheckedSizes] = useState<string[]>([]);\n const [treeData, setTreeData] = useState([]);\n const [allSizes, setAllSizes] = useState<string[]>([]);\n\n const [startPreviewsGeneration, {loading}] = useForcePreviewsGenerationMutation();\n\n const {error: getLibrariesError, loading: getLibrariesLoading} = useGetLibraryPreviewsSettingsQuery({\n variables: {id: filesLibraryId || libraryId},\n onCompleted: getLibrariesData => {\n const previewSettings = getLibrariesData.libraries.list?.[0].previewsSettings || [];\n const sizes = [];\n\n const td = previewSettings.map(s => {\n const children = s.versions.sizes.map(vs => ({title: `${vs.name} (${vs.size}px)`, key: vs.name}));\n sizes.push(...children.map(c => c.key));\n\n return {\n title: localizedTranslation(s.label, lang),\n key: localizedTranslation(s.label, lang),\n children,\n };\n });\n\n setTreeData(td);\n setAllSizes(sizes);\n },\n });\n\n const _triggerPreviewsGeneration = async () => {\n try {\n const result = await startPreviewsGeneration({\n variables: {\n libraryId,\n recordIds,\n filters: filters ?? null,\n failedOnly: isFailedOnlyChecked,\n previewVersionSizeNames: checkedSizes,\n },\n });\n\n const isSuccess = result.data?.forcePreviewsGeneration ?? false;\n\n if (isSuccess) {\n kitNotification.success({description: null, message: t('files.previews_generation_success')});\n } else {\n kitNotification.info({description: null, message: t('files.previews_generation_nothing_to_do')});\n }\n\n onClose();\n } catch (e) {\n // Nothing to do here, error should be handled globally by Apollo. Uncomment next line for easier debugging\n // console.error(e);\n }\n };\n\n const _handleFailedOnlyChange = () => {\n setIsFailedOnlyChecked(!isFailedOnlyChecked);\n };\n\n const onCheck = (_, {checkedNodes}) => {\n const checked = checkedNodes.filter(n => !n.children).map(n => n.key) as string[]; // we keep only sizes name\n\n setCheckedSizes(checked);\n };\n\n const onChange = () => {\n if (checkedSizes.length === allSizes.length) {\n setCheckedSizes([]);\n } else {\n setCheckedSizes(allSizes);\n }\n };\n\n return (\n <Modal\n open\n title={t('files.generate_previews')}\n cancelText={t('global.cancel')}\n okText={t('global.submit')}\n onCancel={onClose}\n width={600}\n onOk={_triggerPreviewsGeneration}\n okButtonProps={{\n disabled: !checkedSizes.length,\n }}\n confirmLoading={loading}\n >\n {getLibrariesLoading && <Loading />}\n {!getLibrariesLoading && getLibrariesError && <ErrorDisplay message={getLibrariesError.message} />}\n {!getLibrariesLoading && !getLibrariesError && (\n <>\n <Checkbox onChange={onChange} checked={checkedSizes.length === allSizes.length}>\n {t('files.previews_generation_select_all')}\n </Checkbox>\n <Tree\n checkable\n onCheck={onCheck}\n checkedKeys={checkedSizes}\n selectable={false}\n treeData={treeData}\n />\n <Divider />\n <Checkbox onChange={_handleFailedOnlyChange} checked={isFailedOnlyChecked} aria-label=\"failed-only\">\n {t('files.previews_generation_failed_only')}\n </Checkbox>\n </>\n )}\n </Modal>\n );\n}\n\nexport default TriggerPreviewsGenerationModal;\n"]}
1
+ {"version":3,"file":"TriggerPreviewsGenerationModal.js","sourceRoot":"","sources":["../../../src/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,MAAM,MAAM,CAAC;AACpD,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAEH,kCAAkC,EAClC,kCAAkC,GACrC,MAAM,eAAe,CAAC;AACvB,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,OAAO,EAAC,MAAM,YAAY,CAAC;AACnC,OAAO,EAAC,0BAA0B,EAAE,6BAA6B,EAAC,MAAM,eAAe,CAAC;AAUxF,SAAS,8BAA8B,CAAC,EACpC,SAAS,EACT,cAAc,EACd,SAAS,EACT,OAAO,EACP,OAAO,GAC4B;IACnC,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IAEzB,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAEvD,MAAM,CAAC,uBAAuB,EAAE,EAAC,OAAO,EAAC,CAAC,GAAG,kCAAkC,EAAE,CAAC;IAElF,MAAM,EAAC,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,mBAAmB,EAAC,GAAG,kCAAkC,CAAC;QAChG,SAAS,EAAE,EAAC,EAAE,EAAE,cAAc,IAAI,SAAS,EAAC;QAC5C,WAAW,EAAE,gBAAgB,CAAC,EAAE;YAC5B,MAAM,eAAe,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAC;YACpF,MAAM,KAAK,GAAG,EAAE,CAAC;YAEjB,MAAM,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,EAAC,CAAC,CAAC,CAAC;gBAClG,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAExC,OAAO;oBACH,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;oBAC1C,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;oBACxC,QAAQ;iBACX,CAAC;YACN,CAAC,CAAC,CAAC;YAEH,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,WAAW,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,0BAA0B,GAAG,KAAK,IAAI,EAAE;QAC1C,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC;gBACzC,SAAS,EAAE;oBACP,SAAS;oBACT,SAAS;oBACT,OAAO,EAAE,OAAO,IAAI,IAAI;oBACxB,UAAU,EAAE,mBAAmB;oBAC/B,uBAAuB,EAAE,YAAY;iBACxC;aACJ,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,uBAAuB,IAAI,KAAK,CAAC;YAEhE,IAAI,SAAS,EAAE,CAAC;gBACZ,eAAe,CAAC,OAAO,CAAC;oBACpB,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,CAAC,CAAC,mCAAmC,CAAC;oBAC/C,QAAQ,EAAE,6BAA6B;iBAC1C,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,eAAe,CAAC,IAAI,CAAC;oBACjB,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,CAAC,CAAC,yCAAyC,CAAC;oBACrD,QAAQ,EAAE,0BAA0B;iBACvC,CAAC,CAAC;YACP,CAAC;YAED,OAAO,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,2GAA2G;YAC3G,oBAAoB;QACxB,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACjC,sBAAsB,CAAC,CAAC,mBAAmB,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAC,YAAY,EAAC,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAa,CAAC,CAAC,0BAA0B;QAE7G,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;QAClB,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1C,eAAe,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,MAAC,KAAK,IACF,IAAI,QACJ,KAAK,EAAE,CAAC,CAAC,yBAAyB,CAAC,EACnC,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC,EAC9B,MAAM,EAAE,CAAC,CAAC,eAAe,CAAC,EAC1B,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,0BAA0B,EAChC,aAAa,EAAE;YACX,QAAQ,EAAE,CAAC,YAAY,CAAC,MAAM;SACjC,EACD,cAAc,EAAE,OAAO,aAEtB,mBAAmB,IAAI,KAAC,OAAO,KAAG,EAClC,CAAC,mBAAmB,IAAI,iBAAiB,IAAI,KAAC,YAAY,IAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,GAAI,EACjG,CAAC,mBAAmB,IAAI,CAAC,iBAAiB,IAAI,CAC3C,8BACI,KAAC,QAAQ,IAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,YACzE,CAAC,CAAC,sCAAsC,CAAC,GACnC,EACX,KAAC,IAAI,IACD,SAAS,QACT,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,KAAK,EACjB,QAAQ,EAAE,QAAQ,GACpB,EACF,KAAC,OAAO,KAAG,EACX,KAAC,QAAQ,IAAC,QAAQ,EAAE,uBAAuB,EAAE,OAAO,EAAE,mBAAmB,gBAAa,aAAa,YAC9F,CAAC,CAAC,uCAAuC,CAAC,GACpC,IACZ,CACN,IACG,CACX,CAAC;AACN,CAAC;AAED,eAAe,8BAA8B,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 {localizedTranslation} from '@leav/utils';\nimport {Checkbox, Divider, Modal, Tree} from 'antd';\nimport {KitNotification} from 'aristid-ds';\nimport {useState} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type RecordFilterInput,\n useForcePreviewsGenerationMutation,\n useGetLibraryPreviewsSettingsQuery,\n} from '_ui/_gqlTypes';\nimport useLang from '../../hooks/useLang';\nimport {ErrorDisplay} from '../ErrorDisplay';\nimport {Loading} from '../Loading';\nimport {INFO_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION} from '_ui/constants';\n\ninterface ITriggerPreviewsGenerationModalProps {\n libraryId: string;\n filesLibraryId?: string;\n recordIds?: string[];\n filters?: RecordFilterInput[];\n onClose: () => void;\n}\n\nfunction TriggerPreviewsGenerationModal({\n libraryId,\n filesLibraryId,\n recordIds,\n filters,\n onClose,\n}: ITriggerPreviewsGenerationModalProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const [isFailedOnlyChecked, setIsFailedOnlyChecked] = useState(false);\n const [checkedSizes, setCheckedSizes] = useState<string[]>([]);\n const [treeData, setTreeData] = useState([]);\n const [allSizes, setAllSizes] = useState<string[]>([]);\n\n const [startPreviewsGeneration, {loading}] = useForcePreviewsGenerationMutation();\n\n const {error: getLibrariesError, loading: getLibrariesLoading} = useGetLibraryPreviewsSettingsQuery({\n variables: {id: filesLibraryId || libraryId},\n onCompleted: getLibrariesData => {\n const previewSettings = getLibrariesData.libraries.list?.[0].previewsSettings || [];\n const sizes = [];\n\n const td = previewSettings.map(s => {\n const children = s.versions.sizes.map(vs => ({title: `${vs.name} (${vs.size}px)`, key: vs.name}));\n sizes.push(...children.map(c => c.key));\n\n return {\n title: localizedTranslation(s.label, lang),\n key: localizedTranslation(s.label, lang),\n children,\n };\n });\n\n setTreeData(td);\n setAllSizes(sizes);\n },\n });\n\n const _triggerPreviewsGeneration = async () => {\n try {\n const result = await startPreviewsGeneration({\n variables: {\n libraryId,\n recordIds,\n filters: filters ?? null,\n failedOnly: isFailedOnlyChecked,\n previewVersionSizeNames: checkedSizes,\n },\n });\n\n const isSuccess = result.data?.forcePreviewsGeneration ?? false;\n\n if (isSuccess) {\n KitNotification.success({\n closable: true,\n description: null,\n message: t('files.previews_generation_success'),\n duration: SUCCESS_NOTIFICATION_DURATION,\n });\n } else {\n KitNotification.info({\n closable: true,\n description: null,\n message: t('files.previews_generation_nothing_to_do'),\n duration: INFO_NOTIFICATION_DURATION,\n });\n }\n\n onClose();\n } catch (e) {\n // Nothing to do here, error should be handled globally by Apollo. Uncomment next line for easier debugging\n // console.error(e);\n }\n };\n\n const _handleFailedOnlyChange = () => {\n setIsFailedOnlyChecked(!isFailedOnlyChecked);\n };\n\n const onCheck = (_, {checkedNodes}) => {\n const checked = checkedNodes.filter(n => !n.children).map(n => n.key) as string[]; // we keep only sizes name\n\n setCheckedSizes(checked);\n };\n\n const onChange = () => {\n if (checkedSizes.length === allSizes.length) {\n setCheckedSizes([]);\n } else {\n setCheckedSizes(allSizes);\n }\n };\n\n return (\n <Modal\n open\n title={t('files.generate_previews')}\n cancelText={t('global.cancel')}\n okText={t('global.submit')}\n onCancel={onClose}\n width={600}\n onOk={_triggerPreviewsGeneration}\n okButtonProps={{\n disabled: !checkedSizes.length,\n }}\n confirmLoading={loading}\n >\n {getLibrariesLoading && <Loading />}\n {!getLibrariesLoading && getLibrariesError && <ErrorDisplay message={getLibrariesError.message} />}\n {!getLibrariesLoading && !getLibrariesError && (\n <>\n <Checkbox onChange={onChange} checked={checkedSizes.length === allSizes.length}>\n {t('files.previews_generation_select_all')}\n </Checkbox>\n <Tree\n checkable\n onCheck={onCheck}\n checkedKeys={checkedSizes}\n selectable={false}\n treeData={treeData}\n />\n <Divider />\n <Checkbox onChange={_handleFailedOnlyChange} checked={isFailedOnlyChecked} aria-label=\"failed-only\">\n {t('files.previews_generation_failed_only')}\n </Checkbox>\n </>\n )}\n </Modal>\n );\n}\n\nexport default TriggerPreviewsGenerationModal;\n"]}
@@ -5,6 +5,7 @@ export declare enum PreviewSize {
5
5
  MEDIUM = "medium",
6
6
  BIG = "big"
7
7
  }
8
+ export declare const ACTIVE_ATTRIBUTE_ID = "active";
8
9
  export declare const tagColorByAttributeType: {
9
10
  [key in AttributeType]: [border: string, background: string];
10
11
  };
@@ -30,7 +31,10 @@ export declare const GLOBAL_BASE_URL: string;
30
31
  export declare const PREFIX_USER_VIEWS_ORDER_KEY = "user_views_order_";
31
32
  export declare const PREFIX_SHARED_VIEWS_ORDER_KEY = "shared_views_order_";
32
33
  export declare const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;
33
- export declare const INFO_NOTIFICATION_DURATION_SECONDS = 5;
34
+ export declare const INFO_NOTIFICATION_DURATION = 5000;
35
+ export declare const ERROR_NOTIFICATION_DURATION = 5000;
36
+ export declare const SUCCESS_NOTIFICATION_DURATION = 5000;
37
+ export declare const SUBSCRIPTION_NOTIFICATION_DURATION = 10000;
34
38
  export declare const SUCCESS_ALERT_DURATION = 3000;
35
39
  export declare const ERROR_ALERT_DURATION = 5000;
36
40
  export declare const EDIT_RECORD_SIDEBAR_ID = "edit_record_sidebar";
package/dist/constants.js CHANGED
@@ -12,6 +12,7 @@ export var PreviewSize;
12
12
  PreviewSize["MEDIUM"] = "medium";
13
13
  PreviewSize["BIG"] = "big";
14
14
  })(PreviewSize || (PreviewSize = {}));
15
+ export const ACTIVE_ATTRIBUTE_ID = 'active';
15
16
  export const tagColorByAttributeType = {
16
17
  [AttributeType.simple]: ['purple', '#ffe5ff'],
17
18
  [AttributeType.simple_link]: ['blue', '#e5e5ff'],
@@ -41,7 +42,10 @@ export const GLOBAL_BASE_URL = window.__global_base_url__ || '';
41
42
  export const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';
42
43
  export const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';
43
44
  export const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;
44
- export const INFO_NOTIFICATION_DURATION_SECONDS = 5;
45
+ export const INFO_NOTIFICATION_DURATION = 5000;
46
+ export const ERROR_NOTIFICATION_DURATION = 5000;
47
+ export const SUCCESS_NOTIFICATION_DURATION = 5000;
48
+ export const SUBSCRIPTION_NOTIFICATION_DURATION = 10000;
45
49
  export const SUCCESS_ALERT_DURATION = 3000;
46
50
  export const ERROR_ALERT_DURATION = 5000;
47
51
  export const EDIT_RECORD_SIDEBAR_ID = 'edit_record_sidebar';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,gCAAgC;AAChC,sCAAsC;AACtC,OAAO,EAAC,eAAe,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AAE3D,sEAAsE;AACtE,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,0BAAW,CAAA;AACf,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAmE;IACnG,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7C,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAChD,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC/C,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACrD,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7C,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAqE;IACvG,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC9C,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3C,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACpD,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;IAC/C,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAClD,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAChD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5C,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9C,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;CACtD,CAAC;AAEF,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,oCAAe,CAAA;IACf,0DAAqC,CAAA;IACrC,4DAAuC,CAAA;AAC3C,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAaD,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;AAEhE,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAEnE,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AAEpD,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAK,CAAC;AAE1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,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\n// Copyright LEAV Solutions 2017\n// This file is released under LGPL V3\nimport {AttributeFormat, AttributeType} from './_gqlTypes';\n\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nexport enum PreviewSize {\n TINY = 'tiny',\n SMALL = 'small',\n MEDIUM = 'medium',\n BIG = 'big',\n}\n\nexport const tagColorByAttributeType: {[key in AttributeType]: [border: string, background: string]} = {\n [AttributeType.simple]: ['purple', '#ffe5ff'],\n [AttributeType.simple_link]: ['blue', '#e5e5ff'],\n [AttributeType.advanced]: ['orange', '#fff6e5'],\n [AttributeType.advanced_link]: ['#d4380d', '#fde4dd'],\n [AttributeType.tree]: ['green', '#e5ffe5'],\n};\n\nexport const tagColorByAttributeFormat: {[key in AttributeFormat]: [border: string, background: string]} = {\n [AttributeFormat.boolean]: ['gold', '#fff099'],\n [AttributeFormat.date]: ['blue', '#e5e5ff'],\n [AttributeFormat.date_range]: ['#1d39c4', '#e9ecfc'],\n [AttributeFormat.encrypted]: ['red', '#ffe5e5'],\n [AttributeFormat.extended]: ['magenta', '#ffe5e5'],\n [AttributeFormat.numeric]: ['orange', '#fff6e5'],\n [AttributeFormat.text]: ['green', '#e5ffe5'],\n [AttributeFormat.color]: ['purple', '#ffe5ff'],\n [AttributeFormat.rich_text]: ['#d4380d', '#fde4dd'],\n};\n\nexport enum ErrorDisplayTypes {\n ERROR = 'error',\n PERMISSION_ERROR = 'permission_error',\n PAGE_NOT_FOUND = 'page_not_found_error',\n}\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n interface Window {\n __dynamic_base__?: string;\n __global_base_url__?: string;\n __bugsnag_api_key__?: string;\n __bugsnag_app_version__?: string;\n __bugsnag_release_stage__?: string;\n }\n}\n\nexport const defaultPaginationPageSize = 20;\n\nexport const GLOBAL_BASE_URL = window.__global_base_url__ || '';\n\nexport const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';\nexport const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';\n\nexport const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;\n\nexport const INFO_NOTIFICATION_DURATION_SECONDS = 5;\n\nexport const SUCCESS_ALERT_DURATION = 3_000;\nexport const ERROR_ALERT_DURATION = 5_000;\n\nexport const EDIT_RECORD_SIDEBAR_ID = 'edit_record_sidebar';\n\nexport const STANDARD_FIELD_ID_PREFIX = 'standardfield-';\n\nexport const LINK_FIELD_ID_PREFIX = 'linkfield-';\n\nexport const TREE_FIELD_ID_PREFIX = 'treefield-';\n\nexport const SUBMIT_BUTTONS_PORTAL = 'submit_buttons_portal';\nexport const NEW_RECORD_ID = 'newRecord';\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,gCAAgC;AAChC,sCAAsC;AACtC,OAAO,EAAC,eAAe,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AAE3D,sEAAsE;AACtE,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,0BAAW,CAAA;AACf,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAE5C,MAAM,CAAC,MAAM,uBAAuB,GAAmE;IACnG,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7C,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAChD,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC/C,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACrD,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7C,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAqE;IACvG,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC9C,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3C,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACpD,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;IAC/C,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAClD,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAChD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5C,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9C,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;CACtD,CAAC;AAEF,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,oCAAe,CAAA;IACf,0DAAqC,CAAA;IACrC,4DAAuC,CAAA;AAC3C,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAaD,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;AAEhE,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAEnE,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AAEpD,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAK,CAAC;AAChD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAK,CAAC;AACjD,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAK,CAAC;AACnD,MAAM,CAAC,MAAM,kCAAkC,GAAG,KAAM,CAAC;AAEzD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAK,CAAC;AAE1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,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\n// Copyright LEAV Solutions 2017\n// This file is released under LGPL V3\nimport {AttributeFormat, AttributeType} from './_gqlTypes';\n\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nexport enum PreviewSize {\n TINY = 'tiny',\n SMALL = 'small',\n MEDIUM = 'medium',\n BIG = 'big',\n}\n\nexport const ACTIVE_ATTRIBUTE_ID = 'active';\n\nexport const tagColorByAttributeType: {[key in AttributeType]: [border: string, background: string]} = {\n [AttributeType.simple]: ['purple', '#ffe5ff'],\n [AttributeType.simple_link]: ['blue', '#e5e5ff'],\n [AttributeType.advanced]: ['orange', '#fff6e5'],\n [AttributeType.advanced_link]: ['#d4380d', '#fde4dd'],\n [AttributeType.tree]: ['green', '#e5ffe5'],\n};\n\nexport const tagColorByAttributeFormat: {[key in AttributeFormat]: [border: string, background: string]} = {\n [AttributeFormat.boolean]: ['gold', '#fff099'],\n [AttributeFormat.date]: ['blue', '#e5e5ff'],\n [AttributeFormat.date_range]: ['#1d39c4', '#e9ecfc'],\n [AttributeFormat.encrypted]: ['red', '#ffe5e5'],\n [AttributeFormat.extended]: ['magenta', '#ffe5e5'],\n [AttributeFormat.numeric]: ['orange', '#fff6e5'],\n [AttributeFormat.text]: ['green', '#e5ffe5'],\n [AttributeFormat.color]: ['purple', '#ffe5ff'],\n [AttributeFormat.rich_text]: ['#d4380d', '#fde4dd'],\n};\n\nexport enum ErrorDisplayTypes {\n ERROR = 'error',\n PERMISSION_ERROR = 'permission_error',\n PAGE_NOT_FOUND = 'page_not_found_error',\n}\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n interface Window {\n __dynamic_base__?: string;\n __global_base_url__?: string;\n __bugsnag_api_key__?: string;\n __bugsnag_app_version__?: string;\n __bugsnag_release_stage__?: string;\n }\n}\n\nexport const defaultPaginationPageSize = 20;\n\nexport const GLOBAL_BASE_URL = window.__global_base_url__ || '';\n\nexport const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';\nexport const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';\n\nexport const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;\n\nexport const INFO_NOTIFICATION_DURATION = 5_000;\nexport const ERROR_NOTIFICATION_DURATION = 5_000;\nexport const SUCCESS_NOTIFICATION_DURATION = 5_000;\nexport const SUBSCRIPTION_NOTIFICATION_DURATION = 10_000;\n\nexport const SUCCESS_ALERT_DURATION = 3_000;\nexport const ERROR_ALERT_DURATION = 5_000;\n\nexport const EDIT_RECORD_SIDEBAR_ID = 'edit_record_sidebar';\n\nexport const STANDARD_FIELD_ID_PREFIX = 'standardfield-';\n\nexport const LINK_FIELD_ID_PREFIX = 'linkfield-';\n\nexport const TREE_FIELD_ID_PREFIX = 'treefield-';\n\nexport const SUBMIT_BUTTONS_PORTAL = 'submit_buttons_portal';\nexport const NEW_RECORD_ID = 'newRecord';\n"]}
@@ -1,5 +1,5 @@
1
1
  import { type MutableRefObject } from 'react';
2
- import { type AlertMessage, type Callbacks, type CallCbFunction, type ClosePanelMessage, type IUseIFrameMessengerOptions, type Message, type MessageDispatcher, type MessageHandler, type MessageToPanelMessage, type ModalConfirmMessage, type NavigateToIframeMessage, type NavigateToPanelMessage, type NotificationMessage, type SimpleMessage, type OpenFlapPanelMessage } from './types';
2
+ import { type AlertMessage, type Callbacks, type CallCbFunction, type ClosePanelMessage, type IUseIFrameMessengerOptions, type Message, type MessageDispatcher, type MessageHandler, type MessageToPanelMessage, type ModalConfirmMessage, type NavigateToIframeMessage, type NavigateToPanelMessage, type NotificationMessage, type SimpleMessage, type OpenFlapPanelMessage, type GetPanelConfigMessage } from './types';
3
3
  export declare const encodeMessage: (message: Message) => string;
4
4
  export declare const decodeMessage: (raw: string) => Message | undefined;
5
5
  export declare const initClientHandlers: (callCb: CallCbFunction, options?: IUseIFrameMessengerOptions, callbacksList?: MutableRefObject<Callbacks>) => MessageHandler;
@@ -14,4 +14,5 @@ export declare const getExposedMethods: (callbacksStore: MutableRefObject<Callba
14
14
  messageToPanel: (data: MessageToPanelMessage["data"]) => void;
15
15
  openFlapPanel: (data: OpenFlapPanelMessage["data"]) => void;
16
16
  closeFlapPanel: () => void;
17
+ getPanelConfig: (data: GetPanelConfigMessage["data"]) => void;
17
18
  };
@@ -69,6 +69,9 @@ export const initClientHandlers = (callCb, options, callbacksList) => (message,
69
69
  case 'close-flap-panel':
70
70
  options?.handlers?.onCloseFlapPanel?.();
71
71
  break;
72
+ case 'get-panel-config':
73
+ options?.handlers?.onGetPanelConfig?.(setCallbacks(message.id, message.__frameId, message.data, callCb, message.overrides), message.id, dispatch, callCb);
74
+ break;
72
75
  default:
73
76
  break;
74
77
  }
@@ -125,5 +128,10 @@ export const getExposedMethods = (callbacksStore, dispatch) => ({
125
128
  closeFlapPanel: () => {
126
129
  dispatch?.({ type: 'close-flap-panel' });
127
130
  },
131
+ getPanelConfig: (data) => {
132
+ const id = Date.now().toString();
133
+ const { data: nextData, overrides } = storeCallbacks(data, id, callbacksStore);
134
+ dispatch?.({ type: 'get-panel-config', data: nextData, id, overrides });
135
+ },
128
136
  });
129
137
  //# sourceMappingURL=messageHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageHandlers.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/messageHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type MutableRefObject} from 'react';\nimport {\n type AlertMessage,\n type CallbackFunction,\n type Callbacks,\n type CallCbFunction,\n type ClosePanelMessage,\n type IEncodedMessage,\n type IUseIFrameMessengerOptions,\n type Message,\n type MessageDispatcher,\n type MessageHandler,\n type MessageToPanelMessage,\n type ModalConfirmMessage,\n type NavigateToIframeMessage,\n type NavigateToPanelMessage,\n type NotificationMessage,\n packetId,\n type SimpleMessage,\n type OpenFlapPanelMessage,\n type CloseFlapPanelMessage,\n} from './types';\n\nexport const encodeMessage = (message: Message): string =>\n JSON.stringify({\n payload: JSON.stringify(message),\n [packetId]: true,\n });\n\nexport const decodeMessage = (raw: string): Message | undefined => {\n try {\n const decoded: IEncodedMessage = JSON.parse(raw) as unknown as IEncodedMessage;\n if (packetId in decoded && decoded[packetId] === true) {\n return JSON.parse(decoded.payload) as Message;\n }\n } catch (e) {\n return undefined;\n }\n return undefined;\n};\n\nconst getCallback = (path: string, callbacksList?: MutableRefObject<Callbacks>): CallbackFunction | null => {\n if (!callbacksList?.current) {\n return null;\n }\n const pathArray = path.split('.');\n let callback: CallbackFunction | Callbacks | Record<string, CallbackFunction> = callbacksList.current;\n pathArray.forEach(part => (callback = (callback as Callbacks | Record<string, CallbackFunction>)?.[part]));\n return typeof callback === 'function' ? callback : null;\n};\n\nconst setCallbacks = (\n id: string,\n frameId: string,\n data: unknown,\n callCb: CallCbFunction,\n overrides?: string[],\n): unknown => {\n if (!overrides) {\n return data;\n }\n\n const nextData = {...(data as Record<string, unknown>)};\n overrides.forEach((key: string) => {\n nextData[key] = (...args: unknown[]) => {\n callCb(`${id}.${key}`, args, frameId);\n };\n });\n return nextData;\n};\n\nexport const initClientHandlers: (\n callCb: CallCbFunction,\n options?: IUseIFrameMessengerOptions,\n callbacksList?: MutableRefObject<Callbacks>,\n) => MessageHandler = (callCb, options, callbacksList) => (message, dispatch) => {\n switch (message.type) {\n case 'modal-confirm':\n options?.handlers?.onModalConfirm?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as ModalConfirmMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'alert':\n options?.handlers?.onAlert?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as AlertMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'notification':\n options?.handlers?.onNotification?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as NotificationMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'message':\n options?.handlers?.onMessage?.(message.data, message.id, dispatch, callCb);\n break;\n case 'on-call-callback':\n // TODO How to know if handler can be removed from callbacksList ?\n getCallback(message.path, callbacksList)?.(...(message.data as never[]));\n break;\n case 'navigate-to-panel':\n options?.handlers?.onNavigateToPanel?.(message.data);\n break;\n case 'close-panel':\n options?.handlers?.onClosePanel?.(message.data);\n break;\n case 'navigate-to-iframe':\n options?.handlers?.onNavigateToIframe?.(message.data);\n break;\n case 'open-flap-panel':\n options?.handlers?.onOpenFlapPanel?.(message.data);\n break;\n case 'close-flap-panel':\n options?.handlers?.onCloseFlapPanel?.();\n break;\n default:\n break;\n }\n};\n\nconst storeCallbacks = (\n data: unknown,\n id: string,\n callbacksStore: MutableRefObject<Callbacks>,\n): {data: unknown; overrides: string[]} => {\n const nextData = {...(data as Record<string, unknown>)};\n const overrides: string[] = [];\n Object.entries(nextData).forEach(([key, value]) => {\n if (typeof value === 'function') {\n callbacksStore.current[id] = {\n ...callbacksStore.current[id],\n [key]: value as CallbackFunction,\n };\n overrides.push(key);\n }\n });\n return {data: nextData, overrides};\n};\n\nexport const getExposedMethods = (callbacksStore: MutableRefObject<Callbacks>, dispatch?: MessageDispatcher) => ({\n showModalConfirm: (data: ModalConfirmMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'modal-confirm', data: nextData as ModalConfirmMessage['data'], id, overrides});\n },\n showAlert: (data: AlertMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'alert', data: nextData as AlertMessage['data'], id, overrides});\n },\n showNotification: (data: NotificationMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'notification', data: nextData as NotificationMessage['data'], id, overrides});\n },\n messageToParent: (data: SimpleMessage['data']) => {\n const id = Date.now().toString();\n dispatch?.({type: 'message', data, id});\n },\n navigateToPanel: (data: NavigateToPanelMessage['data']) => {\n dispatch?.({type: 'navigate-to-panel', data});\n },\n closePanel: (data: ClosePanelMessage['data']) => {\n dispatch?.({type: 'close-panel', data});\n },\n navigateToIframe: (data: NavigateToIframeMessage['data']) => {\n dispatch?.({type: 'navigate-to-iframe', data});\n },\n messageToPanel: (data: MessageToPanelMessage['data']) => {\n dispatch?.({type: 'message-to-panel', data});\n },\n openFlapPanel: (data: OpenFlapPanelMessage['data']) => {\n dispatch?.({type: 'open-flap-panel', data});\n },\n closeFlapPanel: () => {\n dispatch?.({type: 'close-flap-panel'});\n },\n});\n"]}
1
+ {"version":3,"file":"messageHandlers.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/messageHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type MutableRefObject} from 'react';\nimport {\n type AlertMessage,\n type CallbackFunction,\n type Callbacks,\n type CallCbFunction,\n type ClosePanelMessage,\n type IEncodedMessage,\n type IUseIFrameMessengerOptions,\n type Message,\n type MessageDispatcher,\n type MessageHandler,\n type MessageToPanelMessage,\n type ModalConfirmMessage,\n type NavigateToIframeMessage,\n type NavigateToPanelMessage,\n type NotificationMessage,\n packetId,\n type SimpleMessage,\n type OpenFlapPanelMessage,\n type GetPanelConfigMessage,\n} from './types';\n\nexport const encodeMessage = (message: Message): string =>\n JSON.stringify({\n payload: JSON.stringify(message),\n [packetId]: true,\n });\n\nexport const decodeMessage = (raw: string): Message | undefined => {\n try {\n const decoded: IEncodedMessage = JSON.parse(raw) as unknown as IEncodedMessage;\n if (packetId in decoded && decoded[packetId] === true) {\n return JSON.parse(decoded.payload) as Message;\n }\n } catch (e) {\n return undefined;\n }\n return undefined;\n};\n\nconst getCallback = (path: string, callbacksList?: MutableRefObject<Callbacks>): CallbackFunction | null => {\n if (!callbacksList?.current) {\n return null;\n }\n const pathArray = path.split('.');\n let callback: CallbackFunction | Callbacks | Record<string, CallbackFunction> = callbacksList.current;\n pathArray.forEach(part => (callback = (callback as Callbacks | Record<string, CallbackFunction>)?.[part]));\n return typeof callback === 'function' ? callback : null;\n};\n\nconst setCallbacks = (\n id: string,\n frameId: string,\n data: unknown,\n callCb: CallCbFunction,\n overrides?: string[],\n): unknown => {\n if (!overrides) {\n return data;\n }\n\n const nextData = {...(data as Record<string, unknown>)};\n overrides.forEach((key: string) => {\n nextData[key] = (...args: unknown[]) => {\n callCb(`${id}.${key}`, args, frameId);\n };\n });\n return nextData;\n};\n\nexport const initClientHandlers: (\n callCb: CallCbFunction,\n options?: IUseIFrameMessengerOptions,\n callbacksList?: MutableRefObject<Callbacks>,\n) => MessageHandler = (callCb, options, callbacksList) => (message, dispatch) => {\n switch (message.type) {\n case 'modal-confirm':\n options?.handlers?.onModalConfirm?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as ModalConfirmMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'alert':\n options?.handlers?.onAlert?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as AlertMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'notification':\n options?.handlers?.onNotification?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as NotificationMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n case 'message':\n options?.handlers?.onMessage?.(message.data, message.id, dispatch, callCb);\n break;\n case 'on-call-callback':\n // TODO How to know if handler can be removed from callbacksList ?\n getCallback(message.path, callbacksList)?.(...(message.data as never[]));\n break;\n case 'navigate-to-panel':\n options?.handlers?.onNavigateToPanel?.(message.data);\n break;\n case 'close-panel':\n options?.handlers?.onClosePanel?.(message.data);\n break;\n case 'navigate-to-iframe':\n options?.handlers?.onNavigateToIframe?.(message.data);\n break;\n case 'open-flap-panel':\n options?.handlers?.onOpenFlapPanel?.(message.data);\n break;\n case 'close-flap-panel':\n options?.handlers?.onCloseFlapPanel?.();\n break;\n case 'get-panel-config':\n options?.handlers?.onGetPanelConfig?.(\n setCallbacks(\n message.id,\n message.__frameId,\n message.data,\n callCb,\n message.overrides,\n ) as GetPanelConfigMessage['data'],\n message.id,\n dispatch,\n callCb,\n );\n break;\n default:\n break;\n }\n};\n\nconst storeCallbacks = (\n data: unknown,\n id: string,\n callbacksStore: MutableRefObject<Callbacks>,\n): {data: unknown; overrides: string[]} => {\n const nextData = {...(data as Record<string, unknown>)};\n const overrides: string[] = [];\n Object.entries(nextData).forEach(([key, value]) => {\n if (typeof value === 'function') {\n callbacksStore.current[id] = {\n ...callbacksStore.current[id],\n [key]: value as CallbackFunction,\n };\n overrides.push(key);\n }\n });\n return {data: nextData, overrides};\n};\n\nexport const getExposedMethods = (callbacksStore: MutableRefObject<Callbacks>, dispatch?: MessageDispatcher) => ({\n showModalConfirm: (data: ModalConfirmMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'modal-confirm', data: nextData as ModalConfirmMessage['data'], id, overrides});\n },\n showAlert: (data: AlertMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'alert', data: nextData as AlertMessage['data'], id, overrides});\n },\n showNotification: (data: NotificationMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'notification', data: nextData as NotificationMessage['data'], id, overrides});\n },\n messageToParent: (data: SimpleMessage['data']) => {\n const id = Date.now().toString();\n dispatch?.({type: 'message', data, id});\n },\n navigateToPanel: (data: NavigateToPanelMessage['data']) => {\n dispatch?.({type: 'navigate-to-panel', data});\n },\n closePanel: (data: ClosePanelMessage['data']) => {\n dispatch?.({type: 'close-panel', data});\n },\n navigateToIframe: (data: NavigateToIframeMessage['data']) => {\n dispatch?.({type: 'navigate-to-iframe', data});\n },\n messageToPanel: (data: MessageToPanelMessage['data']) => {\n dispatch?.({type: 'message-to-panel', data});\n },\n openFlapPanel: (data: OpenFlapPanelMessage['data']) => {\n dispatch?.({type: 'open-flap-panel', data});\n },\n closeFlapPanel: () => {\n dispatch?.({type: 'close-flap-panel'});\n },\n getPanelConfig: (data: GetPanelConfigMessage['data']) => {\n const id = Date.now().toString();\n const {data: nextData, overrides} = storeCallbacks(data, id, callbacksStore);\n dispatch?.({type: 'get-panel-config', data: nextData as GetPanelConfigMessage['data'], id, overrides});\n },\n});\n"]}
@@ -38,6 +38,7 @@ export declare const basePanelSchema: z.ZodObject<{
38
38
  export declare const iframePanelSchema: z.ZodObject<{
39
39
  type: z.ZodLiteral<"custom">;
40
40
  iframeSource: z.ZodString;
41
+ viewId: z.ZodOptional<z.ZodString>;
41
42
  isSelfContaining: z.ZodOptional<z.ZodBoolean>;
42
43
  }, z.core.$strip>;
43
44
  export declare const creationPanelSchema: z.ZodObject<{
@@ -61,6 +62,7 @@ export declare const baseExplorerPanelSchema: z.ZodObject<{
61
62
  }, z.core.$strip>;
62
63
  export declare const attributeExplorerPanelSchema: z.ZodObject<{
63
64
  attributeSource: z.ZodString;
65
+ deactivateOnUnlink: z.ZodOptional<z.ZodBoolean>;
64
66
  libraryId: z.ZodString;
65
67
  explorerProps: z.ZodOptional<z.ZodObject<{
66
68
  showSearch: z.ZodOptional<z.ZodBoolean>;
@@ -96,6 +98,7 @@ export declare const PanelSchema: z.ZodIntersection<z.ZodObject<{
96
98
  }, z.core.$strip>>;
97
99
  }, z.core.$strip>, z.ZodUnion<readonly [z.ZodObject<{
98
100
  attributeSource: z.ZodString;
101
+ deactivateOnUnlink: z.ZodOptional<z.ZodBoolean>;
99
102
  libraryId: z.ZodString;
100
103
  explorerProps: z.ZodOptional<z.ZodObject<{
101
104
  showSearch: z.ZodOptional<z.ZodBoolean>;
@@ -127,6 +130,7 @@ export declare const PanelSchema: z.ZodIntersection<z.ZodObject<{
127
130
  }, z.core.$strip>]>>, z.ZodObject<{
128
131
  type: z.ZodLiteral<"custom">;
129
132
  iframeSource: z.ZodString;
133
+ viewId: z.ZodOptional<z.ZodString>;
130
134
  isSelfContaining: z.ZodOptional<z.ZodBoolean>;
131
135
  }, z.core.$strip>, z.ZodObject<{
132
136
  type: z.ZodLiteral<"editionForm">;
@@ -146,5 +150,6 @@ export declare const PanelIFrameSchema: z.ZodIntersection<z.ZodObject<{
146
150
  }, z.core.$strip>, z.ZodObject<{
147
151
  type: z.ZodLiteral<"custom">;
148
152
  iframeSource: z.ZodString;
153
+ viewId: z.ZodOptional<z.ZodString>;
149
154
  isSelfContaining: z.ZodOptional<z.ZodBoolean>;
150
155
  }, z.core.$strip>>;
@@ -49,6 +49,7 @@ export const basePanelSchema = z.object({
49
49
  export const iframePanelSchema = z.object({
50
50
  type: z.literal('custom'),
51
51
  iframeSource: z.string(),
52
+ viewId: z.string().optional(),
52
53
  isSelfContaining: z.boolean().optional(),
53
54
  });
54
55
  const editionPanelSchema = z.object({
@@ -68,6 +69,7 @@ export const baseExplorerPanelSchema = z.object({
68
69
  });
69
70
  export const attributeExplorerPanelSchema = z.object({
70
71
  attributeSource: z.string(),
72
+ deactivateOnUnlink: z.boolean().optional(),
71
73
  libraryId: LibraryIdSchema,
72
74
  explorerProps: ExplorerPropsSchema.optional(),
73
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/schema.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport * as z from 'zod/v4';\n\nexport const FONT_AWESOME_ICON_REGEX = /^fa-/;\n\nexport const PanelIdSchema = z.string();\nexport const LanguageSchema = z.string();\nexport const LibraryIdSchema = z.string();\nexport const FontAwesomeIconSchema = z.string().regex(FONT_AWESOME_ICON_REGEX).optional();\n\nexport const WhereSchema = z.union([z.literal('popup'), z.literal('slider'), z.literal('fullpage')]);\n\nexport const FlapPanelIdSchema = z.union([z.literal('info-history'), z.literal('thread')]);\n\nexport const ExplorerPropsSchema = z.object({\n showSearch: z.boolean().optional(),\n showFilters: z.boolean().optional(),\n showSorts: z.boolean().optional(),\n freezeView: z.boolean().optional(),\n showAttributeLabels: z.boolean().optional(),\n creationFormId: z.string().optional(),\n noPagination: z.literal(true).optional(),\n showActionsLabels: z.boolean().optional(),\n defaultPrimaryActions: z.array(z.union([z.literal('create')])).optional(),\n defaultMassActions: z\n .array(z.union([z.literal('deactivate'), z.literal('export'), z.literal('editAttribute')]))\n .optional(),\n defaultActionsForItem: z\n .array(z.union([z.literal('replaceLink'), z.literal('remove'), z.literal('activate')]))\n .optional(),\n});\n\nexport const ItemActionsSchema = z\n .array(\n z.object({\n where: WhereSchema,\n what: z.literal('record'),\n targetPanelId: PanelIdSchema.optional(),\n targetFlapPanelId: FlapPanelIdSchema.optional(),\n icon: FontAwesomeIconSchema,\n label: z.record(LanguageSchema, z.string()),\n onRowClick: z.boolean().optional(),\n }),\n )\n .refine(actions => actions.reduce((acc, action) => (action.onRowClick ? acc + 1 : acc), 0) <= 1, {\n message: 'At most one action must have onRowClick set to true',\n });\n\nexport const basePanelSchema = z.object({\n id: PanelIdSchema,\n icon: FontAwesomeIconSchema,\n name: z.record(LanguageSchema, z.string()).optional(),\n isStandalone: z.boolean().optional(),\n hideInSlider: z.boolean().optional(),\n});\n\nexport const iframePanelSchema = z.object({\n type: z.literal('custom'),\n iframeSource: z.string(),\n isSelfContaining: z.boolean().optional(),\n});\n\nconst editionPanelSchema = z.object({\n type: z.literal('editionForm'),\n formId: z.string(),\n});\n\nexport const creationPanelSchema = z.object({\n type: z.literal('creationForm'),\n formId: z.string(),\n attributeSource: z.string(),\n isStandalone: z.literal(true),\n});\n\nexport const baseExplorerPanelSchema = z.object({\n type: z.literal('explorer'),\n viewId: z.string().optional(),\n actions: ItemActionsSchema,\n});\n\nexport const attributeExplorerPanelSchema = z.object({\n attributeSource: z.string(),\n libraryId: LibraryIdSchema,\n explorerProps: ExplorerPropsSchema.optional(),\n});\n\nconst libraryExplorerPanelSchema = z.object({\n explorerProps: ExplorerPropsSchema.optional(),\n});\n\nconst explorerPanelSchema = baseExplorerPanelSchema.and(\n z.union([attributeExplorerPanelSchema, libraryExplorerPanelSchema]),\n);\n\nexport const PanelSchema = basePanelSchema.and(\n z.union([explorerPanelSchema, iframePanelSchema, editionPanelSchema, creationPanelSchema]),\n);\n\nexport const PanelIFrameSchema = basePanelSchema.and(iframePanelSchema);\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/schema.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport * as z from 'zod/v4';\n\nexport const FONT_AWESOME_ICON_REGEX = /^fa-/;\n\nexport const PanelIdSchema = z.string();\nexport const LanguageSchema = z.string();\nexport const LibraryIdSchema = z.string();\nexport const FontAwesomeIconSchema = z.string().regex(FONT_AWESOME_ICON_REGEX).optional();\n\nexport const WhereSchema = z.union([z.literal('popup'), z.literal('slider'), z.literal('fullpage')]);\n\nexport const FlapPanelIdSchema = z.union([z.literal('info-history'), z.literal('thread')]);\n\nexport const ExplorerPropsSchema = z.object({\n showSearch: z.boolean().optional(),\n showFilters: z.boolean().optional(),\n showSorts: z.boolean().optional(),\n freezeView: z.boolean().optional(),\n showAttributeLabels: z.boolean().optional(),\n creationFormId: z.string().optional(),\n noPagination: z.literal(true).optional(),\n showActionsLabels: z.boolean().optional(),\n defaultPrimaryActions: z.array(z.union([z.literal('create')])).optional(),\n defaultMassActions: z\n .array(z.union([z.literal('deactivate'), z.literal('export'), z.literal('editAttribute')]))\n .optional(),\n defaultActionsForItem: z\n .array(z.union([z.literal('replaceLink'), z.literal('remove'), z.literal('activate')]))\n .optional(),\n});\n\nexport const ItemActionsSchema = z\n .array(\n z.object({\n where: WhereSchema,\n what: z.literal('record'),\n targetPanelId: PanelIdSchema.optional(),\n targetFlapPanelId: FlapPanelIdSchema.optional(),\n icon: FontAwesomeIconSchema,\n label: z.record(LanguageSchema, z.string()),\n onRowClick: z.boolean().optional(),\n }),\n )\n .refine(actions => actions.reduce((acc, action) => (action.onRowClick ? acc + 1 : acc), 0) <= 1, {\n message: 'At most one action must have onRowClick set to true',\n });\n\nexport const basePanelSchema = z.object({\n id: PanelIdSchema,\n icon: FontAwesomeIconSchema,\n name: z.record(LanguageSchema, z.string()).optional(),\n isStandalone: z.boolean().optional(),\n hideInSlider: z.boolean().optional(),\n});\n\nexport const iframePanelSchema = z.object({\n type: z.literal('custom'),\n iframeSource: z.string(),\n viewId: z.string().optional(),\n isSelfContaining: z.boolean().optional(),\n});\n\nconst editionPanelSchema = z.object({\n type: z.literal('editionForm'),\n formId: z.string(),\n});\n\nexport const creationPanelSchema = z.object({\n type: z.literal('creationForm'),\n formId: z.string(),\n attributeSource: z.string(),\n isStandalone: z.literal(true),\n});\n\nexport const baseExplorerPanelSchema = z.object({\n type: z.literal('explorer'),\n viewId: z.string().optional(),\n actions: ItemActionsSchema,\n});\n\nexport const attributeExplorerPanelSchema = z.object({\n attributeSource: z.string(),\n deactivateOnUnlink: z.boolean().optional(),\n libraryId: LibraryIdSchema,\n explorerProps: ExplorerPropsSchema.optional(),\n});\n\nconst libraryExplorerPanelSchema = z.object({\n explorerProps: ExplorerPropsSchema.optional(),\n});\n\nconst explorerPanelSchema = baseExplorerPanelSchema.and(\n z.union([attributeExplorerPanelSchema, libraryExplorerPanelSchema]),\n);\n\nexport const PanelSchema = basePanelSchema.and(\n z.union([explorerPanelSchema, iframePanelSchema, editionPanelSchema, creationPanelSchema]),\n);\n\nexport const PanelIFrameSchema = basePanelSchema.and(iframePanelSchema);\n"]}
@@ -55,7 +55,7 @@ export type AttributeExplorerPanel = Panel & z.infer<typeof baseExplorerPanelSch
55
55
  export type LibraryId = z.infer<typeof LibraryIdSchema>;
56
56
  export type PanelId = z.infer<typeof PanelIdSchema>;
57
57
  export type Where = z.infer<typeof WhereSchema>;
58
- type PanelIFrame = z.infer<typeof PanelIFrameSchema>;
58
+ export type PanelIFrame = z.infer<typeof PanelIFrameSchema>;
59
59
  type FlapPanelId = z.infer<typeof FlapPanelIdSchema>;
60
60
  export type NavigateToPanelMessage = IMessageBase & {
61
61
  type: 'navigate-to-panel';
@@ -108,7 +108,16 @@ export type OpenFlapPanelMessage = IMessageBase & {
108
108
  export type CloseFlapPanelMessage = IMessageBase & {
109
109
  type: 'close-flap-panel';
110
110
  };
111
- export type MessageToParent = ModalConfirmMessage | AlertMessage | NotificationMessage | SimpleMessage | RegisterMessage | UnregisterMessage | NavigateToPanelMessage | ClosePanelMessage | NavigateToIframeMessage | MessageToPanelMessage | OpenFlapPanelMessage | CloseFlapPanelMessage;
111
+ export type GetPanelConfigMessage = IMessageBase & {
112
+ type: 'get-panel-config';
113
+ id: string;
114
+ data: {
115
+ panelId?: string;
116
+ onGetPanelConfig: (data: PanelIFrame) => void;
117
+ };
118
+ overrides?: string[];
119
+ };
120
+ export type MessageToParent = ModalConfirmMessage | AlertMessage | NotificationMessage | SimpleMessage | RegisterMessage | UnregisterMessage | NavigateToPanelMessage | ClosePanelMessage | NavigateToIframeMessage | MessageToPanelMessage | OpenFlapPanelMessage | CloseFlapPanelMessage | GetPanelConfigMessage;
112
121
  export type MessageFromParent = (IMessageBase & {
113
122
  type: 'on-call-callback';
114
123
  path: string;
@@ -134,6 +143,7 @@ export interface IUseIFrameMessengerOptions {
134
143
  onClosePanel?: (data: ClosePanelMessage['data']) => void;
135
144
  onNavigateToIframe?: (data: NavigateToIframeMessage['data']) => void;
136
145
  onOpenFlapPanel?: (data: OpenFlapPanelMessage['data']) => void;
146
+ onGetPanelConfig?: (data: GetPanelConfigMessage['data'], id: string, dispatch: MessageDispatcher, callCb: CallCbFunction) => void;
137
147
  onCloseFlapPanel?: () => void;
138
148
  };
139
149
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/types.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type RefObject, type ComponentProps, type Key, type JSXElementConstructor} from 'react';\nimport type * as z from 'zod/v4';\nimport {type KitNotification} from 'aristid-ds';\nimport {type IKitConfirmDialog} from 'aristid-ds/dist/Kit/Feedback/Modal/types';\nimport {type ToastedAlertProps} from 'aristid-ds/dist/Kit/Feedback/Alert/types';\nimport {\n type LibraryIdSchema,\n type WhereSchema,\n type PanelIdSchema,\n type PanelSchema,\n type PanelIFrameSchema,\n type FlapPanelIdSchema,\n type attributeExplorerPanelSchema,\n type baseExplorerPanelSchema,\n} from '_ui/hooks/useIFrameMessenger/schema';\n\nexport const packetId = '__fromIframeMessenger';\n\nexport interface IEncodedMessage {\n payload: string;\n [packetId]: boolean;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ComponentPropsWithKey<T extends keyof JSX.IntrinsicElements | JSXElementConstructor<any>> =\n ComponentProps<T> & {\n key?: Key;\n };\n\nexport interface IMessageBase {\n __frameId?: string;\n}\n\nexport type ModalConfirmMessage = IMessageBase & {\n type: 'modal-confirm';\n id: string;\n data: IKitConfirmDialog;\n overrides?: string[];\n};\n\nexport type AlertMessage = IMessageBase & {\n type: 'alert';\n id: string;\n data: ToastedAlertProps;\n overrides?: string[];\n};\n\nexport type NotificationMessage = IMessageBase & {\n type: 'notification';\n id: string;\n data: ComponentPropsWithKey<typeof KitNotification>;\n overrides?: string[];\n};\n\nexport type ChangeLanguageMessage = IMessageBase & {\n type: 'change-language';\n language: string;\n};\n\nexport type SimpleMessage = IMessageBase & {\n type: 'message';\n id: string;\n data: unknown;\n};\n\nexport type RegisterMessage = IMessageBase & {\n type: 'register';\n id: string;\n};\n\nexport type UnregisterMessage = IMessageBase & {\n type: 'unregister';\n id: string;\n};\n\nexport type Panel = z.infer<typeof PanelSchema>;\n\nexport type AttributeExplorerPanel = Panel &\n z.infer<typeof baseExplorerPanelSchema> &\n z.infer<typeof attributeExplorerPanelSchema>;\n\nexport type LibraryId = z.infer<typeof LibraryIdSchema>;\n\nexport type PanelId = z.infer<typeof PanelIdSchema>;\n\nexport type Where = z.infer<typeof WhereSchema>;\n\ntype PanelIFrame = z.infer<typeof PanelIFrameSchema>;\n\ntype FlapPanelId = z.infer<typeof FlapPanelIdSchema>;\n\nexport type NavigateToPanelMessage = IMessageBase & {\n type: 'navigate-to-panel';\n data: {\n where: Where;\n libraryId: LibraryId;\n panelId?: PanelId;\n recordId?: string;\n flapRecordId?: string;\n flapLibraryId?: LibraryId;\n flapPanelId?: FlapPanelId;\n };\n};\n\nexport type ClosePanelMessage = IMessageBase & {\n type: 'close-panel';\n data: {\n recordId: string;\n where: string;\n recordPanelId: string;\n };\n};\n\nexport type NavigateToIframeMessage = IMessageBase & {\n type: 'navigate-to-iframe';\n data: {\n panel: PanelIFrame;\n destination: {libraryId: LibraryId};\n where: Where;\n recordId: string;\n recordPanelId: string;\n };\n};\n\nexport type MessageToPanelMessage = IMessageBase & {\n type: 'message-to-panel';\n data: {\n type: string;\n target?: string;\n payload: unknown;\n };\n};\n\nexport type OpenFlapPanelMessage = IMessageBase & {\n type: 'open-flap-panel';\n data: {\n flapRecordId: string;\n flapLibraryId: LibraryId;\n flapPanelId: FlapPanelId;\n };\n};\n\nexport type CloseFlapPanelMessage = IMessageBase & {\n type: 'close-flap-panel';\n};\n\nexport type MessageToParent =\n | ModalConfirmMessage\n | AlertMessage\n | NotificationMessage\n | SimpleMessage\n | RegisterMessage\n | UnregisterMessage\n | NavigateToPanelMessage\n | ClosePanelMessage\n | NavigateToIframeMessage\n | MessageToPanelMessage\n | OpenFlapPanelMessage\n | CloseFlapPanelMessage;\n\nexport type MessageFromParent =\n | (IMessageBase & {\n type: 'on-call-callback';\n path: string;\n data: unknown;\n })\n | ChangeLanguageMessage;\n\nexport type Message = MessageToParent | MessageFromParent;\n\nexport type MessageHandler<T = Message> = (message: T, dispatch: MessageDispatcher<T>) => void;\nexport type MessageDispatcher<T = Message> = (message: T, frameId?: string) => void;\n\nexport type CallCbFunction = (path: string, data: unknown, frameId: string) => void;\n\nexport type CallbackFunction = (...args: never[]) => void;\nexport type Callbacks = Record<string, Record<string, CallbackFunction>>;\n\nexport type MessageToPanelMessageHandler = (data: MessageToPanelMessage['data']['payload']) => void;\nexport type AddMessageToPanelMessageHandler = (type: string, handler: MessageToPanelMessageHandler) => void;\n\nexport interface IUseIFrameMessengerOptions {\n ref?: RefObject<HTMLIFrameElement>;\n id?: string;\n handlers?: {\n onModalConfirm?: (\n data: ModalConfirmMessage['data'],\n id: string,\n dispatch: MessageDispatcher,\n callCb: CallCbFunction,\n ) => void;\n onAlert?: (data: AlertMessage['data'], id: string, dispatch: MessageDispatcher, callCb: CallCbFunction) => void;\n onNotification?: (\n data: NotificationMessage['data'],\n id: string,\n dispatch: MessageDispatcher,\n callCb: CallCbFunction,\n ) => void;\n onMessage?: (data: unknown, id: string, dispatch: MessageDispatcher, callCb: CallCbFunction) => void;\n onNavigateToPanel?: (data: NavigateToPanelMessage['data']) => void;\n onClosePanel?: (data: ClosePanelMessage['data']) => void;\n onNavigateToIframe?: (data: NavigateToIframeMessage['data']) => void;\n onOpenFlapPanel?: (data: OpenFlapPanelMessage['data']) => void;\n onCloseFlapPanel?: () => void;\n };\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/types.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {type RefObject, type ComponentProps, type Key, type JSXElementConstructor} from 'react';\nimport type * as z from 'zod/v4';\nimport {type KitNotification} from 'aristid-ds';\nimport {type IKitConfirmDialog} from 'aristid-ds/dist/Kit/Feedback/Modal/types';\nimport {type ToastedAlertProps} from 'aristid-ds/dist/Kit/Feedback/Alert/types';\nimport {\n type LibraryIdSchema,\n type WhereSchema,\n type PanelIdSchema,\n type PanelSchema,\n type PanelIFrameSchema,\n type FlapPanelIdSchema,\n type attributeExplorerPanelSchema,\n type baseExplorerPanelSchema,\n} from '_ui/hooks/useIFrameMessenger/schema';\n\nexport const packetId = '__fromIframeMessenger';\n\nexport interface IEncodedMessage {\n payload: string;\n [packetId]: boolean;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ComponentPropsWithKey<T extends keyof JSX.IntrinsicElements | JSXElementConstructor<any>> =\n ComponentProps<T> & {\n key?: Key;\n };\n\nexport interface IMessageBase {\n __frameId?: string;\n}\n\nexport type ModalConfirmMessage = IMessageBase & {\n type: 'modal-confirm';\n id: string;\n data: IKitConfirmDialog;\n overrides?: string[];\n};\n\nexport type AlertMessage = IMessageBase & {\n type: 'alert';\n id: string;\n data: ToastedAlertProps;\n overrides?: string[];\n};\n\nexport type NotificationMessage = IMessageBase & {\n type: 'notification';\n id: string;\n data: ComponentPropsWithKey<typeof KitNotification>;\n overrides?: string[];\n};\n\nexport type ChangeLanguageMessage = IMessageBase & {\n type: 'change-language';\n language: string;\n};\n\nexport type SimpleMessage = IMessageBase & {\n type: 'message';\n id: string;\n data: unknown;\n};\n\nexport type RegisterMessage = IMessageBase & {\n type: 'register';\n id: string;\n};\n\nexport type UnregisterMessage = IMessageBase & {\n type: 'unregister';\n id: string;\n};\n\nexport type Panel = z.infer<typeof PanelSchema>;\n\nexport type AttributeExplorerPanel = Panel &\n z.infer<typeof baseExplorerPanelSchema> &\n z.infer<typeof attributeExplorerPanelSchema>;\n\nexport type LibraryId = z.infer<typeof LibraryIdSchema>;\n\nexport type PanelId = z.infer<typeof PanelIdSchema>;\n\nexport type Where = z.infer<typeof WhereSchema>;\n\nexport type PanelIFrame = z.infer<typeof PanelIFrameSchema>;\n\ntype FlapPanelId = z.infer<typeof FlapPanelIdSchema>;\n\nexport type NavigateToPanelMessage = IMessageBase & {\n type: 'navigate-to-panel';\n data: {\n where: Where;\n libraryId: LibraryId;\n panelId?: PanelId;\n recordId?: string;\n flapRecordId?: string;\n flapLibraryId?: LibraryId;\n flapPanelId?: FlapPanelId;\n };\n};\n\nexport type ClosePanelMessage = IMessageBase & {\n type: 'close-panel';\n data: {\n recordId: string;\n where: string;\n recordPanelId: string;\n };\n};\n\nexport type NavigateToIframeMessage = IMessageBase & {\n type: 'navigate-to-iframe';\n data: {\n panel: PanelIFrame;\n destination: {libraryId: LibraryId};\n where: Where;\n recordId: string;\n recordPanelId: string;\n };\n};\n\nexport type MessageToPanelMessage = IMessageBase & {\n type: 'message-to-panel';\n data: {\n type: string;\n target?: string;\n payload: unknown;\n };\n};\n\nexport type OpenFlapPanelMessage = IMessageBase & {\n type: 'open-flap-panel';\n data: {\n flapRecordId: string;\n flapLibraryId: LibraryId;\n flapPanelId: FlapPanelId;\n };\n};\n\nexport type CloseFlapPanelMessage = IMessageBase & {\n type: 'close-flap-panel';\n};\n\nexport type GetPanelConfigMessage = IMessageBase & {\n type: 'get-panel-config';\n id: string;\n data: {\n panelId?: string;\n onGetPanelConfig: (data: PanelIFrame) => void;\n };\n overrides?: string[];\n};\n\nexport type MessageToParent =\n | ModalConfirmMessage\n | AlertMessage\n | NotificationMessage\n | SimpleMessage\n | RegisterMessage\n | UnregisterMessage\n | NavigateToPanelMessage\n | ClosePanelMessage\n | NavigateToIframeMessage\n | MessageToPanelMessage\n | OpenFlapPanelMessage\n | CloseFlapPanelMessage\n | GetPanelConfigMessage;\n\nexport type MessageFromParent =\n | (IMessageBase & {\n type: 'on-call-callback';\n path: string;\n data: unknown;\n })\n | ChangeLanguageMessage;\n\nexport type Message = MessageToParent | MessageFromParent;\n\nexport type MessageHandler<T = Message> = (message: T, dispatch: MessageDispatcher<T>) => void;\nexport type MessageDispatcher<T = Message> = (message: T, frameId?: string) => void;\n\nexport type CallCbFunction = (path: string, data: unknown, frameId: string) => void;\n\nexport type CallbackFunction = (...args: never[]) => void;\nexport type Callbacks = Record<string, Record<string, CallbackFunction>>;\n\nexport type MessageToPanelMessageHandler = (data: MessageToPanelMessage['data']['payload']) => void;\nexport type AddMessageToPanelMessageHandler = (type: string, handler: MessageToPanelMessageHandler) => void;\n\nexport interface IUseIFrameMessengerOptions {\n ref?: RefObject<HTMLIFrameElement>;\n id?: string;\n handlers?: {\n onModalConfirm?: (\n data: ModalConfirmMessage['data'],\n id: string,\n dispatch: MessageDispatcher,\n callCb: CallCbFunction,\n ) => void;\n onAlert?: (data: AlertMessage['data'], id: string, dispatch: MessageDispatcher, callCb: CallCbFunction) => void;\n onNotification?: (\n data: NotificationMessage['data'],\n id: string,\n dispatch: MessageDispatcher,\n callCb: CallCbFunction,\n ) => void;\n onMessage?: (data: unknown, id: string, dispatch: MessageDispatcher, callCb: CallCbFunction) => void;\n onNavigateToPanel?: (data: NavigateToPanelMessage['data']) => void;\n onClosePanel?: (data: ClosePanelMessage['data']) => void;\n onNavigateToIframe?: (data: NavigateToIframeMessage['data']) => void;\n onOpenFlapPanel?: (data: OpenFlapPanelMessage['data']) => void;\n onGetPanelConfig?: (\n data: GetPanelConfigMessage['data'],\n id: string,\n dispatch: MessageDispatcher,\n callCb: CallCbFunction,\n ) => void;\n onCloseFlapPanel?: () => void;\n };\n}\n"]}
@@ -18,4 +18,5 @@ export declare const useIFrameMessenger: (options?: IUseIFrameMessengerOptions)
18
18
  messageToPanel: (data: import("./types").MessageToPanelMessage["data"]) => void;
19
19
  openFlapPanel: (data: import("./types").OpenFlapPanelMessage["data"]) => void;
20
20
  closeFlapPanel: () => void;
21
+ getPanelConfig: (data: import("./types").GetPanelConfigMessage["data"]) => void;
21
22
  };
@@ -2,7 +2,6 @@
2
2
  // This file is released under LGPL V3
3
3
  // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
4
  import { useCallback, useContext, useEffect, useRef } from 'react';
5
- import { v4 as uuid } from 'uuid';
6
5
  import { LangContext } from '../../contexts';
7
6
  import { encodeMessage, decodeMessage, getExposedMethods, initClientHandlers } from './messageHandlers';
8
7
  /**
@@ -11,7 +10,7 @@ import { encodeMessage, decodeMessage, getExposedMethods, initClientHandlers } f
11
10
  */
12
11
  export const useIFrameMessenger = (options) => {
13
12
  const registry = useRef({});
14
- const selfId = useRef(options?.id ?? uuid());
13
+ const selfId = useRef(options?.id ?? window.crypto.randomUUID());
15
14
  const { setLang } = useContext(LangContext);
16
15
  const changeLangInAllFrames = (newLanguage) => {
17
16
  dispatch({
@@ -54,6 +53,16 @@ export const useIFrameMessenger = (options) => {
54
53
  changeLangInAllFrames,
55
54
  addPanelMessageHandler,
56
55
  });
56
+ const getPanelIdFromEvent = (event) => {
57
+ const iFrames = window.document.getElementsByTagName('iframe');
58
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
59
+ for (let i = 0; i < iFrames.length; i++) {
60
+ if (event.source === iFrames[i].contentWindow) {
61
+ return iFrames[i].name;
62
+ }
63
+ }
64
+ return null;
65
+ };
57
66
  useEffect(() => {
58
67
  const clientHandlers = initClientHandlers(callCb, { ...options, id: selfId.current }, callbacksStore);
59
68
  const onMessage = (event) => {
@@ -84,6 +93,11 @@ export const useIFrameMessenger = (options) => {
84
93
  dispatch(message, target);
85
94
  }
86
95
  break;
96
+ case 'get-panel-config':
97
+ clientHandlers({
98
+ ...message,
99
+ data: { ...message.data, panelId: getPanelIdFromEvent(event) },
100
+ }, dispatch);
87
101
  default:
88
102
  if (message.type === 'change-language') {
89
103
  setLang(message.language);
@@ -1 +1 @@
1
- {"version":3,"file":"useIFrameMessenger.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/useIFrameMessenger.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,OAAO,CAAC;AACjE,OAAO,EAAC,EAAE,IAAI,IAAI,EAAC,MAAM,MAAM,CAAC;AAChC,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AASzC,OAAO,EAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAItG;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAoC,EAAE,EAAE;IACvE,MAAM,QAAQ,GAAG,MAAM,CAAyB,EAAE,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAE7C,MAAM,EAAC,OAAO,EAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAE1C,MAAM,qBAAqB,GAAG,CAAC,WAAmB,EAAE,EAAE;QAClD,QAAQ,CACJ;YACI,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE,WAAW;SACxB,EACD,KAAK,CACR,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,MAAM,CAA+C,EAAE,CAAC,CAAC;IAC7F,MAAM,sBAAsB,GAAoC,CAC5D,IAAY,EACZ,OAAqC,EACvC,EAAE;QACA,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IACxD,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CACxB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;QACjB,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YACxB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EAAC,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3F,CAAC;aAAM,IAAI,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAY,CAAC,WAAW,CAC7C,aAAa,CAAC,EAAC,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,EACtD,GAAG,CACN,CAAC;QACN,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;gBACrD,IAAI,EAAE,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;oBAC3B,wCAAwC;oBACxC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,EAAC,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBACnF,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC,EACD,CAAC,QAAQ,CAAC,OAAO,CAAC,CACrB,CAAC;IAEF,MAAM,MAAM,GAAG,WAAW,CACtB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACpB,QAAQ,CAAC,EAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAC,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC,EACD,CAAC,QAAQ,CAAC,CACb,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACpB,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YACxB,QAAQ,CAAC,EAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAY,EAAE,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,MAAM,CAAC;QACnB,GAAG,iBAAiB,CAAC,cAAc,EAAE,QAAQ,CAAC;QAC9C,UAAU;QACV,qBAAqB;QACrB,sBAAsB;KACzB,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAC,GAAG,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,EAAC,EAAE,cAAc,CAAC,CAAC;QACpG,MAAM,SAAS,GAAG,CAAC,KAAmB,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO;YACX,CAAC;YACD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,UAAU;oBACX,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBAC7B,4EAA4E;oBAC5E,4DAA4D;oBAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACrC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC7C,CAAC;oBACL,CAAC;oBACD,MAAM;gBACV,KAAK,YAAY;oBACb,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACxC,CAAC;oBACD,MAAM;gBACV,KAAK,kBAAkB;oBACnB,2BAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/E,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;wBACxB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;wBAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC9B,CAAC;oBACD,MAAM;gBACV;oBACI,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;wBACrC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACJ,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oBACtC,CAAC;oBACD,MAAM;YACd,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAE9C,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YACxB,qDAAqD;YACrD,QAAQ,CAAC,EAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,OAAO,CAAC,OAAO,CAAC;AAC3B,CAAC,CAAC","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useCallback, useContext, useEffect, useRef} from 'react';\nimport {v4 as uuid} from 'uuid';\nimport {LangContext} from '_ui/contexts';\nimport {\n type AddMessageToPanelMessageHandler,\n type MessageToPanelMessageHandler,\n type Callbacks,\n type CallCbFunction,\n type IUseIFrameMessengerOptions,\n type MessageDispatcher,\n} from './types';\nimport {encodeMessage, decodeMessage, getExposedMethods, initClientHandlers} from './messageHandlers';\n\nexport {IUseIFrameMessengerOptions};\n\n/**\n * This is the core of `useIFrameMessenger`. Should be used for top-level apps, such as **app-studio**.\n * For client apps (apps that need to consume the messenger), please use the `useIFrameMessengerClient`\n */\nexport const useIFrameMessenger = (options?: IUseIFrameMessengerOptions) => {\n const registry = useRef<Record<string, Window>>({});\n const selfId = useRef(options?.id ?? uuid());\n\n const {setLang} = useContext(LangContext);\n\n const changeLangInAllFrames = (newLanguage: string) => {\n dispatch(\n {\n type: 'change-language',\n language: newLanguage,\n },\n 'all',\n );\n };\n\n const panelMessageHandlerRegistry = useRef<Record<string, MessageToPanelMessageHandler>>({});\n const addPanelMessageHandler: AddMessageToPanelMessageHandler = (\n type: string,\n handler: MessageToPanelMessageHandler,\n ) => {\n panelMessageHandlerRegistry.current[type] = handler;\n };\n\n const dispatch = useCallback<MessageDispatcher>(\n (message, frameId) => {\n if (window !== window.top) {\n window.parent.postMessage(encodeMessage({...message, __frameId: selfId.current}), '*');\n } else if (frameId && registry.current[frameId]) {\n (registry.current[frameId] as Window).postMessage(\n encodeMessage({...message, __frameId: selfId.current}),\n '*',\n );\n } else if (frameId === 'all') {\n Object.entries(registry.current).forEach(([id, frame]) => {\n if (id !== message.__frameId) {\n // DO not send the message to the sender\n frame.postMessage(encodeMessage({...message, __frameId: selfId.current}), '*');\n }\n });\n }\n },\n [registry.current],\n );\n\n const callCb = useCallback<CallCbFunction>(\n (path, data, frameId) => {\n dispatch({type: 'on-call-callback', path, data}, frameId);\n },\n [dispatch],\n );\n\n const unregister = () => {\n if (window !== window.top) {\n dispatch({type: 'unregister', id: selfId.current});\n }\n };\n\n const callbacksStore = useRef<Callbacks>({});\n const methods = useRef({\n ...getExposedMethods(callbacksStore, dispatch),\n unregister,\n changeLangInAllFrames,\n addPanelMessageHandler,\n });\n\n useEffect(() => {\n const clientHandlers = initClientHandlers(callCb, {...options, id: selfId.current}, callbacksStore);\n const onMessage = (event: MessageEvent) => {\n const message = decodeMessage(event.data);\n if (message === undefined) {\n return;\n }\n switch (message.type) {\n case 'register':\n const frames = window.frames;\n // Due to weak typing on Window, we cannot iterate directly on window.frames\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < frames.length; i++) {\n if (event.source === frames[i]) {\n registry.current[message.id] = frames[i];\n }\n }\n break;\n case 'unregister':\n if (registry.current[message.id]) {\n delete registry.current[message.id];\n }\n break;\n case 'message-to-panel':\n panelMessageHandlerRegistry.current[message.data.type]?.(message.data.payload);\n if (window === window.top) {\n const target = message.data.target ?? 'all';\n dispatch(message, target);\n }\n break;\n default:\n if (message.type === 'change-language') {\n setLang(message.language);\n } else {\n clientHandlers(message, dispatch);\n }\n break;\n }\n };\n\n window.addEventListener('message', onMessage);\n\n if (window !== window.top) {\n // Register the message handler for the parent window\n dispatch({type: 'register', id: selfId.current});\n }\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n }, []);\n\n return methods.current;\n};\n"]}
1
+ {"version":3,"file":"useIFrameMessenger.js","sourceRoot":"","sources":["../../../src/hooks/useIFrameMessenger/useIFrameMessenger.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06\n// This file is released under LGPL V3\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nimport {useCallback, useContext, useEffect, useRef} from 'react';\nimport {LangContext} from '_ui/contexts';\nimport {\n type AddMessageToPanelMessageHandler,\n type MessageToPanelMessageHandler,\n type Callbacks,\n type CallCbFunction,\n type IUseIFrameMessengerOptions,\n type MessageDispatcher,\n} from './types';\nimport {encodeMessage, decodeMessage, getExposedMethods, initClientHandlers} from './messageHandlers';\n\nexport {IUseIFrameMessengerOptions};\n\n/**\n * This is the core of `useIFrameMessenger`. Should be used for top-level apps, such as **app-studio**.\n * For client apps (apps that need to consume the messenger), please use the `useIFrameMessengerClient`\n */\nexport const useIFrameMessenger = (options?: IUseIFrameMessengerOptions) => {\n const registry = useRef<Record<string, Window>>({});\n const selfId = useRef(options?.id ?? window.crypto.randomUUID());\n\n const {setLang} = useContext(LangContext);\n\n const changeLangInAllFrames = (newLanguage: string) => {\n dispatch(\n {\n type: 'change-language',\n language: newLanguage,\n },\n 'all',\n );\n };\n\n const panelMessageHandlerRegistry = useRef<Record<string, MessageToPanelMessageHandler>>({});\n const addPanelMessageHandler: AddMessageToPanelMessageHandler = (\n type: string,\n handler: MessageToPanelMessageHandler,\n ) => {\n panelMessageHandlerRegistry.current[type] = handler;\n };\n\n const dispatch = useCallback<MessageDispatcher>(\n (message, frameId) => {\n if (window !== window.top) {\n window.parent.postMessage(encodeMessage({...message, __frameId: selfId.current}), '*');\n } else if (frameId && registry.current[frameId]) {\n (registry.current[frameId] as Window).postMessage(\n encodeMessage({...message, __frameId: selfId.current}),\n '*',\n );\n } else if (frameId === 'all') {\n Object.entries(registry.current).forEach(([id, frame]) => {\n if (id !== message.__frameId) {\n // DO not send the message to the sender\n frame.postMessage(encodeMessage({...message, __frameId: selfId.current}), '*');\n }\n });\n }\n },\n [registry.current],\n );\n\n const callCb = useCallback<CallCbFunction>(\n (path, data, frameId) => {\n dispatch({type: 'on-call-callback', path, data}, frameId);\n },\n [dispatch],\n );\n\n const unregister = () => {\n if (window !== window.top) {\n dispatch({type: 'unregister', id: selfId.current});\n }\n };\n\n const callbacksStore = useRef<Callbacks>({});\n const methods = useRef({\n ...getExposedMethods(callbacksStore, dispatch),\n unregister,\n changeLangInAllFrames,\n addPanelMessageHandler,\n });\n\n const getPanelIdFromEvent = (event: MessageEvent) => {\n const iFrames = window.document.getElementsByTagName('iframe');\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < iFrames.length; i++) {\n if (event.source === iFrames[i].contentWindow) {\n return iFrames[i].name;\n }\n }\n return null;\n };\n\n useEffect(() => {\n const clientHandlers = initClientHandlers(callCb, {...options, id: selfId.current}, callbacksStore);\n const onMessage = (event: MessageEvent) => {\n const message = decodeMessage(event.data);\n if (message === undefined) {\n return;\n }\n switch (message.type) {\n case 'register':\n const frames = window.frames;\n // Due to weak typing on Window, we cannot iterate directly on window.frames\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < frames.length; i++) {\n if (event.source === frames[i]) {\n registry.current[message.id] = frames[i];\n }\n }\n break;\n case 'unregister':\n if (registry.current[message.id]) {\n delete registry.current[message.id];\n }\n break;\n case 'message-to-panel':\n panelMessageHandlerRegistry.current[message.data.type]?.(message.data.payload);\n if (window === window.top) {\n const target = message.data.target ?? 'all';\n dispatch(message, target);\n }\n break;\n case 'get-panel-config':\n clientHandlers(\n {\n ...message,\n data: {...message.data, panelId: getPanelIdFromEvent(event)},\n },\n dispatch,\n );\n default:\n if (message.type === 'change-language') {\n setLang(message.language);\n } else {\n clientHandlers(message, dispatch);\n }\n break;\n }\n };\n\n window.addEventListener('message', onMessage);\n\n if (window !== window.top) {\n // Register the message handler for the parent window\n dispatch({type: 'register', id: selfId.current});\n }\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n }, []);\n\n return methods.current;\n};\n"]}
@@ -12,4 +12,5 @@ export declare const IframeMessengerClientContext: import("react").Context<{
12
12
  messageToPanel: (data: import("../useIFrameMessenger/types").MessageToPanelMessage["data"]) => void;
13
13
  openFlapPanel: (data: import("../useIFrameMessenger/types").OpenFlapPanelMessage["data"]) => void;
14
14
  closeFlapPanel: () => void;
15
+ getPanelConfig: (data: import("../useIFrameMessenger/types").GetPanelConfigMessage["data"]) => void;
15
16
  }>;
@@ -12,4 +12,5 @@ export declare const useIFrameMessengerClient: () => {
12
12
  messageToPanel: (data: import("../useIFrameMessenger/types").MessageToPanelMessage["data"]) => void;
13
13
  openFlapPanel: (data: import("../useIFrameMessenger/types").OpenFlapPanelMessage["data"]) => void;
14
14
  closeFlapPanel: () => void;
15
+ getPanelConfig: (data: import("../useIFrameMessenger/types").GetPanelConfigMessage["data"]) => void;
15
16
  };
@@ -37,7 +37,8 @@
37
37
  "max_length": "Max length",
38
38
  "confirm": "Confirm",
39
39
  "loading": "Loading",
40
- "are_you_sure": "Are you sure?"
40
+ "are_you_sure": "Are you sure?",
41
+ "reset": "Reset"
41
42
  },
42
43
  "errors": {
43
44
  "default_language_required": "The default language is required",
@@ -699,7 +700,6 @@
699
700
  "inactive": "Inactive sorts"
700
701
  },
701
702
  "toolbar": "Toolbar",
702
- "reset-filter": "Reset filter",
703
703
  "reset-view": "Reset view",
704
704
  "empty-data": "No items found.",
705
705
  "available-attributes": "Other available attributes",
@@ -776,6 +776,17 @@
776
776
  "deselect_all": "Deselect all items"
777
777
  }
778
778
  },
779
+ "export_profile_modal": {
780
+ "title": "Export",
781
+ "profile_label": "Choose an export profile",
782
+ "preview_label": "Preview of exported attributes",
783
+ "search_placeholder": "Search...",
784
+ "no_profiles": "No export profiles configured for this library",
785
+ "contact_admin": "Please contact an administrator to configure export profiles.",
786
+ "empty_columns": "(empty column)",
787
+ "export_button": "Export",
788
+ "error_title": "Export profile error"
789
+ },
779
790
  "add-existing-item": "Add existing item",
780
791
  "activate_item_one": "Activate this item?",
781
792
  "activate_item_other": "Activate these items?",
@@ -792,6 +803,7 @@
792
803
  "delete_link_one": "Delete this link?",
793
804
  "delete_link_other": "Delete these links?",
794
805
  "delete_link_description_one": "You are about to delete this link.",
795
- "delete_link_description_other": "You are about to delete these links."
806
+ "delete_link_description_other": "You are about to delete these links.",
807
+ "empty_value": "Undefined"
796
808
  }
797
809
  }
@@ -37,7 +37,8 @@
37
37
  "max_length": "Longueur maximale",
38
38
  "confirm": "Confirmer",
39
39
  "loading": "Chargement",
40
- "are_you_sure": "Êtes-vous sûr ?"
40
+ "are_you_sure": "Êtes-vous sûr ?",
41
+ "reset": "Réinitialiser"
41
42
  },
42
43
  "errors": {
43
44
  "default_language_required": "La langue par défaut est requise",
@@ -697,7 +698,6 @@
697
698
  "inactive": "Tris inactifs"
698
699
  },
699
700
  "toolbar": "Barre d’outils",
700
- "reset-filter": "Réinitialiser le filtre",
701
701
  "reset-view": "Réinitialiser la vue",
702
702
  "empty-data": "Aucun élément trouvé.",
703
703
  "sort-ascending": "Ascendant",
@@ -776,6 +776,17 @@
776
776
  "deselect_all": "Tout désélectionner"
777
777
  }
778
778
  },
779
+ "export_profile_modal": {
780
+ "title": "Export",
781
+ "profile_label": "Choisir un profil d'export",
782
+ "preview_label": "Aperçu des attributs exportés",
783
+ "search_placeholder": "Rechercher...",
784
+ "no_profiles": "Aucun profil d'export configuré pour cette librairie",
785
+ "contact_admin": "Veuillez contacter un administrateur pour configurer les profils d'export.",
786
+ "empty_columns": "(colonne vide)",
787
+ "export_button": "Exporter",
788
+ "error_title": "Erreur de profil d'export"
789
+ },
779
790
  "add-existing-item": "Ajouter un élément existant",
780
791
  "activate_item_one": "Activer cet élément ?",
781
792
  "activate_item_other": "Activer ces éléments ?",
@@ -792,6 +803,7 @@
792
803
  "delete_link_one": "Supprimer cette liaison ?",
793
804
  "delete_link_other": "Supprimer ces liaisons ?",
794
805
  "delete_link_description_one": "Vous êtes sur le point de supprimer cette liaison.",
795
- "delete_link_description_other": "Vous êtes sur le point de supprimer ces liaisons."
806
+ "delete_link_description_other": "Vous êtes sur le point de supprimer ces liaisons.",
807
+ "empty_value": "Non défini"
796
808
  }
797
809
  }