@ynput/ayon-frontend-shared 0.2.26 → 0.2.28

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 (367) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +25 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/Views.cjs.js +1 -1
  5. package/dist/Views.cjs.js.map +1 -1
  6. package/dist/Views.es.js +13 -11
  7. package/dist/Views.es.js.map +1 -1
  8. package/dist/api.cjs.js +1 -1
  9. package/dist/api.es.js +153 -151
  10. package/dist/components.cjs.js +1 -1
  11. package/dist/components.es.js +62 -51
  12. package/dist/components.es.js.map +1 -1
  13. package/dist/index.cjs.js +1 -1
  14. package/dist/index.es.js +12 -6
  15. package/dist/index.es.js.map +1 -1
  16. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  17. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  18. package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
  19. package/dist/shared/src/api/generated/users.es.js.map +1 -1
  20. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  21. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  22. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  23. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  24. package/dist/shared/src/api/queries/entityLists/getLists.es.js +142 -117
  25. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  26. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  27. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  28. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +110 -95
  29. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  30. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  31. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  32. package/dist/shared/src/api/queries/users/getUsers.es.js +21 -17
  33. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  34. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js +2 -0
  35. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js.map +1 -0
  36. package/dist/shared/src/components/AccessUser/AccessUser.es.js +33 -0
  37. package/dist/shared/src/components/AccessUser/AccessUser.es.js.map +1 -0
  38. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js +42 -0
  39. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js.map +1 -0
  40. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js +46 -0
  41. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js.map +1 -0
  42. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.cjs.js +34 -0
  43. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.cjs.js.map +1 -0
  44. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.es.js +46 -0
  45. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.es.js.map +1 -0
  46. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +20 -10
  47. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  48. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +81 -67
  49. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  50. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +3 -3
  51. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  52. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +59 -52
  53. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  54. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  55. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  56. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +5 -2
  57. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  58. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  59. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  60. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +5 -2
  61. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  62. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  63. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  64. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +5 -2
  65. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  66. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +2 -0
  67. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -0
  68. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +205 -0
  69. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -0
  70. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +2 -0
  71. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -0
  72. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +25 -0
  73. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -0
  74. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +3 -3
  75. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  76. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +5 -5
  77. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  78. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  79. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  80. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +5 -2
  81. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  82. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js +9 -0
  83. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js.map +1 -0
  84. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js +25 -0
  85. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js.map +1 -0
  86. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  87. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  88. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +7 -4
  89. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  90. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  91. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  92. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +18 -21
  93. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  94. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  95. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  96. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -2
  97. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  98. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  99. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  100. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -3
  101. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  102. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  103. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  104. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +5 -2
  105. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  106. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js +2 -0
  107. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js.map +1 -0
  108. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js +17 -0
  109. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js.map +1 -0
  110. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +2 -2
  111. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  112. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +5 -2
  113. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  114. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  115. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  116. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -2
  117. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  118. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  119. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  120. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -2
  121. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  122. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  123. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  124. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -2
  125. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  126. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  127. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  128. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +146 -157
  129. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  130. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js +7 -1
  131. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js.map +1 -1
  132. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js +13 -6
  133. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js.map +1 -1
  134. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  135. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  136. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -2
  137. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  138. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  139. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  140. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -3
  141. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  142. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  143. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  144. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +6 -3
  145. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  146. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  147. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  148. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +5 -2
  149. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  150. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  151. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  152. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +5 -2
  153. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  154. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  155. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  156. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +5 -2
  157. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  158. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  159. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  160. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +5 -2
  161. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  162. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  163. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  164. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +413 -396
  165. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  166. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +104 -25
  167. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  168. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +131 -52
  169. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  170. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  171. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  172. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +136 -129
  173. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  174. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +16 -53
  175. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  176. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +100 -120
  177. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  178. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  179. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  180. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -2
  181. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  182. package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.cjs.js +7 -3
  183. package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.cjs.js.map +1 -1
  184. package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.es.js +12 -8
  185. package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.es.js.map +1 -1
  186. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  187. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  188. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +5 -2
  189. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  190. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
  191. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  192. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +250 -235
  193. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  194. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  195. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  196. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +24 -21
  197. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  198. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  199. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  200. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +5 -2
  201. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  202. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.cjs.js.map +1 -1
  203. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.es.js.map +1 -1
  204. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  205. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  206. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +10 -10
  207. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  208. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  209. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  210. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +13 -9
  211. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  212. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  213. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  214. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +65 -60
  215. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  216. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  217. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  218. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +5 -2
  219. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  220. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  221. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  222. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +5 -2
  223. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  224. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  225. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  226. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +5 -2
  227. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  228. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  229. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  230. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +5 -2
  231. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  232. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  233. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  234. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +5 -2
  235. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  236. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  237. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  238. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +5 -2
  239. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  240. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  241. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  242. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +16 -13
  243. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  244. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js +1 -1
  245. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js.map +1 -1
  246. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js +41 -14
  247. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js.map +1 -1
  248. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  249. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  250. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +7 -7
  251. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  252. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  253. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  254. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +110 -104
  255. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  256. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js +2 -2
  257. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js.map +1 -1
  258. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js +8 -8
  259. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js.map +1 -1
  260. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
  261. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  262. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +44 -43
  263. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  264. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  265. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  266. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -4
  267. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  268. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  269. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  270. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -2
  271. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  272. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  273. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  274. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +118 -103
  275. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  276. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +16 -4
  277. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +13 -1
  279. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
  280. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
  281. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +62 -50
  283. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
  284. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  285. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  286. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.cjs.js +2 -0
  287. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.cjs.js.map +1 -0
  288. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.es.js +64 -0
  289. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.es.js.map +1 -0
  290. package/dist/shared/src/context/MenuContext.cjs.js +2 -0
  291. package/dist/shared/src/context/MenuContext.cjs.js.map +1 -0
  292. package/dist/shared/src/context/MenuContext.es.js +28 -0
  293. package/dist/shared/src/context/MenuContext.es.js.map +1 -0
  294. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  295. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  296. package/dist/shared/src/context/PowerpackContext.es.js +20 -15
  297. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  298. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  299. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  300. package/dist/shared/src/context/RemoteModulesContext.es.js +19 -19
  301. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  302. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  303. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  304. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +2 -0
  305. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +1 -0
  306. package/dist/src/components/Menu/MenuComponents/Menu.es.js +55 -0
  307. package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +1 -0
  308. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js +254 -0
  309. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js.map +1 -0
  310. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js +265 -0
  311. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js.map +1 -0
  312. package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js +2 -0
  313. package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js.map +1 -0
  314. package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js +80 -0
  315. package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js.map +1 -0
  316. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +2 -0
  317. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +1 -0
  318. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js +59 -0
  319. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +1 -0
  320. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +2 -0
  321. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +1 -0
  322. package/dist/src/components/Menu/MenuComponents/MenuList.es.js +112 -0
  323. package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +1 -0
  324. package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js +2 -0
  325. package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js.map +1 -0
  326. package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js +35 -0
  327. package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js.map +1 -0
  328. package/dist/types/api/generated/entityLists.d.ts +8 -8
  329. package/dist/types/api/generated/users.d.ts +18 -14
  330. package/dist/types/api/generated/views.d.ts +47 -9
  331. package/dist/types/api/queries/entityLists/getLists.d.ts +133 -0
  332. package/dist/types/api/queries/entityLists/types.d.ts +2 -1
  333. package/dist/types/api/queries/permissions/getPermissions.d.ts +22 -22
  334. package/dist/types/api/queries/users/getUsers.d.ts +132 -0
  335. package/dist/types/api/queries/users/updateUsers.d.ts +3 -3
  336. package/dist/types/components/AccessUser/AccessUser.d.ts +22 -0
  337. package/dist/types/components/AccessUser/AccessUser.styled.d.ts +1 -0
  338. package/dist/types/components/AccessUser/index.d.ts +1 -0
  339. package/dist/types/components/DetailsMetaData/DetailsMetaData.d.ts +8 -0
  340. package/dist/types/components/DetailsMetaData/index.d.ts +1 -0
  341. package/dist/types/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.d.ts +4 -0
  342. package/dist/types/components/ListAttributeForm/ListAttributeForm.d.ts +13 -0
  343. package/dist/types/components/ListAttributeForm/index.d.ts +1 -0
  344. package/dist/types/components/ListMetaData/ListMetaData.d.ts +8 -0
  345. package/dist/types/components/ListMetaData/index.d.ts +1 -0
  346. package/dist/types/components/Powerpack/RequiredPowerpackVersion.d.ts +5 -0
  347. package/dist/types/components/Powerpack/index.d.ts +1 -0
  348. package/dist/types/components/ShareOptionIcon/ShareOptionIcon.d.ts +10 -0
  349. package/dist/types/components/ShareOptionIcon/index.d.ts +2 -0
  350. package/dist/types/components/index.d.ts +4 -0
  351. package/dist/types/containers/DetailsPanel/DetailsPanel.styled.d.ts +7 -0
  352. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +3 -1
  353. package/dist/types/containers/ProjectTreeTable/components/ColumnHeaderMenu.d.ts +4 -1
  354. package/dist/types/containers/ProjectTreeTable/context/ProjectDataContext.d.ts +1 -0
  355. package/dist/types/containers/ProjectTreeTable/context/clipboard/clipboardTypes.d.ts +3 -1
  356. package/dist/types/containers/ProjectTreeTable/hooks/useAttributesList.d.ts +1 -0
  357. package/dist/types/containers/ProjectTreeTable/utils/getReadOnlyLists.d.ts +1 -1
  358. package/dist/types/containers/ProjectTreeTable/widgets/BooleanWidget.d.ts +1 -0
  359. package/dist/types/containers/ProjectTreeTable/widgets/EnumCellValue.d.ts +2 -2
  360. package/dist/types/containers/SimpleTable/SimpleTable.d.ts +3 -0
  361. package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +5 -1
  362. package/dist/types/containers/Views/hooks/pages/useReportsViewSettings.d.ts +11 -0
  363. package/dist/types/containers/Views/index.d.ts +6 -2
  364. package/dist/types/context/MenuContext.d.ts +12 -0
  365. package/dist/types/context/PowerpackContext.d.ts +1 -1
  366. package/dist/types/index.d.ts +1 -0
  367. package/package.json +1 -1
