@ynput/ayon-frontend-shared 0.2.28 → 0.2.30

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 (1093) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +31 -28
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +51 -49
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Views.cjs.js.map +1 -1
  8. package/dist/Views.es.js.map +1 -1
  9. package/dist/api.cjs.js +1 -1
  10. package/dist/api.es.js +225 -220
  11. package/dist/api.es.js.map +1 -1
  12. package/dist/components.cjs.js +1 -1
  13. package/dist/components.es.js +90 -89
  14. package/dist/components.es.js.map +1 -1
  15. package/dist/context.cjs.js +1 -1
  16. package/dist/context.es.js +23 -19
  17. package/dist/context.es.js.map +1 -1
  18. package/dist/hooks.cjs.js +1 -1
  19. package/dist/hooks.es.js +16 -12
  20. package/dist/hooks.es.js.map +1 -1
  21. package/dist/index.cjs.js +1 -1
  22. package/dist/index.es.js +17 -15
  23. package/dist/index.es.js.map +1 -1
  24. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js +2 -0
  25. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js.map +1 -0
  26. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js +63 -0
  27. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js.map +1 -0
  28. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js +2 -0
  29. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js.map +1 -0
  30. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js +12 -0
  31. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js.map +1 -0
  32. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js +2 -0
  33. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js.map +1 -0
  34. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js +107 -0
  35. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js.map +1 -0
  36. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js +2 -0
  37. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js.map +1 -0
  38. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js +14 -0
  39. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js.map +1 -0
  40. package/dist/node_modules/devlop/lib/default.cjs.js +2 -0
  41. package/dist/node_modules/devlop/lib/default.cjs.js.map +1 -0
  42. package/dist/node_modules/devlop/lib/default.es.js +6 -0
  43. package/dist/node_modules/devlop/lib/default.es.js.map +1 -0
  44. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js +2 -0
  45. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js.map +1 -0
  46. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js +39 -0
  47. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js.map +1 -0
  48. package/dist/node_modules/entities/dist/esm/decode.cjs.js +2 -0
  49. package/dist/node_modules/entities/dist/esm/decode.cjs.js.map +1 -0
  50. package/dist/node_modules/entities/dist/esm/decode.es.js +246 -0
  51. package/dist/node_modules/entities/dist/esm/decode.es.js.map +1 -0
  52. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js +2 -0
  53. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js.map +1 -0
  54. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js +8 -0
  55. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js.map +1 -0
  56. package/dist/node_modules/hast-util-raw/lib/index.cjs.js +2 -0
  57. package/dist/node_modules/hast-util-raw/lib/index.cjs.js.map +1 -0
  58. package/dist/node_modules/hast-util-raw/lib/index.es.js +218 -0
  59. package/dist/node_modules/hast-util-raw/lib/index.es.js.map +1 -0
  60. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js +2 -0
  61. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js.map +1 -0
  62. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js +146 -0
  63. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js.map +1 -0
  64. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js +2 -0
  65. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js.map +1 -0
  66. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js +21 -0
  67. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js.map +1 -0
  68. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js +2 -0
  69. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js.map +1 -0
  70. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js +113 -0
  71. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js.map +1 -0
  72. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js +2 -0
  73. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js.map +1 -0
  74. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js +9 -0
  75. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js.map +1 -0
  76. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js +2 -0
  77. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js.map +1 -0
  78. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js +45 -0
  79. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js.map +1 -0
  80. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js +2 -0
  81. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js.map +1 -0
  82. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js +26 -0
  83. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js.map +1 -0
  84. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js +2 -0
  85. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js.map +1 -0
  86. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js +99 -0
  87. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js.map +1 -0
  88. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js +2 -0
  89. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js.map +1 -0
  90. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js +8 -0
  91. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js.map +1 -0
  92. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js +2 -0
  93. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js.map +1 -0
  94. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js +211 -0
  95. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js.map +1 -0
  96. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js +2 -0
  97. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js.map +1 -0
  98. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js +251 -0
  99. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js.map +1 -0
  100. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js +2 -0
  101. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js.map +1 -0
  102. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js +15 -0
  103. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js.map +1 -0
  104. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js +2 -0
  105. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js.map +1 -0
  106. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js +74 -0
  107. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js.map +1 -0
  108. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js +2 -0
  109. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js.map +1 -0
  110. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js +85 -0
  111. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js.map +1 -0
  112. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js +2 -0
  113. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js.map +1 -0
  114. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js +2272 -0
  115. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js.map +1 -0
  116. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js +2 -0
  117. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js.map +1 -0
  118. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js +241 -0
  119. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js.map +1 -0
  120. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js +2 -0
  121. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js.map +1 -0
  122. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js +3 -0
  123. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js.map +1 -0
  124. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js +2 -0
  125. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js.map +1 -0
  126. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js +1941 -0
  127. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js.map +1 -0
  128. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js +2 -0
  129. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js.map +1 -0
  130. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js +89 -0
  131. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js.map +1 -0
  132. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js +2 -0
  133. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js.map +1 -0
  134. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js +163 -0
  135. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js.map +1 -0
  136. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js +2 -0
  137. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js.map +1 -0
  138. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js +13 -0
  139. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js.map +1 -0
  140. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js +2 -0
  141. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js.map +1 -0
  142. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js +62 -0
  143. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js.map +1 -0
  144. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js +2 -0
  145. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js.map +1 -0
  146. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js +34 -0
  147. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js.map +1 -0
  148. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js +2 -0
  149. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js.map +1 -0
  150. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js +369 -0
  151. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js.map +1 -0
  152. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js +2 -0
  153. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js.map +1 -0
  154. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js +7 -0
  155. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js.map +1 -0
  156. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js +2 -0
  157. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js.map +1 -0
  158. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js +567 -0
  159. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js.map +1 -0
  160. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js +2 -0
  161. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js.map +1 -0
  162. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js +8 -0
  163. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js.map +1 -0
  164. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js +2 -0
  165. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js.map +1 -0
  166. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js +7 -0
  167. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js.map +1 -0
  168. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js +2 -0
  169. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js.map +1 -0
  170. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js +20 -0
  171. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js.map +1 -0
  172. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js +2 -0
  173. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js.map +1 -0
  174. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js +37 -0
  175. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js.map +1 -0
  176. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js +2 -0
  177. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js.map +1 -0
  178. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js +29 -0
  179. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js.map +1 -0
  180. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js +2 -0
  181. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js.map +1 -0
  182. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js +11 -0
  183. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js.map +1 -0
  184. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js +2 -0
  185. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js.map +1 -0
  186. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js +22 -0
  187. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js.map +1 -0
  188. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js +2 -0
  189. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js.map +1 -0
  190. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js +15 -0
  191. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js.map +1 -0
  192. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js +2 -0
  193. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js.map +1 -0
  194. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js +20 -0
  195. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js.map +1 -0
  196. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js +2 -0
  197. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js.map +1 -0
  198. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js +12 -0
  199. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js.map +1 -0
  200. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js +2 -0
  201. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js.map +1 -0
  202. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js +12 -0
  203. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js.map +1 -0
  204. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js +3 -0
  205. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js.map +1 -0
  206. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js +43 -0
  207. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js.map +1 -0
  208. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js +2 -0
  209. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js.map +1 -0
  210. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js +119 -0
  211. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js.map +1 -0
  212. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  213. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js.map +1 -1
  214. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +1 -1
  215. package/dist/node_modules/rehype/node_modules/unist-util-stringify-position/lib/index.cjs.js.map +1 -0
  216. package/dist/node_modules/{vfile/node_modules/unist-util-stringify-position/lib/index.cjs.js.map → rehype/node_modules/unist-util-stringify-position/lib/index.es.js.map} +1 -1
  217. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +2 -0
  218. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js.map +1 -0
  219. package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/index.es.js +2 -2
  220. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js.map +1 -0
  221. package/dist/node_modules/rehype/node_modules/vfile/lib/minpath.browser.cjs.js.map +1 -0
  222. package/dist/node_modules/rehype/node_modules/vfile/lib/minpath.browser.es.js.map +1 -0
  223. package/dist/node_modules/rehype/node_modules/vfile/lib/minproc.browser.cjs.js.map +1 -0
  224. package/dist/node_modules/rehype/node_modules/vfile/lib/minproc.browser.es.js.map +1 -0
  225. package/dist/node_modules/rehype/node_modules/vfile/lib/minurl.browser.cjs.js.map +1 -0
  226. package/dist/node_modules/rehype/node_modules/vfile/lib/minurl.browser.es.js.map +1 -0
  227. package/dist/node_modules/rehype/node_modules/vfile/lib/minurl.shared.cjs.js.map +1 -0
  228. package/dist/node_modules/rehype/node_modules/vfile/lib/minurl.shared.es.js.map +1 -0
  229. package/dist/node_modules/rehype/node_modules/vfile-message/lib/index.cjs.js.map +1 -0
  230. package/dist/node_modules/{vfile/node_modules/vfile-message/lib/index.cjs.js.map → rehype/node_modules/vfile-message/lib/index.es.js.map} +1 -1
  231. package/dist/node_modules/rehype-raw/lib/index.cjs.js +2 -0
  232. package/dist/node_modules/rehype-raw/lib/index.cjs.js.map +1 -0
  233. package/dist/node_modules/rehype-raw/lib/index.es.js +13 -0
  234. package/dist/node_modules/rehype-raw/lib/index.es.js.map +1 -0
  235. package/dist/node_modules/unist-util-is/lib/index.cjs.js +2 -0
  236. package/dist/node_modules/unist-util-is/lib/index.cjs.js.map +1 -0
  237. package/dist/node_modules/unist-util-is/lib/index.es.js +85 -0
  238. package/dist/node_modules/unist-util-is/lib/index.es.js.map +1 -0
  239. package/dist/node_modules/unist-util-position/lib/index.cjs.js +2 -0
  240. package/dist/node_modules/unist-util-position/lib/index.cjs.js.map +1 -0
  241. package/dist/node_modules/unist-util-position/lib/index.es.js +18 -0
  242. package/dist/node_modules/unist-util-position/lib/index.es.js.map +1 -0
  243. package/dist/node_modules/unist-util-visit/lib/index.cjs.js +2 -0
  244. package/dist/node_modules/unist-util-visit/lib/index.cjs.js.map +1 -0
  245. package/dist/node_modules/unist-util-visit/lib/index.es.js +17 -0
  246. package/dist/node_modules/unist-util-visit/lib/index.es.js.map +1 -0
  247. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js +2 -0
  248. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js.map +1 -0
  249. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js +7 -0
  250. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js.map +1 -0
  251. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js +2 -0
  252. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js.map +1 -0
  253. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js +57 -0
  254. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js.map +1 -0
  255. package/dist/node_modules/web-namespaces/index.cjs.js +1 -1
  256. package/dist/node_modules/web-namespaces/index.cjs.js.map +1 -1
  257. package/dist/node_modules/web-namespaces/index.es.js +8 -3
  258. package/dist/node_modules/web-namespaces/index.es.js.map +1 -1
  259. package/dist/shared/src/api/base/client.cjs.js +1 -1
  260. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  261. package/dist/shared/src/api/base/client.es.js +8 -7
  262. package/dist/shared/src/api/base/client.es.js.map +1 -1
  263. package/dist/shared/src/api/generated/anatomy.cjs.js.map +1 -1
  264. package/dist/shared/src/api/generated/anatomy.es.js.map +1 -1
  265. package/dist/shared/src/api/generated/attributes.cjs.js +1 -1
  266. package/dist/shared/src/api/generated/attributes.cjs.js.map +1 -1
  267. package/dist/shared/src/api/generated/attributes.es.js +9 -2
  268. package/dist/shared/src/api/generated/attributes.es.js.map +1 -1
  269. package/dist/shared/src/api/generated/entityLists.cjs.js +1 -1
  270. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  271. package/dist/shared/src/api/generated/entityLists.es.js +46 -0
  272. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  273. package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
  274. package/dist/shared/src/api/generated/folders.es.js.map +1 -1
  275. package/dist/shared/src/api/generated/graphql.cjs.js +14 -7
  276. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  277. package/dist/shared/src/api/generated/graphql.es.js +28 -21
  278. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  279. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  280. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  281. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  282. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  283. package/dist/shared/src/api/queries/attributes/updateAttributes.cjs.js +1 -1
  284. package/dist/shared/src/api/queries/attributes/updateAttributes.cjs.js.map +1 -1
  285. package/dist/shared/src/api/queries/attributes/updateAttributes.es.js +12 -5
  286. package/dist/shared/src/api/queries/attributes/updateAttributes.es.js.map +1 -1
  287. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  288. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  289. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
  290. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  291. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  292. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  293. package/dist/shared/src/api/queries/entities/updateEntity.es.js +33 -32
  294. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  295. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  296. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  297. package/dist/shared/src/api/queries/entityLists/getLists.es.js +104 -103
  298. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  299. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +2 -0
  300. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -0
  301. package/dist/shared/src/api/queries/entityLists/listFolders.es.js +111 -0
  302. package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -0
  303. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  304. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  305. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +46 -45
  306. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  307. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  308. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  309. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +41 -40
  310. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  311. package/dist/shared/src/api/queries/links/updateLinks.cjs.js +1 -1
  312. package/dist/shared/src/api/queries/links/updateLinks.cjs.js.map +1 -1
  313. package/dist/shared/src/api/queries/links/updateLinks.es.js +164 -143
  314. package/dist/shared/src/api/queries/links/updateLinks.es.js.map +1 -1
  315. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  316. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  317. package/dist/shared/src/api/queries/overview/updateOverview.es.js +7 -6
  318. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  319. package/dist/shared/src/api/queries/project/getProject.cjs.js +1 -19
  320. package/dist/shared/src/api/queries/project/getProject.cjs.js.map +1 -1
  321. package/dist/shared/src/api/queries/project/getProject.es.js +10 -70
  322. package/dist/shared/src/api/queries/project/getProject.es.js.map +1 -1
  323. package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
  324. package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
  325. package/dist/shared/src/api/queries/project/updateProject.es.js +35 -61
  326. package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
  327. package/dist/shared/src/api/queries/system/getSystem.cjs.js +1 -1
  328. package/dist/shared/src/api/queries/system/getSystem.cjs.js.map +1 -1
  329. package/dist/shared/src/api/queries/system/getSystem.es.js +14 -8
  330. package/dist/shared/src/api/queries/system/getSystem.es.js.map +1 -1
  331. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  332. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  333. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +23 -23
  334. package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -2
  335. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  336. package/dist/shared/src/api/queries/users/getUsers.es.js +34 -37
  337. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  338. package/dist/shared/src/api/queries/users/updateUsers.cjs.js +1 -1
  339. package/dist/shared/src/api/queries/users/updateUsers.cjs.js.map +1 -1
  340. package/dist/shared/src/api/queries/users/updateUsers.es.js +19 -11
  341. package/dist/shared/src/api/queries/users/updateUsers.es.js.map +1 -1
  342. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  343. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  344. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +30 -29
  345. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  346. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  347. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  348. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  349. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  350. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +24 -33
  351. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  352. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +109 -93
  353. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  354. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +6 -5
  355. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  356. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +174 -60
  357. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  358. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js +47 -0
  359. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js.map +1 -0
  360. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.es.js +92 -0
  361. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.es.js.map +1 -0
  362. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +2 -0
  363. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -0
  364. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +219 -0
  365. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -0
  366. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js +456 -0
  367. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js.map +1 -0
  368. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js +472 -0
  369. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js.map +1 -0
  370. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +11 -0
  371. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -0
  372. package/dist/shared/src/components/{LinksManager/LinksManagerDialog.es.js → DetailsPanelDetails/DetailsPanelDetails.es.js} +92 -91
  373. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -0
  374. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +51 -0
  375. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -0
  376. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +113 -0
  377. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -0
  378. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +8 -0
  379. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -0
  380. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +32 -0
  381. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -0
  382. package/dist/shared/src/components/DetailsPanelDetails/hooks/useDescriptionEditor.cjs.js +2 -0
  383. package/dist/shared/src/components/DetailsPanelDetails/hooks/useDescriptionEditor.cjs.js.map +1 -0
  384. package/dist/shared/src/components/DetailsPanelDetails/hooks/useDescriptionEditor.es.js +61 -0
  385. package/dist/shared/src/components/DetailsPanelDetails/hooks/useDescriptionEditor.es.js.map +1 -0
  386. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js +2 -0
  387. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -0
  388. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +96 -0
  389. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js.map +1 -0
  390. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +2 -0
  391. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -0
  392. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +110 -0
  393. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -0
  394. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFields.cjs.js +2 -0
  395. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFields.cjs.js.map +1 -0
  396. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFields.es.js +131 -0
  397. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFields.es.js.map +1 -0
  398. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js +2 -0
  399. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js.map +1 -0
  400. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js +64 -0
  401. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js.map +1 -0
  402. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js +2 -0
  403. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js.map +1 -0
  404. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js +28 -0
  405. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js.map +1 -0
  406. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.cjs.js +2 -0
  407. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.cjs.js.map +1 -0
  408. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.es.js +6 -0
  409. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.es.js.map +1 -0
  410. package/dist/shared/src/components/DetailsPanelDetails/types.cjs.js +2 -0
  411. package/dist/shared/src/components/DetailsPanelDetails/types.cjs.js.map +1 -0
  412. package/dist/shared/src/components/DetailsPanelDetails/types.es.js +37 -0
  413. package/dist/shared/src/components/DetailsPanelDetails/types.es.js.map +1 -0
  414. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  415. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  416. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +14 -11
  417. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  418. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  419. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  420. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -2
  421. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  422. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js +1 -1
  423. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js.map +1 -1
  424. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js +51 -152
  425. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js.map +1 -1
  426. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js +3 -1
  427. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js.map +1 -1
  428. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js +3 -1
  429. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js.map +1 -1
  430. package/dist/shared/src/components/EnumEditor/EnumEditorItem.cjs.js +2 -0
  431. package/dist/shared/src/components/EnumEditor/EnumEditorItem.cjs.js.map +1 -0
  432. package/dist/shared/src/components/EnumEditor/EnumEditorItem.es.js +141 -0
  433. package/dist/shared/src/components/EnumEditor/EnumEditorItem.es.js.map +1 -0
  434. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  435. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  436. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  437. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  438. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  439. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  440. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +10 -7
  441. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  442. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js +8 -0
  443. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js.map +1 -0
  444. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js +86 -0
  445. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js.map +1 -0
  446. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  447. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  448. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +32 -22
  449. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  450. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  451. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  452. package/dist/shared/src/components/LinksManager/LinksManager.es.js +55 -43
  453. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  454. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js +42 -9
  455. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js.map +1 -1
  456. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js +49 -16
  457. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js.map +1 -1
  458. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  459. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  460. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +14 -11
  461. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  462. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  463. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  464. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +52 -80
  465. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  466. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  467. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  468. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +19 -13
  469. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  470. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +2 -2
  471. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  472. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +3 -2
  473. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  474. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  475. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  476. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +48 -37
  477. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  478. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js +12 -2
  479. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js.map +1 -1
  480. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js +15 -4
  481. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js.map +1 -1
  482. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  483. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  484. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +33 -22
  485. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  486. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  487. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  488. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +31 -22
  489. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  490. package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js +60 -0
  491. package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js.map +1 -0
  492. package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js +64 -0
  493. package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js.map +1 -0
  494. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +31 -0
  495. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -0
  496. package/dist/shared/src/components/RenameForm/RenameForm.es.js +407 -0
  497. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -0
  498. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  499. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  500. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  501. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  502. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  503. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  504. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +11 -8
  505. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  506. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  507. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  508. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +12 -9
  509. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  510. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  511. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  512. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +11 -8
  513. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  514. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  515. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  516. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  517. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  518. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  519. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  520. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +3 -2
  521. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  522. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +3 -3
  523. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  524. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +6 -5
  525. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  526. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  527. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  528. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +11 -8
  529. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  530. package/dist/shared/src/components/StyledLink/StyledLink.cjs.js +14 -0
  531. package/dist/shared/src/components/StyledLink/StyledLink.cjs.js.map +1 -0
  532. package/dist/shared/src/components/StyledLink/StyledLink.es.js +19 -0
  533. package/dist/shared/src/components/StyledLink/StyledLink.es.js.map +1 -0
  534. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  535. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  536. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +12 -11
  537. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  538. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  539. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  540. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +11 -8
  541. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  542. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  543. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  544. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
  545. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  546. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  547. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  548. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  549. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  550. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  551. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  552. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +11 -8
  553. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  554. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  555. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  556. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  557. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  558. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  559. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  560. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +11 -8
  561. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  562. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  563. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  564. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +130 -110
  565. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  566. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  567. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  568. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +11 -8
  569. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  570. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  571. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  572. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +12 -9
  573. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  574. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  575. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  576. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +127 -114
  577. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  578. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js +4 -3
  579. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js.map +1 -1
  580. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js +1 -0
  581. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js.map +1 -1
  582. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  583. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  584. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +4 -2
  585. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  586. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +2 -0
  587. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -0
  588. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +86 -0
  589. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -0
  590. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.cjs.js +1 -1
  591. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.cjs.js.map +1 -1
  592. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.es.js +18 -18
  593. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.es.js.map +1 -1
  594. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  595. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  596. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +3 -2
  597. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  598. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  599. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  600. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +3 -2
  601. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  602. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  603. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  604. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +11 -8
  605. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  606. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  607. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  608. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +11 -8
  609. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  610. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  611. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  612. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +11 -8
  613. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  614. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  615. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  616. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +11 -8
  617. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  618. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  619. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  620. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  621. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  622. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  623. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  624. package/dist/shared/src/containers/Feed/Feed.es.js +20 -19
  625. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  626. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  627. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  628. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +3 -2
  629. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  630. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +18 -3
  631. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  632. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +24 -9
  633. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  634. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js +8 -3
  635. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js.map +1 -1
  636. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js +21 -16
  637. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js.map +1 -1
  638. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  639. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  640. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +22 -21
  641. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  642. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js +37 -8
  643. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js.map +1 -1
  644. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js +44 -14
  645. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js.map +1 -1
  646. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  647. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  648. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +58 -57
  649. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  650. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +14 -58
  651. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  652. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +21 -65
  653. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  654. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  655. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  656. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
  657. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  658. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  659. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  660. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
  661. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  662. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js +1 -1
  663. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js.map +1 -1
  664. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js +17 -15
  665. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js.map +1 -1
  666. package/dist/shared/src/containers/Feed/components/CommentInput/quillToMarkdown.cjs.js +7 -6
  667. package/dist/shared/src/containers/Feed/components/CommentInput/quillToMarkdown.cjs.js.map +1 -1
  668. package/dist/shared/src/containers/Feed/components/CommentInput/quillToMarkdown.es.js +27 -18
  669. package/dist/shared/src/containers/Feed/components/CommentInput/quillToMarkdown.es.js.map +1 -1
  670. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  671. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  672. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
  673. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  674. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  675. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  676. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +3 -2
  677. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  678. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  679. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  680. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +7 -5
  681. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  682. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  683. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  684. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  685. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  686. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  687. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  688. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +61 -55
  689. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  690. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  691. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  692. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +304 -223
  693. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  694. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +3 -3
  695. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  696. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +280 -57
  697. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  698. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  699. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  700. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +11 -8
  701. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  702. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  703. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  704. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +10 -7
  705. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  706. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
  707. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  708. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +212 -206
  709. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  710. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  711. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  712. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +41 -32
  713. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  714. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  715. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  716. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +10 -7
  717. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  718. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  719. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  720. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +130 -33
  721. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  722. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  723. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  724. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +12 -14
  725. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  726. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  727. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  728. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +8 -6
  729. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  730. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  731. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  732. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +38 -33
  733. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  734. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  735. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  736. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +127 -113
  737. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  738. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  739. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  740. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +10 -7
  741. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  742. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +2 -0
  743. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -0
  744. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +239 -0
  745. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -0
  746. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  747. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  748. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
  749. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  750. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  751. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  752. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +10 -7
  753. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  754. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +1 -1
  755. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
  756. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +3 -2
  757. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
  758. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  759. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  760. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +105 -78
  761. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  762. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  763. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  764. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +14 -11
  765. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  766. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  767. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  768. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +14 -11
  769. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  770. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +1 -1
  771. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
  772. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +4 -2
  773. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -1
  774. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  775. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  776. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +10 -7
  777. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  778. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  779. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  780. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +21 -18
  781. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  782. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  783. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  784. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +7 -7
  785. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  786. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  787. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  788. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +90 -74
  789. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  790. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
  791. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  792. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +50 -48
  793. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  794. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  795. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  796. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +61 -61
  797. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  798. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +2 -0
  799. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -0
  800. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +244 -0
  801. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -0
  802. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +8 -3
  803. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  804. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +82 -32
  805. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  806. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +2 -2
  807. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
  808. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +79 -24
  809. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js.map +1 -1
  810. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  811. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  812. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +11 -8
  813. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  814. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  815. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  816. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +145 -136
  817. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  818. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +7 -0
  819. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
  820. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +11 -4
  821. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
  822. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  823. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  824. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  825. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  826. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  827. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  828. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +9 -8
  829. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  830. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  831. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  832. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +6 -4
  833. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  834. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  835. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  836. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +4 -2
  837. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  838. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  839. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  840. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
  841. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  842. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  843. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  844. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  845. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  846. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  847. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  848. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  849. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  850. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  851. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  852. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  853. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  854. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  855. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  856. package/dist/shared/src/context/AddonProjectContext.es.js +13 -12
  857. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  858. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  859. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  860. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -4
  861. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  862. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  863. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  864. package/dist/shared/src/context/PowerpackContext.es.js +60 -45
  865. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  866. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  867. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  868. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  869. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  870. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  871. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  872. package/dist/shared/src/hooks/useActionTriggers.es.js +30 -34
  873. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  874. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  875. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  876. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  877. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  878. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  879. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  880. package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
  881. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  882. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.cjs.js +2 -0
  883. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.cjs.js.map +1 -0
  884. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.es.js +12 -0
  885. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.es.js.map +1 -0
  886. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  887. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  888. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  889. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  890. package/dist/shared/src/hooks/useTagStyling.cjs.js +2 -0
  891. package/dist/shared/src/hooks/useTagStyling.cjs.js.map +1 -0
  892. package/dist/shared/src/hooks/useTagStyling.es.js +33 -0
  893. package/dist/shared/src/hooks/useTagStyling.es.js.map +1 -0
  894. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  895. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  896. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  897. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  898. package/dist/shared/src/util/checkName.cjs.js +2 -0
  899. package/dist/shared/src/util/checkName.cjs.js.map +1 -0
  900. package/dist/shared/src/util/checkName.es.js +39 -0
  901. package/dist/shared/src/util/checkName.es.js.map +1 -0
  902. package/dist/shared/src/util/clipboardUtils.cjs.js +2 -0
  903. package/dist/shared/src/util/clipboardUtils.cjs.js.map +1 -0
  904. package/dist/shared/src/util/clipboardUtils.es.js +13 -0
  905. package/dist/shared/src/util/clipboardUtils.es.js.map +1 -0
  906. package/dist/shared/src/util/copyToClipboard.cjs.js +1 -1
  907. package/dist/shared/src/util/copyToClipboard.cjs.js.map +1 -1
  908. package/dist/shared/src/util/copyToClipboard.es.js +21 -21
  909. package/dist/shared/src/util/copyToClipboard.es.js.map +1 -1
  910. package/dist/shared/src/util/humanizeFieldName.cjs.js +2 -0
  911. package/dist/shared/src/util/humanizeFieldName.cjs.js.map +1 -0
  912. package/dist/shared/src/util/humanizeFieldName.es.js +15 -0
  913. package/dist/shared/src/util/humanizeFieldName.es.js.map +1 -0
  914. package/dist/shared/src/util/parseHtmlToPlainTextWithLinks.cjs.js +7 -0
  915. package/dist/shared/src/util/parseHtmlToPlainTextWithLinks.cjs.js.map +1 -0
  916. package/dist/shared/src/util/parseHtmlToPlainTextWithLinks.es.js +64 -0
  917. package/dist/shared/src/util/parseHtmlToPlainTextWithLinks.es.js.map +1 -0
  918. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +1 -1
  919. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +1 -1
  920. package/dist/src/components/Menu/MenuComponents/Menu.es.js +59 -35
  921. package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +1 -1
  922. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js +13 -0
  923. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js.map +1 -1
  924. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js +13 -0
  925. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js.map +1 -1
  926. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +1 -1
  927. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +1 -1
  928. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js +52 -36
  929. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +1 -1
  930. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +1 -1
  931. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +1 -1
  932. package/dist/src/components/Menu/MenuComponents/MenuList.es.js +103 -83
  933. package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +1 -1
  934. package/dist/types/api/generated/anatomy.d.ts +23 -0
  935. package/dist/types/api/generated/attributes.d.ts +15 -4
  936. package/dist/types/api/generated/entityLists.d.ts +94 -1
  937. package/dist/types/api/generated/folders.d.ts +2 -0
  938. package/dist/types/api/generated/graphql.d.ts +29 -6
  939. package/dist/types/api/generated/index.d.ts +1 -0
  940. package/dist/types/api/generated/projects.d.ts +8 -0
  941. package/dist/types/api/generated/views.d.ts +9 -47
  942. package/dist/types/api/queries/attributes/getAttributes.d.ts +1 -0
  943. package/dist/types/api/queries/attributes/updateAttributes.d.ts +162 -0
  944. package/dist/types/api/queries/entityLists/getLists.d.ts +19 -0
  945. package/dist/types/api/queries/entityLists/getListsAttributes.d.ts +5 -0
  946. package/dist/types/api/queries/entityLists/index.d.ts +1 -0
  947. package/dist/types/api/queries/entityLists/listFolders.d.ts +613 -0
  948. package/dist/types/api/queries/entityLists/types.d.ts +1 -0
  949. package/dist/types/api/queries/entityLists/updateLists.d.ts +5 -0
  950. package/dist/types/api/queries/entityLists/updateListsAttributes.d.ts +5 -0
  951. package/dist/types/api/queries/permissions/getPermissions.d.ts +22 -22
  952. package/dist/types/api/queries/project/getProject.d.ts +4 -305
  953. package/dist/types/api/queries/project/updateProject.d.ts +803 -0
  954. package/dist/types/api/queries/share/share.d.ts +1 -1
  955. package/dist/types/api/queries/users/getUsers.d.ts +0 -132
  956. package/dist/types/api/queries/users/updateUsers.d.ts +163 -3
  957. package/dist/types/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.d.ts +2 -0
  958. package/dist/types/components/DetailsPanelAttributes/components/RenderFieldWidget.d.ts +3 -0
  959. package/dist/types/components/DetailsPanelAttributes/index.d.ts +0 -1
  960. package/dist/types/components/DetailsPanelDetails/BorderedSection.d.ts +16 -0
  961. package/dist/types/components/DetailsPanelDetails/DescriptionSection.d.ts +10 -0
  962. package/dist/types/components/DetailsPanelDetails/DescriptionSection.styles.d.ts +10 -0
  963. package/dist/types/components/DetailsPanelDetails/DetailsPanelDetails.d.ts +6 -0
  964. package/dist/types/components/DetailsPanelDetails/DetailsSection.d.ts +4 -3
  965. package/dist/types/components/DetailsPanelDetails/FieldLabel.d.ts +11 -0
  966. package/dist/types/components/DetailsPanelDetails/hooks/index.d.ts +7 -0
  967. package/dist/types/components/DetailsPanelDetails/hooks/useDescriptionEditor.d.ts +17 -0
  968. package/dist/types/components/DetailsPanelDetails/hooks/useEntityData.d.ts +12 -0
  969. package/dist/types/components/DetailsPanelDetails/hooks/useEntityEditing.d.ts +10 -0
  970. package/dist/types/components/DetailsPanelDetails/hooks/useEntityFields.d.ts +16 -0
  971. package/dist/types/components/DetailsPanelDetails/hooks/useEntityFormData.d.ts +8 -0
  972. package/dist/types/components/DetailsPanelDetails/hooks/useQuillFormats.d.ts +1 -0
  973. package/dist/types/components/DetailsPanelDetails/index.d.ts +3 -0
  974. package/dist/types/components/DetailsPanelDetails/types.d.ts +20 -0
  975. package/dist/types/components/EnumEditor/EnumEditor.styled.d.ts +1 -1
  976. package/dist/types/components/EnumEditor/EnumEditorItem.d.ts +13 -0
  977. package/dist/types/components/EnumEditor/index.d.ts +1 -0
  978. package/dist/types/components/LinksManager/CellEditingDialog.d.ts +8 -0
  979. package/dist/types/components/ListAttributeForm/ListAttributeForm.d.ts +2 -4
  980. package/dist/types/components/Powerpack/PowerpackDialog.styled.d.ts +1 -0
  981. package/dist/types/components/Powerpack/index.d.ts +0 -1
  982. package/dist/types/components/QuillListStyles/QuillListStyles.d.ts +5 -0
  983. package/dist/types/components/QuillListStyles/index.d.ts +1 -0
  984. package/dist/types/components/RenameForm/RenameForm.d.ts +21 -0
  985. package/dist/types/components/RenameForm/index.d.ts +1 -0
  986. package/dist/types/components/StyledLink/StyledLink.d.ts +2 -0
  987. package/dist/types/components/StyledLink/index.d.ts +1 -0
  988. package/dist/types/components/index.d.ts +2 -2
  989. package/dist/types/containers/Actions/ActionsDropdown/ActionsDropdown.styled.d.ts +1 -1
  990. package/dist/types/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.d.ts +4 -4
  991. package/dist/types/containers/DetailsPanel/FeedContextWrapper.d.ts +19 -0
  992. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.styled.d.ts +1 -0
  993. package/dist/types/containers/Feed/components/CommentInput/modules/index.d.ts +2 -1
  994. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
  995. package/dist/types/containers/ProjectTreeTable/context/ProjectDataContext.d.ts +4 -0
  996. package/dist/types/containers/ProjectTreeTable/context/clipboard/clipboardValidation.d.ts +10 -0
  997. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
  998. package/dist/types/containers/ProjectTreeTable/hooks/useAttributesList.d.ts +6 -6
  999. package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +1 -1
  1000. package/dist/types/containers/ProjectTreeTable/hooks/useColumnGroupBy.d.ts +10 -0
  1001. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +6 -0
  1002. package/dist/types/containers/ProjectTreeTable/widgets/BooleanWidget.d.ts +0 -1
  1003. package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +2 -1
  1004. package/dist/types/containers/ProjectTreeTable/widgets/LinksWidget.d.ts +1 -0
  1005. package/dist/types/containers/ProjectTreeTable/widgets/NameWidget.d.ts +10 -0
  1006. package/dist/types/containers/ProjectTreeTable/widgets/TextWidget.d.ts +2 -0
  1007. package/dist/types/containers/ProjectTreeTable/widgets/TextWidgetInput.d.ts +2 -0
  1008. package/dist/types/containers/Views/index.d.ts +1 -4
  1009. package/dist/types/context/AddonProjectContext.d.ts +2 -1
  1010. package/dist/types/context/DetailsPanelContext.d.ts +1 -1
  1011. package/dist/types/context/PowerpackContext.d.ts +4 -2
  1012. package/dist/types/context/index.d.ts +1 -0
  1013. package/dist/types/hooks/index.d.ts +2 -0
  1014. package/dist/types/hooks/useActionTriggers.d.ts +1 -1
  1015. package/dist/types/hooks/useQueryArgumentChangeLoading.d.ts +9 -0
  1016. package/dist/types/hooks/useTagStyling.d.ts +17 -0
  1017. package/dist/types/util/checkName.d.ts +9 -0
  1018. package/dist/types/util/clipboardUtils.d.ts +18 -0
  1019. package/dist/types/util/copyToClipboard.d.ts +1 -1
  1020. package/dist/types/util/humanizeFieldName.d.ts +1 -0
  1021. package/dist/types/util/index.d.ts +3 -0
  1022. package/dist/types/util/parseHtmlToPlainTextWithLinks.d.ts +6 -0
  1023. package/dist/util.cjs.js +1 -1
  1024. package/dist/util.es.js +44 -36
  1025. package/dist/util.es.js.map +1 -1
  1026. package/package.json +1 -1
  1027. package/dist/node_modules/vfile/lib/index.cjs.js +0 -2
  1028. package/dist/node_modules/vfile/lib/index.cjs.js.map +0 -1
  1029. package/dist/node_modules/vfile/lib/index.es.js.map +0 -1
  1030. package/dist/node_modules/vfile/lib/minpath.browser.cjs.js.map +0 -1
  1031. package/dist/node_modules/vfile/lib/minpath.browser.es.js.map +0 -1
  1032. package/dist/node_modules/vfile/lib/minproc.browser.cjs.js.map +0 -1
  1033. package/dist/node_modules/vfile/lib/minproc.browser.es.js.map +0 -1
  1034. package/dist/node_modules/vfile/lib/minurl.browser.cjs.js.map +0 -1
  1035. package/dist/node_modules/vfile/lib/minurl.browser.es.js.map +0 -1
  1036. package/dist/node_modules/vfile/lib/minurl.shared.cjs.js.map +0 -1
  1037. package/dist/node_modules/vfile/lib/minurl.shared.es.js.map +0 -1
  1038. package/dist/node_modules/vfile/node_modules/unist-util-stringify-position/lib/index.es.js.map +0 -1
  1039. package/dist/node_modules/vfile/node_modules/vfile-message/lib/index.es.js.map +0 -1
  1040. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js +0 -2
  1041. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js.map +0 -1
  1042. package/dist/shared/src/components/AccessUser/AccessUser.es.js +0 -33
  1043. package/dist/shared/src/components/AccessUser/AccessUser.es.js.map +0 -1
  1044. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js +0 -42
  1045. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js.map +0 -1
  1046. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js +0 -46
  1047. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js.map +0 -1
  1048. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.cjs.js +0 -34
  1049. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.cjs.js.map +0 -1
  1050. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.es.js +0 -46
  1051. package/dist/shared/src/components/DetailsMetaData/DetailsMetaData.es.js.map +0 -1
  1052. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +0 -2
  1053. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +0 -1
  1054. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +0 -287
  1055. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +0 -1
  1056. package/dist/shared/src/components/LinksManager/LinksManagerDialog.cjs.js +0 -8
  1057. package/dist/shared/src/components/LinksManager/LinksManagerDialog.cjs.js.map +0 -1
  1058. package/dist/shared/src/components/LinksManager/LinksManagerDialog.es.js.map +0 -1
  1059. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js +0 -9
  1060. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js.map +0 -1
  1061. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js +0 -25
  1062. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js.map +0 -1
  1063. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js +0 -2
  1064. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js.map +0 -1
  1065. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js +0 -17
  1066. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js.map +0 -1
  1067. package/dist/shared/src/hooks/useCustomProtocolCheck.cjs.js +0 -2
  1068. package/dist/shared/src/hooks/useCustomProtocolCheck.cjs.js.map +0 -1
  1069. package/dist/shared/src/hooks/useCustomProtocolCheck.es.js +0 -43
  1070. package/dist/shared/src/hooks/useCustomProtocolCheck.es.js.map +0 -1
  1071. package/dist/types/components/AccessUser/AccessUser.d.ts +0 -22
  1072. package/dist/types/components/AccessUser/AccessUser.styled.d.ts +0 -1
  1073. package/dist/types/components/AccessUser/index.d.ts +0 -1
  1074. package/dist/types/components/DetailsMetaData/DetailsMetaData.d.ts +0 -8
  1075. package/dist/types/components/DetailsMetaData/index.d.ts +0 -1
  1076. package/dist/types/components/DetailsPanelAttributes/DetailsPanelAttributes.d.ts +0 -6
  1077. package/dist/types/components/LinksManager/LinksManagerDialog.d.ts +0 -9
  1078. package/dist/types/components/Powerpack/RequiredPowerpackVersion.d.ts +0 -5
  1079. package/dist/types/components/ShareOptionIcon/ShareOptionIcon.d.ts +0 -10
  1080. package/dist/types/components/ShareOptionIcon/index.d.ts +0 -2
  1081. package/dist/types/hooks/useCustomProtocolCheck.d.ts +0 -10
  1082. /package/dist/node_modules/{vfile → rehype}/node_modules/unist-util-stringify-position/lib/index.cjs.js +0 -0
  1083. /package/dist/node_modules/{vfile → rehype}/node_modules/unist-util-stringify-position/lib/index.es.js +0 -0
  1084. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minpath.browser.cjs.js +0 -0
  1085. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minpath.browser.es.js +0 -0
  1086. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minproc.browser.cjs.js +0 -0
  1087. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minproc.browser.es.js +0 -0
  1088. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minurl.browser.cjs.js +0 -0
  1089. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minurl.browser.es.js +0 -0
  1090. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minurl.shared.cjs.js +0 -0
  1091. /package/dist/node_modules/{vfile → rehype/node_modules/vfile}/lib/minurl.shared.es.js +0 -0
  1092. /package/dist/node_modules/{vfile → rehype}/node_modules/vfile-message/lib/index.cjs.js +0 -0
  1093. /package/dist/node_modules/{vfile → rehype}/node_modules/vfile-message/lib/index.es.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"updateLists.es.js","sources":["../../../../../../src/api/queries/entityLists/updateLists.ts"],"sourcesContent":["import { entityListsApi } from '@shared/api/generated'\nimport gqlApi from './getLists'\nimport { CreateSessionFromListApiArg, CreateSessionFromListApiResponse } from './types'\n\nconst updateListsEnhancedApi = entityListsApi.enhanceEndpoints({\n endpoints: {\n // LIST MUTATIONS\n createEntityList: {\n invalidatesTags: [{ type: 'entityList', id: 'LIST' }],\n },\n updateEntityList: {\n async onQueryStarted(\n { listId, entityListPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n const tags = [{ type: 'entityList', id: listId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListsInfinite')\n\n let patchResults: any[] = []\n\n // Update getListsInfinite cache (GraphQL)\n for (const entry of infiniteEntries) {\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListsInfinite', entry.originalArgs, (draft) => {\n for (const page of draft.pages) {\n const listIndex = page.lists.findIndex((list) => list.id === listId)\n if (listIndex !== -1) {\n const list = page.lists[listIndex]\n // Update the list with the new data\n Object.assign(list, entityListPatchModel)\n break\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n // Update getEntityList cache (REST API)\n const entityListEntries = entityListsApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getEntityList' && e.originalArgs.listId === listId)\n\n for (const entry of entityListEntries) {\n const patchResult = dispatch(\n entityListsApi.util.updateQueryData('getEntityList', entry.originalArgs, (draft) => {\n // Update the entity list with the new data\n Object.assign(draft, {\n ...draft,\n ...entityListPatchModel,\n })\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n // invalidatesTags: (_s, _e, { listId }) => {\n // const tags = [{ type: 'entityList', id: listId }]\n // return tags\n // },\n },\n deleteEntityList: {\n invalidatesTags: [{ type: 'entityList', id: 'LIST' }],\n },\n // LIST ITEM MUTATIONS\n updateEntityListItems: {\n async onQueryStarted(\n { listId, entityListMultiPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n // We are primarily interested in updating the items within a specific list\n const tags = [{ type: 'entityListItem', id: listId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListItemsInfinite')\n\n let patchResults: any[] = []\n\n if (!entityListMultiPatchModel.items || entityListMultiPatchModel.items.length === 0) {\n // No items to update, proceed without optimistic update\n await queryFulfilled\n return\n }\n\n for (const entry of infiniteEntries) {\n // only update entries that match the listId\n if (entry.originalArgs.listId !== listId) continue\n\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListItemsInfinite', entry.originalArgs, (draft) => {\n let overallPositionChanged = false\n // First pass: update items in place and check if any position changed\n for (const page of draft.pages) {\n entityListMultiPatchModel.items?.forEach((patchItem) => {\n const itemIndex = page.items.findIndex(\n (item) => item.id === patchItem.id || item.entityId === patchItem.entityId,\n )\n\n if (itemIndex !== -1) {\n const existingItem = page.items[itemIndex]\n // Merge existing item with patchItem, ensuring attrib is also merged\n const updatedItem = {\n ...existingItem,\n ...patchItem, // Apply all top-level fields from patchItem\n attrib: {\n ...existingItem.attrib,\n ...(patchItem.attrib || {}), // Merge attrib safely\n },\n }\n Object.assign(page.items[itemIndex], updatedItem)\n\n if (patchItem.position !== undefined) {\n overallPositionChanged = true\n }\n }\n })\n }\n\n if (overallPositionChanged) {\n // Collect all items from all pages for this specific cache entry\n let allItems = draft.pages.flatMap((page) => page.items)\n\n // Sort all items based on position\n allItems.sort((a, b) => {\n const posA = typeof a.position === 'number' ? a.position : Infinity\n const posB = typeof b.position === 'number' ? b.position : Infinity\n return posA - posB\n })\n\n // Re-distribute sorted items back into pages, maintaining original page sizes\n let currentItemIndex = 0\n for (const page of draft.pages) {\n const pageItemCount = page.items.length // Get original item count for this page\n // Replace page items with the corresponding slice from the globally sorted list\n page.items = allItems.slice(currentItemIndex, currentItemIndex + pageItemCount)\n currentItemIndex += pageItemCount\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n invalidatesTags: (_s, _e, { listId, entityListMultiPatchModel: { items } }) => {\n const tags = [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ...(items || []).flatMap((i) =>\n (i.id ? [{ type: 'entityListItem', id: i.id }] : []).concat(\n i.entityId ? [{ type: 'entityListItem', id: i.entityId }] : [],\n ),\n ),\n ]\n return tags\n },\n },\n updateEntityListItem: {\n async onQueryStarted(\n { listItemId, entityListItemPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n const tags = [{ type: 'entityListItem', id: listItemId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListItemsInfinite')\n\n let patchResults: any[] = []\n for (const entry of infiniteEntries) {\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListItemsInfinite', entry.originalArgs, (draft) => {\n for (const page of draft.pages) {\n const listIndex = page.items.findIndex((list) => list.id === listItemId)\n if (listIndex !== -1) {\n const list = page.items[listIndex]\n const newListItem = {\n ...list,\n attrib: {\n ...list.attrib,\n ...entityListItemPatchModel.attrib,\n },\n }\n // Update the list with the new data\n Object.assign(list, newListItem)\n break\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n },\n createEntityListItem: {\n invalidatesTags: (_s, _e, { listId }) => [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ],\n },\n deleteEntityListItem: {\n invalidatesTags: (_s, _e, { listId }) => [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ],\n },\n },\n})\n\n// inject review addon endpoint Create Session From List\nconst updateListsInjectedApi = updateListsEnhancedApi.injectEndpoints({\n endpoints: (build) => ({\n createSessionFromList: build.mutation<\n CreateSessionFromListApiResponse,\n CreateSessionFromListApiArg\n >({\n query: (queryArg) => ({\n url: `/api/addons/review/${queryArg.addonVersion}/${queryArg.projectName}/sessions/fromList`,\n method: 'POST',\n body: queryArg.sessionFromListRequest,\n }),\n transformErrorResponse: (error: any) => error.data.detail,\n invalidatesTags: () => [{ type: 'entityList', id: 'LIST' }],\n }),\n }),\n})\n\nexport const {\n // LIST MUTATIONS\n useCreateEntityListMutation,\n useUpdateEntityListMutation,\n useDeleteEntityListMutation,\n // LIST ITEM MUTATIONS\n useUpdateEntityListItemsMutation,\n useUpdateEntityListItemMutation,\n useCreateEntityListItemMutation,\n useDeleteEntityListItemMutation,\n // REVIEW SESSION MUTATIONS\n useCreateSessionFromListMutation,\n} = updateListsInjectedApi\nexport { updateListsInjectedApi as entityListsQueriesRest, gqlApi as entityListsQueriesGql }\n"],"names":["updateListsEnhancedApi","entityListsApi","listId","entityListPatchModel","dispatch","queryFulfilled","getState","state","tags","infiniteEntries","gqlApi","e","patchResults","entry","patchResult","draft","page","listIndex","list","entityListEntries","entityListMultiPatchModel","overallPositionChanged","_a","patchItem","itemIndex","item","existingItem","updatedItem","allItems","a","b","posA","posB","currentItemIndex","pageItemCount","_s","_e","items","i","listItemId","entityListItemPatchModel","newListItem","updateListsInjectedApi","build","queryArg","error","useCreateEntityListMutation","useUpdateEntityListMutation","useDeleteEntityListMutation","useUpdateEntityListItemsMutation","useUpdateEntityListItemMutation","useCreateEntityListItemMutation","useDeleteEntityListItemMutation","useCreateSessionFromListMutation"],"mappings":"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"}
