@ynput/ayon-frontend-shared 0.2.16 → 0.2.17

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 (210) hide show
  1. package/dist/DetailsPanel.cjs.js +9 -10
  2. package/dist/DetailsPanel.cjs.js.map +1 -1
  3. package/dist/DetailsPanel.es.js +9 -10
  4. package/dist/DetailsPanel.es.js.map +1 -1
  5. package/dist/ProjectTreeTable.cjs.js +38 -34
  6. package/dist/ProjectTreeTable.cjs.js.map +1 -1
  7. package/dist/ProjectTreeTable.es.js +20 -16
  8. package/dist/ProjectTreeTable.es.js.map +1 -1
  9. package/dist/_virtual/index.cjs10.js +4 -4
  10. package/dist/_virtual/index.cjs5.js +5 -3
  11. package/dist/_virtual/index.cjs5.js.map +1 -1
  12. package/dist/_virtual/index.cjs6.js +3 -5
  13. package/dist/_virtual/index.cjs6.js.map +1 -1
  14. package/dist/_virtual/index.cjs8.js +4 -4
  15. package/dist/_virtual/index.cjs9.js +4 -4
  16. package/dist/_virtual/index.es10.js +4 -4
  17. package/dist/_virtual/index.es5.js +5 -2
  18. package/dist/_virtual/index.es5.js.map +1 -1
  19. package/dist/_virtual/index.es6.js +2 -5
  20. package/dist/_virtual/index.es6.js.map +1 -1
  21. package/dist/_virtual/index.es8.js +4 -4
  22. package/dist/_virtual/index.es9.js +4 -4
  23. package/dist/index.cjs.js +6 -7
  24. package/dist/index.cjs.js.map +1 -1
  25. package/dist/index.es.js +6 -7
  26. package/dist/index.es.js.map +1 -1
  27. package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.cjs.js +1 -2
  28. package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.cjs.js.map +1 -1
  29. package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.es.js +1 -2
  30. package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.es.js.map +1 -1
  31. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +2 -2
  32. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  33. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  34. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  35. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  36. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  37. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  38. package/dist/node_modules/remove-accents/index.es.js +1 -1
  39. package/dist/node_modules/vfile/lib/index.cjs.js +1 -1
  40. package/dist/node_modules/vfile/lib/index.es.js +1 -1
  41. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js +6 -7
  42. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js.map +1 -1
  43. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js +6 -7
  44. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js.map +1 -1
  45. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js +2 -0
  46. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js.map +1 -1
  47. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js +2 -0
  48. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js.map +1 -1
  49. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +5 -1
  50. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  51. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +5 -1
  52. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  53. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +21 -86
  54. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  55. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +21 -86
  56. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  57. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js +2 -0
  58. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js.map +1 -1
  59. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js +2 -0
  60. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js.map +1 -1
  61. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +6 -7
  62. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  63. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +6 -7
  64. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  65. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +6 -7
  66. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  67. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -7
  68. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  69. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +6 -7
  70. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  71. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +6 -7
  72. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  73. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js +27 -6
  74. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js.map +1 -1
  75. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js +27 -6
  76. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js.map +1 -1
  77. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +6 -7
  78. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  79. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +6 -7
  80. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  81. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +6 -7
  82. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  83. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -7
  84. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  85. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +6 -7
  86. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  87. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +6 -7
  88. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  89. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +9 -10
  90. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  91. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +9 -10
  92. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  93. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +6 -7
  94. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  95. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +6 -7
  96. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  97. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +6 -7
  98. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  99. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -7
  100. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  101. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +5 -6
  102. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  103. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -6
  104. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  105. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +16 -9
  106. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  107. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +16 -9
  108. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  109. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  110. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  111. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +1 -1
  112. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  113. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +5 -7
  114. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  115. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -7
  116. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  117. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js +1 -174
  118. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  119. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js +2 -175
  120. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  121. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +212 -0
  122. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -0
  123. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +212 -0
  124. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -0
  125. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -185
  126. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  127. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +2 -186
  128. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  129. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +191 -0
  130. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -0
  131. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +191 -0
  132. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -0
  133. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js +1 -79
  134. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js.map +1 -1
  135. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js +2 -80
  136. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js.map +1 -1
  137. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +84 -0
  138. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -0
  139. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +84 -0
  140. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -0
  141. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -277
  142. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
  143. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +2 -278
  144. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js.map +1 -1
  145. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +282 -0
  146. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -0
  147. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +282 -0
  148. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -0
  149. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +3 -2
  150. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  151. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +3 -2
  152. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  153. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.cjs.js.map +1 -1
  154. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.es.js.map +1 -1
  155. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  156. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  157. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +8 -175
  158. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  159. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +8 -175
  160. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  161. package/dist/shared/src/containers/ProjectTreeTable/{context/ProjectTableModulesContext.cjs.js → hooks/useProjectTableModules.cjs.js} +26 -48
  162. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -0
  163. package/dist/shared/src/containers/ProjectTreeTable/{context/ProjectTableModulesContext.es.js → hooks/useProjectTableModules.es.js} +26 -48
  164. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -0
  165. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +4 -3
  166. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  167. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +4 -3
  168. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  169. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +8 -5
  170. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  171. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +7 -4
  172. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  173. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +7 -8
  174. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  175. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +7 -8
  176. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  177. package/dist/shared/src/context/RemoteModulesContext.es.js +1 -1
  178. package/dist/shared/src/hooks/useLoadModule.cjs.js +3 -3
  179. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  180. package/dist/shared/src/hooks/useLoadModule.es.js +3 -3
  181. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  182. package/dist/types/components/ProjectTableSettings/ColumnItem.d.ts +1 -0
  183. package/dist/types/components/ProjectTableSettings/SortableColumnItem.d.ts +1 -0
  184. package/dist/types/components/SettingsPanel/SettingsPanelItemTemplate.d.ts +1 -0
  185. package/dist/types/containers/ProjectTreeTable/components/GroupSettingsFallback.d.ts +9 -2
  186. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +16 -16
  187. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsProvider.d.ts +9 -0
  188. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +5 -61
  189. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +59 -0
  190. package/dist/types/containers/ProjectTreeTable/context/SelectedRowsContext.d.ts +3 -8
  191. package/dist/types/containers/ProjectTreeTable/context/SelectedRowsProvider.d.ts +6 -0
  192. package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +2 -4
  193. package/dist/types/containers/ProjectTreeTable/context/SelectionCellsProvider.d.ts +4 -0
  194. package/dist/types/containers/ProjectTreeTable/context/index.d.ts +4 -2
  195. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
  196. package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +1 -2
  197. package/dist/types/containers/ProjectTreeTable/hooks/useEntitiesMap.d.ts +1 -1
  198. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +4 -3
  199. package/dist/types/containers/ProjectTreeTable/hooks/useGetGroupedFields.d.ts +1 -1
  200. package/dist/types/containers/ProjectTreeTable/{context/ProjectTableModulesContext.d.ts → hooks/useProjectTableModules.d.ts} +5 -12
  201. package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -10
  202. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +3 -3
  203. package/package.json +1 -1
  204. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.cjs.js.map +0 -1
  205. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.es.js.map +0 -1
  206. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js +0 -33
  207. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js.map +0 -1
  208. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.es.js +0 -33
  209. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.es.js.map +0 -1
  210. package/dist/types/containers/ProjectTreeTable/context/ProjectTableSelectionContext.d.ts +0 -11
@@ -133,17 +133,15 @@ require("../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");
133
133
  require("../Feed/Feed.styled.cjs.js");
134
134
  require("date-fns");
135
135
  require("../ProjectTreeTable/ProjectTreeTable.cjs.js");
136
+ require("../ProjectTreeTable/context/CellEditingContext.cjs.js");
137
+ require("../ProjectTreeTable/context/ClipboardContext.cjs.js");
138
+ require("@tanstack/react-table");
136
139
  require("../ProjectTreeTable/context/SelectionCellsContext.cjs.js");
140
+ require("../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");
137
141
  require("../ProjectTreeTable/context/ProjectTableContext.cjs.js");
138
142
  require("../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");
139
143
  require("../ProjectTreeTable/context/SelectedRowsContext.cjs.js");
140
- require("../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");
141
- require("../ProjectTreeTable/context/CellEditingContext.cjs.js");
142
- require("../ProjectTreeTable/context/ClipboardContext.cjs.js");
143
- require("../ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js");
144
144
  require("../ProjectTreeTable/context/ProjectDataContext.cjs.js");
