@ynput/ayon-frontend-shared 0.3.0 → 0.3.2

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 (377) hide show
  1. package/dist/_virtual/index.cjs4.js +1 -1
  2. package/dist/_virtual/index.cjs5.js +1 -1
  3. package/dist/_virtual/index.es4.js +2 -5
  4. package/dist/_virtual/index.es4.js.map +1 -1
  5. package/dist/_virtual/index.es5.js +5 -2
  6. package/dist/_virtual/index.es5.js.map +1 -1
  7. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  8. package/dist/node_modules/remove-accents/index.es.js +1 -1
  9. package/dist/node_modules/web-namespaces/index.cjs.js +1 -1
  10. package/dist/node_modules/web-namespaces/index.cjs.js.map +1 -1
  11. package/dist/node_modules/web-namespaces/index.es.js +3 -8
  12. package/dist/node_modules/web-namespaces/index.es.js.map +1 -1
  13. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  14. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  15. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  16. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  17. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  18. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  19. package/dist/shared/src/api/generated/graphql.cjs.js +12 -8
  20. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  21. package/dist/shared/src/api/generated/graphql.es.js +11 -7
  22. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  23. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  24. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  25. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  26. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  27. package/dist/shared/src/api/queries/overview/getOverview.es.js +95 -95
  28. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  29. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +2 -2
  30. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  31. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +66 -61
  32. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  33. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  34. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  35. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +14 -11
  36. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  37. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  38. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  39. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +42 -41
  40. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  41. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  42. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  43. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +23 -23
  44. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  45. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js +1 -1
  46. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js.map +1 -1
  47. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js +6 -6
  48. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js.map +1 -1
  49. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  50. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  51. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +65 -64
  52. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  53. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  54. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  55. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +16 -16
  56. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  57. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
  58. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  59. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +142 -146
  60. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  61. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  62. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  63. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +24 -24
  64. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  65. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  66. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  67. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +141 -132
  68. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  69. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  70. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  71. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +35 -28
  72. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  73. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +2 -2
  74. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  75. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +10 -10
  76. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  77. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  78. package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
  79. package/dist/shared/src/context/AddonContext.es.js.map +1 -1
  80. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  81. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  82. package/dist/shared/src/context/ProjectFoldersContext.es.js +62 -49
  83. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  84. package/dist/shared/src/hooks/useLoadModules.cjs.js +1 -1
  85. package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
  86. package/dist/shared/src/hooks/useLoadModules.es.js +86 -80
  87. package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
  88. package/dist/types/api/generated/graphql.d.ts +2 -1
  89. package/dist/types/api/generated/graphqlLinks.d.ts +1 -0
  90. package/dist/types/api/queries/overview/getOverview.d.ts +1 -0
  91. package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +1 -0
  92. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +1 -0
  93. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
  94. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +4 -1
  95. package/dist/types/context/AddonContext.d.ts +1 -0
  96. package/dist/types/context/ProjectFoldersContext.d.ts +1 -0
  97. package/package.json +2 -1
  98. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js +0 -2
  99. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js.map +0 -1
  100. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js +0 -63
  101. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js.map +0 -1
  102. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js +0 -2
  103. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js.map +0 -1
  104. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js +0 -12
  105. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js.map +0 -1
  106. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js +0 -2
  107. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js.map +0 -1
  108. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js +0 -107
  109. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js.map +0 -1
  110. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js +0 -2
  111. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js.map +0 -1
  112. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js +0 -14
  113. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js.map +0 -1
  114. package/dist/node_modules/devlop/lib/default.cjs.js +0 -2
  115. package/dist/node_modules/devlop/lib/default.cjs.js.map +0 -1
  116. package/dist/node_modules/devlop/lib/default.es.js +0 -6
  117. package/dist/node_modules/devlop/lib/default.es.js.map +0 -1
  118. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js +0 -2
  119. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js.map +0 -1
  120. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js +0 -39
  121. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js.map +0 -1
  122. package/dist/node_modules/entities/dist/esm/decode.cjs.js +0 -2
  123. package/dist/node_modules/entities/dist/esm/decode.cjs.js.map +0 -1
  124. package/dist/node_modules/entities/dist/esm/decode.es.js +0 -246
  125. package/dist/node_modules/entities/dist/esm/decode.es.js.map +0 -1
  126. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js +0 -2
  127. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js.map +0 -1
  128. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js +0 -8
  129. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js.map +0 -1
  130. package/dist/node_modules/hast-util-raw/lib/index.cjs.js +0 -2
  131. package/dist/node_modules/hast-util-raw/lib/index.cjs.js.map +0 -1
  132. package/dist/node_modules/hast-util-raw/lib/index.es.js +0 -218
  133. package/dist/node_modules/hast-util-raw/lib/index.es.js.map +0 -1
  134. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js +0 -2
  135. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js.map +0 -1
  136. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js +0 -146
  137. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js.map +0 -1
  138. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js +0 -2
  139. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js.map +0 -1
  140. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js +0 -21
  141. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js.map +0 -1
  142. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js +0 -2
  143. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js.map +0 -1
  144. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js +0 -113
  145. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js.map +0 -1
  146. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js +0 -2
  147. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js.map +0 -1
  148. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js +0 -9
  149. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js.map +0 -1
  150. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js +0 -2
  151. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js.map +0 -1
  152. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js +0 -45
  153. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js.map +0 -1
  154. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js +0 -2
  155. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js.map +0 -1
  156. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js +0 -26
  157. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js.map +0 -1
  158. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js +0 -2
  159. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js.map +0 -1
  160. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js +0 -99
  161. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js.map +0 -1
  162. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js +0 -2
  163. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js.map +0 -1
  164. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js +0 -8
  165. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js.map +0 -1
  166. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js +0 -2
  167. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js.map +0 -1
  168. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js +0 -211
  169. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js.map +0 -1
  170. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js +0 -2
  171. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js.map +0 -1
  172. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js +0 -251
  173. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js.map +0 -1
  174. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js +0 -2
  175. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js.map +0 -1
  176. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js +0 -15
  177. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js.map +0 -1
  178. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js +0 -2
  179. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js.map +0 -1
  180. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js +0 -74
  181. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js.map +0 -1
  182. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js +0 -2
  183. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js.map +0 -1
  184. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js +0 -85
  185. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js.map +0 -1
  186. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js +0 -2
  187. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js.map +0 -1
  188. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js +0 -2272
  189. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js.map +0 -1
  190. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js +0 -2
  191. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js.map +0 -1
  192. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js +0 -241
  193. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js.map +0 -1
  194. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js +0 -2
  195. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js.map +0 -1
  196. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js +0 -3
  197. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js.map +0 -1
  198. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js +0 -2
  199. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js.map +0 -1
  200. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js +0 -1941
  201. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js.map +0 -1
  202. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js +0 -2
  203. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js.map +0 -1
  204. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js +0 -89
  205. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js.map +0 -1
  206. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js +0 -2
  207. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js.map +0 -1
  208. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js +0 -163
  209. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js.map +0 -1
  210. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js +0 -2
  211. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js.map +0 -1
  212. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js +0 -13
  213. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js.map +0 -1
  214. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js +0 -2
  215. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js.map +0 -1
  216. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js +0 -62
  217. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js.map +0 -1
  218. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js +0 -2
  219. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js.map +0 -1
  220. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js +0 -34
  221. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js.map +0 -1
  222. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js +0 -2
  223. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js.map +0 -1
  224. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js +0 -369
  225. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js.map +0 -1
  226. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js +0 -2
  227. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js.map +0 -1
  228. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js +0 -7
  229. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js.map +0 -1
  230. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js +0 -2
  231. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js.map +0 -1
  232. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js +0 -567
  233. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js.map +0 -1
  234. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js +0 -2
  235. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js.map +0 -1
  236. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js +0 -8
  237. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js.map +0 -1
  238. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js +0 -2
  239. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js.map +0 -1
  240. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js +0 -7
  241. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js.map +0 -1
  242. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js +0 -2
  243. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js.map +0 -1
  244. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js +0 -20
  245. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js.map +0 -1
  246. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js +0 -2
  247. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js.map +0 -1
  248. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js +0 -37
  249. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js.map +0 -1
  250. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js +0 -2
  251. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js.map +0 -1
  252. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js +0 -29
  253. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js.map +0 -1
  254. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js +0 -2
  255. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js.map +0 -1
  256. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js +0 -11
  257. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js.map +0 -1
  258. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js +0 -2
  259. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js.map +0 -1
  260. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js +0 -22
  261. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js.map +0 -1
  262. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js +0 -2
  263. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js.map +0 -1
  264. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js +0 -15
  265. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js.map +0 -1
  266. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js +0 -2
  267. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js.map +0 -1
  268. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js +0 -20
  269. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js.map +0 -1
  270. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js +0 -2
  271. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js.map +0 -1
  272. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js +0 -12
  273. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js.map +0 -1
  274. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js +0 -2
  275. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js.map +0 -1
  276. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js +0 -12
  277. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js.map +0 -1
  278. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js +0 -3
  279. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js.map +0 -1
  280. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js +0 -43
  281. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js.map +0 -1
  282. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js +0 -2
  283. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js.map +0 -1
  284. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js +0 -119
  285. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js.map +0 -1
  286. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.cjs.js +0 -2
  287. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.cjs.js.map +0 -1
  288. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.es.js +0 -13
  289. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.es.js.map +0 -1
  290. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.cjs.js +0 -2
  291. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.cjs.js.map +0 -1
  292. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.es.js +0 -62
  293. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.es.js.map +0 -1
  294. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.cjs.js +0 -2
  295. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.cjs.js.map +0 -1
  296. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.es.js +0 -34
  297. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.es.js.map +0 -1
  298. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.cjs.js +0 -2
  299. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.cjs.js.map +0 -1
  300. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.es.js +0 -369
  301. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.es.js.map +0 -1
  302. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.cjs.js +0 -2
  303. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.cjs.js.map +0 -1
  304. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.es.js +0 -7
  305. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.es.js.map +0 -1
  306. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.cjs.js +0 -2
  307. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.cjs.js.map +0 -1
  308. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.es.js +0 -567
  309. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.es.js.map +0 -1
  310. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js +0 -2
  311. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js.map +0 -1
  312. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.es.js +0 -8
  313. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.es.js.map +0 -1
  314. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js +0 -2
  315. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js.map +0 -1
  316. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.es.js +0 -7
  317. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.es.js.map +0 -1
  318. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.cjs.js +0 -2
  319. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.cjs.js.map +0 -1
  320. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.es.js +0 -20
  321. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.es.js.map +0 -1
  322. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.cjs.js +0 -2
  323. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.cjs.js.map +0 -1
  324. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.es.js +0 -37
  325. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.es.js.map +0 -1
  326. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.cjs.js +0 -2
  327. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.cjs.js.map +0 -1
  328. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.es.js +0 -29
  329. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.es.js.map +0 -1
  330. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.cjs.js +0 -2
  331. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.cjs.js.map +0 -1
  332. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.es.js +0 -11
  333. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.es.js.map +0 -1
  334. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.cjs.js +0 -2
  335. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.cjs.js.map +0 -1
  336. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.es.js +0 -22
  337. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.es.js.map +0 -1
  338. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.cjs.js +0 -2
  339. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.cjs.js.map +0 -1
  340. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.es.js +0 -15
  341. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.es.js.map +0 -1
  342. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.cjs.js +0 -2
  343. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.cjs.js.map +0 -1
  344. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.es.js +0 -20
  345. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.es.js.map +0 -1
  346. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.cjs.js +0 -2
  347. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.cjs.js.map +0 -1
  348. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.es.js +0 -12
  349. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.es.js.map +0 -1
  350. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.cjs.js +0 -2
  351. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.cjs.js.map +0 -1
  352. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.es.js +0 -12
  353. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.es.js.map +0 -1
  354. package/dist/node_modules/rehype-raw/lib/index.cjs.js +0 -2
  355. package/dist/node_modules/rehype-raw/lib/index.cjs.js.map +0 -1
  356. package/dist/node_modules/rehype-raw/lib/index.es.js +0 -13
  357. package/dist/node_modules/rehype-raw/lib/index.es.js.map +0 -1
  358. package/dist/node_modules/unist-util-is/lib/index.cjs.js +0 -2
  359. package/dist/node_modules/unist-util-is/lib/index.cjs.js.map +0 -1
  360. package/dist/node_modules/unist-util-is/lib/index.es.js +0 -92
  361. package/dist/node_modules/unist-util-is/lib/index.es.js.map +0 -1
  362. package/dist/node_modules/unist-util-position/lib/index.cjs.js +0 -2
  363. package/dist/node_modules/unist-util-position/lib/index.cjs.js.map +0 -1
  364. package/dist/node_modules/unist-util-position/lib/index.es.js +0 -18
  365. package/dist/node_modules/unist-util-position/lib/index.es.js.map +0 -1
  366. package/dist/node_modules/unist-util-visit/lib/index.cjs.js +0 -2
  367. package/dist/node_modules/unist-util-visit/lib/index.cjs.js.map +0 -1
  368. package/dist/node_modules/unist-util-visit/lib/index.es.js +0 -17
  369. package/dist/node_modules/unist-util-visit/lib/index.es.js.map +0 -1
  370. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js +0 -2
  371. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js.map +0 -1
  372. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js +0 -7
  373. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js.map +0 -1
  374. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js +0 -2
  375. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js.map +0 -1
  376. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js +0 -57
  377. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js.map +0 -1
