@ynput/ayon-frontend-shared 0.2.2 → 0.2.4

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 (896) hide show
  1. package/dist/ContextMenu.cjs.js +1 -0
  2. package/dist/ContextMenu.cjs.js.map +1 -1
  3. package/dist/ContextMenu.es.js +1 -0
  4. package/dist/ContextMenu.es.js.map +1 -1
  5. package/dist/DetailsPanel.cjs.js +23 -1
  6. package/dist/DetailsPanel.cjs.js.map +1 -1
  7. package/dist/DetailsPanel.es.js +23 -1
  8. package/dist/DetailsPanel.es.js.map +1 -1
  9. package/dist/ProjectTreeTable.cjs.js +12 -1
  10. package/dist/ProjectTreeTable.cjs.js.map +1 -1
  11. package/dist/ProjectTreeTable.es.js +14 -3
  12. package/dist/ProjectTreeTable.es.js.map +1 -1
  13. package/dist/_virtual/_commonjsHelpers.cjs.js +0 -2
  14. package/dist/_virtual/_commonjsHelpers.cjs.js.map +1 -1
  15. package/dist/_virtual/_commonjsHelpers.es.js +0 -2
  16. package/dist/_virtual/_commonjsHelpers.es.js.map +1 -1
  17. package/dist/_virtual/index.cjs10.js +3 -5
  18. package/dist/_virtual/index.cjs10.js.map +1 -1
  19. package/dist/_virtual/index.cjs4.js +4 -4
  20. package/dist/_virtual/index.cjs5.js +2 -2
  21. package/dist/_virtual/index.cjs6.js +4 -4
  22. package/dist/_virtual/index.cjs7.js +5 -3
  23. package/dist/_virtual/index.cjs7.js.map +1 -1
  24. package/dist/_virtual/index.cjs8.js +4 -4
  25. package/dist/_virtual/index.cjs9.js +4 -4
  26. package/dist/_virtual/index.es10.js +2 -5
  27. package/dist/_virtual/index.es10.js.map +1 -1
  28. package/dist/_virtual/index.es4.js +4 -4
  29. package/dist/_virtual/index.es5.js +2 -2
  30. package/dist/_virtual/index.es6.js +4 -4
  31. package/dist/_virtual/index.es7.js +5 -2
  32. package/dist/_virtual/index.es7.js.map +1 -1
  33. package/dist/_virtual/index.es8.js +4 -4
  34. package/dist/_virtual/index.es9.js +4 -4
  35. package/dist/api.cjs.js +24 -1
  36. package/dist/api.cjs.js.map +1 -1
  37. package/dist/api.es.js +26 -3
  38. package/dist/api.es.js.map +1 -1
  39. package/dist/components.cjs.js +12 -0
  40. package/dist/components.cjs.js.map +1 -1
  41. package/dist/components.es.js +12 -0
  42. package/dist/components.es.js.map +1 -1
  43. package/dist/context.cjs.js +3 -0
  44. package/dist/context.cjs.js.map +1 -1
  45. package/dist/context.es.js +3 -0
  46. package/dist/context.es.js.map +1 -1
  47. package/dist/index.cjs.js +24 -2
  48. package/dist/index.cjs.js.map +1 -1
  49. package/dist/index.es.js +24 -2
  50. package/dist/index.es.js.map +1 -1
  51. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js +19 -10
  52. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js.map +1 -1
  53. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js +21 -12
  54. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js.map +1 -1
  55. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +174 -68
  56. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
  57. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +174 -68
  58. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
  59. package/dist/node_modules/@standard-schema/utils/dist/index.cjs.js +23 -0
  60. package/dist/node_modules/@standard-schema/utils/dist/index.cjs.js.map +1 -0
  61. package/dist/node_modules/@standard-schema/utils/dist/index.es.js +23 -0
  62. package/dist/node_modules/@standard-schema/utils/dist/index.es.js.map +1 -0
  63. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  64. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  65. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  66. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  67. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +2 -2
  68. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  69. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  70. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  71. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  72. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  73. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  74. package/dist/node_modules/remove-accents/index.es.js +1 -1
  75. package/dist/node_modules/vfile/lib/index.cjs.js +1 -1
  76. package/dist/node_modules/vfile/lib/index.es.js +1 -1
  77. package/dist/shared/src/api/base/client.cjs.js +3 -0
  78. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  79. package/dist/shared/src/api/base/client.es.js +3 -0
  80. package/dist/shared/src/api/base/client.es.js.map +1 -1
  81. package/dist/shared/src/api/generated/anatomy.cjs.js +13 -0
  82. package/dist/shared/src/api/generated/anatomy.cjs.js.map +1 -1
  83. package/dist/shared/src/api/generated/anatomy.es.js +13 -0
  84. package/dist/shared/src/api/generated/anatomy.es.js.map +1 -1
  85. package/dist/shared/src/api/generated/graphql.cjs.js +130 -0
  86. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  87. package/dist/shared/src/api/generated/graphql.es.js +130 -0
  88. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  89. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  90. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -1
  91. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +12 -4
  92. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  93. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +13 -5
  94. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  95. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +4 -0
  96. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  97. package/dist/shared/src/api/queries/entities/updateEntity.es.js +4 -0
  98. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  99. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +267 -0
  100. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -0
  101. package/dist/shared/src/api/queries/entityLists/getLists.es.js +267 -0
  102. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -0
  103. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js +51 -0
  104. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js.map +1 -0
  105. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js +51 -0
  106. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js.map +1 -0
  107. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +169 -0
  108. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -0
  109. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +169 -0
  110. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -0
  111. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.cjs.js +29 -0
  112. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.cjs.js.map +1 -0
  113. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.es.js +29 -0
  114. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.es.js.map +1 -0
  115. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +3 -4
  116. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  117. package/dist/shared/src/api/queries/overview/getOverview.es.js +3 -4
  118. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  119. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +40 -5
  120. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  121. package/dist/shared/src/api/queries/overview/updateOverview.es.js +40 -5
  122. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  123. package/dist/shared/src/api/queries/review/getReview.cjs.js +1 -1
  124. package/dist/shared/src/api/queries/review/getReview.es.js +1 -1
  125. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  126. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +1 -1
  127. package/dist/shared/src/api/queries/users/getUsers.cjs.js +6 -2
  128. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  129. package/dist/shared/src/api/queries/users/getUsers.es.js +7 -3
  130. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  131. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +355 -0
  132. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -0
  133. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +355 -0
  134. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -0
  135. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.cjs.js +93 -0
  136. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.cjs.js.map +1 -0
  137. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.es.js +93 -0
  138. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.es.js.map +1 -0
  139. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +4 -0
  140. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  141. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +4 -0
  142. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  143. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +6 -2
  144. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +1 -1
  145. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +6 -2
  146. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +1 -1
  147. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +1 -1
  148. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +1 -1
  149. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.cjs.js +4 -2
  150. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.cjs.js.map +1 -1
  151. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.es.js +4 -2
  152. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.es.js.map +1 -1
  153. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +3 -1
  154. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  155. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -1
  156. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  157. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js +23 -1
  158. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js.map +1 -1
  159. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js +23 -1
  160. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js.map +1 -1
  161. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js +194 -0
  162. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js.map +1 -0
  163. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js +195 -0
  164. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js.map +1 -0
  165. package/dist/shared/src/components/EnumEditor/EnumEditor.cjs.js +128 -0
  166. package/dist/shared/src/components/EnumEditor/EnumEditor.cjs.js.map +1 -0
  167. package/dist/shared/src/components/EnumEditor/EnumEditor.es.js +128 -0
  168. package/dist/shared/src/components/EnumEditor/EnumEditor.es.js.map +1 -0
  169. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js +185 -0
  170. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js.map +1 -0
  171. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js +185 -0
  172. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js.map +1 -0
  173. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.cjs.js +67 -0
  174. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.cjs.js.map +1 -0
  175. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.es.js +68 -0
  176. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.es.js.map +1 -0
  177. package/dist/shared/src/components/EnumEditor/util/index.cjs.js +19 -0
  178. package/dist/shared/src/components/EnumEditor/util/index.cjs.js.map +1 -0
  179. package/dist/shared/src/components/EnumEditor/util/index.es.js +19 -0
  180. package/dist/shared/src/components/EnumEditor/util/index.es.js.map +1 -0
  181. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js +78 -0
  182. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js.map +1 -0
  183. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js +79 -0
  184. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js.map +1 -0
  185. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +352 -0
  186. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -0
  187. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +353 -0
  188. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -0
  189. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +113 -0
  190. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -0
  191. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +113 -0
  192. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -0
  193. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js +52 -0
  194. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js.map +1 -0
  195. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js +53 -0
  196. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js.map +1 -0
  197. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +4 -0
  198. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  199. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +4 -0
  200. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  201. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +23 -1
  202. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  203. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +23 -1
  204. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  205. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +23 -1
  206. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  207. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +23 -1
  208. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  209. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +23 -1
  210. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  211. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +23 -1
  212. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  213. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +103 -0
  214. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -0
  215. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +103 -0
  216. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -0
  217. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js +83 -0
  218. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js.map +1 -0
  219. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js +83 -0
  220. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js.map +1 -0
  221. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -0
  222. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  223. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +1 -0
  224. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  225. package/dist/shared/src/components/Watchers/Watchers.cjs.js +4 -0
  226. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  227. package/dist/shared/src/components/Watchers/Watchers.es.js +4 -0
  228. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  229. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +23 -1
  230. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +23 -1
  232. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  233. package/dist/shared/src/containers/Actions/Actions.cjs.js +16 -7
  234. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/Actions/Actions.es.js +16 -7
  236. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  237. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js +2 -2
  238. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js +2 -2
  240. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
  241. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +23 -1
  242. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +23 -1
  244. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  245. package/dist/shared/src/containers/ContextMenu/ContextMenu.css +54 -19
  246. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js +11 -1
  247. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js.map +1 -1
  248. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js +11 -1
  249. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js.map +1 -1
  250. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +23 -1
  251. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +23 -1
  253. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  254. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +25 -1
  255. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +25 -1
  257. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  258. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +24 -2
  259. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +24 -2
  261. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +26 -4
  263. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +26 -4
  265. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +5 -0
  267. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +5 -0
  269. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  270. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -0
  271. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  272. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +1 -0
  273. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +1 -1
  276. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +6 -2
  277. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +6 -2
  279. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  280. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -0
  281. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/Feed/Feed.es.js +1 -0
  283. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  284. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +2 -2
  285. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  286. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +2 -2
  287. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  288. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  289. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +1 -1
  290. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -0
  291. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  292. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +1 -0
  293. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  294. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +5 -3
  295. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  296. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -3
  297. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  298. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -0
  299. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  300. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +1 -0
  301. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  302. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -0
  303. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  304. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +1 -0
  305. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  306. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +2 -1
  307. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  308. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +2 -1
  309. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  310. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +5 -0
  311. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  312. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +5 -0
  313. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  314. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +7 -3
  315. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  316. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +7 -3
  317. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  318. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
  319. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +1 -1
  320. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
  321. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +1 -1
  322. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +198 -222
  323. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  324. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +201 -225
  325. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  326. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +1 -3
  327. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  328. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +1 -3
  329. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  330. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +361 -0
  331. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -0
  332. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +361 -0
  333. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -0
  334. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.cjs.js +41 -20
  335. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.cjs.js.map +1 -1
  336. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.es.js +41 -20
  337. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.es.js.map +1 -1
  338. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +29 -36
  339. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  340. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +31 -38
  341. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  342. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js +33 -4
  343. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  344. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js +34 -5
  345. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  346. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +17 -11
  347. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  348. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +17 -11
  349. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  350. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js.map +1 -1
  352. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.es.js.map +1 -1
  354. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.cjs.js +6 -3
  355. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.cjs.js.map +1 -1
  356. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.es.js +6 -3
  357. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.es.js.map +1 -1
  358. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +190 -146
  359. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  360. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +190 -146
  361. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  362. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +10 -3
  363. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  364. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +10 -3
  365. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  366. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js +15 -12
  367. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
  368. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js +15 -12
  369. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js.map +1 -1
  370. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js +44 -0
  371. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js.map +1 -0
  372. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js +45 -0
  373. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js.map +1 -0
  374. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.cjs.js +15 -7
  375. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.es.js +15 -7
  377. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.es.js.map +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.cjs.js +27 -31
  379. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.cjs.js.map +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.es.js +27 -31
  381. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.es.js.map +1 -1
  382. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useUpdateOverview.cjs.js → useUpdateTableData.cjs.js} +48 -20
  383. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -0
  384. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useUpdateOverview.es.js → useUpdateTableData.es.js} +48 -20
  385. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -0
  386. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +2 -0
  387. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +2 -0
  389. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  390. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +25 -20
  391. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +25 -20
  393. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js +36 -0
  395. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js.map +1 -0
  396. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js +36 -0
  397. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js.map +1 -0
  398. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js +39 -0
  399. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js.map +1 -0
  400. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js +39 -0
  401. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js.map +1 -0
  402. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js +1 -0
  403. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js.map +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js +1 -0
  405. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js.map +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js +57 -0
  407. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js.map +1 -0
  408. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js +58 -0
  409. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js.map +1 -0
  410. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +34 -6
  413. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +34 -6
  415. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +7 -5
  417. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +7 -5
  419. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +9 -0
  423. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +9 -0
  425. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +17 -2
  427. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +17 -2
  429. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +53 -0
  431. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -0
  432. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +53 -0
  433. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -0
  434. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +24 -2
  435. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  436. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +24 -2
  437. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  438. package/dist/shared/src/context/DetailsPanelContext.cjs.js +6 -1
  439. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  440. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -1
  441. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  442. package/dist/shared/src/context/RemoteModulesContext.cjs.js +4 -0
  443. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  444. package/dist/shared/src/context/RemoteModulesContext.es.js +4 -0
  445. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  446. package/dist/shared/src/context/SettingsPanelContext.cjs.js +63 -0
  447. package/dist/shared/src/context/SettingsPanelContext.cjs.js.map +1 -0
  448. package/dist/shared/src/context/SettingsPanelContext.es.js +63 -0
  449. package/dist/shared/src/context/SettingsPanelContext.es.js.map +1 -0
  450. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js +1 -0
  451. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js.map +1 -1
  452. package/dist/shared/src/context/ThumbnailUploaderContext.es.js +1 -0
  453. package/dist/shared/src/context/ThumbnailUploaderContext.es.js.map +1 -1
  454. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +5 -0
  455. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  456. package/dist/shared/src/hooks/useEntityUpdate.es.js +5 -0
  457. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  458. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +6 -2
  459. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  460. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -2
  461. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  462. package/dist/shared/src/util/confirmDelete.cjs.js +3 -3
  463. package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
  464. package/dist/shared/src/util/confirmDelete.es.js +3 -3
  465. package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
  466. package/dist/shared/src/util/getAttributeIcon.cjs.js +48 -0
  467. package/dist/shared/src/util/getAttributeIcon.cjs.js.map +1 -0
  468. package/dist/shared/src/util/getAttributeIcon.es.js +48 -0
  469. package/dist/shared/src/util/getAttributeIcon.es.js.map +1 -0
  470. package/dist/shared/src/util/platform.cjs.js +7 -6
  471. package/dist/shared/src/util/platform.cjs.js.map +1 -1
  472. package/dist/shared/src/util/platform.es.js +7 -6
  473. package/dist/shared/src/util/platform.es.js.map +1 -1
  474. package/dist/types/Actions.d.ts +1 -1
  475. package/dist/types/ContextMenu.d.ts +1 -1
  476. package/dist/types/DetailsPanel.d.ts +1 -1
  477. package/dist/types/Feed.d.ts +1 -1
  478. package/dist/types/ProjectTreeTable.d.ts +1 -1
  479. package/dist/types/RepresentationsList.d.ts +1 -1
  480. package/dist/types/Slicer.d.ts +1 -1
  481. package/dist/types/api.d.ts +3 -3
  482. package/dist/types/components.d.ts +1 -1
  483. package/dist/types/context.d.ts +1 -1
  484. package/dist/types/hooks.d.ts +1 -1
  485. package/dist/types/index.d.ts +2 -2
  486. package/dist/types/shared/src/SimpleTable/SimpleTable.d.ts +43 -0
  487. package/dist/types/shared/src/SimpleTable/SimpleTable.styled.d.ts +10 -0
  488. package/dist/types/shared/src/SimpleTable/SimpleTableRowTemplate.d.ts +13 -0
  489. package/dist/types/shared/src/SimpleTable/context/SimpleTableContext.d.ts +23 -0
  490. package/dist/types/shared/src/SimpleTable/index.d.ts +5 -0
  491. package/dist/types/{api → shared/src/api}/generated/access.d.ts +6 -6
  492. package/dist/types/{api → shared/src/api}/generated/actions.d.ts +6 -6
  493. package/dist/types/{api → shared/src/api}/generated/activityFeed.d.ts +8 -8
  494. package/dist/types/{api → shared/src/api}/generated/addons.d.ts +28 -28
  495. package/dist/types/{api → shared/src/api}/generated/anatomy.d.ts +36 -6
  496. package/dist/types/{api → shared/src/api}/generated/attributes.d.ts +5 -5
  497. package/dist/types/{api → shared/src/api}/generated/authentication.d.ts +5 -5
  498. package/dist/types/{api → shared/src/api}/generated/bundles.d.ts +7 -7
  499. package/dist/types/{api → shared/src/api}/generated/configuration.d.ts +7 -7
  500. package/dist/types/{api → shared/src/api}/generated/desktop.d.ts +12 -12
  501. package/dist/types/{api → shared/src/api}/generated/entityLists.d.ts +12 -12
  502. package/dist/types/{api → shared/src/api}/generated/events.d.ts +8 -8
  503. package/dist/types/{api → shared/src/api}/generated/files.d.ts +7 -7
  504. package/dist/types/{api → shared/src/api}/generated/folders.d.ts +8 -8
  505. package/dist/types/{api → shared/src/api}/generated/graphql.d.ts +280 -64
  506. package/dist/types/{api → shared/src/api}/generated/inbox.d.ts +1 -1
  507. package/dist/types/{api → shared/src/api}/generated/links.d.ts +5 -5
  508. package/dist/types/{api → shared/src/api}/generated/market.d.ts +6 -6
  509. package/dist/types/{api → shared/src/api}/generated/onboarding.d.ts +3 -3
  510. package/dist/types/{api → shared/src/api}/generated/operations.d.ts +3 -3
  511. package/dist/types/{api → shared/src/api}/generated/products.d.ts +5 -5
  512. package/dist/types/{api → shared/src/api}/generated/projectDashboard.d.ts +4 -4
  513. package/dist/types/{api → shared/src/api}/generated/projects.d.ts +27 -27
  514. package/dist/types/{api → shared/src/api}/generated/representations.d.ts +5 -5
  515. package/dist/types/{api → shared/src/api}/generated/reviewables.d.ts +7 -7
  516. package/dist/types/{api → shared/src/api}/generated/services.d.ts +6 -6
  517. package/dist/types/{api → shared/src/api}/generated/system.d.ts +12 -12
  518. package/dist/types/{api → shared/src/api}/generated/tasks.d.ts +8 -8
  519. package/dist/types/{api → shared/src/api}/generated/teams.d.ts +6 -6
  520. package/dist/types/{api → shared/src/api}/generated/thumbnails.d.ts +11 -11
  521. package/dist/types/{api → shared/src/api}/generated/uRIs.d.ts +2 -2
  522. package/dist/types/{api → shared/src/api}/generated/users.d.ts +26 -26
  523. package/dist/types/{api → shared/src/api}/generated/versions.d.ts +6 -6
  524. package/dist/types/{api → shared/src/api}/generated/workfiles.d.ts +6 -6
  525. package/dist/types/{api → shared/src/api}/generated/ynputCloud.d.ts +5 -5
  526. package/dist/types/{api → shared/src/api}/queries/actions/getActions.d.ts +29 -29
  527. package/dist/types/{api → shared/src/api}/queries/activities/getActivities.d.ts +88 -71
  528. package/dist/types/{api → shared/src/api}/queries/activities/getMentions.d.ts +18 -18
  529. package/dist/types/{api → shared/src/api}/queries/activities/updateActivities.d.ts +94 -62
  530. package/dist/types/{api → shared/src/api}/queries/activities/updateReaction.d.ts +10 -10
  531. package/dist/types/{api → shared/src/api}/queries/addons/getAddons.d.ts +67 -67
  532. package/dist/types/{api → shared/src/api}/queries/addons/updateAddons.d.ts +35 -35
  533. package/dist/types/{api → shared/src/api}/queries/attributes/getAttributes.d.ts +23 -23
  534. package/dist/types/{api → shared/src/api}/queries/attributes/updateAttributes.d.ts +12 -12
  535. package/dist/types/{api → shared/src/api}/queries/authentication/getAuthentication.d.ts +15 -15
  536. package/dist/types/{api → shared/src/api}/queries/entities/getEntity.d.ts +89 -73
  537. package/dist/types/{api → shared/src/api}/queries/entities/getEntityPanel.d.ts +60 -44
  538. package/dist/types/{api → shared/src/api}/queries/entities/transformDetailsPanelData.d.ts +1 -0
  539. package/dist/types/{api → shared/src/api}/queries/entities/updateEntity.d.ts +48 -32
  540. package/dist/types/shared/src/api/queries/entityLists/getLists.d.ts +3009 -0
  541. package/dist/types/shared/src/api/queries/entityLists/getListsAttributes.d.ts +148 -0
  542. package/dist/types/shared/src/api/queries/entityLists/index.d.ts +5 -0
  543. package/dist/types/shared/src/api/queries/entityLists/types.d.ts +71 -0
  544. package/dist/types/shared/src/api/queries/entityLists/updateLists.d.ts +1137 -0
  545. package/dist/types/shared/src/api/queries/entityLists/updateListsAttributes.d.ts +176 -0
  546. package/dist/types/{api → shared/src/api}/queries/folders/getFolders.d.ts +26 -26
  547. package/dist/types/{api → shared/src/api}/queries/index.d.ts +1 -0
  548. package/dist/types/{api → shared/src/api}/queries/overview/getOverview.d.ts +89 -73
  549. package/dist/types/{api → shared/src/api}/queries/overview/updateOverview.d.ts +6 -6
  550. package/dist/types/{api → shared/src/api}/queries/project/getProject.d.ts +103 -103
  551. package/dist/types/{api → shared/src/api}/queries/review/getReview.d.ts +36 -36
  552. package/dist/types/{api → shared/src/api}/queries/review/updateReview.d.ts +13 -13
  553. package/dist/types/{api → shared/src/api}/queries/system/getSystem.d.ts +39 -39
  554. package/dist/types/{api → shared/src/api}/queries/userDashboard/getUserDashboard.d.ts +69 -53
  555. package/dist/types/{api → shared/src/api}/queries/users/getUsers.d.ts +126 -110
  556. package/dist/types/{api → shared/src/api}/queries/watchers/getWatchers.d.ts +20 -20
  557. package/dist/types/shared/src/components/AttributeEditor/AttributeEditor.d.ts +18 -0
  558. package/dist/types/shared/src/components/AttributeEditor/components/MinMaxField.d.ts +14 -0
  559. package/dist/types/shared/src/components/AttributeEditor/components/index.d.ts +1 -0
  560. package/dist/types/shared/src/components/AttributeEditor/index.d.ts +1 -0
  561. package/dist/types/shared/src/components/EnumEditor/DraggableEnumEditorItem.d.ts +10 -0
  562. package/dist/types/shared/src/components/EnumEditor/EnumEditor.d.ts +22 -0
  563. package/dist/types/shared/src/components/EnumEditor/EnumEditor.styled.d.ts +23 -0
  564. package/dist/types/shared/src/components/EnumEditor/hooks/useDraggable.d.ts +17 -0
  565. package/dist/types/shared/src/components/EnumEditor/index.d.ts +1 -0
  566. package/dist/types/shared/src/components/EnumEditor/util/index.d.ts +1 -0
  567. package/dist/types/shared/src/components/ProjectTableSettings/ColumnItem.d.ts +14 -0
  568. package/dist/types/shared/src/components/ProjectTableSettings/ColumnsSettings.d.ts +9 -0
  569. package/dist/types/shared/src/components/ProjectTableSettings/ProjectTableSettings.d.ts +18 -0
  570. package/dist/types/shared/src/components/ProjectTableSettings/SortableColumnItem.d.ts +13 -0
  571. package/dist/types/shared/src/components/ProjectTableSettings/index.d.ts +1 -0
  572. package/dist/types/shared/src/components/SettingsPanel/SettingsPanel.d.ts +16 -0
  573. package/dist/types/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.d.ts +20 -0
  574. package/dist/types/shared/src/components/SettingsPanel/index.d.ts +2 -0
  575. package/dist/types/{components → shared/src/components}/index.d.ts +4 -0
  576. package/dist/types/{containers → shared/src/containers}/Actions/Actions.d.ts +5 -1
  577. package/dist/types/{containers → shared/src/containers}/ContextMenu/ContextMenuItem.d.ts +3 -1
  578. package/dist/types/shared/src/containers/ProjectTreeTable/ProjectTreeTable.d.ts +39 -0
  579. package/dist/types/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +23 -0
  580. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/CellEditingContext.d.ts +3 -3
  581. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ColumnSettingsContext.d.ts +6 -2
  582. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableContext.d.ts +41 -34
  583. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableQueriesContext.d.ts +3 -2
  584. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardTypes.d.ts +4 -1
  585. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardUtils.d.ts +2 -2
  586. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +29 -0
  587. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useFolderRelationships.d.ts +7 -7
  588. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.d.ts +6 -0
  589. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useHistory.d.ts +5 -3
  590. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.d.ts +17 -0
  591. package/dist/types/{containers/ProjectTreeTable/hooks/useUpdateOverview.d.ts → shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.d.ts} +12 -3
  592. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/index.d.ts +5 -1
  593. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/index.d.ts +4 -6
  594. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/table.d.ts +51 -12
  595. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/cellUtils.d.ts +2 -3
  596. package/dist/types/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +16 -0
  597. package/dist/types/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.d.ts +5 -0
  598. package/dist/types/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.d.ts +14 -0
  599. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/index.d.ts +2 -0
  600. package/dist/types/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.d.ts +4 -0
  601. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/BooleanWidget.d.ts +1 -2
  602. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/CellWidget.d.ts +10 -0
  603. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/DateWidget.d.ts +2 -3
  604. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/EntityNameWidget.d.ts +1 -1
  605. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/EnumWidget.d.ts +2 -2
  606. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/TextWidget.d.ts +3 -1
  607. package/dist/types/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.d.ts +9 -0
  608. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/index.d.ts +1 -0
  609. package/dist/types/shared/src/context/SettingsPanelContext.d.ts +20 -0
  610. package/dist/types/{context → shared/src/context}/index.d.ts +1 -0
  611. package/dist/types/shared/src/index.d.ts +2 -0
  612. package/dist/types/shared/src/util/getAttributeIcon.d.ts +4 -0
  613. package/dist/types/{util → shared/src/util}/index.d.ts +1 -0
  614. package/dist/types/util.d.ts +1 -1
  615. package/dist/util.cjs.js +2 -0
  616. package/dist/util.cjs.js.map +1 -1
  617. package/dist/util.es.js +2 -0
  618. package/dist/util.es.js.map +1 -1
  619. package/package.json +2 -1
  620. package/dist/_virtual/lodash.cjs.js +0 -6
  621. package/dist/_virtual/lodash.cjs.js.map +0 -1
  622. package/dist/_virtual/lodash.cjs2.js +0 -5
  623. package/dist/_virtual/lodash.cjs2.js.map +0 -1
  624. package/dist/_virtual/lodash.es.js +0 -6
  625. package/dist/_virtual/lodash.es.js.map +0 -1
  626. package/dist/_virtual/lodash.es2.js +0 -5
  627. package/dist/_virtual/lodash.es2.js.map +0 -1
  628. package/dist/shared/node_modules/lodash/lodash.cjs.js +0 -5492
  629. package/dist/shared/node_modules/lodash/lodash.cjs.js.map +0 -1
  630. package/dist/shared/node_modules/lodash/lodash.es.js +0 -5492
  631. package/dist/shared/node_modules/lodash/lodash.es.js.map +0 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.cjs.js +0 -257
  633. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.cjs.js.map +0 -1
  634. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.es.js +0 -258
  635. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.es.js.map +0 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateOverview.cjs.js.map +0 -1
  637. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateOverview.es.js.map +0 -1
  638. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.cjs.js +0 -69
  639. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.cjs.js.map +0 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.es.js +0 -70
  641. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.es.js.map +0 -1
  642. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +0 -26
  643. package/dist/types/containers/ProjectTreeTable/ProjectTreeTableColumns.d.ts +0 -16
  644. package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +0 -10
  645. package/dist/types/containers/ProjectTreeTable/hooks/useOverviewTable.d.ts +0 -32
  646. package/dist/types/containers/ProjectTreeTable/hooks/useValidateUpdates.d.ts +0 -3
  647. package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +0 -4
  648. /package/dist/types/{api → shared/src/api}/base/baseQueryTypes.d.ts +0 -0
  649. /package/dist/types/{api → shared/src/api}/base/client.d.ts +0 -0
  650. /package/dist/types/{api → shared/src/api}/base/index.d.ts +0 -0
  651. /package/dist/types/{api → shared/src/api}/generated/index.d.ts +0 -0
  652. /package/dist/types/{api → shared/src/api}/index.d.ts +0 -0
  653. /package/dist/types/{api → shared/src/api}/queries/actions/index.d.ts +0 -0
  654. /package/dist/types/{api → shared/src/api}/queries/activities/activityQueries.d.ts +0 -0
  655. /package/dist/types/{api → shared/src/api}/queries/activities/index.d.ts +0 -0
  656. /package/dist/types/{api → shared/src/api}/queries/activities/types.d.ts +0 -0
  657. /package/dist/types/{api → shared/src/api}/queries/activities/util/activitiesHelpers.d.ts +0 -0
  658. /package/dist/types/{api → shared/src/api}/queries/addons/index.d.ts +0 -0
  659. /package/dist/types/{api → shared/src/api}/queries/attributes/index.d.ts +0 -0
  660. /package/dist/types/{api → shared/src/api}/queries/authentication/index.d.ts +0 -0
  661. /package/dist/types/{api → shared/src/api}/queries/entities/entityQueries.d.ts +0 -0
  662. /package/dist/types/{api → shared/src/api}/queries/entities/index.d.ts +0 -0
  663. /package/dist/types/{api → shared/src/api}/queries/folders/index.d.ts +0 -0
  664. /package/dist/types/{api → shared/src/api}/queries/overview/index.d.ts +0 -0
  665. /package/dist/types/{api → shared/src/api}/queries/project/ProjectTypes.d.ts +0 -0
  666. /package/dist/types/{api → shared/src/api}/queries/project/index.d.ts +0 -0
  667. /package/dist/types/{api → shared/src/api}/queries/review/index.d.ts +0 -0
  668. /package/dist/types/{api → shared/src/api}/queries/review/types.d.ts +0 -0
  669. /package/dist/types/{api → shared/src/api}/queries/system/index.d.ts +0 -0
  670. /package/dist/types/{api → shared/src/api}/queries/userDashboard/convertAccessGroupsData.d.ts +0 -0
  671. /package/dist/types/{api → shared/src/api}/queries/userDashboard/getUserProjectsAccess.d.ts +0 -0
  672. /package/dist/types/{api → shared/src/api}/queries/userDashboard/index.d.ts +0 -0
  673. /package/dist/types/{api → shared/src/api}/queries/users/index.d.ts +0 -0
  674. /package/dist/types/{api → shared/src/api}/queries/watchers/index.d.ts +0 -0
  675. /package/dist/types/{components → shared/src/components}/DetailsDialog/DetailsDialog.d.ts +0 -0
  676. /package/dist/types/{components → shared/src/components}/DetailsDialog/index.d.ts +0 -0
  677. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/DetailsPanelAttributes.d.ts +0 -0
  678. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/DetailsPanelAttributesEditor.d.ts +0 -0
  679. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/components/RenderFieldWidget.d.ts +0 -0
  680. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/formatAttributesData.d.ts +0 -0
  681. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/index.d.ts +0 -0
  682. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/EmptyPlaceholder.d.ts +0 -0
  683. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/EmptyPlaceholderFlex.styled.d.ts +0 -0
  684. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/index.d.ts +0 -0
  685. /package/dist/types/{components → shared/src/components}/EntityPath/EntityPath.d.ts +0 -0
  686. /package/dist/types/{components → shared/src/components}/EntityPath/EntityPath.styled.d.ts +0 -0
  687. /package/dist/types/{components → shared/src/components}/EntityPath/SegmentProvider.d.ts +0 -0
  688. /package/dist/types/{components → shared/src/components}/EntityPath/index.d.ts +0 -0
  689. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/EntityThumbnailUploader.d.ts +0 -0
  690. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/EntityThumbnailUploader.styled.d.ts +0 -0
  691. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/index.d.ts +0 -0
  692. /package/dist/types/{components → shared/src/components}/FileThumbnail/FileThumbnail.d.ts +0 -0
  693. /package/dist/types/{components → shared/src/components}/FileThumbnail/index.d.ts +0 -0
  694. /package/dist/types/{components → shared/src/components}/ReviewableCard/ReviewableCard.d.ts +0 -0
  695. /package/dist/types/{components → shared/src/components}/ReviewableCard/ReviewableCard.styled.d.ts +0 -0
  696. /package/dist/types/{components → shared/src/components}/ReviewableCard/index.d.ts +0 -0
  697. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/ReviewableProgressCard.d.ts +0 -0
  698. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/ReviewableProgressCard.styled.d.ts +0 -0
  699. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/index.d.ts +0 -0
  700. /package/dist/types/{components → shared/src/components}/ReviewablesList/EditReviewableDialog.d.ts +0 -0
  701. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesList.d.ts +0 -0
  702. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesList.styled.d.ts +0 -0
  703. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesUpload.d.ts +0 -0
  704. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesUpload.styled.d.ts +0 -0
  705. /package/dist/types/{components → shared/src/components}/ReviewablesList/SortableReviewableCard.d.ts +0 -0
  706. /package/dist/types/{components → shared/src/components}/ReviewablesList/getGroupedReviewables.d.ts +0 -0
  707. /package/dist/types/{components → shared/src/components}/ReviewablesList/index.d.ts +0 -0
  708. /package/dist/types/{components → shared/src/components}/SimpleFormDialog/SimpleFormDialog.d.ts +0 -0
  709. /package/dist/types/{components → shared/src/components}/SimpleFormDialog/index.d.ts +0 -0
  710. /package/dist/types/{components → shared/src/components}/Thumbnail/StackedThumbnails.d.ts +0 -0
  711. /package/dist/types/{components → shared/src/components}/Thumbnail/Thumbnail.d.ts +0 -0
  712. /package/dist/types/{components → shared/src/components}/Thumbnail/Thumbnail.styled.d.ts +0 -0
  713. /package/dist/types/{components → shared/src/components}/Thumbnail/index.d.ts +0 -0
  714. /package/dist/types/{components → shared/src/components}/ThumbnailSimple/ThumbnailSimple.d.ts +0 -0
  715. /package/dist/types/{components → shared/src/components}/ThumbnailSimple/index.d.ts +0 -0
  716. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/ThumbnailUploader.d.ts +0 -0
  717. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/ThumbnailUploader.styled.d.ts +0 -0
  718. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/index.d.ts +0 -0
  719. /package/dist/types/{components → shared/src/components}/UserImage/UserImage.d.ts +0 -0
  720. /package/dist/types/{components → shared/src/components}/UserImage/index.d.ts +0 -0
  721. /package/dist/types/{components → shared/src/components}/Watchers/Watchers.d.ts +0 -0
  722. /package/dist/types/{components → shared/src/components}/Watchers/index.d.ts +0 -0
  723. /package/dist/types/{containers → shared/src/containers}/Actions/ActionConfigDialog.d.ts +0 -0
  724. /package/dist/types/{containers → shared/src/containers}/Actions/ActionIcon.d.ts +0 -0
  725. /package/dist/types/{containers → shared/src/containers}/Actions/Actions.styled.d.ts +0 -0
  726. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/ActionsDropdown.d.ts +0 -0
  727. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/ActionsDropdown.styled.d.ts +0 -0
  728. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/index.d.ts +0 -0
  729. /package/dist/types/{containers → shared/src/containers}/Actions/InteractiveActionDialog.d.ts +0 -0
  730. /package/dist/types/{containers → shared/src/containers}/Actions/index.d.ts +0 -0
  731. /package/dist/types/{containers → shared/src/containers}/ContextMenu/ContextMenuContext.d.ts +0 -0
  732. /package/dist/types/{containers → shared/src/containers}/ContextMenu/GlobalContextMenu.d.ts +0 -0
  733. /package/dist/types/{containers → shared/src/containers}/ContextMenu/index.d.ts +0 -0
  734. /package/dist/types/{containers → shared/src/containers}/ContextMenu/useCreateContextMenu.d.ts +0 -0
  735. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanel.d.ts +0 -0
  736. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanel.styled.d.ts +0 -0
  737. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.d.ts +0 -0
  738. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFiles/index.d.ts +0 -0
  739. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.d.ts +0 -0
  740. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.d.ts +0 -0
  741. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/index.d.ts +0 -0
  742. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.d.ts +0 -0
  743. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.d.ts +0 -0
  744. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/index.d.ts +0 -0
  745. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.d.ts +0 -0
  746. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.d.ts +0 -0
  747. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/index.d.ts +0 -0
  748. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedFilters/FeedFilters.d.ts +0 -0
  749. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedFilters/FeedFilters.styled.d.ts +0 -0
  750. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedWrapper.d.ts +0 -0
  751. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/buildDetailsPanelTitles.d.ts +0 -0
  752. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getAllProjectsStatuses.d.ts +0 -0
  753. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getEntityPathData.d.ts +0 -0
  754. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getThumbnails.d.ts +0 -0
  755. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/mergeProjectInfo.d.ts +0 -0
  756. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/hooks/useGetEntityPath.d.ts +0 -0
  757. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/index.d.ts +0 -0
  758. /package/dist/types/{containers → shared/src/containers}/Feed/Feed.d.ts +0 -0
  759. /package/dist/types/{containers → shared/src/containers}/Feed/Feed.styled.d.ts +0 -0
  760. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.d.ts +0 -0
  761. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.d.ts +0 -0
  762. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/index.d.ts +0 -0
  763. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/ActivityCheckbox.d.ts +0 -0
  764. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.d.ts +0 -0
  765. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/index.d.ts +0 -0
  766. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityComment.d.ts +0 -0
  767. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityComment.styled.d.ts +0 -0
  768. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +0 -0
  769. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/CommentWrapper.d.ts +0 -0
  770. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/mappers.d.ts +0 -0
  771. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityDate.d.ts +0 -0
  772. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityGroup/ActivityGroup.d.ts +0 -0
  773. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityGroup/ActivityGroup.styled.d.ts +0 -0
  774. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityHeader/ActivityHeader.d.ts +0 -0
  775. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityHeader/ActivityHeader.styled.d.ts +0 -0
  776. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityItem.d.ts +0 -0
  777. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReference/ActivityReference.d.ts +0 -0
  778. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReference/ActivityReference.styled.d.ts +0 -0
  779. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReferenceTooltip/ActivityReferenceTooltip.d.ts +0 -0
  780. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReferenceTooltip/index.d.ts +0 -0
  781. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatus/ActivityStatus.d.ts +0 -0
  782. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/ActivityStatusChange.d.ts +0 -0
  783. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.d.ts +0 -0
  784. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/hooks/getContextParents.d.ts +0 -0
  785. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityVersions/ActivityVersions.d.ts +0 -0
  786. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityVersions/ActivityVersions.styled.d.ts +0 -0
  787. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/CommentInput.d.ts +0 -0
  788. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/CommentInput.styled.d.ts +0 -0
  789. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/InputMarkdownConvert.d.ts +0 -0
  790. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/helpers.d.ts +0 -0
  791. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useAnnotationsSync.d.ts +0 -0
  792. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useAnnotationsUpload.d.ts +0 -0
  793. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useInitialValue.d.ts +0 -0
  794. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useMentionLink.d.ts +0 -0
  795. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useSetCursorEnd.d.ts +0 -0
  796. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/index.d.ts +0 -0
  797. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/modules/ImageUploader.d.ts +0 -0
  798. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/modules/index.d.ts +0 -0
  799. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/quillToMarkdown.d.ts +0 -0
  800. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentMentionSelect/CommentMentionSelect.d.ts +0 -0
  801. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentMentionSelect/CommentMentionSelect.styled.d.ts +0 -0
  802. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/FileUploadCard.d.ts +0 -0
  803. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/FileUploadCard.styled.d.ts +0 -0
  804. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/index.d.ts +0 -0
  805. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/FileUploadPreview.d.ts +0 -0
  806. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/FileUploadPreview.styled.d.ts +0 -0
  807. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/Mimes/ImageMime.d.ts +0 -0
  808. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/Mimes/TextMime.d.ts +0 -0
  809. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/fileUtils.d.ts +0 -0
  810. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/hooks/useAttachmentNavigation.d.ts +0 -0
  811. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/index.d.ts +0 -0
  812. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/FilesGrid.d.ts +0 -0
  813. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/FilesGrid.styled.d.ts +0 -0
  814. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/index.d.ts +0 -0
  815. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/ExistingReactions.d.ts +0 -0
  816. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reaction.d.ts +0 -0
  817. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/ReactionPanelOpener.d.ts +0 -0
  818. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reactions.d.ts +0 -0
  819. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reactions.styled.d.ts +0 -0
  820. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/helpers.d.ts +0 -0
  821. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/types.d.ts +0 -0
  822. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/EntityTooltip/EntityTooltip.d.ts +0 -0
  823. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.d.ts +0 -0
  824. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/UserTooltip/UserTooltip.d.ts +0 -0
  825. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.d.ts +0 -0
  826. /package/dist/types/{containers → shared/src/containers}/Feed/context/FeedContext.d.ts +0 -0
  827. /package/dist/types/{containers → shared/src/containers}/Feed/feedHelpers.d.ts +0 -0
  828. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/groupActivityVersions.d.ts +0 -0
  829. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/groupMinorActivities.d.ts +0 -0
  830. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/mergeSimilarActivities.d.ts +0 -0
  831. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useCommentMutations.d.ts +0 -0
  832. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useGetFeedActivitiesData.d.ts +0 -0
  833. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useReferenceTooltip.d.ts +0 -0
  834. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useSaveScrollPos.d.ts +0 -0
  835. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useScrollOnInputOpen.d.ts +0 -0
  836. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useScrollToHighlighted.d.ts +0 -0
  837. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useTableKeyboardNavigation.d.ts +0 -0
  838. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useTransformActivities.d.ts +0 -0
  839. /package/dist/types/{containers → shared/src/containers}/Feed/index.d.ts +0 -0
  840. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionOptions.d.ts +0 -0
  841. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionTasks.d.ts +0 -0
  842. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionUsers.d.ts +0 -0
  843. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionVersions.d.ts +0 -0
  844. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/ProjectTreeTable.styled.d.ts +0 -0
  845. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/HeaderActionButton.d.ts +0 -0
  846. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/RowSelectionHeader.d.ts +0 -0
  847. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/SelectionCell.d.ts +0 -0
  848. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ClipboardContext.d.ts +0 -0
  849. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableSelectionContext.d.ts +0 -0
  850. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/SelectedRowsContext.d.ts +0 -0
  851. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/SelectionCellsContext.d.ts +0 -0
  852. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardValidation.d.ts +0 -0
  853. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/index.d.ts +0 -0
  854. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/index.d.ts +0 -0
  855. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useColumnVirtualization.d.ts +0 -0
  856. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useCustomColumnWidthVars.d.ts +0 -0
  857. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useDeleteEntities.d.ts +0 -0
  858. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useKeyboardNavigation.d.ts +0 -0
  859. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/usePrefetchFolderTasks.d.ts +0 -0
  860. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/folders.d.ts +0 -0
  861. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/operations.d.ts +0 -0
  862. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/project.d.ts +0 -0
  863. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/loadingUtils.d.ts +0 -0
  864. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/CollapsedWidget.d.ts +0 -0
  865. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/DateWidgetInput.d.ts +0 -0
  866. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/TextWidgetInput.d.ts +0 -0
  867. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/RepresentationsList.d.ts +0 -0
  868. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/index.d.ts +0 -0
  869. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/versionsToRepresentations.d.ts +0 -0
  870. /package/dist/types/{containers → shared/src/containers}/Slicer/createFilterFromSlicer.d.ts +0 -0
  871. /package/dist/types/{containers → shared/src/containers}/Slicer/index.d.ts +0 -0
  872. /package/dist/types/{containers → shared/src/containers}/Slicer/types.d.ts +0 -0
  873. /package/dist/types/{containers → shared/src/containers}/index.d.ts +0 -0
  874. /package/dist/types/{context → shared/src/context}/DetailsPanelContext.d.ts +0 -0
  875. /package/dist/types/{context → shared/src/context}/RemoteModulesContext.d.ts +0 -0
  876. /package/dist/types/{context → shared/src/context}/ThumbnailUploaderContext.d.ts +0 -0
  877. /package/dist/types/{context → shared/src/context}/pip/PiPProvider.d.ts +0 -0
  878. /package/dist/types/{context → shared/src/context}/pip/PiPWindow.d.ts +0 -0
  879. /package/dist/types/{context → shared/src/context}/pip/PiPWrapper.d.ts +0 -0
  880. /package/dist/types/{context → shared/src/context}/pip/index.d.ts +0 -0
  881. /package/dist/types/{hooks → shared/src/hooks}/index.d.ts +0 -0
  882. /package/dist/types/{hooks → shared/src/hooks}/useActionTriggers.d.ts +0 -0
  883. /package/dist/types/{hooks → shared/src/hooks}/useEntityUpdate.d.ts +0 -0
  884. /package/dist/types/{hooks → shared/src/hooks}/useLoadModule.d.ts +0 -0
  885. /package/dist/types/{hooks → shared/src/hooks}/useLoadModules.d.ts +0 -0
  886. /package/dist/types/{hooks → shared/src/hooks}/useLocalStorage.d.ts +0 -0
  887. /package/dist/types/{hooks → shared/src/hooks}/useScopedStatuses.d.ts +0 -0
  888. /package/dist/types/{util → shared/src/util}/confirmDelete.d.ts +0 -0
  889. /package/dist/types/{util → shared/src/util}/copyToClipboard.d.ts +0 -0
  890. /package/dist/types/{util → shared/src/util}/getEntityTypeIcon.d.ts +0 -0
  891. /package/dist/types/{util → shared/src/util}/getMixedState.d.ts +0 -0
  892. /package/dist/types/{util → shared/src/util}/getPriorityOptions.d.ts +0 -0
  893. /package/dist/types/{util → shared/src/util}/groupResult.d.ts +0 -0
  894. /package/dist/types/{util → shared/src/util}/platform.d.ts +0 -0
  895. /package/dist/types/{util → shared/src/util}/productTypes.d.ts +0 -0
  896. /package/dist/types/{util → shared/src/util}/pubsub.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"clientFilterToQueryFilter.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.ts"],"sourcesContent":["import { Filter } from '@ynput/ayon-react-components'\nimport { QueryCondition, QueryFilter } from '../types/operations'\n\nconst NO_DATE = 'no_date'\nexport const clientFilterToQueryFilter = (filters: Filter[]): QueryFilter => {\n // If there are no filters, return an empty filter\n if (!filters || filters.length === 0) {\n return {}\n }\n\n // Process each filter as its own condition\n const conditions: (QueryCondition | QueryFilter)[] = filters\n .filter((f) => !!f.values?.length)\n .filter((f) => !f.id.includes('text')) // remove text search filters as they are handled separately\n .filter((f) => f.id !== 'hierarchy') // remove hierarchy filter as it is handled separately\n .flatMap((filter) => convertFilterToCondition(filter))\n\n console.log(conditions)\n\n // Return the QueryFilter with all conditions combined with AND\n return {\n conditions,\n operator: 'and',\n }\n}\n\n// Helper function to convert a single Filter to a QueryCondition\nconst convertFilterToCondition = (filter: Filter): QueryCondition => {\n // Extract key from filter ID (split by underscore if needed)\n const key = filter.id.split('_')[0]\n\n // Handle values based on filter type\n let value: QueryCondition['value']\n\n // there is any value\n const hasSomeValue =\n Array.isArray(filter.values) && filter.values.map((v) => v.id)?.includes('hasValue')\n const hasNoValue =\n Array.isArray(filter.values) && filter.values.map((v) => v.id)?.includes('noValue')\n\n if (filter.values && filter.values.length > 0) {\n if (filter.singleSelect) {\n // @ts-expect-error\n value = convertValueByType(filter.values[0].id, filter.type)\n } else {\n // @ts-expect-error\n value = filter.values.map((v) => convertValueByType(v.id, filter.type))\n }\n }\n\n // Determine if this is likely a list field based on filter type\n const isListField =\n filter.type?.startsWith('list_of_') || key.includes('tags') || key.includes('assignees')\n const isDateField = filter.type === 'datetime'\n\n // Determine the appropriate operator based on filter properties and type\n let operator: QueryCondition['operator'] = 'eq'\n\n // Handling NULL values\n if (value === undefined) {\n operator = filter.inverted ? 'notnull' : 'isnull'\n return { key, operator }\n }\n\n // Handle different filter types\n if (hasSomeValue) {\n // we set the value to the empty state and then say it should not be that\n value = isListField ? [] : undefined\n operator = isListField\n ? filter.inverted\n ? 'eq'\n : 'ne'\n : filter.inverted\n ? 'isnull'\n : 'notnull'\n } else if (hasNoValue) {\n // we set the value to the empty state and then say it should be that\n value = isListField ? [] : undefined\n operator = isListField\n ? filter.inverted\n ? 'ne'\n : 'eq'\n : filter.inverted\n ? 'notnull'\n : 'isnull'\n } else if (isListField) {\n if (filter.inverted) {\n operator = filter.operator === 'AND' ? 'excludesall' : 'excludesany'\n } else {\n operator = filter.operator === 'AND' ? 'includesall' : 'includesany'\n }\n } else if (isDateField) {\n // For date filters, we need to return a complete query filter with conditions\n if (filter.values && filter.values.length > 0) {\n // Create a flat list of all date conditions from all filter values\n const dateConditions: QueryCondition[] = filter.values.flatMap((filterValue: Filter) => {\n const conditions: QueryCondition[] = []\n const dateValues = filterValue.values\n\n // First value is greater than (start date)\n if (dateValues?.[0] !== undefined && dateValues?.[0].id !== NO_DATE) {\n conditions.push({\n key,\n operator: filter.inverted ? 'lte' : 'gte',\n value: dateValues[0].id,\n })\n }\n\n // Second value is less than (end date)\n if (dateValues?.[1] !== undefined && dateValues?.[1].id !== NO_DATE) {\n conditions.push({\n key,\n operator: filter.inverted ? 'gte' : 'lte',\n value: dateValues[1].id,\n })\n }\n\n return conditions\n })\n\n // If we have date conditions, return them as a nested filter instead of continuing\n if (dateConditions.length > 0) {\n // @ts-expect-error\n return {\n conditions: dateConditions,\n operator: filter.inverted ? 'or' : 'and',\n } as QueryFilter\n }\n }\n\n // If no date conditions were created, fall back to a basic equality check\n operator = filter.inverted ? 'ne' : 'eq'\n } else {\n // DEFAULT\n // For scalar fields\n operator = filter.inverted ? 'notin' : 'in'\n }\n\n return { key, value, operator }\n}\n\n// Helper function to convert values based on the filter type\nconst convertValueByType = (value: string, type?: string): string | number | boolean => {\n if (!type) return value\n\n switch (type) {\n case 'integer':\n return parseInt(value, 10)\n case 'float':\n return parseFloat(value)\n case 'boolean':\n return value.toLowerCase() === 'true'\n default:\n return value\n }\n}\n\nexport default clientFilterToQueryFilter\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientFilterToQueryFilter.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.ts"],"sourcesContent":["import { FILTER_SEPARATOR, getFilterFromId } from '@ynput/ayon-react-components'\nimport { QueryCondition, QueryFilter } from '../types/operations'\n\n// New type that cherry picks only the needed fields from Filter\nexport type FilterForQuery = {\n id: string\n values?: { id: string; values?: { id: string }[] }[]\n type?: string\n singleSelect?: boolean\n inverted?: boolean\n operator?: string\n}\n\nconst NO_DATE = 'no_date'\nexport const clientFilterToQueryFilter = (filters: FilterForQuery[]): QueryFilter => {\n // If there are no filters, return an empty filter\n if (!filters || filters.length === 0) {\n return {}\n }\n\n // Process each filter as its own condition\n const conditions: (QueryCondition | QueryFilter)[] = filters\n .filter((f) => !!f.values?.length)\n .filter((f) => !f.id.includes('text')) // remove text search filters as they are handled separately\n .filter((f) => f.id !== 'hierarchy') // remove hierarchy filter as it is handled separately\n .flatMap((filter) => convertFilterToCondition(filter))\n\n // Return the QueryFilter with all conditions combined with AND\n return {\n conditions,\n operator: 'and',\n }\n}\n\n// Helper function to convert a single Filter to a QueryCondition\nconst convertFilterToCondition = (filter: FilterForQuery): QueryCondition => {\n // Extract key from filter ID (split by underscore if needed)\n const key = getFilterFromId(filter.id)\n\n // Handle values based on filter type\n let value: QueryCondition['value']\n\n // there is any value\n const hasSomeValue =\n Array.isArray(filter.values) && filter.values.map((v) => v.id)?.includes('hasValue')\n const hasNoValue =\n Array.isArray(filter.values) && filter.values.map((v) => v.id)?.includes('noValue')\n\n if (filter.values && filter.values.length > 0) {\n if (filter.singleSelect) {\n // @ts-expect-error\n value = convertValueByType(filter.values[0].id, filter.type)\n } else {\n // @ts-expect-error\n value = filter.values.map((v) => convertValueByType(v.id, filter.type))\n }\n }\n\n // Determine if this is likely a list field based on filter type\n const isListField =\n filter.type?.startsWith('list_of_') || key.includes('tags') || key.includes('assignees')\n const isDateField = filter.type === 'datetime'\n const isBooleanField = filter.type === 'boolean'\n\n // Determine the appropriate operator based on filter properties and type\n let operator: QueryCondition['operator'] = 'eq'\n\n // Handling NULL values\n if (value === undefined) {\n operator = filter.inverted ? 'notnull' : 'isnull'\n return { key, operator }\n }\n\n // Handle different filter types\n if (hasSomeValue) {\n // we set the value to the empty state and then say it should not be that\n value = isListField ? [] : undefined\n operator = isListField\n ? filter.inverted\n ? 'eq'\n : 'ne'\n : filter.inverted\n ? 'isnull'\n : 'notnull'\n } else if (hasNoValue) {\n // we set the value to the empty state and then say it should be that\n value = isListField ? [] : undefined\n operator = isListField\n ? filter.inverted\n ? 'ne'\n : 'eq'\n : filter.inverted\n ? 'notnull'\n : 'isnull'\n } else if (isListField) {\n if (filter.inverted) {\n operator = filter.operator === 'AND' ? 'excludesall' : 'excludesany'\n } else {\n operator = filter.operator === 'AND' ? 'includesall' : 'includesany'\n }\n } else if (isDateField) {\n // For date filters, we need to return a complete query filter with conditions\n if (filter.values && filter.values.length > 0) {\n // Create a flat list of all date conditions from all filter values\n const dateConditions: QueryCondition[] = filter.values.flatMap(\n (filterValue: FilterForQuery) => {\n const conditions: QueryCondition[] = []\n const dateValues = filterValue.values\n\n // First value is greater than (start date)\n if (dateValues?.[0] !== undefined && dateValues?.[0].id !== NO_DATE) {\n conditions.push({\n key,\n operator: filter.inverted ? 'lte' : 'gte',\n value: dateValues[0].id,\n })\n }\n\n // Second value is less than (end date)\n if (dateValues?.[1] !== undefined && dateValues?.[1].id !== NO_DATE) {\n conditions.push({\n key,\n operator: filter.inverted ? 'gte' : 'lte',\n value: dateValues[1].id,\n })\n }\n\n return conditions\n },\n )\n\n // If we have date conditions, return them as a nested filter instead of continuing\n if (dateConditions.length > 0) {\n // @ts-expect-error\n return {\n conditions: dateConditions,\n operator: filter.inverted ? 'or' : 'and',\n } as QueryFilter\n }\n }\n\n // If no date conditions were created, fall back to a basic equality check\n operator = filter.inverted ? 'ne' : 'eq'\n } else if (isBooleanField) {\n operator = filter.inverted ? 'ne' : 'eq'\n } else {\n // DEFAULT for other scalar fields\n operator = filter.inverted ? 'notin' : 'in'\n }\n\n return { key, value, operator }\n}\n\n// Helper function to convert values based on the filter type\nconst convertValueByType = (value: string, type?: string): string | number | boolean => {\n if (!type) return value\n\n switch (type) {\n case 'integer':\n return parseInt(value, 10)\n case 'float':\n return parseFloat(value)\n case 'boolean':\n return value.toLowerCase() === 'true'\n default:\n return value\n }\n}\n\nexport default clientFilterToQueryFilter\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const getReadOnlyLists = (attribFields, extra = []) => {
4
+ let readOnlyAttribs = attribFields.filter((attrib) => attrib.readOnly).map((attrib) => attrib.name);
5
+ let readOnlyColumnsSet;
6
+ if (extra == null ? void 0 : extra.includes("attrib")) {
7
+ readOnlyAttribs = attribFields.filter((a) => a.builtin).map((attrib) => attrib.name);
8
+ readOnlyColumnsSet = /* @__PURE__ */ new Set([
9
+ ...attribFields.filter((a) => a.builtin).map((attrib) => "attrib_" + attrib.name),
10
+ // Add all attribute columns to the readOnly set
11
+ ...extra || []
12
+ // Add any other specified readOnly columns
13
+ ]);
14
+ } else {
15
+ readOnlyColumnsSet = /* @__PURE__ */ new Set([
16
+ ...readOnlyAttribs.map((name) => "attrib_" + name),
17
+ // Add readOnly attribute columns to the set
18
+ ...extra || []
19
+ // Add any other specified readOnly columns
20
+ ]);
21
+ if (extra) {
22
+ extra.forEach((col) => {
23
+ if (col.startsWith("attrib_")) {
24
+ const attribName = col.replace("attrib_", "");
25
+ if (attribFields.find((attrib) => attrib.name === attribName) && !readOnlyAttribs.includes(attribName)) {
26
+ readOnlyAttribs.push(attribName);
27
+ }
28
+ }
29
+ });
30
+ }
31
+ }
32
+ const readOnlyColumns = Array.from(readOnlyColumnsSet);
33
+ return { readOnlyColumns, readOnlyAttribs };
34
+ };
35
+ exports.getReadOnlyLists = getReadOnlyLists;
36
+ //# sourceMappingURL=getReadOnlyLists.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReadOnlyLists.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/getReadOnlyLists.ts"],"sourcesContent":["import { ProjectTableAttribute } from '../types'\n\nexport const getReadOnlyLists = (attribFields: ProjectTableAttribute[], extra: string[] = []) => {\n let readOnlyAttribs: string[] = attribFields\n .filter((attrib) => attrib.readOnly) // Filter attributes that are explicitly readOnly\n .map((attrib) => attrib.name) // Extract the names of the readOnly attributes\n\n let readOnlyColumnsSet: Set<string>\n\n if (extra?.includes('attrib' as any)) {\n // If 'attrib' is in the readonly columns, all attributes are read-only\n readOnlyAttribs = attribFields.filter((a) => a.builtin).map((attrib) => attrib.name) // Mark all attributes as readOnly if they are builtin\n readOnlyColumnsSet = new Set([\n ...attribFields.filter((a) => a.builtin).map((attrib) => 'attrib_' + attrib.name), // Add all attribute columns to the readOnly set\n ...(extra || []), // Add any other specified readOnly columns\n ])\n } else {\n // If 'attrib' is not in the readonly columns, handle individual attributes\n readOnlyColumnsSet = new Set([\n ...readOnlyAttribs.map((name) => 'attrib_' + name), // Add readOnly attribute columns to the set\n ...(extra || []), // Add any other specified readOnly columns\n ])\n\n // Add readOnly from extra to attribs\n if (extra) {\n extra.forEach((col) => {\n if (col.startsWith('attrib_')) {\n const attribName = col.replace('attrib_', '')\n if (\n attribFields.find((attrib) => attrib.name === attribName) &&\n !readOnlyAttribs.includes(attribName)\n ) {\n readOnlyAttribs.push(attribName)\n }\n }\n })\n }\n }\n\n const readOnlyColumns = Array.from(readOnlyColumnsSet) // Convert the set of readOnly columns to an array\n\n return { readOnlyColumns, readOnlyAttribs }\n}\n"],"names":[],"mappings":";;AAEO,MAAM,mBAAmB,CAAC,cAAuC,QAAkB,OAAO;AAC/F,MAAI,kBAA4B,aAC7B,OAAO,CAAC,WAAW,OAAO,QAAQ,EAClC,IAAI,CAAC,WAAW,OAAO,IAAI;AAE1B,MAAA;AAEA,MAAA,+BAAO,SAAS,WAAkB;AAElB,sBAAA,aAAa,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,OAAO,IAAI;AACnF,6CAAyB,IAAI;AAAA,MAC3B,GAAG,aAAa,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,YAAY,OAAO,IAAI;AAAA;AAAA,MAChF,GAAI,SAAS,CAAA;AAAA;AAAA,IAAC,CACf;AAAA,EAAA,OACI;AAEL,6CAAyB,IAAI;AAAA,MAC3B,GAAG,gBAAgB,IAAI,CAAC,SAAS,YAAY,IAAI;AAAA;AAAA,MACjD,GAAI,SAAS,CAAA;AAAA;AAAA,IAAC,CACf;AAGD,QAAI,OAAO;AACH,YAAA,QAAQ,CAAC,QAAQ;AACjB,YAAA,IAAI,WAAW,SAAS,GAAG;AAC7B,gBAAM,aAAa,IAAI,QAAQ,WAAW,EAAE;AAC5C,cACE,aAAa,KAAK,CAAC,WAAW,OAAO,SAAS,UAAU,KACxD,CAAC,gBAAgB,SAAS,UAAU,GACpC;AACA,4BAAgB,KAAK,UAAU;AAAA,UAAA;AAAA,QACjC;AAAA,MACF,CACD;AAAA,IAAA;AAAA,EACH;AAGI,QAAA,kBAAkB,MAAM,KAAK,kBAAkB;AAE9C,SAAA,EAAE,iBAAiB,gBAAgB;AAC5C;;"}
@@ -0,0 +1,36 @@
1
+ const getReadOnlyLists = (attribFields, extra = []) => {
2
+ let readOnlyAttribs = attribFields.filter((attrib) => attrib.readOnly).map((attrib) => attrib.name);
3
+ let readOnlyColumnsSet;
4
+ if (extra == null ? void 0 : extra.includes("attrib")) {
5
+ readOnlyAttribs = attribFields.filter((a) => a.builtin).map((attrib) => attrib.name);
6
+ readOnlyColumnsSet = /* @__PURE__ */ new Set([
7
+ ...attribFields.filter((a) => a.builtin).map((attrib) => "attrib_" + attrib.name),
8
+ // Add all attribute columns to the readOnly set
9
+ ...extra || []
10
+ // Add any other specified readOnly columns
11
+ ]);
12
+ } else {
13
+ readOnlyColumnsSet = /* @__PURE__ */ new Set([
14
+ ...readOnlyAttribs.map((name) => "attrib_" + name),
15
+ // Add readOnly attribute columns to the set
16
+ ...extra || []
17
+ // Add any other specified readOnly columns
18
+ ]);
19
+ if (extra) {
20
+ extra.forEach((col) => {
21
+ if (col.startsWith("attrib_")) {
22
+ const attribName = col.replace("attrib_", "");
23
+ if (attribFields.find((attrib) => attrib.name === attribName) && !readOnlyAttribs.includes(attribName)) {
24
+ readOnlyAttribs.push(attribName);
25
+ }
26
+ }
27
+ });
28
+ }
29
+ }
30
+ const readOnlyColumns = Array.from(readOnlyColumnsSet);
31
+ return { readOnlyColumns, readOnlyAttribs };
32
+ };
33
+ export {
34
+ getReadOnlyLists
35
+ };
36
+ //# sourceMappingURL=getReadOnlyLists.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReadOnlyLists.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/getReadOnlyLists.ts"],"sourcesContent":["import { ProjectTableAttribute } from '../types'\n\nexport const getReadOnlyLists = (attribFields: ProjectTableAttribute[], extra: string[] = []) => {\n let readOnlyAttribs: string[] = attribFields\n .filter((attrib) => attrib.readOnly) // Filter attributes that are explicitly readOnly\n .map((attrib) => attrib.name) // Extract the names of the readOnly attributes\n\n let readOnlyColumnsSet: Set<string>\n\n if (extra?.includes('attrib' as any)) {\n // If 'attrib' is in the readonly columns, all attributes are read-only\n readOnlyAttribs = attribFields.filter((a) => a.builtin).map((attrib) => attrib.name) // Mark all attributes as readOnly if they are builtin\n readOnlyColumnsSet = new Set([\n ...attribFields.filter((a) => a.builtin).map((attrib) => 'attrib_' + attrib.name), // Add all attribute columns to the readOnly set\n ...(extra || []), // Add any other specified readOnly columns\n ])\n } else {\n // If 'attrib' is not in the readonly columns, handle individual attributes\n readOnlyColumnsSet = new Set([\n ...readOnlyAttribs.map((name) => 'attrib_' + name), // Add readOnly attribute columns to the set\n ...(extra || []), // Add any other specified readOnly columns\n ])\n\n // Add readOnly from extra to attribs\n if (extra) {\n extra.forEach((col) => {\n if (col.startsWith('attrib_')) {\n const attribName = col.replace('attrib_', '')\n if (\n attribFields.find((attrib) => attrib.name === attribName) &&\n !readOnlyAttribs.includes(attribName)\n ) {\n readOnlyAttribs.push(attribName)\n }\n }\n })\n }\n }\n\n const readOnlyColumns = Array.from(readOnlyColumnsSet) // Convert the set of readOnly columns to an array\n\n return { readOnlyColumns, readOnlyAttribs }\n}\n"],"names":[],"mappings":"AAEO,MAAM,mBAAmB,CAAC,cAAuC,QAAkB,OAAO;AAC/F,MAAI,kBAA4B,aAC7B,OAAO,CAAC,WAAW,OAAO,QAAQ,EAClC,IAAI,CAAC,WAAW,OAAO,IAAI;AAE1B,MAAA;AAEA,MAAA,+BAAO,SAAS,WAAkB;AAElB,sBAAA,aAAa,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,OAAO,IAAI;AACnF,6CAAyB,IAAI;AAAA,MAC3B,GAAG,aAAa,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,YAAY,OAAO,IAAI;AAAA;AAAA,MAChF,GAAI,SAAS,CAAA;AAAA;AAAA,IAAC,CACf;AAAA,EAAA,OACI;AAEL,6CAAyB,IAAI;AAAA,MAC3B,GAAG,gBAAgB,IAAI,CAAC,SAAS,YAAY,IAAI;AAAA;AAAA,MACjD,GAAI,SAAS,CAAA;AAAA;AAAA,IAAC,CACf;AAGD,QAAI,OAAO;AACH,YAAA,QAAQ,CAAC,QAAQ;AACjB,YAAA,IAAI,WAAW,SAAS,GAAG;AAC7B,gBAAM,aAAa,IAAI,QAAQ,WAAW,EAAE;AAC5C,cACE,aAAa,KAAK,CAAC,WAAW,OAAO,SAAS,UAAU,KACxD,CAAC,gBAAgB,SAAS,UAAU,GACpC;AACA,4BAAgB,KAAK,UAAU;AAAA,UAAA;AAAA,QACjC;AAAA,MACF,CACD;AAAA,IAAA;AAAA,EACH;AAGI,QAAA,kBAAkB,MAAM,KAAK,kBAAkB;AAE9C,SAAA,EAAE,iBAAiB,gBAAgB;AAC5C;"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const productTypes = require("../../../util/productTypes.cjs.js");
4
+ require("lodash");
5
+ require("react-toastify");
6
+ require("../../../util/pubsub.cjs.js");
7
+ const getTableFieldOptions = ({
8
+ users,
9
+ statuses,
10
+ folderTypes,
11
+ taskTypes,
12
+ tags
13
+ }) => ({
14
+ assignee: users.map(({ name, fullName }) => ({
15
+ value: name,
16
+ label: fullName || name,
17
+ icon: `/api/users/${name}/avatar`
18
+ })),
19
+ status: statuses.filter((status) => !status.scope || ["folder", "task"].some((s) => {
20
+ var _a;
21
+ return (_a = status.scope) == null ? void 0 : _a.includes(s);
22
+ })).map(({ name, color, icon, scope }) => ({
23
+ value: name,
24
+ label: name,
25
+ color,
26
+ icon,
27
+ scope
28
+ })),
29
+ tag: tags.map(({ name, color }) => ({ value: name, label: name, color })),
30
+ folderType: folderTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),
31
+ taskType: taskTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),
32
+ productType: Object.entries(productTypes).map(([key, value]) => ({
33
+ value: key,
34
+ label: value.name,
35
+ icon: value.icon
36
+ }))
37
+ });
38
+ exports.getTableFieldOptions = getTableFieldOptions;
39
+ //# sourceMappingURL=getTableFieldOptions.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTableFieldOptions.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/getTableFieldOptions.ts"],"sourcesContent":["import { productTypes } from '@shared/util'\nimport { BuiltInFieldOptions } from '../types'\nimport { FolderType, Status, Tag, TaskType } from '../types/project'\n\ntype Params = {\n users: {\n name: string\n fullName?: string\n }[]\n statuses: Status[]\n folderTypes: FolderType[]\n taskTypes: TaskType[]\n tags: Tag[]\n}\n\nexport const getTableFieldOptions = ({\n users,\n statuses,\n folderTypes,\n taskTypes,\n tags,\n}: Params): BuiltInFieldOptions => ({\n assignee: users.map(({ name, fullName }) => ({\n value: name,\n label: fullName || name,\n icon: `/api/users/${name}/avatar`,\n })),\n status: statuses\n .filter((status) => !status.scope || ['folder', 'task'].some((s) => status.scope?.includes(s)))\n .map(({ name, color, icon, scope }) => ({\n value: name,\n label: name,\n color,\n icon,\n scope,\n })),\n tag: tags.map(({ name, color }) => ({ value: name, label: name, color })),\n folderType: folderTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),\n taskType: taskTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),\n productType: Object.entries(productTypes).map(([key, value]) => ({\n value: key,\n label: value.name,\n icon: value.icon,\n })),\n})\n"],"names":[],"mappings":";;;;;;AAeO,MAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,OAAoC;AAAA,EAClC,UAAU,MAAM,IAAI,CAAC,EAAE,MAAM,gBAAgB;AAAA,IAC3C,OAAO;AAAA,IACP,OAAO,YAAY;AAAA,IACnB,MAAM,cAAc,IAAI;AAAA,EAAA,EACxB;AAAA,EACF,QAAQ,SACL,OAAO,CAAC,WAAW,CAAC,OAAO,SAAS,CAAC,UAAU,MAAM,EAAE,KAAK,CAAC;;AAAM,wBAAO,UAAP,mBAAc,SAAS;AAAA,GAAE,CAAC,EAC7F,IAAI,CAAC,EAAE,MAAM,OAAO,MAAM,aAAa;AAAA,IACtC,OAAO;AAAA,IACP,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EAAA,EACA;AAAA,EACJ,KAAK,KAAK,IAAI,CAAC,EAAE,MAAM,MAAA,OAAa,EAAE,OAAO,MAAM,OAAO,MAAM,MAAQ,EAAA;AAAA,EACxE,YAAY,YAAY,IAAI,CAAC,EAAE,MAAM,KAAA,OAAY,EAAE,OAAO,MAAM,OAAO,MAAM,KAAO,EAAA;AAAA,EACpF,UAAU,UAAU,IAAI,CAAC,EAAE,MAAM,KAAA,OAAY,EAAE,OAAO,MAAM,OAAO,MAAM,KAAO,EAAA;AAAA,EAChF,aAAa,OAAO,QAAQ,YAAY,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,IAC/D,OAAO;AAAA,IACP,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,EAAA,EACZ;AACJ;;"}
@@ -0,0 +1,39 @@
1
+ import productTypes from "../../../util/productTypes.es.js";
2
+ import "lodash";
3
+ import "react-toastify";
4
+ import "../../../util/pubsub.es.js";
5
+ const getTableFieldOptions = ({
6
+ users,
7
+ statuses,
8
+ folderTypes,
9
+ taskTypes,
10
+ tags
11
+ }) => ({
12
+ assignee: users.map(({ name, fullName }) => ({
13
+ value: name,
14
+ label: fullName || name,
15
+ icon: `/api/users/${name}/avatar`
16
+ })),
17
+ status: statuses.filter((status) => !status.scope || ["folder", "task"].some((s) => {
18
+ var _a;
19
+ return (_a = status.scope) == null ? void 0 : _a.includes(s);
20
+ })).map(({ name, color, icon, scope }) => ({
21
+ value: name,
22
+ label: name,
23
+ color,
24
+ icon,
25
+ scope
26
+ })),
27
+ tag: tags.map(({ name, color }) => ({ value: name, label: name, color })),
28
+ folderType: folderTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),
29
+ taskType: taskTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),
30
+ productType: Object.entries(productTypes).map(([key, value]) => ({
31
+ value: key,
32
+ label: value.name,
33
+ icon: value.icon
34
+ }))
35
+ });
36
+ export {
37
+ getTableFieldOptions
38
+ };
39
+ //# sourceMappingURL=getTableFieldOptions.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTableFieldOptions.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/getTableFieldOptions.ts"],"sourcesContent":["import { productTypes } from '@shared/util'\nimport { BuiltInFieldOptions } from '../types'\nimport { FolderType, Status, Tag, TaskType } from '../types/project'\n\ntype Params = {\n users: {\n name: string\n fullName?: string\n }[]\n statuses: Status[]\n folderTypes: FolderType[]\n taskTypes: TaskType[]\n tags: Tag[]\n}\n\nexport const getTableFieldOptions = ({\n users,\n statuses,\n folderTypes,\n taskTypes,\n tags,\n}: Params): BuiltInFieldOptions => ({\n assignee: users.map(({ name, fullName }) => ({\n value: name,\n label: fullName || name,\n icon: `/api/users/${name}/avatar`,\n })),\n status: statuses\n .filter((status) => !status.scope || ['folder', 'task'].some((s) => status.scope?.includes(s)))\n .map(({ name, color, icon, scope }) => ({\n value: name,\n label: name,\n color,\n icon,\n scope,\n })),\n tag: tags.map(({ name, color }) => ({ value: name, label: name, color })),\n folderType: folderTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),\n taskType: taskTypes.map(({ name, icon }) => ({ value: name, label: name, icon })),\n productType: Object.entries(productTypes).map(([key, value]) => ({\n value: key,\n label: value.name,\n icon: value.icon,\n })),\n})\n"],"names":[],"mappings":";;;;AAeO,MAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,OAAoC;AAAA,EAClC,UAAU,MAAM,IAAI,CAAC,EAAE,MAAM,gBAAgB;AAAA,IAC3C,OAAO;AAAA,IACP,OAAO,YAAY;AAAA,IACnB,MAAM,cAAc,IAAI;AAAA,EAAA,EACxB;AAAA,EACF,QAAQ,SACL,OAAO,CAAC,WAAW,CAAC,OAAO,SAAS,CAAC,UAAU,MAAM,EAAE,KAAK,CAAC;;AAAM,wBAAO,UAAP,mBAAc,SAAS;AAAA,GAAE,CAAC,EAC7F,IAAI,CAAC,EAAE,MAAM,OAAO,MAAM,aAAa;AAAA,IACtC,OAAO;AAAA,IACP,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EAAA,EACA;AAAA,EACJ,KAAK,KAAK,IAAI,CAAC,EAAE,MAAM,MAAA,OAAa,EAAE,OAAO,MAAM,OAAO,MAAM,MAAQ,EAAA;AAAA,EACxE,YAAY,YAAY,IAAI,CAAC,EAAE,MAAM,KAAA,OAAY,EAAE,OAAO,MAAM,OAAO,MAAM,KAAO,EAAA;AAAA,EACpF,UAAU,UAAU,IAAI,CAAC,EAAE,MAAM,KAAA,OAAY,EAAE,OAAO,MAAM,OAAO,MAAM,KAAO,EAAA;AAAA,EAChF,aAAa,OAAO,QAAQ,YAAY,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,IAC/D,OAAO;AAAA,IACP,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,EAAA,EACZ;AACJ;"}
@@ -5,6 +5,7 @@ const generateLoadingRows = (attribs, count = 50, { type = "folder", parentId }
5
5
  (_, index) => ({
6
6
  id: `loading-${type}-${index}-${parentId}`,
7
7
  name: "Loading...",
8
+ status: "Loading...",
8
9
  parentId,
9
10
  isLoading: true,
10
11
  label: "Loading...",
@@ -1 +1 @@
1
- {"version":3,"file":"loadingUtils.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/loadingUtils.ts"],"sourcesContent":["import { TableRow } from '../types/table'\nimport { FolderNodeMap } from '../types/table'\nimport { AttributeModel, LoadingTasks } from '../types'\n\n/**\n * Generates an array of placeholder rows for loading state\n * @param attribs - Attribute models used to populate empty attribute fields\n * @param count - Number of loading rows to generate (default: 50)\n * @returns Array of TableRow objects with loading state\n */\nexport const generateLoadingRows = (\n attribs: { name: string }[],\n count = 50,\n { type = 'folder', parentId }: { type?: string; parentId?: string } = {},\n): TableRow[] => {\n return new Array(count).fill(0).map(\n (_, index): TableRow => ({\n id: `loading-${type}-${index}-${parentId}`,\n name: 'Loading...',\n parentId: parentId,\n isLoading: true,\n label: 'Loading...',\n color: null,\n icon: null,\n img: null,\n entityType: type,\n ownAttrib: [],\n tags: [],\n subRows: [],\n path: '',\n attrib: attribs.reduce((acc: { [key: string]: null }, attrib) => {\n acc[attrib.name] = null\n return acc\n }, {}),\n }),\n )\n}\n\n/**\n * Generates an array of dummy attribute models for loading states\n * @param count - Number of dummy attributes to generate (default: 10)\n * @returns Array of AttributeModel objects\n */\nexport const generateDummyAttributes = (count = 10): AttributeModel[] => {\n return Array(count)\n .fill(null)\n .map((_, i): AttributeModel => {\n return {\n name: `loading-attribute${i}`,\n scope: ['folder', 'task'],\n data: {\n type: 'string',\n },\n position: i,\n }\n })\n}\n\n/**\n * Parameters for determineLoadingTaskFolders function\n */\nexport type DetermineLoadingTaskFoldersParams = {\n expandedFoldersTasks: { folderId: string | null }[]\n expandedParentIds: string[]\n foldersMap: FolderNodeMap\n}\n\n/**\n * Determines which folders are currently loading tasks\n * @param params - Object containing parameters for determining loading folders\n * @returns Array of folder IDs that are in loading state\n */\nexport const determineLoadingTaskFolders = ({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n}: DetermineLoadingTaskFoldersParams): LoadingTasks => {\n // find the folderIds that are being fetched (not the ones that are already loaded)\n const folderIds = expandedFoldersTasks.map((task) => task.folderId)\n const expandedParentIdsThatHaveTasks = expandedParentIds.filter(\n (id) => foldersMap.get(id)?.hasTasks,\n )\n const folderIdsSet = new Set(folderIds)\n const loadingParentIds = new Set<string>()\n for (const folderId of expandedParentIdsThatHaveTasks) {\n if (!folderIdsSet.has(folderId)) {\n loadingParentIds.add(folderId)\n }\n }\n\n const loadingTasks: LoadingTasks = {}\n for (const folderId of loadingParentIds) {\n // find the folder by id\n const folder = foldersMap.get(folderId)\n if (folder) {\n loadingTasks[folderId] = folder.taskNames?.length || 0\n }\n }\n\n return loadingTasks\n}\n"],"names":["_a"],"mappings":";;AAUa,MAAA,sBAAsB,CACjC,SACA,QAAQ,IACR,EAAE,OAAO,UAAU,SAAmD,IAAA,OACvD;AACf,SAAO,IAAI,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE;AAAA,IAC9B,CAAC,GAAG,WAAqB;AAAA,MACvB,IAAI,WAAW,IAAI,IAAI,KAAK,IAAI,QAAQ;AAAA,MACxC,MAAM;AAAA,MACN;AAAA,MACA,WAAW;AAAA,MACX,OAAO;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,WAAW,CAAC;AAAA,MACZ,MAAM,CAAC;AAAA,MACP,SAAS,CAAC;AAAA,MACV,MAAM;AAAA,MACN,QAAQ,QAAQ,OAAO,CAAC,KAA8B,WAAW;AAC3D,YAAA,OAAO,IAAI,IAAI;AACZ,eAAA;AAAA,MAAA,GACN,CAAE,CAAA;AAAA,IACP;AAAA,EACF;AACF;AAOa,MAAA,0BAA0B,CAAC,QAAQ,OAAyB;AAChE,SAAA,MAAM,KAAK,EACf,KAAK,IAAI,EACT,IAAI,CAAC,GAAG,MAAsB;AACtB,WAAA;AAAA,MACL,MAAM,oBAAoB,CAAC;AAAA,MAC3B,OAAO,CAAC,UAAU,MAAM;AAAA,MACxB,MAAM;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,MACA,UAAU;AAAA,IACZ;AAAA,EAAA,CACD;AACL;AAgBO,MAAM,8BAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AACF,MAAuD;;AAErD,QAAM,YAAY,qBAAqB,IAAI,CAAC,SAAS,KAAK,QAAQ;AAClE,QAAM,iCAAiC,kBAAkB;AAAA,IACvD,CAAC,OAAO;;AAAA,cAAAA,MAAA,WAAW,IAAI,EAAE,MAAjB,gBAAAA,IAAoB;AAAA;AAAA,EAC9B;AACM,QAAA,eAAe,IAAI,IAAI,SAAS;AAChC,QAAA,uCAAuB,IAAY;AACzC,aAAW,YAAY,gCAAgC;AACrD,QAAI,CAAC,aAAa,IAAI,QAAQ,GAAG;AAC/B,uBAAiB,IAAI,QAAQ;AAAA,IAAA;AAAA,EAC/B;AAGF,QAAM,eAA6B,CAAC;AACpC,aAAW,YAAY,kBAAkB;AAEjC,UAAA,SAAS,WAAW,IAAI,QAAQ;AACtC,QAAI,QAAQ;AACV,mBAAa,QAAQ,MAAI,YAAO,cAAP,mBAAkB,WAAU;AAAA,IAAA;AAAA,EACvD;AAGK,SAAA;AACT;;;;"}
1
+ {"version":3,"file":"loadingUtils.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/loadingUtils.ts"],"sourcesContent":["import { TableRow } from '../types/table'\nimport { FolderNodeMap } from '../types/table'\nimport { AttributeModel, LoadingTasks } from '../types'\n\n/**\n * Generates an array of placeholder rows for loading state\n * @param attribs - Attribute models used to populate empty attribute fields\n * @param count - Number of loading rows to generate (default: 50)\n * @returns Array of TableRow objects with loading state\n */\nexport const generateLoadingRows = (\n attribs: { name: string }[],\n count = 50,\n { type = 'folder', parentId }: { type?: string; parentId?: string } = {},\n): TableRow[] => {\n return new Array(count).fill(0).map(\n (_, index): TableRow => ({\n id: `loading-${type}-${index}-${parentId}`,\n name: 'Loading...',\n status: 'Loading...',\n parentId: parentId,\n isLoading: true,\n label: 'Loading...',\n color: null,\n icon: null,\n img: null,\n entityType: type,\n ownAttrib: [],\n tags: [],\n subRows: [],\n path: '',\n attrib: attribs.reduce((acc: { [key: string]: null }, attrib) => {\n acc[attrib.name] = null\n return acc\n }, {}),\n }),\n )\n}\n\n/**\n * Generates an array of dummy attribute models for loading states\n * @param count - Number of dummy attributes to generate (default: 10)\n * @returns Array of AttributeModel objects\n */\nexport const generateDummyAttributes = (count = 10): AttributeModel[] => {\n return Array(count)\n .fill(null)\n .map((_, i): AttributeModel => {\n return {\n name: `loading-attribute${i}`,\n scope: ['folder', 'task'],\n data: {\n type: 'string',\n },\n position: i,\n }\n })\n}\n\n/**\n * Parameters for determineLoadingTaskFolders function\n */\nexport type DetermineLoadingTaskFoldersParams = {\n expandedFoldersTasks: { folderId: string | null }[]\n expandedParentIds: string[]\n foldersMap: FolderNodeMap\n}\n\n/**\n * Determines which folders are currently loading tasks\n * @param params - Object containing parameters for determining loading folders\n * @returns Array of folder IDs that are in loading state\n */\nexport const determineLoadingTaskFolders = ({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n}: DetermineLoadingTaskFoldersParams): LoadingTasks => {\n // find the folderIds that are being fetched (not the ones that are already loaded)\n const folderIds = expandedFoldersTasks.map((task) => task.folderId)\n const expandedParentIdsThatHaveTasks = expandedParentIds.filter(\n (id) => foldersMap.get(id)?.hasTasks,\n )\n const folderIdsSet = new Set(folderIds)\n const loadingParentIds = new Set<string>()\n for (const folderId of expandedParentIdsThatHaveTasks) {\n if (!folderIdsSet.has(folderId)) {\n loadingParentIds.add(folderId)\n }\n }\n\n const loadingTasks: LoadingTasks = {}\n for (const folderId of loadingParentIds) {\n // find the folder by id\n const folder = foldersMap.get(folderId)\n if (folder) {\n loadingTasks[folderId] = folder.taskNames?.length || 0\n }\n }\n\n return loadingTasks\n}\n"],"names":["_a"],"mappings":";;AAUa,MAAA,sBAAsB,CACjC,SACA,QAAQ,IACR,EAAE,OAAO,UAAU,SAAmD,IAAA,OACvD;AACf,SAAO,IAAI,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE;AAAA,IAC9B,CAAC,GAAG,WAAqB;AAAA,MACvB,IAAI,WAAW,IAAI,IAAI,KAAK,IAAI,QAAQ;AAAA,MACxC,MAAM;AAAA,MACN,QAAQ;AAAA,MACR;AAAA,MACA,WAAW;AAAA,MACX,OAAO;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,WAAW,CAAC;AAAA,MACZ,MAAM,CAAC;AAAA,MACP,SAAS,CAAC;AAAA,MACV,MAAM;AAAA,MACN,QAAQ,QAAQ,OAAO,CAAC,KAA8B,WAAW;AAC3D,YAAA,OAAO,IAAI,IAAI;AACZ,eAAA;AAAA,MAAA,GACN,CAAE,CAAA;AAAA,IACP;AAAA,EACF;AACF;AAOa,MAAA,0BAA0B,CAAC,QAAQ,OAAyB;AAChE,SAAA,MAAM,KAAK,EACf,KAAK,IAAI,EACT,IAAI,CAAC,GAAG,MAAsB;AACtB,WAAA;AAAA,MACL,MAAM,oBAAoB,CAAC;AAAA,MAC3B,OAAO,CAAC,UAAU,MAAM;AAAA,MACxB,MAAM;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,MACA,UAAU;AAAA,IACZ;AAAA,EAAA,CACD;AACL;AAgBO,MAAM,8BAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AACF,MAAuD;;AAErD,QAAM,YAAY,qBAAqB,IAAI,CAAC,SAAS,KAAK,QAAQ;AAClE,QAAM,iCAAiC,kBAAkB;AAAA,IACvD,CAAC,OAAO;;AAAA,cAAAA,MAAA,WAAW,IAAI,EAAE,MAAjB,gBAAAA,IAAoB;AAAA;AAAA,EAC9B;AACM,QAAA,eAAe,IAAI,IAAI,SAAS;AAChC,QAAA,uCAAuB,IAAY;AACzC,aAAW,YAAY,gCAAgC;AACrD,QAAI,CAAC,aAAa,IAAI,QAAQ,GAAG;AAC/B,uBAAiB,IAAI,QAAQ;AAAA,IAAA;AAAA,EAC/B;AAGF,QAAM,eAA6B,CAAC;AACpC,aAAW,YAAY,kBAAkB;AAEjC,UAAA,SAAS,WAAW,IAAI,QAAQ;AACtC,QAAI,QAAQ;AACV,mBAAa,QAAQ,MAAI,YAAO,cAAP,mBAAkB,WAAU;AAAA,IAAA;AAAA,EACvD;AAGK,SAAA;AACT;;;;"}
@@ -3,6 +3,7 @@ const generateLoadingRows = (attribs, count = 50, { type = "folder", parentId }
3
3
  (_, index) => ({
4
4
  id: `loading-${type}-${index}-${parentId}`,
5
5
  name: "Loading...",
6
+ status: "Loading...",
6
7
  parentId,
7
8
  isLoading: true,
8
9
  label: "Loading...",
@@ -1 +1 @@
1
- {"version":3,"file":"loadingUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/loadingUtils.ts"],"sourcesContent":["import { TableRow } from '../types/table'\nimport { FolderNodeMap } from '../types/table'\nimport { AttributeModel, LoadingTasks } from '../types'\n\n/**\n * Generates an array of placeholder rows for loading state\n * @param attribs - Attribute models used to populate empty attribute fields\n * @param count - Number of loading rows to generate (default: 50)\n * @returns Array of TableRow objects with loading state\n */\nexport const generateLoadingRows = (\n attribs: { name: string }[],\n count = 50,\n { type = 'folder', parentId }: { type?: string; parentId?: string } = {},\n): TableRow[] => {\n return new Array(count).fill(0).map(\n (_, index): TableRow => ({\n id: `loading-${type}-${index}-${parentId}`,\n name: 'Loading...',\n parentId: parentId,\n isLoading: true,\n label: 'Loading...',\n color: null,\n icon: null,\n img: null,\n entityType: type,\n ownAttrib: [],\n tags: [],\n subRows: [],\n path: '',\n attrib: attribs.reduce((acc: { [key: string]: null }, attrib) => {\n acc[attrib.name] = null\n return acc\n }, {}),\n }),\n )\n}\n\n/**\n * Generates an array of dummy attribute models for loading states\n * @param count - Number of dummy attributes to generate (default: 10)\n * @returns Array of AttributeModel objects\n */\nexport const generateDummyAttributes = (count = 10): AttributeModel[] => {\n return Array(count)\n .fill(null)\n .map((_, i): AttributeModel => {\n return {\n name: `loading-attribute${i}`,\n scope: ['folder', 'task'],\n data: {\n type: 'string',\n },\n position: i,\n }\n })\n}\n\n/**\n * Parameters for determineLoadingTaskFolders function\n */\nexport type DetermineLoadingTaskFoldersParams = {\n expandedFoldersTasks: { folderId: string | null }[]\n expandedParentIds: string[]\n foldersMap: FolderNodeMap\n}\n\n/**\n * Determines which folders are currently loading tasks\n * @param params - Object containing parameters for determining loading folders\n * @returns Array of folder IDs that are in loading state\n */\nexport const determineLoadingTaskFolders = ({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n}: DetermineLoadingTaskFoldersParams): LoadingTasks => {\n // find the folderIds that are being fetched (not the ones that are already loaded)\n const folderIds = expandedFoldersTasks.map((task) => task.folderId)\n const expandedParentIdsThatHaveTasks = expandedParentIds.filter(\n (id) => foldersMap.get(id)?.hasTasks,\n )\n const folderIdsSet = new Set(folderIds)\n const loadingParentIds = new Set<string>()\n for (const folderId of expandedParentIdsThatHaveTasks) {\n if (!folderIdsSet.has(folderId)) {\n loadingParentIds.add(folderId)\n }\n }\n\n const loadingTasks: LoadingTasks = {}\n for (const folderId of loadingParentIds) {\n // find the folder by id\n const folder = foldersMap.get(folderId)\n if (folder) {\n loadingTasks[folderId] = folder.taskNames?.length || 0\n }\n }\n\n return loadingTasks\n}\n"],"names":["_a"],"mappings":"AAUa,MAAA,sBAAsB,CACjC,SACA,QAAQ,IACR,EAAE,OAAO,UAAU,SAAmD,IAAA,OACvD;AACf,SAAO,IAAI,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE;AAAA,IAC9B,CAAC,GAAG,WAAqB;AAAA,MACvB,IAAI,WAAW,IAAI,IAAI,KAAK,IAAI,QAAQ;AAAA,MACxC,MAAM;AAAA,MACN;AAAA,MACA,WAAW;AAAA,MACX,OAAO;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,WAAW,CAAC;AAAA,MACZ,MAAM,CAAC;AAAA,MACP,SAAS,CAAC;AAAA,MACV,MAAM;AAAA,MACN,QAAQ,QAAQ,OAAO,CAAC,KAA8B,WAAW;AAC3D,YAAA,OAAO,IAAI,IAAI;AACZ,eAAA;AAAA,MAAA,GACN,CAAE,CAAA;AAAA,IACP;AAAA,EACF;AACF;AAOa,MAAA,0BAA0B,CAAC,QAAQ,OAAyB;AAChE,SAAA,MAAM,KAAK,EACf,KAAK,IAAI,EACT,IAAI,CAAC,GAAG,MAAsB;AACtB,WAAA;AAAA,MACL,MAAM,oBAAoB,CAAC;AAAA,MAC3B,OAAO,CAAC,UAAU,MAAM;AAAA,MACxB,MAAM;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,MACA,UAAU;AAAA,IACZ;AAAA,EAAA,CACD;AACL;AAgBO,MAAM,8BAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AACF,MAAuD;AAlE1C;AAoEX,QAAM,YAAY,qBAAqB,IAAI,CAAC,SAAS,KAAK,QAAQ;AAClE,QAAM,iCAAiC,kBAAkB;AAAA,IACvD,CAAC,OAAO;AAtEC,UAAAA;AAsED,cAAAA,MAAA,WAAW,IAAI,EAAE,MAAjB,gBAAAA,IAAoB;AAAA;AAAA,EAC9B;AACM,QAAA,eAAe,IAAI,IAAI,SAAS;AAChC,QAAA,uCAAuB,IAAY;AACzC,aAAW,YAAY,gCAAgC;AACrD,QAAI,CAAC,aAAa,IAAI,QAAQ,GAAG;AAC/B,uBAAiB,IAAI,QAAQ;AAAA,IAAA;AAAA,EAC/B;AAGF,QAAM,eAA6B,CAAC;AACpC,aAAW,YAAY,kBAAkB;AAEjC,UAAA,SAAS,WAAW,IAAI,QAAQ;AACtC,QAAI,QAAQ;AACV,mBAAa,QAAQ,MAAI,YAAO,cAAP,mBAAkB,WAAU;AAAA,IAAA;AAAA,EACvD;AAGK,SAAA;AACT;"}
1
+ {"version":3,"file":"loadingUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/loadingUtils.ts"],"sourcesContent":["import { TableRow } from '../types/table'\nimport { FolderNodeMap } from '../types/table'\nimport { AttributeModel, LoadingTasks } from '../types'\n\n/**\n * Generates an array of placeholder rows for loading state\n * @param attribs - Attribute models used to populate empty attribute fields\n * @param count - Number of loading rows to generate (default: 50)\n * @returns Array of TableRow objects with loading state\n */\nexport const generateLoadingRows = (\n attribs: { name: string }[],\n count = 50,\n { type = 'folder', parentId }: { type?: string; parentId?: string } = {},\n): TableRow[] => {\n return new Array(count).fill(0).map(\n (_, index): TableRow => ({\n id: `loading-${type}-${index}-${parentId}`,\n name: 'Loading...',\n status: 'Loading...',\n parentId: parentId,\n isLoading: true,\n label: 'Loading...',\n color: null,\n icon: null,\n img: null,\n entityType: type,\n ownAttrib: [],\n tags: [],\n subRows: [],\n path: '',\n attrib: attribs.reduce((acc: { [key: string]: null }, attrib) => {\n acc[attrib.name] = null\n return acc\n }, {}),\n }),\n )\n}\n\n/**\n * Generates an array of dummy attribute models for loading states\n * @param count - Number of dummy attributes to generate (default: 10)\n * @returns Array of AttributeModel objects\n */\nexport const generateDummyAttributes = (count = 10): AttributeModel[] => {\n return Array(count)\n .fill(null)\n .map((_, i): AttributeModel => {\n return {\n name: `loading-attribute${i}`,\n scope: ['folder', 'task'],\n data: {\n type: 'string',\n },\n position: i,\n }\n })\n}\n\n/**\n * Parameters for determineLoadingTaskFolders function\n */\nexport type DetermineLoadingTaskFoldersParams = {\n expandedFoldersTasks: { folderId: string | null }[]\n expandedParentIds: string[]\n foldersMap: FolderNodeMap\n}\n\n/**\n * Determines which folders are currently loading tasks\n * @param params - Object containing parameters for determining loading folders\n * @returns Array of folder IDs that are in loading state\n */\nexport const determineLoadingTaskFolders = ({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n}: DetermineLoadingTaskFoldersParams): LoadingTasks => {\n // find the folderIds that are being fetched (not the ones that are already loaded)\n const folderIds = expandedFoldersTasks.map((task) => task.folderId)\n const expandedParentIdsThatHaveTasks = expandedParentIds.filter(\n (id) => foldersMap.get(id)?.hasTasks,\n )\n const folderIdsSet = new Set(folderIds)\n const loadingParentIds = new Set<string>()\n for (const folderId of expandedParentIdsThatHaveTasks) {\n if (!folderIdsSet.has(folderId)) {\n loadingParentIds.add(folderId)\n }\n }\n\n const loadingTasks: LoadingTasks = {}\n for (const folderId of loadingParentIds) {\n // find the folder by id\n const folder = foldersMap.get(folderId)\n if (folder) {\n loadingTasks[folderId] = folder.taskNames?.length || 0\n }\n }\n\n return loadingTasks\n}\n"],"names":["_a"],"mappings":"AAUa,MAAA,sBAAsB,CACjC,SACA,QAAQ,IACR,EAAE,OAAO,UAAU,SAAmD,IAAA,OACvD;AACf,SAAO,IAAI,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE;AAAA,IAC9B,CAAC,GAAG,WAAqB;AAAA,MACvB,IAAI,WAAW,IAAI,IAAI,KAAK,IAAI,QAAQ;AAAA,MACxC,MAAM;AAAA,MACN,QAAQ;AAAA,MACR;AAAA,MACA,WAAW;AAAA,MACX,OAAO;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,WAAW,CAAC;AAAA,MACZ,MAAM,CAAC;AAAA,MACP,SAAS,CAAC;AAAA,MACV,MAAM;AAAA,MACN,QAAQ,QAAQ,OAAO,CAAC,KAA8B,WAAW;AAC3D,YAAA,OAAO,IAAI,IAAI;AACZ,eAAA;AAAA,MAAA,GACN,CAAE,CAAA;AAAA,IACP;AAAA,EACF;AACF;AAOa,MAAA,0BAA0B,CAAC,QAAQ,OAAyB;AAChE,SAAA,MAAM,KAAK,EACf,KAAK,IAAI,EACT,IAAI,CAAC,GAAG,MAAsB;AACtB,WAAA;AAAA,MACL,MAAM,oBAAoB,CAAC;AAAA,MAC3B,OAAO,CAAC,UAAU,MAAM;AAAA,MACxB,MAAM;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,MACA,UAAU;AAAA,IACZ;AAAA,EAAA,CACD;AACL;AAgBO,MAAM,8BAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AACF,MAAuD;AAnE1C;AAqEX,QAAM,YAAY,qBAAqB,IAAI,CAAC,SAAS,KAAK,QAAQ;AAClE,QAAM,iCAAiC,kBAAkB;AAAA,IACvD,CAAC,OAAO;AAvEC,UAAAA;AAuED,cAAAA,MAAA,WAAW,IAAI,EAAE,MAAjB,gBAAAA,IAAoB;AAAA;AAAA,EAC9B;AACM,QAAA,eAAe,IAAI,IAAI,SAAS;AAChC,QAAA,uCAAuB,IAAY;AACzC,aAAW,YAAY,gCAAgC;AACrD,QAAI,CAAC,aAAa,IAAI,QAAQ,GAAG;AAC/B,uBAAiB,IAAI,QAAQ;AAAA,IAAA;AAAA,EAC/B;AAGF,QAAM,eAA6B,CAAC;AACpC,aAAW,YAAY,kBAAkB;AAEjC,UAAA,SAAS,WAAW,IAAI,QAAQ;AACtC,QAAI,QAAQ;AACV,mBAAa,QAAQ,MAAI,YAAO,cAAP,mBAAkB,WAAU;AAAA,IAAA;AAAA,EACvD;AAGK,SAAA;AACT;"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ const validateUpdateEntities = (entities = [], attribFields) => {
3
+ console.log(entities);
4
+ for (const { isAttrib, value: rawValue, field } of entities) {
5
+ if (!isAttrib) continue;
6
+ const attribute = attribFields.find((attr) => attr.name === field);
7
+ if (!attribute) continue;
8
+ let value = rawValue;
9
+ const { type } = attribute.data;
10
+ if (type === "integer" || type === "float") {
11
+ if (typeof rawValue === "string") {
12
+ if (rawValue.trim() === "" || isNaN(Number(rawValue))) {
13
+ throw new Error(`“${field}” must be a valid number`);
14
+ }
15
+ value = type === "integer" ? parseInt(rawValue, 10) : parseFloat(rawValue);
16
+ } else if (typeof rawValue !== "number") {
17
+ throw new Error(`“${field}” must be a valid number`);
18
+ }
19
+ }
20
+ const validationKeys = [
21
+ "ge",
22
+ "gt",
23
+ "le",
24
+ "lt",
25
+ "minLength",
26
+ "maxLength",
27
+ "minItems",
28
+ "maxItems"
29
+ ];
30
+ const validationValues = Object.entries(attribute.data).reduce((acc, [key, v]) => {
31
+ if (validationKeys.includes(key)) acc[key] = v;
32
+ return acc;
33
+ }, {});
34
+ const { ge, gt, le, lt, minLength, maxLength, minItems, maxItems } = validationValues;
35
+ const pattern = attribute.data.regex;
36
+ if (typeof value === "number") {
37
+ if (ge != null && value < ge) throw new Error(`“${field}” must be ≥ ${ge}`);
38
+ if (gt != null && value <= gt) throw new Error(`“${field}” must be > ${gt}`);
39
+ if (le != null && value > le) throw new Error(`“${field}” must be ≤ ${le}`);
40
+ if (lt != null && value >= lt) throw new Error(`“${field}” must be < ${lt}`);
41
+ } else if (typeof value === "string") {
42
+ if (minLength != null && value.length < minLength)
43
+ throw new Error(`“${field}” length must be ≥ ${minLength}`);
44
+ if (maxLength != null && value.length > maxLength)
45
+ throw new Error(`“${field}” length must be ≤ ${maxLength}`);
46
+ if (pattern && !new RegExp(pattern).test(value))
47
+ throw new Error(`“${field}” must match pattern ${pattern}`);
48
+ } else if (Array.isArray(value)) {
49
+ if (minItems != null && value.length < minItems)
50
+ throw new Error(`“${field}” items must be ≥ ${minItems}`);
51
+ if (maxItems != null && value.length > maxItems)
52
+ throw new Error(`“${field}” items must be ≤ ${maxItems}`);
53
+ }
54
+ }
55
+ };
56
+ module.exports = validateUpdateEntities;
57
+ //# sourceMappingURL=validateUpdateEntities.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateUpdateEntities.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/validateUpdateEntities.ts"],"sourcesContent":["import { AttributeData, ProjectTableAttribute } from '../types'\nimport { EntityUpdate } from '../hooks/useUpdateTableData'\n\nconst validateUpdateEntities = (\n entities: EntityUpdate[] = [],\n attribFields: ProjectTableAttribute[],\n) => {\n console.log(entities)\n // first validate the values are correct\n for (const { isAttrib, value: rawValue, field } of entities) {\n if (!isAttrib) continue\n const attribute = attribFields.find((attr) => attr.name === field)\n if (!attribute) continue\n\n // coerce numeric strings into numbers for integer/float types or fail\n let value: any = rawValue\n const { type } = attribute.data\n if (type === 'integer' || type === 'float') {\n if (typeof rawValue === 'string') {\n // empty or non‑numeric strings are invalid\n if (rawValue.trim() === '' || isNaN(Number(rawValue))) {\n throw new Error(`“${field}” must be a valid number`)\n }\n value = type === 'integer' ? parseInt(rawValue, 10) : parseFloat(rawValue)\n } else if (typeof rawValue !== 'number') {\n // any other type is invalid\n throw new Error(`“${field}” must be a valid number`)\n }\n }\n\n // collect numeric rules from attribute.data\n const validationKeys: (keyof AttributeData)[] = [\n 'ge',\n 'gt',\n 'le',\n 'lt',\n 'minLength',\n 'maxLength',\n 'minItems',\n 'maxItems',\n ]\n const validationValues = (\n Object.entries(attribute.data) as [keyof AttributeData, any][]\n ).reduce((acc, [key, v]) => {\n if (validationKeys.includes(key)) acc[key] = v as number\n return acc\n }, {} as Record<keyof AttributeData, number>)\n\n const { ge, gt, le, lt, minLength, maxLength, minItems, maxItems } = validationValues\n const pattern = attribute.data.regex\n\n if (typeof value === 'number') {\n if (ge != null && value < ge) throw new Error(`“${field}” must be ≥ ${ge}`)\n if (gt != null && value <= gt) throw new Error(`“${field}” must be > ${gt}`)\n if (le != null && value > le) throw new Error(`“${field}” must be ≤ ${le}`)\n if (lt != null && value >= lt) throw new Error(`“${field}” must be < ${lt}`)\n } else if (typeof value === 'string') {\n if (minLength != null && value.length < minLength)\n throw new Error(`“${field}” length must be ≥ ${minLength}`)\n if (maxLength != null && value.length > maxLength)\n throw new Error(`“${field}” length must be ≤ ${maxLength}`)\n if (pattern && !new RegExp(pattern).test(value))\n throw new Error(`“${field}” must match pattern ${pattern}`)\n } else if (Array.isArray(value)) {\n if (minItems != null && value.length < minItems)\n throw new Error(`“${field}” items must be ≥ ${minItems}`)\n if (maxItems != null && value.length > maxItems)\n throw new Error(`“${field}” items must be ≤ ${maxItems}`)\n }\n }\n}\n\nexport default validateUpdateEntities\n"],"names":[],"mappings":";AAGA,MAAM,yBAAyB,CAC7B,WAA2B,IAC3B,iBACG;AACH,UAAQ,IAAI,QAAQ;AAEpB,aAAW,EAAE,UAAU,OAAO,UAAU,WAAW,UAAU;AAC3D,QAAI,CAAC,SAAU;AACf,UAAM,YAAY,aAAa,KAAK,CAAC,SAAS,KAAK,SAAS,KAAK;AACjE,QAAI,CAAC,UAAW;AAGhB,QAAI,QAAa;AACX,UAAA,EAAE,SAAS,UAAU;AACvB,QAAA,SAAS,aAAa,SAAS,SAAS;AACtC,UAAA,OAAO,aAAa,UAAU;AAE5B,YAAA,SAAS,WAAW,MAAM,MAAM,OAAO,QAAQ,CAAC,GAAG;AACrD,gBAAM,IAAI,MAAM,IAAI,KAAK,0BAA0B;AAAA,QAAA;AAErD,gBAAQ,SAAS,YAAY,SAAS,UAAU,EAAE,IAAI,WAAW,QAAQ;AAAA,MAAA,WAChE,OAAO,aAAa,UAAU;AAEvC,cAAM,IAAI,MAAM,IAAI,KAAK,0BAA0B;AAAA,MAAA;AAAA,IACrD;AAIF,UAAM,iBAA0C;AAAA,MAC9C;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACA,UAAM,mBACJ,OAAO,QAAQ,UAAU,IAAI,EAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;AAC1B,UAAI,eAAe,SAAS,GAAG,EAAG,KAAI,GAAG,IAAI;AACtC,aAAA;AAAA,IACT,GAAG,EAAyC;AAEtC,UAAA,EAAE,IAAI,IAAI,IAAI,IAAI,WAAW,WAAW,UAAU,SAAA,IAAa;AAC/D,UAAA,UAAU,UAAU,KAAK;AAE3B,QAAA,OAAO,UAAU,UAAU;AACzB,UAAA,MAAM,QAAQ,QAAQ,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACtE,UAAA,MAAM,QAAQ,SAAS,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACvE,UAAA,MAAM,QAAQ,QAAQ,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACtE,UAAA,MAAM,QAAQ,SAAS,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AAAA,IAAA,WAClE,OAAO,UAAU,UAAU;AAChC,UAAA,aAAa,QAAQ,MAAM,SAAS;AACtC,cAAM,IAAI,MAAM,IAAI,KAAK,sBAAsB,SAAS,EAAE;AACxD,UAAA,aAAa,QAAQ,MAAM,SAAS;AACtC,cAAM,IAAI,MAAM,IAAI,KAAK,sBAAsB,SAAS,EAAE;AAC5D,UAAI,WAAW,CAAC,IAAI,OAAO,OAAO,EAAE,KAAK,KAAK;AAC5C,cAAM,IAAI,MAAM,IAAI,KAAK,wBAAwB,OAAO,EAAE;AAAA,IACnD,WAAA,MAAM,QAAQ,KAAK,GAAG;AAC3B,UAAA,YAAY,QAAQ,MAAM,SAAS;AACrC,cAAM,IAAI,MAAM,IAAI,KAAK,qBAAqB,QAAQ,EAAE;AACtD,UAAA,YAAY,QAAQ,MAAM,SAAS;AACrC,cAAM,IAAI,MAAM,IAAI,KAAK,qBAAqB,QAAQ,EAAE;AAAA,IAAA;AAAA,EAC5D;AAEJ;;"}
@@ -0,0 +1,58 @@
1
+ const validateUpdateEntities = (entities = [], attribFields) => {
2
+ console.log(entities);
3
+ for (const { isAttrib, value: rawValue, field } of entities) {
4
+ if (!isAttrib) continue;
5
+ const attribute = attribFields.find((attr) => attr.name === field);
6
+ if (!attribute) continue;
7
+ let value = rawValue;
8
+ const { type } = attribute.data;
9
+ if (type === "integer" || type === "float") {
10
+ if (typeof rawValue === "string") {
11
+ if (rawValue.trim() === "" || isNaN(Number(rawValue))) {
12
+ throw new Error(`“${field}” must be a valid number`);
13
+ }
14
+ value = type === "integer" ? parseInt(rawValue, 10) : parseFloat(rawValue);
15
+ } else if (typeof rawValue !== "number") {
16
+ throw new Error(`“${field}” must be a valid number`);
17
+ }
18
+ }
19
+ const validationKeys = [
20
+ "ge",
21
+ "gt",
22
+ "le",
23
+ "lt",
24
+ "minLength",
25
+ "maxLength",
26
+ "minItems",
27
+ "maxItems"
28
+ ];
29
+ const validationValues = Object.entries(attribute.data).reduce((acc, [key, v]) => {
30
+ if (validationKeys.includes(key)) acc[key] = v;
31
+ return acc;
32
+ }, {});
33
+ const { ge, gt, le, lt, minLength, maxLength, minItems, maxItems } = validationValues;
34
+ const pattern = attribute.data.regex;
35
+ if (typeof value === "number") {
36
+ if (ge != null && value < ge) throw new Error(`“${field}” must be ≥ ${ge}`);
37
+ if (gt != null && value <= gt) throw new Error(`“${field}” must be > ${gt}`);
38
+ if (le != null && value > le) throw new Error(`“${field}” must be ≤ ${le}`);
39
+ if (lt != null && value >= lt) throw new Error(`“${field}” must be < ${lt}`);
40
+ } else if (typeof value === "string") {
41
+ if (minLength != null && value.length < minLength)
42
+ throw new Error(`“${field}” length must be ≥ ${minLength}`);
43
+ if (maxLength != null && value.length > maxLength)
44
+ throw new Error(`“${field}” length must be ≤ ${maxLength}`);
45
+ if (pattern && !new RegExp(pattern).test(value))
46
+ throw new Error(`“${field}” must match pattern ${pattern}`);
47
+ } else if (Array.isArray(value)) {
48
+ if (minItems != null && value.length < minItems)
49
+ throw new Error(`“${field}” items must be ≥ ${minItems}`);
50
+ if (maxItems != null && value.length > maxItems)
51
+ throw new Error(`“${field}” items must be ≤ ${maxItems}`);
52
+ }
53
+ }
54
+ };
55
+ export {
56
+ validateUpdateEntities as default
57
+ };
58
+ //# sourceMappingURL=validateUpdateEntities.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateUpdateEntities.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/validateUpdateEntities.ts"],"sourcesContent":["import { AttributeData, ProjectTableAttribute } from '../types'\nimport { EntityUpdate } from '../hooks/useUpdateTableData'\n\nconst validateUpdateEntities = (\n entities: EntityUpdate[] = [],\n attribFields: ProjectTableAttribute[],\n) => {\n console.log(entities)\n // first validate the values are correct\n for (const { isAttrib, value: rawValue, field } of entities) {\n if (!isAttrib) continue\n const attribute = attribFields.find((attr) => attr.name === field)\n if (!attribute) continue\n\n // coerce numeric strings into numbers for integer/float types or fail\n let value: any = rawValue\n const { type } = attribute.data\n if (type === 'integer' || type === 'float') {\n if (typeof rawValue === 'string') {\n // empty or non‑numeric strings are invalid\n if (rawValue.trim() === '' || isNaN(Number(rawValue))) {\n throw new Error(`“${field}” must be a valid number`)\n }\n value = type === 'integer' ? parseInt(rawValue, 10) : parseFloat(rawValue)\n } else if (typeof rawValue !== 'number') {\n // any other type is invalid\n throw new Error(`“${field}” must be a valid number`)\n }\n }\n\n // collect numeric rules from attribute.data\n const validationKeys: (keyof AttributeData)[] = [\n 'ge',\n 'gt',\n 'le',\n 'lt',\n 'minLength',\n 'maxLength',\n 'minItems',\n 'maxItems',\n ]\n const validationValues = (\n Object.entries(attribute.data) as [keyof AttributeData, any][]\n ).reduce((acc, [key, v]) => {\n if (validationKeys.includes(key)) acc[key] = v as number\n return acc\n }, {} as Record<keyof AttributeData, number>)\n\n const { ge, gt, le, lt, minLength, maxLength, minItems, maxItems } = validationValues\n const pattern = attribute.data.regex\n\n if (typeof value === 'number') {\n if (ge != null && value < ge) throw new Error(`“${field}” must be ≥ ${ge}`)\n if (gt != null && value <= gt) throw new Error(`“${field}” must be > ${gt}`)\n if (le != null && value > le) throw new Error(`“${field}” must be ≤ ${le}`)\n if (lt != null && value >= lt) throw new Error(`“${field}” must be < ${lt}`)\n } else if (typeof value === 'string') {\n if (minLength != null && value.length < minLength)\n throw new Error(`“${field}” length must be ≥ ${minLength}`)\n if (maxLength != null && value.length > maxLength)\n throw new Error(`“${field}” length must be ≤ ${maxLength}`)\n if (pattern && !new RegExp(pattern).test(value))\n throw new Error(`“${field}” must match pattern ${pattern}`)\n } else if (Array.isArray(value)) {\n if (minItems != null && value.length < minItems)\n throw new Error(`“${field}” items must be ≥ ${minItems}`)\n if (maxItems != null && value.length > maxItems)\n throw new Error(`“${field}” items must be ≤ ${maxItems}`)\n }\n }\n}\n\nexport default validateUpdateEntities\n"],"names":[],"mappings":"AAGA,MAAM,yBAAyB,CAC7B,WAA2B,IAC3B,iBACG;AACH,UAAQ,IAAI,QAAQ;AAEpB,aAAW,EAAE,UAAU,OAAO,UAAU,WAAW,UAAU;AAC3D,QAAI,CAAC,SAAU;AACf,UAAM,YAAY,aAAa,KAAK,CAAC,SAAS,KAAK,SAAS,KAAK;AACjE,QAAI,CAAC,UAAW;AAGhB,QAAI,QAAa;AACX,UAAA,EAAE,SAAS,UAAU;AACvB,QAAA,SAAS,aAAa,SAAS,SAAS;AACtC,UAAA,OAAO,aAAa,UAAU;AAE5B,YAAA,SAAS,WAAW,MAAM,MAAM,OAAO,QAAQ,CAAC,GAAG;AACrD,gBAAM,IAAI,MAAM,IAAI,KAAK,0BAA0B;AAAA,QAAA;AAErD,gBAAQ,SAAS,YAAY,SAAS,UAAU,EAAE,IAAI,WAAW,QAAQ;AAAA,MAAA,WAChE,OAAO,aAAa,UAAU;AAEvC,cAAM,IAAI,MAAM,IAAI,KAAK,0BAA0B;AAAA,MAAA;AAAA,IACrD;AAIF,UAAM,iBAA0C;AAAA,MAC9C;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACA,UAAM,mBACJ,OAAO,QAAQ,UAAU,IAAI,EAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;AAC1B,UAAI,eAAe,SAAS,GAAG,EAAG,KAAI,GAAG,IAAI;AACtC,aAAA;AAAA,IACT,GAAG,EAAyC;AAEtC,UAAA,EAAE,IAAI,IAAI,IAAI,IAAI,WAAW,WAAW,UAAU,SAAA,IAAa;AAC/D,UAAA,UAAU,UAAU,KAAK;AAE3B,QAAA,OAAO,UAAU,UAAU;AACzB,UAAA,MAAM,QAAQ,QAAQ,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACtE,UAAA,MAAM,QAAQ,SAAS,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACvE,UAAA,MAAM,QAAQ,QAAQ,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AACtE,UAAA,MAAM,QAAQ,SAAS,GAAI,OAAM,IAAI,MAAM,IAAI,KAAK,eAAe,EAAE,EAAE;AAAA,IAAA,WAClE,OAAO,UAAU,UAAU;AAChC,UAAA,aAAa,QAAQ,MAAM,SAAS;AACtC,cAAM,IAAI,MAAM,IAAI,KAAK,sBAAsB,SAAS,EAAE;AACxD,UAAA,aAAa,QAAQ,MAAM,SAAS;AACtC,cAAM,IAAI,MAAM,IAAI,KAAK,sBAAsB,SAAS,EAAE;AAC5D,UAAI,WAAW,CAAC,IAAI,OAAO,OAAO,EAAE,KAAK,KAAK;AAC5C,cAAM,IAAI,MAAM,IAAI,KAAK,wBAAwB,OAAO,EAAE;AAAA,IACnD,WAAA,MAAM,QAAQ,KAAK,GAAG;AAC3B,UAAA,YAAY,QAAQ,MAAM,SAAS;AACrC,cAAM,IAAI,MAAM,IAAI,KAAK,qBAAqB,QAAQ,EAAE;AACtD,UAAA,YAAY,QAAQ,MAAM,SAAS;AACrC,cAAM,IAAI,MAAM,IAAI,KAAK,qBAAqB,QAAQ,EAAE;AAAA,IAAA;AAAA,EAC5D;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\ninterface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["forwardRef","jsx"],"mappings":";;;;;AAIA,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BvB,MAAM,gBAAgBA,MAAA;AAAA,EAC3B,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,cAAc,GAAG,MAAM,GAAG,QAAQ;AAEzE,WAAAC,2BAAA,kBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,SAAS;AAAA,QACT,UAAU,CAAC,MAAM,SAAU,EAAE,OAA4B,OAAO;AAAA,QAChE;AAAA,QACA,MAAK;AAAA,QACL,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;;"}
1
+ {"version":3,"file":"BooleanWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["forwardRef","jsx"],"mappings":";;;;;AAIA,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BvB,MAAM,gBAAgBA,MAAA;AAAA,EAC3B,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,cAAc,GAAG,MAAM,GAAG,QAAQ;AAEzE,WAAAC,2BAAA,kBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,SAAS;AAAA,QACT,UAAU,CAAC,MAAM,SAAU,EAAE,OAA4B,OAAO;AAAA,QAChE;AAAA,QACA,MAAK;AAAA,QACL,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\ninterface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["jsx"],"mappings":";;;AAIA,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BvB,MAAM,gBAAgB;AAAA,EAC3B,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,cAAc,GAAG,MAAM,GAAG,QAAQ;AAEzE,WAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,SAAS;AAAA,QACT,UAAU,CAAC,MAAM,SAAU,EAAE,OAA4B,OAAO;AAAA,QAChE;AAAA,QACA,MAAK;AAAA,QACL,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"BooleanWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["jsx"],"mappings":";;;AAIA,MAAM,iBAAiB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BvB,MAAM,gBAAgB;AAAA,EAC3B,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,cAAc,GAAG,MAAM,GAAG,QAAQ;AAEzE,WAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,SAAS;AAAA,QACT,UAAU,CAAC,MAAM,SAAU,EAAE,OAA4B,OAAO;AAAA,QAChE;AAAA,QACA,MAAK;AAAA,QACL,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;"}
@@ -46,6 +46,7 @@ const EditorCellComponent = ({
46
46
  isReadOnly,
47
47
  enableCustomValues,
48
48
  onChange,
49
+ pt,
49
50
  ...props
50
51
  }) => {
51
52
  const ref = React.useRef(null);
@@ -104,6 +105,16 @@ const EditorCellComponent = ({
104
105
  }
105
106
  case !!options.length: {
106
107
  const enumValue = Array.isArray(value) ? value : [value];
108
+ if (isReadOnly) {
109
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
110
+ TextWidget.TextWidget,
111
+ {
112
+ value: enumValue.join(", "),
113
+ option: enumValue.length === 1 ? options.find((o) => o.value === enumValue[0]) : void 0,
114
+ ...sharedProps
115
+ }
116
+ );
117
+ }
107
118
  return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
108
119
  EnumWidget.EnumWidget,
109
120
  {
@@ -112,20 +123,37 @@ const EditorCellComponent = ({
112
123
  type,
113
124
  onOpen: () => !isReadOnly && setEditingCellId(cellId),
114
125
  enableCustomValues,
115
- ...sharedProps
126
+ ...sharedProps,
127
+ ...pt == null ? void 0 : pt.enum
116
128
  }
117
129
  );
118
130
  }
119
131
  case textTypes.includes(type):
120
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(TextWidget.TextWidget, { value, isInherited, ...sharedProps });
121
- case (type === "datetime" && value !== null && value !== void 0):
122
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(DateWidget.DateWidget, { value, isInherited, ...sharedProps });
132
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
133
+ TextWidget.TextWidget,
134
+ {
135
+ value,
136
+ isInherited,
137
+ ...sharedProps,
138
+ ...pt == null ? void 0 : pt.text
139
+ }
140
+ );
141
+ case type === "datetime":
142
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
143
+ DateWidget.DateWidget,
144
+ {
145
+ value: value ? value : void 0,
146
+ isInherited,
147
+ ...sharedProps,
148
+ ...pt == null ? void 0 : pt.date
149
+ }
150
+ );
123
151
  case type === "boolean":
124
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(BooleanWidget.BooleanWidget, { value, ...sharedProps });
152
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(BooleanWidget.BooleanWidget, { value, ...sharedProps, ...pt == null ? void 0 : pt.boolean });
125
153
  case isPlaceholder:
126
154
  return null;
127
155
  default:
128
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(TextWidget.TextWidget, { value, ...sharedProps });
156
+ return null;
129
157
  }
130
158
  }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed]);