145
- require("../ProjectTreeTable/context/ProjectTableModulesContext.cjs.js");
146
- require("@tanstack/react-table");
147
145
  require("../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");
148
146
  require("../ProjectTreeTable/widgets/DateWidget.cjs.js");
149
147
  require("../ProjectTreeTable/widgets/EnumWidget.cjs.js");
@@ -157,12 +155,13 @@ require("../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");
157
155
  require("../ProjectTreeTable/components/SelectionCell.cjs.js");
158
156
  require("../ProjectTreeTable/components/RowSelectionHeader.cjs.js");
159
157
  require("../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");
160
- const versionsToRepresentations = require("./versionsToRepresentations.cjs.js");
161
- require("../DetailsPanel/DetailsPanel.styled.cjs.js");
162
158
  require("../../../../_virtual/runtime.cjs.js");
163
159
  require("../../../../_virtual/semver.cjs.js");
164
160
  require("react-redux");
165
161
  require("custom-protocol-check");
162
+ require("../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");
163
+ const versionsToRepresentations = require("./versionsToRepresentations.cjs.js");
164
+ require("../DetailsPanel/DetailsPanel.styled.cjs.js");
166
165
  require("../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");
167
166
  require("../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");
168
167
  require("../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");
@@ -1 +1 @@
1
- {"version":3,"file":"RepresentationsList.cjs.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["useMemo","useState","groupResult","useCreateContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","Column","DetailsDialog"],"mappings":"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"}
1
+ {"version":3,"file":"RepresentationsList.cjs.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["useMemo","useState","groupResult","useCreateContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","Column","DetailsDialog"],"mappings":"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"}
@@ -131,17 +131,15 @@ import "../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
131
131
  import "../Feed/Feed.styled.es.js";
132
132
  import "date-fns";
133
133
  import "../ProjectTreeTable/ProjectTreeTable.es.js";
134
+ import "../ProjectTreeTable/context/CellEditingContext.es.js";
135
+ import "../ProjectTreeTable/context/ClipboardContext.es.js";
136
+ import "@tanstack/react-table";
134
137
  import "../ProjectTreeTable/context/SelectionCellsContext.es.js";
138
+ import "../ProjectTreeTable/context/ColumnSettingsContext.es.js";
135
139
  import "../ProjectTreeTable/context/ProjectTableContext.es.js";
136
140
  import "../ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
137
141
  import "../ProjectTreeTable/context/SelectedRowsContext.es.js";
138
- import "../ProjectTreeTable/context/ColumnSettingsContext.es.js";
139
- import "../ProjectTreeTable/context/CellEditingContext.es.js";
140
- import "../ProjectTreeTable/context/ClipboardContext.es.js";
141
- import "../ProjectTreeTable/context/ProjectTableSelectionContext.es.js";
142
142
  import "../ProjectTreeTable/context/ProjectDataContext.es.js";
143
- import "../ProjectTreeTable/context/ProjectTableModulesContext.es.js";
144
- import "@tanstack/react-table";
145
143
  import "../ProjectTreeTable/widgets/CollapsedWidget.es.js";
146
144
  import "../ProjectTreeTable/widgets/DateWidget.es.js";
147
145
  import "../ProjectTreeTable/widgets/EnumWidget.es.js";
@@ -155,12 +153,13 @@ import "../ProjectTreeTable/ProjectTreeTable.styled.es.js";
155
153
  import "../ProjectTreeTable/components/SelectionCell.es.js";
156
154
  import "../ProjectTreeTable/components/RowSelectionHeader.es.js";
157
155
  import "../ProjectTreeTable/widgets/LoadMoreWidget.es.js";
158
- import versionsToRepresentations from "./versionsToRepresentations.es.js";
159
- import "../DetailsPanel/DetailsPanel.styled.es.js";
160
156
  import "../../../../_virtual/runtime.es.js";
161
157
  import "../../../../_virtual/semver.es.js";
162
158
  import "react-redux";
163
159
  import "custom-protocol-check";
160
+ import "../ProjectTreeTable/components/GroupSettingsFallback.es.js";
161
+ import versionsToRepresentations from "./versionsToRepresentations.es.js";
162
+ import "../DetailsPanel/DetailsPanel.styled.es.js";
164
163
  import "../DetailsPanel/FeedFilters/FeedFilters.styled.es.js";
165
164
  import "../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
166
165
  import "../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js";
@@ -1 +1 @@
1
- {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,UAAU;AAAA,EACd;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAEX;AAMO,MAAM,sBAAsB,CAAC,EAAE,WAAW,CAAA,QAAgB;;AAEzD,QAAA,kBAAkB,QAAQ,MAAM,0BAA0B,QAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE3F,QAAM,CAAC,YAAY,aAAa,IAAI,SAAyB,KAAK;AAC5D,QAAA,yBAAwB,qBAAgB,KAAK,CAAC,QAAQ,IAAI,OAAO,UAAU,MAAnD,mBAAsD;AAEpF,QAAM,CAAC,UAAU,WAAW,IAAI,SAAmB,CAAA,CAAE;AAE/C,QAAA,OAAO,QAAQ,MAAM;AAElB,WAAA,YAAY,iBAAiB,MAAM;AAAA,EAAA,GACzC,CAAC,eAAe,CAAC;AAEd,QAAA,uBAAuB,CAAC,aAAqB;AAErC,gBAAA,CAAC,QAAQ,CAAC;AAAA,EACxB;AAEM,QAAA,aAAa,CAAC,MAAW;AACR,yBAAA,EAAE,KAAK,KAAK,EAAE;AAAA,EACrC;AAEM,QAAA,eAAe,CAAC,OAAe;AAAA,IACnC;AAAA,MACE,OAAO;AAAA,MACP,SAAS,MAAM,cAAc,EAAE;AAAA,MAC/B,MAAM;AAAA,IAAA;AAAA,EAEV;AAEA,QAAM,CAAC,WAAW,IAAI,qBAAqB,EAAE;AAEvC,QAAA,oBAAoB,CAAC,MAAW;AAC9B,UAAA,KAAK,EAAE,KAAK,KAAK;AAEvB,QAAI,IAAI;AAEN,2BAAqB,EAAE;AAEvB,kBAAY,EAAE,eAAe,aAAa,EAAE,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAEIA,kCAAA,KAAAC,4BAAA,EAAA,UAAA;AAAA,IAAAC,sCAAC,YACC,EAAA,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,YAAU;AAAA,QACV,cAAa;AAAA,QACb,OAAO;AAAA,QACP,cAAa;AAAA,QACb,eAAc;AAAA,QACd,eAAe,SAAS,CAAC;AAAA,QACzB;AAAA,QACA,eAAe;AAAA,QAEd,UAAA,QAAQ,IAAI,CAAC,QAAQ;AAElB,iBAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,OAAO,IAAI;AAAA,cACX,QAAQ,IAAI;AAAA,cACZ,UAAU,IAAI;AAAA,cACd,OAAO,EAAE,OAAO,IAAI,MAAM;AAAA,YAAA;AAAA,YAJrB,IAAI;AAAA,UAKX;AAAA,QAEH,CAAA;AAAA,MAAA;AAAA,IAAA,GAEL;AAAA,IAEC,cACCA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW,CAAC,UAAU;AAAA,QACtB,SAAS,CAAC,CAAC;AAAA,QACX,QAAQ,MAAM,cAAc,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,UAAU;AAAA,EACd;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAEX;AAMO,MAAM,sBAAsB,CAAC,EAAE,WAAW,CAAA,QAAgB;;AAEzD,QAAA,kBAAkB,QAAQ,MAAM,0BAA0B,QAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE3F,QAAM,CAAC,YAAY,aAAa,IAAI,SAAyB,KAAK;AAC5D,QAAA,yBAAwB,qBAAgB,KAAK,CAAC,QAAQ,IAAI,OAAO,UAAU,MAAnD,mBAAsD;AAEpF,QAAM,CAAC,UAAU,WAAW,IAAI,SAAmB,CAAA,CAAE;AAE/C,QAAA,OAAO,QAAQ,MAAM;AAElB,WAAA,YAAY,iBAAiB,MAAM;AAAA,EAAA,GACzC,CAAC,eAAe,CAAC;AAEd,QAAA,uBAAuB,CAAC,aAAqB;AAErC,gBAAA,CAAC,QAAQ,CAAC;AAAA,EACxB;AAEM,QAAA,aAAa,CAAC,MAAW;AACR,yBAAA,EAAE,KAAK,KAAK,EAAE;AAAA,EACrC;AAEM,QAAA,eAAe,CAAC,OAAe;AAAA,IACnC;AAAA,MACE,OAAO;AAAA,MACP,SAAS,MAAM,cAAc,EAAE;AAAA,MAC/B,MAAM;AAAA,IAAA;AAAA,EAEV;AAEA,QAAM,CAAC,WAAW,IAAI,qBAAqB,EAAE;AAEvC,QAAA,oBAAoB,CAAC,MAAW;AAC9B,UAAA,KAAK,EAAE,KAAK,KAAK;AAEvB,QAAI,IAAI;AAEN,2BAAqB,EAAE;AAEvB,kBAAY,EAAE,eAAe,aAAa,EAAE,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAEIA,kCAAA,KAAAC,4BAAA,EAAA,UAAA;AAAA,IAAAC,sCAAC,YACC,EAAA,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,YAAU;AAAA,QACV,cAAa;AAAA,QACb,OAAO;AAAA,QACP,cAAa;AAAA,QACb,eAAc;AAAA,QACd,eAAe,SAAS,CAAC;AAAA,QACzB;AAAA,QACA,eAAe;AAAA,QAEd,UAAA,QAAQ,IAAI,CAAC,QAAQ;AAElB,iBAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,OAAO,IAAI;AAAA,cACX,QAAQ,IAAI;AAAA,cACZ,UAAU,IAAI;AAAA,cACd,OAAO,EAAE,OAAO,IAAI,MAAM;AAAA,YAAA;AAAA,YAJrB,IAAI;AAAA,UAKX;AAAA,QAEH,CAAA;AAAA,MAAA;AAAA,IAAA,GAEL;AAAA,IAEC,cACCA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW,CAAC,UAAU;AAAA,QACtB,SAAS,CAAC,CAAC;AAAA,QACX,QAAQ,MAAM,cAAc,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GAEJ;AAEJ;"}
@@ -1,5 +1,5 @@
1
1
  import { j as jsxRuntimeExports } from "../../../_virtual/jsx-runtime.es.js";
2
- import { createContext, useContext, useState, useEffect } from "react";
2
+ import { createContext, useState, useEffect, useContext } from "react";
3
3
  import { r as runtimeExports } from "../../../_virtual/runtime.es.js";
4
4
  import "../api/base/client.es.js";
5
5
  import "../api/generated/graphql.es.js";
@@ -49,7 +49,7 @@ const useLoadModule = ({
49
49
  setIsLoading(false);
50
50
  return console.log("module not found", { addon, remote, module: module2 });
51
51
  }
52
- if (isLoaded) {
52
+ if (isLoaded === module2) {
53
53
  setIsLoading(false);
54
54
  return;
55
55
  }
@@ -57,7 +57,7 @@ const useLoadModule = ({
57
57
  from: "runtime"
58
58
  }).then((remote2) => {
59
59
  console.log("loaded remote", module2);
60
- setIsLoaded(true);
60
+ setIsLoaded(module2);
61
61
  setIsLoading(false);
62
62
  if (remote2) loadedRemote.current = remote2.default;
63
63
  }).catch((e) => {
@@ -68,7 +68,7 @@ const useLoadModule = ({
68
68
  return [
69
69
  loadedRemote.current,
70
70
  {
71
- isLoaded,
71
+ isLoaded: isLoaded === module2,
72
72
  isLoading,
73
73
  outdated: isOutdated ? {
74
74
  current: ((_a = modules.find((m) => m.addonName === addon)) == null ? void 0 : _a.addonVersion) || "unknown",
@@ -1 +1 @@
1
- {"version":3,"file":"useLoadModule.cjs.js","sources":["../../../../src/hooks/useLoadModule.ts"],"sourcesContent":["import { useRemoteModules } from '@shared/context/RemoteModulesContext'\nimport { loadRemote } from '@module-federation/enhanced/runtime'\nimport { useEffect, useRef, useState } from 'react'\nimport semver from 'semver'\n\ninterface Props<T> {\n addon: string\n remote: string\n module: string\n fallback: T\n debug?: boolean\n minVersion?: string // minimum version required for this module\n skip?: boolean // skip loading if module is provided externally\n}\n\nexport const useLoadModule = <T>({\n addon,\n remote,\n module,\n fallback,\n minVersion,\n skip = false,\n}: Props<T>): [\n T,\n { isLoaded: boolean; isLoading: boolean; outdated?: { current: string; required: string } },\n] => {\n const { remotesInitialized, modules } = useRemoteModules()\n const [isLoading, setIsLoading] = useState(true)\n const [isLoaded, setIsLoaded] = useState(false)\n const [isOutdated, setIsOutdated] = useState(false)\n const loadedRemote = useRef<T>(fallback)\n\n useEffect(() => {\n // skip loading if module is provided externally\n if (skip) {\n setIsLoading(false)\n setIsLoaded(true)\n return\n }\n\n // wait for remotes to be initialized\n if (!remotesInitialized || !addon || !remote || !module) return\n\n // check if remote and module exist\n const initializedRemote = modules.find((m) => m.addonName === addon)\n\n if (!initializedRemote) {\n console.log('remote not found', { addon, remote, module })\n setIsLoading(false)\n return\n }\n\n // check remote meets minimum version requirement\n if (\n minVersion &&\n !semver.gte(initializedRemote.addonVersion, minVersion) &&\n minVersion + '-dev' !== initializedRemote.addonVersion\n ) {\n console.log('remote version does not meet minimum requirement', {\n addon,\n remote,\n module,\n current: initializedRemote.addonVersion,\n required: minVersion,\n })\n\n setIsOutdated(true)\n setIsLoading(false)\n\n // use fallback if version requirement not met\n return\n }\n\n setIsOutdated(false)\n\n const initializedModule = initializedRemote.modules[remote]\n\n if (!initializedModule) {\n setIsLoading(false)\n return console.log('module not found', { addon, remote, module })\n }\n\n // check if module is already loaded\n if (isLoaded) {\n setIsLoading(false)\n return\n }\n loadRemote<{ default: T }>(`${remote}/${module}`, {\n from: 'runtime',\n })\n .then((remote) => {\n console.log('loaded remote', module)\n setIsLoaded(true)\n setIsLoading(false)\n if (remote) loadedRemote.current = remote.default\n })\n .catch((e) => {\n setIsLoading(false)\n console.error('error loading remote', remote, module, e)\n })\n }, [isLoaded, remotesInitialized, modules, addon, remote, module, minVersion, skip])\n\n return [\n loadedRemote.current,\n {\n isLoaded,\n isLoading,\n outdated: isOutdated\n ? {\n current: modules.find((m) => m.addonName === addon)?.addonVersion || 'unknown',\n required: minVersion || 'unknown',\n }\n : undefined,\n },\n ]\n}\n"],"names":["module","useRemoteModules","useState","useRef","useEffect","loadRemote","remote"],"mappings":";;;;;;AAeO,MAAM,gBAAgB,CAAI;AAAA,EAC/B;AAAA,EACA;AAAA,EACA,QAAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AACT,MAGK;;AACH,QAAM,EAAE,oBAAoB,QAAQ,IAAIC,sCAAiB;AACzD,QAAM,CAAC,WAAW,YAAY,IAAIC,MAAAA,SAAS,IAAI;AAC/C,QAAM,CAAC,UAAU,WAAW,IAAIA,MAAAA,SAAS,KAAK;AAC9C,QAAM,CAAC,YAAY,aAAa,IAAIA,MAAAA,SAAS,KAAK;AAC5C,QAAA,eAAeC,aAAU,QAAQ;AAEvCC,QAAAA,UAAU,MAAM;AAEd,QAAI,MAAM;AACR,mBAAa,KAAK;AAClB,kBAAY,IAAI;AAChB;AAAA,IAAA;AAIF,QAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,UAAU,CAACJ,QAAQ;AAGzD,UAAM,oBAAoB,QAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK;AAEnE,QAAI,CAAC,mBAAmB;AACtB,cAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAAA,SAAQ;AACzD,mBAAa,KAAK;AAClB;AAAA,IAAA;AAKA,QAAA,cACA,CAAC,OAAO,IAAI,kBAAkB,cAAc,UAAU,KACtD,aAAa,WAAW,kBAAkB,cAC1C;AACA,cAAQ,IAAI,oDAAoD;AAAA,QAC9D;AAAA,QACA;AAAA,QACA,QAAAA;AAAA,QACA,SAAS,kBAAkB;AAAA,QAC3B,UAAU;AAAA,MAAA,CACX;AAED,oBAAc,IAAI;AAClB,mBAAa,KAAK;AAGlB;AAAA,IAAA;AAGF,kBAAc,KAAK;AAEb,UAAA,oBAAoB,kBAAkB,QAAQ,MAAM;AAE1D,QAAI,CAAC,mBAAmB;AACtB,mBAAa,KAAK;AAClB,aAAO,QAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAAA,SAAQ;AAAA,IAAA;AAIlE,QAAI,UAAU;AACZ,mBAAa,KAAK;AAClB;AAAA,IAAA;AAEFK,YAAAA,eAAAA,WAA2B,GAAG,MAAM,IAAIL,OAAM,IAAI;AAAA,MAChD,MAAM;AAAA,IAAA,CACP,EACE,KAAK,CAACM,YAAW;AACR,cAAA,IAAI,iBAAiBN,OAAM;AACnC,kBAAY,IAAI;AAChB,mBAAa,KAAK;AACdM,UAAAA,QAAqB,cAAA,UAAUA,QAAO;AAAA,IAAA,CAC3C,EACA,MAAM,CAAC,MAAM;AACZ,mBAAa,KAAK;AAClB,cAAQ,MAAM,wBAAwB,QAAQN,SAAQ,CAAC;AAAA,IAAA,CACxD;AAAA,EAAA,GACF,CAAC,UAAU,oBAAoB,SAAS,OAAO,QAAQA,SAAQ,YAAY,IAAI,CAAC;AAE5E,SAAA;AAAA,IACL,aAAa;AAAA,IACb;AAAA,MACE;AAAA,MACA;AAAA,MACA,UAAU,aACN;AAAA,QACE,WAAS,aAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK,MAAzC,mBAA4C,iBAAgB;AAAA,QACrE,UAAU,cAAc;AAAA,MAAA,IAE1B;AAAA,IAAA;AAAA,EAER;AACF;;"}
1
+ {"version":3,"file":"useLoadModule.cjs.js","sources":["../../../../src/hooks/useLoadModule.ts"],"sourcesContent":["import { useRemoteModules } from '@shared/context/RemoteModulesContext'\nimport { loadRemote } from '@module-federation/enhanced/runtime'\nimport { useEffect, useRef, useState } from 'react'\nimport semver from 'semver'\n\ninterface Props<T> {\n addon: string\n remote: string\n module: string\n fallback: T\n debug?: boolean\n minVersion?: string // minimum version required for this module\n skip?: boolean // skip loading if module is provided externally\n}\n\nexport const useLoadModule = <T>({\n addon,\n remote,\n module,\n fallback,\n minVersion,\n skip = false,\n}: Props<T>): [\n T,\n { isLoaded: boolean; isLoading: boolean; outdated?: { current: string; required: string } },\n] => {\n const { remotesInitialized, modules } = useRemoteModules()\n const [isLoading, setIsLoading] = useState(true)\n const [isLoaded, setIsLoaded] = useState<string | boolean>(false)\n const [isOutdated, setIsOutdated] = useState(false)\n const loadedRemote = useRef<T>(fallback)\n\n useEffect(() => {\n // skip loading if module is provided externally\n if (skip) {\n setIsLoading(false)\n setIsLoaded(true)\n return\n }\n\n // wait for remotes to be initialized\n if (!remotesInitialized || !addon || !remote || !module) return\n\n // check if remote and module exist\n const initializedRemote = modules.find((m) => m.addonName === addon)\n\n if (!initializedRemote) {\n console.log('remote not found', { addon, remote, module })\n setIsLoading(false)\n return\n }\n\n // check remote meets minimum version requirement\n if (\n minVersion &&\n !semver.gte(initializedRemote.addonVersion, minVersion) &&\n minVersion + '-dev' !== initializedRemote.addonVersion\n ) {\n console.log('remote version does not meet minimum requirement', {\n addon,\n remote,\n module,\n current: initializedRemote.addonVersion,\n required: minVersion,\n })\n\n setIsOutdated(true)\n setIsLoading(false)\n\n // use fallback if version requirement not met\n return\n }\n\n setIsOutdated(false)\n\n const initializedModule = initializedRemote.modules[remote]\n\n if (!initializedModule) {\n setIsLoading(false)\n return console.log('module not found', { addon, remote, module })\n }\n\n // check if module is already loaded\n if (isLoaded === module) {\n setIsLoading(false)\n return\n }\n loadRemote<{ default: T }>(`${remote}/${module}`, {\n from: 'runtime',\n })\n .then((remote) => {\n console.log('loaded remote', module)\n setIsLoaded(module)\n setIsLoading(false)\n if (remote) loadedRemote.current = remote.default\n })\n .catch((e) => {\n setIsLoading(false)\n console.error('error loading remote', remote, module, e)\n })\n }, [isLoaded, remotesInitialized, modules, addon, remote, module, minVersion, skip])\n\n return [\n loadedRemote.current,\n {\n isLoaded: isLoaded === module,\n isLoading,\n outdated: isOutdated\n ? {\n current: modules.find((m) => m.addonName === addon)?.addonVersion || 'unknown',\n required: minVersion || 'unknown',\n }\n : undefined,\n },\n ]\n}\n"],"names":["module","useRemoteModules","useState","useRef","useEffect","loadRemote","remote"],"mappings":";;;;;;AAeO,MAAM,gBAAgB,CAAI;AAAA,EAC/B;AAAA,EACA;AAAA,EACA,QAAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AACT,MAGK;;AACH,QAAM,EAAE,oBAAoB,QAAQ,IAAIC,sCAAiB;AACzD,QAAM,CAAC,WAAW,YAAY,IAAIC,MAAAA,SAAS,IAAI;AAC/C,QAAM,CAAC,UAAU,WAAW,IAAIA,MAAAA,SAA2B,KAAK;AAChE,QAAM,CAAC,YAAY,aAAa,IAAIA,MAAAA,SAAS,KAAK;AAC5C,QAAA,eAAeC,aAAU,QAAQ;AAEvCC,QAAAA,UAAU,MAAM;AAEd,QAAI,MAAM;AACR,mBAAa,KAAK;AAClB,kBAAY,IAAI;AAChB;AAAA,IAAA;AAIF,QAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,UAAU,CAACJ,QAAQ;AAGzD,UAAM,oBAAoB,QAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK;AAEnE,QAAI,CAAC,mBAAmB;AACtB,cAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAAA,SAAQ;AACzD,mBAAa,KAAK;AAClB;AAAA,IAAA;AAKA,QAAA,cACA,CAAC,OAAO,IAAI,kBAAkB,cAAc,UAAU,KACtD,aAAa,WAAW,kBAAkB,cAC1C;AACA,cAAQ,IAAI,oDAAoD;AAAA,QAC9D;AAAA,QACA;AAAA,QACA,QAAAA;AAAA,QACA,SAAS,kBAAkB;AAAA,QAC3B,UAAU;AAAA,MAAA,CACX;AAED,oBAAc,IAAI;AAClB,mBAAa,KAAK;AAGlB;AAAA,IAAA;AAGF,kBAAc,KAAK;AAEb,UAAA,oBAAoB,kBAAkB,QAAQ,MAAM;AAE1D,QAAI,CAAC,mBAAmB;AACtB,mBAAa,KAAK;AAClB,aAAO,QAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAAA,SAAQ;AAAA,IAAA;AAIlE,QAAI,aAAaA,SAAQ;AACvB,mBAAa,KAAK;AAClB;AAAA,IAAA;AAEFK,YAAAA,eAAAA,WAA2B,GAAG,MAAM,IAAIL,OAAM,IAAI;AAAA,MAChD,MAAM;AAAA,IAAA,CACP,EACE,KAAK,CAACM,YAAW;AACR,cAAA,IAAI,iBAAiBN,OAAM;AACnC,kBAAYA,OAAM;AAClB,mBAAa,KAAK;AACdM,UAAAA,QAAqB,cAAA,UAAUA,QAAO;AAAA,IAAA,CAC3C,EACA,MAAM,CAAC,MAAM;AACZ,mBAAa,KAAK;AAClB,cAAQ,MAAM,wBAAwB,QAAQN,SAAQ,CAAC;AAAA,IAAA,CACxD;AAAA,EAAA,GACF,CAAC,UAAU,oBAAoB,SAAS,OAAO,QAAQA,SAAQ,YAAY,IAAI,CAAC;AAE5E,SAAA;AAAA,IACL,aAAa;AAAA,IACb;AAAA,MACE,UAAU,aAAaA;AAAA,MACvB;AAAA,MACA,UAAU,aACN;AAAA,QACE,WAAS,aAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK,MAAzC,mBAA4C,iBAAgB;AAAA,QACrE,UAAU,cAAc;AAAA,MAAA,IAE1B;AAAA,IAAA;AAAA,EAER;AACF;;"}
@@ -47,7 +47,7 @@ const useLoadModule = ({
47
47
  setIsLoading(false);
48
48
  return console.log("module not found", { addon, remote, module });
49
49
  }
50
- if (isLoaded) {
50
+ if (isLoaded === module) {
51
51
  setIsLoading(false);
52
52
  return;
53
53
  }
@@ -55,7 +55,7 @@ const useLoadModule = ({
55
55
  from: "runtime"
56
56
  }).then((remote2) => {
57
57
  console.log("loaded remote", module);
58
- setIsLoaded(true);
58
+ setIsLoaded(module);
59
59
  setIsLoading(false);
60
60
  if (remote2) loadedRemote.current = remote2.default;
61
61
  }).catch((e) => {
@@ -66,7 +66,7 @@ const useLoadModule = ({
66
66
  return [
67
67
  loadedRemote.current,
68
68
  {
69
- isLoaded,
69
+ isLoaded: isLoaded === module,
70
70
  isLoading,
71
71
  outdated: isOutdated ? {
72
72
  current: ((_a = modules.find((m) => m.addonName === addon)) == null ? void 0 : _a.addonVersion) || "unknown",
@@ -1 +1 @@
1
- {"version":3,"file":"useLoadModule.es.js","sources":["../../../../src/hooks/useLoadModule.ts"],"sourcesContent":["import { useRemoteModules } from '@shared/context/RemoteModulesContext'\nimport { loadRemote } from '@module-federation/enhanced/runtime'\nimport { useEffect, useRef, useState } from 'react'\nimport semver from 'semver'\n\ninterface Props<T> {\n addon: string\n remote: string\n module: string\n fallback: T\n debug?: boolean\n minVersion?: string // minimum version required for this module\n skip?: boolean // skip loading if module is provided externally\n}\n\nexport const useLoadModule = <T>({\n addon,\n remote,\n module,\n fallback,\n minVersion,\n skip = false,\n}: Props<T>): [\n T,\n { isLoaded: boolean; isLoading: boolean; outdated?: { current: string; required: string } },\n] => {\n const { remotesInitialized, modules } = useRemoteModules()\n const [isLoading, setIsLoading] = useState(true)\n const [isLoaded, setIsLoaded] = useState(false)\n const [isOutdated, setIsOutdated] = useState(false)\n const loadedRemote = useRef<T>(fallback)\n\n useEffect(() => {\n // skip loading if module is provided externally\n if (skip) {\n setIsLoading(false)\n setIsLoaded(true)\n return\n }\n\n // wait for remotes to be initialized\n if (!remotesInitialized || !addon || !remote || !module) return\n\n // check if remote and module exist\n const initializedRemote = modules.find((m) => m.addonName === addon)\n\n if (!initializedRemote) {\n console.log('remote not found', { addon, remote, module })\n setIsLoading(false)\n return\n }\n\n // check remote meets minimum version requirement\n if (\n minVersion &&\n !semver.gte(initializedRemote.addonVersion, minVersion) &&\n minVersion + '-dev' !== initializedRemote.addonVersion\n ) {\n console.log('remote version does not meet minimum requirement', {\n addon,\n remote,\n module,\n current: initializedRemote.addonVersion,\n required: minVersion,\n })\n\n setIsOutdated(true)\n setIsLoading(false)\n\n // use fallback if version requirement not met\n return\n }\n\n setIsOutdated(false)\n\n const initializedModule = initializedRemote.modules[remote]\n\n if (!initializedModule) {\n setIsLoading(false)\n return console.log('module not found', { addon, remote, module })\n }\n\n // check if module is already loaded\n if (isLoaded) {\n setIsLoading(false)\n return\n }\n loadRemote<{ default: T }>(`${remote}/${module}`, {\n from: 'runtime',\n })\n .then((remote) => {\n console.log('loaded remote', module)\n setIsLoaded(true)\n setIsLoading(false)\n if (remote) loadedRemote.current = remote.default\n })\n .catch((e) => {\n setIsLoading(false)\n console.error('error loading remote', remote, module, e)\n })\n }, [isLoaded, remotesInitialized, modules, addon, remote, module, minVersion, skip])\n\n return [\n loadedRemote.current,\n {\n isLoaded,\n isLoading,\n outdated: isOutdated\n ? {\n current: modules.find((m) => m.addonName === addon)?.addonVersion || 'unknown',\n required: minVersion || 'unknown',\n }\n : undefined,\n },\n ]\n}\n"],"names":["loadRemote","remote"],"mappings":";;;;AAeO,MAAM,gBAAgB,CAAI;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AACT,MAGK;;AACH,QAAM,EAAE,oBAAoB,QAAQ,IAAI,iBAAiB;AACzD,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,IAAI;AAC/C,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAC5C,QAAA,eAAe,OAAU,QAAQ;AAEvC,YAAU,MAAM;AAEd,QAAI,MAAM;AACR,mBAAa,KAAK;AAClB,kBAAY,IAAI;AAChB;AAAA,IAAA;AAIF,QAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,UAAU,CAAC,OAAQ;AAGzD,UAAM,oBAAoB,QAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK;AAEnE,QAAI,CAAC,mBAAmB;AACtB,cAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAQ;AACzD,mBAAa,KAAK;AAClB;AAAA,IAAA;AAKA,QAAA,cACA,CAAC,OAAO,IAAI,kBAAkB,cAAc,UAAU,KACtD,aAAa,WAAW,kBAAkB,cAC1C;AACA,cAAQ,IAAI,oDAAoD;AAAA,QAC9D;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAS,kBAAkB;AAAA,QAC3B,UAAU;AAAA,MAAA,CACX;AAED,oBAAc,IAAI;AAClB,mBAAa,KAAK;AAGlB;AAAA,IAAA;AAGF,kBAAc,KAAK;AAEb,UAAA,oBAAoB,kBAAkB,QAAQ,MAAM;AAE1D,QAAI,CAAC,mBAAmB;AACtB,mBAAa,KAAK;AAClB,aAAO,QAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAAA;AAIlE,QAAI,UAAU;AACZ,mBAAa,KAAK;AAClB;AAAA,IAAA;AAEFA,mBAAAA,WAA2B,GAAG,MAAM,IAAI,MAAM,IAAI;AAAA,MAChD,MAAM;AAAA,IAAA,CACP,EACE,KAAK,CAACC,YAAW;AACR,cAAA,IAAI,iBAAiB,MAAM;AACnC,kBAAY,IAAI;AAChB,mBAAa,KAAK;AACdA,UAAAA,QAAqB,cAAA,UAAUA,QAAO;AAAA,IAAA,CAC3C,EACA,MAAM,CAAC,MAAM;AACZ,mBAAa,KAAK;AAClB,cAAQ,MAAM,wBAAwB,QAAQ,QAAQ,CAAC;AAAA,IAAA,CACxD;AAAA,EAAA,GACF,CAAC,UAAU,oBAAoB,SAAS,OAAO,QAAQ,QAAQ,YAAY,IAAI,CAAC;AAE5E,SAAA;AAAA,IACL,aAAa;AAAA,IACb;AAAA,MACE;AAAA,MACA;AAAA,MACA,UAAU,aACN;AAAA,QACE,WAAS,aAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK,MAAzC,mBAA4C,iBAAgB;AAAA,QACrE,UAAU,cAAc;AAAA,MAAA,IAE1B;AAAA,IAAA;AAAA,EAER;AACF;"}
1
+ {"version":3,"file":"useLoadModule.es.js","sources":["../../../../src/hooks/useLoadModule.ts"],"sourcesContent":["import { useRemoteModules } from '@shared/context/RemoteModulesContext'\nimport { loadRemote } from '@module-federation/enhanced/runtime'\nimport { useEffect, useRef, useState } from 'react'\nimport semver from 'semver'\n\ninterface Props<T> {\n addon: string\n remote: string\n module: string\n fallback: T\n debug?: boolean\n minVersion?: string // minimum version required for this module\n skip?: boolean // skip loading if module is provided externally\n}\n\nexport const useLoadModule = <T>({\n addon,\n remote,\n module,\n fallback,\n minVersion,\n skip = false,\n}: Props<T>): [\n T,\n { isLoaded: boolean; isLoading: boolean; outdated?: { current: string; required: string } },\n] => {\n const { remotesInitialized, modules } = useRemoteModules()\n const [isLoading, setIsLoading] = useState(true)\n const [isLoaded, setIsLoaded] = useState<string | boolean>(false)\n const [isOutdated, setIsOutdated] = useState(false)\n const loadedRemote = useRef<T>(fallback)\n\n useEffect(() => {\n // skip loading if module is provided externally\n if (skip) {\n setIsLoading(false)\n setIsLoaded(true)\n return\n }\n\n // wait for remotes to be initialized\n if (!remotesInitialized || !addon || !remote || !module) return\n\n // check if remote and module exist\n const initializedRemote = modules.find((m) => m.addonName === addon)\n\n if (!initializedRemote) {\n console.log('remote not found', { addon, remote, module })\n setIsLoading(false)\n return\n }\n\n // check remote meets minimum version requirement\n if (\n minVersion &&\n !semver.gte(initializedRemote.addonVersion, minVersion) &&\n minVersion + '-dev' !== initializedRemote.addonVersion\n ) {\n console.log('remote version does not meet minimum requirement', {\n addon,\n remote,\n module,\n current: initializedRemote.addonVersion,\n required: minVersion,\n })\n\n setIsOutdated(true)\n setIsLoading(false)\n\n // use fallback if version requirement not met\n return\n }\n\n setIsOutdated(false)\n\n const initializedModule = initializedRemote.modules[remote]\n\n if (!initializedModule) {\n setIsLoading(false)\n return console.log('module not found', { addon, remote, module })\n }\n\n // check if module is already loaded\n if (isLoaded === module) {\n setIsLoading(false)\n return\n }\n loadRemote<{ default: T }>(`${remote}/${module}`, {\n from: 'runtime',\n })\n .then((remote) => {\n console.log('loaded remote', module)\n setIsLoaded(module)\n setIsLoading(false)\n if (remote) loadedRemote.current = remote.default\n })\n .catch((e) => {\n setIsLoading(false)\n console.error('error loading remote', remote, module, e)\n })\n }, [isLoaded, remotesInitialized, modules, addon, remote, module, minVersion, skip])\n\n return [\n loadedRemote.current,\n {\n isLoaded: isLoaded === module,\n isLoading,\n outdated: isOutdated\n ? {\n current: modules.find((m) => m.addonName === addon)?.addonVersion || 'unknown',\n required: minVersion || 'unknown',\n }\n : undefined,\n },\n ]\n}\n"],"names":["loadRemote","remote"],"mappings":";;;;AAeO,MAAM,gBAAgB,CAAI;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AACT,MAGK;;AACH,QAAM,EAAE,oBAAoB,QAAQ,IAAI,iBAAiB;AACzD,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,IAAI;AAC/C,QAAM,CAAC,UAAU,WAAW,IAAI,SAA2B,KAAK;AAChE,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAC5C,QAAA,eAAe,OAAU,QAAQ;AAEvC,YAAU,MAAM;AAEd,QAAI,MAAM;AACR,mBAAa,KAAK;AAClB,kBAAY,IAAI;AAChB;AAAA,IAAA;AAIF,QAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,UAAU,CAAC,OAAQ;AAGzD,UAAM,oBAAoB,QAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK;AAEnE,QAAI,CAAC,mBAAmB;AACtB,cAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAQ;AACzD,mBAAa,KAAK;AAClB;AAAA,IAAA;AAKA,QAAA,cACA,CAAC,OAAO,IAAI,kBAAkB,cAAc,UAAU,KACtD,aAAa,WAAW,kBAAkB,cAC1C;AACA,cAAQ,IAAI,oDAAoD;AAAA,QAC9D;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAS,kBAAkB;AAAA,QAC3B,UAAU;AAAA,MAAA,CACX;AAED,oBAAc,IAAI;AAClB,mBAAa,KAAK;AAGlB;AAAA,IAAA;AAGF,kBAAc,KAAK;AAEb,UAAA,oBAAoB,kBAAkB,QAAQ,MAAM;AAE1D,QAAI,CAAC,mBAAmB;AACtB,mBAAa,KAAK;AAClB,aAAO,QAAQ,IAAI,oBAAoB,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAAA;AAIlE,QAAI,aAAa,QAAQ;AACvB,mBAAa,KAAK;AAClB;AAAA,IAAA;AAEFA,mBAAAA,WAA2B,GAAG,MAAM,IAAI,MAAM,IAAI;AAAA,MAChD,MAAM;AAAA,IAAA,CACP,EACE,KAAK,CAACC,YAAW;AACR,cAAA,IAAI,iBAAiB,MAAM;AACnC,kBAAY,MAAM;AAClB,mBAAa,KAAK;AACdA,UAAAA,QAAqB,cAAA,UAAUA,QAAO;AAAA,IAAA,CAC3C,EACA,MAAM,CAAC,MAAM;AACZ,mBAAa,KAAK;AAClB,cAAQ,MAAM,wBAAwB,QAAQ,QAAQ,CAAC;AAAA,IAAA,CACxD;AAAA,EAAA,GACF,CAAC,UAAU,oBAAoB,SAAS,OAAO,QAAQ,QAAQ,YAAY,IAAI,CAAC;AAE5E,SAAA;AAAA,IACL,aAAa;AAAA,IACb;AAAA,MACE,UAAU,aAAa;AAAA,MACvB;AAAA,MACA,UAAU,aACN;AAAA,QACE,WAAS,aAAQ,KAAK,CAAC,MAAM,EAAE,cAAc,KAAK,MAAzC,mBAA4C,iBAAgB;AAAA,QACrE,UAAU,cAAc;AAAA,MAAA,IAE1B;AAAA,IAAA;AAAA,EAER;AACF;"}
@@ -5,6 +5,7 @@ interface ColumnItemProps {
5
5
  isPinned: boolean;
6
6
  isHidden: boolean;
7
7
  isHighlighted?: boolean;
8
+ isDisabled?: boolean;
8
9
  dragHandleProps?: any;
9
10
  dragOverlay?: boolean;
10
11
  onTogglePinning?: (columnId: string) => void;
@@ -6,6 +6,7 @@ interface SortableColumnItemProps {
6
6
  isPinned: boolean;
7
7
  isHidden: boolean;
8
8
  isHighlighted?: boolean;
9
+ isDisabled?: boolean;
9
10
  onTogglePinning: (columnId: string) => void;
10
11
  onToggleVisibility: (columnId: string) => void;
11
12
  }
@@ -12,6 +12,7 @@ export type SettingsPanelItem = {
12
12
  export interface SettingsPanelItemTemplateProps extends React.HTMLAttributes<HTMLLIElement> {
13
13
  item: SettingsPanelItem;
14
14
  isHighlighted?: boolean;
15
+ isDisabled?: boolean;
15
16
  startContent?: React.ReactNode;
16
17
  endContent?: React.ReactNode;
17
18
  actions?: Action[];
@@ -1,11 +1,18 @@
1
1
  import { SettingsPanelItem } from '../../../components';
2
2
  import { FC } from 'react';
3
3
  import { ColumnSettingsContextType } from '../context';
4
- export interface GroupSettingsFallbackProps {
5
- requiredVersion?: string;
4
+ export type GroupByConfig = {
5
+ showEmpty?: boolean;
6
+ };
7
+ export interface GroupSettingsProps {
6
8
  fields: SettingsPanelItem[];
9
+ config?: GroupByConfig;
7
10
  onChange?: ColumnSettingsContextType['updateGroupBy'];
8
11
  groupBy?: ColumnSettingsContextType['groupBy'];
9
12
  updateGroupBy?: ColumnSettingsContextType['updateGroupBy'];
13
+ onConfigChange?: (config: GroupByConfig) => void;
14
+ }
15
+ export interface GroupSettingsFallbackProps extends GroupSettingsProps {
16
+ requiredVersion?: string;
10
17
  }
11
18
  export declare const GroupSettingsFallback: FC<GroupSettingsFallbackProps>;
@@ -1,9 +1,20 @@
1
- import { default as React, ReactNode } from 'react';
1
+ import { default as React } from 'react';
2
2
  import { ColumnOrderState, ColumnPinningState, OnChangeFn, VisibilityState, ColumnSizingState } from '@tanstack/react-table';
3
+ import { GroupByConfig } from '../components/GroupSettingsFallback';
3
4
  export interface TableGroupBy {
4
5
  desc: boolean;
5
6
  id: string;
6
7
  }
8
+ export type ColumnsConfig = {
9
+ columnVisibility: VisibilityState;
10
+ columnOrder: ColumnOrderState;
11
+ columnPinning: ColumnPinningState;
12
+ columnSizing: ColumnSizingState;
13
+ groupBy?: TableGroupBy;
14
+ groupByConfig?: {
15
+ showEmpty?: boolean;
16
+ };
17
+ };
7
18
  export interface ColumnSettingsContextType {
8
19
  columnVisibility: VisibilityState;
9
20
  setColumnVisibility: (columnVisibility: VisibilityState) => void;
@@ -20,22 +31,11 @@ export interface ColumnSettingsContextType {
20
31
  columnSizing: ColumnSizingState;
21
32
  setColumnSizing: (columnSizing: ColumnSizingState) => void;
22
33
  columnSizingUpdater: OnChangeFn<ColumnSizingState>;
23
- updateGroupBy: (groupBy: TableGroupBy | undefined) => void;
24
34
  groupBy?: TableGroupBy;
35
+ updateGroupBy: (groupBy: TableGroupBy | undefined) => void;
36
+ groupByConfig: GroupByConfig;
37
+ updateGroupByConfig: (config: GroupByConfig) => void;
25
38
  setColumnsConfig: (config: ColumnsConfig) => void;
26
39
  }
27
- export type ColumnsConfig = {
28
- columnVisibility: VisibilityState;
29
- columnOrder: ColumnOrderState;
30
- columnPinning: ColumnPinningState;
31
- columnSizing: ColumnSizingState;
32
- groupBy?: TableGroupBy;
33
- };
34
- interface ColumnSettingsProviderProps {
35
- children: ReactNode;
36
- config?: Record<string, any>;
37
- onChange: (config: ColumnsConfig) => void;
38
- }
39
- export declare const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps>;
40
+ export declare const ColumnSettingsContext: React.Context<ColumnSettingsContextType | undefined>;
40
41
  export declare const useColumnSettingsContext: () => ColumnSettingsContextType;
41
- export {};
@@ -0,0 +1,9 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ import { ColumnsConfig } from './ColumnSettingsContext';
3
+ interface ColumnSettingsProviderProps {
4
+ children: ReactNode;
5
+ config?: Record<string, any>;
6
+ onChange: (config: ColumnsConfig) => void;
7
+ }
8
+ export declare const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps>;
9
+ export {};
@@ -1,66 +1,10 @@
1
- import { ReactNode } from 'react';
2
- import { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table';
3
- import { Filter } from '@ynput/ayon-react-components';
4
- import { EntitiesMap, EntityMap, FolderNodeMap, TableRow, TaskNodeMap, TasksByFolderMap } from '../types/table';
1
+ import { EntityMap, TableRow } from '../types/table';
5
2
  import { FindInheritedValueFromAncestors, GetAncestorsOf, GetInheritedDependents, FindNonInheritedValues } from '../hooks/useFolderRelationships';
6
3
  import { RowId } from '../utils/cellUtils';
7
- import { ProjectModel } from '../types/project';
8
- import { ProjectTableAttribute, LoadingTasks } from '../types';
9
- import { QueryFilter } from '../types/folders';
10
- import { ContextMenuItemConstructors } from '../hooks/useCellContextMenu';
11
- import { EntityGroup } from '../../../api';
12
- import { GroupByEntityType } from '../hooks/useBuildGroupByTableData';
13
- import { PowerpackContextType } from '../../../context';
14
- import { ProjectTableModuleContextType } from './ProjectTableModulesContext';
15
- export declare const parseRowId: (rowId: string) => string;
16
- export type TableUser = {
17
- name: string;
18
- fullName?: string;
19
- };
4
+ import { ProjectTableProviderProps } from './ProjectTableProvider';
20
5
  export type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void;
21
6
  export type ToggleExpands = (rowIds: RowId[], expand?: boolean) => void;
22
- export interface ProjectTableProviderProps {
23
- children: ReactNode;
24
- isInitialized: boolean;
25
- isLoading: boolean;
26
- isLoadingMore: boolean;
27
- loadingTasks?: LoadingTasks;
28
- error?: string;
29
- projectInfo?: ProjectModel;
30
- projectName: string;
31
- users: TableUser[];
32
- attribFields: ProjectTableAttribute[];
33
- tasksMap: TaskNodeMap;
34
- foldersMap: FolderNodeMap;
35
- entitiesMap: EntitiesMap;
36
- tasksByFolderMap: TasksByFolderMap;
37
- tableRows?: TableRow[];
38
- taskGroups: EntityGroup[];
39
- fetchNextPage: (value?: string) => void;
40
- reloadTableData: () => void;
41
- filters: Filter[];
42
- setFilters: (filters: Filter[]) => void;
43
- queryFilters: {
44
- filter: QueryFilter | undefined;
45
- filterString?: string;
46
- search: string | undefined;
47
- };
48
- showHierarchy: boolean;
49
- updateShowHierarchy: (showHierarchy: boolean) => void;
50
- expanded: ExpandedState;
51
- toggleExpanded: (id: string) => void;
52
- updateExpanded: OnChangeFn<ExpandedState>;
53
- setExpanded: (expanded: ExpandedState) => void;
54
- sorting: SortingState;
55
- updateSorting: OnChangeFn<SortingState>;
56
- contextMenuItems: ContextMenuItemConstructors;
57
- powerpack?: PowerpackContextType;
58
- modules: ProjectTableModuleContextType;
59
- groupByConfig?: {
60
- entityType?: GroupByEntityType;
61
- };
62
- }
63
- export interface ProjectTableContextProps {
7
+ export interface ProjectTableContextType {
64
8
  isInitialized: ProjectTableProviderProps['isInitialized'];
65
9
  isLoading: ProjectTableProviderProps['isLoading'];
66
10
  projectInfo: ProjectTableProviderProps['projectInfo'];
@@ -96,5 +40,5 @@ export interface ProjectTableContextProps {
96
40
  powerpack?: ProjectTableProviderProps['powerpack'];
97
41
  modules: ProjectTableProviderProps['modules'];
98
42
  }
99
- export declare const ProjectTableProvider: ({ children, foldersMap, tableRows, tasksMap, entitiesMap, tasksByFolderMap, expanded, projectInfo, showHierarchy, loadingTasks, isLoadingMore, isLoading, error, isInitialized, projectName, users, attribFields, taskGroups, filters, setFilters, queryFilters, updateShowHierarchy, toggleExpanded, updateExpanded, sorting, updateSorting, fetchNextPage, reloadTableData, setExpanded, contextMenuItems, powerpack, modules, groupByConfig, }: ProjectTableProviderProps) => import("react/jsx-runtime").JSX.Element;
100
- export declare const useProjectTableContext: () => ProjectTableContextProps;
43
+ export declare const ProjectTableContext: import('react').Context<ProjectTableContextType | undefined>;
44
+ export declare const useProjectTableContext: () => ProjectTableContextType;
@@ -0,0 +1,59 @@
1
+ import { ReactNode } from 'react';
2
+ import { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table';
3
+ import { Filter } from '@ynput/ayon-react-components';
4
+ import { EntitiesMap, FolderNodeMap, TableRow, TaskNodeMap, TasksByFolderMap } from '../types/table';
5
+ import { ProjectModel } from '../types/project';
6
+ import { ProjectTableAttribute, LoadingTasks } from '../types';
7
+ import { QueryFilter } from '../types/folders';
8
+ import { ContextMenuItemConstructors } from '../hooks/useCellContextMenu';
9
+ import { EntityGroup } from '../../../api';
10
+ import { GroupByEntityType } from '../hooks/useBuildGroupByTableData';
11
+ import { PowerpackContextType } from '../../../context';
12
+ import { ProjectTableModulesType } from '../hooks';
13
+ export declare const parseRowId: (rowId: string) => string;
14
+ export type TableUser = {
15
+ name: string;
16
+ fullName?: string;
17
+ };
18
+ export interface ProjectTableProviderProps {
19
+ children: ReactNode;
20
+ isInitialized: boolean;
21
+ isLoading: boolean;
22
+ isLoadingMore: boolean;
23
+ loadingTasks?: LoadingTasks;
24
+ error?: string;
25
+ projectInfo?: ProjectModel;
26
+ projectName: string;
27
+ users: TableUser[];
28
+ attribFields: ProjectTableAttribute[];
29
+ tasksMap: TaskNodeMap;
30
+ foldersMap: FolderNodeMap;
31
+ entitiesMap: EntitiesMap;
32
+ tasksByFolderMap: TasksByFolderMap;
33
+ tableRows?: TableRow[];
34
+ taskGroups: EntityGroup[];
35
+ fetchNextPage: (value?: string) => void;
36
+ reloadTableData: () => void;
37
+ filters: Filter[];
38
+ setFilters: (filters: Filter[]) => void;
39
+ queryFilters: {
40
+ filter: QueryFilter | undefined;
41
+ filterString?: string;
42
+ search: string | undefined;
43
+ };
44
+ showHierarchy: boolean;
45
+ updateShowHierarchy: (showHierarchy: boolean) => void;
46
+ expanded: ExpandedState;
47
+ toggleExpanded: (id: string) => void;
48
+ updateExpanded: OnChangeFn<ExpandedState>;
49
+ setExpanded: (expanded: ExpandedState) => void;
50
+ sorting: SortingState;
51
+ updateSorting: OnChangeFn<SortingState>;
52
+ contextMenuItems: ContextMenuItemConstructors;
53
+ powerpack?: PowerpackContextType;
54
+ modules: ProjectTableModulesType;
55
+ groupByConfig?: {
56
+ entityType?: GroupByEntityType;
57
+ };
58
+ }
59
+ export declare const ProjectTableProvider: ({ children, foldersMap, tableRows, tasksMap, entitiesMap, tasksByFolderMap, expanded, projectInfo, showHierarchy, loadingTasks, isLoadingMore, isLoading, error, isInitialized, projectName, users, attribFields, taskGroups, filters, setFilters, queryFilters, updateShowHierarchy, toggleExpanded, updateExpanded, sorting, updateSorting, fetchNextPage, reloadTableData, setExpanded, contextMenuItems, powerpack, modules, groupByConfig, }: ProjectTableProviderProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,4 @@
1
- import { ReactNode } from 'react';
2
- export interface SelectedRowsContextProps {
1
+ export interface SelectedRowsContextType {
3
2
  selectedRows: string[];
4
3
  isRowSelected: (rowId: string) => boolean;
5
4
  clearRowsSelection: () => void;
@@ -7,9 +6,5 @@ export interface SelectedRowsContextProps {
7
6
  areAllRowsSelected: () => boolean;
8
7
  areSomeRowsSelected: () => boolean;
9
8
  }
10
- interface SelectedRowsProviderProps {
11
- children: ReactNode;
12
- }
13
- export declare const SelectedRowsProvider: ({ children }: SelectedRowsProviderProps) => import("react/jsx-runtime").JSX.Element;
14
- export declare const useSelectedRowsContext: () => SelectedRowsContextProps;
15
- export {};
9
+ export declare const SelectedRowsContext: import('react').Context<SelectedRowsContextType | undefined>;
10
+ export declare const useSelectedRowsContext: () => SelectedRowsContextType;
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ interface SelectedRowsProviderProps {
3
+ children: ReactNode;
4
+ }
5
+ export declare const SelectedRowsProvider: ({ children }: SelectedRowsProviderProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,4 +1,4 @@
1
- import { default as React, ReactNode } from 'react';
1
+ import { default as React } from 'react';
2
2
  import { CellId, RowId, ColId, CellPosition } from '../utils/cellUtils';
3
3
  export declare const ROW_SELECTION_COLUMN_ID = "__row_selection__";
4
4
  export interface GridMap {
@@ -29,7 +29,5 @@ export interface SelectionCellsContextType {
29
29
  getCellPositionFromId: (cellId: CellId) => CellPosition | null;
30
30
  getCellBorderClasses: (cellId: CellId) => string[];
31
31
  }
32
- export declare const SelectionCellsProvider: React.FC<{
33
- children: ReactNode;
34
- }>;
32
+ export declare const SelectionCellsContext: React.Context<SelectionCellsContextType | undefined>;
35
33
  export declare const useSelectionCellsContext: () => SelectionCellsContextType;
@@ -0,0 +1,4 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ export declare const SelectionCellsProvider: React.FC<{
3
+ children: ReactNode;
4
+ }>;
@@ -1,11 +1,13 @@
1
1
  export * from './clipboard';
2
2
  export * from './CellEditingContext';
3
3
  export * from './ClipboardContext';
4
+ export * from './ColumnSettingsProvider';
4
5
  export * from './ColumnSettingsContext';
5
6
  export * from './ProjectTableContext';
7
+ export * from './ProjectTableProvider';
6
8
  export * from './ProjectTableQueriesContext';
7
9
  export * from './SelectedRowsContext';
10
+ export * from './SelectedRowsProvider';
8
11
  export * from './SelectionCellsContext';
9
- export * from './ProjectTableSelectionContext';
12
+ export * from './SelectionCellsProvider';
10
13
  export * from './ProjectDataContext';
11
- export * from './ProjectTableModulesContext';
@@ -11,3 +11,4 @@ export * from './useScopedAttributeFields';
11
11
  export * from './useExpandedState';
12
12
  export * from './useColumnSorting';
13
13
  export * from './useBuildGroupByTableData';
14
+ export * from './useProjectTableModules';
@@ -1,7 +1,6 @@
1
1
  import { ProjectModel, EntityGroup } from '../../../api';
2
2
  import { TableGroupBy } from '../context';
3
3
  import { EntitiesMap, ProjectTableAttribute, TableRow } from '../types';
4
- import { ExpandedState } from '@tanstack/react-table';
5
4
  export type GroupByEntityType = 'task' | 'folder' | 'version' | 'product';
6
5
  export type GroupData = {
7
6
  value: string;
@@ -24,7 +23,7 @@ type BuildGroupByTableProps = {
24
23
  entityType?: GroupByEntityType;
25
24
  groups?: EntityGroup[];
26
25
  attribFields: ProjectTableAttribute[];
27
- expanded?: ExpandedState;
26
+ showEmpty?: boolean;
28
27
  };
29
28
  declare const useBuildGroupByTableData: (props: BuildGroupByTableProps) => (groupBy: TableGroupBy) => TableRow[];
30
29
  export default useBuildGroupByTableData;
@@ -1,4 +1,4 @@
1
- import { FolderNodeMap, TaskNodeMap } from '..';
1
+ import { FolderNodeMap, TaskNodeMap } from '../types';
2
2
  interface UseEntitiesMapProps {
3
3
  foldersMap: FolderNodeMap;
4
4
  tasksMap: TaskNodeMap;
@@ -3,9 +3,10 @@ import { FolderNodeMap, TaskNodeMap } from '../types/table';
3
3
  import { ExpandedState, SortingState } from '@tanstack/react-table';
4
4
  import { LoadingTasks } from '../types';
5
5
  import { TasksByFolderMap } from '../utils';
6
- import { ProjectTableModuleContextType, TableGroupBy } from '../..';
6
+ import { TableGroupBy } from '../context';
7
7
  import { Filter } from '@ynput/ayon-react-components';
8
- import { ProjectTableAttribute } from './useAttributesList';
8
+ import { ProjectTableAttribute } from '../hooks/useAttributesList';
9
+ import { ProjectTableModulesType } from './useProjectTableModules';
9
10
  type useFetchOverviewDataData = {
10
11
  foldersMap: FolderNodeMap;
11
12
  tasksMap: TaskNodeMap;
@@ -31,7 +32,7 @@ type Params = {
31
32
  expanded: ExpandedState;
32
33
  showHierarchy: boolean;
33
34
  attribFields: ProjectTableAttribute[];
34
- modules: ProjectTableModuleContextType;
35
+ modules: ProjectTableModulesType;
35
36
  };
36
37
  export declare const useFetchOverviewData: ({ projectName, selectedFolders, filters, queryFilters, sorting, groupBy, taskGroups, expanded, showHierarchy, attribFields, modules, }: Params) => useFetchOverviewDataData;
37
38
  export {};