@@ -0,0 +1,59 @@
1
+ import { j as r } from "../../../../_virtual/jsx-runtime.es.js";
2
+ import { Icon as c, ShortcutTag as N } from "@ynput/ayon-react-components";
3
+ import { forwardRef as w } from "react";
4
+ import { Item as A, Img as M } from "./Menu.styled.es.js";
5
+ import { isArray as R } from "lodash";
6
+ import { Link as $ } from "react-router-dom";
7
+ import v from "clsx";
8
+ const E = w(
9
+ ({
10
+ label: t,
11
+ icon: e,
12
+ img: m,
13
+ highlighted: f,
14
+ notification: l,
15
+ selected: x,
16
+ danger: j,
17
+ items: p = [],
18
+ className: d,
19
+ isLink: o,
20
+ isDev: g,
21
+ shortcut: s,
22
+ disabled: h,
23
+ ...a
24
+ }, u) => {
25
+ const i = R(t) ? t : [t], n = /* @__PURE__ */ r.jsxs(
26
+ A,
27
+ {
28
+ ref: u,
29
+ className: v(
30
+ "menu-item",
31
+ {
32
+ highlighted: f,
33
+ selected: x,
34
+ notification: l,
35
+ danger: j,
36
+ dev: g,
37
+ disabled: h
38
+ },
39
+ d
40
+ ),
41
+ ...a,
42
+ label: i.join(", "),
43
+ children: [
44
+ e && /* @__PURE__ */ r.jsx(c, { icon: e }),
45
+ m && /* @__PURE__ */ r.jsx(M, { src: m, alt: `${t} icon` }),
46
+ i.map((I, y) => /* @__PURE__ */ r.jsx("span", { children: I }, y)),
47
+ s && /* @__PURE__ */ r.jsx(N, { align: "right", children: s }),
48
+ !!p.length && /* @__PURE__ */ r.jsx(c, { icon: "arrow_right", className: "more" })
49
+ ]
50
+ }
51
+ );
52
+ return o ? /* @__PURE__ */ r.jsx($, { to: o, target: a.target, children: n }) : n;
53
+ }
54
+ );
55
+ E.displayName = "MenuItem";
56
+ export {
57
+ E as default
58
+ };
59
+ //# sourceMappingURL=MenuItem.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItem.es.js","sources":["../../../../../../src/components/Menu/MenuComponents/MenuItem.jsx"],"sourcesContent":["import { Icon, ShortcutTag } from '@ynput/ayon-react-components'\nimport React, { forwardRef } from 'react'\nimport * as Styled from './Menu.styled'\nimport { isArray } from 'lodash'\nimport { Link } from 'react-router-dom'\nimport clsx from 'clsx'\n\nconst MenuItem = forwardRef(\n (\n {\n label,\n icon,\n img,\n highlighted,\n notification,\n selected,\n danger,\n items = [],\n className,\n isLink,\n isDev,\n shortcut,\n disabled,\n ...props\n },\n ref,\n ) => {\n const labelsArray = isArray(label) ? label : [label]\n\n const Item = (\n <Styled.Item\n ref={ref}\n className={clsx(\n 'menu-item',\n {\n highlighted: highlighted,\n selected: selected,\n notification: notification,\n danger: danger,\n dev: isDev,\n disabled: disabled,\n },\n className,\n )}\n {...props}\n label={labelsArray.join(', ')}\n >\n {icon && <Icon icon={icon} />}\n {img && <Styled.Img src={img} alt={`${label} icon`} />}\n {labelsArray.map((label, index) => (\n <span key={index}>{label}</span>\n ))}\n {shortcut && <ShortcutTag align={'right'}>{shortcut}</ShortcutTag>}\n {!!items.length && <Icon icon=\"arrow_right\" className=\"more\" />}\n </Styled.Item>\n )\n\n if (isLink) {\n return (\n <Link to={isLink} target={props.target}>\n {Item}\n </Link>\n )\n } else {\n return Item\n }\n },\n)\n\nMenuItem.displayName = 'MenuItem'\n\nexport default MenuItem\n"],"names":["MenuItem","forwardRef","label","icon","img","highlighted","notification","selected","danger","items","className","isLink","isDev","shortcut","disabled","props","ref","labelsArray","isArray","Item","jsxs","Styled.Item","clsx","jsx","Icon","Styled.Img","index","ShortcutTag","Link"],"mappings":";;;;;;;AAOA,MAAMA,IAAWC;AAAA,EACf,CACE;AAAA,IACE,OAAAC;AAAA,IACA,MAAAC;AAAA,IACA,KAAAC;AAAA,IACA,aAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,QAAAC;AAAA,IACA,OAAAC,IAAQ,CAAC;AAAA,IACT,WAAAC;AAAA,IACA,QAAAC;AAAA,IACA,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,KAELC,MACG;AACH,UAAMC,IAAcC,EAAQhB,CAAK,IAAIA,IAAQ,CAACA,CAAK,GAE7CiB,IACJC,gBAAAA,EAAA;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,KAAAL;AAAA,QACA,WAAWM;AAAA,UACT;AAAA,UACA;AAAA,YACE,aAAAjB;AAAA,YACA,UAAAE;AAAA,YACA,cAAAD;AAAA,YACA,QAAAE;AAAA,YACA,KAAKI;AAAA,YACL,UAAAE;AAAA,UACF;AAAA,UACAJ;AAAA,QACF;AAAA,QACC,GAAGK;AAAA,QACJ,OAAOE,EAAY,KAAK,IAAI;AAAA,QAE3B,UAAA;AAAA,UAAQd,KAAAoB,gBAAAA,EAAA,IAACC,KAAK,MAAArB,EAAY,CAAA;AAAA,UAC1BC,KAAQmB,gBAAAA,EAAA,IAAAE,GAAA,EAAW,KAAKrB,GAAK,KAAK,GAAGF,CAAK,SAAS;AAAA,UACnDe,EAAY,IAAI,CAACf,GAAOwB,4BACtB,QAAkB,EAAA,UAAAxB,EAAR,GAAAwB,CAAc,CAC1B;AAAA,UACAb,KAAYU,gBAAAA,EAAA,IAACI,GAAY,EAAA,OAAO,SAAU,UAASd,GAAA;AAAA,UACnD,CAAC,CAACJ,EAAM,gCAAWe,GAAK,EAAA,MAAK,eAAc,WAAU,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAC/D;AAGF,WAAIb,0BAECiB,GAAK,EAAA,IAAIjB,GAAQ,QAAQI,EAAM,QAC7B,UACHI,GAAA,IAGKA;AAAAA,EACT;AAEJ;AAEAnB,EAAS,cAAc;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const a=require("../../../../_virtual/jsx-runtime.cjs.js"),f=require("react"),P=require("./MenuItem.cjs.js"),S=require("@ynput/ayon-react-components"),w=require("./Menu.styled.cjs.js"),_=({items:q,handleClick:x,onSubMenu:l,subMenu:c,level:L,id:k="root-menu",parentRef:m,style:n,onClose:v,itemClassName:C,itemStyle:T,...$})=>{const d=f.useRef([]),i=f.useRef(null),[D,I]=f.useState((n==null?void 0:n.top)||0),p=(t,r,u)=>{!d.current[r]||!i.current||l&&l(t,{id:r,style:{top:d.current[r].offsetTop+((n==null?void 0:n.top)||0)-4,right:i.current.getBoundingClientRect().width+((n==null?void 0:n.right)||0)-12},items:u,level:L})},N=t=>{c&&l&&l(t,{id:parent,items:null})};return f.useEffect(()=>{if(c){const t=i.current.querySelectorAll("li, button")[0];t&&t.focus()}},[c]),f.useEffect(()=>{if(!i.current)return;const{top:t,height:r}=i.current.getBoundingClientRect(),u=window.innerHeight;if(t+r>u){const g=u-r-60;I(g)}},[i.current]),a.jsxRuntimeExports.jsx(w.MenuWrapper,{style:{paddingRight:c?16:0,...n,top:D},className:c?"sub-menu":"menu-list",id:k,onMouseLeave:N,...$,ref:i,children:a.jsxRuntimeExports.jsx(w.Menu,{children:q.filter(t=>!t.hidden).map((t,r)=>{if(t.node)return t.node;if((t==null?void 0:t.id)==="divider")return a.jsxRuntimeExports.jsx("hr",{},r);const{label:u,icon:g,img:b,highlighted:A,onClick:R,link:h,items:o=[],id:s,disableClose:B,selected:H,disabled:K,...j}=t;return a.jsxRuntimeExports.jsx(P,{tabIndex:0,label:u,icon:g,img:b,highlighted:A,items:o,selected:H,disabled:K,isLink:h,onClick:e=>o.length?p(e,s,o):x(e,R,h,B),onKeyDown:e=>{e.key==="Enter"&&(o.length?p(e,s,o):x(e,R,h));const M=!e.target.nextSibling;if(e.key==="Tab"&&M&&!e.shiftKey){e.preventDefault(),e.stopPropagation();const E=i.current.querySelectorAll("li, button")[0];E&&E.focus()}e.key==="Escape"&&c&&m&&(e.preventDefault(),e.stopPropagation(),m.focus(),v(s))},style:{paddingRight:o.length?"0":"16px",...T},ref:e=>d.current[s]=e,onMouseEnter:e=>p(e,s,o),onMouseLeave:e=>p(e,s,[]),className:`${C} ${j.className||""}`,...j,children:!!o.length&&a.jsxRuntimeExports.jsx(S.Icon,{icon:"arrow_right",style:{marginLeft:"auto"}})},`${s}-${r}`)})})})};module.exports=_;
2
+ //# sourceMappingURL=MenuList.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuList.cjs.js","sources":["../../../../../../src/components/Menu/MenuComponents/MenuList.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\n\nconst MenuList = ({\n items,\n handleClick,\n onSubMenu,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n onClose,\n itemClassName,\n itemStyle,\n ...props\n}) => {\n const itemRefs = useRef([])\n const menuRef = useRef(null)\n\n const [top, setTop] = useState(style?.top || 0)\n\n const handleSubMenu = (e, id, items) => {\n if (!itemRefs.current[id] || !menuRef.current) return\n onSubMenu &&\n onSubMenu(e, {\n id,\n style: {\n top: itemRefs.current[id].offsetTop + (style?.top || 0) - 4,\n right: menuRef.current.getBoundingClientRect().width + (style?.right || 0) - 12,\n },\n items,\n level: level,\n })\n }\n\n const handleMouseLeave = (e) => {\n if (subMenu) {\n onSubMenu && onSubMenu(e, { id: parent, items: null })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu) {\n const first = menuRef.current.querySelectorAll('li, button')[0]\n first && first.focus()\n }\n }, [subMenu])\n\n // check that the menu is not off the screen\n useEffect(() => {\n if (!menuRef.current) return\n const { top, height } = menuRef.current.getBoundingClientRect()\n const windowHeight = window.innerHeight\n if (top + height > windowHeight) {\n const newTop = windowHeight - height - 60\n setTop(newTop)\n }\n }, [menuRef.current])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingRight: subMenu ? 16 : 0, ...style, top }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider') return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n ...props\n } = item\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{ label, icon, img, highlighted, items, selected, disabled }}\n isLink={link}\n onClick={(e) =>\n items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n if (items.length) {\n handleSubMenu(e, id, items)\n } else {\n handleClick(e, onClick, link)\n }\n }\n const isLastChild = !e.target.nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current.querySelectorAll('li, button')[0]\n first && first.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n\nexport default MenuList\n"],"names":["MenuList","items","handleClick","onSubMenu","subMenu","level","id","parentRef","style","onClose","itemClassName","itemStyle","props","itemRefs","useRef","menuRef","top","setTop","useState","handleSubMenu","e","handleMouseLeave","useEffect","first","height","windowHeight","newTop","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","MenuItem","isLastChild","Icon"],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ import { j as f } from "../../../../_virtual/jsx-runtime.es.js";
2
+ import { useRef as L, useState as S, useEffect as R } from "react";
3
+ import M from "./MenuItem.es.js";
4
+ import { Icon as W } from "@ynput/ayon-react-components";
5
+ import { MenuWrapper as _, Menu as z } from "./Menu.styled.es.js";
6
+ const U = ({
7
+ items: k,
8
+ handleClick: h,
9
+ onSubMenu: u,
10
+ subMenu: c,
11
+ level: v,
12
+ id: C = "root-menu",
13
+ parentRef: m,
14
+ style: n,
15
+ onClose: E,
16
+ itemClassName: T,
17
+ itemStyle: $,
18
+ ...D
19
+ }) => {
20
+ const p = L([]), o = L(null), [I, N] = S((n == null ? void 0 : n.top) || 0), l = (e, r, a) => {
21
+ !p.current[r] || !o.current || u && u(e, {
22
+ id: r,
23
+ style: {
24
+ top: p.current[r].offsetTop + ((n == null ? void 0 : n.top) || 0) - 4,
25
+ right: o.current.getBoundingClientRect().width + ((n == null ? void 0 : n.right) || 0) - 12
26
+ },
27
+ items: a,
28
+ level: v
29
+ });
30
+ }, b = (e) => {
31
+ c && u && u(e, { id: parent, items: null });
32
+ };
33
+ return R(() => {
34
+ if (c) {
35
+ const e = o.current.querySelectorAll("li, button")[0];
36
+ e && e.focus();
37
+ }
38
+ }, [c]), R(() => {
39
+ if (!o.current) return;
40
+ const { top: e, height: r } = o.current.getBoundingClientRect(), a = window.innerHeight;
41
+ if (e + r > a) {
42
+ const d = a - r - 60;
43
+ N(d);
44
+ }
45
+ }, [o.current]), /* @__PURE__ */ f.jsx(
46
+ _,
47
+ {
48
+ style: { paddingRight: c ? 16 : 0, ...n, top: I },
49
+ className: c ? "sub-menu" : "menu-list",
50
+ id: C,
51
+ onMouseLeave: b,
52
+ ...D,
53
+ ref: o,
54
+ children: /* @__PURE__ */ f.jsx(z, { children: k.filter((e) => !e.hidden).map((e, r) => {
55
+ if (e.node)
56
+ return e.node;
57
+ if ((e == null ? void 0 : e.id) === "divider") return /* @__PURE__ */ f.jsx("hr", {}, r);
58
+ const {
59
+ label: a,
60
+ icon: d,
61
+ img: q,
62
+ highlighted: A,
63
+ onClick: x,
64
+ link: g,
65
+ items: i = [],
66
+ id: s,
67
+ disableClose: B,
68
+ selected: H,
69
+ disabled: K,
70
+ ...w
71
+ } = e;
72
+ return /* @__PURE__ */ f.jsx(
73
+ M,
74
+ {
75
+ tabIndex: 0,
76
+ label: a,
77
+ icon: d,
78
+ img: q,
79
+ highlighted: A,
80
+ items: i,
81
+ selected: H,
82
+ disabled: K,
83
+ isLink: g,
84
+ onClick: (t) => i.length ? l(t, s, i) : h(t, x, g, B),
85
+ onKeyDown: (t) => {
86
+ t.key === "Enter" && (i.length ? l(t, s, i) : h(t, x, g));
87
+ const P = !t.target.nextSibling;
88
+ if (t.key === "Tab" && P && !t.shiftKey) {
89
+ t.preventDefault(), t.stopPropagation();
90
+ const j = o.current.querySelectorAll("li, button")[0];
91
+ j && j.focus();
92
+ }
93
+ t.key === "Escape" && c && m && (t.preventDefault(), t.stopPropagation(), m.focus(), E(s));
94
+ },
95
+ style: { paddingRight: i.length ? "0" : "16px", ...$ },
96
+ ref: (t) => p.current[s] = t,
97
+ onMouseEnter: (t) => l(t, s, i),
98
+ onMouseLeave: (t) => l(t, s, []),
99
+ className: `${T} ${w.className || ""}`,
100
+ ...w,
101
+ children: !!i.length && /* @__PURE__ */ f.jsx(W, { icon: "arrow_right", style: { marginLeft: "auto" } })
102
+ },
103
+ `${s}-${r}`
104
+ );
105
+ }) })
106
+ }
107
+ );
108
+ };
109
+ export {
110
+ U as default
111
+ };
112
+ //# sourceMappingURL=MenuList.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuList.es.js","sources":["../../../../../../src/components/Menu/MenuComponents/MenuList.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\n\nconst MenuList = ({\n items,\n handleClick,\n onSubMenu,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n onClose,\n itemClassName,\n itemStyle,\n ...props\n}) => {\n const itemRefs = useRef([])\n const menuRef = useRef(null)\n\n const [top, setTop] = useState(style?.top || 0)\n\n const handleSubMenu = (e, id, items) => {\n if (!itemRefs.current[id] || !menuRef.current) return\n onSubMenu &&\n onSubMenu(e, {\n id,\n style: {\n top: itemRefs.current[id].offsetTop + (style?.top || 0) - 4,\n right: menuRef.current.getBoundingClientRect().width + (style?.right || 0) - 12,\n },\n items,\n level: level,\n })\n }\n\n const handleMouseLeave = (e) => {\n if (subMenu) {\n onSubMenu && onSubMenu(e, { id: parent, items: null })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu) {\n const first = menuRef.current.querySelectorAll('li, button')[0]\n first && first.focus()\n }\n }, [subMenu])\n\n // check that the menu is not off the screen\n useEffect(() => {\n if (!menuRef.current) return\n const { top, height } = menuRef.current.getBoundingClientRect()\n const windowHeight = window.innerHeight\n if (top + height > windowHeight) {\n const newTop = windowHeight - height - 60\n setTop(newTop)\n }\n }, [menuRef.current])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingRight: subMenu ? 16 : 0, ...style, top }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider') return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n ...props\n } = item\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{ label, icon, img, highlighted, items, selected, disabled }}\n isLink={link}\n onClick={(e) =>\n items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n if (items.length) {\n handleSubMenu(e, id, items)\n } else {\n handleClick(e, onClick, link)\n }\n }\n const isLastChild = !e.target.nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current.querySelectorAll('li, button')[0]\n first && first.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n\nexport default MenuList\n"],"names":["MenuList","items","handleClick","onSubMenu","subMenu","level","id","parentRef","style","onClose","itemClassName","itemStyle","props","itemRefs","useRef","menuRef","top","setTop","useState","handleSubMenu","handleMouseLeave","useEffect","first","height","windowHeight","newTop","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","MenuItem","e","isLastChild","Icon"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react");function a(c){if(!c)return null;const t=c.getBoundingClientRect(),o=200,r=300,f=-8,s=window.innerWidth,i=window.innerHeight;let e,l,n;const d=s-t.right,w=t.left;return d>=o+24?(n=-24,e=t.right+n):w>=o+24?(n=-48,e=t.left-o-n):(n=24,e=t.left+(t.width-o)/2,e<n?e=n:e+o>s-n&&(e=s-o-n)),l=t.top,l+r>i-n&&(l=t.bottom-r,l<n&&(l=i-r-n)),{top:l+f,left:e}}function h(c,t){const[o,r]=u.useState(null),f=u.useRef(null),s=u.useCallback(()=>{let i=c;if(!i&&t&&(i=document.getElementById(t)),!i){console.warn("Target element not found");return}const e=a(i);e&&r(e)},[c,t]);return u.useEffect(()=>{s();const i=()=>s();window.addEventListener("resize",i);const e=()=>s();return window.addEventListener("scroll",e),()=>{window.removeEventListener("resize",i),window.removeEventListener("scroll",e)}},[s]),{position:o,menuRef:f}}exports.useMenuPosition=h;
2
+ //# sourceMappingURL=useMenuPosition.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMenuPosition.cjs.js","sources":["../../../../../../src/components/Menu/MenuComponents/useMenuPosition.ts"],"sourcesContent":["import { useEffect, useRef, useState, useCallback } from 'react'\n\ninterface MenuPosition {\n top: number\n left: number\n}\n\nfunction calculateMenuPosition(\n targetElement: HTMLElement | null,\n): MenuPosition | null {\n if (!targetElement) return null\n \n const targetRect = targetElement.getBoundingClientRect()\n const menuWidth = 200\n const menuHeight = 300\n const topOffset = -8;\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n \n let left: number\n let top: number\n let padding: number\n \n // Check if there's enough space on the right side of the target\n const spaceOnRight = viewportWidth - targetRect.right\n const spaceOnLeft = targetRect.left\n \n if (spaceOnRight >= menuWidth + 24) {\n // Position to the right of target\n padding = -24\n left = targetRect.right + padding\n } else if (spaceOnLeft >= menuWidth + 24) {\n // Position to the left of target\n padding = -48\n left = targetRect.left - menuWidth - padding\n } else {\n // Not enough space on either side, center it with bounds checking\n padding = 24 // Default to positive padding for centering\n left = targetRect.left + (targetRect.width - menuWidth) / 2\n \n // Ensure it doesn't go off screen\n if (left < padding) {\n left = padding\n } else if (left + menuWidth > viewportWidth - padding) {\n left = viewportWidth - menuWidth - padding\n }\n }\n \n // Vertical positioning - try to align with top of target\n top = targetRect.top\n \n // Check if menu would go below viewport\n if (top + menuHeight > viewportHeight - padding) {\n // Position above the target instead\n top = targetRect.bottom - menuHeight\n \n // If still not enough space, position at bottom of viewport\n if (top < padding) {\n top = viewportHeight - menuHeight - padding\n }\n }\n \n return {\n top: top + topOffset,\n left,\n }\n}\n\ninterface UseMenuPositionReturn {\n position: MenuPosition | null\n menuRef: React.RefObject<HTMLDivElement>\n}\n\nexport function useMenuPosition(\n target: HTMLElement | null,\n targetId: string,\n): UseMenuPositionReturn {\n const [position, setPosition] = useState<MenuPosition | null>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n \n const updatePosition = useCallback(() => {\n let targetElement: HTMLElement | null = target\n \n if (!targetElement && targetId) {\n targetElement = document.getElementById(targetId)\n }\n \n if (!targetElement) {\n console.warn('Target element not found')\n return\n }\n \n const newPosition = calculateMenuPosition(targetElement)\n if (newPosition) {\n setPosition(newPosition)\n }\n }, [target, targetId])\n \n useEffect(() => {\n updatePosition()\n \n const handleResize = () => updatePosition()\n window.addEventListener('resize', handleResize)\n \n const handleScroll = () => updatePosition()\n window.addEventListener('scroll', handleScroll)\n \n return () => {\n window.removeEventListener('resize', handleResize)\n window.removeEventListener('scroll', handleScroll)\n }\n }, [updatePosition])\n \n return { position, menuRef }\n}\n"],"names":["calculateMenuPosition","targetElement","targetRect","menuWidth","menuHeight","topOffset","viewportWidth","viewportHeight","left","top","padding","spaceOnRight","spaceOnLeft","useMenuPosition","target","targetId","position","setPosition","useState","menuRef","useRef","updatePosition","useCallback","newPosition","useEffect","handleResize","handleScroll"],"mappings":"yGAOA,SAASA,EACPC,EACqB,CACjB,GAAA,CAACA,EAAsB,OAAA,KAErB,MAAAC,EAAaD,EAAc,sBAAsB,EACjDE,EAAY,IACZC,EAAa,IACbC,EAAY,GACZC,EAAgB,OAAO,WACvBC,EAAiB,OAAO,YAE1B,IAAAC,EACAC,EACAC,EAGE,MAAAC,EAAeL,EAAgBJ,EAAW,MAC1CU,EAAcV,EAAW,KAE3B,OAAAS,GAAgBR,EAAY,IAEpBO,EAAA,IACVF,EAAON,EAAW,MAAQQ,GACjBE,GAAeT,EAAY,IAE1BO,EAAA,IACHF,EAAAN,EAAW,KAAOC,EAAYO,IAG3BA,EAAA,GACVF,EAAON,EAAW,MAAQA,EAAW,MAAQC,GAAa,EAGtDK,EAAOE,EACFF,EAAAE,EACEF,EAAOL,EAAYG,EAAgBI,IAC5CF,EAAOF,EAAgBH,EAAYO,IAKvCD,EAAMP,EAAW,IAGbO,EAAML,EAAaG,EAAiBG,IAEtCD,EAAMP,EAAW,OAASE,EAGtBK,EAAMC,IACRD,EAAMF,EAAiBH,EAAaM,IAIjC,CACL,IAAKD,EAAMJ,EACX,KAAAG,CACF,CACF,CAOgB,SAAAK,EACdC,EACAC,EACuB,CACvB,KAAM,CAACC,EAAUC,CAAW,EAAIC,EAAAA,SAA8B,IAAI,EAC5DC,EAAUC,SAAuB,IAAI,EAErCC,EAAiBC,EAAAA,YAAY,IAAM,CACvC,IAAIrB,EAAoCa,EAMxC,GAJI,CAACb,GAAiBc,IACJd,EAAA,SAAS,eAAec,CAAQ,GAG9C,CAACd,EAAe,CAClB,QAAQ,KAAK,0BAA0B,EACvC,MAAA,CAGI,MAAAsB,EAAcvB,EAAsBC,CAAa,EACnDsB,GACFN,EAAYM,CAAW,CACzB,EACC,CAACT,EAAQC,CAAQ,CAAC,EAErBS,OAAAA,EAAAA,UAAU,IAAM,CACCH,EAAA,EAET,MAAAI,EAAe,IAAMJ,EAAe,EACnC,OAAA,iBAAiB,SAAUI,CAAY,EAExC,MAAAC,EAAe,IAAML,EAAe,EACnC,cAAA,iBAAiB,SAAUK,CAAY,EAEvC,IAAM,CACJ,OAAA,oBAAoB,SAAUD,CAAY,EAC1C,OAAA,oBAAoB,SAAUC,CAAY,CACnD,CAAA,EACC,CAACL,CAAc,CAAC,EAEZ,CAAE,SAAAL,EAAU,QAAAG,CAAQ,CAC7B"}
@@ -0,0 +1,35 @@
1
+ import { useState as w, useRef as a, useCallback as p, useEffect as h } from "react";
2
+ function m(r) {
3
+ if (!r) return null;
4
+ const t = r.getBoundingClientRect(), i = 200, c = 300, f = -8, s = window.innerWidth, o = window.innerHeight;
5
+ let e, l, n;
6
+ const u = s - t.right, d = t.left;
7
+ return u >= i + 24 ? (n = -24, e = t.right + n) : d >= i + 24 ? (n = -48, e = t.left - i - n) : (n = 24, e = t.left + (t.width - i) / 2, e < n ? e = n : e + i > s - n && (e = s - i - n)), l = t.top, l + c > o - n && (l = t.bottom - c, l < n && (l = o - c - n)), {
8
+ top: l + f,
9
+ left: e
10
+ };
11
+ }
12
+ function v(r, t) {
13
+ const [i, c] = w(null), f = a(null), s = p(() => {
14
+ let o = r;
15
+ if (!o && t && (o = document.getElementById(t)), !o) {
16
+ console.warn("Target element not found");
17
+ return;
18
+ }
19
+ const e = m(o);
20
+ e && c(e);
21
+ }, [r, t]);
22
+ return h(() => {
23
+ s();
24
+ const o = () => s();
25
+ window.addEventListener("resize", o);
26
+ const e = () => s();
27
+ return window.addEventListener("scroll", e), () => {
28
+ window.removeEventListener("resize", o), window.removeEventListener("scroll", e);
29
+ };
30
+ }, [s]), { position: i, menuRef: f };
31
+ }
32
+ export {
33
+ v as useMenuPosition
34
+ };
35
+ //# sourceMappingURL=useMenuPosition.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMenuPosition.es.js","sources":["../../../../../../src/components/Menu/MenuComponents/useMenuPosition.ts"],"sourcesContent":["import { useEffect, useRef, useState, useCallback } from 'react'\n\ninterface MenuPosition {\n top: number\n left: number\n}\n\nfunction calculateMenuPosition(\n targetElement: HTMLElement | null,\n): MenuPosition | null {\n if (!targetElement) return null\n \n const targetRect = targetElement.getBoundingClientRect()\n const menuWidth = 200\n const menuHeight = 300\n const topOffset = -8;\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n \n let left: number\n let top: number\n let padding: number\n \n // Check if there's enough space on the right side of the target\n const spaceOnRight = viewportWidth - targetRect.right\n const spaceOnLeft = targetRect.left\n \n if (spaceOnRight >= menuWidth + 24) {\n // Position to the right of target\n padding = -24\n left = targetRect.right + padding\n } else if (spaceOnLeft >= menuWidth + 24) {\n // Position to the left of target\n padding = -48\n left = targetRect.left - menuWidth - padding\n } else {\n // Not enough space on either side, center it with bounds checking\n padding = 24 // Default to positive padding for centering\n left = targetRect.left + (targetRect.width - menuWidth) / 2\n \n // Ensure it doesn't go off screen\n if (left < padding) {\n left = padding\n } else if (left + menuWidth > viewportWidth - padding) {\n left = viewportWidth - menuWidth - padding\n }\n }\n \n // Vertical positioning - try to align with top of target\n top = targetRect.top\n \n // Check if menu would go below viewport\n if (top + menuHeight > viewportHeight - padding) {\n // Position above the target instead\n top = targetRect.bottom - menuHeight\n \n // If still not enough space, position at bottom of viewport\n if (top < padding) {\n top = viewportHeight - menuHeight - padding\n }\n }\n \n return {\n top: top + topOffset,\n left,\n }\n}\n\ninterface UseMenuPositionReturn {\n position: MenuPosition | null\n menuRef: React.RefObject<HTMLDivElement>\n}\n\nexport function useMenuPosition(\n target: HTMLElement | null,\n targetId: string,\n): UseMenuPositionReturn {\n const [position, setPosition] = useState<MenuPosition | null>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n \n const updatePosition = useCallback(() => {\n let targetElement: HTMLElement | null = target\n \n if (!targetElement && targetId) {\n targetElement = document.getElementById(targetId)\n }\n \n if (!targetElement) {\n console.warn('Target element not found')\n return\n }\n \n const newPosition = calculateMenuPosition(targetElement)\n if (newPosition) {\n setPosition(newPosition)\n }\n }, [target, targetId])\n \n useEffect(() => {\n updatePosition()\n \n const handleResize = () => updatePosition()\n window.addEventListener('resize', handleResize)\n \n const handleScroll = () => updatePosition()\n window.addEventListener('scroll', handleScroll)\n \n return () => {\n window.removeEventListener('resize', handleResize)\n window.removeEventListener('scroll', handleScroll)\n }\n }, [updatePosition])\n \n return { position, menuRef }\n}\n"],"names":["calculateMenuPosition","targetElement","targetRect","menuWidth","menuHeight","topOffset","viewportWidth","viewportHeight","left","top","padding","spaceOnRight","spaceOnLeft","useMenuPosition","target","targetId","position","setPosition","useState","menuRef","useRef","updatePosition","useCallback","newPosition","useEffect","handleResize","handleScroll"],"mappings":";AAOA,SAASA,EACPC,GACqB;AACjB,MAAA,CAACA,EAAsB,QAAA;AAErB,QAAAC,IAAaD,EAAc,sBAAsB,GACjDE,IAAY,KACZC,IAAa,KACbC,IAAY,IACZC,IAAgB,OAAO,YACvBC,IAAiB,OAAO;AAE1B,MAAAC,GACAC,GACAC;AAGE,QAAAC,IAAeL,IAAgBJ,EAAW,OAC1CU,IAAcV,EAAW;AAE3B,SAAAS,KAAgBR,IAAY,MAEpBO,IAAA,KACVF,IAAON,EAAW,QAAQQ,KACjBE,KAAeT,IAAY,MAE1BO,IAAA,KACHF,IAAAN,EAAW,OAAOC,IAAYO,MAG3BA,IAAA,IACVF,IAAON,EAAW,QAAQA,EAAW,QAAQC,KAAa,GAGtDK,IAAOE,IACFF,IAAAE,IACEF,IAAOL,IAAYG,IAAgBI,MAC5CF,IAAOF,IAAgBH,IAAYO,KAKvCD,IAAMP,EAAW,KAGbO,IAAML,IAAaG,IAAiBG,MAEtCD,IAAMP,EAAW,SAASE,GAGtBK,IAAMC,MACRD,IAAMF,IAAiBH,IAAaM,KAIjC;AAAA,IACL,KAAKD,IAAMJ;AAAA,IACX,MAAAG;AAAA,EACF;AACF;AAOgB,SAAAK,EACdC,GACAC,GACuB;AACvB,QAAM,CAACC,GAAUC,CAAW,IAAIC,EAA8B,IAAI,GAC5DC,IAAUC,EAAuB,IAAI,GAErCC,IAAiBC,EAAY,MAAM;AACvC,QAAIrB,IAAoCa;AAMxC,QAJI,CAACb,KAAiBc,MACJd,IAAA,SAAS,eAAec,CAAQ,IAG9C,CAACd,GAAe;AAClB,cAAQ,KAAK,0BAA0B;AACvC;AAAA,IAAA;AAGI,UAAAsB,IAAcvB,EAAsBC,CAAa;AACvD,IAAIsB,KACFN,EAAYM,CAAW;AAAA,EACzB,GACC,CAACT,GAAQC,CAAQ,CAAC;AAErB,SAAAS,EAAU,MAAM;AACC,IAAAH,EAAA;AAET,UAAAI,IAAe,MAAMJ,EAAe;AACnC,WAAA,iBAAiB,UAAUI,CAAY;AAExC,UAAAC,IAAe,MAAML,EAAe;AACnC,kBAAA,iBAAiB,UAAUK,CAAY,GAEvC,MAAM;AACJ,aAAA,oBAAoB,UAAUD,CAAY,GAC1C,OAAA,oBAAoB,UAAUC,CAAY;AAAA,IACnD;AAAA,EAAA,GACC,CAACL,CAAc,CAAC,GAEZ,EAAE,UAAAL,GAAU,SAAAG,EAAQ;AAC7B;"}
@@ -158,7 +158,7 @@ export type EntityListItemPostModel = {
158
158
  /** Overrides of the listed entity attributes */
159
159
  attrib?: object;
160
160
  /** Additional data associated with the item */
161
- data?: Record<string, any>;
161
+ data?: object;
162
162
  /** Tags associated with the item */
163
163
  tags?: string[];
164
164
  };
