@ynput/ayon-frontend-shared 0.3.36 → 0.3.38

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 (579) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +27 -25
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +222 -215
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/_virtual/index.cjs12.js +1 -1
  8. package/dist/_virtual/index.cjs13.js +1 -1
  9. package/dist/_virtual/index.cjs15.js +1 -1
  10. package/dist/_virtual/index.cjs18.js +1 -1
  11. package/dist/_virtual/index.cjs19.js +1 -1
  12. package/dist/_virtual/index.cjs4.js +1 -1
  13. package/dist/_virtual/index.cjs6.js +1 -1
  14. package/dist/_virtual/index.cjs9.js +1 -1
  15. package/dist/_virtual/index.es12.js +2 -5
  16. package/dist/_virtual/index.es12.js.map +1 -1
  17. package/dist/_virtual/index.es13.js +2 -5
  18. package/dist/_virtual/index.es13.js.map +1 -1
  19. package/dist/_virtual/index.es14.js +2 -2
  20. package/dist/_virtual/index.es15.js +2 -2
  21. package/dist/_virtual/index.es16.js +2 -2
  22. package/dist/_virtual/index.es17.js +2 -2
  23. package/dist/_virtual/index.es18.js +2 -2
  24. package/dist/_virtual/index.es19.js +2 -2
  25. package/dist/_virtual/index.es4.js +5 -2
  26. package/dist/_virtual/index.es4.js.map +1 -1
  27. package/dist/_virtual/index.es6.js +2 -2
  28. package/dist/_virtual/index.es7.js +2 -2
  29. package/dist/_virtual/index.es9.js +5 -2
  30. package/dist/_virtual/index.es9.js.map +1 -1
  31. package/dist/components.cjs.js +1 -1
  32. package/dist/components.es.js +77 -73
  33. package/dist/components.es.js.map +1 -1
  34. package/dist/context.cjs.js +1 -1
  35. package/dist/context.es.js +50 -49
  36. package/dist/hooks.cjs.js +1 -1
  37. package/dist/hooks.es.js +33 -29
  38. package/dist/hooks.es.js.map +1 -1
  39. package/dist/index.cjs.js +1 -1
  40. package/dist/index.es.js +16 -12
  41. package/dist/index.es.js.map +1 -1
  42. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  43. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js.map +1 -1
  44. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  45. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  46. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  47. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  48. package/dist/node_modules/remove-accents/index.cjs.js.map +1 -1
  49. package/dist/node_modules/remove-accents/index.es.js +1 -1
  50. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  51. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  52. package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
  53. package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
  54. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  55. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  56. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
  57. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js.map +1 -1
  58. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
  59. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  60. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  61. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  62. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  63. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  64. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  65. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
  66. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
  67. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  68. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  69. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
  70. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js.map +1 -1
  71. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
  72. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
  73. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
  74. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
  75. package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
  76. package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
  77. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  78. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  79. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  80. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  81. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  82. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  83. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  84. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  85. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  86. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  87. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  88. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  89. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  90. package/dist/shared/src/api/generated/graphql.cjs.js +108 -23
  91. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  92. package/dist/shared/src/api/generated/graphql.es.js +138 -53
  93. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  94. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  95. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  96. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  97. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  98. package/dist/shared/src/api/queries/activities/getActivities.es.js +42 -42
  99. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  100. package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js +2 -0
  101. package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js.map +1 -0
  102. package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js +68 -0
  103. package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js.map +1 -0
  104. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
  105. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
  106. package/dist/shared/src/api/queries/activities/updateActivities.es.js +69 -62
  107. package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
  108. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  109. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  110. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +64 -56
  111. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  112. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +1 -1
  113. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
  114. package/dist/shared/src/api/queries/columnStats/columnStats.es.js +57 -53
  115. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
  116. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +1 -1
  117. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
  118. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +27 -25
  119. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
  120. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -1
  121. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +1 -1
  122. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -1
  123. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +4 -4
  124. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -1
  125. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  126. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  127. package/dist/shared/src/api/queries/overview/getOverview.es.js +212 -187
  128. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  129. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  130. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  131. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +7 -3
  132. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  133. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  134. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  135. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +9 -5
  136. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  137. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  138. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  139. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +9 -5
  140. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  141. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  142. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  143. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +9 -5
  144. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  145. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  146. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  147. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +103 -99
  148. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  149. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  150. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  151. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +96 -87
  152. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  153. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  154. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  155. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +9 -5
  156. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  157. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  158. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  159. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +9 -5
  160. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  161. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  162. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  163. package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -5
  164. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  165. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  166. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  167. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +9 -5
  168. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  169. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  170. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  171. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +10 -6
  172. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  173. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  174. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  175. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +9 -5
  176. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  177. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  178. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  179. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +9 -5
  180. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  181. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js +6 -0
  182. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js.map +1 -0
  183. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js +58 -0
  184. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js.map +1 -0
  185. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  186. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  187. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +254 -243
  188. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  189. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js +2 -0
  190. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js.map +1 -0
  191. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js +106 -0
  192. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js.map +1 -0
  193. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  194. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  195. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +11 -7
  196. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  197. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  198. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  199. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +9 -5
  200. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  201. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  202. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  203. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +9 -5
  204. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  205. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  206. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  207. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +13 -9
  208. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  209. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  210. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  211. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +9 -5
  212. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  213. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  214. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  215. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +9 -5
  216. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  217. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  218. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  219. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +7 -5
  220. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  221. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  222. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  223. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +9 -5
  224. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  225. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  226. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  227. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +9 -5
  228. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  229. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  230. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +9 -5
  232. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  233. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  234. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +9 -5
  236. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  237. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  238. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +9 -5
  240. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  241. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js +10 -0
  242. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js.map +1 -0
  243. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js +135 -0
  244. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js.map +1 -0
  245. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js.map +1 -1
  246. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js.map +1 -1
  247. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  248. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  249. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +21 -17
  250. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  251. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  253. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +44 -46
  254. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  255. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  257. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +8 -4
  258. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  259. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  261. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +19 -25
  262. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  263. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js +2 -0
  264. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js.map +1 -0
  265. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js +91 -0
  266. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js.map +1 -0
  267. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  268. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  269. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +9 -5
  270. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  271. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  272. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  273. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +9 -5
  274. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  275. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  276. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  277. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +9 -5
  278. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  279. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  280. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  281. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +9 -5
  282. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  283. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  284. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  285. package/dist/shared/src/containers/Feed/Feed.es.js +156 -164
  286. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  287. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js +25 -3
  288. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js.map +1 -1
  289. package/dist/shared/src/containers/Feed/Feed.styled.es.js +30 -8
  290. package/dist/shared/src/containers/Feed/Feed.styled.es.js.map +1 -1
  291. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  292. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  293. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +9 -5
  294. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  295. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  296. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  297. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +9 -5
  298. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  299. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  300. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  301. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +9 -5
  302. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  303. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +3 -3
  304. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  305. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +1 -0
  306. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  307. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
  308. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
  309. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +11 -7
  310. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
  311. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  312. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  313. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +8 -4
  314. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  315. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  316. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  317. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +13 -9
  318. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  319. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js +1 -1
  320. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js.map +1 -1
  321. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js +5 -5
  322. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js.map +1 -1
  323. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +17 -0
  324. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -0
  325. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +279 -0
  326. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -0
  327. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  328. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  329. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +8 -4
  330. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  331. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  332. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  333. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +62 -50
  334. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  335. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js +2 -0
  336. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js.map +1 -0
  337. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js +141 -0
  338. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js.map +1 -0
  339. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js +2 -0
  340. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js.map +1 -0
  341. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js +81 -0
  342. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js.map +1 -0
  343. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  344. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  345. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +20 -18
  346. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  347. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  348. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  349. package/dist/shared/src/containers/ListTable/ListTable.es.js +107 -103
  350. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  351. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  352. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +8 -4
  354. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  355. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  356. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  357. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +9 -5
  358. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  359. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  360. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  361. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +201 -194
  362. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  363. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  364. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  365. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +210 -180
  366. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  367. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  368. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  369. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +9 -5
  370. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  371. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  372. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +35 -31
  374. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  375. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  376. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +9 -5
  378. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  379. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +7 -3
  382. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  383. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -4
  384. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +228 -222
  386. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  387. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +104 -100
  390. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  391. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +63 -58
  396. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +9 -5
  400. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js +3 -0
  402. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js.map +1 -0
  403. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js +22 -0
  404. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js.map +1 -0
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +114 -109
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +126 -121
  412. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +7 -3
  416. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +7 -3
  420. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +35 -31
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +9 -5
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +249 -204
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +35 -31
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +35 -31
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +7 -3
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +9 -5
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -5
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +106 -102
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +36 -32
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +47 -43
  464. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +61 -61
  468. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +78 -58
  472. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +9 -5
  476. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +4 -3
  478. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +134 -125
  480. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  481. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +82 -0
  482. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -0
  483. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +417 -0
  484. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -0
  485. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +11 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +80 -52
  488. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  489. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +36 -32
  492. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  493. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +9 -5
  496. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  497. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  498. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  499. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +9 -5
  500. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  501. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  502. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  503. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +9 -5
  504. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  505. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  506. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  507. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +9 -5
  508. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  509. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  510. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  511. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +9 -5
  512. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  513. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  514. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  515. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +9 -5
  516. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  517. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  518. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  519. package/dist/shared/src/context/DetailsPanelContext.es.js +92 -94
  520. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  521. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  522. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  523. package/dist/shared/src/context/WebsocketContext.es.js +11 -7
  524. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  525. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js +2 -0
  526. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js.map +1 -0
  527. package/dist/shared/src/hooks/useGetProductionAddon.es.js +124 -0
  528. package/dist/shared/src/hooks/useGetProductionAddon.es.js.map +1 -0
  529. package/dist/shared/src/hooks/useLocalStorage.cjs.js +1 -1
  530. package/dist/shared/src/hooks/useLocalStorage.cjs.js.map +1 -1
  531. package/dist/shared/src/hooks/useLocalStorage.es.js +43 -27
  532. package/dist/shared/src/hooks/useLocalStorage.es.js.map +1 -1
  533. package/dist/types/api/generated/graphql.d.ts +122 -0
  534. package/dist/types/api/generated/graphqlLinks.d.ts +10 -0
  535. package/dist/types/api/queries/activities/getActivities.d.ts +83 -0
  536. package/dist/types/api/queries/activities/patchTableLatestComments.d.ts +1 -0
  537. package/dist/types/api/queries/activities/updateActivities.d.ts +16 -0
  538. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
  539. package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
  540. package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
  541. package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
  542. package/dist/types/api/queries/entityLists/getLists.d.ts +84 -0
  543. package/dist/types/api/queries/entityLists/types.d.ts +2 -1
  544. package/dist/types/api/queries/overview/getOverview.d.ts +58 -0
  545. package/dist/types/api/queries/project/getProject.d.ts +7 -0
  546. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
  547. package/dist/types/api/queries/users/getUsers.d.ts +7 -0
  548. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +30 -0
  549. package/dist/types/components/SearchFilter/CustomDateRangeDialog.d.ts +13 -0
  550. package/dist/types/components/SearchFilter/index.d.ts +2 -0
  551. package/dist/types/components/SearchFilter/useDateRangeFilter.d.ts +36 -0
  552. package/dist/types/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.d.ts +13 -0
  553. package/dist/types/containers/DetailsPanel/helpers/subtasksFilterAdapter.d.ts +5 -0
  554. package/dist/types/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +1 -0
  555. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -2
  556. package/dist/types/containers/Feed/components/FeedSearchFilter.d.ts +15 -0
  557. package/dist/types/containers/Feed/context/FeedContext.d.ts +5 -1
  558. package/dist/types/containers/Feed/helpers/buildBackendFilter.d.ts +3 -0
  559. package/dist/types/containers/Feed/helpers/feedFilterAdapter.d.ts +5 -0
  560. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +5 -1
  561. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +1 -0
  562. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
  563. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +1 -0
  564. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
  565. package/dist/types/containers/ProjectTreeTable/context/clipboard/clipboardComments.d.ts +6 -0
  566. package/dist/types/containers/ProjectTreeTable/context/clipboard/index.d.ts +1 -0
  567. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +3 -1
  568. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +1 -0
  569. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +2 -1
  570. package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +9 -0
  571. package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +5 -0
  572. package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +2 -1
  573. package/dist/types/containers/ProjectTreeTable/widgets/CommentsWidget.d.ts +7 -0
  574. package/dist/types/containers/ProjectTreeTable/widgets/LinksWidget.d.ts +1 -0
  575. package/dist/types/context/DetailsPanelContext.d.ts +1 -0
  576. package/dist/types/hooks/index.d.ts +1 -0
  577. package/dist/types/hooks/useGetProductionAddon.d.ts +10 -0
  578. package/dist/types/hooks/useLocalStorage.d.ts +2 -0
  579. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"CommentInput.es.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/CommentInput.tsx"],"sourcesContent":["// React and related hooks\nimport React, { FC, useEffect, useMemo, useRef, useState } from 'react'\n\n// Third-party libraries\nimport clsx from 'clsx'\nimport { toast } from 'react-toastify'\nimport ReactQuill, { Quill } from 'react-quill-ayon'\n\n// Components\nimport { Button, Icon, SaveButton } from '@ynput/ayon-react-components'\nimport CommentMentionSelect from '../CommentMentionSelect/CommentMentionSelect'\nimport InputMarkdownConvert from './InputMarkdownConvert'\nimport FilesGrid from '../FilesGrid'\n\n// Styled components\nimport * as Styled from './CommentInput.styled'\nimport { QuillListStyles } from '../../../../components/QuillListStyles'\n\n// Helpers and utilities\nimport getMentionOptions from '../../mentionHelpers/getMentionOptions'\nimport getMentionUsers from '../../mentionHelpers/getMentionUsers'\nimport getMentionTasks from '../../mentionHelpers/getMentionTasks'\nimport getMentionVersions from '../../mentionHelpers/getMentionVersions'\nimport { convertToMarkdown } from './quillToMarkdown'\nimport { handleFileDrop, parseImages, typeWithDelay } from './helpers'\nimport { getModules, quillFormats } from './modules'\n\n// Hooks\nimport useInitialValue from './hooks/useInitialValue'\nimport useSetCursorEnd from './hooks/useSetCursorEnd'\nimport useMentionLink from './hooks/useMentionLink'\nimport useAnnotationsSync from './hooks/useAnnotationsSync'\nimport { useBlendedCategoryColor } from './hooks/useBlendedCategoryColor'\n\n// State management\nimport useAnnotationsUpload from './hooks/useAnnotationsUpload'\nimport { useFeedContext } from '../../context/FeedContext'\nimport { ActivityCategorySelect, isCategoryHidden, SavedAnnotationMetadata } from '../../index'\nimport { useDetailsPanelContext } from '@shared/context'\nimport { useProjectContext } from '@shared/context'\nimport { parseFilename } from '@shared/components'\nimport { FeedActivity } from '@shared/api'\nimport { VersionReviewPill } from './VersionReviewPill'\nimport { VersionReviewFeedback, mentionTypeOptions } from './types'\n\nvar Delta = Quill.import('delta')\n\nconst EMPTY_EDITOR_VALUE = '<p><br></p>'\n\nconst mentionTypes = ['@', '@@', '@@@']\n\ninterface CommentInputProps {\n initValue: string | null\n initFiles?: any[]\n initCategory?: string | null\n data?: any\n versionReview: boolean\n lastOwnVersionReview?: FeedActivity\n onSubmit: (markdown: string, files: any[], data?: any) => Promise<void>\n onReview?: (feedback: VersionReviewFeedback) => void\n isEditing?: boolean\n disabled?: boolean\n isLoading?: boolean\n isOpen: boolean\n onOpen?: () => void\n onClose?: () => void\n}\n\nconst CommentInput: FC<CommentInputProps> = ({\n initValue,\n initFiles = [],\n initCategory = null,\n data = {},\n versionReview,\n lastOwnVersionReview,\n onSubmit,\n onReview,\n isEditing,\n disabled,\n isLoading,\n isOpen,\n onOpen,\n onClose,\n}) => {\n const {\n projectName,\n entities,\n projectInfo,\n scope,\n feedFilter,\n mentionSuggestionsData,\n categories,\n isGuest,\n } = useFeedContext()\n\n const { hasLicense, onPowerFeature, user } = useDetailsPanelContext()\n const isAdmin = user?.data?.isAdmin\n\n const project = useProjectContext()\n\n const {\n users: mentionUsers,\n teams: mentionTeams,\n versions: mentionVersions,\n tasks: mentionTasks,\n } = mentionSuggestionsData || {}\n\n const [initHeight, setInitHeight] = useState(88)\n const [editorValue, setEditorValue] = useState('')\n // file uploads\n const [files, setFiles] = useState(initFiles)\n const [filesUploading, setFilesUploading] = useState([])\n const [isDropping, setIsDropping] = useState(false)\n const [isSubmitting, setIsSubmitting] = useState(false)\n\n const { annotations, removeAnnotation, goToAnnotation } = useAnnotationsSync({\n entityId: entities[0]?.id,\n filesUploading,\n })\n\n // MENTION STATES\n const [mention, setMention] = useState<null | any>(null)\n const [mentionSelectedIndex, setMentionSelectedIndex] = useState(0)\n // Prefix filter for mentions (e.g. 'team:' or 'user:')\n const [mentionPrefix, setMentionPrefix] = useState('')\n\n const clearMention = () => {\n setMention(null)\n setMentionSelectedIndex(0)\n setMentionPrefix('')\n }\n // CATEGORY STATE\n const [category, setCategory] = useState<null | string>(initCategory)\n const categoryOptions = categories.filter((cat) => cat.accessLevel >= 20)\n const categoryData = categories.find((cat) => cat.name === category)\n // Compute blended background color for category\n const blendedCategoryColor = useBlendedCategoryColor(categoryData?.color)\n // REFS\n const editorRef = useRef<any>(null)\n const editorContainerRef = useRef<HTMLDivElement>(null)\n\n const markdownRef = useRef<HTMLDivElement>(null)\n\n // if there is an initial value, set it so the editor is prefilled\n useInitialValue({\n markdownRef,\n initValue,\n setEditorValue,\n setInitHeight,\n isOpen: isOpen,\n filter: feedFilter,\n })\n\n // When editing, set selection to the end of the editor\n useSetCursorEnd({ initHeight, editorRef, isEditing })\n // create a new quill format for mentions and registers it\n useMentionLink({ projectName })\n\n // focus on editor when opened\n useEffect(() => {\n if (isOpen) {\n editorRef.current?.getEditor()?.enable()\n // block autofocus if opened from an annotation\n if (annotations.length > 0 && files.length === 0) {\n return\n }\n\n editorRef.current?.focus()\n }\n // We don't set annotations or files as useEffect dependencies, because we don't want to focus\n // the input if it's already open but annotations change (e.g. are removed).\n }, [isOpen, editorRef])\n\n mentionTypes.sort((a, b) => b.length - a.length)\n\n // Combine prefix filter with typed search for options filtering\n const mentionSearchWithPrefix = mentionPrefix + (mention?.search || '')\n\n const mentionOptions = useMemo(\n () =>\n getMentionOptions(\n mention?.type,\n {\n '@': () => getMentionUsers(mentionUsers, mentionTeams),\n '@@': () => getMentionVersions(mentionVersions, project),\n '@@@': () => getMentionTasks(mentionTasks, projectInfo.taskTypes),\n },\n mentionSearchWithPrefix || undefined,\n ),\n [\n mentionTasks,\n mentionVersions,\n mentionUsers,\n mentionTeams,\n mention?.type,\n mentionSearchWithPrefix,\n ],\n )\n\n // show first 5 and filter itself out\n const shownMentionOptions = mentionOptions.slice(0, 5)\n\n // triggered when a mention is selected\n const [newSelection, setNewSelection] = useState<null | number>()\n\n useEffect(() => {\n if (newSelection) {\n setNewSelection(null)\n // now we set selection to the end of the mention\n const quill = editorRef.current.getEditor()\n quill.setSelection(newSelection)\n }\n }, [newSelection])\n\n const handleSelectMention = (selectedOption: any) => {\n // get option text\n const quill = editorRef.current.getEditor()\n\n const typePrefix = mention.type // the type of mention: @, @@, @@@\n const search = typePrefix + (mention.search || '') // the full search string: @Tim\n const mentionLabel = typePrefix + selectedOption.label // the label of the mention: @Tim Bailey\n // @ts-expect-error\n const type = mentionTypeOptions[typePrefix] // the type of mention: user, version, task\n // Use the option's own type (e.g. 'team') if available, otherwise fall back to the mention type config\n const refType = selectedOption.type || type?.id\n const href = `${refType}:${selectedOption.id}` // the href of the mention: user:user.123 or team:Thunder boys\n\n // get selection delta\n const selection = quill.getSelection(true)\n const selectionIndex = selection?.index || 0\n const startIndex = selectionIndex - search.length // the start index of the search\n\n // first delete the search string\n quill.deleteText(startIndex, search.length)\n\n // insert embed link\n quill.insertText(startIndex, mentionLabel, 'mention', href)\n\n const endIndex = startIndex + mentionLabel.length\n\n // insert a space after the mention\n quill.updateContents(new Delta().retain(endIndex).insert(' '))\n\n // remove single \\n after mention\n quill.updateContents(new Delta().retain(endIndex + 1).delete(1))\n\n // set selection to the end of the mention + 1\n setNewSelection(endIndex + 1)\n\n // reset mention state\n clearMention()\n }\n\n const handleSelectChange = (option: any) => {\n handleSelectMention(option)\n }\n\n const handleChange = (content: string, delta: any, _: any, editor: any) => {\n let currentCharacter =\n (delta.ops[0] && delta.ops[0].insert) || (delta.ops[1] && delta.ops[1].insert)\n\n const tabOrEnter = currentCharacter === '\\n' || currentCharacter === '\\t'\n // find the first option\n const selectedOption = mentionOptions[mentionSelectedIndex]\n\n if (mention && tabOrEnter && selectedOption && !isGuest) {\n // get option text\n const retain = (delta.ops[0] && delta.ops[0].retain) || 0\n // prevent default\n\n // @ts-ignore\n handleSelectMention(selectedOption, retain)\n\n return\n }\n\n setEditorValue(content)\n\n const isDelete = delta.ops.length === 2 && !!delta.ops[1].delete\n\n if (!currentCharacter && isDelete) {\n currentCharacter = editor.getText(delta.ops[0].retain - 1, 1)\n }\n\n const isMention = mentionTypes.includes(currentCharacter)\n\n if (isMention) {\n const mentionIndex = delta.ops.findIndex((op: any) => 'insert' in op || 'delete' in op)\n const mention = currentCharacter\n let retain = mentionIndex === 0 ? 0 : delta.ops[mentionIndex - 1].retain\n if (isDelete) retain = retain - 1\n\n // for each mention denotation char, check if it is a mention\n // sort by length of mention denotation char\n let mentionMatch = null\n\n // loop through each mention denotation char, with longest first. First one to match is the one we want\n for (const chars of mentionTypes) {\n let isMatch = true\n // start with the last character\n if (chars.endsWith(mention)) {\n // loop through the chars backwards\n for (let i = chars.length - 1; i >= 0; i--) {\n // skip first character as that's already been checked\n if (i === 0) continue\n const char = chars[i - 1]\n const indexInDelta = retain - (chars.length - i)\n const valueCharAtIndex = editor.getText(indexInDelta, 1)\n if (valueCharAtIndex !== char) {\n isMatch = false\n break\n }\n }\n } else {\n isMatch = false\n }\n\n if (isMatch) {\n // console.log('match!!!', chars)\n mentionMatch = chars\n break\n }\n }\n\n if (mentionMatch) {\n setMention({\n type: mentionMatch,\n retain: retain,\n })\n } else {\n clearMention()\n }\n } else {\n // get full string between mention and new delta\n // This is where SEARCH is handled\n if (mention) {\n const retain = delta.ops[0].retain\n // if space is pressed, remove mention\n if (currentCharacter === ' ' || !retain) {\n clearMention()\n return\n }\n\n let distanceMentionToRetain = retain - mention.retain\n if (!isDelete) distanceMentionToRetain++\n const mentionFull = editor.getText(mention.retain, distanceMentionToRetain)\n const mentionSearch = mentionFull.replace(mention.type.slice(-1), '')\n // check for space in mentionFull\n if (mentionFull.includes(' ')) {\n clearMention()\n } else {\n setMention({\n ...mention,\n search: mentionSearch?.toLowerCase(),\n })\n }\n } else if (isDelete) {\n // backspace inside a mention deletes the whole mention\n const quill = editorRef.current.getEditor()\n const currentSelection = quill.getSelection(false)\n const currentFormat = quill.getFormat(currentSelection?.index, currentSelection?.length)\n if (currentFormat.mention) {\n const [lineBlock] = quill.getLine(currentSelection.index - 1) || []\n const ops = lineBlock?.cache?.delta?.ops || []\n const lastMentionOp = ops.reverse().find((op: any) => op.attributes?.mention)\n if (lastMentionOp) {\n const mentionLength = lastMentionOp.insert.length\n quill.deleteText(currentSelection.index - mentionLength, mentionLength)\n }\n }\n }\n }\n }\n\n const addTextToEditor = (type: string) => {\n // get editor retain\n const quill = editorRef.current.getEditor()\n\n let retain = quill.getSelection(true)?.index || 0\n\n // get character at retain\n const currentCharacter = quill.getText(retain - 1, 1)\n\n // if the current character is a character, increment retain\n const addSpace = currentCharacter !== ' ' && currentCharacter\n if (addSpace) {\n quill.insertText(retain, ' ')\n retain++\n }\n\n // This is hack AF, but it works\n typeWithDelay(quill, retain, type)\n }\n\n const handleMentionButton = (type: string) => {\n // first check if mention is already open\n if (mention) {\n const { type, retain, search = '' } = mention\n\n const quill = editorRef.current.getEditor()\n const length = type.length + search.length\n const start = retain - type.length + 1\n // delete the mention\n quill.deleteText(start, length)\n }\n\n addTextToEditor(type)\n }\n\n const handleOpenClick = () => {\n if (isOpen || disabled) return\n\n onOpen && onOpen()\n }\n\n const handleClose = () => {\n // get editor value\n const editor = editorRef.current.getEditor()\n const text = editor.getText()\n if (text.length < 2 || isEditing) {\n setEditorValue('')\n }\n\n // always close editor\n onClose && onClose()\n }\n\n const handleFileUploaded = ({ file, data }: any) => {\n const fileName = parseFilename(file.name)\n const newFile = {\n id: data.id,\n name: fileName,\n mime: file.type,\n size: file.size,\n order: files.length,\n }\n\n setFiles((prev) => [...prev, newFile])\n // remove from uploading\n setFilesUploading((prev) =>\n prev.filter((uploading: any) => parseFilename(uploading.name) !== fileName),\n )\n\n return newFile\n }\n\n const handleFileRemove = (id: string, name: string, isUnsavedAnnotation: boolean) => {\n if (isUnsavedAnnotation) {\n // remove from annotations (if it's an unsaved annotation)\n removeAnnotation?.(id)\n } else {\n // remove file from files\n setFiles((prev) => prev.filter((file) => file.id !== id))\n // remove from uploading\n setFilesUploading((prev) => {\n return prev.filter((file: any) => parseFilename(file.name) !== parseFilename(name))\n })\n }\n }\n\n const handleFileProgress = (e: any, file: any) => {\n const progress = Math.round((e.loaded * 100) / e.total)\n if (progress !== 100) {\n const fileName = parseFilename(file.name)\n const uploadProgress = {\n name: fileName,\n progress,\n type: file.type,\n order: files.length + filesUploading.length,\n }\n\n // @ts-ignore\n setFilesUploading((prev) => {\n // replace or add new progress\n const newProgress = prev.filter((name: any) => parseFilename(name.name) !== fileName)\n return [...newProgress, uploadProgress]\n })\n }\n }\n\n // when a file is not dropped onto the comment input\n const handleDrop = (e: React.DragEvent<HTMLDivElement>) => {\n setIsDropping(false)\n // upload file\n handleFileDrop(e, projectName, handleFileProgress, handleFileUploaded)\n }\n\n const handleDragOver = (e: React.DragEvent<HTMLDivElement>) => {\n e.preventDefault()\n e.stopPropagation()\n setIsDropping(true)\n }\n\n const uploadAnnotations = useAnnotationsUpload({\n projectName,\n onSuccess: handleFileUploaded,\n })\n\n const handleSubmit = async () => {\n try {\n setIsSubmitting(true)\n\n // upload any annotations first\n let annotationFiles = []\n let annotationMetadata: SavedAnnotationMetadata[] | undefined = undefined\n if (annotations.length) {\n const { files, metadata } = await uploadAnnotations(annotations)\n annotationFiles = files\n // get current files data\n const { annotations: annotationsData = [] } = data || {}\n // merge existing annotations data with new metadata\n annotationMetadata = [...annotationsData, ...metadata]\n }\n\n // convert to markdown\n const [markdown] = convertToMarkdown(editorValue)\n\n // remove img query params\n const markdownParsed = parseImages(markdown)\n\n const uploadedFiles = [...files, ...annotationFiles]\n\n const newData = {\n ...data,\n annotations: annotationMetadata, // could be undefined\n category: isGuest ? null : category, // guests cannot set category (it is done by default on backend)\n }\n\n if ((markdownParsed || uploadedFiles.length) && onSubmit) {\n try {\n await onSubmit(markdownParsed, uploadedFiles, newData)\n // only clear if onSubmit is successful\n setEditorValue('')\n setFiles([])\n } catch (error) {\n // error is handled in rtk query mutation\n return\n }\n }\n } catch (error) {\n console.error(error)\n toast.error('Something went wrong')\n } finally {\n setIsSubmitting(false)\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (mention) {\n // close mention on escape\n if (e.key === 'Escape') {\n clearMention()\n return\n }\n\n // add top search of mention\n if (mention && e.key === 'Tab') {\n // we handle this in the onChange\n }\n\n const arrowDirection = e.key === 'ArrowUp' ? -1 : e.key === 'ArrowDown' ? 1 : 0\n\n if (arrowDirection) {\n // navigate through mentions\n e.preventDefault()\n let newIndex = mentionSelectedIndex + arrowDirection\n if (newIndex < 0) newIndex = shownMentionOptions.length - 1\n if (newIndex >= shownMentionOptions.length) newIndex = 0\n setMentionSelectedIndex(newIndex)\n }\n\n if (e.key === 'Enter') {\n // we handle this in the onChange\n }\n }\n\n if (e.key === 'Enter' && (e.ctrlKey || e.metaKey)) {\n handleSubmit()\n }\n\n if (e.key === 'Escape') {\n handleClose()\n }\n }\n\n let quillMinHeight: number | undefined = isOpen ? initHeight + 41 : 44\n if (isEditing) quillMinHeight = undefined\n\n // QUILL CONFIG\n const modules = useMemo(\n () =>\n getModules({\n imageUploader: {\n projectName,\n onUpload: handleFileUploaded,\n onUploadProgress: handleFileProgress,\n },\n mentionTypeOptions,\n }),\n [projectName, setFiles, setFilesUploading],\n )\n\n const allFiles = [...annotations, ...(files || []), ...filesUploading].sort(\n (a, b) => a.order - b.order,\n )\n const compactGrid = allFiles.length > 3\n\n // disable version mentions for folders\n let mentionsError = null\n if (entities.length && entities[0].entityType === 'folder') {\n if (mention?.type === '@@') {\n mentionsError = 'Version mentions are disabled for folders'\n }\n }\n\n const getCommentPlaceholder = (isOpen?: boolean) => {\n if (disabled) {\n if (isGuest) return 'You do not have permission to comment.'\n return 'Commenting is disabled across multiple projects.'\n }\n\n if (isGuest || !isOpen) return 'Leave a comment'\n\n return 'Comment or mention with @user, @@version, @@@task...'\n }\n\n const handleReviewSubmit = async (status: VersionReviewFeedback) => {\n if (!onReview) return\n try {\n const postComment =\n (editorValue && editorValue !== EMPTY_EDITOR_VALUE) ||\n files.length > 0 ||\n annotations.length > 0\n // if the editor value is valid, also submit the comment first\n if (postComment) {\n await handleSubmit()\n }\n\n onReview(status)\n } catch (error) {\n console.error(error)\n toast.error('Something went wrong while submitting the review')\n }\n }\n\n const versionReviewButtons = versionReview && onReview && (\n <Styled.VersionReviewButtons className={clsx('version-review-buttons', { guest: isGuest })}>\n <Styled.VersionReviewButton\n icon=\"check\"\n variant=\"tertiary\"\n data-tooltip=\"Approve\"\n onClick={() => handleReviewSubmit(VersionReviewFeedback.APPROVE)}\n >\n <span className=\"label\">Approve</span>\n </Styled.VersionReviewButton>\n <Styled.VersionReviewButton\n icon=\"refresh\"\n variant=\"danger\"\n data-tooltip=\"Request changes\"\n onClick={() => handleReviewSubmit(VersionReviewFeedback.REQUEST_CHANGES)}\n >\n <span className=\"label\">Request changes</span>\n </Styled.VersionReviewButton>\n </Styled.VersionReviewButtons>\n )\n\n return (\n <>\n <Styled.AutoHeight\n className={clsx('comment-container', { isOpen, isEditing })}\n onDragOver={handleDragOver}\n onDragLeave={() => setIsDropping(false)}\n onDrop={handleDrop}\n onClick={() => setIsDropping(false)}\n onKeyDown={(e) => e.stopPropagation()}\n >\n {versionReview && lastOwnVersionReview && (\n <VersionReviewPill lastOwnVersionReview={lastOwnVersionReview} />\n )}\n\n <Styled.Comment\n className={clsx('block-shortcuts', {\n isOpen,\n isClosed: !isOpen || disabled,\n isEditing,\n isDropping,\n disabled,\n isLoading,\n isSubmitting,\n category: !!category && !isGuest,\n })}\n onKeyDown={handleKeyDown}\n onClick={handleOpenClick}\n $categoryPrimary={categoryData?.color}\n $categoryTertiary={blendedCategoryColor.primary}\n $categorySecondary={blendedCategoryColor.secondary}\n >\n <Styled.Markdown ref={markdownRef}>\n {/* this is purely used to translate the markdown into html for Editor */}\n <InputMarkdownConvert typeOptions={mentionTypeOptions} initValue={initValue} />\n </Styled.Markdown>\n\n {/* file uploads */}\n {isOpen && (\n <FilesGrid\n files={allFiles}\n isCompact={compactGrid || isEditing}\n onRemove={handleFileRemove}\n projectName={projectName}\n onAnnotationClick={goToAnnotation}\n style={{\n borderBottom: '1px solid var(--md-sys-color-outline-variant)',\n height: '100%',\n }}\n isEditing\n pt={{\n file: {\n style: {\n height: isEditing ? 70 : undefined,\n },\n },\n }}\n />\n )}\n {isOpen && !disabled ? (\n <QuillListStyles ref={editorContainerRef}>\n {!isGuest && (\n <ActivityCategorySelect\n value={category}\n categories={categoryOptions}\n onChange={(c) => setCategory(c)}\n isCompact={isEditing}\n hasPowerpack={hasLicense}\n onPowerFeature={onPowerFeature}\n isHidden={isCategoryHidden(categoryOptions, { isGuest, isAdmin })}\n style={{\n position: isEditing ? 'relative' : 'absolute',\n left: 4,\n top: isEditing ? 0 : 4,\n }}\n />\n )}\n\n <ReactQuill\n theme=\"snow\"\n style={{ minHeight: quillMinHeight, maxHeight: 300 }}\n ref={editorRef}\n value={editorValue}\n onChange={handleChange}\n readOnly={!isOpen}\n placeholder={getCommentPlaceholder(true)}\n modules={modules}\n formats={quillFormats}\n />\n </QuillListStyles>\n ) : (\n <Styled.Placeholder>{getCommentPlaceholder()}</Styled.Placeholder>\n )}\n\n <Styled.Footer>\n {!isGuest && (\n <Styled.Buttons>\n {/* mention a user */}\n <Button\n icon=\"person\"\n variant=\"text\"\n onClick={() => handleMentionButton('@')}\n data-tooltip={'Mention user'}\n data-shortcut={'@'}\n />\n {/* mention a version */}\n <Button\n icon=\"layers\"\n variant=\"text\"\n onClick={() => handleMentionButton('@@')}\n data-tooltip={'Mention version'}\n data-shortcut={'@@'}\n />\n {/* mention a task */}\n <Button\n icon=\"check_circle\"\n variant=\"text\"\n onClick={() => handleMentionButton('@@@')}\n data-tooltip={'Mention task'}\n data-shortcut={'@@@'}\n />\n </Styled.Buttons>\n )}\n <Styled.SubmitButtons>\n {isEditing && (\n <Button variant=\"text\" onClick={handleClose}>\n Cancel\n </Button>\n )}\n <SaveButton\n label={isEditing ? 'Save' : 'Comment'}\n className=\"comment\"\n active={!!editorValue || !!files.length}\n onClick={handleSubmit}\n disabled={isLoading}\n />\n </Styled.SubmitButtons>\n </Styled.Footer>\n\n <Styled.Dropzone className={clsx({ show: isDropping && isOpen })}>\n <Icon icon=\"cloud_upload\" />\n </Styled.Dropzone>\n </Styled.Comment>\n <CommentMentionSelect\n mention={mention}\n options={shownMentionOptions}\n onChange={handleSelectChange}\n onPrefixFilter={(prefix) => {\n setMentionPrefix(prefix)\n setMentionSelectedIndex(0)\n }}\n activePrefix={mentionPrefix ? mentionPrefix.replace(':', '') : undefined}\n types={mentionTypes}\n // @ts-ignore\n config={mentionTypeOptions[mention?.type]}\n noneFound={!shownMentionOptions.length && (mention?.search || mentionPrefix)}\n noneFoundAtAll={!shownMentionOptions.length && !mention?.search && !mentionPrefix}\n selectedIndex={mentionSelectedIndex}\n // @ts-ignore\n error={mentionsError}\n isGuest={isGuest}\n />\n\n <Styled.VersionReviewButtonsSpacer />\n {versionReviewButtons}\n </Styled.AutoHeight>\n </>\n )\n}\n\nexport default CommentInput\n"],"names":["Delta","Quill","EMPTY_EDITOR_VALUE","mentionTypes","CommentInput","initValue","initFiles","initCategory","data","versionReview","lastOwnVersionReview","onSubmit","onReview","isEditing","disabled","isLoading","isOpen","onOpen","onClose","projectName","entities","projectInfo","scope","feedFilter","mentionSuggestionsData","categories","isGuest","useFeedContext","hasLicense","onPowerFeature","user","useDetailsPanelContext","isAdmin","project","useProjectContext","mentionUsers","mentionTeams","mentionVersions","mentionTasks","initHeight","setInitHeight","useState","editorValue","setEditorValue","files","setFiles","filesUploading","setFilesUploading","isDropping","setIsDropping","isSubmitting","setIsSubmitting","annotations","removeAnnotation","goToAnnotation","useAnnotationsSync","mention","setMention","mentionSelectedIndex","setMentionSelectedIndex","mentionPrefix","setMentionPrefix","clearMention","category","setCategory","categoryOptions","cat","categoryData","blendedCategoryColor","useBlendedCategoryColor","editorRef","useRef","editorContainerRef","markdownRef","useInitialValue","useSetCursorEnd","useMentionLink","useEffect","a","b","mentionSearchWithPrefix","mentionOptions","useMemo","getMentionOptions","getMentionUsers","getMentionVersions","getMentionTasks","shownMentionOptions","newSelection","setNewSelection","handleSelectMention","selectedOption","quill","typePrefix","search","mentionLabel","type","mentionTypeOptions","href","startIndex","endIndex","handleSelectChange","option","handleChange","content","delta","_","editor","currentCharacter","tabOrEnter","isDelete","mentionIndex","op","retain","mentionMatch","chars","isMatch","i","char","indexInDelta","distanceMentionToRetain","mentionFull","mentionSearch","currentSelection","lineBlock","lastMentionOp","mentionLength","addTextToEditor","typeWithDelay","handleMentionButton","length","start","handleOpenClick","handleClose","handleFileUploaded","file","fileName","parseFilename","newFile","prev","uploading","handleFileRemove","id","name","isUnsavedAnnotation","handleFileProgress","e","progress","uploadProgress","handleDrop","handleFileDrop","handleDragOver","uploadAnnotations","useAnnotationsUpload","handleSubmit","annotationFiles","annotationMetadata","metadata","annotationsData","markdown","convertToMarkdown","markdownParsed","parseImages","uploadedFiles","newData","error","toast","handleKeyDown","arrowDirection","newIndex","quillMinHeight","modules","getModules","allFiles","compactGrid","mentionsError","getCommentPlaceholder","handleReviewSubmit","status","versionReviewButtons","jsxs","Styled.VersionReviewButtons","clsx","jsx","Styled.VersionReviewButton","VersionReviewFeedback","Fragment","Styled.AutoHeight","VersionReviewPill","Styled.Comment","Styled.Markdown","InputMarkdownConvert","FilesGrid","QuillListStyles","ActivityCategorySelect","c","isCategoryHidden","ReactQuill","quillFormats","Styled.Placeholder","Styled.Footer","Styled.Buttons","Button","Styled.SubmitButtons","SaveButton","Styled.Dropzone","Icon","CommentMentionSelect","prefix","Styled.VersionReviewButtonsSpacer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,IAAIA,KAAQC,GAAM,OAAO,OAAO;AAEhC,MAAMC,KAAqB,eAErBC,IAAe,CAAC,KAAK,MAAM,KAAK,GAmBhCC,KAAsC,CAAC;AAAA,EAC3C,WAAAC;AAAA,EACA,WAAAC,KAAY,CAAA;AAAA,EACZ,cAAAC,KAAe;AAAA,EACf,MAAAC,IAAO,CAAA;AAAA,EACP,eAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,SAAAC;AACF,MAAM;AACJ,QAAM;AAAA,IACJ,aAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,YAAAC;AAAA,IACA,SAAAC;AAAA,EAAA,IACEC,GAAA,GAEE,EAAE,YAAAC,IAAY,gBAAAC,IAAgB,MAAAC,GAAA,IAASC,GAAA,GACvCC,KAAUF,IAAM,MAAM,SAEtBG,KAAUC,GAAA,GAEV;AAAA,IACJ,OAAOC;AAAA,IACP,OAAOC;AAAA,IACP,UAAUC;AAAA,IACV,OAAOC;AAAA,EAAA,IACLd,MAA0B,CAAA,GAExB,CAACe,IAAYC,EAAa,IAAIC,EAAS,EAAE,GACzC,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAE,GAE3C,CAACG,GAAOC,CAAQ,IAAIJ,EAASnC,EAAS,GACtC,CAACwC,GAAgBC,CAAiB,IAAIN,EAAS,CAAA,CAAE,GACjD,CAACO,IAAYC,CAAa,IAAIR,EAAS,EAAK,GAC5C,CAACS,IAAcC,EAAe,IAAIV,EAAS,EAAK,GAEhD,EAAE,aAAAW,GAAa,kBAAAC,IAAkB,gBAAAC,GAAA,IAAmBC,GAAmB;AAAA,IAC3E,UAAUnC,EAAS,CAAC,GAAG;AAAA,IACvB,gBAAA0B;AAAA,EAAA,CACD,GAGK,CAACU,GAASC,CAAU,IAAIhB,EAAqB,IAAI,GACjD,CAACiB,GAAsBC,CAAuB,IAAIlB,EAAS,CAAC,GAE5D,CAACmB,GAAeC,EAAgB,IAAIpB,EAAS,EAAE,GAE/CqB,IAAe,MAAM;AACzB,IAAAL,EAAW,IAAI,GACfE,EAAwB,CAAC,GACzBE,GAAiB,EAAE;AAAA,EACrB,GAEM,CAACE,GAAUC,EAAW,IAAIvB,EAAwBlC,EAAY,GAC9D0D,KAAkBxC,GAAW,OAAO,CAACyC,MAAQA,EAAI,eAAe,EAAE,GAClEC,KAAe1C,GAAW,KAAK,CAACyC,MAAQA,EAAI,SAASH,CAAQ,GAE7DK,KAAuBC,GAAwBF,IAAc,KAAK,GAElEG,IAAYC,EAAY,IAAI,GAC5BC,KAAqBD,EAAuB,IAAI,GAEhDE,KAAcF,EAAuB,IAAI;AAG/C,EAAAG,GAAgB;AAAA,IACd,aAAAD;AAAA,IACA,WAAApE;AAAA,IACA,gBAAAsC;AAAA,IACA,eAAAH;AAAA,IACA,QAAAxB;AAAA,IACA,QAAQO;AAAA,EAAA,CACT,GAGDoD,GAAgB,EAAE,YAAApC,IAAY,WAAA+B,GAAW,WAAAzD,EAAA,CAAW,GAEpD+D,GAAe,EAAE,aAAAzD,GAAa,GAG9B0D,GAAU,MAAM;AACd,QAAI7D,GAAQ;AAGV,UAFAsD,EAAU,SAAS,UAAA,GAAa,OAAA,GAE5BlB,EAAY,SAAS,KAAKR,EAAM,WAAW;AAC7C;AAGF,MAAA0B,EAAU,SAAS,MAAA;AAAA,IACrB;AAAA,EAGF,GAAG,CAACtD,GAAQsD,CAAS,CAAC,GAEtBnE,EAAa,KAAK,CAAC2E,GAAGC,MAAMA,EAAE,SAASD,EAAE,MAAM;AAG/C,QAAME,KAA0BpB,KAAiBJ,GAAS,UAAU,KAE9DyB,KAAiBC;AAAA,IACrB,MACEC;AAAA,MACE3B,GAAS;AAAA,MACT;AAAA,QACE,KAAK,MAAM4B,GAAgBjD,IAAcC,EAAY;AAAA,QACrD,MAAM,MAAMiD,GAAmBhD,IAAiBJ,EAAO;AAAA,QACvD,OAAO,MAAMqD,GAAgBhD,IAAcjB,GAAY,SAAS;AAAA,MAAA;AAAA,MAElE2D,MAA2B;AAAA,IAAA;AAAA,IAE/B;AAAA,MACE1C;AAAA,MACAD;AAAA,MACAF;AAAA,MACAC;AAAA,MACAoB,GAAS;AAAA,MACTwB;AAAA,IAAA;AAAA,EACF,GAIIO,IAAsBN,GAAe,MAAM,GAAG,CAAC,GAG/C,CAACO,GAAcC,EAAe,IAAIhD,EAAA;AAExC,EAAAoC,GAAU,MAAM;AACd,IAAIW,MACFC,GAAgB,IAAI,GAENnB,EAAU,QAAQ,UAAA,EAC1B,aAAakB,CAAY;AAAA,EAEnC,GAAG,CAACA,CAAY,CAAC;AAEjB,QAAME,KAAsB,CAACC,MAAwB;AAEnD,UAAMC,IAAQtB,EAAU,QAAQ,UAAA,GAE1BuB,IAAarC,EAAQ,MACrBsC,IAASD,KAAcrC,EAAQ,UAAU,KACzCuC,IAAeF,IAAaF,EAAe,OAE3CK,IAAOC,EAAmBJ,CAAU,GAGpCK,IAAO,GADGP,EAAe,QAAQK,GAAM,EACtB,IAAIL,EAAe,EAAE,IAKtCQ,KAFYP,EAAM,aAAa,EAAI,GACP,SAAS,KACPE,EAAO;AAG3C,IAAAF,EAAM,WAAWO,GAAYL,EAAO,MAAM,GAG1CF,EAAM,WAAWO,GAAYJ,GAAc,WAAWG,CAAI;AAE1D,UAAME,IAAWD,IAAaJ,EAAa;AAG3C,IAAAH,EAAM,eAAe,IAAI5F,GAAA,EAAQ,OAAOoG,CAAQ,EAAE,OAAO,GAAG,CAAC,GAG7DR,EAAM,eAAe,IAAI5F,KAAQ,OAAOoG,IAAW,CAAC,EAAE,OAAO,CAAC,CAAC,GAG/DX,GAAgBW,IAAW,CAAC,GAG5BtC,EAAA;AAAA,EACF,GAEMuC,KAAqB,CAACC,MAAgB;AAC1C,IAAAZ,GAAoBY,CAAM;AAAA,EAC5B,GAEMC,KAAe,CAACC,GAAiBC,GAAYC,GAAQC,MAAgB;AACzE,QAAIC,IACDH,EAAM,IAAI,CAAC,KAAKA,EAAM,IAAI,CAAC,EAAE,UAAYA,EAAM,IAAI,CAAC,KAAKA,EAAM,IAAI,CAAC,EAAE;AAEzE,UAAMI,IAAaD,MAAqB;AAAA,KAAQA,MAAqB,KAE/DjB,IAAiBV,GAAevB,CAAoB;AAE1D,QAAIF,KAAWqD,KAAclB,KAAkB,CAACjE,GAAS;AAEvC,MAAA+E,EAAM,IAAI,CAAC,KAAKA,EAAM,IAAI,CAAC,EAAE,QAI7Cf,GAAoBC,CAAsB;AAE1C;AAAA,IACF;AAEA,IAAAhD,EAAe6D,CAAO;AAEtB,UAAMM,IAAWL,EAAM,IAAI,WAAW,KAAK,CAAC,CAACA,EAAM,IAAI,CAAC,EAAE;AAQ1D,QANI,CAACG,KAAoBE,MACvBF,IAAmBD,EAAO,QAAQF,EAAM,IAAI,CAAC,EAAE,SAAS,GAAG,CAAC,IAG5CtG,EAAa,SAASyG,CAAgB,GAEzC;AACb,YAAMG,IAAeN,EAAM,IAAI,UAAU,CAACO,MAAY,YAAYA,KAAM,YAAYA,CAAE,GAChFxD,IAAUoD;AAChB,UAAIK,IAASF,MAAiB,IAAI,IAAIN,EAAM,IAAIM,IAAe,CAAC,EAAE;AAClE,MAAID,UAAmBG,IAAS;AAIhC,UAAIC,IAAe;AAGnB,iBAAWC,KAAShH,GAAc;AAChC,YAAIiH,IAAU;AAEd,YAAID,EAAM,SAAS3D,CAAO;AAExB,mBAAS6D,IAAIF,EAAM,SAAS,GAAGE,KAAK,GAAGA,KAAK;AAE1C,gBAAIA,MAAM,EAAG;AACb,kBAAMC,KAAOH,EAAME,IAAI,CAAC,GAClBE,KAAeN,KAAUE,EAAM,SAASE;AAE9C,gBADyBV,EAAO,QAAQY,IAAc,CAAC,MAC9BD,IAAM;AAC7B,cAAAF,IAAU;AACV;AAAA,YACF;AAAA,UACF;AAAA;AAEA,UAAAA,IAAU;AAGZ,YAAIA,GAAS;AAEX,UAAAF,IAAeC;AACf;AAAA,QACF;AAAA,MACF;AAEA,MAAID,IACFzD,EAAW;AAAA,QACT,MAAMyD;AAAA,QACN,QAAAD;AAAA,MAAA,CACD,IAEDnD,EAAA;AAAA,IAEJ,WAGMN,GAAS;AACX,YAAMyD,IAASR,EAAM,IAAI,CAAC,EAAE;AAE5B,UAAIG,MAAqB,OAAO,CAACK,GAAQ;AACvC,QAAAnD,EAAA;AACA;AAAA,MACF;AAEA,UAAI0D,IAA0BP,IAASzD,EAAQ;AAC/C,MAAKsD,KAAUU;AACf,YAAMC,IAAcd,EAAO,QAAQnD,EAAQ,QAAQgE,CAAuB,GACpEE,IAAgBD,EAAY,QAAQjE,EAAQ,KAAK,MAAM,EAAE,GAAG,EAAE;AAEpE,MAAIiE,EAAY,SAAS,GAAG,IAC1B3D,EAAA,IAEAL,EAAW;AAAA,QACT,GAAGD;AAAA,QACH,QAAQkE,GAAe,YAAA;AAAA,MAAY,CACpC;AAAA,IAEL,WAAWZ,GAAU;AAEnB,YAAMlB,IAAQtB,EAAU,QAAQ,UAAA,GAC1BqD,IAAmB/B,EAAM,aAAa,EAAK;AAEjD,UADsBA,EAAM,UAAU+B,GAAkB,OAAOA,GAAkB,MAAM,EACrE,SAAS;AACzB,cAAM,CAACC,CAAS,IAAIhC,EAAM,QAAQ+B,EAAiB,QAAQ,CAAC,KAAK,CAAA,GAE3DE,KADMD,GAAW,OAAO,OAAO,OAAO,CAAA,GAClB,UAAU,KAAK,CAACZ,MAAYA,EAAG,YAAY,OAAO;AAC5E,YAAIa,GAAe;AACjB,gBAAMC,IAAgBD,EAAc,OAAO;AAC3C,UAAAjC,EAAM,WAAW+B,EAAiB,QAAQG,GAAeA,CAAa;AAAA,QACxE;AAAA,MACF;AAAA,IACF;AAAA,EAEJ,GAEMC,KAAkB,CAAC/B,MAAiB;AAExC,UAAMJ,IAAQtB,EAAU,QAAQ,UAAA;AAEhC,QAAI2C,IAASrB,EAAM,aAAa,EAAI,GAAG,SAAS;AAGhD,UAAMgB,IAAmBhB,EAAM,QAAQqB,IAAS,GAAG,CAAC;AAIpD,IADiBL,MAAqB,OAAOA,MAE3ChB,EAAM,WAAWqB,GAAQ,GAAG,GAC5BA,MAIFe,GAAcpC,GAAOqB,GAAQjB,CAAI;AAAA,EACnC,GAEMiC,IAAsB,CAACjC,MAAiB;AAE5C,QAAIxC,GAAS;AACX,YAAM,EAAE,MAAAwC,GAAM,QAAAiB,GAAQ,QAAAnB,IAAS,OAAOtC,GAEhCoC,IAAQtB,EAAU,QAAQ,UAAA,GAC1B4D,IAASlC,EAAK,SAASF,EAAO,QAC9BqC,IAAQlB,IAASjB,EAAK,SAAS;AAErC,MAAAJ,EAAM,WAAWuC,GAAOD,CAAM;AAAA,IAChC;AAEA,IAAAH,GAAgB/B,CAAI;AAAA,EACtB,GAEMoC,KAAkB,MAAM;AAC5B,IAAIpH,KAAUF,KAEdG,MAAUA,GAAA;AAAA,EACZ,GAEMoH,KAAc,MAAM;AAIxB,KAFe/D,EAAU,QAAQ,UAAA,EACb,QAAA,EACX,SAAS,KAAKzD,MACrB8B,EAAe,EAAE,GAInBzB,MAAWA,GAAA;AAAA,EACb,GAEMoH,IAAqB,CAAC,EAAE,MAAAC,GAAM,MAAA/H,QAAgB;AAClD,UAAMgI,IAAWC,EAAcF,EAAK,IAAI,GAClCG,IAAU;AAAA,MACd,IAAIlI,EAAK;AAAA,MACT,MAAMgI;AAAA,MACN,MAAMD,EAAK;AAAA,MACX,MAAMA,EAAK;AAAA,MACX,OAAO3F,EAAM;AAAA,IAAA;AAGf,WAAAC,EAAS,CAAC8F,MAAS,CAAC,GAAGA,GAAMD,CAAO,CAAC,GAErC3F;AAAA,MAAkB,CAAC4F,MACjBA,EAAK,OAAO,CAACC,MAAmBH,EAAcG,EAAU,IAAI,MAAMJ,CAAQ;AAAA,IAAA,GAGrEE;AAAA,EACT,GAEMG,KAAmB,CAACC,GAAYC,GAAcC,MAAiC;AACnF,IAAIA,IAEF3F,KAAmByF,CAAE,KAGrBjG,EAAS,CAAC8F,MAASA,EAAK,OAAO,CAACJ,MAASA,EAAK,OAAOO,CAAE,CAAC,GAExD/F,EAAkB,CAAC4F,MACVA,EAAK,OAAO,CAACJ,MAAcE,EAAcF,EAAK,IAAI,MAAME,EAAcM,CAAI,CAAC,CACnF;AAAA,EAEL,GAEME,KAAqB,CAACC,GAAQX,MAAc;AAChD,UAAMY,IAAW,KAAK,MAAOD,EAAE,SAAS,MAAOA,EAAE,KAAK;AACtD,QAAIC,MAAa,KAAK;AACpB,YAAMX,IAAWC,EAAcF,EAAK,IAAI,GAClCa,IAAiB;AAAA,QACrB,MAAMZ;AAAA,QACN,UAAAW;AAAA,QACA,MAAMZ,EAAK;AAAA,QACX,OAAO3F,EAAM,SAASE,EAAe;AAAA,MAAA;AAIvC,MAAAC,EAAkB,CAAC4F,MAGV,CAAC,GADYA,EAAK,OAAO,CAACI,MAAcN,EAAcM,EAAK,IAAI,MAAMP,CAAQ,GAC5DY,CAAc,CACvC;AAAA,IACH;AAAA,EACF,GAGMC,KAAa,CAACH,MAAuC;AACzD,IAAAjG,EAAc,EAAK,GAEnBqG,GAAeJ,GAAG/H,GAAa8H,IAAoBX,CAAkB;AAAA,EACvE,GAEMiB,KAAiB,CAACL,MAAuC;AAC7D,IAAAA,EAAE,eAAA,GACFA,EAAE,gBAAA,GACFjG,EAAc,EAAI;AAAA,EACpB,GAEMuG,KAAoBC,GAAqB;AAAA,IAC7C,aAAAtI;AAAA,IACA,WAAWmH;AAAA,EAAA,CACZ,GAEKoB,IAAe,YAAY;AAC/B,QAAI;AACF,MAAAvG,GAAgB,EAAI;AAGpB,UAAIwG,IAAkB,CAAA,GAClBC;AACJ,UAAIxG,EAAY,QAAQ;AACtB,cAAM,EAAE,OAAAR,GAAO,UAAAiH,MAAa,MAAML,GAAkBpG,CAAW;AAC/D,QAAAuG,IAAkB/G;AAElB,cAAM,EAAE,aAAakH,IAAkB,CAAA,EAAC,IAAMtJ,KAAQ,CAAA;AAEtD,QAAAoJ,IAAqB,CAAC,GAAGE,GAAiB,GAAGD,CAAQ;AAAA,MACvD;AAGA,YAAM,CAACE,CAAQ,IAAIC,GAAkBtH,CAAW,GAG1CuH,IAAiBC,GAAYH,CAAQ,GAErCI,IAAgB,CAAC,GAAGvH,GAAO,GAAG+G,CAAe,GAE7CS,IAAU;AAAA,QACd,GAAG5J;AAAA,QACH,aAAaoJ;AAAA;AAAA,QACb,UAAUlI,IAAU,OAAOqC;AAAA;AAAA,MAAA;AAG7B,WAAKkG,KAAkBE,EAAc,WAAWxJ;AAC9C,YAAI;AACF,gBAAMA,GAASsJ,GAAgBE,GAAeC,CAAO,GAErDzH,EAAe,EAAE,GACjBE,EAAS,CAAA,CAAE;AAAA,QACb,QAAgB;AAEd;AAAA,QACF;AAAA,IAEJ,SAASwH,GAAO;AACd,cAAQ,MAAMA,CAAK,GACnBC,GAAM,MAAM,sBAAsB;AAAA,IACpC,UAAA;AACE,MAAAnH,GAAgB,EAAK;AAAA,IACvB;AAAA,EACF,GAEMoH,KAAgB,CAACrB,MAAwC;AAC7D,QAAI1F,GAAS;AAEX,UAAI0F,EAAE,QAAQ,UAAU;AACtB,QAAApF,EAAA;AACA;AAAA,MACF;AAGA,MAAIN,KAAW0F,EAAE;AAIjB,YAAMsB,IAAiBtB,EAAE,QAAQ,YAAY,KAAKA,EAAE,QAAQ,cAAc,IAAI;AAE9E,UAAIsB,GAAgB;AAElB,QAAAtB,EAAE,eAAA;AACF,YAAIuB,IAAW/G,IAAuB8G;AACtC,QAAIC,IAAW,MAAGA,IAAWlF,EAAoB,SAAS,IACtDkF,KAAYlF,EAAoB,WAAQkF,IAAW,IACvD9G,EAAwB8G,CAAQ;AAAA,MAClC;AAEA,MAAIvB,EAAE;AAAA,IAGR;AAEA,IAAIA,EAAE,QAAQ,YAAYA,EAAE,WAAWA,EAAE,YACvCQ,EAAA,GAGER,EAAE,QAAQ,YACZb,GAAA;AAAA,EAEJ;AAEA,MAAIqC,KAAqC1J,IAASuB,KAAa,KAAK;AACpE,EAAI1B,MAAW6J,KAAiB;AAGhC,QAAMC,KAAUzF;AAAA,IACd,MACE0F,GAAW;AAAA,MACT,eAAe;AAAA,QACb,aAAAzJ;AAAA,QACA,UAAUmH;AAAA,QACV,kBAAkBW;AAAA,MAAA;AAAA,MAEpB,oBAAAhD;AAAA,IAAA,CACD;AAAA,IACH,CAAC9E,GAAa0B,GAAUE,CAAiB;AAAA,EAAA,GAGrC8H,KAAW,CAAC,GAAGzH,GAAa,GAAIR,KAAS,IAAK,GAAGE,CAAc,EAAE;AAAA,IACrE,CAACgC,GAAGC,MAAMD,EAAE,QAAQC,EAAE;AAAA,EAAA,GAElB+F,KAAcD,GAAS,SAAS;AAGtC,MAAIE,KAAgB;AACpB,EAAI3J,EAAS,UAAUA,EAAS,CAAC,EAAE,eAAe,YAC5CoC,GAAS,SAAS,SACpBuH,KAAgB;AAIpB,QAAMC,KAAwB,CAAChK,MACzBF,IACEY,IAAgB,2CACb,qDAGLA,KAAW,CAACV,IAAe,oBAExB,wDAGHiK,KAAqB,OAAOC,MAAkC;AAClE,QAAKtK;AACL,UAAI;AAMF,SAJG8B,KAAeA,MAAgBxC,MAChC0C,EAAM,SAAS,KACfQ,EAAY,SAAS,MAGrB,MAAMsG,EAAA,GAGR9I,EAASsK,CAAM;AAAA,MACjB,SAASb,GAAO;AACd,gBAAQ,MAAMA,CAAK,GACnBC,GAAM,MAAM,kDAAkD;AAAA,MAChE;AAAA,EACF,GAEMa,KAAuB1K,MAAiBG,KAC5CwK,gBAAAA,EAAAA,KAACC,IAAA,EAA4B,WAAWC,EAAK,0BAA0B,EAAE,OAAO5J,EAAA,CAAS,GACvF,UAAA;AAAA,IAAA6J,gBAAAA,EAAAA;AAAAA,MAACC;AAAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,gBAAa;AAAA,QACb,SAAS,MAAMP,GAAmBQ,GAAsB,OAAO;AAAA,QAE/D,UAAAF,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAU,SAAQ,UAAA,UAAA,CAAO;AAAA,MAAA;AAAA,IAAA;AAAA,IAEjCA,gBAAAA,EAAAA;AAAAA,MAACC;AAAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,gBAAa;AAAA,QACb,SAAS,MAAMP,GAAmBQ,GAAsB,eAAe;AAAA,QAEvE,UAAAF,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAU,SAAQ,UAAA,kBAAA,CAAe;AAAA,MAAA;AAAA,IAAA;AAAA,EACzC,GACF;AAGF,SACEA,gBAAAA,MAAAG,EAAAA,UAAA,EACE,UAAAN,gBAAAA,EAAAA;AAAAA,IAACO;AAAAA,IAAA;AAAA,MACC,WAAWL,EAAK,qBAAqB,EAAE,QAAAtK,GAAQ,WAAAH,GAAW;AAAA,MAC1D,YAAY0I;AAAA,MACZ,aAAa,MAAMtG,EAAc,EAAK;AAAA,MACtC,QAAQoG;AAAA,MACR,SAAS,MAAMpG,EAAc,EAAK;AAAA,MAClC,WAAW,CAACiG,MAAMA,EAAE,gBAAA;AAAA,MAEnB,UAAA;AAAA,QAAAzI,MAAiBC,MAChB6K,gBAAAA,EAAAA,IAACK,IAAA,EAAkB,sBAAAlL,GAAA,CAA4C;AAAA,QAGjE0K,gBAAAA,EAAAA;AAAAA,UAACS;AAAAA,UAAA;AAAA,YACC,WAAWP,EAAK,mBAAmB;AAAA,cACjC,QAAAtK;AAAA,cACA,UAAU,CAACA,KAAUF;AAAA,cACrB,WAAAD;AAAA,cACA,YAAAmC;AAAA,cACA,UAAAlC;AAAA,cACA,WAAAC;AAAA,cACA,cAAAmC;AAAA,cACA,UAAU,CAAC,CAACa,KAAY,CAACrC;AAAA,YAAA,CAC1B;AAAA,YACD,WAAW6I;AAAA,YACX,SAASnC;AAAA,YACT,kBAAkBjE,IAAc;AAAA,YAChC,mBAAmBC,GAAqB;AAAA,YACxC,oBAAoBA,GAAqB;AAAA,YAEzC,UAAA;AAAA,cAAAmH,gBAAAA,EAAAA,IAACO,IAAA,EAAgB,KAAKrH,IAEpB,gCAACsH,IAAA,EAAqB,aAAa9F,GAAoB,WAAA5F,EAAA,CAAsB,EAAA,CAC/E;AAAA,cAGCW,KACCuK,gBAAAA,EAAAA;AAAAA,gBAACS;AAAA,gBAAA;AAAA,kBACC,OAAOnB;AAAA,kBACP,WAAWC,MAAejK;AAAA,kBAC1B,UAAUgI;AAAA,kBACV,aAAA1H;AAAA,kBACA,mBAAmBmC;AAAA,kBACnB,OAAO;AAAA,oBACL,cAAc;AAAA,oBACd,QAAQ;AAAA,kBAAA;AAAA,kBAEV,WAAS;AAAA,kBACT,IAAI;AAAA,oBACF,MAAM;AAAA,sBACJ,OAAO;AAAA,wBACL,QAAQzC,IAAY,KAAK;AAAA,sBAAA;AAAA,oBAC3B;AAAA,kBACF;AAAA,gBACF;AAAA,cAAA;AAAA,cAGHG,KAAU,CAACF,IACVsK,gBAAAA,EAAAA,KAACa,IAAA,EAAgB,KAAKzH,IACnB,UAAA;AAAA,gBAAA,CAAC9C,KACA6J,gBAAAA,EAAAA;AAAAA,kBAACW;AAAA,kBAAA;AAAA,oBACC,OAAOnI;AAAA,oBACP,YAAYE;AAAA,oBACZ,UAAU,CAACkI,MAAMnI,GAAYmI,CAAC;AAAA,oBAC9B,WAAWtL;AAAA,oBACX,cAAce;AAAA,oBACd,gBAAAC;AAAA,oBACA,UAAUuK,GAAiBnI,IAAiB,EAAE,SAAAvC,GAAS,SAAAM,IAAS;AAAA,oBAChE,OAAO;AAAA,sBACL,UAAUnB,IAAY,aAAa;AAAA,sBACnC,MAAM;AAAA,sBACN,KAAKA,IAAY,IAAI;AAAA,oBAAA;AAAA,kBACvB;AAAA,gBAAA;AAAA,gBAIJ0K,gBAAAA,EAAAA;AAAAA,kBAACc;AAAA,kBAAA;AAAA,oBACC,OAAM;AAAA,oBACN,OAAO,EAAE,WAAW3B,IAAgB,WAAW,IAAA;AAAA,oBAC/C,KAAKpG;AAAA,oBACL,OAAO5B;AAAA,oBACP,UAAU6D;AAAA,oBACV,UAAU,CAACvF;AAAA,oBACX,aAAagK,GAAsB,EAAI;AAAA,oBACvC,SAAAL;AAAA,oBACA,SAAS2B;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACX,EAAA,CACF,IAEAf,gBAAAA,EAAAA,IAACgB,IAAA,EAAoB,gBAAwB;AAAA,cAG/CnB,gBAAAA,OAACoB,IAAA,EACE,UAAA;AAAA,gBAAA,CAAC9K,KACA0J,gBAAAA,EAAAA,KAACqB,IAAA,EAEC,UAAA;AAAA,kBAAAlB,gBAAAA,EAAAA;AAAAA,oBAACmB;AAAA,oBAAA;AAAA,sBACC,MAAK;AAAA,sBACL,SAAQ;AAAA,sBACR,SAAS,MAAMzE,EAAoB,GAAG;AAAA,sBACtC,gBAAc;AAAA,sBACd,iBAAe;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAGjBsD,gBAAAA,EAAAA;AAAAA,oBAACmB;AAAA,oBAAA;AAAA,sBACC,MAAK;AAAA,sBACL,SAAQ;AAAA,sBACR,SAAS,MAAMzE,EAAoB,IAAI;AAAA,sBACvC,gBAAc;AAAA,sBACd,iBAAe;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAGjBsD,gBAAAA,EAAAA;AAAAA,oBAACmB;AAAA,oBAAA;AAAA,sBACC,MAAK;AAAA,sBACL,SAAQ;AAAA,sBACR,SAAS,MAAMzE,EAAoB,KAAK;AAAA,sBACxC,gBAAc;AAAA,sBACd,iBAAe;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACjB,GACF;AAAA,gBAEFmD,gBAAAA,OAACuB,IAAA,EACE,UAAA;AAAA,kBAAA9L,2BACE6L,GAAA,EAAO,SAAQ,QAAO,SAASrE,IAAa,UAAA,UAE7C;AAAA,kBAEFkD,gBAAAA,EAAAA;AAAAA,oBAACqB;AAAA,oBAAA;AAAA,sBACC,OAAO/L,IAAY,SAAS;AAAA,sBAC5B,WAAU;AAAA,sBACV,QAAQ,CAAC,CAAC6B,KAAe,CAAC,CAACE,EAAM;AAAA,sBACjC,SAAS8G;AAAA,sBACT,UAAU3I;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACZ,EAAA,CACF;AAAA,cAAA,GACF;AAAA,oCAEC8L,IAAA,EAAgB,WAAWvB,EAAK,EAAE,MAAMtI,MAAchC,EAAA,CAAQ,GAC7D,UAAAuK,gBAAAA,EAAAA,IAACuB,IAAA,EAAK,MAAK,gBAAe,EAAA,CAC5B;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAEFvB,gBAAAA,EAAAA;AAAAA,UAACwB;AAAA,UAAA;AAAA,YACC,SAAAvJ;AAAA,YACA,SAAS+B;AAAA,YACT,UAAUc;AAAA,YACV,gBAAgB,CAAC2G,MAAW;AAC1B,cAAAnJ,GAAiBmJ,CAAM,GACvBrJ,EAAwB,CAAC;AAAA,YAC3B;AAAA,YACA,cAAcC,IAAgBA,EAAc,QAAQ,KAAK,EAAE,IAAI;AAAA,YAC/D,OAAOzD;AAAA,YAEP,QAAQ8F,EAAmBzC,GAAS,IAAI;AAAA,YACxC,WAAW,CAAC+B,EAAoB,WAAW/B,GAAS,UAAUI;AAAA,YAC9D,gBAAgB,CAAC2B,EAAoB,UAAU,CAAC/B,GAAS,UAAU,CAACI;AAAA,YACpE,eAAeF;AAAA,YAEf,OAAOqH;AAAA,YACP,SAAArJ;AAAA,UAAA;AAAA,QAAA;AAAA,QAGF6J,gBAAAA,EAAAA,IAAC0B,IAAA,EAAkC;AAAA,QAClC9B;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAEL;AAEJ;"}