@@ -63,7 +63,7 @@ import "../../../api/queries/grouping/getGrouping.es.js";
63
63
  import "../../../api/queries/links/updateLinks.es.js";
64
64
  import "../../../api/queries/links/getLinks.es.js";
65
65
  import { useGetEntityLinksQuery as N } from "../../../api/queries/links/getEntityLinks.es.js";
66
- import { useGetOverviewTasksByFoldersQuery as Ft, useGetSearchFoldersQuery as xt, useGetTasksListInfiniteInfiniteQuery as Mt, useGetGroupedTasksListQuery as St } from "../../../api/queries/overview/getOverview.es.js";
66
+ import { useGetOverviewTasksByFoldersQuery as xt, useGetSearchFoldersQuery as Ft, useGetTasksListInfiniteInfiniteQuery as zt, useGetGroupedTasksListQuery as Ut } from "../../../api/queries/overview/getOverview.es.js";
67
67
  import "../../../api/queries/overview/updateOverview.es.js";
68
68
  import "../../../api/queries/versions/getVersionsProducts.es.js";
69
69
  import "../../../api/queries/permissions/getPermissions.es.js";
@@ -83,7 +83,7 @@ import "../../../api/queries/views/getViews.es.js";
83
83
  import "../../../api/queries/views/updateViews.es.js";
84
84
  import "../../../api/queries/watchers/getWatchers.es.js";
85
85
  import "../../../api/queries/uris/getUris.es.js";
86
- import { useMemo as f, useState as zt, useEffect as Ut } from "react";
86
+ import { useMemo as c, useState as vt, useEffect as Gt } from "react";
87
87
  import "../../../context/RemoteModulesContext.es.js";
88
88
  import "../../../../../_virtual/runtime.es.js";
89
89
  import "../../../../../_virtual/semver.es.js";
@@ -103,19 +103,19 @@ import "../../../context/MenuContext.es.js";
103
103
  import "../../../context/WebsocketContext.es.js";
104
104
  import "../../../context/GlobalContext.es.js";
105
105
  import "../../../context/ProjectContext.es.js";
106
- import { useProjectFoldersContext as vt } from "../../../context/ProjectFoldersContext.es.js";
106
+ import { useProjectFoldersContext as Dt } from "../../../context/ProjectFoldersContext.es.js";
107
107
  import "../../../context/UriContext.es.js";
108
108
  import "react-redux";
109
109
  import "custom-protocol-check";
110
110
  import { useGroupedPagination as Et } from "../../../hooks/useGroupedPagination.es.js";
111
111
  import "../components/GroupSettingsFallback.es.js";
112
112
  import "uuid";
113
- import { getGroupByDataType as Dt } from "../../../util/getGroupByDataType.es.js";
113
+ import { getGroupByDataType as bt } from "../../../util/getGroupByDataType.es.js";
114
114
  import "../../../util/pubsub.es.js";