1
+ {"version":3,"file":"updateLists.es.js","sources":["../../../../../../src/api/queries/entityLists/updateLists.ts"],"sourcesContent":["import { entityListsApi } from '@shared/api/generated'\nimport gqlApi from './getLists'\nimport { CreateSessionFromListApiArg, CreateSessionFromListApiResponse } from './types'\n\nconst updateListsEnhancedApi = entityListsApi.enhanceEndpoints({\n endpoints: {\n // LIST MUTATIONS\n createEntityList: {\n invalidatesTags: [{ type: 'entityList', id: 'LIST' }],\n },\n updateEntityList: {\n async onQueryStarted(\n { listId, entityListPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n const tags = [{ type: 'entityList', id: listId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListsInfinite')\n\n let patchResults: any[] = []\n\n // Update getListsInfinite cache (GraphQL)\n for (const entry of infiniteEntries) {\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListsInfinite', entry.originalArgs, (draft) => {\n for (const page of draft.pages) {\n const listIndex = page.lists.findIndex((list) => list.id === listId)\n if (listIndex !== -1) {\n const list = page.lists[listIndex]\n // Update the list with the new data\n Object.assign(list, entityListPatchModel)\n break\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n // Update getEntityList cache (REST API)\n const entityListEntries = entityListsApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getEntityList' && e.originalArgs.listId === listId)\n\n for (const entry of entityListEntries) {\n const patchResult = dispatch(\n entityListsApi.util.updateQueryData('getEntityList', entry.originalArgs, (draft) => {\n // Update the entity list with the new data\n Object.assign(draft, {\n ...draft,\n ...entityListPatchModel,\n })\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n transformErrorResponse: (error: any) => error.data.detail,\n // invalidatesTags: (_s, _e, { listId }) => {\n // const tags = [{ type: 'entityList', id: listId }]\n // return tags\n // },\n },\n deleteEntityList: {\n invalidatesTags: [{ type: 'entityList', id: 'LIST' }],\n },\n // LIST ITEM MUTATIONS\n updateEntityListItems: {\n async onQueryStarted(\n { listId, entityListMultiPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n // We are primarily interested in updating the items within a specific list\n const tags = [{ type: 'entityListItem', id: listId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListItemsInfinite')\n\n let patchResults: any[] = []\n\n if (!entityListMultiPatchModel.items || entityListMultiPatchModel.items.length === 0) {\n // No items to update, proceed without optimistic update\n await queryFulfilled\n return\n }\n\n for (const entry of infiniteEntries) {\n // only update entries that match the listId\n if (entry.originalArgs.listId !== listId) continue\n\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListItemsInfinite', entry.originalArgs, (draft) => {\n let overallPositionChanged = false\n // First pass: update items in place and check if any position changed\n for (const page of draft.pages) {\n entityListMultiPatchModel.items?.forEach((patchItem) => {\n const itemIndex = page.items.findIndex(\n (item) => item.id === patchItem.id || item.entityId === patchItem.entityId,\n )\n\n if (itemIndex !== -1) {\n const existingItem = page.items[itemIndex]\n // Merge existing item with patchItem, ensuring attrib is also merged\n const updatedItem = {\n ...existingItem,\n ...patchItem, // Apply all top-level fields from patchItem\n attrib: {\n ...existingItem.attrib,\n ...(patchItem.attrib || {}), // Merge attrib safely\n },\n }\n Object.assign(page.items[itemIndex], updatedItem)\n\n if (patchItem.position !== undefined) {\n overallPositionChanged = true\n }\n }\n })\n }\n\n if (overallPositionChanged) {\n // Collect all items from all pages for this specific cache entry\n let allItems = draft.pages.flatMap((page) => page.items)\n\n // Sort all items based on position\n allItems.sort((a, b) => {\n const posA = typeof a.position === 'number' ? a.position : Infinity\n const posB = typeof b.position === 'number' ? b.position : Infinity\n return posA - posB\n })\n\n // Re-distribute sorted items back into pages, maintaining original page sizes\n let currentItemIndex = 0\n for (const page of draft.pages) {\n const pageItemCount = page.items.length // Get original item count for this page\n // Replace page items with the corresponding slice from the globally sorted list\n page.items = allItems.slice(currentItemIndex, currentItemIndex + pageItemCount)\n currentItemIndex += pageItemCount\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n invalidatesTags: (_s, _e, { listId, entityListMultiPatchModel: { items } }) => {\n const tags = [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ...(items || []).flatMap((i) =>\n (i.id ? [{ type: 'entityListItem', id: i.id }] : []).concat(\n i.entityId ? [{ type: 'entityListItem', id: i.entityId }] : [],\n ),\n ),\n ]\n return tags\n },\n },\n updateEntityListItem: {\n async onQueryStarted(\n { listItemId, entityListItemPatchModel },\n { dispatch, queryFulfilled, getState },\n ) {\n const state = getState()\n // Find all caches that are invalidated by this mutation\n const tags = [{ type: 'entityListItem', id: listItemId }]\n const infiniteEntries = gqlApi.util\n .selectInvalidatedBy(state, tags)\n .filter((e) => e.endpointName === 'getListItemsInfinite')\n\n let patchResults: any[] = []\n for (const entry of infiniteEntries) {\n const patchResult = dispatch(\n gqlApi.util.updateQueryData('getListItemsInfinite', entry.originalArgs, (draft) => {\n for (const page of draft.pages) {\n const listIndex = page.items.findIndex((list) => list.id === listItemId)\n if (listIndex !== -1) {\n const list = page.items[listIndex]\n const newListItem = {\n ...list,\n attrib: {\n ...list.attrib,\n ...entityListItemPatchModel.attrib,\n },\n }\n // Update the list with the new data\n Object.assign(list, newListItem)\n break\n }\n }\n }),\n )\n // Store the patch result to undo it later if needed\n patchResults.push(patchResult)\n }\n try {\n await queryFulfilled\n } catch {\n patchResults.forEach((patchResult) => {\n // Undo the optimistic update if the mutation fails\n patchResult.undo()\n })\n }\n },\n },\n createEntityListItem: {\n invalidatesTags: (_s, _e, { listId }) => [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ],\n },\n deleteEntityListItem: {\n invalidatesTags: (_s, _e, { listId }) => [\n { type: 'entityList', id: listId },\n { type: 'entityListItem', id: listId },\n ],\n },\n },\n})\n\n// inject review addon endpoint Create Session From List\nconst updateListsInjectedApi = updateListsEnhancedApi.injectEndpoints({\n endpoints: (build) => ({\n createSessionFromList: build.mutation<\n CreateSessionFromListApiResponse,\n CreateSessionFromListApiArg\n >({\n query: (queryArg) => ({\n url: `/api/addons/review/${queryArg.addonVersion}/${queryArg.projectName}/sessions/fromList`,\n method: 'POST',\n body: queryArg.sessionFromListRequest,\n }),\n transformErrorResponse: (error: any) => error.data.detail,\n invalidatesTags: () => [{ type: 'entityList', id: 'LIST' }],\n }),\n }),\n})\n\nexport const {\n // LIST MUTATIONS\n useCreateEntityListMutation,\n useUpdateEntityListMutation,\n useDeleteEntityListMutation,\n // LIST ITEM MUTATIONS\n useUpdateEntityListItemsMutation,\n useUpdateEntityListItemMutation,\n useCreateEntityListItemMutation,\n useDeleteEntityListItemMutation,\n // REVIEW SESSION MUTATIONS\n useCreateSessionFromListMutation,\n} = updateListsInjectedApi\nexport { updateListsInjectedApi as entityListsQueriesRest, gqlApi as entityListsQueriesGql }\n"],"names":["updateListsEnhancedApi","entityListsApi","listId","entityListPatchModel","dispatch","queryFulfilled","getState","state","tags","infiniteEntries","gqlApi","e","patchResults","entry","patchResult","draft","page","listIndex","list","entityListEntries","error","entityListMultiPatchModel","overallPositionChanged","_a","patchItem","itemIndex","item","existingItem","updatedItem","allItems","a","b","posA","posB","currentItemIndex","pageItemCount","_s","_e","items","i","listItemId","entityListItemPatchModel","newListItem","updateListsInjectedApi","build","queryArg","useCreateEntityListMutation","useUpdateEntityListMutation","useDeleteEntityListMutation","useUpdateEntityListItemsMutation","useUpdateEntityListItemMutation","useCreateEntityListItemMutation","useDeleteEntityListItemMutation","useCreateSessionFromListMutation"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const v=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");const R=require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const E=require("./utils/formatEntityLinks.cjs.js"),S={folder:"GetFoldersLinks",task:"GetTasksLinks",product:"GetProductsLinks",version:"GetVersionsLinks",representation:"GetRepresentationsLinks",workfile:"GetWorkfilesLinks"},$={folder:"folders",task:"tasks",product:"products",version:"versions",representation:"representations",workfile:"workfiles"},m=R.api.injectEndpoints({endpoints:w=>({getEntityLinks:w.query({queryFn:async({projectName:e,entityIds:i,entityType:r},{getState:t,dispatch:o,queryCacheKey:h,forced:T})=>{var d,p,c,y,f;try{const u=t(),G=JSON.stringify({projectName:e,entityType:r}),a=(p=(d=u.restApi)==null?void 0:d.queries)==null?void 0:p[h||`getEntityLinks(${G})`],l=(a==null?void 0:a.data)||[],q=new Set(l.map(s=>s.id)),k=i.filter(s=>!(q!=null&&q.has(s))||T);if(k.length===0)return{data:l};const b=S[r],j=$[r];return{data:((f=(y=(c=(await o(v.api.endpoints[b].initiate({projectName:e,entityIds:k},{forceRefetch:!0})).unwrap()).project)==null?void 0:c[j])==null?void 0:y.edges)==null?void 0:f.map(({node:s})=>{var L;return{id:s.id,links:((L=s.links.edges)==null?void 0:L.map(n=>({...n,node:{id:n.node.id,name:n.node.name,label:E.formatEntityLabel(n.node),parents:n.node.parents||[],subType:"subType"in n.node?n.node.subType:void 0}})))||[]}}))||[]}}catch(u){return console.error(`Error in getEntityLinks queryFn for ${r}:`,u),{error:{status:"FETCH_ERROR",error:u.message}}}},serializeQueryArgs:({queryArgs:e})=>({projectName:e.projectName,entityType:e.entityType}),forceRefetch:({currentArg:e,previousArg:i})=>{if(!e||!i)return!0;const r=new Set(e.entityIds),t=new Set(i.entityIds);if(r.size!==t.size)return!0;for(const o of r)if(!t.has(o))return!0;return!1},merge:(e,i)=>{if(!e)return i;const r=new Map(e.map(t=>[t.id,t]));for(const t of i)r.set(t.id,t);e.length=0,e.push(...r.values())},providesTags:(e,i,r)=>e?[...e.flatMap(t=>t.links.map(o=>({type:"link",id:o.node.id}))),{type:"link",id:`${r.projectName}-${r.entityType}`}]:[{type:"link",id:`${r.projectName}-${r.entityType}`}]})})}),{useGetEntityLinksQuery:F}=m;exports.entityLinksApi=m;exports.useGetEntityLinksQuery=F;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const E=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");const R=require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const $=require("./utils/formatEntityLinks.cjs.js"),S=require("react-toastify"),F={folder:"GetFoldersLinks",task:"GetTasksLinks",product:"GetProductsLinks",version:"GetVersionsLinks",representation:"GetRepresentationsLinks",workfile:"GetWorkfilesLinks"},I={folder:"folders",task:"tasks",product:"products",version:"versions",representation:"representations",workfile:"workfiles"},h=R.api.injectEndpoints({endpoints:w=>({getEntityLinks:w.query({queryFn:async({projectName:e,entityIds:s,entityType:r},{getState:t,dispatch:o,queryCacheKey:T,forced:G})=>{var d,c,p,f,y;try{const u=t(),b=JSON.stringify({projectName:e,entityType:r}),a=(c=(d=u.restApi)==null?void 0:d.queries)==null?void 0:c[T||`getEntityLinks(${b})`],l=(a==null?void 0:a.data)||[],q=new Set(l.map(n=>n.id)),k=s.filter(n=>!(q!=null&&q.has(n))||G);if(k.length===0)return{data:l};const j=F[r],v=I[r];return{data:((y=(f=(p=(await o(E.api.endpoints[j].initiate({projectName:e,entityIds:k},{forceRefetch:!0})).unwrap()).project)==null?void 0:p[v])==null?void 0:f.edges)==null?void 0:y.map(({node:n})=>{var L,m;return{id:n.id,links:((m=(L=n.links.edges)==null?void 0:L.filter(i=>!!(i!=null&&i.node)))==null?void 0:m.map(i=>({...i,node:{id:i.node.id,name:i.node.name,label:$.formatEntityLabel(i.node),parents:i.node.parents||[],subType:"subType"in i.node?i.node.subType:void 0}})))||[]}}))||[]}}catch(u){return console.error(`Error in getEntityLinks queryFn for ${r}:`,u),S.toast.error(`Error fetching ${r} links`),{error:{status:"FETCH_ERROR",error:u.message}}}},serializeQueryArgs:({queryArgs:e})=>({projectName:e.projectName,entityType:e.entityType}),forceRefetch:({currentArg:e,previousArg:s})=>{if(!e||!s)return!0;const r=new Set(e.entityIds),t=new Set(s.entityIds);if(r.size!==t.size)return!0;for(const o of r)if(!t.has(o))return!0;return!1},merge:(e,s)=>{if(!e)return s;const r=new Map(e.map(t=>[t.id,t]));for(const t of s)r.set(t.id,t);e.length=0,e.push(...r.values())},providesTags:(e,s,r)=>e?[...e.flatMap(t=>t.links.map(o=>({type:"link",id:o.node.id}))),{type:"link",id:`${r.projectName}-${r.entityType}`}]:[{type:"link",id:`${r.projectName}-${r.entityType}`}]})})}),{useGetEntityLinksQuery:g}=h;exports.entityLinksApi=h;exports.useGetEntityLinksQuery=g;
2
2
  //# sourceMappingURL=getEntityLinks.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getEntityLinks.cjs.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node: Pick<EntityLinkQuery['node'], 'name' | 'id'> & {\n label?: string | null\n parents: string[]\n subType: string | undefined\n }\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => ({\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery) => ({\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n })) || [], // Flatten the edges structure\n })) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links.map((link) => ({ type: 'link', id: link.node.id })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cacheEntry","_b","_a","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","_e","_d","_c","gqlLinksApi","node","linkEdge","formatEntityLabel","error","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","link","useGetEntityLinksQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getEntityLinks.cjs.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\nimport { toast } from 'react-toastify'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node: Pick<EntityLinkQuery['node'], 'name' | 'id'> & {\n label?: string | null\n parents: string[]\n subType: string | undefined\n }\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => ({\n id: node.id,\n links:\n node.links.edges\n ?.filter((e: EntityLinkQuery | null) => !!e?.node)\n ?.map((linkEdge: EntityLinkQuery) => ({\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n })) || [], // Flatten the edges structure\n })) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n toast.error(`Error fetching ${entityType} links`)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links.map((link) => ({ type: 'link', id: link.node.id })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cacheEntry","_b","_a","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","_e","_d","_c","gqlLinksApi","node","e","linkEdge","formatEntityLabel","error","toast","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","link","useGetEntityLinksQuery"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import "../../base/client.es.js";
2
2
  import "../../generated/graphql.es.js";
3
- import { api as $ } from "../../generated/graphqlLinks.es.js";
3
+ import { api as v } from "../../generated/graphqlLinks.es.js";
4
4
  import "../../generated/access.es.js";
5
5
  import "../../generated/actions.es.js";
6
6
  import "../../generated/activityFeed.es.js";
@@ -14,7 +14,7 @@ import "../../generated/desktop.es.js";
14
14
  import "../../generated/entityLists.es.js";
15
15
  import "../../generated/events.es.js";
16
16
  import "../../generated/files.es.js";
17
- import { api as v } from "../../generated/folders.es.js";
17
+ import { api as b } from "../../generated/folders.es.js";
18
18
  import "../../generated/inbox.es.js";
19
19
  import "../../generated/links.es.js";
20
20
  import "../../generated/market.es.js";
@@ -36,88 +36,89 @@ import "../../generated/workfiles.es.js";
36
36
  import "../../generated/ynputCloud.es.js";
37
37
  import "../../generated/grouping.es.js";
38
38
  import "../../generated/views.es.js";
39
- import { formatEntityLabel as b } from "./utils/formatEntityLinks.es.js";
40
- const F = {
39
+ import { formatEntityLabel as E } from "./utils/formatEntityLinks.es.js";
40
+ import { toast as F } from "react-toastify";
41
+ const I = {
41
42
  folder: "GetFoldersLinks",
42
43
  task: "GetTasksLinks",
43
44
  product: "GetProductsLinks",
44
45
  version: "GetVersionsLinks",
45
46
  representation: "GetRepresentationsLinks",
46
47
  workfile: "GetWorkfilesLinks"
47
- }, I = {
48
+ }, N = {
48
49
  folder: "folders",
49
50
  task: "tasks",
50
51
  product: "products",
51
52
  version: "versions",
52
53
  representation: "representations",
53
54
  workfile: "workfiles"
54
- }, E = v.injectEndpoints({
55
- endpoints: (w) => ({
56
- getEntityLinks: w.query({
57
- queryFn: async ({ projectName: t, entityIds: r, entityType: e }, { getState: i, dispatch: n, queryCacheKey: h, forced: R }) => {
58
- var d, c, u, f, y;
55
+ }, S = b.injectEndpoints({
56
+ endpoints: (h) => ({
57
+ getEntityLinks: h.query({
58
+ queryFn: async ({ projectName: t, entityIds: o, entityType: e }, { getState: r, dispatch: n, queryCacheKey: R, forced: j }) => {
59
+ var d, c, f, u, l;
59
60
  try {
60
- const p = i(), j = JSON.stringify({ projectName: t, entityType: e }), m = (c = (d = p.restApi) == null ? void 0 : d.queries) == null ? void 0 : c[h || `getEntityLinks(${j})`], l = (m == null ? void 0 : m.data) || [], a = new Set(l.map((s) => s.id)), k = r.filter((s) => !(a != null && a.has(s)) || R);
61
+ const p = r(), $ = JSON.stringify({ projectName: t, entityType: e }), m = (c = (d = p.restApi) == null ? void 0 : d.queries) == null ? void 0 : c[R || `getEntityLinks(${$})`], y = (m == null ? void 0 : m.data) || [], a = new Set(y.map((s) => s.id)), k = o.filter((s) => !(a != null && a.has(s)) || j);
61
62
  if (k.length === 0)
62
- return { data: l };
63
- const T = F[e], G = I[e];
64
- return { data: ((y = (f = (u = (await n(
65
- $.endpoints[T].initiate(
63
+ return { data: y };
64
+ const G = I[e], T = N[e];
65
+ return { data: ((l = (u = (f = (await n(
66
+ v.endpoints[G].initiate(
66
67
  { projectName: t, entityIds: k },
67
68
  { forceRefetch: !0 }
68
69
  )
69
- ).unwrap()).project) == null ? void 0 : u[G]) == null ? void 0 : f.edges) == null ? void 0 : y.map(({ node: s }) => {
70
- var L;
70
+ ).unwrap()).project) == null ? void 0 : f[T]) == null ? void 0 : u.edges) == null ? void 0 : l.map(({ node: s }) => {
71
+ var L, w;
71
72
  return {
72
73
  id: s.id,
73
- links: ((L = s.links.edges) == null ? void 0 : L.map((o) => ({
74
- ...o,
74
+ links: ((w = (L = s.links.edges) == null ? void 0 : L.filter((i) => !!(i != null && i.node))) == null ? void 0 : w.map((i) => ({
75
+ ...i,
75
76
  node: {
76
- id: o.node.id,
77
- name: o.node.name,
78
- label: b(o.node),
79
- parents: o.node.parents || [],
80
- subType: "subType" in o.node ? o.node.subType : void 0
77
+ id: i.node.id,
78
+ name: i.node.name,
79
+ label: E(i.node),
80
+ parents: i.node.parents || [],
81
+ subType: "subType" in i.node ? i.node.subType : void 0
81
82
  }
82
83
  }))) || []
83
84
  // Flatten the edges structure
84
85
  };
85
86
  })) || [] };
86
87
  } catch (p) {
87
- return console.error(`Error in getEntityLinks queryFn for ${e}:`, p), { error: { status: "FETCH_ERROR", error: p.message } };
88
+ return console.error(`Error in getEntityLinks queryFn for ${e}:`, p), F.error(`Error fetching ${e} links`), { error: { status: "FETCH_ERROR", error: p.message } };
88
89
  }
89
90
  },
90
91
  // 2. We should not create new caches when the entityIds argument changes.
91
92
  serializeQueryArgs: ({ queryArgs: t }) => ({ projectName: t.projectName, entityType: t.entityType }),
92
93
  // 3. We should force a refetch every time the entityIds changes.
93
- forceRefetch: ({ currentArg: t, previousArg: r }) => {
94
- if (!t || !r) return !0;
95
- const e = new Set(t.entityIds), i = new Set(r.entityIds);
96
- if (e.size !== i.size) return !0;
94
+ forceRefetch: ({ currentArg: t, previousArg: o }) => {
95
+ if (!t || !o) return !0;
96
+ const e = new Set(t.entityIds), r = new Set(o.entityIds);
97
+ if (e.size !== r.size) return !0;
97
98
  for (const n of e)
98
- if (!i.has(n)) return !0;
99
+ if (!r.has(n)) return !0;
99
100
  return !1;
100
101
  },
101
102
  // 4. We should merge new entities into the cache ensuring there are no duplicates.
102
- merge: (t, r) => {
103
- if (!t) return r;
104
- const e = new Map(t.map((i) => [i.id, i]));
105
- for (const i of r)
106
- e.set(i.id, i);
103
+ merge: (t, o) => {
104
+ if (!t) return o;
105
+ const e = new Map(t.map((r) => [r.id, r]));
106
+ for (const r of o)
107
+ e.set(r.id, r);
107
108
  t.length = 0, t.push(...e.values());
108
109
  },
109
110
  // Provide tags for potential invalidation
110
- providesTags: (t, r, e) => t ? [
111
+ providesTags: (t, o, e) => t ? [
111
112
  ...t.flatMap(
112
- (i) => i.links.map((n) => ({ type: "link", id: n.node.id }))
113
+ (r) => r.links.map((n) => ({ type: "link", id: n.node.id }))
113
114
  ),
114
115
  { type: "link", id: `${e.projectName}-${e.entityType}` }
115
116
  ] : [{ type: "link", id: `${e.projectName}-${e.entityType}` }]
116
117
  })
117
118
  })
118
- }), { useGetEntityLinksQuery: Lt } = E;
119
+ }), { useGetEntityLinksQuery: Rt } = S;
119
120
  export {
120
- E as entityLinksApi,
121
- Lt as useGetEntityLinksQuery
121
+ S as entityLinksApi,
122
+ Rt as useGetEntityLinksQuery
122
123
  };
123
124
  //# sourceMappingURL=getEntityLinks.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getEntityLinks.es.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node: Pick<EntityLinkQuery['node'], 'name' | 'id'> & {\n label?: string | null\n parents: string[]\n subType: string | undefined\n }\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => ({\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery) => ({\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n })) || [], // Flatten the edges structure\n })) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links.map((link) => ({ type: 'link', id: link.node.id })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cacheEntry","_b","_a","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","_e","_d","_c","gqlLinksApi","node","linkEdge","formatEntityLabel","error","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","link","useGetEntityLinksQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getEntityLinks.es.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\nimport { toast } from 'react-toastify'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node: Pick<EntityLinkQuery['node'], 'name' | 'id'> & {\n label?: string | null\n parents: string[]\n subType: string | undefined\n }\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => ({\n id: node.id,\n links:\n node.links.edges\n ?.filter((e: EntityLinkQuery | null) => !!e?.node)\n ?.map((linkEdge: EntityLinkQuery) => ({\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n })) || [], // Flatten the edges structure\n })) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n toast.error(`Error fetching ${entityType} links`)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links.map((link) => ({ type: 'link', id: link.node.id })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cacheEntry","_b","_a","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","_e","_d","_c","gqlLinksApi","node","e","linkEdge","formatEntityLabel","error","toast","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","link","useGetEntityLinksQuery"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const f=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");const A=require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const G=require("@reduxjs/toolkit"),v=require("./getEntityLinks.cjs.js"),$=async(s,t,e,i)=>{switch(s){case"task":{const n=await i(f.api.endpoints.GetTaskLinkData.initiate({projectName:e,taskId:t})).unwrap();return n==null?void 0:n.project.task}case"folder":{const n=await i(f.api.endpoints.GetFolderLinkData.initiate({projectName:e,folderId:t})).unwrap();return n==null?void 0:n.project.folder}case"product":{const n=await i(f.api.endpoints.GetProductLinkData.initiate({projectName:e,productId:t})).unwrap();return n==null?void 0:n.project.product}case"version":{const n=await i(f.api.endpoints.GetVersionLinkData.initiate({projectName:e,versionId:t})).unwrap();return n==null?void 0:n.project.version}case"representation":{const n=await i(f.api.endpoints.GetRepresentationLinkData.initiate({projectName:e,representationId:t})).unwrap();return n==null?void 0:n.project.representation}case"workfile":{const n=await i(f.api.endpoints.GetWorkfileLinkData.initiate({projectName:e,workfileId:t})).unwrap();return n==null?void 0:n.project.workfile}default:throw new Error(`Unknown entity type: ${s}`)}},S=({projectName:s,sourceEntity:t,targetEntity:e,linkId:i,linkType:n,direction:p,isDelete:c=!1},{state:d,dispatch:q},k=[])=>{const u=(a,r,b)=>{const E=[{type:"link",id:`${s}-${a.entityType}`}],D=v.entityLinksApi.util.selectInvalidatedBy(d,E);for(const g of D)if(g.endpointName==="getEntityLinks"){console.log(`Patching ${a.entityType} links cache`,g);const L=q(v.entityLinksApi.util.updateQueryData("getEntityLinks",g.originalArgs,T=>{console.log(`Patching ${a.entityType} links cache`);const l=T.find(o=>o.id===a.entityId);if(!l){console.warn(`${a.entityType} ${a.entityId} not found in cache`);return}if(c)l.links=l.links.filter(o=>o.id!==i);else{console.log(`Adding new link to ${a.entityType}`);const o={id:i,direction:b,linkType:n,entityType:r.entityType,node:{id:r.entityId,name:r.name,label:r.label,parents:r.parents,subType:r.subType}},y=l.links.findIndex(I=>I.id===i);y!==-1?l.links[y]=o:(console.log(`Adding new link to ${a.entityType} links cache`,o,G.current(l)),l.links.push(o))}}));k.push(L)}};u(t,e,p),u(e,t,p==="in"?"out":"in")},M=A.api.enhanceEndpoints({endpoints:{deleteEntityLink:{transformErrorResponse:s=>{var t;return((t=s.data)==null?void 0:t.detail)||""},async onQueryStarted({linkId:s,projectName:t,patch:e},{dispatch:i,getState:n,queryFulfilled:p}){const c=n();let d=[];const q=e==null?void 0:e.source,k=e==null?void 0:e.target,u=(e==null?void 0:e.linkType)||"",w=(e==null?void 0:e.direction)||"out";if(q&&k)try{S({projectName:t,sourceEntity:q,targetEntity:k,linkId:s,linkType:u,direction:w,isDelete:!0},{state:c,dispatch:i},d),await p}catch(a){console.error("Error patching entities during link deletion:",a);for(const r of d)r.undo()}else console.warn("Source or target entity not provided for link deletion")}},createEntityLink:{transformErrorResponse:s=>{var t;return((t=s.data)==null?void 0:t.detail)||""},async onQueryStarted({projectName:s,createLinkRequestModel:t,patch:e},{dispatch:i,getState:n,queryFulfilled:p}){const{linkType:c,id:d}=t,q=n();let k=[];const u=e==null?void 0:e.source,w=u==null?void 0:u.entityType,a=u==null?void 0:u.entityId,r=e==null?void 0:e.target,b=r==null?void 0:r.entityType,E=r==null?void 0:r.entityId,D=(e==null?void 0:e.direction)||"out",g=c==null?void 0:c.split("|")[0];try{if(u.entityType&&r){const L=$(w,a,s,i),T=$(b,E,s,i),l=await Promise.all([L,T]),o=l[0],y=l[1];if(!o||!y)throw new Error("Source or target entity data not found");if(!d)throw new Error("Link ID not found in cache entry");const I={entityType:w,entityId:a,name:o.name,label:"label"in o?o.label:void 0,parents:o.parents||[],subType:"subType"in o?o.subType:void 0},m={entityType:b,entityId:E,name:y.name,label:"label"in y?y.label:void 0,parents:y.parents||[],subType:"subType"in y?y.subType:void 0};S({projectName:s,sourceEntity:I,targetEntity:m,linkId:d,linkType:g,direction:D,isDelete:!1},{state:q,dispatch:i},k),await p}else throw console.warn("Source entity type not provided, falling back to task query"),new Error("Source entity type not provided")}catch(L){console.error(L);for(const T of k)T.undo()}}}}}),{useDeleteEntityLinkMutation:C,useCreateEntityLinkMutation:x}=M;exports.useCreateEntityLinkMutation=x;exports.useDeleteEntityLinkMutation=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const g=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");const C=require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const G=require("@reduxjs/toolkit"),L=require("./getEntityLinks.cjs.js"),A=async(s,i,e,t)=>{switch(s){case"task":{const n=await t(g.api.endpoints.GetTaskLinkData.initiate({projectName:e,taskId:i})).unwrap();return n==null?void 0:n.project.task}case"folder":{const n=await t(g.api.endpoints.GetFolderLinkData.initiate({projectName:e,folderId:i})).unwrap();return n==null?void 0:n.project.folder}case"product":{const n=await t(g.api.endpoints.GetProductLinkData.initiate({projectName:e,productId:i})).unwrap();return n==null?void 0:n.project.product}case"version":{const n=await t(g.api.endpoints.GetVersionLinkData.initiate({projectName:e,versionId:i})).unwrap();return n==null?void 0:n.project.version}case"representation":{const n=await t(g.api.endpoints.GetRepresentationLinkData.initiate({projectName:e,representationId:i})).unwrap();return n==null?void 0:n.project.representation}case"workfile":{const n=await t(g.api.endpoints.GetWorkfileLinkData.initiate({projectName:e,workfileId:i})).unwrap();return n==null?void 0:n.project.workfile}default:throw new Error(`Unknown entity type: ${s}`)}},S=({projectName:s,sourceEntity:i,targetEntity:e,linkId:t,linkType:n,direction:f,isDelete:p=!1},{state:k,dispatch:y},d=[])=>{const l=(r,o,T)=>{const v=L.entityLinksApi.util.selectCachedArgsForQuery(k,"getEntityLinks").filter(c=>c.projectName===s&&c.entityType===r.entityType);let b=!1;for(const c of v)try{const q=y(L.entityLinksApi.util.updateQueryData("getEntityLinks",c,$=>{const a=$.find(u=>u.id===r.entityId);if(a)if(b=!0,console.log(`Found and patching ${r.entityType} ${r.entityId} in cache`),p)a.links=a.links.filter(u=>u.id!==t);else{console.log(`Adding new link to ${r.entityType}`);const u={id:t,direction:T,linkType:n,entityType:o.entityType,node:{id:o.entityId,name:o.name,label:o.label,parents:o.parents,subType:o.subType}},E=a.links.findIndex(D=>D.id===t);E!==-1?a.links[E]=u:(console.log(`Adding new link to ${r.entityType} links cache`,u,G.current(a)),a.links.push(u))}}));d.push(q)}catch(q){console.error(`Error patching cache for ${r.entityType}:`,q)}b||(r.entityId===i.entityId?(console.warn(`Source ${r.entityType} ${r.entityId} not in cache - invalidating to refresh UI`),y(L.entityLinksApi.util.invalidateTags([{type:"link",id:`${s}-${r.entityType}`}]))):console.log(`Target ${r.entityType} ${r.entityId} not in cache - skipping patch (entity not currently visible)`))};l(i,e,f),l(e,i,f==="in"?"out":"in")},M=C.api.enhanceEndpoints({endpoints:{deleteEntityLink:{transformErrorResponse:s=>{var i;return((i=s.data)==null?void 0:i.detail)||""},async onQueryStarted({linkId:s,projectName:i,patch:e},{dispatch:t,getState:n,queryFulfilled:f}){const p=n();let k=[];const y=e==null?void 0:e.source,d=e==null?void 0:e.target,l=(e==null?void 0:e.linkType)||"",w=(e==null?void 0:e.direction)||"out";if(y&&d)try{S({projectName:i,sourceEntity:y,targetEntity:d,linkId:s,linkType:l,direction:w,isDelete:!0},{state:p,dispatch:t},k),await f}catch(r){console.error("Error patching entities during link deletion:",r);for(const o of k)o.undo();t(L.entityLinksApi.util.invalidateTags([{type:"link",id:`${i}-${y.entityType}`},{type:"link",id:`${i}-${d.entityType}`}]))}else console.warn("Source or target entity not provided for link deletion")}},createEntityLink:{transformErrorResponse:s=>{var i;return((i=s.data)==null?void 0:i.detail)||""},async onQueryStarted({projectName:s,createLinkRequestModel:i,patch:e},{dispatch:t,getState:n,queryFulfilled:f}){const{linkType:p,id:k}=i,y=n();let d=[];const l=e==null?void 0:e.source,w=l==null?void 0:l.entityType,r=l==null?void 0:l.entityId,o=e==null?void 0:e.target,T=o==null?void 0:o.entityType,I=o==null?void 0:o.entityId,v=(e==null?void 0:e.direction)||"out",b=p==null?void 0:p.split("|")[0];try{if(l.entityType&&o){const c=A(w,r,s,t),q=A(T,I,s,t),$=await Promise.all([c,q]),a=$[0],u=$[1];if(!a||!u)throw new Error("Source or target entity data not found");if(!k)throw new Error("Link ID not found in cache entry");const E={entityType:w,entityId:r,name:a.name,label:"label"in a?a.label:void 0,parents:a.parents||[],subType:"subType"in a?a.subType:void 0},D={entityType:T,entityId:I,name:u.name,label:"label"in u?u.label:void 0,parents:u.parents||[],subType:"subType"in u?u.subType:void 0};S({projectName:s,sourceEntity:E,targetEntity:D,linkId:k,linkType:b,direction:v,isDelete:!1},{state:y,dispatch:t},d),await f}else throw console.warn("Source entity type not provided, falling back to task query"),new Error("Source entity type not provided")}catch(c){console.error(c);for(const q of d)q.undo();l&&o&&t(L.entityLinksApi.util.invalidateTags([{type:"link",id:`${s}-${l.entityType}`},{type:"link",id:`${s}-${o.entityType}`}]))}}}}}),{useDeleteEntityLinkMutation:Q,useCreateEntityLinkMutation:x}=M;exports.useCreateEntityLinkMutation=x;exports.useDeleteEntityLinkMutation=Q;
2
2
  //# sourceMappingURL=updateLinks.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateLinks.cjs.js","sources":["../../../../../../src/api/queries/links/updateLinks.ts"],"sourcesContent":["import { gqlLinksApi, linksApi } from '@shared/api/generated'\nimport { RootState } from '@reduxjs/toolkit/query'\nimport { current, ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EntityLink, EntityWithLinks, entityLinksApi } from './getEntityLinks'\n\ntype Entity = {\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile'\n entityId: string\n name: string\n label?: string | null\n parents: string[]\n subType: string | undefined // Optional subtype for folders, products, versions\n}\n\n// Helper function to get entity data by type\nconst getEntityDataByType = async (\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile',\n entityId: string,\n projectName: string,\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n) => {\n switch (entityType) {\n case 'task': {\n const resTask = await dispatch(\n gqlLinksApi.endpoints.GetTaskLinkData.initiate({\n projectName,\n taskId: entityId,\n }),\n ).unwrap()\n return resTask?.project.task\n }\n case 'folder': {\n const resFolder = await dispatch(\n gqlLinksApi.endpoints.GetFolderLinkData.initiate({\n projectName,\n folderId: entityId,\n }),\n ).unwrap()\n return resFolder?.project.folder\n }\n case 'product': {\n const resProduct = await dispatch(\n gqlLinksApi.endpoints.GetProductLinkData.initiate({\n projectName,\n productId: entityId,\n }),\n ).unwrap()\n return resProduct?.project.product\n }\n case 'version': {\n const resVersion = await dispatch(\n gqlLinksApi.endpoints.GetVersionLinkData.initiate({\n projectName,\n versionId: entityId,\n }),\n ).unwrap()\n return resVersion?.project.version\n }\n case 'representation': {\n const resRepresentation = await dispatch(\n gqlLinksApi.endpoints.GetRepresentationLinkData.initiate({\n projectName,\n representationId: entityId,\n }),\n ).unwrap()\n return resRepresentation?.project.representation\n }\n case 'workfile': {\n const resWorkfile = await dispatch(\n gqlLinksApi.endpoints.GetWorkfileLinkData.initiate({\n projectName,\n workfileId: entityId,\n }),\n ).unwrap()\n return resWorkfile?.project.workfile\n }\n default:\n throw new Error(`Unknown entity type: ${entityType}`)\n }\n}\n\n// Helper function to patch entity links cache for all entity types\nconst patchEntityLinksCache = (\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete = false,\n }: {\n projectName: string\n sourceEntity: Entity\n targetEntity: Entity\n linkId: string\n linkType: string\n direction: 'in' | 'out'\n isDelete?: boolean\n },\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches: any[] = [],\n) => {\n // Helper function to patch a single entity's links\n const patchEntityLinks = (\n entityToPatch: Entity,\n otherEntity: Entity,\n linkDirection: 'in' | 'out',\n ) => {\n // Get the entity links cache entries for this project and entity type\n const tags = [{ type: 'link', id: `${projectName}-${entityToPatch.entityType}` }]\n const entries = entityLinksApi.util.selectInvalidatedBy(state, tags)\n\n for (const entry of entries) {\n if (entry.endpointName === 'getEntityLinks') {\n console.log(`Patching ${entityToPatch.entityType} links cache`, entry)\n const patch = dispatch(\n entityLinksApi.util.updateQueryData(\n 'getEntityLinks',\n entry.originalArgs,\n (draft: EntityWithLinks[]) => {\n console.log(`Patching ${entityToPatch.entityType} links cache`)\n // Find the entity in the cache\n const entityInCache = draft.find((entity) => entity.id === entityToPatch.entityId)\n if (!entityInCache) {\n console.warn(\n `${entityToPatch.entityType} ${entityToPatch.entityId} not found in cache`,\n )\n return\n }\n if (isDelete) {\n // Remove the link from the entity\n entityInCache.links = entityInCache.links.filter((link) => link.id !== linkId)\n } else {\n console.log(`Adding new link to ${entityToPatch.entityType}`)\n // Add the new link to the entity\n const newLink: EntityLink = {\n id: linkId,\n direction: linkDirection,\n linkType,\n entityType: otherEntity.entityType,\n node: {\n id: otherEntity.entityId,\n name: otherEntity.name,\n label: otherEntity.label,\n parents: otherEntity.parents,\n subType: otherEntity.subType,\n },\n }\n\n // Check if link already exists and update it, or add new one\n const existingLinkIndex = entityInCache.links.findIndex(\n (link) => link.id === linkId,\n )\n\n if (existingLinkIndex !== -1) {\n entityInCache.links[existingLinkIndex] = newLink\n } else {\n console.log(\n `Adding new link to ${entityToPatch.entityType} links cache`,\n newLink,\n current(entityInCache),\n )\n entityInCache.links.push(newLink)\n }\n }\n },\n ),\n )\n\n patches.push(patch)\n }\n }\n }\n\n // Patch the source entity with the link\n patchEntityLinks(sourceEntity, targetEntity, direction)\n\n // Patch the target entity with the link (flip direction)\n const targetDirection = direction === 'in' ? 'out' : 'in'\n patchEntityLinks(targetEntity, sourceEntity, targetDirection)\n}\n\nconst enhancedApi = linksApi.enhanceEndpoints({\n endpoints: {\n deleteEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { linkId, projectName, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const state = getState()\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const targetEntity = patch?.target\n const linkType = patch?.linkType || ''\n const direction = patch?.direction || 'out'\n\n if (sourceEntity && targetEntity) {\n try {\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete: true,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish\n await queryFulfilled\n } catch (error) {\n console.error('Error patching entities during link deletion:', error)\n // Undo patches if there's an error\n for (const patch of patches) {\n patch.undo()\n }\n }\n } else {\n console.warn('Source or target entity not provided for link deletion')\n }\n },\n },\n createEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { projectName, createLinkRequestModel, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const { linkType, id: linkId } = createLinkRequestModel\n const state = getState()\n\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const sourceEntityType = sourceEntity?.entityType\n const sourceEntityId = sourceEntity?.entityId\n const targetEntity = patch?.target\n const targetEntityType = targetEntity?.entityType\n const targetEntityId = targetEntity?.entityId\n const direction = patch?.direction || ('out' as 'in' | 'out')\n const linkTypeName = linkType?.split('|')[0] as string\n\n try {\n if (sourceEntity.entityType && targetEntity) {\n // Get the source entity data based on its type\n const sourcePromise = getEntityDataByType(\n sourceEntityType,\n sourceEntityId,\n projectName,\n dispatch,\n )\n\n const targetPromise = getEntityDataByType(\n targetEntityType,\n targetEntityId,\n projectName,\n dispatch,\n )\n\n // Wait for both cache data and source entity data to be loaded\n const res = await Promise.all([sourcePromise, targetPromise])\n const sourceEntityData = res[0]\n const targetEntityData = res[1]\n\n if (!sourceEntityData || !targetEntityData) {\n throw new Error('Source or target entity data not found')\n }\n\n if (!linkId) {\n throw new Error('Link ID not found in cache entry')\n }\n\n const sourceEntity: Entity = {\n entityType: sourceEntityType,\n entityId: sourceEntityId,\n name: sourceEntityData.name,\n label: 'label' in sourceEntityData ? sourceEntityData.label : undefined,\n parents: sourceEntityData.parents || [],\n subType: 'subType' in sourceEntityData ? sourceEntityData.subType : undefined,\n }\n\n const targetEntity: Entity = {\n entityType: targetEntityType,\n entityId: targetEntityId,\n name: targetEntityData.name,\n label: 'label' in targetEntityData ? targetEntityData.label : undefined,\n parents: targetEntityData.parents || [],\n subType: 'subType' in targetEntityData ? targetEntityData.subType : undefined,\n }\n\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType: linkTypeName,\n direction,\n isDelete: false,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish (undo patches if it fails)\n await queryFulfilled\n } else {\n console.warn('Source entity type not provided, falling back to task query')\n throw new Error('Source entity type not provided')\n }\n } catch (error) {\n console.error(error)\n\n // Undo patches if the mutation fails\n for (const patch of patches) {\n patch.undo()\n }\n }\n },\n },\n },\n})\n\nexport const { useDeleteEntityLinkMutation, useCreateEntityLinkMutation } = enhancedApi\n"],"names":["getEntityDataByType","entityType","entityId","projectName","dispatch","resTask","gqlLinksApi","resFolder","resProduct","resVersion","resRepresentation","resWorkfile","patchEntityLinksCache","sourceEntity","targetEntity","linkId","linkType","direction","isDelete","state","patches","patchEntityLinks","entityToPatch","otherEntity","linkDirection","tags","entries","entityLinksApi","entry","patch","draft","entityInCache","entity","link","newLink","existingLinkIndex","current","enhancedApi","linksApi","error","_a","getState","queryFulfilled","createLinkRequestModel","sourceEntityType","sourceEntityId","targetEntityType","targetEntityId","linkTypeName","sourcePromise","targetPromise","res","sourceEntityData","targetEntityData","useDeleteEntityLinkMutation","useCreateEntityLinkMutation"],"mappings":"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"}
1
+ {"version":3,"file":"updateLinks.cjs.js","sources":["../../../../../../src/api/queries/links/updateLinks.ts"],"sourcesContent":["import { gqlLinksApi, linksApi } from '@shared/api/generated'\nimport { RootState } from '@reduxjs/toolkit/query'\nimport { current, ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EntityLink, EntityWithLinks, entityLinksApi } from './getEntityLinks'\n\ntype Entity = {\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile'\n entityId: string\n name: string\n label?: string | null\n parents: string[]\n subType: string | undefined // Optional subtype for folders, products, versions\n}\n\n// Helper function to get entity data by type\nconst getEntityDataByType = async (\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile',\n entityId: string,\n projectName: string,\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n) => {\n switch (entityType) {\n case 'task': {\n const resTask = await dispatch(\n gqlLinksApi.endpoints.GetTaskLinkData.initiate({\n projectName,\n taskId: entityId,\n }),\n ).unwrap()\n return resTask?.project.task\n }\n case 'folder': {\n const resFolder = await dispatch(\n gqlLinksApi.endpoints.GetFolderLinkData.initiate({\n projectName,\n folderId: entityId,\n }),\n ).unwrap()\n return resFolder?.project.folder\n }\n case 'product': {\n const resProduct = await dispatch(\n gqlLinksApi.endpoints.GetProductLinkData.initiate({\n projectName,\n productId: entityId,\n }),\n ).unwrap()\n return resProduct?.project.product\n }\n case 'version': {\n const resVersion = await dispatch(\n gqlLinksApi.endpoints.GetVersionLinkData.initiate({\n projectName,\n versionId: entityId,\n }),\n ).unwrap()\n return resVersion?.project.version\n }\n case 'representation': {\n const resRepresentation = await dispatch(\n gqlLinksApi.endpoints.GetRepresentationLinkData.initiate({\n projectName,\n representationId: entityId,\n }),\n ).unwrap()\n return resRepresentation?.project.representation\n }\n case 'workfile': {\n const resWorkfile = await dispatch(\n gqlLinksApi.endpoints.GetWorkfileLinkData.initiate({\n projectName,\n workfileId: entityId,\n }),\n ).unwrap()\n return resWorkfile?.project.workfile\n }\n default:\n throw new Error(`Unknown entity type: ${entityType}`)\n }\n}\n\n// Helper function to patch entity links cache for all entity types\nconst patchEntityLinksCache = (\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete = false,\n }: {\n projectName: string\n sourceEntity: Entity\n targetEntity: Entity\n linkId: string\n linkType: string\n direction: 'in' | 'out'\n isDelete?: boolean\n },\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches: any[] = [],\n) => {\n // Helper function to patch a single entity's links\n const patchEntityLinks = (\n entityToPatch: Entity,\n otherEntity: Entity,\n linkDirection: 'in' | 'out',\n ) => {\n // Get all cached query arguments for the getEntityLinks endpoint\n const cachedArgs = entityLinksApi.util.selectCachedArgsForQuery(state, 'getEntityLinks')\n\n // Filter for queries that match our project and entity type\n const relevantArgs = cachedArgs.filter(\n (args) => args.projectName === projectName && args.entityType === entityToPatch.entityType,\n )\n\n let entityFoundInAnyCache = false\n\n for (const args of relevantArgs) {\n try {\n const patch = dispatch(\n entityLinksApi.util.updateQueryData(\n 'getEntityLinks',\n args,\n (draft: EntityWithLinks[]) => {\n // Find the entity in the cache\n const entityInCache = draft.find((entity) => entity.id === entityToPatch.entityId)\n if (!entityInCache) {\n // Entity not in this specific cache, continue to next one\n return\n }\n\n entityFoundInAnyCache = true\n console.log(\n `Found and patching ${entityToPatch.entityType} ${entityToPatch.entityId} in cache`,\n )\n\n if (isDelete) {\n // Remove the link from the entity\n entityInCache.links = entityInCache.links.filter((link) => link.id !== linkId)\n } else {\n console.log(`Adding new link to ${entityToPatch.entityType}`)\n // Add the new link to the entity\n const newLink: EntityLink = {\n id: linkId,\n direction: linkDirection,\n linkType,\n entityType: otherEntity.entityType,\n node: {\n id: otherEntity.entityId,\n name: otherEntity.name,\n label: otherEntity.label,\n parents: otherEntity.parents,\n subType: otherEntity.subType,\n },\n }\n\n // Check if link already exists and update it, or add new one\n const existingLinkIndex = entityInCache.links.findIndex(\n (link) => link.id === linkId,\n )\n\n if (existingLinkIndex !== -1) {\n entityInCache.links[existingLinkIndex] = newLink\n } else {\n console.log(\n `Adding new link to ${entityToPatch.entityType} links cache`,\n newLink,\n current(entityInCache),\n )\n entityInCache.links.push(newLink)\n }\n }\n },\n ),\n )\n\n patches.push(patch)\n } catch (error) {\n console.error(`Error patching cache for ${entityToPatch.entityType}:`, error)\n }\n }\n\n // If entity was not found in any cache, handle based on context\n if (!entityFoundInAnyCache) {\n // For source entities (where user is creating the link from), we need to invalidate\n // to ensure the user sees the new link appear in the UI\n if (entityToPatch.entityId === sourceEntity.entityId) {\n console.warn(\n `Source ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - invalidating to refresh UI`,\n )\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${entityToPatch.entityType}` },\n ]),\n )\n } else {\n // For target entities, we can skip since they're not currently visible\n console.log(\n `Target ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - skipping patch (entity not currently visible)`,\n )\n // No action needed - when the entity is eventually loaded, it will have the correct links from the server\n }\n }\n }\n\n // Patch the source entity with the link\n patchEntityLinks(sourceEntity, targetEntity, direction)\n\n // Patch the target entity with the link (flip direction)\n const targetDirection = direction === 'in' ? 'out' : 'in'\n patchEntityLinks(targetEntity, sourceEntity, targetDirection)\n}\n\nconst enhancedApi = linksApi.enhanceEndpoints({\n endpoints: {\n deleteEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { linkId, projectName, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const state = getState()\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const targetEntity = patch?.target\n const linkType = patch?.linkType || ''\n const direction = patch?.direction || 'out'\n\n if (sourceEntity && targetEntity) {\n try {\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete: true,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish\n await queryFulfilled\n } catch (error) {\n console.error('Error patching entities during link deletion:', error)\n // Undo patches if there's an error\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n } else {\n console.warn('Source or target entity not provided for link deletion')\n }\n },\n },\n createEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { projectName, createLinkRequestModel, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const { linkType, id: linkId } = createLinkRequestModel\n const state = getState()\n\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const sourceEntityType = sourceEntity?.entityType\n const sourceEntityId = sourceEntity?.entityId\n const targetEntity = patch?.target\n const targetEntityType = targetEntity?.entityType\n const targetEntityId = targetEntity?.entityId\n const direction = patch?.direction || ('out' as 'in' | 'out')\n const linkTypeName = linkType?.split('|')[0] as string\n\n try {\n if (sourceEntity.entityType && targetEntity) {\n // Get the source entity data based on its type\n const sourcePromise = getEntityDataByType(\n sourceEntityType,\n sourceEntityId,\n projectName,\n dispatch,\n )\n\n const targetPromise = getEntityDataByType(\n targetEntityType,\n targetEntityId,\n projectName,\n dispatch,\n )\n\n // Wait for both cache data and source entity data to be loaded\n const res = await Promise.all([sourcePromise, targetPromise])\n const sourceEntityData = res[0]\n const targetEntityData = res[1]\n\n if (!sourceEntityData || !targetEntityData) {\n throw new Error('Source or target entity data not found')\n }\n\n if (!linkId) {\n throw new Error('Link ID not found in cache entry')\n }\n\n const sourceEntity: Entity = {\n entityType: sourceEntityType,\n entityId: sourceEntityId,\n name: sourceEntityData.name,\n label: 'label' in sourceEntityData ? sourceEntityData.label : undefined,\n parents: sourceEntityData.parents || [],\n subType: 'subType' in sourceEntityData ? sourceEntityData.subType : undefined,\n }\n\n const targetEntity: Entity = {\n entityType: targetEntityType,\n entityId: targetEntityId,\n name: targetEntityData.name,\n label: 'label' in targetEntityData ? targetEntityData.label : undefined,\n parents: targetEntityData.parents || [],\n subType: 'subType' in targetEntityData ? targetEntityData.subType : undefined,\n }\n\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType: linkTypeName,\n direction,\n isDelete: false,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish (undo patches if it fails)\n await queryFulfilled\n } else {\n console.warn('Source entity type not provided, falling back to task query')\n throw new Error('Source entity type not provided')\n }\n } catch (error) {\n console.error(error)\n\n // Undo patches if the mutation fails\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n if (sourceEntity && targetEntity) {\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n }\n },\n },\n },\n})\n\nexport const { useDeleteEntityLinkMutation, useCreateEntityLinkMutation } = enhancedApi\n"],"names":["getEntityDataByType","entityType","entityId","projectName","dispatch","resTask","gqlLinksApi","resFolder","resProduct","resVersion","resRepresentation","resWorkfile","patchEntityLinksCache","sourceEntity","targetEntity","linkId","linkType","direction","isDelete","state","patches","patchEntityLinks","entityToPatch","otherEntity","linkDirection","relevantArgs","entityLinksApi","args","entityFoundInAnyCache","patch","draft","entityInCache","entity","link","newLink","existingLinkIndex","current","error","enhancedApi","linksApi","_a","getState","queryFulfilled","createLinkRequestModel","sourceEntityType","sourceEntityId","targetEntityType","targetEntityId","linkTypeName","sourcePromise","targetPromise","res","sourceEntityData","targetEntityData","useDeleteEntityLinkMutation","useCreateEntityLinkMutation"],"mappings":"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"}