1
+ {"version":3,"file":"CommentInput.es.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/CommentInput.tsx"],"sourcesContent":["// React and related hooks\nimport React, { FC, useEffect, useMemo, useRef, useState } from 'react'\n\n// Third-party libraries\nimport clsx from 'clsx'\nimport { toast } from 'react-toastify'\nimport ReactQuill, { Quill } from 'react-quill-ayon'\n\n// Components\nimport { Button, Icon, SaveButton } from '@ynput/ayon-react-components'\nimport CommentMentionSelect from '../CommentMentionSelect/CommentMentionSelect'\nimport InputMarkdownConvert from './InputMarkdownConvert'\nimport FilesGrid from '../FilesGrid'\n\n// Styled components\nimport * as Styled from './CommentInput.styled'\nimport { QuillListStyles } from '../../../../components/QuillListStyles'\n\n// Helpers and utilities\nimport getMentionOptions from '../../mentionHelpers/getMentionOptions'\nimport getMentionUsers from '../../mentionHelpers/getMentionUsers'\nimport getMentionTasks from '../../mentionHelpers/getMentionTasks'\nimport getMentionVersions from '../../mentionHelpers/getMentionVersions'\nimport { convertToMarkdown } from './quillToMarkdown'\nimport { handleFileDrop, parseImages, typeWithDelay } from './helpers'\nimport { getModules, quillFormats } from './modules'\n\n// Hooks\nimport useInitialValue from './hooks/useInitialValue'\nimport useSetCursorEnd from './hooks/useSetCursorEnd'\nimport useMentionLink from './hooks/useMentionLink'\nimport useAnnotationsSync from './hooks/useAnnotationsSync'\nimport { useBlendedCategoryColor } from './hooks/useBlendedCategoryColor'\n\n// State management\nimport useAnnotationsUpload from './hooks/useAnnotationsUpload'\nimport { useFeedContext } from '../../context/FeedContext'\nimport { ActivityCategorySelect, isCategoryHidden, SavedAnnotationMetadata } from '../../index'\nimport { useDetailsPanelContext } from '@shared/context'\nimport { useProjectContext } from '@shared/context'\nimport { parseFilename } from '@shared/components'\nimport { FeedActivity } from '@shared/api'\nimport { VersionReviewPill } from './VersionReviewPill'\nimport { VersionReviewFeedback, mentionTypeOptions } from './types'\n\nvar Delta = Quill.import('delta')\n\nconst EMPTY_EDITOR_VALUE = '<p><br></p>'\n\nconst mentionTypes = ['@', '@@', '@@@']\n\ninterface CommentInputProps {\n initValue: string | null\n initFiles?: any[]\n initCategory?: string | null\n data?: any\n versionReview: boolean\n lastOwnVersionReview?: FeedActivity\n onSubmit: (markdown: string, files: any[], data?: any) => Promise<void>\n onReview?: (feedback: VersionReviewFeedback) => void\n isEditing?: boolean\n disabled?: boolean\n isLoading?: boolean\n isOpen: boolean\n onOpen?: () => void\n onClose?: () => void\n}\n\nconst CommentInput: FC<CommentInputProps> = ({\n initValue,\n initFiles = [],\n initCategory = null,\n data = {},\n versionReview,\n lastOwnVersionReview,\n onSubmit,\n onReview,\n isEditing,\n disabled,\n isLoading,\n isOpen,\n onOpen,\n onClose,\n}) => {\n const {\n projectName,\n entities,\n projectInfo,\n scope,\n feedFilter,\n mentionSuggestionsData,\n categories,\n isGuest,\n } = useFeedContext()\n\n const { hasLicense, onPowerFeature, user } = useDetailsPanelContext()\n const isAdmin = user?.data?.isAdmin\n\n const project = useProjectContext()\n\n const {\n users: mentionUsers,\n teams: mentionTeams,\n versions: mentionVersions,\n tasks: mentionTasks,\n } = mentionSuggestionsData || {}\n\n const [initHeight, setInitHeight] = useState(88)\n const [editorValue, setEditorValue] = useState('')\n // file uploads\n const [files, setFiles] = useState(initFiles)\n const [filesUploading, setFilesUploading] = useState([])\n const [isDropping, setIsDropping] = useState(false)\n const [isSubmitting, setIsSubmitting] = useState(false)\n\n const { annotations, removeAnnotation, goToAnnotation } = useAnnotationsSync({\n entityId: entities[0]?.id,\n filesUploading,\n })\n\n // MENTION STATES\n const [mention, setMention] = useState<null | any>(null)\n const [mentionSelectedIndex, setMentionSelectedIndex] = useState(0)\n // Prefix filter for mentions (e.g. 'team:' or 'user:')\n const [mentionPrefix, setMentionPrefix] = useState('')\n\n const clearMention = () => {\n setMention(null)\n setMentionSelectedIndex(0)\n setMentionPrefix('')\n }\n // CATEGORY STATE\n const [category, setCategory] = useState<null | string>(initCategory)\n const categoryOptions = categories.filter((cat) => cat.accessLevel >= 20)\n const categoryData = categories.find((cat) => cat.name === category)\n // Compute blended background color for category\n const blendedCategoryColor = useBlendedCategoryColor(categoryData?.color)\n // REFS\n const editorRef = useRef<any>(null)\n const editorContainerRef = useRef<HTMLDivElement>(null)\n\n const markdownRef = useRef<HTMLDivElement>(null)\n\n // if there is an initial value, set it so the editor is prefilled\n useInitialValue({\n markdownRef,\n initValue,\n setEditorValue,\n setInitHeight,\n isOpen: isOpen,\n filter: feedFilter,\n })\n\n // When editing, set selection to the end of the editor\n useSetCursorEnd({ initHeight, editorRef, isEditing })\n // create a new quill format for mentions and registers it\n useMentionLink({ projectName })\n\n // focus on editor when opened\n useEffect(() => {\n if (isOpen) {\n editorRef.current?.getEditor()?.enable()\n // block autofocus if opened from an annotation\n if (annotations.length > 0 && files.length === 0) {\n return\n }\n\n editorRef.current?.focus()\n }\n // We don't set annotations or files as useEffect dependencies, because we don't want to focus\n // the input if it's already open but annotations change (e.g. are removed).\n }, [isOpen, editorRef])\n\n mentionTypes.sort((a, b) => b.length - a.length)\n\n // Combine prefix filter with typed search for options filtering\n const mentionSearchWithPrefix = mentionPrefix + (mention?.search || '')\n\n const mentionOptions = useMemo(\n () =>\n getMentionOptions(\n mention?.type,\n {\n '@': () => getMentionUsers(mentionUsers, mentionTeams),\n '@@': () => getMentionVersions(mentionVersions, project),\n '@@@': () => getMentionTasks(mentionTasks, projectInfo.taskTypes),\n },\n mentionSearchWithPrefix || undefined,\n ),\n [\n mentionTasks,\n mentionVersions,\n mentionUsers,\n mentionTeams,\n mention?.type,\n mentionSearchWithPrefix,\n ],\n )\n\n // show first 5 and filter itself out\n const shownMentionOptions = mentionOptions.slice(0, 5)\n\n // triggered when a mention is selected\n const [newSelection, setNewSelection] = useState<null | number>()\n\n useEffect(() => {\n if (newSelection) {\n setNewSelection(null)\n // now we set selection to the end of the mention\n const quill = editorRef.current.getEditor()\n quill.setSelection(newSelection)\n }\n }, [newSelection])\n\n const handleSelectMention = (selectedOption: any) => {\n // get option text\n const quill = editorRef.current.getEditor()\n\n const typePrefix = mention.type // the type of mention: @, @@, @@@\n const search = typePrefix + (mention.search || '') // the full search string: @Tim\n const mentionLabel = typePrefix + selectedOption.label // the label of the mention: @Tim Bailey\n // @ts-expect-error\n const type = mentionTypeOptions[typePrefix] // the type of mention: user, version, task\n // Use the option's own type (e.g. 'team') if available, otherwise fall back to the mention type config\n const refType = selectedOption.type || type?.id\n const href = `${refType}:${selectedOption.id}` // the href of the mention: user:user.123 or team:Thunder boys\n\n // get selection delta\n const selection = quill.getSelection(true)\n const selectionIndex = selection?.index || 0\n const startIndex = selectionIndex - search.length // the start index of the search\n\n // first delete the search string\n quill.deleteText(startIndex, search.length)\n\n // insert embed link\n quill.insertText(startIndex, mentionLabel, 'mention', href)\n\n const endIndex = startIndex + mentionLabel.length\n\n // insert a space after the mention\n quill.updateContents(new Delta().retain(endIndex).insert(' '))\n\n // remove single \\n after mention\n quill.updateContents(new Delta().retain(endIndex + 1).delete(1))\n\n // set selection to the end of the mention + 1\n setNewSelection(endIndex + 1)\n\n // reset mention state\n clearMention()\n }\n\n const handleSelectChange = (option: any) => {\n handleSelectMention(option)\n }\n\n const handleChange = (content: string, delta: any, _: any, editor: any) => {\n let currentCharacter =\n (delta.ops[0] && delta.ops[0].insert) || (delta.ops[1] && delta.ops[1].insert)\n\n const tabOrEnter = currentCharacter === '\\n' || currentCharacter === '\\t'\n // find the first option\n const selectedOption = mentionOptions[mentionSelectedIndex]\n\n if (mention && tabOrEnter && selectedOption && !isGuest) {\n // get option text\n const retain = (delta.ops[0] && delta.ops[0].retain) || 0\n // prevent default\n\n // @ts-ignore\n handleSelectMention(selectedOption, retain)\n\n return\n }\n\n setEditorValue(content)\n\n const isDelete = delta.ops.length === 2 && !!delta.ops[1].delete\n\n if (!currentCharacter && isDelete) {\n currentCharacter = editor.getText(delta.ops[0].retain - 1, 1)\n }\n\n const isMention = mentionTypes.includes(currentCharacter)\n\n if (isMention) {\n const mentionIndex = delta.ops.findIndex((op: any) => 'insert' in op || 'delete' in op)\n const mention = currentCharacter\n let retain = mentionIndex === 0 ? 0 : delta.ops[mentionIndex - 1].retain\n if (isDelete) retain = retain - 1\n\n // for each mention denotation char, check if it is a mention\n // sort by length of mention denotation char\n let mentionMatch = null\n\n // loop through each mention denotation char, with longest first. First one to match is the one we want\n for (const chars of mentionTypes) {\n let isMatch = true\n // start with the last character\n if (chars.endsWith(mention)) {\n // loop through the chars backwards\n for (let i = chars.length - 1; i >= 0; i--) {\n // skip first character as that's already been checked\n if (i === 0) continue\n const char = chars[i - 1]\n const indexInDelta = retain - (chars.length - i)\n const valueCharAtIndex = editor.getText(indexInDelta, 1)\n if (valueCharAtIndex !== char) {\n isMatch = false\n break\n }\n }\n } else {\n isMatch = false\n }\n\n if (isMatch) {\n // console.log('match!!!', chars)\n mentionMatch = chars\n break\n }\n }\n\n if (mentionMatch) {\n setMention({\n type: mentionMatch,\n retain: retain,\n })\n } else {\n clearMention()\n }\n } else {\n // get full string between mention and new delta\n // This is where SEARCH is handled\n if (mention) {\n const retain = delta.ops[0].retain\n // if space is pressed, remove mention\n if (currentCharacter === ' ' || !retain) {\n clearMention()\n return\n }\n\n let distanceMentionToRetain = retain - mention.retain\n if (!isDelete) distanceMentionToRetain++\n const mentionFull = editor.getText(mention.retain, distanceMentionToRetain)\n const mentionSearch = mentionFull.replace(mention.type.slice(-1), '')\n // check for space in mentionFull\n if (mentionFull.includes(' ')) {\n clearMention()\n } else {\n setMention({\n ...mention,\n search: mentionSearch?.toLowerCase(),\n })\n }\n } else if (isDelete) {\n // backspace inside a mention deletes the whole mention\n const quill = editorRef.current.getEditor()\n const currentSelection = quill.getSelection(false)\n const currentFormat = quill.getFormat(currentSelection?.index, currentSelection?.length)\n if (currentFormat.mention) {\n const [lineBlock] = quill.getLine(currentSelection.index - 1) || []\n const ops = lineBlock?.cache?.delta?.ops || []\n const lastMentionOp = ops.reverse().find((op: any) => op.attributes?.mention)\n if (lastMentionOp) {\n const mentionLength = lastMentionOp.insert.length\n quill.deleteText(currentSelection.index - mentionLength, mentionLength)\n }\n }\n }\n }\n }\n\n const addTextToEditor = (type: string) => {\n // get editor retain\n const quill = editorRef.current.getEditor()\n\n let retain = quill.getSelection(true)?.index || 0\n\n // get character at retain\n const currentCharacter = quill.getText(retain - 1, 1)\n\n // if the current character is a character, increment retain\n const addSpace = currentCharacter !== ' ' && currentCharacter\n if (addSpace) {\n quill.insertText(retain, ' ')\n retain++\n }\n\n // This is hack AF, but it works\n typeWithDelay(quill, retain, type)\n }\n\n const handleMentionButton = (type: string) => {\n // first check if mention is already open\n if (mention) {\n const { type, retain, search = '' } = mention\n\n const quill = editorRef.current.getEditor()\n const length = type.length + search.length\n const start = retain - type.length + 1\n // delete the mention\n quill.deleteText(start, length)\n }\n\n addTextToEditor(type)\n }\n\n const handleOpenClick = () => {\n if (isOpen || disabled) return\n\n onOpen && onOpen()\n }\n\n const handleClose = () => {\n // get editor value\n const editor = editorRef.current.getEditor()\n const text = editor.getText()\n if (text.length < 2 || isEditing) {\n setEditorValue('')\n }\n\n // always close editor\n onClose && onClose()\n }\n\n const handleFileUploaded = ({ file, data }: any) => {\n const fileName = parseFilename(file.name)\n const newFile = {\n id: data.id,\n name: fileName,\n mime: file.type,\n size: file.size,\n order: files.length,\n }\n\n setFiles((prev) => [...prev, newFile])\n // remove from uploading\n setFilesUploading((prev) =>\n prev.filter((uploading: any) => parseFilename(uploading.name) !== fileName),\n )\n\n return newFile\n }\n\n const handleFileRemove = (id: string, name: string, isUnsavedAnnotation: boolean) => {\n if (isUnsavedAnnotation) {\n // remove from annotations (if it's an unsaved annotation)\n removeAnnotation?.(id)\n } else {\n // remove file from files\n setFiles((prev) => prev.filter((file) => file.id !== id))\n // remove from uploading\n setFilesUploading((prev) => {\n return prev.filter((file: any) => parseFilename(file.name) !== parseFilename(name))\n })\n }\n }\n\n const handleFileProgress = (e: any, file: any) => {\n const progress = Math.round((e.loaded * 100) / e.total)\n if (progress !== 100) {\n const fileName = parseFilename(file.name)\n const uploadProgress = {\n name: fileName,\n progress,\n type: file.type,\n order: files.length + filesUploading.length,\n }\n\n // @ts-ignore\n setFilesUploading((prev) => {\n // replace or add new progress\n const newProgress = prev.filter((name: any) => parseFilename(name.name) !== fileName)\n return [...newProgress, uploadProgress]\n })\n }\n }\n\n // when a file is not dropped onto the comment input\n const handleDrop = (e: React.DragEvent<HTMLDivElement>) => {\n setIsDropping(false)\n // upload file\n handleFileDrop(e, projectName, handleFileProgress, handleFileUploaded)\n }\n\n const handleDragOver = (e: React.DragEvent<HTMLDivElement>) => {\n e.preventDefault()\n e.stopPropagation()\n setIsDropping(true)\n }\n\n const uploadAnnotations = useAnnotationsUpload({\n projectName,\n onSuccess: handleFileUploaded,\n })\n\n const handleSubmit = async () => {\n try {\n setIsSubmitting(true)\n\n // upload any annotations first\n let annotationFiles = []\n let annotationMetadata: SavedAnnotationMetadata[] | undefined = undefined\n if (annotations.length) {\n const { files, metadata } = await uploadAnnotations(annotations)\n annotationFiles = files\n // get current files data\n const { annotations: annotationsData = [] } = data || {}\n // merge existing annotations data with new metadata\n annotationMetadata = [...annotationsData, ...metadata]\n }\n\n // convert to markdown\n const [markdown] = convertToMarkdown(editorValue)\n\n // remove img query params\n const markdownParsed = parseImages(markdown)\n\n const uploadedFiles = [...files, ...annotationFiles]\n\n const newData = {\n ...data,\n annotations: annotationMetadata, // could be undefined\n category: isGuest ? null : category, // guests cannot set category (it is done by default on backend)\n }\n\n if ((markdownParsed || uploadedFiles.length) && onSubmit) {\n try {\n await onSubmit(markdownParsed, uploadedFiles, newData)\n // only clear if onSubmit is successful\n setEditorValue('')\n setFiles([])\n } catch (error) {\n // error is handled in rtk query mutation\n return\n }\n }\n } catch (error) {\n console.error(error)\n toast.error('Something went wrong')\n } finally {\n setIsSubmitting(false)\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (mention) {\n // close mention on escape\n if (e.key === 'Escape') {\n clearMention()\n return\n }\n\n // add top search of mention\n if (mention && e.key === 'Tab') {\n // we handle this in the onChange\n }\n\n const arrowDirection = e.key === 'ArrowUp' ? -1 : e.key === 'ArrowDown' ? 1 : 0\n\n if (arrowDirection) {\n // navigate through mentions\n e.preventDefault()\n let newIndex = mentionSelectedIndex + arrowDirection\n if (newIndex < 0) newIndex = shownMentionOptions.length - 1\n if (newIndex >= shownMentionOptions.length) newIndex = 0\n setMentionSelectedIndex(newIndex)\n }\n\n if (e.key === 'Enter') {\n // we handle this in the onChange\n }\n }\n\n if (e.key === 'Enter' && (e.ctrlKey || e.metaKey)) {\n handleSubmit()\n }\n\n if (e.key === 'Escape') {\n handleClose()\n }\n }\n\n let quillMinHeight: number | undefined = isOpen ? initHeight + 41 : 44\n if (isEditing) quillMinHeight = undefined\n\n // QUILL CONFIG\n const modules = useMemo(\n () =>\n getModules({\n imageUploader: {\n projectName,\n onUpload: handleFileUploaded,\n onUploadProgress: handleFileProgress,\n },\n mentionTypeOptions,\n }),\n [projectName, setFiles, setFilesUploading],\n )\n\n const allFiles = [...annotations, ...(files || []), ...filesUploading].sort(\n (a, b) => a.order - b.order,\n )\n const compactGrid = allFiles.length > 3\n\n // disable version mentions for folders\n let mentionsError = null\n if (entities.length && entities[0].entityType === 'folder') {\n if (mention?.type === '@@') {\n mentionsError = 'Version mentions are disabled for folders'\n }\n }\n\n const getCommentPlaceholder = (isOpen?: boolean) => {\n if (disabled) {\n if (isGuest) return 'You do not have permission to comment.'\n return 'Commenting is disabled across multiple projects.'\n }\n\n if (isGuest || !isOpen) return 'Leave a comment'\n\n return 'Comment or mention with @user, @@version, @@@task...'\n }\n\n const handleReviewSubmit = async (status: VersionReviewFeedback) => {\n if (!onReview) return\n try {\n const postComment =\n (editorValue && editorValue !== EMPTY_EDITOR_VALUE) ||\n files.length > 0 ||\n annotations.length > 0\n // if the editor value is valid, also submit the comment first\n if (postComment) {\n await handleSubmit()\n }\n\n onReview(status)\n } catch (error) {\n console.error(error)\n toast.error('Something went wrong while submitting the review')\n }\n }\n\n const versionReviewButtons = versionReview && onReview && (\n <Styled.VersionReviewButtons className={clsx('version-review-buttons', { guest: isGuest })}>\n <Styled.VersionReviewButton\n icon=\"check\"\n variant=\"tertiary\"\n data-tooltip=\"Approve\"\n onClick={() => handleReviewSubmit(VersionReviewFeedback.APPROVE)}\n >\n <span className=\"label\">Approve</span>\n </Styled.VersionReviewButton>\n <Styled.VersionReviewButton\n icon=\"refresh\"\n variant=\"danger\"\n data-tooltip=\"Request changes\"\n onClick={() => handleReviewSubmit(VersionReviewFeedback.REQUEST_CHANGES)}\n >\n <span className=\"label\">Request changes</span>\n </Styled.VersionReviewButton>\n </Styled.VersionReviewButtons>\n )\n\n return (\n <>\n <Styled.AutoHeight\n className={clsx('comment-container', { isOpen, isEditing })}\n onDragOver={handleDragOver}\n onDragLeave={() => setIsDropping(false)}\n onDrop={handleDrop}\n onClick={() => setIsDropping(false)}\n onKeyDown={(e) => e.stopPropagation()}\n >\n {versionReview && lastOwnVersionReview && (\n <VersionReviewPill lastOwnVersionReview={lastOwnVersionReview} />\n )}\n\n <Styled.Comment\n className={clsx('block-shortcuts', {\n isOpen,\n isClosed: !isOpen || disabled,\n isEditing,\n isDropping,\n disabled,\n isLoading,\n isSubmitting,\n category: !!category && !isGuest,\n })}\n onKeyDown={handleKeyDown}\n onClick={handleOpenClick}\n $categoryPrimary={categoryData?.color}\n $categoryTertiary={blendedCategoryColor.primary}\n $categorySecondary={blendedCategoryColor.secondary}\n >\n <Styled.Markdown ref={markdownRef}>\n {/* this is purely used to translate the markdown into html for Editor */}\n <InputMarkdownConvert typeOptions={mentionTypeOptions} initValue={initValue} />\n </Styled.Markdown>\n\n {/* file uploads */}\n {isOpen && (\n <FilesGrid\n files={allFiles}\n isCompact={compactGrid || isEditing}\n onRemove={handleFileRemove}\n projectName={projectName}\n onAnnotationClick={goToAnnotation}\n style={{\n borderBottom: '1px solid var(--md-sys-color-outline-variant)',\n height: '100%',\n }}\n isEditing\n pt={{\n file: {\n style: {\n height: isEditing ? 70 : undefined,\n },\n },\n }}\n />\n )}\n {isOpen && !disabled ? (\n <QuillListStyles ref={editorContainerRef}>\n {!isGuest && (\n <ActivityCategorySelect\n value={category}\n categories={categoryOptions}\n onChange={(c) => setCategory(c)}\n isCompact={isEditing}\n hasPowerpack={hasLicense}\n onPowerFeature={onPowerFeature}\n isHidden={isCategoryHidden(categoryOptions, { isGuest, isAdmin })}\n style={{\n position: isEditing ? 'relative' : 'absolute',\n left: 4,\n top: isEditing ? 0 : 4,\n }}\n />\n )}\n\n <ReactQuill\n theme=\"snow\"\n style={{ minHeight: quillMinHeight, maxHeight: 300 }}\n ref={editorRef}\n value={editorValue}\n onChange={handleChange}\n readOnly={!isOpen}\n placeholder={getCommentPlaceholder(true)}\n modules={modules}\n formats={quillFormats}\n />\n </QuillListStyles>\n ) : (\n <Styled.Placeholder>{getCommentPlaceholder()}</Styled.Placeholder>\n )}\n\n <Styled.Footer>\n {!isGuest && (\n <Styled.Buttons>\n {/* mention a user */}\n <Button\n icon=\"person\"\n variant=\"text\"\n onClick={() => handleMentionButton('@')}\n data-tooltip={'Mention user'}\n data-shortcut={'@'}\n />\n {/* mention a version */}\n <Button\n icon=\"layers\"\n variant=\"text\"\n onClick={() => handleMentionButton('@@')}\n data-tooltip={'Mention version'}\n data-shortcut={'@@'}\n />\n {/* mention a task */}\n <Button\n icon=\"check_circle\"\n variant=\"text\"\n onClick={() => handleMentionButton('@@@')}\n data-tooltip={'Mention task'}\n data-shortcut={'@@@'}\n />\n </Styled.Buttons>\n )}\n <Styled.SubmitButtons>\n {isEditing && (\n <Button variant=\"text\" onClick={handleClose}>\n Cancel\n </Button>\n )}\n <SaveButton\n label={isEditing ? 'Save' : 'Comment'}\n className=\"comment\"\n active={!!editorValue || !!files.length}\n onClick={handleSubmit}\n disabled={isLoading}\n />\n </Styled.SubmitButtons>\n </Styled.Footer>\n\n <Styled.Dropzone className={clsx({ show: isDropping && isOpen })}>\n <Icon icon=\"cloud_upload\" />\n </Styled.Dropzone>\n </Styled.Comment>\n <CommentMentionSelect\n mention={mention}\n options={shownMentionOptions}\n onChange={handleSelectChange}\n onPrefixFilter={(prefix) => {\n setMentionPrefix(prefix)\n setMentionSelectedIndex(0)\n }}\n activePrefix={mentionPrefix ? mentionPrefix.replace(':', '') : undefined}\n types={mentionTypes}\n // @ts-ignore\n config={mentionTypeOptions[mention?.type]}\n noneFound={!shownMentionOptions.length && (mention?.search || mentionPrefix)}\n noneFoundAtAll={!shownMentionOptions.length && !mention?.search && !mentionPrefix}\n selectedIndex={mentionSelectedIndex}\n // @ts-ignore\n error={mentionsError}\n isGuest={isGuest}\n />\n\n <Styled.VersionReviewButtonsSpacer />\n {versionReviewButtons}\n </Styled.AutoHeight>\n </>\n )\n}\n\nexport default CommentInput\n"],"names":["Delta","Quill","EMPTY_EDITOR_VALUE","mentionTypes","CommentInput","initValue","initFiles","initCategory","data","versionReview","lastOwnVersionReview","onSubmit","onReview","isEditing","disabled","isLoading","isOpen","onOpen","onClose","projectName","entities","projectInfo","scope","feedFilter","mentionSuggestionsData","categories","isGuest","useFeedContext","hasLicense","onPowerFeature","user","useDetailsPanelContext","isAdmin","project","useProjectContext","mentionUsers","mentionTeams","mentionVersions","mentionTasks","initHeight","setInitHeight","useState","editorValue","setEditorValue","files","setFiles","filesUploading","setFilesUploading","isDropping","setIsDropping","isSubmitting","setIsSubmitting","annotations","removeAnnotation","goToAnnotation","useAnnotationsSync","mention","setMention","mentionSelectedIndex","setMentionSelectedIndex","mentionPrefix","setMentionPrefix","clearMention","category","setCategory","categoryOptions","cat","categoryData","blendedCategoryColor","useBlendedCategoryColor","editorRef","useRef","editorContainerRef","markdownRef","useInitialValue","useSetCursorEnd","useMentionLink","useEffect","a","b","mentionSearchWithPrefix","mentionOptions","useMemo","getMentionOptions","getMentionUsers","getMentionVersions","getMentionTasks","shownMentionOptions","newSelection","setNewSelection","handleSelectMention","selectedOption","quill","typePrefix","search","mentionLabel","type","mentionTypeOptions","href","startIndex","endIndex","handleSelectChange","option","handleChange","content","delta","_","editor","currentCharacter","tabOrEnter","isDelete","mentionIndex","op","retain","mentionMatch","chars","isMatch","i","char","indexInDelta","distanceMentionToRetain","mentionFull","mentionSearch","currentSelection","lineBlock","lastMentionOp","mentionLength","addTextToEditor","typeWithDelay","handleMentionButton","length","start","handleOpenClick","handleClose","handleFileUploaded","file","fileName","parseFilename","newFile","prev","uploading","handleFileRemove","id","name","isUnsavedAnnotation","handleFileProgress","e","progress","uploadProgress","handleDrop","handleFileDrop","handleDragOver","uploadAnnotations","useAnnotationsUpload","handleSubmit","annotationFiles","annotationMetadata","metadata","annotationsData","markdown","convertToMarkdown","markdownParsed","parseImages","uploadedFiles","newData","error","toast","handleKeyDown","arrowDirection","newIndex","quillMinHeight","modules","getModules","allFiles","compactGrid","mentionsError","getCommentPlaceholder","handleReviewSubmit","status","versionReviewButtons","jsxs","Styled.VersionReviewButtons","clsx","jsx","Styled.VersionReviewButton","VersionReviewFeedback","Fragment","Styled.AutoHeight","VersionReviewPill","Styled.Comment","Styled.Markdown","InputMarkdownConvert","FilesGrid","QuillListStyles","ActivityCategorySelect","c","isCategoryHidden","ReactQuill","quillFormats","Styled.Placeholder","Styled.Footer","Styled.Buttons","Button","Styled.SubmitButtons","SaveButton","Styled.Dropzone","Icon","CommentMentionSelect","prefix","Styled.VersionReviewButtonsSpacer"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("../../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../../components/Badge/Badge.cjs.js");require("../../../../components/Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../../components/LinksManager/CellEditingDialog.cjs.js");const l=require("react-toastify");require("../../../../api/base/client.cjs.js");require("../../../../api/generated/graphql.cjs.js");require("../../../../api/generated/graphqlLinks.cjs.js");require("../../../../api/generated/access.cjs.js");require("../../../../api/generated/actions.cjs.js");require("../../../../api/generated/activityFeed.cjs.js");require("../../../../api/generated/addons.cjs.js");require("../../../../api/generated/anatomy.cjs.js");require("../../../../api/generated/attributes.cjs.js");require("../../../../api/generated/authentication.cjs.js");require("../../../../api/generated/bundles.cjs.js");require("../../../../api/generated/configuration.cjs.js");require("../../../../api/generated/dataImport.cjs.js");require("../../../../api/generated/desktop.cjs.js");require("../../../../api/generated/entityLists.cjs.js");require("../../../../api/generated/events.cjs.js");require("../../../../api/generated/files.cjs.js");require("../../../../api/generated/folders.cjs.js");require("../../../../api/generated/inbox.cjs.js");require("../../../../api/generated/links.cjs.js");require("../../../../api/generated/market.cjs.js");require("../../../../api/generated/onboarding.cjs.js");require("../../../../api/generated/operations.cjs.js");require("../../../../api/generated/products.cjs.js");require("../../../../api/generated/projectDashboard.cjs.js");require("../../../../api/generated/projects.cjs.js");require("../../../../api/generated/projectFolders.cjs.js");require("../../../../api/generated/reviewables.cjs.js");require("../../../../api/generated/services.cjs.js");require("../../../../api/generated/system.cjs.js");require("../../../../api/generated/tasks.cjs.js");require("../../../../api/generated/teams.cjs.js");require("../../../../api/generated/thumbnails.cjs.js");require("../../../../api/generated/uRIs.cjs.js");require("../../../../api/generated/users.cjs.js");require("../../../../api/generated/versions.cjs.js");require("../../../../api/generated/workfiles.cjs.js");require("../../../../api/generated/ynputCloud.cjs.js");require("../../../../api/generated/grouping.cjs.js");require("../../../../api/generated/views.cjs.js");require("../../../../api/queries/actions/getActions.cjs.js");require("../../../../api/queries/activities/getActivities.cjs.js");require("../../../../api/queries/activities/updateActivities.cjs.js");require("../../../../api/queries/activities/updateReaction.cjs.js");require("../../../../api/queries/activities/getMentions.cjs.js");require("../../../../api/queries/activities/getCategories.cjs.js");require("../../../../api/queries/addons/getAddons.cjs.js");require("../../../../api/queries/addons/updateAddons.cjs.js");require("../../../../api/queries/attributes/getAttributes.cjs.js");require("../../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../../api/queries/cloud/cloud.cjs.js");require("../../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../../api/queries/config/getConfig.cjs.js");require("../../../../api/queries/config/updateConfig.cjs.js");require("../../../../api/queries/entities/getEntity.cjs.js");require("../../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../../api/queries/overview/getOverview.cjs.js");require("../../../../api/queries/overview/updateOverview.cjs.js");require("../../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../../api/queries/links/getEntityLinks.cjs.js");require("../../../../api/queries/entities/updateEntity.cjs.js");require("../../../../api/queries/entityLists/getLists.cjs.js");require("../../../../api/queries/entityLists/updateLists.cjs.js");require("../../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listFolders.cjs.js");require("../../../../api/queries/folders/getFolders.cjs.js");require("../../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../../api/queries/grouping/getGrouping.cjs.js");require("../../../../api/queries/links/updateLinks.cjs.js");require("../../../../api/queries/links/getLinks.cjs.js");require("../../../../api/queries/permissions/getPermissions.cjs.js");require("../../../../api/queries/products/createProduct.cjs.js");require("../../../../api/queries/products/getFolderProducts.cjs.js");require("../../../../api/queries/project/getProject.cjs.js");require("../../../../api/queries/project/updateProject.cjs.js");require("../../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../../api/queries/review/getReview.cjs.js");require("../../../../api/queries/review/updateReview.cjs.js");require("../../../../api/queries/share/share.cjs.js");require("../../../../api/queries/system/getSystem.cjs.js");require("../../../../api/queries/tasks/getTasks.cjs.js");require("../../../../api/queries/tasks/updateTasks.cjs.js");require("../../../../api/queries/teams/getTeams.cjs.js");require("../../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../../api/queries/users/getUsers.cjs.js");require("../../../../api/queries/users/updateUsers.cjs.js");require("../../../../api/queries/users/guests.cjs.js");require("../../../../api/queries/versions/updateVersions.cjs.js");require("../../../../api/queries/views/getViews.cjs.js");require("../../../../api/queries/views/updateViews.cjs.js");require("../../../../api/queries/watchers/getWatchers.cjs.js");require("../../../../api/queries/uris/getUris.cjs.js");require("../../../../../../_virtual/index.cjs.js");require("../../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../../util/pubsub.cjs.js");require("../../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("./quillToMarkdown.cjs.js");require("../../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("./modules/index.cjs.js");require("../../../../context/RemoteModulesContext.cjs.js");require("../../../../../../_virtual/runtime.cjs.js");require("../../../../../../_virtual/semver.cjs.js");require("../../../../context/PowerpackContextInstance.cjs.js");require("../../../../context/UriContext.cjs.js");require("../../../../context/DetailsPanelContextInstance.cjs.js");require("../../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../../context/ThumbnailUploaderContext.cjs.js");require("../../../../context/SettingsPanelContext.cjs.js");require("../../../../context/pip/PiPProvider.cjs.js");require("../../../../context/pip/PiPWrapper.cjs.js");require("../../../../context/AddonProjectContext.cjs.js");require("../../../../context/AddonContext.cjs.js");require("../../../../context/MoveEntityContext.cjs.js");require("../../../../context/MenuContext.cjs.js");require("../../../../context/WebsocketContext.cjs.js");require("../../../../context/GlobalContext.cjs.js");require("../../../../context/ProjectContext.cjs.js");require("../../../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../context/FeedContext.cjs.js");require("../Tooltips/UserTooltipItem.cjs.js");require("../Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("./CommentInput.cjs.js");require("../ReactionContainer/Reactions.styled.cjs.js");require("../FilesGrid/FilesGrid.styled.cjs.js");require("../FileUploadCard/FileUploadCard.styled.cjs.js");require("../ActivityComment/ActivityComment.styled.cjs.js");require("../ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../ActivityStatus/ActivityStatus.cjs.js");require("../ActivityHeader/ActivityHeader.styled.cjs.js");require("../ActivityDate.cjs.js");require("../ActivityCategorySelect/CategoryTag.cjs.js");require("../ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../ActivityVersions/ActivityVersions.styled.cjs.js");require("../ActivityGroup/ActivityGroup.styled.cjs.js");require("../ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../Feed.styled.cjs.js");require("../../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../../ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("../../../../components/SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../../ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../../ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../Slicer/components/Slicer.cjs.js");require("../../../Slicer/context/SlicerContext.cjs.js");require("../../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../../Actions/Actions.styled.cjs.js");require("../../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../../Actions/ActionIcon.cjs.js");require("../../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../Views/context/ViewsContextInstance.cjs.js");require("../../../Views/Views.styled.cjs.js");require("../../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../../ListTable/ListTableRow.cjs.js");require("../../../ListTable/ListTable.styled.cjs.js");require("../../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");const o=require("axios");require("../../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");const c=require("../../../../components/ReviewablesList/useReviewablesUpload.cjs.js");require("../../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../../components/Feedback/FeedbackContextInstance.cjs.js");require("../../../../components/Feedback/SupportBubble.cjs.js");require("../../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../../components/Powerpack/FreeTrialLink.cjs.js");require("../../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../../components/Powerpack/CTAButton.cjs.js");require("../../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../../components/StyledLink/StyledLink.cjs.js");require("../../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../../components/Watchers/Watchers.cjs.js");require("../../../../components/Menu/Menu.styled.cjs.js");require("../../../../components/Menu/MenuItem.cjs.js");require("../../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../../components/ColumnHeaderMenuUI.cjs.js");const p=e=>{const t=/!\[.*?\]\((.*?)\)/g,i=e.match(t);let u=e;return i&&i.forEach(r=>{if(!r.includes("http"))return;const a=r.match(/\(([^)]+)\)/)[1],q=a.split("?")[0];u=e.replace(a,q)}),u};async function d(e,t,i,u=1){for(let r=0;r<i.length;r++)e.insertText(t+r,i[r]),await new Promise(a=>setTimeout(a,u))}const f=new AbortController,m=o.CancelToken,h=m.source(),s=(e,t,i)=>new Promise((u,r)=>{new FormData().append("image",e);const q={signal:f.signal,cancelToken:h.token,onUploadProgress:n=>i&&i(n,e),headers:{"Content-Type":e.type,"x-file-name":c.parseFilename(e.name)}};o.post(`/api/projects/${t}/files`,e,q).then(n=>{u({file:e,data:n.data})}).catch(n=>{console.error(n),r({message:"Upload failed: "+n.response.data.detail})})}),g=(e,t,i,u)=>{e.preventDefault(),e.stopPropagation();let r=e.dataTransfer.files;if(r?.length){if(r.length===0)return;for(const a of r)s(a,t,i).then(q=>u(q),q=>{l.toast.error("Upload failed: "+q.response.data.detail),console.warn(q)})}};exports.handleFileDrop=g;exports.parseImages=p;exports.typeWithDelay=d;exports.uploadFile=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("../../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../../components/Badge/Badge.cjs.js");require("../../../../components/Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../../components/LinksManager/CellEditingDialog.cjs.js");const l=require("react-toastify");require("../../../../api/base/client.cjs.js");require("../../../../api/generated/graphql.cjs.js");require("../../../../api/generated/graphqlLinks.cjs.js");require("../../../../api/generated/access.cjs.js");require("../../../../api/generated/actions.cjs.js");require("../../../../api/generated/activityFeed.cjs.js");require("../../../../api/generated/addons.cjs.js");require("../../../../api/generated/anatomy.cjs.js");require("../../../../api/generated/attributes.cjs.js");require("../../../../api/generated/authentication.cjs.js");require("../../../../api/generated/bundles.cjs.js");require("../../../../api/generated/configuration.cjs.js");require("../../../../api/generated/dataImport.cjs.js");require("../../../../api/generated/desktop.cjs.js");require("../../../../api/generated/entityLists.cjs.js");require("../../../../api/generated/events.cjs.js");require("../../../../api/generated/files.cjs.js");require("../../../../api/generated/folders.cjs.js");require("../../../../api/generated/inbox.cjs.js");require("../../../../api/generated/links.cjs.js");require("../../../../api/generated/market.cjs.js");require("../../../../api/generated/onboarding.cjs.js");require("../../../../api/generated/operations.cjs.js");require("../../../../api/generated/products.cjs.js");require("../../../../api/generated/projectDashboard.cjs.js");require("../../../../api/generated/projects.cjs.js");require("../../../../api/generated/projectFolders.cjs.js");require("../../../../api/generated/reviewables.cjs.js");require("../../../../api/generated/services.cjs.js");require("../../../../api/generated/system.cjs.js");require("../../../../api/generated/tasks.cjs.js");require("../../../../api/generated/teams.cjs.js");require("../../../../api/generated/thumbnails.cjs.js");require("../../../../api/generated/uRIs.cjs.js");require("../../../../api/generated/users.cjs.js");require("../../../../api/generated/versions.cjs.js");require("../../../../api/generated/workfiles.cjs.js");require("../../../../api/generated/ynputCloud.cjs.js");require("../../../../api/generated/grouping.cjs.js");require("../../../../api/generated/views.cjs.js");require("../../../../api/queries/actions/getActions.cjs.js");require("../../../../api/queries/activities/getActivities.cjs.js");require("../../../../api/queries/activities/updateActivities.cjs.js");require("../../../../api/queries/activities/updateReaction.cjs.js");require("../../../../api/queries/activities/getMentions.cjs.js");require("../../../../api/queries/activities/getCategories.cjs.js");require("../../../../api/queries/addons/getAddons.cjs.js");require("../../../../api/queries/addons/updateAddons.cjs.js");require("../../../../api/queries/attributes/getAttributes.cjs.js");require("../../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../../api/queries/cloud/cloud.cjs.js");require("../../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../../api/queries/config/getConfig.cjs.js");require("../../../../api/queries/config/updateConfig.cjs.js");require("../../../../api/queries/entities/getEntity.cjs.js");require("../../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../../api/queries/overview/getOverview.cjs.js");require("../../../../api/queries/overview/updateOverview.cjs.js");require("../../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../../api/queries/links/getEntityLinks.cjs.js");require("../../../../api/queries/entities/updateEntity.cjs.js");require("../../../../api/queries/entityLists/getLists.cjs.js");require("../../../../api/queries/entityLists/updateLists.cjs.js");require("../../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listFolders.cjs.js");require("../../../../api/queries/folders/getFolders.cjs.js");require("../../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../../api/queries/grouping/getGrouping.cjs.js");require("../../../../api/queries/links/updateLinks.cjs.js");require("../../../../api/queries/links/getLinks.cjs.js");require("../../../../api/queries/permissions/getPermissions.cjs.js");require("../../../../api/queries/products/createProduct.cjs.js");require("../../../../api/queries/products/getFolderProducts.cjs.js");require("../../../../api/queries/project/getProject.cjs.js");require("../../../../api/queries/project/updateProject.cjs.js");require("../../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../../api/queries/review/getReview.cjs.js");require("../../../../api/queries/review/updateReview.cjs.js");require("../../../../api/queries/share/share.cjs.js");require("../../../../api/queries/system/getSystem.cjs.js");require("../../../../api/queries/tasks/getTasks.cjs.js");require("../../../../api/queries/tasks/updateTasks.cjs.js");require("../../../../api/queries/teams/getTeams.cjs.js");require("../../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../../api/queries/users/getUsers.cjs.js");require("../../../../api/queries/users/updateUsers.cjs.js");require("../../../../api/queries/users/guests.cjs.js");require("../../../../api/queries/versions/updateVersions.cjs.js");require("../../../../api/queries/views/getViews.cjs.js");require("../../../../api/queries/views/updateViews.cjs.js");require("../../../../api/queries/watchers/getWatchers.cjs.js");require("../../../../api/queries/uris/getUris.cjs.js");require("../../../../../../_virtual/index.cjs.js");require("../../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../../util/pubsub.cjs.js");require("../../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("./quillToMarkdown.cjs.js");require("../../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("./modules/index.cjs.js");require("../../../../context/RemoteModulesContext.cjs.js");require("../../../../../../_virtual/runtime.cjs.js");require("../../../../../../_virtual/semver.cjs.js");require("../../../../context/PowerpackContextInstance.cjs.js");require("../../../../context/UriContext.cjs.js");require("../../../../context/DetailsPanelContextInstance.cjs.js");require("../../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../../context/ThumbnailUploaderContext.cjs.js");require("../../../../context/SettingsPanelContext.cjs.js");require("../../../../context/pip/PiPProvider.cjs.js");require("../../../../context/pip/PiPWrapper.cjs.js");require("../../../../context/AddonProjectContext.cjs.js");require("../../../../context/AddonContext.cjs.js");require("../../../../context/MoveEntityContext.cjs.js");require("../../../../context/MenuContext.cjs.js");require("../../../../context/WebsocketContext.cjs.js");require("../../../../context/GlobalContext.cjs.js");require("../../../../context/ProjectContext.cjs.js");require("../../../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../context/FeedContext.cjs.js");require("../Tooltips/UserTooltipItem.cjs.js");require("../Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("./CommentInput.cjs.js");require("../ReactionContainer/Reactions.styled.cjs.js");require("../FilesGrid/FilesGrid.styled.cjs.js");require("../FileUploadCard/FileUploadCard.styled.cjs.js");require("../ActivityComment/ActivityComment.styled.cjs.js");require("../ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../ActivityStatus/ActivityStatus.cjs.js");require("../ActivityHeader/ActivityHeader.styled.cjs.js");require("../ActivityDate.cjs.js");require("../ActivityCategorySelect/CategoryTag.cjs.js");require("../ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../ActivityVersions/ActivityVersions.styled.cjs.js");require("../ActivityGroup/ActivityGroup.styled.cjs.js");require("../ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../Feed.styled.cjs.js");require("../FeedSearchFilter.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../../ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../ProjectTreeTable/widgets/LinksWidget.cjs.js");require("../../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("../../../../components/SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../../ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../../ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../Slicer/components/Slicer.cjs.js");require("../../../Slicer/context/SlicerContext.cjs.js");require("../../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../../Actions/Actions.styled.cjs.js");require("../../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../../Actions/ActionIcon.cjs.js");require("../../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../Views/context/ViewsContextInstance.cjs.js");require("../../../Views/Views.styled.cjs.js");require("../../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../../ListTable/ListTableRow.cjs.js");require("../../../ListTable/ListTable.styled.cjs.js");require("../../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");const o=require("axios");require("../../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");const c=require("../../../../components/ReviewablesList/useReviewablesUpload.cjs.js");require("../../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../../components/Feedback/FeedbackContextInstance.cjs.js");require("../../../../components/Feedback/SupportBubble.cjs.js");require("../../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../../components/Powerpack/FreeTrialLink.cjs.js");require("../../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../../components/Powerpack/CTAButton.cjs.js");require("../../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../../components/SearchFilter/CustomDateRangeDialog.cjs.js");require("../../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../../components/StyledLink/StyledLink.cjs.js");require("../../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../../components/Watchers/Watchers.cjs.js");require("../../../../components/Menu/Menu.styled.cjs.js");require("../../../../components/Menu/MenuItem.cjs.js");require("../../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../../components/ColumnHeaderMenuUI.cjs.js");const p=e=>{const t=/!\[.*?\]\((.*?)\)/g,i=e.match(t);let u=e;return i&&i.forEach(r=>{if(!r.includes("http"))return;const a=r.match(/\(([^)]+)\)/)[1],q=a.split("?")[0];u=e.replace(a,q)}),u};async function d(e,t,i,u=1){for(let r=0;r<i.length;r++)e.insertText(t+r,i[r]),await new Promise(a=>setTimeout(a,u))}const f=new AbortController,m=o.CancelToken,h=m.source(),s=(e,t,i)=>new Promise((u,r)=>{new FormData().append("image",e);const q={signal:f.signal,cancelToken:h.token,onUploadProgress:n=>i&&i(n,e),headers:{"Content-Type":e.type,"x-file-name":c.parseFilename(e.name)}};o.post(`/api/projects/${t}/files`,e,q).then(n=>{u({file:e,data:n.data})}).catch(n=>{console.error(n),r({message:"Upload failed: "+n.response.data.detail})})}),g=(e,t,i,u)=>{e.preventDefault(),e.stopPropagation();let r=e.dataTransfer.files;if(r?.length){if(r.length===0)return;for(const a of r)s(a,t,i).then(q=>u(q),q=>{l.toast.error("Upload failed: "+q.response.data.detail),console.warn(q)})}};exports.handleFileDrop=g;exports.parseImages=p;exports.typeWithDelay=d;exports.uploadFile=s;
2
2
  //# sourceMappingURL=helpers.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.cjs.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/helpers.tsx"],"sourcesContent":["// @ts-nocheck\n\n// remove any query parameters from the url\nexport const parseImages = (body) => {\n // find images in the markdown with format ![](image_url)\n const regex = /!\\[.*?\\]\\((.*?)\\)/g\n const matches = body.match(regex)\n\n let newBody = body\n\n if (matches) {\n matches.forEach((match) => {\n if (!match.includes('http')) return\n const url = match.match(/\\(([^)]+)\\)/)[1]\n const newUrl = url.split('?')[0]\n newBody = body.replace(url, newUrl)\n })\n }\n\n return newBody\n}\n\nexport async function typeWithDelay(quill, retain, type, delay = 1) {\n for (let i = 0; i < type.length; i++) {\n quill.insertText(retain + i, type[i])\n await new Promise((resolve) => setTimeout(resolve, delay))\n }\n}\n\nimport { parseFilename } from '@shared/components'\nimport axios from 'axios'\nconst abortController = new AbortController()\nconst cancelToken = axios.CancelToken\nconst cancelTokenSource = cancelToken.source()\nimport { toast } from 'react-toastify'\n\ntype UploadedFile = {\n file: any\n data: any\n}\n\n// used to upload files (quill ImageUploader module)\nexport const uploadFile = (file, projectName, onUploadProgress): Promise<UploadedFile> => {\n return new Promise((resolve, reject) => {\n const formData = new FormData()\n formData.append('image', file)\n const opts = {\n signal: abortController.signal,\n cancelToken: cancelTokenSource.token,\n onUploadProgress: (e) => onUploadProgress && onUploadProgress(e, file),\n headers: {\n 'Content-Type': file.type,\n 'x-file-name': parseFilename(file.name),\n },\n }\n\n axios\n .post(`/api/projects/${projectName}/files`, file, opts)\n .then((result) => {\n resolve({ file: file, data: result.data })\n })\n .catch((error) => {\n console.error(error)\n reject({ message: 'Upload failed: ' + error.response.data.detail })\n })\n })\n}\n\nexport const handleFileDrop = (e, projectName, onProgress, onSuccess) => {\n e.preventDefault()\n e.stopPropagation()\n\n let files = e.dataTransfer.files\n if (files?.length) {\n if (files.length === 0) return\n\n for (const file of files) {\n uploadFile(file, projectName, onProgress).then(\n (data) => onSuccess(data),\n (error) => {\n toast.error('Upload failed: ' + error.response.data.detail)\n console.warn(error)\n },\n )\n }\n }\n}\n"],"names":["parseImages","body","regex","matches","newBody","match","url","newUrl","typeWithDelay","quill","retain","type","delay","i","resolve","abortController","cancelToken","axios","cancelTokenSource","uploadFile","file","projectName","onUploadProgress","reject","opts","e","parseFilename","result","error","handleFileDrop","onProgress","onSuccess","files","data","toast"],"mappings":"6oiBAGO,MAAMA,EAAeC,GAAS,CAEnC,MAAMC,EAAQ,qBACRC,EAAUF,EAAK,MAAMC,CAAK,EAEhC,IAAIE,EAAUH,EAEd,OAAIE,GACFA,EAAQ,QAASE,GAAU,CACzB,GAAI,CAACA,EAAM,SAAS,MAAM,EAAG,OAC7B,MAAMC,EAAMD,EAAM,MAAM,aAAa,EAAE,CAAC,EAClCE,EAASD,EAAI,MAAM,GAAG,EAAE,CAAC,EAC/BF,EAAUH,EAAK,QAAQK,EAAKC,CAAM,CACpC,CAAC,EAGIH,CACT,EAEA,eAAsBI,EAAcC,EAAOC,EAAQC,EAAMC,EAAQ,EAAG,CAClE,QAASC,EAAI,EAAGA,EAAIF,EAAK,OAAQE,IAC/BJ,EAAM,WAAWC,EAASG,EAAGF,EAAKE,CAAC,CAAC,EACpC,MAAM,IAAI,QAASC,GAAY,WAAWA,EAASF,CAAK,CAAC,CAE7D,CAIA,MAAMG,EAAkB,IAAI,gBACtBC,EAAcC,EAAM,YACpBC,EAAoBF,EAAY,OAAA,EASzBG,EAAa,CAACC,EAAMC,EAAaC,IACrC,IAAI,QAAQ,CAACR,EAASS,IAAW,CACrB,IAAI,SAAA,EACZ,OAAO,QAASH,CAAI,EAC7B,MAAMI,EAAO,CACX,OAAQT,EAAgB,OACxB,YAAaG,EAAkB,MAC/B,iBAAmBO,GAAMH,GAAoBA,EAAiBG,EAAGL,CAAI,EACrE,QAAS,CACP,eAAgBA,EAAK,KACrB,cAAeM,EAAAA,cAAcN,EAAK,IAAI,CAAA,CACxC,EAGFH,EACG,KAAK,iBAAiBI,CAAW,SAAUD,EAAMI,CAAI,EACrD,KAAMG,GAAW,CAChBb,EAAQ,CAAE,KAAAM,EAAY,KAAMO,EAAO,KAAM,CAC3C,CAAC,EACA,MAAOC,GAAU,CAChB,QAAQ,MAAMA,CAAK,EACnBL,EAAO,CAAE,QAAS,kBAAoBK,EAAM,SAAS,KAAK,OAAQ,CACpE,CAAC,CACL,CAAC,EAGUC,EAAiB,CAAC,EAAGR,EAAaS,EAAYC,IAAc,CACvE,EAAE,eAAA,EACF,EAAE,gBAAA,EAEF,IAAIC,EAAQ,EAAE,aAAa,MAC3B,GAAIA,GAAO,OAAQ,CACjB,GAAIA,EAAM,SAAW,EAAG,OAExB,UAAWZ,KAAQY,EACjBb,EAAWC,EAAMC,EAAaS,CAAU,EAAE,KACvCG,GAASF,EAAUE,CAAI,EACvBL,GAAU,CACTM,EAAAA,MAAM,MAAM,kBAAoBN,EAAM,SAAS,KAAK,MAAM,EAC1D,QAAQ,KAAKA,CAAK,CACpB,CAAA,CAGN,CACF"}
1
+ {"version":3,"file":"helpers.cjs.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/helpers.tsx"],"sourcesContent":["// @ts-nocheck\n\n// remove any query parameters from the url\nexport const parseImages = (body) => {\n // find images in the markdown with format ![](image_url)\n const regex = /!\\[.*?\\]\\((.*?)\\)/g\n const matches = body.match(regex)\n\n let newBody = body\n\n if (matches) {\n matches.forEach((match) => {\n if (!match.includes('http')) return\n const url = match.match(/\\(([^)]+)\\)/)[1]\n const newUrl = url.split('?')[0]\n newBody = body.replace(url, newUrl)\n })\n }\n\n return newBody\n}\n\nexport async function typeWithDelay(quill, retain, type, delay = 1) {\n for (let i = 0; i < type.length; i++) {\n quill.insertText(retain + i, type[i])\n await new Promise((resolve) => setTimeout(resolve, delay))\n }\n}\n\nimport { parseFilename } from '@shared/components'\nimport axios from 'axios'\nconst abortController = new AbortController()\nconst cancelToken = axios.CancelToken\nconst cancelTokenSource = cancelToken.source()\nimport { toast } from 'react-toastify'\n\ntype UploadedFile = {\n file: any\n data: any\n}\n\n// used to upload files (quill ImageUploader module)\nexport const uploadFile = (file, projectName, onUploadProgress): Promise<UploadedFile> => {\n return new Promise((resolve, reject) => {\n const formData = new FormData()\n formData.append('image', file)\n const opts = {\n signal: abortController.signal,\n cancelToken: cancelTokenSource.token,\n onUploadProgress: (e) => onUploadProgress && onUploadProgress(e, file),\n headers: {\n 'Content-Type': file.type,\n 'x-file-name': parseFilename(file.name),\n },\n }\n\n axios\n .post(`/api/projects/${projectName}/files`, file, opts)\n .then((result) => {\n resolve({ file: file, data: result.data })\n })\n .catch((error) => {\n console.error(error)\n reject({ message: 'Upload failed: ' + error.response.data.detail })\n })\n })\n}\n\nexport const handleFileDrop = (e, projectName, onProgress, onSuccess) => {\n e.preventDefault()\n e.stopPropagation()\n\n let files = e.dataTransfer.files\n if (files?.length) {\n if (files.length === 0) return\n\n for (const file of files) {\n uploadFile(file, projectName, onProgress).then(\n (data) => onSuccess(data),\n (error) => {\n toast.error('Upload failed: ' + error.response.data.detail)\n console.warn(error)\n },\n )\n }\n }\n}\n"],"names":["parseImages","body","regex","matches","newBody","match","url","newUrl","typeWithDelay","quill","retain","type","delay","i","resolve","abortController","cancelToken","axios","cancelTokenSource","uploadFile","file","projectName","onUploadProgress","reject","opts","e","parseFilename","result","error","handleFileDrop","onProgress","onSuccess","files","data","toast"],"mappings":"45iBAGO,MAAMA,EAAeC,GAAS,CAEnC,MAAMC,EAAQ,qBACRC,EAAUF,EAAK,MAAMC,CAAK,EAEhC,IAAIE,EAAUH,EAEd,OAAIE,GACFA,EAAQ,QAASE,GAAU,CACzB,GAAI,CAACA,EAAM,SAAS,MAAM,EAAG,OAC7B,MAAMC,EAAMD,EAAM,MAAM,aAAa,EAAE,CAAC,EAClCE,EAASD,EAAI,MAAM,GAAG,EAAE,CAAC,EAC/BF,EAAUH,EAAK,QAAQK,EAAKC,CAAM,CACpC,CAAC,EAGIH,CACT,EAEA,eAAsBI,EAAcC,EAAOC,EAAQC,EAAMC,EAAQ,EAAG,CAClE,QAASC,EAAI,EAAGA,EAAIF,EAAK,OAAQE,IAC/BJ,EAAM,WAAWC,EAASG,EAAGF,EAAKE,CAAC,CAAC,EACpC,MAAM,IAAI,QAASC,GAAY,WAAWA,EAASF,CAAK,CAAC,CAE7D,CAIA,MAAMG,EAAkB,IAAI,gBACtBC,EAAcC,EAAM,YACpBC,EAAoBF,EAAY,OAAA,EASzBG,EAAa,CAACC,EAAMC,EAAaC,IACrC,IAAI,QAAQ,CAACR,EAASS,IAAW,CACrB,IAAI,SAAA,EACZ,OAAO,QAASH,CAAI,EAC7B,MAAMI,EAAO,CACX,OAAQT,EAAgB,OACxB,YAAaG,EAAkB,MAC/B,iBAAmBO,GAAMH,GAAoBA,EAAiBG,EAAGL,CAAI,EACrE,QAAS,CACP,eAAgBA,EAAK,KACrB,cAAeM,EAAAA,cAAcN,EAAK,IAAI,CAAA,CACxC,EAGFH,EACG,KAAK,iBAAiBI,CAAW,SAAUD,EAAMI,CAAI,EACrD,KAAMG,GAAW,CAChBb,EAAQ,CAAE,KAAAM,EAAY,KAAMO,EAAO,KAAM,CAC3C,CAAC,EACA,MAAOC,GAAU,CAChB,QAAQ,MAAMA,CAAK,EACnBL,EAAO,CAAE,QAAS,kBAAoBK,EAAM,SAAS,KAAK,OAAQ,CACpE,CAAC,CACL,CAAC,EAGUC,EAAiB,CAAC,EAAGR,EAAaS,EAAYC,IAAc,CACvE,EAAE,eAAA,EACF,EAAE,gBAAA,EAEF,IAAIC,EAAQ,EAAE,aAAa,MAC3B,GAAIA,GAAO,OAAQ,CACjB,GAAIA,EAAM,SAAW,EAAG,OAExB,UAAWZ,KAAQY,EACjBb,EAAWC,EAAMC,EAAaS,CAAU,EAAE,KACvCG,GAASF,EAAUE,CAAI,EACvBL,GAAU,CACTM,EAAAA,MAAM,MAAM,kBAAoBN,EAAM,SAAS,KAAK,MAAM,EAC1D,QAAQ,KAAKA,CAAK,CACpB,CAAA,CAGN,CACF"}
@@ -192,7 +192,7 @@ import "../ActivityVersionReview/ActivityVersionReview.styled.es.js";
192
192
  import "../ActivityCategorySelect/ActivityCategorySelect.es.js";
193
193
  import "../ActivityCategorySelect/CategoryDropdownItem.es.js";
194
194
  import "../../Feed.styled.es.js";
195
- import "../../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
195
+ import "../FeedSearchFilter.es.js";
196
196
  import "@tanstack/react-virtual";
197
197
  import "@tanstack/react-table";
198
198
  import "../../../ProjectTreeTable/widgets/CollapsedWidget.es.js";
@@ -206,8 +206,7 @@ import "../../../ProjectTreeTable/widgets/CellWidget.es.js";
206
206
  import "../../../ProjectTreeTable/widgets/EntityNameWidget.es.js";
207
207
  import "../../../ProjectTreeTable/widgets/GroupHeaderWidget.es.js";
208
208
  import "../../../ProjectTreeTable/widgets/ThumbnailWidget.es.js";
209
- import "../../../ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
210
- import "../../../ProjectTreeTable/context/SelectedRowsContext.es.js";
209
+ import "../../../ProjectTreeTable/widgets/LinksWidget.es.js";
211
210
  import "../../../../components/LinksManager/LinksManager.styled.es.js";
212
211
  import "../../../ProjectTreeTable/context/ProjectTableContext.es.js";
213
212
  import "../../../ProjectTreeTable/widgets/EmptyWidget.es.js";
@@ -219,6 +218,8 @@ import "../../../ProjectTreeTable/context/SelectionCellsContext.es.js";
219
218
  import "../../../ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
220
219
  import "../../../ProjectTreeTable/context/ClipboardContext.es.js";
221
220
  import "../../../ProjectTreeTable/context/ColumnSettingsContext.es.js";
221
+ import "../../../ProjectTreeTable/context/SelectedRowsContext.es.js";
222
+ import "../../../ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
222
223
  import "../../../ProjectTreeTable/components/DeleteConfirmContent.es.js";
223
224
  import "../../../ProjectTreeTable/context/ProjectDataContext.es.js";
224
225
  import "../../../ProjectTreeTable/ProjectTreeTable.styled.es.js";
@@ -237,6 +238,8 @@ import "../../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.s
237
238
  import "../../../../components/PlayableIcon/PlayableIcon.es.js";
238
239
  import "../../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js";
239
240
  import "../../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js";
241
+ import "../../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
242
+ import "../../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js";
240
243
  import "../../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
241
244
  import "../../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
242
245
  import "../../../Actions/Actions.styled.es.js";
@@ -269,6 +272,7 @@ import "../../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
269
272
  import "../../../../components/SizeSlider/SizeSlider.es.js";
270
273
  import "../../../../components/ReviewableCard/ReviewableCard.es.js";
271
274
  import "../../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
275
+ import "../../../../components/SearchFilter/CustomDateRangeDialog.es.js";
272
276
  import "../../../../components/SettingsPanel/SettingsPanel.es.js";
273
277
  import "../../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
274
278
  import "../../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
@@ -285,7 +289,7 @@ import "../../../../components/Menu/Menu.styled.es.js";
285
289
  import "../../../../components/Menu/MenuItem.es.js";
286
290
  import "../../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
287
291
  import "../../../../components/ColumnHeaderMenuUI.es.js";
288
- const Sp = (t) => {
292
+ const qp = (t) => {
289
293
  const m = /!\[.*?\]\((.*?)\)/g, r = t.match(m);
290
294
  let i = t;
291
295
  return r && r.forEach((o) => {
@@ -294,7 +298,7 @@ const Sp = (t) => {
294
298
  i = t.replace(e, p);
295
299
  }), i;
296
300
  };
297
- async function Wp(t, m, r, i = 1) {
301
+ async function zp(t, m, r, i = 1) {
298
302
  for (let o = 0; o < r.length; o++)
299
303
  t.insertText(m + o, r[o]), await new Promise((e) => setTimeout(e, i));
300
304
  }
@@ -314,7 +318,7 @@ const c = new AbortController(), f = a.CancelToken, d = f.source(), h = (t, m, r
314
318
  }).catch((n) => {
315
319
  console.error(n), o({ message: "Upload failed: " + n.response.data.detail });
316
320
  });
317
- }), $p = (t, m, r, i) => {
321
+ }), Gp = (t, m, r, i) => {
318
322
  t.preventDefault(), t.stopPropagation();
319
323
  let o = t.dataTransfer.files;
320
324
  if (o?.length) {
@@ -329,9 +333,9 @@ const c = new AbortController(), f = a.CancelToken, d = f.source(), h = (t, m, r
329
333
  }
330
334
  };
331
335
  export {
332
- $p as handleFileDrop,
333
- Sp as parseImages,
334
- Wp as typeWithDelay,
336
+ Gp as handleFileDrop,
337
+ qp as parseImages,
338
+ zp as typeWithDelay,
335
339
  h as uploadFile
336
340
  };
337
341
  //# sourceMappingURL=helpers.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.es.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/helpers.tsx"],"sourcesContent":["// @ts-nocheck\n\n// remove any query parameters from the url\nexport const parseImages = (body) => {\n // find images in the markdown with format ![](image_url)\n const regex = /!\\[.*?\\]\\((.*?)\\)/g\n const matches = body.match(regex)\n\n let newBody = body\n\n if (matches) {\n matches.forEach((match) => {\n if (!match.includes('http')) return\n const url = match.match(/\\(([^)]+)\\)/)[1]\n const newUrl = url.split('?')[0]\n newBody = body.replace(url, newUrl)\n })\n }\n\n return newBody\n}\n\nexport async function typeWithDelay(quill, retain, type, delay = 1) {\n for (let i = 0; i < type.length; i++) {\n quill.insertText(retain + i, type[i])\n await new Promise((resolve) => setTimeout(resolve, delay))\n }\n}\n\nimport { parseFilename } from '@shared/components'\nimport axios from 'axios'\nconst abortController = new AbortController()\nconst cancelToken = axios.CancelToken\nconst cancelTokenSource = cancelToken.source()\nimport { toast } from 'react-toastify'\n\ntype UploadedFile = {\n file: any\n data: any\n}\n\n// used to upload files (quill ImageUploader module)\nexport const uploadFile = (file, projectName, onUploadProgress): Promise<UploadedFile> => {\n return new Promise((resolve, reject) => {\n const formData = new FormData()\n formData.append('image', file)\n const opts = {\n signal: abortController.signal,\n cancelToken: cancelTokenSource.token,\n onUploadProgress: (e) => onUploadProgress && onUploadProgress(e, file),\n headers: {\n 'Content-Type': file.type,\n 'x-file-name': parseFilename(file.name),\n },\n }\n\n axios\n .post(`/api/projects/${projectName}/files`, file, opts)\n .then((result) => {\n resolve({ file: file, data: result.data })\n })\n .catch((error) => {\n console.error(error)\n reject({ message: 'Upload failed: ' + error.response.data.detail })\n })\n })\n}\n\nexport const handleFileDrop = (e, projectName, onProgress, onSuccess) => {\n e.preventDefault()\n e.stopPropagation()\n\n let files = e.dataTransfer.files\n if (files?.length) {\n if (files.length === 0) return\n\n for (const file of files) {\n uploadFile(file, projectName, onProgress).then(\n (data) => onSuccess(data),\n (error) => {\n toast.error('Upload failed: ' + error.response.data.detail)\n console.warn(error)\n },\n )\n }\n }\n}\n"],"names":["parseImages","body","regex","matches","newBody","match","url","newUrl","typeWithDelay","quill","retain","type","delay","i","resolve","abortController","cancelToken","axios","cancelTokenSource","uploadFile","file","projectName","onUploadProgress","reject","opts","e","parseFilename","result","error","handleFileDrop","onProgress","onSuccess","files","data","toast"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAMA,KAAc,CAACC,MAAS;AAEnC,QAAMC,IAAQ,sBACRC,IAAUF,EAAK,MAAMC,CAAK;AAEhC,MAAIE,IAAUH;AAEd,SAAIE,KACFA,EAAQ,QAAQ,CAACE,MAAU;AACzB,QAAI,CAACA,EAAM,SAAS,MAAM,EAAG;AAC7B,UAAMC,IAAMD,EAAM,MAAM,aAAa,EAAE,CAAC,GAClCE,IAASD,EAAI,MAAM,GAAG,EAAE,CAAC;AAC/B,IAAAF,IAAUH,EAAK,QAAQK,GAAKC,CAAM;AAAA,EACpC,CAAC,GAGIH;AACT;AAEA,eAAsBI,GAAcC,GAAOC,GAAQC,GAAMC,IAAQ,GAAG;AAClE,WAASC,IAAI,GAAGA,IAAIF,EAAK,QAAQE;AAC/B,IAAAJ,EAAM,WAAWC,IAASG,GAAGF,EAAKE,CAAC,CAAC,GACpC,MAAM,IAAI,QAAQ,CAACC,MAAY,WAAWA,GAASF,CAAK,CAAC;AAE7D;AAIA,MAAMG,IAAkB,IAAI,gBAAA,GACtBC,IAAcC,EAAM,aACpBC,IAAoBF,EAAY,OAAA,GASzBG,IAAa,CAACC,GAAMC,GAAaC,MACrC,IAAI,QAAQ,CAACR,GAASS,MAAW;AAEtC,EADiB,IAAI,SAAA,EACZ,OAAO,SAASH,CAAI;AAC7B,QAAMI,IAAO;AAAA,IACX,QAAQT,EAAgB;AAAA,IACxB,aAAaG,EAAkB;AAAA,IAC/B,kBAAkB,CAACO,MAAMH,KAAoBA,EAAiBG,GAAGL,CAAI;AAAA,IACrE,SAAS;AAAA,MACP,gBAAgBA,EAAK;AAAA,MACrB,eAAeM,EAAcN,EAAK,IAAI;AAAA,IAAA;AAAA,EACxC;AAGF,EAAAH,EACG,KAAK,iBAAiBI,CAAW,UAAUD,GAAMI,CAAI,EACrD,KAAK,CAACG,MAAW;AAChB,IAAAb,EAAQ,EAAE,MAAAM,GAAY,MAAMO,EAAO,MAAM;AAAA,EAC3C,CAAC,EACA,MAAM,CAACC,MAAU;AAChB,YAAQ,MAAMA,CAAK,GACnBL,EAAO,EAAE,SAAS,oBAAoBK,EAAM,SAAS,KAAK,QAAQ;AAAA,EACpE,CAAC;AACL,CAAC,GAGUC,KAAiB,CAACJ,GAAGJ,GAAaS,GAAYC,MAAc;AACvE,EAAAN,EAAE,eAAA,GACFA,EAAE,gBAAA;AAEF,MAAIO,IAAQP,EAAE,aAAa;AAC3B,MAAIO,GAAO,QAAQ;AACjB,QAAIA,EAAM,WAAW,EAAG;AAExB,eAAWZ,KAAQY;AACjB,MAAAb,EAAWC,GAAMC,GAAaS,CAAU,EAAE;AAAA,QACxC,CAACG,MAASF,EAAUE,CAAI;AAAA,QACxB,CAACL,MAAU;AACT,UAAAM,EAAM,MAAM,oBAAoBN,EAAM,SAAS,KAAK,MAAM,GAC1D,QAAQ,KAAKA,CAAK;AAAA,QACpB;AAAA,MAAA;AAAA,EAGN;AACF;"}
1
+ {"version":3,"file":"helpers.es.js","sources":["../../../../../../../src/containers/Feed/components/CommentInput/helpers.tsx"],"sourcesContent":["// @ts-nocheck\n\n// remove any query parameters from the url\nexport const parseImages = (body) => {\n // find images in the markdown with format ![](image_url)\n const regex = /!\\[.*?\\]\\((.*?)\\)/g\n const matches = body.match(regex)\n\n let newBody = body\n\n if (matches) {\n matches.forEach((match) => {\n if (!match.includes('http')) return\n const url = match.match(/\\(([^)]+)\\)/)[1]\n const newUrl = url.split('?')[0]\n newBody = body.replace(url, newUrl)\n })\n }\n\n return newBody\n}\n\nexport async function typeWithDelay(quill, retain, type, delay = 1) {\n for (let i = 0; i < type.length; i++) {\n quill.insertText(retain + i, type[i])\n await new Promise((resolve) => setTimeout(resolve, delay))\n }\n}\n\nimport { parseFilename } from '@shared/components'\nimport axios from 'axios'\nconst abortController = new AbortController()\nconst cancelToken = axios.CancelToken\nconst cancelTokenSource = cancelToken.source()\nimport { toast } from 'react-toastify'\n\ntype UploadedFile = {\n file: any\n data: any\n}\n\n// used to upload files (quill ImageUploader module)\nexport const uploadFile = (file, projectName, onUploadProgress): Promise<UploadedFile> => {\n return new Promise((resolve, reject) => {\n const formData = new FormData()\n formData.append('image', file)\n const opts = {\n signal: abortController.signal,\n cancelToken: cancelTokenSource.token,\n onUploadProgress: (e) => onUploadProgress && onUploadProgress(e, file),\n headers: {\n 'Content-Type': file.type,\n 'x-file-name': parseFilename(file.name),\n },\n }\n\n axios\n .post(`/api/projects/${projectName}/files`, file, opts)\n .then((result) => {\n resolve({ file: file, data: result.data })\n })\n .catch((error) => {\n console.error(error)\n reject({ message: 'Upload failed: ' + error.response.data.detail })\n })\n })\n}\n\nexport const handleFileDrop = (e, projectName, onProgress, onSuccess) => {\n e.preventDefault()\n e.stopPropagation()\n\n let files = e.dataTransfer.files\n if (files?.length) {\n if (files.length === 0) return\n\n for (const file of files) {\n uploadFile(file, projectName, onProgress).then(\n (data) => onSuccess(data),\n (error) => {\n toast.error('Upload failed: ' + error.response.data.detail)\n console.warn(error)\n },\n )\n }\n }\n}\n"],"names":["parseImages","body","regex","matches","newBody","match","url","newUrl","typeWithDelay","quill","retain","type","delay","i","resolve","abortController","cancelToken","axios","cancelTokenSource","uploadFile","file","projectName","onUploadProgress","reject","opts","e","parseFilename","result","error","handleFileDrop","onProgress","onSuccess","files","data","toast"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAMA,KAAc,CAACC,MAAS;AAEnC,QAAMC,IAAQ,sBACRC,IAAUF,EAAK,MAAMC,CAAK;AAEhC,MAAIE,IAAUH;AAEd,SAAIE,KACFA,EAAQ,QAAQ,CAACE,MAAU;AACzB,QAAI,CAACA,EAAM,SAAS,MAAM,EAAG;AAC7B,UAAMC,IAAMD,EAAM,MAAM,aAAa,EAAE,CAAC,GAClCE,IAASD,EAAI,MAAM,GAAG,EAAE,CAAC;AAC/B,IAAAF,IAAUH,EAAK,QAAQK,GAAKC,CAAM;AAAA,EACpC,CAAC,GAGIH;AACT;AAEA,eAAsBI,GAAcC,GAAOC,GAAQC,GAAMC,IAAQ,GAAG;AAClE,WAASC,IAAI,GAAGA,IAAIF,EAAK,QAAQE;AAC/B,IAAAJ,EAAM,WAAWC,IAASG,GAAGF,EAAKE,CAAC,CAAC,GACpC,MAAM,IAAI,QAAQ,CAACC,MAAY,WAAWA,GAASF,CAAK,CAAC;AAE7D;AAIA,MAAMG,IAAkB,IAAI,gBAAA,GACtBC,IAAcC,EAAM,aACpBC,IAAoBF,EAAY,OAAA,GASzBG,IAAa,CAACC,GAAMC,GAAaC,MACrC,IAAI,QAAQ,CAACR,GAASS,MAAW;AAEtC,EADiB,IAAI,SAAA,EACZ,OAAO,SAASH,CAAI;AAC7B,QAAMI,IAAO;AAAA,IACX,QAAQT,EAAgB;AAAA,IACxB,aAAaG,EAAkB;AAAA,IAC/B,kBAAkB,CAACO,MAAMH,KAAoBA,EAAiBG,GAAGL,CAAI;AAAA,IACrE,SAAS;AAAA,MACP,gBAAgBA,EAAK;AAAA,MACrB,eAAeM,EAAcN,EAAK,IAAI;AAAA,IAAA;AAAA,EACxC;AAGF,EAAAH,EACG,KAAK,iBAAiBI,CAAW,UAAUD,GAAMI,CAAI,EACrD,KAAK,CAACG,MAAW;AAChB,IAAAb,EAAQ,EAAE,MAAAM,GAAY,MAAMO,EAAO,MAAM;AAAA,EAC3C,CAAC,EACA,MAAM,CAACC,MAAU;AAChB,YAAQ,MAAMA,CAAK,GACnBL,EAAO,EAAE,SAAS,oBAAoBK,EAAM,SAAS,KAAK,QAAQ;AAAA,EACpE,CAAC;AACL,CAAC,GAGUC,KAAiB,CAACJ,GAAGJ,GAAaS,GAAYC,MAAc;AACvE,EAAAN,EAAE,eAAA,GACFA,EAAE,gBAAA;AAEF,MAAIO,IAAQP,EAAE,aAAa;AAC3B,MAAIO,GAAO,QAAQ;AACjB,QAAIA,EAAM,WAAW,EAAG;AAExB,eAAWZ,KAAQY;AACjB,MAAAb,EAAWC,GAAMC,GAAaS,CAAU,EAAE;AAAA,QACxC,CAACG,MAASF,EAAUE,CAAI;AAAA,QACxB,CAACL,MAAU;AACT,UAAAM,EAAM,MAAM,oBAAoBN,EAAM,SAAS,KAAK,MAAM,GAC1D,QAAQ,KAAKA,CAAK;AAAA,QACpB;AAAA,MAAA;AAAA,EAGN;AACF;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react-quill-ayon"),a=require("quill-magic-url"),c=require("./ImageUploader.cjs.js"),n=require("./MentionClipboard.cjs.js");i.Quill.register("modules/imageUploader",c);i.Quill.register("modules/magicUrl",a);i.Quill.register("modules/mentionClipboard",n);const e=t=>'<span class="material-symbols-outlined icon">'+t+"</span>";var l=i.Quill.import("ui/icons");l.header[2]=e("format_h1");l.bold=e("format_bold");l.italic=e("format_italic");l.underline=e("format_underlined");l.link=e("link");l.list.ordered=e("format_list_numbered");l.list.bullet=e("format_list_bulleted");l.list.check=e("checklist");l.image=e("attach_file");l["code-block"]=e("code");const d=["header","bold","italic","strike","list","link","code-block","mention"],u=({imageUploader:t,mentionTypeOptions:r,disableImageUpload:s=!1})=>{const o=[[{header:2},"bold","italic","link","code-block"],[{list:"ordered"},{list:"bullet"},{list:"check"}]];return s||o.push(["image"]),{toolbar:o,imageUploader:t,magicUrl:!0,mentionClipboard:{typeOptions:r}}};exports.getModules=u;exports.quillFormats=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react-quill-ayon"),a=require("quill-magic-url"),c=require("./ImageUploader.cjs.js"),n=require("./MentionClipboard.cjs.js");i.Quill.register("modules/imageUploader",c);i.Quill.register("modules/magicUrl",a);i.Quill.register("modules/mentionClipboard",n);const e=t=>'<span class="material-symbols-outlined icon">'+t+"</span>";var l=i.Quill.import("ui/icons");l.header[2]=e("format_h1");l.bold=e("format_bold");l.italic=e("format_italic");l.underline=e("format_underlined");l.link=e("link");l.list.ordered=e("format_list_numbered");l.list.bullet=e("format_list_bulleted");l.list.check=e("check_circle");l.image=e("attach_file");l["code-block"]=e("code");const d=["header","bold","italic","strike","list","link","code-block","mention"],u=({imageUploader:t,mentionTypeOptions:r,disableImageUpload:s=!1})=>{const o=[[{header:2},"bold","italic","link","code-block"],[{list:"ordered"},{list:"bullet"},{list:"check"}]];return s||o.push(["image"]),{toolbar:o,imageUploader:t,magicUrl:!0,mentionClipboard:{typeOptions:r}}};exports.getModules=u;exports.quillFormats=d;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../src/containers/Feed/components/CommentInput/modules/index.ts"],"sourcesContent":["// @ts-nocheck\n\nimport { Quill } from 'react-quill-ayon'\nimport MagicUrl from 'quill-magic-url'\nimport ImageUploader from './ImageUploader'\nimport MentionClipboard from './MentionClipboard'\nQuill.register('modules/imageUploader', ImageUploader)\nQuill.register('modules/magicUrl', MagicUrl)\nQuill.register('modules/mentionClipboard', MentionClipboard)\n\n// override icons with material icons\nconst getIcon = (icon) => '<span class=\"material-symbols-outlined icon\">' + icon + '</span>'\n\nvar icons = Quill.import('ui/icons')\nicons['header']['2'] = getIcon('format_h1')\nicons['bold'] = getIcon('format_bold')\nicons['italic'] = getIcon('format_italic')\nicons['underline'] = getIcon('format_underlined')\nicons['link'] = getIcon('link')\nicons['list']['ordered'] = getIcon('format_list_numbered')\nicons['list']['bullet'] = getIcon('format_list_bulleted')\nicons['list']['check'] = getIcon('checklist')\nicons['image'] = getIcon('attach_file')\nicons['code-block'] = getIcon('code')\n\nexport const quillFormats = [\n 'header',\n 'bold',\n 'italic',\n 'strike',\n 'list',\n 'link',\n 'code-block',\n 'mention',\n]\n\nexport const getModules = ({ imageUploader, mentionTypeOptions, disableImageUpload = false }) => {\n const toolbar = [\n [{ header: 2 }, 'bold', 'italic', 'link', 'code-block'],\n [{ list: 'ordered' }, { list: 'bullet' }, { list: 'check' }],\n ]\n\n if (!disableImageUpload) {\n toolbar.push(['image'])\n }\n\n return {\n toolbar,\n imageUploader,\n magicUrl: true,\n mentionClipboard: { typeOptions: mentionTypeOptions },\n }\n}\n"],"names":["Quill","ImageUploader","MagicUrl","MentionClipboard","getIcon","icon","icons","quillFormats","getModules","imageUploader","mentionTypeOptions","disableImageUpload","toolbar"],"mappings":"4NAMAA,EAAAA,MAAM,SAAS,wBAAyBC,CAAa,EACrDD,EAAAA,MAAM,SAAS,mBAAoBE,CAAQ,EAC3CF,EAAAA,MAAM,SAAS,2BAA4BG,CAAgB,EAG3D,MAAMC,EAAWC,GAAS,gDAAkDA,EAAO,UAEnF,IAAIC,EAAQN,EAAAA,MAAM,OAAO,UAAU,EACnCM,EAAM,OAAU,CAAG,EAAIF,EAAQ,WAAW,EAC1CE,EAAM,KAAUF,EAAQ,aAAa,EACrCE,EAAM,OAAYF,EAAQ,eAAe,EACzCE,EAAM,UAAeF,EAAQ,mBAAmB,EAChDE,EAAM,KAAUF,EAAQ,MAAM,EAC9BE,EAAM,KAAQ,QAAaF,EAAQ,sBAAsB,EACzDE,EAAM,KAAQ,OAAYF,EAAQ,sBAAsB,EACxDE,EAAM,KAAQ,MAAWF,EAAQ,WAAW,EAC5CE,EAAM,MAAWF,EAAQ,aAAa,EACtCE,EAAM,YAAY,EAAIF,EAAQ,MAAM,EAE7B,MAAMG,EAAe,CAC1B,SACA,OACA,SACA,SACA,OACA,OACA,aACA,SACF,EAEaC,EAAa,CAAC,CAAE,cAAAC,EAAe,mBAAAC,EAAoB,mBAAAC,EAAqB,MAAY,CAC/F,MAAMC,EAAU,CACd,CAAC,CAAE,OAAQ,CAAA,EAAK,OAAQ,SAAU,OAAQ,YAAY,EACtD,CAAC,CAAE,KAAM,WAAa,CAAE,KAAM,QAAA,EAAY,CAAE,KAAM,OAAA,CAAS,CAAA,EAG7D,OAAKD,GACHC,EAAQ,KAAK,CAAC,OAAO,CAAC,EAGjB,CACL,QAAAA,EACA,cAAAH,EACA,SAAU,GACV,iBAAkB,CAAE,YAAaC,CAAA,CAAmB,CAExD"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../src/containers/Feed/components/CommentInput/modules/index.ts"],"sourcesContent":["// @ts-nocheck\n\nimport { Quill } from 'react-quill-ayon'\nimport MagicUrl from 'quill-magic-url'\nimport ImageUploader from './ImageUploader'\nimport MentionClipboard from './MentionClipboard'\nQuill.register('modules/imageUploader', ImageUploader)\nQuill.register('modules/magicUrl', MagicUrl)\nQuill.register('modules/mentionClipboard', MentionClipboard)\n\n// override icons with material icons\nconst getIcon = (icon) => '<span class=\"material-symbols-outlined icon\">' + icon + '</span>'\n\nvar icons = Quill.import('ui/icons')\nicons['header']['2'] = getIcon('format_h1')\nicons['bold'] = getIcon('format_bold')\nicons['italic'] = getIcon('format_italic')\nicons['underline'] = getIcon('format_underlined')\nicons['link'] = getIcon('link')\nicons['list']['ordered'] = getIcon('format_list_numbered')\nicons['list']['bullet'] = getIcon('format_list_bulleted')\nicons['list']['check'] = getIcon('check_circle')\nicons['image'] = getIcon('attach_file')\nicons['code-block'] = getIcon('code')\n\nexport const quillFormats = [\n 'header',\n 'bold',\n 'italic',\n 'strike',\n 'list',\n 'link',\n 'code-block',\n 'mention',\n]\n\nexport const getModules = ({ imageUploader, mentionTypeOptions, disableImageUpload = false }) => {\n const toolbar = [\n [{ header: 2 }, 'bold', 'italic', 'link', 'code-block'],\n [{ list: 'ordered' }, { list: 'bullet' }, { list: 'check' }],\n ]\n\n if (!disableImageUpload) {\n toolbar.push(['image'])\n }\n\n return {\n toolbar,\n imageUploader,\n magicUrl: true,\n mentionClipboard: { typeOptions: mentionTypeOptions },\n }\n}\n"],"names":["Quill","ImageUploader","MagicUrl","MentionClipboard","getIcon","icon","icons","quillFormats","getModules","imageUploader","mentionTypeOptions","disableImageUpload","toolbar"],"mappings":"4NAMAA,EAAAA,MAAM,SAAS,wBAAyBC,CAAa,EACrDD,EAAAA,MAAM,SAAS,mBAAoBE,CAAQ,EAC3CF,EAAAA,MAAM,SAAS,2BAA4BG,CAAgB,EAG3D,MAAMC,EAAWC,GAAS,gDAAkDA,EAAO,UAEnF,IAAIC,EAAQN,EAAAA,MAAM,OAAO,UAAU,EACnCM,EAAM,OAAU,CAAG,EAAIF,EAAQ,WAAW,EAC1CE,EAAM,KAAUF,EAAQ,aAAa,EACrCE,EAAM,OAAYF,EAAQ,eAAe,EACzCE,EAAM,UAAeF,EAAQ,mBAAmB,EAChDE,EAAM,KAAUF,EAAQ,MAAM,EAC9BE,EAAM,KAAQ,QAAaF,EAAQ,sBAAsB,EACzDE,EAAM,KAAQ,OAAYF,EAAQ,sBAAsB,EACxDE,EAAM,KAAQ,MAAWF,EAAQ,cAAc,EAC/CE,EAAM,MAAWF,EAAQ,aAAa,EACtCE,EAAM,YAAY,EAAIF,EAAQ,MAAM,EAE7B,MAAMG,EAAe,CAC1B,SACA,OACA,SACA,SACA,OACA,OACA,aACA,SACF,EAEaC,EAAa,CAAC,CAAE,cAAAC,EAAe,mBAAAC,EAAoB,mBAAAC,EAAqB,MAAY,CAC/F,MAAMC,EAAU,CACd,CAAC,CAAE,OAAQ,CAAA,EAAK,OAAQ,SAAU,OAAQ,YAAY,EACtD,CAAC,CAAE,KAAM,WAAa,CAAE,KAAM,QAAA,EAAY,CAAE,KAAM,OAAA,CAAS,CAAA,EAG7D,OAAKD,GACHC,EAAQ,KAAK,CAAC,OAAO,CAAC,EAGjB,CACL,QAAAA,EACA,cAAAH,EACA,SAAU,GACV,iBAAkB,CAAE,YAAaC,CAAA,CAAmB,CAExD"}
@@ -1,10 +1,10 @@
1
1
  import { Quill as l } from "react-quill-ayon";
2
2
  import s from "quill-magic-url";
3
- import m from "./ImageUploader.es.js";
4
- import c from "./MentionClipboard.es.js";
5
- l.register("modules/imageUploader", m);
3
+ import c from "./ImageUploader.es.js";
4
+ import m from "./MentionClipboard.es.js";
5
+ l.register("modules/imageUploader", c);
6
6
  l.register("modules/magicUrl", s);
7
- l.register("modules/mentionClipboard", c);
7
+ l.register("modules/mentionClipboard", m);
8
8
  const e = (o) => '<span class="material-symbols-outlined icon">' + o + "</span>";
9
9
  var i = l.import("ui/icons");
10
10
  i.header[2] = e("format_h1");
@@ -14,7 +14,7 @@ i.underline = e("format_underlined");
14
14
  i.link = e("link");
15
15
  i.list.ordered = e("format_list_numbered");
16
16
  i.list.bullet = e("format_list_bulleted");
17
- i.list.check = e("checklist");
17
+ i.list.check = e("check_circle");
18
18
  i.image = e("attach_file");
19
19
  i["code-block"] = e("code");
20
20
  const p = [
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../../../../../../src/containers/Feed/components/CommentInput/modules/index.ts"],"sourcesContent":["// @ts-nocheck\n\nimport { Quill } from 'react-quill-ayon'\nimport MagicUrl from 'quill-magic-url'\nimport ImageUploader from './ImageUploader'\nimport MentionClipboard from './MentionClipboard'\nQuill.register('modules/imageUploader', ImageUploader)\nQuill.register('modules/magicUrl', MagicUrl)\nQuill.register('modules/mentionClipboard', MentionClipboard)\n\n// override icons with material icons\nconst getIcon = (icon) => '<span class=\"material-symbols-outlined icon\">' + icon + '</span>'\n\nvar icons = Quill.import('ui/icons')\nicons['header']['2'] = getIcon('format_h1')\nicons['bold'] = getIcon('format_bold')\nicons['italic'] = getIcon('format_italic')\nicons['underline'] = getIcon('format_underlined')\nicons['link'] = getIcon('link')\nicons['list']['ordered'] = getIcon('format_list_numbered')\nicons['list']['bullet'] = getIcon('format_list_bulleted')\nicons['list']['check'] = getIcon('checklist')\nicons['image'] = getIcon('attach_file')\nicons['code-block'] = getIcon('code')\n\nexport const quillFormats = [\n 'header',\n 'bold',\n 'italic',\n 'strike',\n 'list',\n 'link',\n 'code-block',\n 'mention',\n]\n\nexport const getModules = ({ imageUploader, mentionTypeOptions, disableImageUpload = false }) => {\n const toolbar = [\n [{ header: 2 }, 'bold', 'italic', 'link', 'code-block'],\n [{ list: 'ordered' }, { list: 'bullet' }, { list: 'check' }],\n ]\n\n if (!disableImageUpload) {\n toolbar.push(['image'])\n }\n\n return {\n toolbar,\n imageUploader,\n magicUrl: true,\n mentionClipboard: { typeOptions: mentionTypeOptions },\n }\n}\n"],"names":["Quill","ImageUploader","MagicUrl","MentionClipboard","getIcon","icon","icons","quillFormats","getModules","imageUploader","mentionTypeOptions","disableImageUpload","toolbar"],"mappings":";;;;AAMAA,EAAM,SAAS,yBAAyBC,CAAa;AACrDD,EAAM,SAAS,oBAAoBE,CAAQ;AAC3CF,EAAM,SAAS,4BAA4BG,CAAgB;AAG3D,MAAMC,IAAU,CAACC,MAAS,kDAAkDA,IAAO;AAEnF,IAAIC,IAAQN,EAAM,OAAO,UAAU;AACnCM,EAAM,OAAU,CAAG,IAAIF,EAAQ,WAAW;AAC1CE,EAAM,OAAUF,EAAQ,aAAa;AACrCE,EAAM,SAAYF,EAAQ,eAAe;AACzCE,EAAM,YAAeF,EAAQ,mBAAmB;AAChDE,EAAM,OAAUF,EAAQ,MAAM;AAC9BE,EAAM,KAAQ,UAAaF,EAAQ,sBAAsB;AACzDE,EAAM,KAAQ,SAAYF,EAAQ,sBAAsB;AACxDE,EAAM,KAAQ,QAAWF,EAAQ,WAAW;AAC5CE,EAAM,QAAWF,EAAQ,aAAa;AACtCE,EAAM,YAAY,IAAIF,EAAQ,MAAM;AAE7B,MAAMG,IAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAa,CAAC,EAAE,eAAAC,GAAe,oBAAAC,GAAoB,oBAAAC,IAAqB,SAAY;AAC/F,QAAMC,IAAU;AAAA,IACd,CAAC,EAAE,QAAQ,EAAA,GAAK,QAAQ,UAAU,QAAQ,YAAY;AAAA,IACtD,CAAC,EAAE,MAAM,aAAa,EAAE,MAAM,SAAA,GAAY,EAAE,MAAM,QAAA,CAAS;AAAA,EAAA;AAG7D,SAAKD,KACHC,EAAQ,KAAK,CAAC,OAAO,CAAC,GAGjB;AAAA,IACL,SAAAA;AAAA,IACA,eAAAH;AAAA,IACA,UAAU;AAAA,IACV,kBAAkB,EAAE,aAAaC,EAAA;AAAA,EAAmB;AAExD;"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../../../../../../src/containers/Feed/components/CommentInput/modules/index.ts"],"sourcesContent":["// @ts-nocheck\n\nimport { Quill } from 'react-quill-ayon'\nimport MagicUrl from 'quill-magic-url'\nimport ImageUploader from './ImageUploader'\nimport MentionClipboard from './MentionClipboard'\nQuill.register('modules/imageUploader', ImageUploader)\nQuill.register('modules/magicUrl', MagicUrl)\nQuill.register('modules/mentionClipboard', MentionClipboard)\n\n// override icons with material icons\nconst getIcon = (icon) => '<span class=\"material-symbols-outlined icon\">' + icon + '</span>'\n\nvar icons = Quill.import('ui/icons')\nicons['header']['2'] = getIcon('format_h1')\nicons['bold'] = getIcon('format_bold')\nicons['italic'] = getIcon('format_italic')\nicons['underline'] = getIcon('format_underlined')\nicons['link'] = getIcon('link')\nicons['list']['ordered'] = getIcon('format_list_numbered')\nicons['list']['bullet'] = getIcon('format_list_bulleted')\nicons['list']['check'] = getIcon('check_circle')\nicons['image'] = getIcon('attach_file')\nicons['code-block'] = getIcon('code')\n\nexport const quillFormats = [\n 'header',\n 'bold',\n 'italic',\n 'strike',\n 'list',\n 'link',\n 'code-block',\n 'mention',\n]\n\nexport const getModules = ({ imageUploader, mentionTypeOptions, disableImageUpload = false }) => {\n const toolbar = [\n [{ header: 2 }, 'bold', 'italic', 'link', 'code-block'],\n [{ list: 'ordered' }, { list: 'bullet' }, { list: 'check' }],\n ]\n\n if (!disableImageUpload) {\n toolbar.push(['image'])\n }\n\n return {\n toolbar,\n imageUploader,\n magicUrl: true,\n mentionClipboard: { typeOptions: mentionTypeOptions },\n }\n}\n"],"names":["Quill","ImageUploader","MagicUrl","MentionClipboard","getIcon","icon","icons","quillFormats","getModules","imageUploader","mentionTypeOptions","disableImageUpload","toolbar"],"mappings":";;;;AAMAA,EAAM,SAAS,yBAAyBC,CAAa;AACrDD,EAAM,SAAS,oBAAoBE,CAAQ;AAC3CF,EAAM,SAAS,4BAA4BG,CAAgB;AAG3D,MAAMC,IAAU,CAACC,MAAS,kDAAkDA,IAAO;AAEnF,IAAIC,IAAQN,EAAM,OAAO,UAAU;AACnCM,EAAM,OAAU,CAAG,IAAIF,EAAQ,WAAW;AAC1CE,EAAM,OAAUF,EAAQ,aAAa;AACrCE,EAAM,SAAYF,EAAQ,eAAe;AACzCE,EAAM,YAAeF,EAAQ,mBAAmB;AAChDE,EAAM,OAAUF,EAAQ,MAAM;AAC9BE,EAAM,KAAQ,UAAaF,EAAQ,sBAAsB;AACzDE,EAAM,KAAQ,SAAYF,EAAQ,sBAAsB;AACxDE,EAAM,KAAQ,QAAWF,EAAQ,cAAc;AAC/CE,EAAM,QAAWF,EAAQ,aAAa;AACtCE,EAAM,YAAY,IAAIF,EAAQ,MAAM;AAE7B,MAAMG,IAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAa,CAAC,EAAE,eAAAC,GAAe,oBAAAC,GAAoB,oBAAAC,IAAqB,SAAY;AAC/F,QAAMC,IAAU;AAAA,IACd,CAAC,EAAE,QAAQ,EAAA,GAAK,QAAQ,UAAU,QAAQ,YAAY;AAAA,IACtD,CAAC,EAAE,MAAM,aAAa,EAAE,MAAM,SAAA,GAAY,EAAE,MAAM,QAAA,CAAS;AAAA,EAAA;AAG7D,SAAKD,KACHC,EAAQ,KAAK,CAAC,OAAO,CAAC,GAGjB;AAAA,IACL,SAAAA;AAAA,IACA,eAAAH;AAAA,IACA,UAAU;AAAA,IACV,kBAAkB,EAAE,aAAaC,EAAA;AAAA,EAAmB;AAExD;"}