115
- import { determineLoadingTaskFolders as Gt } from "../utils/loadingUtils.es.js";
116
- import { isGroupId as bt } from "./useBuildGroupByTableData.es.js";
115
+ import { determineLoadingTaskFolders as Qt } from "../utils/loadingUtils.es.js";
116
+ import { isGroupId as V, GROUP_BY_ID as Ct } from "./useBuildGroupByTableData.es.js";
117
117
  const Je = ({
118
- projectName: l,
118
+ projectName: f,
119
119
  selectedFolders: g,
120
120
  // comes from the slicer
121
121
  taskFilters: o,
@@ -123,39 +123,40 @@ const Je = ({
123
123
  sorting: D,
124
124
  groupBy: p,
125
125
  taskGroups: y = [],
126
- expanded: z,
126
+ taskGroupsCount: Y,
127
+ expanded: k,
127
128
  showHierarchy: m,
128
- attribFields: R,
129
- modules: J
129
+ attribFields: J,
130
+ modules: K
130
131
  }) => {
131
- const { getGroupQueries: G, isLoading: b } = J, {
132
- folders: c,
133
- isLoading: K,
134
- isUninitialized: V,
135
- refetch: X
136
- } = vt(), P = Object.entries(z).filter(([, t]) => t).filter(([t]) => !bt(t)).map(([t]) => t), {
137
- data: h = [],
138
- isFetching: C,
139
- refetch: Y,
140
- isUninitialized: Z
141
- } = Ft(
132
+ const { getGroupQueries: E, isLoading: b } = K, {
133
+ folders: l,
134
+ isLoading: X,
135
+ isUninitialized: Z,
136
+ refetch: $
137
+ } = Dt(), M = Object.entries(k).filter(([, t]) => t).filter(([t]) => !V(t)).map(([t]) => t), {
138
+ data: u = [],
139
+ isFetching: Q,
140
+ refetch: j,
141
+ isUninitialized: H
142
+ } = xt(
142
143
  {
143
- projectName: l,
144
- parentIds: P,
144
+ projectName: f,
145
+ parentIds: M,
145
146
  filter: o.filterString,
146
147
  folderFilter: d.filterString,
147
148
  search: o.search
148
149
  },
149
- { skip: !P.length || !m }
150
- ), Q = !o.filterString && !d.filterString && !o.search && !d.search || !c.length || !m, {
151
- data: u,
150
+ { skip: !M.length || !m }
151
+ ), C = !o.filterString && !d.filterString && !o.search && !d.search || !l.length || !m, {
152
+ data: T,
152
153
  isUninitialized: B,
153
- isFetching: $,
154
- isUninitialized: j,
155
- refetch: H
156
- } = xt(
154
+ isFetching: tt,
155
+ isUninitialized: it,
156
+ refetch: et
157
+ } = Ft(
157
158
  {
158
- projectName: l,
159
+ projectName: f,
159
160
  folderSearchRequest: {
160
161
  taskFilter: o.filter?.conditions?.length ? o.filter : void 0,
161
162
  taskSearch: o.search,
@@ -164,182 +165,190 @@ const Je = ({
164
165
  }
165
166
  },
166
167
  {
167
- skip: Q
168
+ skip: C
168
169
  }
169
- ), tt = f(() => {
170
+ ), rt = c(() => {
170
171
  const t = /* @__PURE__ */ new Set();
171
- return c.forEach((s) => {
172
- if (!s.parentId) {
173
- t.add(s.id);
172
+ return l.forEach((r) => {
173
+ if (!r.parentId) {
174
+ t.add(r.id);
174
175
  return;
175
176
  }
176
- const r = s.parentId, a = g.includes(s.id);
177
- (z[r] === !0 || a) && t.add(s.id);
177
+ const s = r.parentId, a = g.includes(r.id);
178
+ (k[s] === !0 || a) && t.add(r.id);
178
179
  }), t;
179
- }, [c, u, Q, z, g]), {
180
- data: A = [],
181
- refetch: it,
182
- isUninitialized: et
180
+ }, [l, T, C, k, g]), {
181
+ data: O = [],
182
+ refetch: st,
183
+ isUninitialized: ot
183
184
  } = N({
184
- projectName: l,
185
- entityIds: Array.from(tt),
185
+ projectName: f,
186
+ entityIds: Array.from(rt),
186
187
  entityType: "folder"
187
- }), F = f(() => {
188
- const t = /* @__PURE__ */ new Map(), s = (r) => ({
189
- ...r,
190
- entityId: r.id,
188
+ }), S = c(() => {
189
+ const t = /* @__PURE__ */ new Map(), r = (s) => ({
190
+ ...s,
191
+ entityId: s.id,
191
192
  entityType: "folder",
192
- links: A?.find((e) => e.id === r.id)?.links || []
193
+ links: O?.find((e) => e.id === s.id)?.links || []
193
194
  });
194
- if (!B && u && c.length) {
195
- const r = /* @__PURE__ */ new Set();
196
- for (const i of u)
197
- r.add(i);
195
+ if (!B && T && l.length) {
196
+ const s = /* @__PURE__ */ new Set();
197
+ for (const i of T)
198
+ s.add(i);
198
199
  const a = /* @__PURE__ */ new Map();
199
- for (const i of c)
200
+ for (const i of l)
200
201
  a.set(i.id, i);
201
202
  const e = (i) => {
202
203
  const n = a.get(i);
203
- n && n.parentId && (r.add(n.parentId), e(n.parentId));
204
+ n && n.parentId && (s.add(n.parentId), e(n.parentId));
204
205
  };
205
- for (const i of u)
206
+ for (const i of T)
206
207
  e(i);
207
- for (const i of c)
208
- r.has(i.id) && t.set(i.id, s(i));
208
+ for (const i of l)
209
+ s.has(i.id) && t.set(i.id, r(i));
209
210
  } else
210
- for (const r of c)
211
- t.set(r.id, s(r));
211
+ for (const s of l)
212
+ t.set(s.id, r(s));
212
213
  if (g.length) {
213
- const r = g.map((e) => t.get(e)?.path).filter(Boolean), a = /* @__PURE__ */ new Map();
214
+ const s = g.map((e) => t.get(e)?.path).filter(Boolean), a = /* @__PURE__ */ new Map();
214
215
  return t.forEach((e, i) => {
215
- const n = e.path, T = n.split("/");
216
- let I = !1;
217
- for (let L = 0; L < T.length; L++) {
218
- const yt = T.slice(0, L + 1).join("/");
219
- if (r.some((Pt) => Pt === yt)) {
220
- I = !0;
216
+ const n = e.path, I = n.split("/");
217
+ let L = !1;
218
+ for (let P = 0; P < I.length; P++) {
219
+ const Mt = I.slice(0, P + 1).join("/");
220
+ if (s.some((St) => St === Mt)) {
221
+ L = !0;
221
222
  break;
222
223
  }
223
224
  }
224
- const E = r.some(
225
- (L) => n.startsWith(L + "/")
225
+ const G = s.some(
226
+ (P) => n.startsWith(P + "/")
226
227
  );
227
- (I || E) && a.set(i, s(e));
228
+ (L || G) && a.set(i, r(e));
228
229
  }), a;
229
230
  }
230
231
  return t;
231
- }, [c, u, B, g, A]), rt = f(() => C ? Gt({
232
- expandedFoldersTasks: h,
233
- expandedParentIds: P,
234
- foldersMap: F
235
- }) : {}, [C, h, P, F]), [O, st] = zt("");
236
- Ut(() => {
237
- O && st("");
238
- }, [D, O]);
239
- const k = { ...D[0] }, x = k?.id === "name" && !m ? "path" : k?.id === "subType" ? "taskType" : k?.id, w = g.length ? Array.from(F.keys()) : void 0, {
232
+ }, [l, T, B, g, O]), nt = c(() => Q ? Qt({
233
+ expandedFoldersTasks: u,
234
+ expandedParentIds: M,
235
+ foldersMap: S
236
+ }) : {}, [Q, u, M, S]), [A, at] = vt("");
237
+ Gt(() => {
238
+ A && at("");
239
+ }, [D, A]);
240
+ const h = { ...D[0] }, x = h?.id === "name" && !m ? "path" : h?.id === "subType" ? "taskType" : h?.id, _ = g.length ? Array.from(S.keys()) : void 0, {
240
241
  data: U,
241
- isLoading: ot,
242
- isFetching: Qt,
243
- fetchNextPage: nt,
244
- hasNextPage: at,
245
- isFetchingNextPage: pt,
246
- isUninitialized: dt,
247
- refetch: mt
248
- } = Mt(
242
+ isLoading: pt,
243
+ isFetching: Ot,
244
+ fetchNextPage: dt,
245
+ hasNextPage: mt,
246
+ isFetchingNextPage: lt,
247
+ isUninitialized: ct,
248
+ refetch: ft
249
+ } = zt(
249
250
  {
250
- projectName: l,
251
+ projectName: f,
251
252
  filter: o.filterString,
252
253
  folderFilter: d.filterString,
253
254
  search: o.search,
254
- folderIds: w,
255
+ folderIds: _,
255
256
  sortBy: x ? x.replace("_", ".") : void 0,
256
- desc: !!k?.desc
257
+ desc: !!h?.desc
257
258
  },
258
259
  {
259
260
  skip: m,
260
261
  initialPageParam: {
261
262
  cursor: "",
262
- desc: !!k?.desc
263
+ desc: !!h?.desc
263
264
  }
264
265
  }
265
- ), M = f(() => U?.pages ? U.pages.flatMap((t) => t.tasks || []) : [], [U?.pages]), { pageCounts: v, incrementPageCount: ct } = Et({
266
+ ), F = c(() => U?.pages ? U.pages.flatMap((t) => t.tasks || []) : [], [U?.pages]), { pageCounts: v, incrementPageCount: gt } = Et({
266
267
  groups: y
267
- }), ft = Dt(p, R), W = f(() => p ? G?.({
268
+ }), ut = bt(p, J), w = c(() => Object.entries(k).filter(([, t]) => t).filter(([t]) => V(t)).map(([t]) => t.slice(Ct.length)), [k]), W = c(() => p ? (E?.({
268
269
  groups: y,
269
270
  taskGroups: y,
270
271
  // deprecated, but keep for backward compatibility
271
272
  filters: o.filter,
272
273
  groupBy: p,
273
274
  groupPageCounts: v
274
- }) ?? [] : [], [p, y, v, ft, o.filter, G]), {
275
- data: { tasks: S = [] } = {},
276
- isFetching: lt,
277
- isUninitialized: gt,
278
- refetch: ht
279
- } = St(
275
+ }) ?? []).filter((r) => w.includes(r.value)) : [], [
276
+ p,
277
+ y,
278
+ v,
279
+ ut,
280
+ o.filter,
281
+ E,
282
+ w
283
+ ]), {
284
+ data: { tasks: z = [] } = {},
285
+ isUninitialized: ht,
286
+ refetch: kt
287
+ } = Ut(
280
288
  {
281
- projectName: l,
289
+ projectName: f,
282
290
  groups: W,
283
291
  sortBy: x ? x.replace("_", ".") : void 0,
284
- desc: !!k?.desc,
292
+ desc: !!h?.desc,
285
293
  search: o.search,
286
294
  folderFilter: d.filterString,
287
- folderIds: w
295
+ folderIds: _,
296
+ groupCount: Y
288
297
  },
289
298
  {
290
299
  skip: !p || !W.length || b
291
300
  }
292
- ), _ = f(() => {
293
- const t = m ? h : p ? S : M;
294
- return new Set(t.map((s) => s.id));
295
- }, [h, m, M, S, p]), {
301
+ ), R = c(() => {
302
+ const t = m ? u : p ? z : F;
303
+ return new Set(t.map((r) => r.id));
304
+ }, [u, m, F, z, p]), {
296
305
  data: q = [],
297
- refetch: kt,
298
- isUninitialized: ut
306
+ refetch: Tt,
307
+ isUninitialized: It
299
308
  } = N(
300
309
  {
301
- projectName: l,
302
- entityIds: Array.from(_),
310
+ projectName: f,
311
+ entityIds: Array.from(R),
303
312
  entityType: "task"
304
313
  },
305
314
  {
306
- skip: _.size === 0
315
+ skip: R.size === 0
307
316
  }
308
- ), Tt = (t) => {
309
- p ? t && t in v && (console.log("fetching next page for group:", t), ct(t)) : at && (console.log("fetching next page"), nt());
310
- }, { tasksMap: It, tasksByFolderMap: Lt } = f(() => {
311
- const t = /* @__PURE__ */ new Map(), s = /* @__PURE__ */ new Map(), r = (e) => ({
317
+ ), Lt = (t) => {
318
+ p ? t && t in v && (console.log("fetching next page for group:", t), gt(t)) : mt && (console.log("fetching next page"), dt());
319
+ }, { tasksMap: Pt, tasksByFolderMap: yt } = c(() => {
320
+ const t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map(), s = (e) => ({
312
321
  ...e,
313
322
  entityId: e.id,
314
323
  entityType: "task",
315
324
  links: q?.find((i) => i.id === e.id)?.links || []
316
- }), a = m ? h : p ? S : M;
325
+ }), a = m ? u : p ? z : F;
317
326
  for (const e of a) {
318
327
  const i = e.id, n = e.folderId;
319
328
  if (t.has(i)) {
320
- const T = t.get(i), I = r(e), E = {
321
- ...T,
329
+ const I = t.get(i), L = s(e), G = {
322
330
  ...I,
323
- groups: [...T.groups || [], ...I.groups || []]
331
+ ...L,
332
+ groups: [...I.groups || [], ...L.groups || []]
324
333
  };
325
- t.set(i, E);
334
+ t.set(i, G);
326
335
  } else
327
- t.set(i, r(e));
328
- s.has(n) ? s.get(n).push(i) : s.set(n, [i]);
336
+ t.set(i, s(e));
337
+ r.has(n) ? r.get(n).push(i) : r.set(n, [i]);
329
338
  }
330
- return { tasksMap: t, tasksByFolderMap: s };
331
- }, [h, m, M, S, q]);
339
+ return { tasksMap: t, tasksByFolderMap: r };
340
+ }, [u, m, F, z, q]);
332
341
  return {
333
- foldersMap: F,
334
- tasksMap: It,
335
- tasksByFolderMap: Lt,
336
- isLoadingAll: K || ot || $ || lt || b,
342
+ foldersMap: S,
343
+ tasksMap: Pt,
344
+ tasksByFolderMap: yt,
345
+ isLoadingAll: X || pt || tt || b,
337
346
  // these all show a full loading state
338
- isLoadingMore: pt,
339
- loadingTasks: rt,
340
- fetchNextPage: Tt,
347
+ isLoadingMore: lt,
348
+ loadingTasks: nt,
349
+ fetchNextPage: Lt,
341
350
  reloadTableData: () => {
342
- V || X(), Z || Y(), j || H(), dt || mt(), gt || ht(), et || it(), ut || kt();
351
+ Z || $(), H || j(), it || et(), ct || ft(), ht || kt(), ot || st(), It || Tt();
343
352
  }
344
353
  };
345
354
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchOverviewData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useFetchOverviewData.ts"],"sourcesContent":["import {\n useGetGroupedTasksListQuery,\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListInfiniteInfiniteQuery,\n} from '@shared/api'\nimport type { FolderListItem, GetGroupedTasksListArgs, EntityGroup, QueryFilter } from '@shared/api'\nimport { useGroupedPagination } from '@shared/hooks'\nimport { getGroupByDataType } from '@shared/util'\nimport { EditorTaskNode, FolderNodeMap, MatchingFolder, TaskNodeMap } from '../types/table'\nimport { useEffect, useMemo, useState } from 'react'\nimport { ExpandedState, SortingState } from '@tanstack/react-table'\nimport { determineLoadingTaskFolders } from '../utils/loadingUtils'\nimport { LoadingTasks } from '../types'\nimport { TasksByFolderMap } from '../utils'\nimport { TableGroupBy } from '../context'\nimport { isGroupId } from '../hooks/useBuildGroupByTableData'\nimport { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { useGetEntityLinksQuery } from '@shared/api'\nimport { useProjectFoldersContext } from '@shared/context'\n\ntype QueryFilterParams = {\n filter: QueryFilter | undefined\n filterString?: string\n search?: string\n}\n\ntype useFetchOverviewDataData = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n isLoadingAll: boolean // the whole table is a loading state\n isLoadingMore: boolean // loading more tasks\n loadingTasks: LoadingTasks // show number of loading tasks per folder or root\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n}\n\ntype Params = {\n projectName: string\n selectedFolders: string[] // folders selected in the slicer (hierarchy)\n taskFilters: QueryFilterParams // filters for tasks\n folderFilters: QueryFilterParams // filters for folders\n sorting: SortingState\n groupBy: TableGroupBy | undefined\n taskGroups: EntityGroup[]\n expanded: ExpandedState\n showHierarchy: boolean\n attribFields: ProjectTableAttribute[]\n modules: ProjectTableModulesType\n}\n\nexport const useFetchOverviewData = ({\n projectName,\n selectedFolders, // comes from the slicer\n taskFilters,\n folderFilters,\n sorting,\n groupBy,\n taskGroups = [],\n expanded,\n showHierarchy,\n attribFields,\n modules,\n}: Params): useFetchOverviewDataData => {\n const { getGroupQueries, isLoading: isLoadingModules } = modules\n\n const {\n folders,\n isLoading: isLoadingFolders,\n isUninitialized: isUninitializedFolders,\n refetch: refetchFolders,\n } = useProjectFoldersContext()\n\n // console.log('Folder count:', folders.length)\n const expandedParentIds = Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => !isGroupId(id)) // filter out the root folder\n .map(([id]) => id)\n\n const {\n data: expandedFoldersTasks = [],\n isFetching: isFetchingExpandedFoldersTasks,\n refetch: refetchExpandedFoldersTasks,\n isUninitialized: isUninitializedExpandedFoldersTasks,\n } = useGetOverviewTasksByFoldersQuery(\n {\n projectName,\n parentIds: expandedParentIds,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n },\n { skip: !expandedParentIds.length || !showHierarchy },\n )\n\n const skipFoldersByTaskFilter =\n (!taskFilters.filterString &&\n !folderFilters.filterString &&\n !taskFilters.search &&\n !folderFilters.search) ||\n !folders.length ||\n !showHierarchy\n // get folders that would be left if the filters were applied for tasks\n const {\n data: foldersByTaskFilter,\n isUninitialized,\n isFetching: isFetchingTasksFolders,\n isUninitialized: isUninitializedTasksFolders,\n refetch: refetchTasksFolders,\n } = useGetSearchFoldersQuery(\n {\n projectName,\n folderSearchRequest: {\n taskFilter: taskFilters.filter?.conditions?.length ? taskFilters.filter : undefined,\n taskSearch: taskFilters.search,\n folderFilter: folderFilters.filter?.conditions?.length ? folderFilters.filter : undefined,\n folderSearch: folderFilters.search,\n },\n },\n {\n skip: skipFoldersByTaskFilter,\n },\n )\n\n // create a list of folders that are current visible in the table\n // root folders are always visible\n // then a folder is visible if it's parent is expanded\n const visibleFolders = useMemo(() => {\n const visibleSet = new Set<string>()\n\n // Check each folder in the map\n folders.forEach((folder) => {\n // Root folders are always visible\n if (!folder.parentId) {\n visibleSet.add(folder.id)\n return\n }\n\n // Check if parent is expanded\n const parentId = folder.parentId as string\n const isSelectedInSlicer = selectedFolders.includes(folder.id as string)\n const expandedMap = expanded as Record<string, boolean>\n if (expandedMap[parentId] === true || isSelectedInSlicer) {\n visibleSet.add(folder.id)\n }\n })\n\n return visibleSet\n }, [folders, foldersByTaskFilter, skipFoldersByTaskFilter, expanded, selectedFolders])\n\n // get all links for visible folders\n const {\n data: foldersLinks = [],\n refetch: refetchFoldersLinks,\n isUninitialized: isUninitializedFoldersLinks,\n } = useGetEntityLinksQuery({\n projectName,\n entityIds: Array.from(visibleFolders),\n entityType: 'folder',\n })\n\n // create a map of folders by id for efficient lookups\n const foldersMap: FolderNodeMap = useMemo(() => {\n const map = new Map()\n\n const addExtraDataToFolder = (folder: FolderListItem) => {\n // add any extra data to folder\n const folderWithExtraData: MatchingFolder = {\n ...folder,\n entityId: folder.id,\n entityType: 'folder',\n links: foldersLinks?.find((link) => link.id === folder.id)?.links || [],\n }\n return folderWithExtraData\n }\n\n // If we have task filters and folders to filter\n if (!isUninitialized && foldersByTaskFilter && folders.length) {\n // Create a set for efficient lookups of filtered folder IDs\n const relevantFolderIds = new Set<string>()\n\n // First pass: Add all folders from the task filter\n for (const folderId of foldersByTaskFilter) {\n relevantFolderIds.add(folderId)\n }\n\n // Create a map of folders by ID for parentId lookups\n const foldersByIdMap = new Map<string, (typeof folders)[0]>()\n for (const folder of folders) {\n foldersByIdMap.set(folder.id as string, folder)\n }\n\n // Second pass: Add all parent folders of filtered folders\n const addParents = (folderId: string) => {\n const folder = foldersByIdMap.get(folderId)\n if (folder && folder.parentId) {\n relevantFolderIds.add(folder.parentId as string)\n addParents(folder.parentId as string)\n }\n }\n\n // Process each filtered folder to add its parents\n for (const folderId of foldersByTaskFilter) {\n addParents(folderId)\n }\n\n // Third pass: Build the final map using only relevant folders\n for (const folder of folders) {\n if (relevantFolderIds.has(folder.id as string)) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n } else {\n // No filtering, include all folders\n for (const folder of folders) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n\n // Filter by selected folders if needed\n if (selectedFolders.length) {\n const selectedPaths = selectedFolders\n .map((id) => map.get(id)?.path)\n .filter(Boolean) as string[]\n\n // Create a new map that only contains selected folders and their children\n const filteredMap = new Map()\n\n // For each folder, check if it should be included\n map.forEach((folder, folderId) => {\n const folderPath = folder.path as string\n\n // Include if it's a parent or the folder itself\n const folderPathParts = folderPath.split('/')\n let isParentOrSelf = false\n\n for (let i = 0; i < folderPathParts.length; i++) {\n const partialPath = folderPathParts.slice(0, i + 1).join('/')\n if (selectedPaths.some((p) => p === partialPath)) {\n isParentOrSelf = true\n break\n }\n }\n\n // Include if it's a child of any selected folder\n const isChild = selectedPaths.some((selectedPath) =>\n folderPath.startsWith(selectedPath + '/'),\n )\n\n if (isParentOrSelf || isChild) {\n filteredMap.set(folderId, addExtraDataToFolder(folder))\n }\n })\n\n return filteredMap\n }\n\n return map\n }, [folders, foldersByTaskFilter, isUninitialized, selectedFolders, foldersLinks])\n\n // calculate partial loading states\n const loadingTasksForParents = useMemo(() => {\n if (isFetchingExpandedFoldersTasks) {\n return determineLoadingTaskFolders({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n })\n } else return {}\n }, [isFetchingExpandedFoldersTasks, expandedFoldersTasks, expandedParentIds, foldersMap])\n\n const [tasksListCursor, setTasksListCursor] = useState('')\n\n // every time the sorting changes, reset the cursor\n useEffect(() => {\n if (tasksListCursor) setTasksListCursor('')\n }, [sorting, tasksListCursor])\n\n // Create sort params for infinite query\n const singleSort = { ...sorting[0] }\n // if task list and sorting by name, sort by path instead\n const sortByPath = singleSort?.id === 'name' && !showHierarchy\n const sortId = sortByPath ? 'path' : singleSort?.id === 'subType' ? 'taskType' : singleSort?.id\n const tasksFolderIdsParams = selectedFolders.length ? Array.from(foldersMap.keys()) : undefined\n\n // Use the new infinite query hook for tasks list with correct name\n const {\n data: tasksListInfiniteData,\n isLoading: isLoadingTasksList,\n isFetching: isFetchingTasksList,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage: isFetchingNextPageTasksList,\n isUninitialized: isUninitializedTasksList,\n refetch: refetchTasksList,\n } = useGetTasksListInfiniteInfiniteQuery(\n {\n projectName,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n folderIds: tasksFolderIdsParams,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n },\n {\n skip: showHierarchy,\n initialPageParam: {\n cursor: '',\n desc: !!singleSort?.desc,\n },\n },\n )\n\n // Extract tasks from infinite query data correctly\n const tasksList = useMemo(() => {\n if (!tasksListInfiniteData?.pages) return []\n return tasksListInfiniteData.pages.flatMap((page) => page.tasks || [])\n }, [tasksListInfiniteData?.pages])\n\n const { pageCounts: groupPageCounts, incrementPageCount } = useGroupedPagination({\n groups: taskGroups,\n })\n\n // for grouped tasks, we fetch all tasks for each group\n // we do this by building a list of groups with filters for that group\n const groupByDataType = getGroupByDataType(groupBy, attribFields)\n\n // get group queries from powerpack\n const groupQueries: GetGroupedTasksListArgs['groups'] = useMemo(() => {\n return groupBy\n ? getGroupQueries?.({\n groups: taskGroups,\n taskGroups, // deprecated, but keep for backward compatibility\n filters: taskFilters.filter,\n groupBy,\n groupPageCounts,\n }) ?? []\n : []\n }, [groupBy, taskGroups, groupPageCounts, groupByDataType, taskFilters.filter, getGroupQueries])\n\n const {\n data: { tasks: groupTasks = [] } = {},\n isFetching: isFetchingGroups,\n isUninitialized: isUninitializedGroupedTasks,\n refetch: refetchGroupedTasks,\n } = useGetGroupedTasksListQuery(\n {\n projectName,\n groups: groupQueries,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n search: taskFilters.search,\n folderFilter: folderFilters.filterString,\n folderIds: tasksFolderIdsParams,\n },\n {\n skip: !groupBy || !groupQueries.length || isLoadingModules,\n },\n )\n\n // Get visible tasks for link fetching\n const visibleTasks = useMemo(() => {\n const allTasks = showHierarchy ? expandedFoldersTasks : groupBy ? groupTasks : tasksList\n return new Set(allTasks.map((task) => task.id))\n }, [expandedFoldersTasks, showHierarchy, tasksList, groupTasks, groupBy])\n\n // Get all links for visible tasks\n const {\n data: tasksLinks = [],\n refetch: refetchTasksLinks,\n isUninitialized: isUninitializedTasksLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleTasks),\n entityType: 'task',\n },\n {\n skip: visibleTasks.size === 0,\n },\n )\n\n const handleFetchNextPage = (group?: string) => {\n if (groupBy) {\n if (group && group in groupPageCounts) {\n console.log('fetching next page for group:', group)\n incrementPageCount(group)\n }\n } else if (hasNextPage) {\n console.log('fetching next page')\n fetchNextPage()\n }\n }\n\n // tasksMaps is a map of tasks by task ID\n // tasksByFolderMap is a map of tasks by folder ID\n const { tasksMap, tasksByFolderMap } = useMemo(() => {\n const tasksMap: TaskNodeMap = new Map()\n const tasksByFolderMap: TasksByFolderMap = new Map()\n\n const addExtraDataToTask = (task: EditorTaskNode) => ({\n ...task,\n entityId: task.id,\n entityType: 'task' as const,\n links: tasksLinks?.find((link) => link.id === task.id)?.links || [],\n })\n\n // either show the hierarchy or the flat list of tasks\n const allTasks = showHierarchy ? expandedFoldersTasks : groupBy ? groupTasks : tasksList\n for (const task of allTasks) {\n const taskId = task.id as string\n const folderId = task.folderId as string\n\n if (tasksMap.has(taskId)) {\n // merge specific data if the task already exists\n const existingTask = tasksMap.get(taskId) as EditorTaskNode\n const currentTask = addExtraDataToTask(task)\n const mergedTask = {\n ...existingTask,\n ...currentTask,\n groups: [...(existingTask.groups || []), ...(currentTask.groups || [])],\n }\n\n tasksMap.set(taskId, mergedTask)\n } else {\n tasksMap.set(taskId, addExtraDataToTask(task))\n }\n\n if (tasksByFolderMap.has(folderId)) {\n tasksByFolderMap.get(folderId)!.push(taskId)\n } else {\n tasksByFolderMap.set(folderId, [taskId])\n }\n }\n\n return { tasksMap, tasksByFolderMap }\n }, [expandedFoldersTasks, showHierarchy, tasksList, groupTasks, tasksLinks])\n\n // reload all data for all queries\n const reloadTableData = () => {\n // only reload if there is data\n if (!isUninitializedFolders) refetchFolders()\n if (!isUninitializedExpandedFoldersTasks) refetchExpandedFoldersTasks()\n if (!isUninitializedTasksFolders) refetchTasksFolders()\n if (!isUninitializedTasksList) refetchTasksList()\n if (!isUninitializedGroupedTasks) refetchGroupedTasks()\n if (!isUninitializedFoldersLinks) refetchFoldersLinks()\n if (!isUninitializedTasksLinks) refetchTasksLinks()\n }\n\n return {\n foldersMap: foldersMap,\n tasksMap: tasksMap,\n tasksByFolderMap: tasksByFolderMap,\n isLoadingAll:\n isLoadingFolders ||\n isLoadingTasksList ||\n isFetchingTasksFolders ||\n isFetchingGroups ||\n isLoadingModules, // these all show a full loading state\n isLoadingMore: isFetchingNextPageTasksList,\n loadingTasks: loadingTasksForParents,\n fetchNextPage: handleFetchNextPage,\n reloadTableData,\n }\n}\n"],"names":["useFetchOverviewData","projectName","selectedFolders","taskFilters","folderFilters","sorting","groupBy","taskGroups","expanded","showHierarchy","attribFields","modules","getGroupQueries","isLoadingModules","folders","isLoadingFolders","isUninitializedFolders","refetchFolders","useProjectFoldersContext","expandedParentIds","isExpanded","id","isGroupId","expandedFoldersTasks","isFetchingExpandedFoldersTasks","refetchExpandedFoldersTasks","isUninitializedExpandedFoldersTasks","useGetOverviewTasksByFoldersQuery","skipFoldersByTaskFilter","foldersByTaskFilter","isUninitialized","isFetchingTasksFolders","isUninitializedTasksFolders","refetchTasksFolders","useGetSearchFoldersQuery","visibleFolders","useMemo","visibleSet","folder","parentId","isSelectedInSlicer","foldersLinks","refetchFoldersLinks","isUninitializedFoldersLinks","useGetEntityLinksQuery","foldersMap","map","addExtraDataToFolder","link","relevantFolderIds","folderId","foldersByIdMap","addParents","selectedPaths","filteredMap","folderPath","folderPathParts","isParentOrSelf","i","partialPath","p","isChild","selectedPath","loadingTasksForParents","determineLoadingTaskFolders","tasksListCursor","setTasksListCursor","useState","useEffect","singleSort","sortId","tasksFolderIdsParams","tasksListInfiniteData","isLoadingTasksList","isFetchingTasksList","fetchNextPage","hasNextPage","isFetchingNextPageTasksList","isUninitializedTasksList","refetchTasksList","useGetTasksListInfiniteInfiniteQuery","tasksList","page","groupPageCounts","incrementPageCount","useGroupedPagination","groupByDataType","getGroupByDataType","groupQueries","groupTasks","isFetchingGroups","isUninitializedGroupedTasks","refetchGroupedTasks","useGetGroupedTasksListQuery","visibleTasks","allTasks","task","tasksLinks","refetchTasksLinks","isUninitializedTasksLinks","handleFetchNextPage","group","tasksMap","tasksByFolderMap","addExtraDataToTask","taskId","existingTask","currentTask","mergedTask"],"mappings":"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"}
1
+ {"version":3,"file":"useFetchOverviewData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useFetchOverviewData.ts"],"sourcesContent":["import {\n useGetGroupedTasksListQuery,\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListInfiniteInfiniteQuery,\n} from '@shared/api'\nimport type { FolderListItem, GetGroupedTasksListArgs, EntityGroup, QueryFilter } from '@shared/api'\nimport { useGroupedPagination } from '@shared/hooks'\nimport { getGroupByDataType } from '@shared/util'\nimport { EditorTaskNode, FolderNodeMap, MatchingFolder, TaskNodeMap } from '../types/table'\nimport { useEffect, useMemo, useState } from 'react'\nimport { ExpandedState, SortingState } from '@tanstack/react-table'\nimport { determineLoadingTaskFolders } from '../utils/loadingUtils'\nimport { LoadingTasks } from '../types'\nimport { TasksByFolderMap } from '../utils'\nimport { TableGroupBy } from '../context'\nimport { isGroupId, GROUP_BY_ID } from '../hooks/useBuildGroupByTableData'\nimport { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { useGetEntityLinksQuery } from '@shared/api'\nimport { useProjectFoldersContext } from '@shared/context'\n\ntype QueryFilterParams = {\n filter: QueryFilter | undefined\n filterString?: string\n search?: string\n}\n\ntype useFetchOverviewDataData = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n isLoadingAll: boolean // the whole table is a loading state\n isLoadingMore: boolean // loading more tasks\n loadingTasks: LoadingTasks // show number of loading tasks per folder or root\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n}\n\ntype Params = {\n projectName: string\n selectedFolders: string[] // folders selected in the slicer (hierarchy)\n taskFilters: QueryFilterParams // filters for tasks\n folderFilters: QueryFilterParams // filters for folders\n sorting: SortingState\n groupBy: TableGroupBy | undefined\n taskGroups: EntityGroup[]\n taskGroupsCount?: number // override for number of items per group\n expanded: ExpandedState\n showHierarchy: boolean\n attribFields: ProjectTableAttribute[]\n modules: ProjectTableModulesType\n}\n\nexport const useFetchOverviewData = ({\n projectName,\n selectedFolders, // comes from the slicer\n taskFilters,\n folderFilters,\n sorting,\n groupBy,\n taskGroups = [],\n taskGroupsCount,\n expanded,\n showHierarchy,\n attribFields,\n modules,\n}: Params): useFetchOverviewDataData => {\n const { getGroupQueries, isLoading: isLoadingModules } = modules\n\n const {\n folders,\n isLoading: isLoadingFolders,\n isUninitialized: isUninitializedFolders,\n refetch: refetchFolders,\n } = useProjectFoldersContext()\n\n // console.log('Folder count:', folders.length)\n const expandedParentIds = Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => !isGroupId(id)) // filter out the root folder\n .map(([id]) => id)\n\n const {\n data: expandedFoldersTasks = [],\n isFetching: isFetchingExpandedFoldersTasks,\n refetch: refetchExpandedFoldersTasks,\n isUninitialized: isUninitializedExpandedFoldersTasks,\n } = useGetOverviewTasksByFoldersQuery(\n {\n projectName,\n parentIds: expandedParentIds,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n },\n { skip: !expandedParentIds.length || !showHierarchy },\n )\n\n const skipFoldersByTaskFilter =\n (!taskFilters.filterString &&\n !folderFilters.filterString &&\n !taskFilters.search &&\n !folderFilters.search) ||\n !folders.length ||\n !showHierarchy\n // get folders that would be left if the filters were applied for tasks\n const {\n data: foldersByTaskFilter,\n isUninitialized,\n isFetching: isFetchingTasksFolders,\n isUninitialized: isUninitializedTasksFolders,\n refetch: refetchTasksFolders,\n } = useGetSearchFoldersQuery(\n {\n projectName,\n folderSearchRequest: {\n taskFilter: taskFilters.filter?.conditions?.length ? taskFilters.filter : undefined,\n taskSearch: taskFilters.search,\n folderFilter: folderFilters.filter?.conditions?.length ? folderFilters.filter : undefined,\n folderSearch: folderFilters.search,\n },\n },\n {\n skip: skipFoldersByTaskFilter,\n },\n )\n\n // create a list of folders that are current visible in the table\n // root folders are always visible\n // then a folder is visible if it's parent is expanded\n const visibleFolders = useMemo(() => {\n const visibleSet = new Set<string>()\n\n // Check each folder in the map\n folders.forEach((folder) => {\n // Root folders are always visible\n if (!folder.parentId) {\n visibleSet.add(folder.id)\n return\n }\n\n // Check if parent is expanded\n const parentId = folder.parentId as string\n const isSelectedInSlicer = selectedFolders.includes(folder.id as string)\n const expandedMap = expanded as Record<string, boolean>\n if (expandedMap[parentId] === true || isSelectedInSlicer) {\n visibleSet.add(folder.id)\n }\n })\n\n return visibleSet\n }, [folders, foldersByTaskFilter, skipFoldersByTaskFilter, expanded, selectedFolders])\n\n // get all links for visible folders\n const {\n data: foldersLinks = [],\n refetch: refetchFoldersLinks,\n isUninitialized: isUninitializedFoldersLinks,\n } = useGetEntityLinksQuery({\n projectName,\n entityIds: Array.from(visibleFolders),\n entityType: 'folder',\n })\n\n // create a map of folders by id for efficient lookups\n const foldersMap: FolderNodeMap = useMemo(() => {\n const map = new Map()\n\n const addExtraDataToFolder = (folder: FolderListItem) => {\n // add any extra data to folder\n const folderWithExtraData: MatchingFolder = {\n ...folder,\n entityId: folder.id,\n entityType: 'folder',\n links: foldersLinks?.find((link) => link.id === folder.id)?.links || [],\n }\n return folderWithExtraData\n }\n\n // If we have task filters and folders to filter\n if (!isUninitialized && foldersByTaskFilter && folders.length) {\n // Create a set for efficient lookups of filtered folder IDs\n const relevantFolderIds = new Set<string>()\n\n // First pass: Add all folders from the task filter\n for (const folderId of foldersByTaskFilter) {\n relevantFolderIds.add(folderId)\n }\n\n // Create a map of folders by ID for parentId lookups\n const foldersByIdMap = new Map<string, (typeof folders)[0]>()\n for (const folder of folders) {\n foldersByIdMap.set(folder.id as string, folder)\n }\n\n // Second pass: Add all parent folders of filtered folders\n const addParents = (folderId: string) => {\n const folder = foldersByIdMap.get(folderId)\n if (folder && folder.parentId) {\n relevantFolderIds.add(folder.parentId as string)\n addParents(folder.parentId as string)\n }\n }\n\n // Process each filtered folder to add its parents\n for (const folderId of foldersByTaskFilter) {\n addParents(folderId)\n }\n\n // Third pass: Build the final map using only relevant folders\n for (const folder of folders) {\n if (relevantFolderIds.has(folder.id as string)) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n } else {\n // No filtering, include all folders\n for (const folder of folders) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n\n // Filter by selected folders if needed\n if (selectedFolders.length) {\n const selectedPaths = selectedFolders\n .map((id) => map.get(id)?.path)\n .filter(Boolean) as string[]\n\n // Create a new map that only contains selected folders and their children\n const filteredMap = new Map()\n\n // For each folder, check if it should be included\n map.forEach((folder, folderId) => {\n const folderPath = folder.path as string\n\n // Include if it's a parent or the folder itself\n const folderPathParts = folderPath.split('/')\n let isParentOrSelf = false\n\n for (let i = 0; i < folderPathParts.length; i++) {\n const partialPath = folderPathParts.slice(0, i + 1).join('/')\n if (selectedPaths.some((p) => p === partialPath)) {\n isParentOrSelf = true\n break\n }\n }\n\n // Include if it's a child of any selected folder\n const isChild = selectedPaths.some((selectedPath) =>\n folderPath.startsWith(selectedPath + '/'),\n )\n\n if (isParentOrSelf || isChild) {\n filteredMap.set(folderId, addExtraDataToFolder(folder))\n }\n })\n\n return filteredMap\n }\n\n return map\n }, [folders, foldersByTaskFilter, isUninitialized, selectedFolders, foldersLinks])\n\n // calculate partial loading states\n const loadingTasksForParents = useMemo(() => {\n if (isFetchingExpandedFoldersTasks) {\n return determineLoadingTaskFolders({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n })\n } else return {}\n }, [isFetchingExpandedFoldersTasks, expandedFoldersTasks, expandedParentIds, foldersMap])\n\n const [tasksListCursor, setTasksListCursor] = useState('')\n\n // every time the sorting changes, reset the cursor\n useEffect(() => {\n if (tasksListCursor) setTasksListCursor('')\n }, [sorting, tasksListCursor])\n\n // Create sort params for infinite query\n const singleSort = { ...sorting[0] }\n // if task list and sorting by name, sort by path instead\n const sortByPath = singleSort?.id === 'name' && !showHierarchy\n const sortId = sortByPath ? 'path' : singleSort?.id === 'subType' ? 'taskType' : singleSort?.id\n const tasksFolderIdsParams = selectedFolders.length ? Array.from(foldersMap.keys()) : undefined\n\n // Use the new infinite query hook for tasks list with correct name\n const {\n data: tasksListInfiniteData,\n isLoading: isLoadingTasksList,\n isFetching: isFetchingTasksList,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage: isFetchingNextPageTasksList,\n isUninitialized: isUninitializedTasksList,\n refetch: refetchTasksList,\n } = useGetTasksListInfiniteInfiniteQuery(\n {\n projectName,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n folderIds: tasksFolderIdsParams,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n },\n {\n skip: showHierarchy,\n initialPageParam: {\n cursor: '',\n desc: !!singleSort?.desc,\n },\n },\n )\n\n // Extract tasks from infinite query data correctly\n const tasksList = useMemo(() => {\n if (!tasksListInfiniteData?.pages) return []\n return tasksListInfiniteData.pages.flatMap((page) => page.tasks || [])\n }, [tasksListInfiniteData?.pages])\n\n const { pageCounts: groupPageCounts, incrementPageCount } = useGroupedPagination({\n groups: taskGroups,\n })\n\n // for grouped tasks, we fetch all tasks for each group\n // we do this by building a list of groups with filters for that group\n const groupByDataType = getGroupByDataType(groupBy, attribFields)\n\n // get expanded group values from the expanded state\n // group IDs are formatted as `_GROUP_<value>` so we extract the values\n const expandedGroupValues = useMemo(() => {\n return Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => isGroupId(id))\n .map(([id]) => id.slice(GROUP_BY_ID.length))\n }, [expanded])\n\n // get group queries from powerpack, filtered to only include expanded groups\n const groupQueries: GetGroupedTasksListArgs['groups'] = useMemo(() => {\n if (!groupBy) return []\n\n const allGroupQueries =\n getGroupQueries?.({\n groups: taskGroups,\n taskGroups, // deprecated, but keep for backward compatibility\n filters: taskFilters.filter,\n groupBy,\n groupPageCounts,\n }) ?? []\n\n // Only fetch tasks for groups that are expanded\n return allGroupQueries.filter((group) => expandedGroupValues.includes(group.value))\n }, [\n groupBy,\n taskGroups,\n groupPageCounts,\n groupByDataType,\n taskFilters.filter,\n getGroupQueries,\n expandedGroupValues,\n ])\n\n const {\n data: { tasks: groupTasks = [] } = {},\n isUninitialized: isUninitializedGroupedTasks,\n refetch: refetchGroupedTasks,\n } = useGetGroupedTasksListQuery(\n {\n projectName,\n groups: groupQueries,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n search: taskFilters.search,\n folderFilter: folderFilters.filterString,\n folderIds: tasksFolderIdsParams,\n groupCount: taskGroupsCount,\n },\n {\n skip: !groupBy || !groupQueries.length || isLoadingModules,\n },\n )\n\n // Get visible tasks for link fetching\n const visibleTasks = useMemo(() => {\n const allTasks = showHierarchy ? expandedFoldersTasks : groupBy ? groupTasks : tasksList\n return new Set(allTasks.map((task) => task.id))\n }, [expandedFoldersTasks, showHierarchy, tasksList, groupTasks, groupBy])\n\n // Get all links for visible tasks\n const {\n data: tasksLinks = [],\n refetch: refetchTasksLinks,\n isUninitialized: isUninitializedTasksLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleTasks),\n entityType: 'task',\n },\n {\n skip: visibleTasks.size === 0,\n },\n )\n\n const handleFetchNextPage = (group?: string) => {\n if (groupBy) {\n if (group && group in groupPageCounts) {\n console.log('fetching next page for group:', group)\n incrementPageCount(group)\n }\n } else if (hasNextPage) {\n console.log('fetching next page')\n fetchNextPage()\n }\n }\n\n // tasksMaps is a map of tasks by task ID\n // tasksByFolderMap is a map of tasks by folder ID\n const { tasksMap, tasksByFolderMap } = useMemo(() => {\n const tasksMap: TaskNodeMap = new Map()\n const tasksByFolderMap: TasksByFolderMap = new Map()\n\n const addExtraDataToTask = (task: EditorTaskNode) => ({\n ...task,\n entityId: task.id,\n entityType: 'task' as const,\n links: tasksLinks?.find((link) => link.id === task.id)?.links || [],\n })\n\n // either show the hierarchy or the flat list of tasks\n const allTasks = showHierarchy ? expandedFoldersTasks : groupBy ? groupTasks : tasksList\n for (const task of allTasks) {\n const taskId = task.id as string\n const folderId = task.folderId as string\n\n if (tasksMap.has(taskId)) {\n // merge specific data if the task already exists\n const existingTask = tasksMap.get(taskId) as EditorTaskNode\n const currentTask = addExtraDataToTask(task)\n const mergedTask = {\n ...existingTask,\n ...currentTask,\n groups: [...(existingTask.groups || []), ...(currentTask.groups || [])],\n }\n\n tasksMap.set(taskId, mergedTask)\n } else {\n tasksMap.set(taskId, addExtraDataToTask(task))\n }\n\n if (tasksByFolderMap.has(folderId)) {\n tasksByFolderMap.get(folderId)!.push(taskId)\n } else {\n tasksByFolderMap.set(folderId, [taskId])\n }\n }\n\n return { tasksMap, tasksByFolderMap }\n }, [expandedFoldersTasks, showHierarchy, tasksList, groupTasks, tasksLinks])\n\n // reload all data for all queries\n const reloadTableData = () => {\n // only reload if there is data\n if (!isUninitializedFolders) refetchFolders()\n if (!isUninitializedExpandedFoldersTasks) refetchExpandedFoldersTasks()\n if (!isUninitializedTasksFolders) refetchTasksFolders()\n if (!isUninitializedTasksList) refetchTasksList()\n if (!isUninitializedGroupedTasks) refetchGroupedTasks()\n if (!isUninitializedFoldersLinks) refetchFoldersLinks()\n if (!isUninitializedTasksLinks) refetchTasksLinks()\n }\n\n return {\n foldersMap: foldersMap,\n tasksMap: tasksMap,\n tasksByFolderMap: tasksByFolderMap,\n isLoadingAll:\n isLoadingFolders || isLoadingTasksList || isFetchingTasksFolders || isLoadingModules, // these all show a full loading state\n isLoadingMore: isFetchingNextPageTasksList,\n loadingTasks: loadingTasksForParents,\n fetchNextPage: handleFetchNextPage,\n reloadTableData,\n }\n}\n"],"names":["useFetchOverviewData","projectName","selectedFolders","taskFilters","folderFilters","sorting","groupBy","taskGroups","taskGroupsCount","expanded","showHierarchy","attribFields","modules","getGroupQueries","isLoadingModules","folders","isLoadingFolders","isUninitializedFolders","refetchFolders","useProjectFoldersContext","expandedParentIds","isExpanded","id","isGroupId","expandedFoldersTasks","isFetchingExpandedFoldersTasks","refetchExpandedFoldersTasks","isUninitializedExpandedFoldersTasks","useGetOverviewTasksByFoldersQuery","skipFoldersByTaskFilter","foldersByTaskFilter","isUninitialized","isFetchingTasksFolders","isUninitializedTasksFolders","refetchTasksFolders","useGetSearchFoldersQuery","visibleFolders","useMemo","visibleSet","folder","parentId","isSelectedInSlicer","foldersLinks","refetchFoldersLinks","isUninitializedFoldersLinks","useGetEntityLinksQuery","foldersMap","map","addExtraDataToFolder","link","relevantFolderIds","folderId","foldersByIdMap","addParents","selectedPaths","filteredMap","folderPath","folderPathParts","isParentOrSelf","i","partialPath","p","isChild","selectedPath","loadingTasksForParents","determineLoadingTaskFolders","tasksListCursor","setTasksListCursor","useState","useEffect","singleSort","sortId","tasksFolderIdsParams","tasksListInfiniteData","isLoadingTasksList","isFetchingTasksList","fetchNextPage","hasNextPage","isFetchingNextPageTasksList","isUninitializedTasksList","refetchTasksList","useGetTasksListInfiniteInfiniteQuery","tasksList","page","groupPageCounts","incrementPageCount","useGroupedPagination","groupByDataType","getGroupByDataType","expandedGroupValues","GROUP_BY_ID","groupQueries","group","groupTasks","isUninitializedGroupedTasks","refetchGroupedTasks","useGetGroupedTasksListQuery","visibleTasks","allTasks","task","tasksLinks","refetchTasksLinks","isUninitializedTasksLinks","handleFetchNextPage","tasksMap","tasksByFolderMap","addExtraDataToTask","taskId","existingTask","currentTask","mergedTask"],"mappings":"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"}