@@ -173,7 +173,7 @@ export type EntityListMultiPatchItemModel = {
173
173
  /** Overrides of the listed entity attributes */
174
174
  attrib?: object;
175
175
  /** Additional data associated with the item */
176
- data?: Record<string, any>;
176
+ data?: object;
177
177
  /** Tags associated with the item */
178
178
  tags?: string[];
179
179
  };
@@ -192,7 +192,7 @@ export type EntityListItemPatchModel = {
192
192
  /** Overrides of the listed entity attributes */
193
193
  attrib?: object;
194
194
  /** Additional data associated with the item */
195
- data?: Record<string, any>;
195
+ data?: object;
196
196
  /** Tags associated with the item */
197
197
  tags?: string[];
198
198
  };
@@ -205,7 +205,7 @@ export type EntityListSummary = {
205
205
  label: string;
206
206
  count?: number;
207
207
  };
208
- export type ListAccessLevel = 10 | 20 | 30 | 40;
208
+ export type ListAccessLevel = 0 | 10 | 20 | 30;
209
209
  export type EntityListPostModel = {
210
210
  id?: string;
211
211
  /** Type of the list */
@@ -220,7 +220,7 @@ export type EntityListPostModel = {
220
220
  /** List attributes */
221
221
  attrib?: object;
222
222
  /** Additional data associated with the list */
223
- data?: Record<string, any>;
223
+ data?: object;
224
224
  template?: object;
225
225
  /** List tags */
226
226
  tags?: string[];
@@ -241,7 +241,7 @@ export type EntityListItemModel = {
241
241
  /** Overrides of the listed entity attributes */
242
242
  attrib?: object;
243
243
  /** Additional data associated with the item */
244
- data?: Record<string, any>;
244
+ data?: object;
245
245
  /** Tags associated with the item */
246
246
  tags?: string[];
247
247
  /** Path to the folder where the item is located */
@@ -265,7 +265,7 @@ export type EntityListModel = {
265
265
  /** List attributes */
266
266
  attrib?: object;
267
267
  /** Additional data associated with the list */
268
- data?: Record<string, any>;
268
+ data?: object;
269
269
  template?: object;
270
270
  /** List tags */
271
271
  tags?: string[];
@@ -288,7 +288,7 @@ export type EntityListPatchModel = {
288
288
  /** List attributes */
289
289
  attrib?: object;
290
290
  /** Additional data associated with the list */
291
- data?: Record<string, any>;
291
+ data?: object;
292
292
  /** List tags */
293
293
  tags?: string[];
294
294
  /** Name of the user who created the list */
@@ -10,9 +10,9 @@ declare const injectedRtkApi: import('@reduxjs/toolkit/query').Api<import('@redu
10
10
  passwordResetRequest: import('@reduxjs/toolkit/query').MutationDefinition<PasswordResetRequestApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, any, "restApi", unknown>;
11
11
  passwordReset: import('@reduxjs/toolkit/query').MutationDefinition<PasswordResetApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, LoginResponseModel, "restApi", unknown>;
12
12
  getMyPermissions: import('@reduxjs/toolkit/query').QueryDefinition<void, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, UserPermissionsModel, "restApi", unknown>;
13
- getMyProjectPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetMyProjectPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, ProjectPermissions, "restApi", unknown>;
14
- getUserStudioPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetUserStudioPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, StudioPermissions, "restApi", unknown>;
15
- getUserProjectPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetUserProjectPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, ProjectPermissions, "restApi", unknown>;
13
+ getMyProjectPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetMyProjectPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, Permissions, "restApi", unknown>;
14
+ getUserStudioPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetUserStudioPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, Permissions, "restApi", unknown>;
15
+ getUserProjectPermissions: import('@reduxjs/toolkit/query').QueryDefinition<GetUserProjectPermissionsApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, Permissions, "restApi", unknown>;
16
16
  getCurrentUser: import('@reduxjs/toolkit/query').QueryDefinition<void, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, UserModel, "restApi", unknown>;
17
17
  getUser: import('@reduxjs/toolkit/query').QueryDefinition<GetUserApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, GetUserApiResponse, "restApi", unknown>;
18
18
  createUser: import('@reduxjs/toolkit/query').MutationDefinition<CreateUserApiArg, import('@reduxjs/toolkit/query').BaseQueryFn<string | import('@reduxjs/toolkit/query').FetchArgs, unknown, import('@reduxjs/toolkit/query').FetchBaseQueryError>, string, any, "restApi", unknown>;
@@ -71,18 +71,15 @@ export type PasswordResetApiArg = {
71
71
  };
72
72
  export type GetMyPermissionsApiResponse = UserPermissionsModel;
73
73
  export type GetMyPermissionsApiArg = void;
74
- export type GetMyProjectPermissionsApiResponse =
75
- /** status 200 Successful Response */ ProjectPermissions;
74
+ export type GetMyProjectPermissionsApiResponse = Permissions;
76
75
  export type GetMyProjectPermissionsApiArg = {
77
76
  projectName: string;
78
77
  };
79
- export type GetUserStudioPermissionsApiResponse =
80
- /** status 200 Successful Response */ StudioPermissions;
78
+ export type GetUserStudioPermissionsApiResponse = Permissions;
81
79
  export type GetUserStudioPermissionsApiArg = {
82
80
  userName: string;
83
81
  };
84
- export type GetUserProjectPermissionsApiResponse =
85
- /** status 200 Successful Response */ ProjectPermissions;
82
+ export type GetUserProjectPermissionsApiResponse = Permissions;
86
83
  export type GetUserProjectPermissionsApiArg = {
87
84
  projectName: string;
88
85
  userName: string;
@@ -208,10 +205,13 @@ export type UserModel = {
208
205
  updatedAt?: string;
209
206
  };
210
207
  export type LoginResponseModel = {
208
+ /** Text message, which may be displayed to the user */
211
209
  detail?: string;
212
210
  error?: string;
213
211
  token?: string;
214
212
  user?: UserModel;
213
+ /** URL to redirect the user after login */
214
+ redirectUrl?: string;
215
215
  };
216
216
  export type PasswordResetModel = {
217
217
  token: string;
@@ -246,13 +246,19 @@ export type AttributeReadAccessList = {
246
246
  };
247
247
  export type AttributeWriteAccessList = {
248
248
  enabled?: boolean;
249
+ fields?: string[];
249
250
  attributes?: string[];
250
251
  };
251
252
  export type EndpointsAccessList = {
252
253
  enabled?: boolean;
253
254
  endpoints?: string[];
254
255
  };
255
- export type ProjectPermissions = {
256
+ export type ProjectAdvancedPermissions = {
257
+ /** If a user can access a task through the 'Assigned' permission, enabling this will also show all sibling tasks in the same folder. When disabled, only the assigned task is visible. */
258
+ show_sibling_tasks?: boolean;
259
+ };
260
+ export type Permissions = {
261
+ studio?: StudioManagementPermissions;
256
262
  project?: ProjectManagementPermissions;
257
263
  /** Whitelist folders a user can create */
258
264
  create?: FolderAccessList;
@@ -270,6 +276,7 @@ export type ProjectPermissions = {
270
276
  attrib_write?: AttributeWriteAccessList;
271
277
  /** Whitelist REST endpoints a user can access */
272
278
  endpoints?: EndpointsAccessList;
279
+ advanced?: ProjectAdvancedPermissions;
273
280
  };
274
281
  export type UserPermissionsModel = {
275
282
  user_level?: 'admin' | 'manager' | 'user';
@@ -277,12 +284,9 @@ export type UserPermissionsModel = {
277
284
  studio?: StudioManagementPermissions;
278
285
  /** Permissions for individual projects */
279
286
  projects?: {
280
- [key: string]: ProjectPermissions;
287
+ [key: string]: Permissions;
281
288
  };
282
289
  };
283
- export type StudioPermissions = {
284
- studio?: StudioManagementPermissions;
285
- };
286
290
  export type NewUserModel = {
287
291
  attrib?: UserAttribModel;
288
292
  data?: Record<string, any>;
@@ -18,14 +18,14 @@ export type CreateViewApiResponse = EntityIdResponse;
18
18
  export type CreateViewApiArg = {
19
19
  viewType: string;
20
20
  projectName?: string;
21
- payload: OverviewViewPostModel | TaskProgressViewPostModel | ListsViewPostModel;
21
+ payload: OverviewViewPostModel | TaskProgressViewPostModel | ListsViewPostModel | ReviewsViewPostModel;
22
22
  };
23
- export type GetWorkingViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel;
23
+ export type GetWorkingViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel | ReviewsViewModel;
24
24
  export type GetWorkingViewApiArg = {
25
25
  viewType: string;
26
26
  projectName?: string;
27
27
  };
28
- export type GetDefaultViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel;
28
+ export type GetDefaultViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel | ReviewsViewModel;
29
29
  export type GetDefaultViewApiArg = {
30
30
  viewType: string;
31
31
  projectName?: string;
@@ -36,7 +36,7 @@ export type SetDefaultViewApiArg = {
36
36
  projectName?: string;
37
37
  setDefaultViewRequestModel: SetDefaultViewRequestModel;
38
38
  };
39
- export type GetViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel;
39
+ export type GetViewApiResponse = OverviewViewModel | TaskProgressViewModel | ListsViewModel | ReviewsViewModel;
40
40
  export type GetViewApiArg = {
41
41
  viewType: string;
42
42
  viewId: string;
@@ -53,7 +53,7 @@ export type UpdateViewApiArg = {
53
53
  viewType: string;
54
54
  viewId: string;
55
55
  projectName?: string;
56
- payload: OverviewViewPatchModel | TaskProgressViewPatchModel | ListsViewPatchModel;
56
+ payload: OverviewViewPatchModel | TaskProgressViewPatchModel | ListsViewPatchModel | ReviewsViewPatchModel;
57
57
  };
58
58
  export type ViewListItemModel = {
59
59
  /** Unique identifier for the view within the given scope. */
@@ -66,7 +66,6 @@ export type ViewListItemModel = {
66
66
  owner: string;
67
67
  /** Visibility of the view. Public views are visible to all users, private views are only visible to the owner. */
68
68
  visibility: 'public' | 'private';
69
- access: object;
70
69
  /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
71
70
  working: boolean;
72
71
  position: number;
@@ -153,6 +152,21 @@ export type ListsViewPostModel = {
153
152
  working?: boolean;
154
153
  settings: ListsSettings;
155
154
  };
155
+ export type ReviewsSettings = {
156
+ sortBy?: string;
157
+ sortDesc?: boolean;
158
+ filter?: QueryFilter;
159
+ columns?: ColumnItemModel[];
160
+ };
161
+ export type ReviewsViewPostModel = {
162
+ /** Unique identifier for the view within the given scope. */
163
+ id?: string;
164
+ /** Human-readable name of the view. */
165
+ label: string;
166
+ /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
167
+ working?: boolean;
168
+ settings: ReviewsSettings;
169
+ };
156
170
  export type OverviewViewModel = {
157
171
  /** Unique identifier for the view within the given scope. */
158
172
  id?: string;
@@ -164,12 +178,12 @@ export type OverviewViewModel = {
164
178
  owner: string;
165
179
  /** Visibility of the view. Public views are visible to all users, private views are only visible to the owner. */
166
180
  visibility: 'public' | 'private';
167
- access: object;
168
181
  /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
169
182
  working: boolean;
170
183
  position: number;
171
184
  accessLevel: number;
172
185
  settings: OverviewSettings;
186
+ access: object;
173
187
  viewType?: 'overview';
174
188
  };
175
189
  export type TaskProgressViewModel = {
@@ -183,12 +197,12 @@ export type TaskProgressViewModel = {
183
197
  owner: string;
184
198
  /** Visibility of the view. Public views are visible to all users, private views are only visible to the owner. */
185
199
  visibility: 'public' | 'private';
186
- access: object;
187
200
  /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
188
201
  working: boolean;
189
202
  position: number;
190
203
  accessLevel: number;
191
204
  settings: TaskProgressSettings;
205
+ access: object;
192
206
  viewType?: 'taskProgress';
193
207
  };
194
208
  export type ListsViewModel = {
@@ -202,14 +216,33 @@ export type ListsViewModel = {
202
216
  owner: string;
203
217
  /** Visibility of the view. Public views are visible to all users, private views are only visible to the owner. */
204
218
  visibility: 'public' | 'private';
205
- access: object;
206
219
  /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
207
220
  working: boolean;
208
221
  position: number;
209
222
  accessLevel: number;
210
223
  settings: ListsSettings;
224
+ access: object;
211
225
  viewType?: 'lists';
212
226
  };
227
+ export type ReviewsViewModel = {
228
+ /** Unique identifier for the view within the given scope. */
229
+ id?: string;
230
+ /** Human-readable name of the view. */
231
+ label: string;
232
+ /** Determines whether the view is only available for the given project or for all projects (studio). */
233
+ scope: 'project' | 'studio';
234
+ /** Name of the user who created the view. Owners have full control over the view, */
235
+ owner: string;
236
+ /** Visibility of the view. Public views are visible to all users, private views are only visible to the owner. */
237
+ visibility: 'public' | 'private';
238
+ /** Working view is a special type of the view that automatically stores the current view settings without explicitly saving them. Working views are always private and scoped to the project */
239
+ working: boolean;
240
+ position: number;
241
+ accessLevel: number;
242
+ settings: ReviewsSettings;
243
+ access: object;
244
+ viewType?: 'reviews';
245
+ };
213
246
  export type SetDefaultViewRequestModel = {
214
247
  viewId: string;
215
248
  };
@@ -228,3 +261,8 @@ export type ListsViewPatchModel = {
228
261
  owner?: string;
229
262
  settings?: ListsSettings;
230
263
  };
264
+ export type ReviewsViewPatchModel = {
265
+ label?: string;
266
+ owner?: string;
267
+ settings?: ReviewsSettings;
268
+ };