131
159
  return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
@@ -1 +1 @@
1
- {"version":3,"file":"CellWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, memo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget } from './DateWidget'\nimport { EnumWidget } from './EnumWidget'\nimport { TextWidget, TextWidgetType } from './TextWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\ntype WidgetAttributeData = Pick<AttributeData, 'type'>\n\nexport type CellValue = string | number | boolean\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nconst EditorCellComponent: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n onChange,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => !isReadOnly && setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return <TextWidget value={value as string} isInherited={isInherited} {...sharedProps} />\n\n case type === 'datetime' && value !== null && value !== undefined:\n return <DateWidget value={value as string} isInherited={isInherited} {...sharedProps} />\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} />\n\n case isPlaceholder:\n return null\n\n default:\n // if the type is not recognized, fall back to the TextWidget\n return <TextWidget value={value as string} {...sharedProps} />\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, { inherited: isInherited && !isCurrentCellEditing })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n\n// Custom comparison function for memo\nfunction arePropsEqual(prevProps: EditorCellProps, nextProps: EditorCellProps) {\n // Only re-render if these props change\n return (\n prevProps.rowId === nextProps.rowId &&\n prevProps.columnId === nextProps.columnId &&\n prevProps.isCollapsed === nextProps.isCollapsed &&\n JSON.stringify(prevProps.value) === JSON.stringify(nextProps.value) &&\n prevProps?.attributeData?.type === nextProps?.attributeData?.type &&\n // Only check options length for list types to avoid deep comparison\n ((!prevProps?.attributeData?.type.includes('list') &&\n !nextProps?.attributeData?.type.includes('list')) ||\n prevProps.options?.length === nextProps.options?.length) &&\n prevProps.isInherited === nextProps.isInherited &&\n prevProps.enableCustomValues === nextProps.enableCustomValues &&\n prevProps.isReadOnly === nextProps.isReadOnly &&\n prevProps.isPlaceholder === nextProps.isPlaceholder &&\n prevProps.isFocused === nextProps.isFocused &&\n prevProps.isCollapsed === nextProps.isCollapsed\n )\n}\n\nexport const CellWidget = memo(EditorCellComponent, arePropsEqual)\n"],"names":["useRef","useCellEditing","useSelectionCellsContext","getCellId","useCallback","useMemo","jsx","CollapsedWidget","EnumWidget","TextWidget","DateWidget","BooleanWidget","memo"],"mappings":"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"}
1
+ {"version":3,"file":"CellWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, memo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget, BooleanWidgetProps } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget, DateWidgetProps } from './DateWidget'\nimport { EnumWidget, EnumWidgetProps } from './EnumWidget'\nimport { TextWidget, TextWidgetProps, TextWidgetType } from './TextWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\ntype WidgetAttributeData = Pick<AttributeData, 'type'>\n\nexport type CellValue = string | number | boolean\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n // options passthrough props\n pt?: {\n enum?: Partial<EnumWidgetProps>\n text?: Partial<TextWidgetProps>\n date?: Partial<DateWidgetProps>\n boolean?: Partial<BooleanWidgetProps>\n }\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nconst EditorCellComponent: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n onChange,\n pt,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n if (isReadOnly) {\n return (\n <TextWidget\n value={enumValue.join(', ')}\n option={\n enumValue.length === 1 ? options.find((o) => o.value === enumValue[0]) : undefined\n }\n {...sharedProps}\n />\n )\n }\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => !isReadOnly && setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n {...pt?.enum}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return (\n <TextWidget\n value={value as string}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.text}\n />\n )\n\n case type === 'datetime':\n return (\n <DateWidget\n value={value ? (value as string) : undefined}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.date}\n />\n )\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} {...pt?.boolean} />\n\n case isPlaceholder:\n return null\n\n default:\n // TODO: We should not allow editing unrecognized types\n // At this point, only list_of_strings without proper options is unrecognized\n // (tags if not tags are specified in anatomy) and in that case, validation\n // on the server fails with a string value. Unless we have a widget that\n // accepts a string value AND options at the same time we shouldn't show\n // any edit widget\n\n //console.log(`Unrecognized type \"${type}\" for cell ${cellId}.`)\n return null\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, { inherited: isInherited && !isCurrentCellEditing })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n\n// Custom comparison function for memo\nfunction arePropsEqual(prevProps: EditorCellProps, nextProps: EditorCellProps) {\n // Only re-render if these props change\n return (\n prevProps.rowId === nextProps.rowId &&\n prevProps.columnId === nextProps.columnId &&\n prevProps.isCollapsed === nextProps.isCollapsed &&\n JSON.stringify(prevProps.value) === JSON.stringify(nextProps.value) &&\n prevProps?.attributeData?.type === nextProps?.attributeData?.type &&\n // Only check options length for list types to avoid deep comparison\n ((!prevProps?.attributeData?.type.includes('list') &&\n !nextProps?.attributeData?.type.includes('list')) ||\n prevProps.options?.length === nextProps.options?.length) &&\n prevProps.isInherited === nextProps.isInherited &&\n prevProps.enableCustomValues === nextProps.enableCustomValues &&\n prevProps.isReadOnly === nextProps.isReadOnly &&\n prevProps.isPlaceholder === nextProps.isPlaceholder &&\n prevProps.isFocused === nextProps.isFocused &&\n prevProps.isCollapsed === nextProps.isCollapsed\n )\n}\n\nexport const CellWidget = memo(EditorCellComponent, arePropsEqual)\n"],"names":["useRef","useCellEditing","useSelectionCellsContext","getCellId","useCallback","useMemo","jsx","CollapsedWidget","TextWidget","EnumWidget","DateWidget","BooleanWidget","memo"],"mappings":"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"}