@bgx4k3p/huly-mcp-server 2.2.4 → 2.2.5

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 (696) hide show
  1. package/README.md +186 -56
  2. package/node_modules/@hcengineering/account-client/lib/__tests__/utils.test.js +249 -0
  3. package/node_modules/@hcengineering/account-client/lib/__tests__/utils.test.js.map +7 -0
  4. package/node_modules/@hcengineering/account-client/lib/client.js +88 -3
  5. package/node_modules/@hcengineering/account-client/lib/client.js.map +2 -2
  6. package/node_modules/@hcengineering/account-client/lib/types.js.map +2 -2
  7. package/node_modules/@hcengineering/account-client/lib/utils.js +50 -0
  8. package/node_modules/@hcengineering/account-client/lib/utils.js.map +2 -2
  9. package/node_modules/@hcengineering/account-client/package.json +22 -19
  10. package/node_modules/@hcengineering/account-client/src/__tests__/utils.test.ts +304 -0
  11. package/node_modules/@hcengineering/account-client/src/client.ts +127 -6
  12. package/node_modules/@hcengineering/account-client/src/types.ts +7 -0
  13. package/node_modules/@hcengineering/account-client/src/utils.ts +65 -1
  14. package/node_modules/@hcengineering/analytics/lib/index.js +1 -1
  15. package/node_modules/@hcengineering/analytics/lib/index.js.map +2 -2
  16. package/node_modules/@hcengineering/analytics/package.json +19 -16
  17. package/node_modules/@hcengineering/analytics/src/index.ts +2 -1
  18. package/node_modules/@hcengineering/api-client/lib/client.js +9 -4
  19. package/node_modules/@hcengineering/api-client/lib/client.js.map +2 -2
  20. package/node_modules/@hcengineering/api-client/lib/rest/adapter.js +64 -0
  21. package/node_modules/@hcengineering/api-client/lib/rest/adapter.js.map +7 -0
  22. package/node_modules/@hcengineering/api-client/lib/rest/index.js +2 -0
  23. package/node_modules/@hcengineering/api-client/lib/rest/index.js.map +2 -2
  24. package/node_modules/@hcengineering/api-client/lib/socket/node.js +5 -1
  25. package/node_modules/@hcengineering/api-client/lib/socket/node.js.map +2 -2
  26. package/node_modules/@hcengineering/api-client/package.json +28 -25
  27. package/node_modules/@hcengineering/api-client/src/client.ts +10 -1
  28. package/node_modules/@hcengineering/api-client/src/rest/adapter.ts +96 -0
  29. package/node_modules/@hcengineering/api-client/src/rest/index.ts +1 -0
  30. package/node_modules/@hcengineering/api-client/src/socket/node.ts +6 -1
  31. package/node_modules/@hcengineering/chunter/lib/index.js.map +2 -2
  32. package/node_modules/@hcengineering/chunter/package.json +13 -10
  33. package/node_modules/@hcengineering/client/package.json +21 -18
  34. package/node_modules/@hcengineering/client-resources/package.json +24 -21
  35. package/node_modules/@hcengineering/collaborator-client/package.json +21 -18
  36. package/node_modules/@hcengineering/contact/lib/__tests__/workspaceMemberStatusUtils.test.js +38 -0
  37. package/node_modules/@hcengineering/contact/lib/__tests__/workspaceMemberStatusUtils.test.js.map +7 -0
  38. package/node_modules/@hcengineering/contact/lib/index.js +13 -4
  39. package/node_modules/@hcengineering/contact/lib/index.js.map +2 -2
  40. package/node_modules/@hcengineering/contact/lib/types.js.map +1 -1
  41. package/node_modules/@hcengineering/contact/lib/utils.js +132 -108
  42. package/node_modules/@hcengineering/contact/lib/utils.js.map +3 -3
  43. package/node_modules/@hcengineering/contact/lib/workspaceMemberStatusUtils.js +79 -0
  44. package/node_modules/@hcengineering/contact/lib/workspaceMemberStatusUtils.js.map +7 -0
  45. package/node_modules/@hcengineering/contact/package.json +12 -9
  46. package/node_modules/@hcengineering/core/CHANGELOG.md +9 -1
  47. package/node_modules/@hcengineering/core/lang/cs.json +6 -1
  48. package/node_modules/@hcengineering/core/lang/de.json +6 -1
  49. package/node_modules/@hcengineering/core/lang/en.json +6 -1
  50. package/node_modules/@hcengineering/core/lang/es.json +6 -1
  51. package/node_modules/@hcengineering/core/lang/fr.json +6 -1
  52. package/node_modules/@hcengineering/core/lang/it.json +6 -1
  53. package/node_modules/@hcengineering/core/lang/ja.json +6 -1
  54. package/node_modules/@hcengineering/core/lang/pt-br.json +70 -0
  55. package/node_modules/@hcengineering/core/lang/pt.json +6 -1
  56. package/node_modules/@hcengineering/core/lang/ru.json +6 -1
  57. package/node_modules/@hcengineering/core/lang/tr.json +6 -1
  58. package/node_modules/@hcengineering/core/lang/zh.json +6 -1
  59. package/node_modules/@hcengineering/core/lib/__tests__/autoJoinRoles.test.js +13 -0
  60. package/node_modules/@hcengineering/core/lib/__tests__/autoJoinRoles.test.js.map +7 -0
  61. package/node_modules/@hcengineering/core/lib/__tests__/memdb.test.js +133 -0
  62. package/node_modules/@hcengineering/core/lib/__tests__/memdb.test.js.map +2 -2
  63. package/node_modules/@hcengineering/core/lib/__tests__/minmodel.js +25 -0
  64. package/node_modules/@hcengineering/core/lib/__tests__/minmodel.js.map +2 -2
  65. package/node_modules/@hcengineering/core/lib/__tests__/query.test.js +43 -0
  66. package/node_modules/@hcengineering/core/lib/__tests__/query.test.js.map +7 -0
  67. package/node_modules/@hcengineering/core/lib/autoJoinRoles.js +36 -0
  68. package/node_modules/@hcengineering/core/lib/autoJoinRoles.js.map +7 -0
  69. package/node_modules/@hcengineering/core/lib/classes.js +5 -0
  70. package/node_modules/@hcengineering/core/lib/classes.js.map +3 -3
  71. package/node_modules/@hcengineering/core/lib/clone.js +13 -2
  72. package/node_modules/@hcengineering/core/lib/clone.js.map +2 -2
  73. package/node_modules/@hcengineering/core/lib/component.js +14 -3
  74. package/node_modules/@hcengineering/core/lib/component.js.map +2 -2
  75. package/node_modules/@hcengineering/core/lib/index.js +2 -0
  76. package/node_modules/@hcengineering/core/lib/index.js.map +2 -2
  77. package/node_modules/@hcengineering/core/lib/memdb.js +6 -2
  78. package/node_modules/@hcengineering/core/lib/memdb.js.map +2 -2
  79. package/node_modules/@hcengineering/core/lib/operations.js +11 -0
  80. package/node_modules/@hcengineering/core/lib/operations.js.map +2 -2
  81. package/node_modules/@hcengineering/core/lib/predicate.js +3 -0
  82. package/node_modules/@hcengineering/core/lib/predicate.js.map +2 -2
  83. package/node_modules/@hcengineering/core/lib/storage.js.map +2 -2
  84. package/node_modules/@hcengineering/core/lib/tx.js +3 -1
  85. package/node_modules/@hcengineering/core/lib/tx.js.map +2 -2
  86. package/node_modules/@hcengineering/core/lib/utils.js +1 -1
  87. package/node_modules/@hcengineering/core/lib/utils.js.map +2 -2
  88. package/node_modules/@hcengineering/core/lib/versioning.js +17 -0
  89. package/node_modules/@hcengineering/core/lib/versioning.js.map +7 -0
  90. package/node_modules/@hcengineering/core/package.json +22 -19
  91. package/node_modules/@hcengineering/core/src/__tests__/autoJoinRoles.test.ts +27 -0
  92. package/node_modules/@hcengineering/core/src/__tests__/memdb.test.ts +150 -1
  93. package/node_modules/@hcengineering/core/src/__tests__/minmodel.ts +29 -1
  94. package/node_modules/@hcengineering/core/src/__tests__/query.test.ts +66 -0
  95. package/node_modules/@hcengineering/core/src/autoJoinRoles.ts +33 -0
  96. package/node_modules/@hcengineering/core/src/classes.ts +61 -1
  97. package/node_modules/@hcengineering/core/src/clone.ts +13 -2
  98. package/node_modules/@hcengineering/core/src/component.ts +25 -9
  99. package/node_modules/@hcengineering/core/src/index.ts +2 -0
  100. package/node_modules/@hcengineering/core/src/memdb.ts +7 -3
  101. package/node_modules/@hcengineering/core/src/operations.ts +11 -0
  102. package/node_modules/@hcengineering/core/src/predicate.ts +3 -0
  103. package/node_modules/@hcengineering/core/src/storage.ts +6 -3
  104. package/node_modules/@hcengineering/core/src/tx.ts +4 -1
  105. package/node_modules/@hcengineering/core/src/utils.ts +1 -1
  106. package/node_modules/@hcengineering/core/src/versioning.ts +13 -0
  107. package/node_modules/@hcengineering/measurements/lib/__tests__/performance.test.js +3 -3
  108. package/node_modules/@hcengineering/measurements/lib/__tests__/performance.test.js.map +2 -2
  109. package/node_modules/@hcengineering/measurements/package.json +17 -14
  110. package/node_modules/@hcengineering/measurements/src/__tests__/performance.test.ts +3 -3
  111. package/node_modules/@hcengineering/platform/lang/pt-br.json +31 -0
  112. package/node_modules/@hcengineering/platform/lib/__tests__/i18n.test.js +100 -0
  113. package/node_modules/@hcengineering/platform/lib/__tests__/i18n.test.js.map +2 -2
  114. package/node_modules/@hcengineering/platform/lib/__tests__/status.test.js +78 -0
  115. package/node_modules/@hcengineering/platform/lib/__tests__/status.test.js.map +7 -0
  116. package/node_modules/@hcengineering/platform/lib/i18n.js +78 -69
  117. package/node_modules/@hcengineering/platform/lib/i18n.js.map +3 -3
  118. package/node_modules/@hcengineering/platform/lib/status.js +25 -0
  119. package/node_modules/@hcengineering/platform/lib/status.js.map +2 -2
  120. package/node_modules/@hcengineering/platform/package.json +18 -15
  121. package/node_modules/@hcengineering/platform/src/__tests__/i18n.test.ts +114 -2
  122. package/node_modules/@hcengineering/platform/src/__tests__/status.test.ts +77 -0
  123. package/node_modules/@hcengineering/platform/src/i18n.ts +99 -71
  124. package/node_modules/@hcengineering/platform/src/status.ts +30 -0
  125. package/node_modules/@hcengineering/rank/package.json +19 -16
  126. package/node_modules/@hcengineering/rpc/package.json +21 -18
  127. package/node_modules/@hcengineering/tags/package.json +12 -9
  128. package/node_modules/@hcengineering/task/package.json +14 -11
  129. package/node_modules/@hcengineering/text/lib/markup/__tests__/utils.test.js +25 -0
  130. package/node_modules/@hcengineering/text/lib/markup/__tests__/utils.test.js.map +2 -2
  131. package/node_modules/@hcengineering/text/lib/tiptapExtensions.js +6 -0
  132. package/node_modules/@hcengineering/text/lib/tiptapExtensions.js.map +2 -2
  133. package/node_modules/@hcengineering/text/package.json +23 -18
  134. package/node_modules/@hcengineering/text/src/markup/__tests__/utils.test.ts +27 -0
  135. package/node_modules/@hcengineering/text/src/tiptapExtensions.ts +3 -0
  136. package/node_modules/@hcengineering/text-core/lib/markup/model.js +1 -0
  137. package/node_modules/@hcengineering/text-core/lib/markup/model.js.map +2 -2
  138. package/node_modules/@hcengineering/text-core/package.json +20 -17
  139. package/node_modules/@hcengineering/text-core/src/markup/model.ts +2 -1
  140. package/node_modules/@hcengineering/text-html/package.json +19 -16
  141. package/node_modules/@hcengineering/text-markdown/lib/serializer.js +14 -0
  142. package/node_modules/@hcengineering/text-markdown/lib/serializer.js.map +2 -2
  143. package/node_modules/@hcengineering/text-markdown/package.json +20 -17
  144. package/node_modules/@hcengineering/text-markdown/src/serializer.ts +14 -0
  145. package/node_modules/@hcengineering/tracker/lib/index.js +1 -0
  146. package/node_modules/@hcengineering/tracker/lib/index.js.map +2 -2
  147. package/node_modules/@hcengineering/tracker/package.json +16 -13
  148. package/node_modules/@tiptap/core/dist/commands/focus.d.ts.map +1 -1
  149. package/node_modules/@tiptap/core/dist/index.cjs +19 -2
  150. package/node_modules/@tiptap/core/dist/index.cjs.map +1 -1
  151. package/node_modules/@tiptap/core/dist/index.js +19 -3
  152. package/node_modules/@tiptap/core/dist/index.js.map +1 -1
  153. package/node_modules/@tiptap/core/dist/index.umd.js +19 -2
  154. package/node_modules/@tiptap/core/dist/index.umd.js.map +1 -1
  155. package/node_modules/@tiptap/core/dist/utilities/index.d.ts +1 -0
  156. package/node_modules/@tiptap/core/dist/utilities/index.d.ts.map +1 -1
  157. package/node_modules/@tiptap/core/dist/utilities/isSafari.d.ts +10 -0
  158. package/node_modules/@tiptap/core/dist/utilities/isSafari.d.ts.map +1 -0
  159. package/node_modules/@tiptap/core/package.json +2 -2
  160. package/node_modules/@tiptap/core/src/commands/focus.ts +7 -2
  161. package/node_modules/@tiptap/core/src/utilities/index.ts +1 -0
  162. package/node_modules/@tiptap/core/src/utilities/isSafari.ts +11 -0
  163. package/node_modules/@tiptap/extension-blockquote/package.json +2 -2
  164. package/node_modules/@tiptap/extension-bold/package.json +2 -2
  165. package/node_modules/@tiptap/extension-bullet-list/package.json +2 -2
  166. package/node_modules/@tiptap/extension-code/package.json +2 -2
  167. package/node_modules/@tiptap/extension-code-block/package.json +3 -3
  168. package/node_modules/@tiptap/extension-document/package.json +2 -2
  169. package/node_modules/@tiptap/extension-dropcursor/package.json +3 -3
  170. package/node_modules/@tiptap/extension-gapcursor/package.json +3 -3
  171. package/node_modules/@tiptap/extension-hard-break/package.json +2 -2
  172. package/node_modules/@tiptap/extension-heading/package.json +2 -2
  173. package/node_modules/@tiptap/extension-highlight/package.json +2 -2
  174. package/node_modules/@tiptap/extension-history/package.json +3 -3
  175. package/node_modules/@tiptap/extension-horizontal-rule/package.json +3 -3
  176. package/node_modules/@tiptap/extension-italic/package.json +2 -2
  177. package/node_modules/@tiptap/extension-link/package.json +3 -3
  178. package/node_modules/@tiptap/extension-list-item/package.json +2 -2
  179. package/node_modules/@tiptap/extension-mention/package.json +4 -4
  180. package/node_modules/@tiptap/extension-ordered-list/package.json +2 -2
  181. package/node_modules/@tiptap/extension-paragraph/package.json +2 -2
  182. package/node_modules/@tiptap/extension-strike/package.json +2 -2
  183. package/node_modules/@tiptap/extension-subscript/README.md +14 -0
  184. package/node_modules/@tiptap/extension-subscript/dist/index.cjs +61 -0
  185. package/node_modules/@tiptap/extension-subscript/dist/index.cjs.map +1 -0
  186. package/node_modules/@tiptap/extension-subscript/dist/index.d.ts +4 -0
  187. package/node_modules/@tiptap/extension-subscript/dist/index.d.ts.map +1 -0
  188. package/node_modules/@tiptap/extension-subscript/dist/index.js +56 -0
  189. package/node_modules/@tiptap/extension-subscript/dist/index.js.map +1 -0
  190. package/node_modules/@tiptap/extension-subscript/dist/index.umd.js +65 -0
  191. package/node_modules/@tiptap/extension-subscript/dist/index.umd.js.map +1 -0
  192. package/node_modules/@tiptap/extension-subscript/dist/subscript.d.ts +36 -0
  193. package/node_modules/@tiptap/extension-subscript/dist/subscript.d.ts.map +1 -0
  194. package/node_modules/@tiptap/extension-subscript/package.json +49 -0
  195. package/node_modules/@tiptap/extension-subscript/src/index.ts +5 -0
  196. package/node_modules/@tiptap/extension-subscript/src/subscript.ts +91 -0
  197. package/node_modules/@tiptap/extension-superscript/README.md +14 -0
  198. package/node_modules/@tiptap/extension-superscript/dist/index.cjs +61 -0
  199. package/node_modules/@tiptap/extension-superscript/dist/index.cjs.map +1 -0
  200. package/node_modules/@tiptap/extension-superscript/dist/index.d.ts +4 -0
  201. package/node_modules/@tiptap/extension-superscript/dist/index.d.ts.map +1 -0
  202. package/node_modules/@tiptap/extension-superscript/dist/index.js +56 -0
  203. package/node_modules/@tiptap/extension-superscript/dist/index.js.map +1 -0
  204. package/node_modules/@tiptap/extension-superscript/dist/index.umd.js +65 -0
  205. package/node_modules/@tiptap/extension-superscript/dist/index.umd.js.map +1 -0
  206. package/node_modules/@tiptap/extension-superscript/dist/superscript.d.ts +36 -0
  207. package/node_modules/@tiptap/extension-superscript/dist/superscript.d.ts.map +1 -0
  208. package/node_modules/@tiptap/extension-superscript/package.json +49 -0
  209. package/node_modules/@tiptap/extension-superscript/src/index.ts +5 -0
  210. package/node_modules/@tiptap/extension-superscript/src/superscript.ts +91 -0
  211. package/node_modules/@tiptap/extension-table/package.json +3 -3
  212. package/node_modules/@tiptap/extension-table-cell/package.json +2 -2
  213. package/node_modules/@tiptap/extension-table-header/package.json +2 -2
  214. package/node_modules/@tiptap/extension-table-row/package.json +2 -2
  215. package/node_modules/@tiptap/extension-task-item/package.json +3 -3
  216. package/node_modules/@tiptap/extension-task-list/package.json +2 -2
  217. package/node_modules/@tiptap/extension-text/package.json +2 -2
  218. package/node_modules/@tiptap/extension-typography/package.json +2 -2
  219. package/node_modules/@tiptap/extension-underline/package.json +2 -2
  220. package/node_modules/@tiptap/html/package.json +3 -3
  221. package/node_modules/@tiptap/pm/package.json +1 -1
  222. package/node_modules/@tiptap/starter-kit/node_modules/@tiptap/extension-text-style/package.json +2 -2
  223. package/node_modules/@tiptap/starter-kit/package.json +22 -22
  224. package/node_modules/@tiptap/suggestion/package.json +3 -3
  225. package/node_modules/linkify-it/build/index.cjs.js +99 -94
  226. package/node_modules/linkify-it/index.mjs +99 -94
  227. package/node_modules/linkify-it/package.json +11 -1
  228. package/node_modules/linkifyjs/README.md +4 -2
  229. package/node_modules/linkifyjs/dist/linkify.cjs +8 -11
  230. package/node_modules/linkifyjs/dist/linkify.d.cts +14 -14
  231. package/node_modules/linkifyjs/dist/linkify.d.mts +14 -14
  232. package/node_modules/linkifyjs/dist/linkify.js +8 -11
  233. package/node_modules/linkifyjs/dist/linkify.min.js +1 -1
  234. package/node_modules/linkifyjs/dist/linkify.mjs +8 -11
  235. package/node_modules/linkifyjs/package.json +1 -1
  236. package/node_modules/markdown-it/README.md +13 -17
  237. package/node_modules/markdown-it/dist/index.cjs.js +111 -31
  238. package/node_modules/markdown-it/dist/markdown-it.js +117 -31
  239. package/node_modules/markdown-it/dist/markdown-it.min.js +2 -2
  240. package/node_modules/markdown-it/lib/common/utils.mjs +30 -1
  241. package/node_modules/markdown-it/lib/index.mjs +1 -1
  242. package/node_modules/markdown-it/lib/rules_block/heading.mjs +2 -2
  243. package/node_modules/markdown-it/lib/rules_block/html_block.mjs +12 -1
  244. package/node_modules/markdown-it/lib/rules_block/lheading.mjs +4 -1
  245. package/node_modules/markdown-it/lib/rules_block/paragraph.mjs +3 -1
  246. package/node_modules/markdown-it/lib/rules_core/smartquotes.mjs +37 -21
  247. package/node_modules/markdown-it/lib/rules_inline/entity.mjs +2 -2
  248. package/node_modules/markdown-it/lib/rules_inline/state_inline.mjs +37 -6
  249. package/node_modules/markdown-it/package.json +14 -3
  250. package/node_modules/msgpackr/README.md +1 -3
  251. package/node_modules/msgpackr/benchmark.md +26 -16
  252. package/node_modules/msgpackr/dist/index-no-eval.cjs +35 -16
  253. package/node_modules/msgpackr/dist/index-no-eval.cjs.map +1 -1
  254. package/node_modules/msgpackr/dist/index-no-eval.min.js +1 -1
  255. package/node_modules/msgpackr/dist/index-no-eval.min.js.map +1 -1
  256. package/node_modules/msgpackr/dist/index.js +35 -16
  257. package/node_modules/msgpackr/dist/index.js.map +1 -1
  258. package/node_modules/msgpackr/dist/index.min.js +1 -1
  259. package/node_modules/msgpackr/dist/index.min.js.map +1 -1
  260. package/node_modules/msgpackr/dist/node.cjs +50 -26
  261. package/node_modules/msgpackr/dist/node.cjs.map +1 -1
  262. package/node_modules/msgpackr/dist/test.js +44 -16
  263. package/node_modules/msgpackr/dist/test.js.map +1 -1
  264. package/node_modules/msgpackr/dist/unpack-no-eval.cjs +35 -16
  265. package/node_modules/msgpackr/dist/unpack-no-eval.cjs.map +1 -1
  266. package/node_modules/msgpackr/index.d.cts +2 -0
  267. package/node_modules/msgpackr/index.d.ts +2 -0
  268. package/node_modules/msgpackr/package.json +1 -1
  269. package/node_modules/msgpackr/stream.js +15 -10
  270. package/node_modules/msgpackr/unpack.js +35 -16
  271. package/node_modules/prosemirror-changeset/CHANGELOG.md +12 -0
  272. package/node_modules/prosemirror-changeset/README.md +31 -2
  273. package/node_modules/prosemirror-changeset/dist/index.cjs +17 -2
  274. package/node_modules/prosemirror-changeset/dist/index.d.cts +32 -2
  275. package/node_modules/prosemirror-changeset/dist/index.d.ts +32 -2
  276. package/node_modules/prosemirror-changeset/dist/index.js +18 -3
  277. package/node_modules/prosemirror-changeset/package.json +2 -2
  278. package/node_modules/prosemirror-changeset/src/README.md +4 -2
  279. package/node_modules/prosemirror-changeset/src/change.ts +18 -0
  280. package/node_modules/prosemirror-changeset/src/changeset.ts +10 -4
  281. package/node_modules/prosemirror-changeset/src/simplify.ts +1 -1
  282. package/node_modules/prosemirror-changeset/test/test-simplify.ts +3 -0
  283. package/node_modules/prosemirror-gapcursor/CHANGELOG.md +6 -0
  284. package/node_modules/prosemirror-gapcursor/dist/index.cjs +1 -1
  285. package/node_modules/prosemirror-gapcursor/dist/index.js +1 -1
  286. package/node_modules/prosemirror-gapcursor/package.json +3 -2
  287. package/node_modules/prosemirror-gapcursor/src/gapcursor.ts +1 -1
  288. package/node_modules/prosemirror-markdown/CHANGELOG.md +12 -0
  289. package/node_modules/prosemirror-markdown/dist/index.cjs +11 -1
  290. package/node_modules/prosemirror-markdown/dist/index.js +14 -2
  291. package/node_modules/prosemirror-markdown/package.json +1 -1
  292. package/node_modules/prosemirror-markdown/src/to_markdown.ts +12 -3
  293. package/node_modules/prosemirror-menu/CHANGELOG.md +18 -0
  294. package/node_modules/prosemirror-menu/CONTRIBUTING.md +22 -18
  295. package/node_modules/prosemirror-menu/README.md +69 -29
  296. package/node_modules/prosemirror-menu/dist/index.cjs +232 -48
  297. package/node_modules/prosemirror-menu/dist/index.d.cts +29 -14
  298. package/node_modules/prosemirror-menu/dist/index.d.ts +29 -14
  299. package/node_modules/prosemirror-menu/dist/index.js +229 -36
  300. package/node_modules/prosemirror-menu/package.json +2 -2
  301. package/node_modules/prosemirror-menu/src/README.md +30 -1
  302. package/node_modules/prosemirror-menu/src/icons.ts +3 -2
  303. package/node_modules/prosemirror-menu/src/menu.ts +193 -40
  304. package/node_modules/prosemirror-menu/src/menubar.ts +50 -5
  305. package/node_modules/prosemirror-menu/style/menu.css +28 -7
  306. package/node_modules/prosemirror-model/CHANGELOG.md +20 -0
  307. package/node_modules/prosemirror-model/CONTRIBUTING.md +19 -19
  308. package/node_modules/prosemirror-model/README.md +3 -3
  309. package/node_modules/prosemirror-model/dist/index.cjs +13 -10
  310. package/node_modules/prosemirror-model/dist/index.d.cts +25 -21
  311. package/node_modules/prosemirror-model/dist/index.d.ts +25 -21
  312. package/node_modules/prosemirror-model/dist/index.js +19 -23
  313. package/node_modules/prosemirror-model/package.json +2 -2
  314. package/node_modules/prosemirror-model/src/fragment.ts +1 -1
  315. package/node_modules/prosemirror-model/src/from_dom.ts +4 -1
  316. package/node_modules/prosemirror-model/src/node.ts +5 -4
  317. package/node_modules/prosemirror-model/src/replace.ts +6 -15
  318. package/node_modules/prosemirror-model/src/schema.ts +1 -1
  319. package/node_modules/prosemirror-model/src/to_dom.ts +24 -20
  320. package/node_modules/prosemirror-transform/CHANGELOG.md +16 -0
  321. package/node_modules/prosemirror-transform/dist/index.cjs +38 -4
  322. package/node_modules/prosemirror-transform/dist/index.d.cts +19 -0
  323. package/node_modules/prosemirror-transform/dist/index.d.ts +19 -0
  324. package/node_modules/prosemirror-transform/dist/index.js +52 -1
  325. package/node_modules/prosemirror-transform/package.json +1 -1
  326. package/node_modules/prosemirror-transform/src/replace.ts +16 -0
  327. package/node_modules/prosemirror-transform/src/replace_step.ts +10 -1
  328. package/node_modules/prosemirror-transform/src/transform.ts +21 -2
  329. package/node_modules/prosemirror-view/CHANGELOG.md +34 -2
  330. package/node_modules/prosemirror-view/CONTRIBUTING.md +19 -19
  331. package/node_modules/prosemirror-view/README.md +3 -3
  332. package/node_modules/prosemirror-view/dist/index.cjs +96 -40
  333. package/node_modules/prosemirror-view/dist/index.d.cts +2 -2
  334. package/node_modules/prosemirror-view/dist/index.d.ts +2 -2
  335. package/node_modules/prosemirror-view/dist/index.js +90 -39
  336. package/node_modules/prosemirror-view/package.json +2 -2
  337. package/node_modules/prosemirror-view/src/domchange.ts +1 -1
  338. package/node_modules/prosemirror-view/src/domobserver.ts +59 -16
  339. package/node_modules/prosemirror-view/src/index.ts +4 -4
  340. package/node_modules/prosemirror-view/src/input.ts +9 -6
  341. package/node_modules/prosemirror-view/src/viewdesc.ts +26 -22
  342. package/node_modules/prosemirror-view/style/prosemirror.css +1 -1
  343. package/package.json +5 -4
  344. package/src/client.mjs +2 -2
  345. package/src/config.mjs +1 -0
  346. package/src/helpers.mjs +2 -2
  347. package/src/index.mjs +31 -1
  348. package/src/initCodex.mjs +281 -0
  349. package/src/mcp.mjs +1 -1
  350. package/src/mcpShared.mjs +95 -5
  351. package/node_modules/@hcengineering/account-client/types/client.d.ts +0 -140
  352. package/node_modules/@hcengineering/account-client/types/client.d.ts.map +0 -1
  353. package/node_modules/@hcengineering/account-client/types/index.d.ts +0 -4
  354. package/node_modules/@hcengineering/account-client/types/index.d.ts.map +0 -1
  355. package/node_modules/@hcengineering/account-client/types/types.d.ts +0 -177
  356. package/node_modules/@hcengineering/account-client/types/types.d.ts.map +0 -1
  357. package/node_modules/@hcengineering/account-client/types/utils.d.ts +0 -5
  358. package/node_modules/@hcengineering/account-client/types/utils.d.ts.map +0 -1
  359. package/node_modules/@hcengineering/analytics/types/index.d.ts +0 -25
  360. package/node_modules/@hcengineering/analytics/types/index.d.ts.map +0 -1
  361. package/node_modules/@hcengineering/api-client/types/__tests__/config.test.d.ts +0 -2
  362. package/node_modules/@hcengineering/api-client/types/__tests__/config.test.d.ts.map +0 -1
  363. package/node_modules/@hcengineering/api-client/types/__tests__/markup-client.test.d.ts +0 -2
  364. package/node_modules/@hcengineering/api-client/types/__tests__/markup-client.test.d.ts.map +0 -1
  365. package/node_modules/@hcengineering/api-client/types/__tests__/markup-types.test.d.ts +0 -2
  366. package/node_modules/@hcengineering/api-client/types/__tests__/markup-types.test.d.ts.map +0 -1
  367. package/node_modules/@hcengineering/api-client/types/__tests__/rest-utils.test.d.ts +0 -2
  368. package/node_modules/@hcengineering/api-client/types/__tests__/rest-utils.test.d.ts.map +0 -1
  369. package/node_modules/@hcengineering/api-client/types/__tests__/utils.test.d.ts +0 -2
  370. package/node_modules/@hcengineering/api-client/types/__tests__/utils.test.d.ts.map +0 -1
  371. package/node_modules/@hcengineering/api-client/types/client.d.ts +0 -6
  372. package/node_modules/@hcengineering/api-client/types/client.d.ts.map +0 -1
  373. package/node_modules/@hcengineering/api-client/types/config.d.ts +0 -8
  374. package/node_modules/@hcengineering/api-client/types/config.d.ts.map +0 -1
  375. package/node_modules/@hcengineering/api-client/types/index.d.ts +0 -9
  376. package/node_modules/@hcengineering/api-client/types/index.d.ts.map +0 -1
  377. package/node_modules/@hcengineering/api-client/types/markup/client.d.ts +0 -5
  378. package/node_modules/@hcengineering/api-client/types/markup/client.d.ts.map +0 -1
  379. package/node_modules/@hcengineering/api-client/types/markup/index.d.ts +0 -3
  380. package/node_modules/@hcengineering/api-client/types/markup/index.d.ts.map +0 -1
  381. package/node_modules/@hcengineering/api-client/types/markup/types.d.ts +0 -41
  382. package/node_modules/@hcengineering/api-client/types/markup/types.d.ts.map +0 -1
  383. package/node_modules/@hcengineering/api-client/types/rest/index.d.ts +0 -4
  384. package/node_modules/@hcengineering/api-client/types/rest/index.d.ts.map +0 -1
  385. package/node_modules/@hcengineering/api-client/types/rest/rest.d.ts +0 -39
  386. package/node_modules/@hcengineering/api-client/types/rest/rest.d.ts.map +0 -1
  387. package/node_modules/@hcengineering/api-client/types/rest/tx.d.ts +0 -3
  388. package/node_modules/@hcengineering/api-client/types/rest/tx.d.ts.map +0 -1
  389. package/node_modules/@hcengineering/api-client/types/rest/types.d.ts +0 -16
  390. package/node_modules/@hcengineering/api-client/types/rest/types.d.ts.map +0 -1
  391. package/node_modules/@hcengineering/api-client/types/rest/utils.d.ts +0 -3
  392. package/node_modules/@hcengineering/api-client/types/rest/utils.d.ts.map +0 -1
  393. package/node_modules/@hcengineering/api-client/types/socket/browser.d.ts +0 -4
  394. package/node_modules/@hcengineering/api-client/types/socket/browser.d.ts.map +0 -1
  395. package/node_modules/@hcengineering/api-client/types/socket/index.d.ts +0 -3
  396. package/node_modules/@hcengineering/api-client/types/socket/index.d.ts.map +0 -1
  397. package/node_modules/@hcengineering/api-client/types/socket/node.d.ts +0 -4
  398. package/node_modules/@hcengineering/api-client/types/socket/node.d.ts.map +0 -1
  399. package/node_modules/@hcengineering/api-client/types/storage/client.d.ts +0 -21
  400. package/node_modules/@hcengineering/api-client/types/storage/client.d.ts.map +0 -1
  401. package/node_modules/@hcengineering/api-client/types/storage/error.d.ts +0 -10
  402. package/node_modules/@hcengineering/api-client/types/storage/error.d.ts.map +0 -1
  403. package/node_modules/@hcengineering/api-client/types/storage/index.d.ts +0 -4
  404. package/node_modules/@hcengineering/api-client/types/storage/index.d.ts.map +0 -1
  405. package/node_modules/@hcengineering/api-client/types/storage/types.d.ts +0 -10
  406. package/node_modules/@hcengineering/api-client/types/storage/types.d.ts.map +0 -1
  407. package/node_modules/@hcengineering/api-client/types/types.d.ts +0 -101
  408. package/node_modules/@hcengineering/api-client/types/types.d.ts.map +0 -1
  409. package/node_modules/@hcengineering/api-client/types/utils.d.ts +0 -12
  410. package/node_modules/@hcengineering/api-client/types/utils.d.ts.map +0 -1
  411. package/node_modules/@hcengineering/chunter/types/analytics.d.ts +0 -5
  412. package/node_modules/@hcengineering/chunter/types/analytics.d.ts.map +0 -1
  413. package/node_modules/@hcengineering/chunter/types/index.d.ts +0 -211
  414. package/node_modules/@hcengineering/chunter/types/index.d.ts.map +0 -1
  415. package/node_modules/@hcengineering/chunter/types/utils.d.ts +0 -7
  416. package/node_modules/@hcengineering/chunter/types/utils.d.ts.map +0 -1
  417. package/node_modules/@hcengineering/client/types/__tests__/client.test.d.ts +0 -2
  418. package/node_modules/@hcengineering/client/types/__tests__/client.test.d.ts.map +0 -1
  419. package/node_modules/@hcengineering/client/types/index.d.ts +0 -69
  420. package/node_modules/@hcengineering/client/types/index.d.ts.map +0 -1
  421. package/node_modules/@hcengineering/client-resources/types/__tests__/connection.test.d.ts +0 -2
  422. package/node_modules/@hcengineering/client-resources/types/__tests__/connection.test.d.ts.map +0 -1
  423. package/node_modules/@hcengineering/client-resources/types/__tests__/integration.test.d.ts +0 -45
  424. package/node_modules/@hcengineering/client-resources/types/__tests__/integration.test.d.ts.map +0 -1
  425. package/node_modules/@hcengineering/client-resources/types/connection.d.ts +0 -7
  426. package/node_modules/@hcengineering/client-resources/types/connection.d.ts.map +0 -1
  427. package/node_modules/@hcengineering/client-resources/types/index.d.ts +0 -11
  428. package/node_modules/@hcengineering/client-resources/types/index.d.ts.map +0 -1
  429. package/node_modules/@hcengineering/collaborator-client/types/__tests__/utils.test.d.ts +0 -2
  430. package/node_modules/@hcengineering/collaborator-client/types/__tests__/utils.test.d.ts.map +0 -1
  431. package/node_modules/@hcengineering/collaborator-client/types/client.d.ts +0 -34
  432. package/node_modules/@hcengineering/collaborator-client/types/client.d.ts.map +0 -1
  433. package/node_modules/@hcengineering/collaborator-client/types/index.d.ts +0 -3
  434. package/node_modules/@hcengineering/collaborator-client/types/index.d.ts.map +0 -1
  435. package/node_modules/@hcengineering/collaborator-client/types/utils.d.ts +0 -9
  436. package/node_modules/@hcengineering/collaborator-client/types/utils.d.ts.map +0 -1
  437. package/node_modules/@hcengineering/contact/types/__tests__/cache.test.d.ts +0 -2
  438. package/node_modules/@hcengineering/contact/types/__tests__/cache.test.d.ts.map +0 -1
  439. package/node_modules/@hcengineering/contact/types/analytics.d.ts +0 -6
  440. package/node_modules/@hcengineering/contact/types/analytics.d.ts.map +0 -1
  441. package/node_modules/@hcengineering/contact/types/avatar.d.ts +0 -12
  442. package/node_modules/@hcengineering/contact/types/avatar.d.ts.map +0 -1
  443. package/node_modules/@hcengineering/contact/types/cache.d.ts +0 -49
  444. package/node_modules/@hcengineering/contact/types/cache.d.ts.map +0 -1
  445. package/node_modules/@hcengineering/contact/types/index.d.ts +0 -367
  446. package/node_modules/@hcengineering/contact/types/index.d.ts.map +0 -1
  447. package/node_modules/@hcengineering/contact/types/types.d.ts +0 -25
  448. package/node_modules/@hcengineering/contact/types/types.d.ts.map +0 -1
  449. package/node_modules/@hcengineering/contact/types/utils.d.ts +0 -110
  450. package/node_modules/@hcengineering/contact/types/utils.d.ts.map +0 -1
  451. package/node_modules/@hcengineering/core/types/__tests__/client.test.d.ts +0 -2
  452. package/node_modules/@hcengineering/core/types/__tests__/client.test.d.ts.map +0 -1
  453. package/node_modules/@hcengineering/core/types/__tests__/clone.test.d.ts +0 -2
  454. package/node_modules/@hcengineering/core/types/__tests__/clone.test.d.ts.map +0 -1
  455. package/node_modules/@hcengineering/core/types/__tests__/collaboration.test.d.ts +0 -2
  456. package/node_modules/@hcengineering/core/types/__tests__/collaboration.test.d.ts.map +0 -1
  457. package/node_modules/@hcengineering/core/types/__tests__/collaborators.test.d.ts +0 -2
  458. package/node_modules/@hcengineering/core/types/__tests__/collaborators.test.d.ts.map +0 -1
  459. package/node_modules/@hcengineering/core/types/__tests__/common.test.d.ts +0 -2
  460. package/node_modules/@hcengineering/core/types/__tests__/common.test.d.ts.map +0 -1
  461. package/node_modules/@hcengineering/core/types/__tests__/connection.d.ts +0 -4
  462. package/node_modules/@hcengineering/core/types/__tests__/connection.d.ts.map +0 -1
  463. package/node_modules/@hcengineering/core/types/__tests__/contexts.test.d.ts +0 -2
  464. package/node_modules/@hcengineering/core/types/__tests__/contexts.test.d.ts.map +0 -1
  465. package/node_modules/@hcengineering/core/types/__tests__/hierarchy.test.d.ts +0 -2
  466. package/node_modules/@hcengineering/core/types/__tests__/hierarchy.test.d.ts.map +0 -1
  467. package/node_modules/@hcengineering/core/types/__tests__/lang.test.d.ts +0 -2
  468. package/node_modules/@hcengineering/core/types/__tests__/lang.test.d.ts.map +0 -1
  469. package/node_modules/@hcengineering/core/types/__tests__/limiter-edge-cases.test.d.ts +0 -2
  470. package/node_modules/@hcengineering/core/types/__tests__/limiter-edge-cases.test.d.ts.map +0 -1
  471. package/node_modules/@hcengineering/core/types/__tests__/limits.test.d.ts +0 -2
  472. package/node_modules/@hcengineering/core/types/__tests__/limits.test.d.ts.map +0 -1
  473. package/node_modules/@hcengineering/core/types/__tests__/memdb.test.d.ts +0 -2
  474. package/node_modules/@hcengineering/core/types/__tests__/memdb.test.d.ts.map +0 -1
  475. package/node_modules/@hcengineering/core/types/__tests__/minmodel.d.ts +0 -50
  476. package/node_modules/@hcengineering/core/types/__tests__/minmodel.d.ts.map +0 -1
  477. package/node_modules/@hcengineering/core/types/__tests__/objvalue.test.d.ts +0 -2
  478. package/node_modules/@hcengineering/core/types/__tests__/objvalue.test.d.ts.map +0 -1
  479. package/node_modules/@hcengineering/core/types/__tests__/operator-bugs.test.d.ts +0 -2
  480. package/node_modules/@hcengineering/core/types/__tests__/operator-bugs.test.d.ts.map +0 -1
  481. package/node_modules/@hcengineering/core/types/__tests__/operator.test.d.ts +0 -2
  482. package/node_modules/@hcengineering/core/types/__tests__/operator.test.d.ts.map +0 -1
  483. package/node_modules/@hcengineering/core/types/__tests__/rate-limiter.test.d.ts +0 -2
  484. package/node_modules/@hcengineering/core/types/__tests__/rate-limiter.test.d.ts.map +0 -1
  485. package/node_modules/@hcengineering/core/types/__tests__/time.test.d.ts +0 -2
  486. package/node_modules/@hcengineering/core/types/__tests__/time.test.d.ts.map +0 -1
  487. package/node_modules/@hcengineering/core/types/__tests__/utils.test.d.ts +0 -2
  488. package/node_modules/@hcengineering/core/types/__tests__/utils.test.d.ts.map +0 -1
  489. package/node_modules/@hcengineering/core/types/backup.d.ts +0 -26
  490. package/node_modules/@hcengineering/core/types/backup.d.ts.map +0 -1
  491. package/node_modules/@hcengineering/core/types/benchmark.d.ts +0 -19
  492. package/node_modules/@hcengineering/core/types/benchmark.d.ts.map +0 -1
  493. package/node_modules/@hcengineering/core/types/classes.d.ts +0 -716
  494. package/node_modules/@hcengineering/core/types/classes.d.ts.map +0 -1
  495. package/node_modules/@hcengineering/core/types/client.d.ts +0 -69
  496. package/node_modules/@hcengineering/core/types/client.d.ts.map +0 -1
  497. package/node_modules/@hcengineering/core/types/clone.d.ts +0 -3
  498. package/node_modules/@hcengineering/core/types/clone.d.ts.map +0 -1
  499. package/node_modules/@hcengineering/core/types/collaboration.d.ts +0 -16
  500. package/node_modules/@hcengineering/core/types/collaboration.d.ts.map +0 -1
  501. package/node_modules/@hcengineering/core/types/collaborators.d.ts +0 -3
  502. package/node_modules/@hcengineering/core/types/collaborators.d.ts.map +0 -1
  503. package/node_modules/@hcengineering/core/types/common.d.ts +0 -4
  504. package/node_modules/@hcengineering/core/types/common.d.ts.map +0 -1
  505. package/node_modules/@hcengineering/core/types/component.d.ts +0 -229
  506. package/node_modules/@hcengineering/core/types/component.d.ts.map +0 -1
  507. package/node_modules/@hcengineering/core/types/hierarchy.d.ts +0 -84
  508. package/node_modules/@hcengineering/core/types/hierarchy.d.ts.map +0 -1
  509. package/node_modules/@hcengineering/core/types/index.d.ts +0 -25
  510. package/node_modules/@hcengineering/core/types/index.d.ts.map +0 -1
  511. package/node_modules/@hcengineering/core/types/memdb.d.ts +0 -60
  512. package/node_modules/@hcengineering/core/types/memdb.d.ts.map +0 -1
  513. package/node_modules/@hcengineering/core/types/objvalue.d.ts +0 -10
  514. package/node_modules/@hcengineering/core/types/objvalue.d.ts.map +0 -1
  515. package/node_modules/@hcengineering/core/types/operations.d.ts +0 -87
  516. package/node_modules/@hcengineering/core/types/operations.d.ts.map +0 -1
  517. package/node_modules/@hcengineering/core/types/operator.d.ts +0 -16
  518. package/node_modules/@hcengineering/core/types/operator.d.ts.map +0 -1
  519. package/node_modules/@hcengineering/core/types/predicate.d.ts +0 -6
  520. package/node_modules/@hcengineering/core/types/predicate.d.ts.map +0 -1
  521. package/node_modules/@hcengineering/core/types/proxy.d.ts +0 -21
  522. package/node_modules/@hcengineering/core/types/proxy.d.ts.map +0 -1
  523. package/node_modules/@hcengineering/core/types/query.d.ts +0 -21
  524. package/node_modules/@hcengineering/core/types/query.d.ts.map +0 -1
  525. package/node_modules/@hcengineering/core/types/server.d.ts +0 -82
  526. package/node_modules/@hcengineering/core/types/server.d.ts.map +0 -1
  527. package/node_modules/@hcengineering/core/types/status.d.ts +0 -30
  528. package/node_modules/@hcengineering/core/types/status.d.ts.map +0 -1
  529. package/node_modules/@hcengineering/core/types/storage.d.ts +0 -233
  530. package/node_modules/@hcengineering/core/types/storage.d.ts.map +0 -1
  531. package/node_modules/@hcengineering/core/types/time.d.ts +0 -8
  532. package/node_modules/@hcengineering/core/types/time.d.ts.map +0 -1
  533. package/node_modules/@hcengineering/core/types/tx.d.ts +0 -261
  534. package/node_modules/@hcengineering/core/types/tx.d.ts.map +0 -1
  535. package/node_modules/@hcengineering/core/types/utils.d.ts +0 -207
  536. package/node_modules/@hcengineering/core/types/utils.d.ts.map +0 -1
  537. package/node_modules/@hcengineering/measurements/types/__tests__/context.test.d.ts +0 -2
  538. package/node_modules/@hcengineering/measurements/types/__tests__/context.test.d.ts.map +0 -1
  539. package/node_modules/@hcengineering/measurements/types/__tests__/index.test.d.ts +0 -2
  540. package/node_modules/@hcengineering/measurements/types/__tests__/index.test.d.ts.map +0 -1
  541. package/node_modules/@hcengineering/measurements/types/__tests__/metrics.test.d.ts +0 -2
  542. package/node_modules/@hcengineering/measurements/types/__tests__/metrics.test.d.ts.map +0 -1
  543. package/node_modules/@hcengineering/measurements/types/__tests__/performance.test.d.ts +0 -2
  544. package/node_modules/@hcengineering/measurements/types/__tests__/performance.test.d.ts.map +0 -1
  545. package/node_modules/@hcengineering/measurements/types/context.d.ts +0 -64
  546. package/node_modules/@hcengineering/measurements/types/context.d.ts.map +0 -1
  547. package/node_modules/@hcengineering/measurements/types/index.d.ts +0 -12
  548. package/node_modules/@hcengineering/measurements/types/index.d.ts.map +0 -1
  549. package/node_modules/@hcengineering/measurements/types/metrics.d.ts +0 -34
  550. package/node_modules/@hcengineering/measurements/types/metrics.d.ts.map +0 -1
  551. package/node_modules/@hcengineering/measurements/types/types.d.ts +0 -88
  552. package/node_modules/@hcengineering/measurements/types/types.d.ts.map +0 -1
  553. package/node_modules/@hcengineering/platform/types/__tests__/i18n.test.d.ts +0 -2
  554. package/node_modules/@hcengineering/platform/types/__tests__/i18n.test.d.ts.map +0 -1
  555. package/node_modules/@hcengineering/platform/types/__tests__/ident.test.d.ts +0 -2
  556. package/node_modules/@hcengineering/platform/types/__tests__/ident.test.d.ts.map +0 -1
  557. package/node_modules/@hcengineering/platform/types/__tests__/plugin.d.ts +0 -7
  558. package/node_modules/@hcengineering/platform/types/__tests__/plugin.d.ts.map +0 -1
  559. package/node_modules/@hcengineering/platform/types/__tests__/resource.test.d.ts +0 -2
  560. package/node_modules/@hcengineering/platform/types/__tests__/resource.test.d.ts.map +0 -1
  561. package/node_modules/@hcengineering/platform/types/event.d.ts +0 -39
  562. package/node_modules/@hcengineering/platform/types/event.d.ts.map +0 -1
  563. package/node_modules/@hcengineering/platform/types/i18n.d.ts +0 -28
  564. package/node_modules/@hcengineering/platform/types/i18n.d.ts.map +0 -1
  565. package/node_modules/@hcengineering/platform/types/ident.d.ts +0 -14
  566. package/node_modules/@hcengineering/platform/types/ident.d.ts.map +0 -1
  567. package/node_modules/@hcengineering/platform/types/index.d.ts +0 -19
  568. package/node_modules/@hcengineering/platform/types/index.d.ts.map +0 -1
  569. package/node_modules/@hcengineering/platform/types/metadata.d.ts +0 -38
  570. package/node_modules/@hcengineering/platform/types/metadata.d.ts.map +0 -1
  571. package/node_modules/@hcengineering/platform/types/platform.d.ts +0 -218
  572. package/node_modules/@hcengineering/platform/types/platform.d.ts.map +0 -1
  573. package/node_modules/@hcengineering/platform/types/resource.d.ts +0 -49
  574. package/node_modules/@hcengineering/platform/types/resource.d.ts.map +0 -1
  575. package/node_modules/@hcengineering/platform/types/status.d.ts +0 -60
  576. package/node_modules/@hcengineering/platform/types/status.d.ts.map +0 -1
  577. package/node_modules/@hcengineering/platform/types/testUtils.d.ts +0 -8
  578. package/node_modules/@hcengineering/platform/types/testUtils.d.ts.map +0 -1
  579. package/node_modules/@hcengineering/rank/types/__tests__/utils.test.d.ts +0 -2
  580. package/node_modules/@hcengineering/rank/types/__tests__/utils.test.d.ts.map +0 -1
  581. package/node_modules/@hcengineering/rank/types/index.d.ts +0 -3
  582. package/node_modules/@hcengineering/rank/types/index.d.ts.map +0 -1
  583. package/node_modules/@hcengineering/rank/types/types.d.ts +0 -2
  584. package/node_modules/@hcengineering/rank/types/types.d.ts.map +0 -1
  585. package/node_modules/@hcengineering/rank/types/utils.d.ts +0 -6
  586. package/node_modules/@hcengineering/rank/types/utils.d.ts.map +0 -1
  587. package/node_modules/@hcengineering/rpc/types/index.d.ts +0 -3
  588. package/node_modules/@hcengineering/rpc/types/index.d.ts.map +0 -1
  589. package/node_modules/@hcengineering/rpc/types/rpc.d.ts +0 -96
  590. package/node_modules/@hcengineering/rpc/types/rpc.d.ts.map +0 -1
  591. package/node_modules/@hcengineering/rpc/types/sliding.d.ts +0 -11
  592. package/node_modules/@hcengineering/rpc/types/sliding.d.ts.map +0 -1
  593. package/node_modules/@hcengineering/rpc/types/test/rateLimit.spec.d.ts +0 -2
  594. package/node_modules/@hcengineering/rpc/types/test/rateLimit.spec.d.ts.map +0 -1
  595. package/node_modules/@hcengineering/tags/types/analytics.d.ts +0 -5
  596. package/node_modules/@hcengineering/tags/types/analytics.d.ts.map +0 -1
  597. package/node_modules/@hcengineering/tags/types/index.d.ts +0 -105
  598. package/node_modules/@hcengineering/tags/types/index.d.ts.map +0 -1
  599. package/node_modules/@hcengineering/task/types/index.d.ts +0 -227
  600. package/node_modules/@hcengineering/task/types/index.d.ts.map +0 -1
  601. package/node_modules/@hcengineering/task/types/utils.d.ts +0 -61
  602. package/node_modules/@hcengineering/task/types/utils.d.ts.map +0 -1
  603. package/node_modules/@hcengineering/text/types/extensions.d.ts +0 -53
  604. package/node_modules/@hcengineering/text/types/extensions.d.ts.map +0 -1
  605. package/node_modules/@hcengineering/text/types/index.d.ts +0 -13
  606. package/node_modules/@hcengineering/text/types/index.d.ts.map +0 -1
  607. package/node_modules/@hcengineering/text/types/kit.d.ts +0 -12
  608. package/node_modules/@hcengineering/text/types/kit.d.ts.map +0 -1
  609. package/node_modules/@hcengineering/text/types/kits/common-kit.d.ts +0 -72
  610. package/node_modules/@hcengineering/text/types/kits/common-kit.d.ts.map +0 -1
  611. package/node_modules/@hcengineering/text/types/kits/server-kit.d.ts +0 -106
  612. package/node_modules/@hcengineering/text/types/kits/server-kit.d.ts.map +0 -1
  613. package/node_modules/@hcengineering/text/types/marks/code.d.ts +0 -8
  614. package/node_modules/@hcengineering/text/types/marks/code.d.ts.map +0 -1
  615. package/node_modules/@hcengineering/text/types/marks/colors.d.ts +0 -21
  616. package/node_modules/@hcengineering/text/types/marks/colors.d.ts.map +0 -1
  617. package/node_modules/@hcengineering/text/types/marks/inlineComment.d.ts +0 -5
  618. package/node_modules/@hcengineering/text/types/marks/inlineComment.d.ts.map +0 -1
  619. package/node_modules/@hcengineering/text/types/marks/noteBase.d.ts +0 -23
  620. package/node_modules/@hcengineering/text/types/marks/noteBase.d.ts.map +0 -1
  621. package/node_modules/@hcengineering/text/types/marks/qmsInlineCommentMark.d.ts +0 -6
  622. package/node_modules/@hcengineering/text/types/marks/qmsInlineCommentMark.d.ts.map +0 -1
  623. package/node_modules/@hcengineering/text/types/markup/__tests__/dsl.test.d.ts +0 -2
  624. package/node_modules/@hcengineering/text/types/markup/__tests__/dsl.test.d.ts.map +0 -1
  625. package/node_modules/@hcengineering/text/types/markup/__tests__/utils.test.d.ts +0 -5
  626. package/node_modules/@hcengineering/text/types/markup/__tests__/utils.test.d.ts.map +0 -1
  627. package/node_modules/@hcengineering/text/types/markup/utils.d.ts +0 -19
  628. package/node_modules/@hcengineering/text/types/markup/utils.d.ts.map +0 -1
  629. package/node_modules/@hcengineering/text/types/nodes/codeblock.d.ts +0 -12
  630. package/node_modules/@hcengineering/text/types/nodes/codeblock.d.ts.map +0 -1
  631. package/node_modules/@hcengineering/text/types/nodes/comment.d.ts +0 -6
  632. package/node_modules/@hcengineering/text/types/nodes/comment.d.ts.map +0 -1
  633. package/node_modules/@hcengineering/text/types/nodes/embed.d.ts +0 -3
  634. package/node_modules/@hcengineering/text/types/nodes/embed.d.ts.map +0 -1
  635. package/node_modules/@hcengineering/text/types/nodes/emoji.d.ts +0 -17
  636. package/node_modules/@hcengineering/text/types/nodes/emoji.d.ts.map +0 -1
  637. package/node_modules/@hcengineering/text/types/nodes/file.d.ts +0 -13
  638. package/node_modules/@hcengineering/text/types/nodes/file.d.ts.map +0 -1
  639. package/node_modules/@hcengineering/text/types/nodes/image.d.ts +0 -52
  640. package/node_modules/@hcengineering/text/types/nodes/image.d.ts.map +0 -1
  641. package/node_modules/@hcengineering/text/types/nodes/index.d.ts +0 -11
  642. package/node_modules/@hcengineering/text/types/nodes/index.d.ts.map +0 -1
  643. package/node_modules/@hcengineering/text/types/nodes/markdown.d.ts +0 -3
  644. package/node_modules/@hcengineering/text/types/nodes/markdown.d.ts.map +0 -1
  645. package/node_modules/@hcengineering/text/types/nodes/mermaid.d.ts +0 -4
  646. package/node_modules/@hcengineering/text/types/nodes/mermaid.d.ts.map +0 -1
  647. package/node_modules/@hcengineering/text/types/nodes/reference.d.ts +0 -18
  648. package/node_modules/@hcengineering/text/types/nodes/reference.d.ts.map +0 -1
  649. package/node_modules/@hcengineering/text/types/nodes/todo.d.ts +0 -3
  650. package/node_modules/@hcengineering/text/types/nodes/todo.d.ts.map +0 -1
  651. package/node_modules/@hcengineering/text/types/nodes/utils.d.ts +0 -6
  652. package/node_modules/@hcengineering/text/types/nodes/utils.d.ts.map +0 -1
  653. package/node_modules/@hcengineering/text/types/tiptapExtensions.d.ts +0 -28
  654. package/node_modules/@hcengineering/text/types/tiptapExtensions.d.ts.map +0 -1
  655. package/node_modules/@hcengineering/text-core/types/index.d.ts +0 -6
  656. package/node_modules/@hcengineering/text-core/types/index.d.ts.map +0 -1
  657. package/node_modules/@hcengineering/text-core/types/markup/__tests__/traverse.test.d.ts +0 -2
  658. package/node_modules/@hcengineering/text-core/types/markup/__tests__/traverse.test.d.ts.map +0 -1
  659. package/node_modules/@hcengineering/text-core/types/markup/__tests__/utils.test.d.ts +0 -2
  660. package/node_modules/@hcengineering/text-core/types/markup/__tests__/utils.test.d.ts.map +0 -1
  661. package/node_modules/@hcengineering/text-core/types/markup/dsl.d.ts +0 -25
  662. package/node_modules/@hcengineering/text-core/types/markup/dsl.d.ts.map +0 -1
  663. package/node_modules/@hcengineering/text-core/types/markup/model.d.ts +0 -74
  664. package/node_modules/@hcengineering/text-core/types/markup/model.d.ts.map +0 -1
  665. package/node_modules/@hcengineering/text-core/types/markup/reference.d.ts +0 -15
  666. package/node_modules/@hcengineering/text-core/types/markup/reference.d.ts.map +0 -1
  667. package/node_modules/@hcengineering/text-core/types/markup/traverse.d.ts +0 -6
  668. package/node_modules/@hcengineering/text-core/types/markup/traverse.d.ts.map +0 -1
  669. package/node_modules/@hcengineering/text-core/types/markup/utils.d.ts +0 -25
  670. package/node_modules/@hcengineering/text-core/types/markup/utils.d.ts.map +0 -1
  671. package/node_modules/@hcengineering/text-html/types/__tests__/html.test.d.ts +0 -2
  672. package/node_modules/@hcengineering/text-html/types/__tests__/html.test.d.ts.map +0 -1
  673. package/node_modules/@hcengineering/text-html/types/index.d.ts +0 -6
  674. package/node_modules/@hcengineering/text-html/types/index.d.ts.map +0 -1
  675. package/node_modules/@hcengineering/text-html/types/parser.d.ts +0 -10
  676. package/node_modules/@hcengineering/text-html/types/parser.d.ts.map +0 -1
  677. package/node_modules/@hcengineering/text-html/types/serializer.d.ts +0 -9
  678. package/node_modules/@hcengineering/text-html/types/serializer.d.ts.map +0 -1
  679. package/node_modules/@hcengineering/text-markdown/types/__tests__/markdown.test.d.ts +0 -9
  680. package/node_modules/@hcengineering/text-markdown/types/__tests__/markdown.test.d.ts.map +0 -1
  681. package/node_modules/@hcengineering/text-markdown/types/compare.d.ts +0 -10
  682. package/node_modules/@hcengineering/text-markdown/types/compare.d.ts.map +0 -1
  683. package/node_modules/@hcengineering/text-markdown/types/index.d.ts +0 -14
  684. package/node_modules/@hcengineering/text-markdown/types/index.d.ts.map +0 -1
  685. package/node_modules/@hcengineering/text-markdown/types/marks.d.ts +0 -8
  686. package/node_modules/@hcengineering/text-markdown/types/marks.d.ts.map +0 -1
  687. package/node_modules/@hcengineering/text-markdown/types/node.d.ts +0 -4
  688. package/node_modules/@hcengineering/text-markdown/types/node.d.ts.map +0 -1
  689. package/node_modules/@hcengineering/text-markdown/types/parser.d.ts +0 -50
  690. package/node_modules/@hcengineering/text-markdown/types/parser.d.ts.map +0 -1
  691. package/node_modules/@hcengineering/text-markdown/types/serializer.d.ts +0 -102
  692. package/node_modules/@hcengineering/text-markdown/types/serializer.d.ts.map +0 -1
  693. package/node_modules/@hcengineering/tracker/types/analytics.d.ts +0 -24
  694. package/node_modules/@hcengineering/tracker/types/analytics.d.ts.map +0 -1
  695. package/node_modules/@hcengineering/tracker/types/index.d.ts +0 -431
  696. package/node_modules/@hcengineering/tracker/types/index.d.ts.map +0 -1
@@ -0,0 +1,304 @@
1
+ //
2
+ // Copyright © 2026 Hardcore Engineering Inc.
3
+ //
4
+ // Licensed under the Eclipse Public License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License. You may
6
+ // obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ //
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ //
15
+
16
+ import { isNetworkError } from '../utils'
17
+
18
+ describe('isNetworkError', () => {
19
+ describe('Node.js-style connection errors', () => {
20
+ it('should return true for ECONNRESET error', () => {
21
+ const error = {
22
+ cause: {
23
+ code: 'ECONNRESET'
24
+ }
25
+ }
26
+ expect(isNetworkError(error)).toBe(true)
27
+ })
28
+
29
+ it('should return true for ECONNREFUSED error', () => {
30
+ const error = {
31
+ cause: {
32
+ code: 'ECONNREFUSED'
33
+ }
34
+ }
35
+ expect(isNetworkError(error)).toBe(true)
36
+ })
37
+
38
+ it('should return true for ENOTFOUND error', () => {
39
+ const error = {
40
+ cause: {
41
+ code: 'ENOTFOUND'
42
+ }
43
+ }
44
+ expect(isNetworkError(error)).toBe(true)
45
+ })
46
+
47
+ it('should return false for other error codes', () => {
48
+ const error = {
49
+ cause: {
50
+ code: 'EACCES'
51
+ }
52
+ }
53
+ expect(isNetworkError(error)).toBe(false)
54
+ })
55
+
56
+ it('should return false when cause.code is not a string', () => {
57
+ const error = {
58
+ cause: {
59
+ code: 123
60
+ }
61
+ }
62
+ expect(isNetworkError(error)).toBe(false)
63
+ })
64
+
65
+ it('should return false when cause is not an object', () => {
66
+ const error = {
67
+ cause: 'not an object'
68
+ }
69
+ expect(isNetworkError(error)).toBe(false)
70
+ })
71
+ })
72
+
73
+ describe('Browser "Failed to fetch" errors', () => {
74
+ it('should return true for TypeError with "Failed to fetch" message', () => {
75
+ const error = new TypeError('Failed to fetch')
76
+ expect(isNetworkError(error)).toBe(true)
77
+ })
78
+
79
+ it('should return true for TypeError with "failed to fetch" (lowercase) message', () => {
80
+ const error = new TypeError('failed to fetch')
81
+ expect(isNetworkError(error)).toBe(true)
82
+ })
83
+
84
+ it('should return true for TypeError with "NetworkError" message', () => {
85
+ const error = new TypeError('NetworkError')
86
+ expect(isNetworkError(error)).toBe(true)
87
+ })
88
+
89
+ it('should return true for TypeError with "networkerror" (lowercase) message', () => {
90
+ const error = new TypeError('networkerror')
91
+ expect(isNetworkError(error)).toBe(true)
92
+ })
93
+
94
+ it('should return true for TypeError with "Network request failed" message', () => {
95
+ const error = new TypeError('Network request failed')
96
+ expect(isNetworkError(error)).toBe(true)
97
+ })
98
+
99
+ it('should return false for TypeError with non-network message', () => {
100
+ const error = new TypeError('Something went wrong')
101
+ expect(isNetworkError(error)).toBe(false)
102
+ })
103
+
104
+ it('should return false for TypeError with empty message', () => {
105
+ const error = new TypeError('')
106
+ expect(isNetworkError(error)).toBe(false)
107
+ })
108
+
109
+ it('should handle TypeError with undefined message', () => {
110
+ const error = new TypeError()
111
+ // TypeError constructor may set message to empty string or undefined
112
+ // The function should handle this gracefully
113
+ expect(typeof isNetworkError(error)).toBe('boolean')
114
+ })
115
+ })
116
+
117
+ describe('Error name-based detection', () => {
118
+ it('should return true for NetworkError with network-related message', () => {
119
+ const error = {
120
+ name: 'NetworkError',
121
+ message: 'Network connection failed'
122
+ }
123
+ expect(isNetworkError(error)).toBe(true)
124
+ })
125
+
126
+ it('should return true for TypeError (by name) with fetch-related message', () => {
127
+ const error = {
128
+ name: 'TypeError',
129
+ message: 'fetch error occurred'
130
+ }
131
+ expect(isNetworkError(error)).toBe(true)
132
+ })
133
+
134
+ it('should return true for FetchError with connection-related message', () => {
135
+ const error = {
136
+ name: 'FetchError',
137
+ message: 'connection timeout'
138
+ }
139
+ expect(isNetworkError(error)).toBe(true)
140
+ })
141
+
142
+ it('should return true for NetworkError with connection message', () => {
143
+ const error = {
144
+ name: 'NetworkError',
145
+ message: 'connection refused'
146
+ }
147
+ expect(isNetworkError(error)).toBe(true)
148
+ })
149
+
150
+ it('should return false for NetworkError with non-network message', () => {
151
+ const error = {
152
+ name: 'NetworkError',
153
+ message: 'Invalid argument'
154
+ }
155
+ expect(isNetworkError(error)).toBe(false)
156
+ })
157
+
158
+ it('should return false for TypeError (by name) with non-network message', () => {
159
+ const error = {
160
+ name: 'TypeError',
161
+ message: 'Cannot read property of undefined'
162
+ }
163
+ expect(isNetworkError(error)).toBe(false)
164
+ })
165
+
166
+ it('should return false for other error names', () => {
167
+ const error = {
168
+ name: 'ReferenceError',
169
+ message: 'fetch is not defined'
170
+ }
171
+ expect(isNetworkError(error)).toBe(false)
172
+ })
173
+
174
+ it('should handle case-insensitive message matching', () => {
175
+ const error = {
176
+ name: 'NetworkError',
177
+ message: 'FETCH ERROR'
178
+ }
179
+ expect(isNetworkError(error)).toBe(true)
180
+ })
181
+
182
+ it('should return false when message is not a string', () => {
183
+ const error = {
184
+ name: 'NetworkError',
185
+ message: 123
186
+ }
187
+ expect(isNetworkError(error)).toBe(false)
188
+ })
189
+
190
+ it('should return false when name is not a string', () => {
191
+ const error = {
192
+ name: 123,
193
+ message: 'fetch error'
194
+ }
195
+ expect(isNetworkError(error)).toBe(false)
196
+ })
197
+ })
198
+
199
+ describe('Edge cases', () => {
200
+ it('should return false for null', () => {
201
+ expect(isNetworkError(null)).toBe(false)
202
+ })
203
+
204
+ it('should return false for undefined', () => {
205
+ expect(isNetworkError(undefined)).toBe(false)
206
+ })
207
+
208
+ it('should return false for primitive values', () => {
209
+ expect(isNetworkError(123)).toBe(false)
210
+ expect(isNetworkError('string')).toBe(false)
211
+ expect(isNetworkError(true)).toBe(false)
212
+ })
213
+
214
+ it('should return false for empty object', () => {
215
+ expect(isNetworkError({})).toBe(false)
216
+ })
217
+
218
+ it('should return false for object without name or message', () => {
219
+ const error = {
220
+ someProperty: 'value'
221
+ }
222
+ expect(isNetworkError(error)).toBe(false)
223
+ })
224
+
225
+ it('should return false for regular Error without network indicators', () => {
226
+ const error = new Error('Something went wrong')
227
+ expect(isNetworkError(error)).toBe(false)
228
+ })
229
+
230
+ it('should return false for Error with cause but wrong code', () => {
231
+ const error = {
232
+ cause: {
233
+ code: 'SOME_OTHER_CODE'
234
+ }
235
+ }
236
+ expect(isNetworkError(error)).toBe(false)
237
+ })
238
+
239
+ it('should return false when cause exists but code is missing', () => {
240
+ const error = {
241
+ cause: {}
242
+ }
243
+ expect(isNetworkError(error)).toBe(false)
244
+ })
245
+ })
246
+
247
+ describe('Real-world error scenarios', () => {
248
+ it('should handle fetch API network error', () => {
249
+ // Simulating a real browser fetch error
250
+ const error = new TypeError('Failed to fetch')
251
+ expect(isNetworkError(error)).toBe(true)
252
+ })
253
+
254
+ it('should handle Node.js connection refused error', () => {
255
+ // Simulating a real Node.js connection error
256
+ const error = {
257
+ cause: {
258
+ code: 'ECONNREFUSED',
259
+ errno: -61,
260
+ syscall: 'connect',
261
+ address: '127.0.0.1',
262
+ port: 3000
263
+ }
264
+ }
265
+ expect(isNetworkError(error)).toBe(true)
266
+ })
267
+
268
+ it('should handle DNS resolution failure', () => {
269
+ const error = {
270
+ cause: {
271
+ code: 'ENOTFOUND',
272
+ errno: -3008,
273
+ syscall: 'getaddrinfo',
274
+ hostname: 'nonexistent.example.com'
275
+ }
276
+ }
277
+ expect(isNetworkError(error)).toBe(true)
278
+ })
279
+
280
+ it('should handle connection reset error', () => {
281
+ const error = {
282
+ cause: {
283
+ code: 'ECONNRESET',
284
+ errno: -54,
285
+ syscall: 'read'
286
+ }
287
+ }
288
+ expect(isNetworkError(error)).toBe(true)
289
+ })
290
+
291
+ it('should not treat application errors as network errors', () => {
292
+ const error = new Error('Invalid email format')
293
+ expect(isNetworkError(error)).toBe(false)
294
+ })
295
+
296
+ it('should not treat authentication errors as network errors', () => {
297
+ const error = {
298
+ name: 'AuthenticationError',
299
+ message: 'Invalid credentials'
300
+ }
301
+ expect(isNetworkError(error)).toBe(false)
302
+ })
303
+ })
304
+ })
@@ -42,6 +42,7 @@ import type {
42
42
  LoginInfo,
43
43
  LoginInfoByToken,
44
44
  LoginInfoRequestData,
45
+ InviteInfo,
45
46
  LoginInfoWithWorkspaces,
46
47
  MailboxInfo,
47
48
  MailboxOptions,
@@ -57,7 +58,7 @@ import type {
57
58
  WorkspaceLoginInfo,
58
59
  WorkspaceOperation
59
60
  } from './types'
60
- import { getClientTimezone } from './utils'
61
+ import { getClientTimezone, isNetworkError } from './utils'
61
62
 
62
63
  /** @public */
63
64
  export interface AccountClient {
@@ -91,7 +92,9 @@ export interface AccountClient {
91
92
  ) => Promise<string>
92
93
  leaveWorkspace: (account: AccountUuid) => Promise<LoginInfo | null>
93
94
  changeUsername: (first: string, last: string) => Promise<void>
95
+ checkHasPassword: () => Promise<boolean>
94
96
  changePassword: (oldPassword: string, newPassword: string) => Promise<void>
97
+ requestPasswordSetup: () => Promise<void>
95
98
  signUpJoin: (
96
99
  email: string,
97
100
  password: string,
@@ -124,7 +127,9 @@ export interface AccountClient {
124
127
  }
125
128
  ) => Promise<string>
126
129
  checkJoin: (inviteId: string) => Promise<WorkspaceLoginInfo>
130
+ joinByToken: (inviteId: string) => Promise<WorkspaceLoginInfo>
127
131
  checkAutoJoin: (inviteId: string, firstName?: string, lastName?: string) => Promise<WorkspaceLoginInfo>
132
+ getInviteInfo: (inviteId: string) => Promise<InviteInfo>
128
133
  getWorkspaceInfo: (updateLastVisit?: boolean) => Promise<WorkspaceInfoWithStatus>
129
134
  getWorkspacesInfo: (workspaces: WorkspaceUuid[]) => Promise<WorkspaceInfoWithStatus[]>
130
135
  updateLastVisit: (workspaces: WorkspaceUuid[]) => Promise<void>
@@ -243,8 +248,20 @@ export interface AccountClient {
243
248
  getSubscriptionById: (subscriptionId: string) => Promise<Subscription | null>
244
249
  upsertSubscription: (subscription: SubscriptionData) => Promise<void>
245
250
 
251
+ batchAssignWorkspacePermission: (params: { accountIds: AccountUuid[], permission: string }) => Promise<void>
252
+ batchRevokeWorkspacePermission: (params: { accountIds: AccountUuid[], permission: string }) => Promise<void>
253
+ hasWorkspacePermission: (params: { accountId: AccountUuid, permission: string }) => Promise<boolean>
254
+ getWorkspacePermissions: (params: { accountId: AccountUuid, permission: string }) => Promise<WorkspaceUuid[]>
255
+ getWorkspaceUsersWithPermission: (params: { permission: string }) => Promise<AccountUuid[]>
256
+
257
+ verify2fa: (code: string) => Promise<LoginInfo>
258
+
246
259
  setCookie: () => Promise<void>
247
260
  deleteCookie: () => Promise<void>
261
+
262
+ generate2faSecret: () => Promise<{ secret: string, url: string }>
263
+ enable2fa: (secret: string, code: string) => Promise<void>
264
+ disable2fa: (code: string) => Promise<void>
248
265
  }
249
266
 
250
267
  /** @public */
@@ -501,6 +518,15 @@ class AccountClientImpl implements AccountClient {
501
518
  await this.rpc(request)
502
519
  }
503
520
 
521
+ async checkHasPassword (): Promise<boolean> {
522
+ const request = {
523
+ method: 'checkHasPassword' as const,
524
+ params: {}
525
+ }
526
+
527
+ return await this.rpc(request)
528
+ }
529
+
504
530
  async changePassword (oldPassword: string, newPassword: string): Promise<void> {
505
531
  const request = {
506
532
  method: 'changePassword' as const,
@@ -510,6 +536,15 @@ class AccountClientImpl implements AccountClient {
510
536
  await this.rpc(request)
511
537
  }
512
538
 
539
+ async requestPasswordSetup (): Promise<void> {
540
+ const request = {
541
+ method: 'requestPasswordSetup' as const,
542
+ params: {}
543
+ }
544
+
545
+ await this.rpc(request)
546
+ }
547
+
513
548
  async updatePasswordAgingRule (days: number): Promise<void> {
514
549
  const request = {
515
550
  method: 'updatePasswordAgingRule' as const,
@@ -571,6 +606,15 @@ class AccountClientImpl implements AccountClient {
571
606
  return await this.rpc(request)
572
607
  }
573
608
 
609
+ async joinByToken (inviteId: string): Promise<WorkspaceLoginInfo> {
610
+ const request = {
611
+ method: 'joinByToken' as const,
612
+ params: { inviteId }
613
+ }
614
+
615
+ return await this.rpc(request)
616
+ }
617
+
574
618
  async checkAutoJoin (inviteId: string, firstName?: string, lastName?: string): Promise<WorkspaceLoginInfo> {
575
619
  const request = {
576
620
  method: 'checkAutoJoin' as const,
@@ -580,6 +624,15 @@ class AccountClientImpl implements AccountClient {
580
624
  return await this.rpc(request)
581
625
  }
582
626
 
627
+ async getInviteInfo (inviteId: string): Promise<InviteInfo> {
628
+ const request = {
629
+ method: 'getInviteInfo' as const,
630
+ params: { inviteId }
631
+ }
632
+
633
+ return await this.rpc(request)
634
+ }
635
+
583
636
  async getWorkspacesInfo (ids: WorkspaceUuid[]): Promise<WorkspaceInfoWithStatus[]> {
584
637
  const request = {
585
638
  method: 'getWorkspacesInfo' as const,
@@ -1253,6 +1306,77 @@ class AccountClientImpl implements AccountClient {
1253
1306
  params: subscription
1254
1307
  })
1255
1308
  }
1309
+
1310
+ async batchAssignWorkspacePermission (params: { accountIds: AccountUuid[], permission: string }): Promise<void> {
1311
+ await this._rpc({
1312
+ method: 'batchAssignWorkspacePermission',
1313
+ params
1314
+ })
1315
+ }
1316
+
1317
+ async batchRevokeWorkspacePermission (params: { accountIds: AccountUuid[], permission: string }): Promise<void> {
1318
+ await this._rpc({
1319
+ method: 'batchRevokeWorkspacePermission',
1320
+ params
1321
+ })
1322
+ }
1323
+
1324
+ async hasWorkspacePermission (params: { accountId: AccountUuid, permission: string }): Promise<boolean> {
1325
+ return await this._rpc({
1326
+ method: 'hasWorkspacePermission',
1327
+ params
1328
+ })
1329
+ }
1330
+
1331
+ async getWorkspacePermissions (params: { accountId: AccountUuid, permission: string }): Promise<WorkspaceUuid[]> {
1332
+ return await this._rpc({
1333
+ method: 'getWorkspacePermissions',
1334
+ params
1335
+ })
1336
+ }
1337
+
1338
+ async getWorkspaceUsersWithPermission (params: { permission: string }): Promise<AccountUuid[]> {
1339
+ return await this._rpc({
1340
+ method: 'getWorkspaceUsersWithPermission',
1341
+ params
1342
+ })
1343
+ }
1344
+
1345
+ async verify2fa (code: string): Promise<LoginInfo> {
1346
+ const request = {
1347
+ method: 'verify2fa' as const,
1348
+ params: { code }
1349
+ }
1350
+
1351
+ return await this.rpc(request)
1352
+ }
1353
+
1354
+ async generate2faSecret (): Promise<{ secret: string, url: string }> {
1355
+ const request = {
1356
+ method: 'generate2faSecret' as const,
1357
+ params: {}
1358
+ }
1359
+
1360
+ return await this.rpc(request)
1361
+ }
1362
+
1363
+ async enable2fa (secret: string, code: string): Promise<void> {
1364
+ const request = {
1365
+ method: 'enable2fa' as const,
1366
+ params: { secret, code }
1367
+ }
1368
+
1369
+ await this.rpc(request)
1370
+ }
1371
+
1372
+ async disable2fa (code: string): Promise<void> {
1373
+ const request = {
1374
+ method: 'disable2fa' as const,
1375
+ params: { code }
1376
+ }
1377
+
1378
+ await this.rpc(request)
1379
+ }
1256
1380
  }
1257
1381
 
1258
1382
  function withRetry<T, F extends (...args: any[]) => Promise<T>> (
@@ -1280,18 +1404,15 @@ function withRetry<T, F extends (...args: any[]) => Promise<T>> (
1280
1404
  } as F
1281
1405
  }
1282
1406
 
1283
- const connectionErrorCodes = ['ECONNRESET', 'ECONNREFUSED', 'ENOTFOUND']
1284
-
1285
1407
  function withRetryUntilTimeout<T, F extends (...args: any[]) => Promise<T>> (f: F, timeoutMs: number = 5000): F {
1286
1408
  const timeout = Date.now() + timeoutMs
1287
- const shouldFail = (err: any): boolean => !connectionErrorCodes.includes(err?.cause?.code) || timeout < Date.now()
1409
+ const shouldFail = (err: any): boolean => !isNetworkError(err) || timeout < Date.now()
1288
1410
 
1289
1411
  return withRetry(f, shouldFail)
1290
1412
  }
1291
1413
 
1292
1414
  function withRetryUntilMaxAttempts<T, F extends (...args: any[]) => Promise<T>> (f: F, maxAttempts: number = 5): F {
1293
- const shouldFail = (err: any, attempt: number): boolean =>
1294
- !connectionErrorCodes.includes(err?.cause?.code) || attempt === maxAttempts
1415
+ const shouldFail = (err: any, attempt: number): boolean => !isNetworkError(err) || attempt === maxAttempts
1295
1416
 
1296
1417
  return withRetry(f, shouldFail)
1297
1418
  }
@@ -19,6 +19,8 @@ export interface LoginInfo {
19
19
  name?: string
20
20
  socialId?: PersonId
21
21
  token?: string
22
+ tfaRequired?: boolean
23
+ extra?: Record<string, string>
22
24
  }
23
25
 
24
26
  export interface EndpointInfo {
@@ -80,6 +82,11 @@ export interface WorkspaceInviteInfo {
80
82
  name?: string
81
83
  }
82
84
 
85
+ /** Public invite details from getInviteInfo (no auth required). */
86
+ export interface InviteInfo {
87
+ workspaceName: string | null
88
+ }
89
+
83
90
  export interface OtpInfo {
84
91
  sent: boolean
85
92
  retryOn: Timestamp
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright © 2024 Hardcore Engineering Inc.
2
+ // Copyright © 2026 Hardcore Engineering Inc.
3
3
  //
4
4
  // Licensed under the Eclipse Public License, Version 2.0 (the "License");
5
5
  // you may not use this file except in compliance with the License. You may
@@ -31,3 +31,67 @@ export function getClientTimezone (): string | undefined {
31
31
  return undefined
32
32
  }
33
33
  }
34
+
35
+ const connectionErrorCodes = ['ECONNRESET', 'ECONNREFUSED', 'ENOTFOUND']
36
+ const networkErrorNames = ['NetworkError', 'TypeError', 'FetchError']
37
+ const browserFetchErrorMessages = ['failed to fetch', 'networkerror', 'network request failed']
38
+ const networkMessageKeywords = ['fetch', 'network', 'connection']
39
+
40
+ /**
41
+ * Check if a message contains network-related keywords
42
+ */
43
+ function hasNetworkMessage (message: string): boolean {
44
+ const lowerMessage = message.toLowerCase()
45
+ return networkMessageKeywords.some((keyword) => lowerMessage.includes(keyword))
46
+ }
47
+
48
+ /**
49
+ * Check if an error is a network/connection error that should be retried
50
+ */
51
+ export function isNetworkError (err: unknown): boolean {
52
+ if (err == null) {
53
+ return false
54
+ }
55
+
56
+ // Check Node.js-style connection error codes
57
+ if (typeof err === 'object' && 'cause' in err) {
58
+ const cause = (err as { cause?: unknown }).cause
59
+ if (cause != null && typeof cause === 'object' && 'code' in cause) {
60
+ const code = (cause as { code?: unknown }).code
61
+ if (typeof code === 'string' && connectionErrorCodes.includes(code)) {
62
+ return true
63
+ }
64
+ }
65
+ }
66
+
67
+ // Get error name and message (handles both Error instances and plain objects)
68
+ let errorName: string | undefined
69
+ let message: string | undefined
70
+
71
+ if (err instanceof TypeError) {
72
+ errorName = 'TypeError'
73
+ message = err.message
74
+ } else if (typeof err === 'object' && 'name' in err && 'message' in err) {
75
+ const name = (err as { name?: unknown }).name
76
+ const msg = (err as { message?: unknown }).message
77
+ if (typeof name === 'string') {
78
+ errorName = name
79
+ }
80
+ if (typeof msg === 'string') {
81
+ message = msg
82
+ }
83
+ }
84
+
85
+ // Check if error name matches network error types
86
+ if (errorName != null && networkErrorNames.includes(errorName) && message != null) {
87
+ const lowerMessage = message.toLowerCase()
88
+ if (browserFetchErrorMessages.some((pattern) => lowerMessage.includes(pattern))) {
89
+ return true
90
+ }
91
+ if (hasNetworkMessage(message)) {
92
+ return true
93
+ }
94
+ }
95
+
96
+ return false
97
+ }
@@ -75,7 +75,7 @@ const Analytics = {
75
75
  };
76
76
  (0, import_platform.addEventListener)(import_platform.PlatformEvent, async (_event, _status) => {
77
77
  if (_status.severity === import_platform.Severity.ERROR) {
78
- const label = await (0, import_platform.translate)(_status.code, _status.params, "en");
78
+ const label = await (0, import_platform.translate)(_status.code, _status.params, "en", true);
79
79
  Analytics.handleError(new Error(label));
80
80
  }
81
81
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.ts"],
4
- "sourcesContent": ["//\n// Copyright \u00A9 2024 Hardcore Engineering Inc\n//\n\nimport { addEventListener, PlatformEvent, Severity, Status, translate } from '@hcengineering/platform'\n\nexport const providers: AnalyticProvider[] = []\nexport interface AnalyticProvider {\n init: (config: Record<string, any>) => boolean\n setUser: (email: string, data: any) => void\n setAlias: (distinctId: string, alias: string) => void\n setTag: (key: string, value: string) => void\n setWorkspace: (ws: string, guest: boolean) => void\n handleEvent: (event: string, params: Record<string, string>) => void\n handleError: (error: Error) => void\n navigate: (path: string) => void\n logout: () => void\n}\n\nexport const Analytics = {\n data: {},\n\n init (provider: AnalyticProvider, config: Record<string, any>): void {\n const res = provider.init(config)\n if (res) {\n providers.push(provider)\n }\n },\n\n setUser (email: string, data: any): void {\n providers.forEach((provider) => {\n provider.setUser(email, data)\n })\n },\n\n setAlias (distinctId: string, alias: string): void {\n providers.forEach((provider) => {\n provider.setAlias(distinctId, alias)\n })\n },\n\n setTag (key: string, value: string): void {\n providers.forEach((provider) => {\n provider.setTag(key, value)\n })\n },\n\n setWorkspace (ws: string, guest: boolean): void {\n providers.forEach((provider) => {\n provider.setWorkspace(ws, guest)\n })\n },\n\n handleEvent (event: string, params: Record<string, any> = {}): void {\n providers.forEach((provider) => {\n provider.handleEvent(event, { ...this.data, ...params })\n })\n },\n\n handleError (error: Error): void {\n providers.forEach((provider) => {\n provider.handleError(error)\n })\n },\n\n navigate (path: string): void {\n providers.forEach((provider) => {\n provider.navigate(path)\n })\n },\n\n logout (): void {\n providers.forEach((provider) => {\n provider.logout()\n })\n }\n}\n\naddEventListener(PlatformEvent, async (_event, _status: Status) => {\n if (_status.severity === Severity.ERROR) {\n const label = await translate(_status.code, _status.params, 'en')\n Analytics.handleError(new Error(label))\n }\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,sBAA6E;AAEtE,MAAM,YAAgC,CAAC;AAavC,MAAM,YAAY;AAAA,EACvB,MAAM,CAAC;AAAA,EAEP,KAAM,UAA4B,QAAmC;AACnE,UAAM,MAAM,SAAS,KAAK,MAAM;AAChC,QAAI,KAAK;AACP,gBAAU,KAAK,QAAQ;AAAA,IACzB;AAAA,EACF;AAAA,EAEA,QAAS,OAAe,MAAiB;AACvC,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,QAAQ,OAAO,IAAI;AAAA,IAC9B,CAAC;AAAA,EACH;AAAA,EAEA,SAAU,YAAoB,OAAqB;AACjD,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,SAAS,YAAY,KAAK;AAAA,IACrC,CAAC;AAAA,EACH;AAAA,EAEA,OAAQ,KAAa,OAAqB;AACxC,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,OAAO,KAAK,KAAK;AAAA,IAC5B,CAAC;AAAA,EACH;AAAA,EAEA,aAAc,IAAY,OAAsB;AAC9C,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,aAAa,IAAI,KAAK;AAAA,IACjC,CAAC;AAAA,EACH;AAAA,EAEA,YAAa,OAAe,SAA8B,CAAC,GAAS;AAClE,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,YAAY,OAAO,EAAE,GAAG,KAAK,MAAM,GAAG,OAAO,CAAC;AAAA,IACzD,CAAC;AAAA,EACH;AAAA,EAEA,YAAa,OAAoB;AAC/B,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,YAAY,KAAK;AAAA,IAC5B,CAAC;AAAA,EACH;AAAA,EAEA,SAAU,MAAoB;AAC5B,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,SAAS,IAAI;AAAA,IACxB,CAAC;AAAA,EACH;AAAA,EAEA,SAAgB;AACd,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,OAAO;AAAA,IAClB,CAAC;AAAA,EACH;AACF;AAAA,IAEA,kCAAiB,+BAAe,OAAO,QAAQ,YAAoB;AACjE,MAAI,QAAQ,aAAa,yBAAS,OAAO;AACvC,UAAM,QAAQ,UAAM,2BAAU,QAAQ,MAAM,QAAQ,QAAQ,IAAI;AAChE,cAAU,YAAY,IAAI,MAAM,KAAK,CAAC;AAAA,EACxC;AACF,CAAC;",
4
+ "sourcesContent": ["//\n// Copyright \u00A9 2024 Hardcore Engineering Inc\n//\n\nimport { addEventListener, PlatformEvent, Severity, Status, translate } from '@hcengineering/platform'\n\nexport const providers: AnalyticProvider[] = []\nexport interface AnalyticProvider {\n init: (config: Record<string, any>) => boolean\n setUser: (email: string, data: any) => void\n setAlias: (distinctId: string, alias: string) => void\n setTag: (key: string, value: string) => void\n setWorkspace: (ws: string, guest: boolean) => void\n handleEvent: (event: string, params: Record<string, string>) => void\n handleError: (error: Error) => void\n navigate: (path: string) => void\n logout: () => void\n}\n\nexport const Analytics = {\n data: {},\n\n init (provider: AnalyticProvider, config: Record<string, any>): void {\n const res = provider.init(config)\n if (res) {\n providers.push(provider)\n }\n },\n\n setUser (email: string, data: any): void {\n providers.forEach((provider) => {\n provider.setUser(email, data)\n })\n },\n\n setAlias (distinctId: string, alias: string): void {\n providers.forEach((provider) => {\n provider.setAlias(distinctId, alias)\n })\n },\n\n setTag (key: string, value: string): void {\n providers.forEach((provider) => {\n provider.setTag(key, value)\n })\n },\n\n setWorkspace (ws: string, guest: boolean): void {\n providers.forEach((provider) => {\n provider.setWorkspace(ws, guest)\n })\n },\n\n handleEvent (event: string, params: Record<string, any> = {}): void {\n providers.forEach((provider) => {\n provider.handleEvent(event, { ...this.data, ...params })\n })\n },\n\n handleError (error: Error): void {\n providers.forEach((provider) => {\n provider.handleError(error)\n })\n },\n\n navigate (path: string): void {\n providers.forEach((provider) => {\n provider.navigate(path)\n })\n },\n\n logout (): void {\n providers.forEach((provider) => {\n provider.logout()\n })\n }\n}\n\naddEventListener(PlatformEvent, async (_event, _status: Status) => {\n if (_status.severity === Severity.ERROR) {\n // Skip error broadcast in translate to avoid infinite loop\n const label = await translate(_status.code, _status.params, 'en', true)\n Analytics.handleError(new Error(label))\n }\n})\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,sBAA6E;AAEtE,MAAM,YAAgC,CAAC;AAavC,MAAM,YAAY;AAAA,EACvB,MAAM,CAAC;AAAA,EAEP,KAAM,UAA4B,QAAmC;AACnE,UAAM,MAAM,SAAS,KAAK,MAAM;AAChC,QAAI,KAAK;AACP,gBAAU,KAAK,QAAQ;AAAA,IACzB;AAAA,EACF;AAAA,EAEA,QAAS,OAAe,MAAiB;AACvC,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,QAAQ,OAAO,IAAI;AAAA,IAC9B,CAAC;AAAA,EACH;AAAA,EAEA,SAAU,YAAoB,OAAqB;AACjD,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,SAAS,YAAY,KAAK;AAAA,IACrC,CAAC;AAAA,EACH;AAAA,EAEA,OAAQ,KAAa,OAAqB;AACxC,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,OAAO,KAAK,KAAK;AAAA,IAC5B,CAAC;AAAA,EACH;AAAA,EAEA,aAAc,IAAY,OAAsB;AAC9C,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,aAAa,IAAI,KAAK;AAAA,IACjC,CAAC;AAAA,EACH;AAAA,EAEA,YAAa,OAAe,SAA8B,CAAC,GAAS;AAClE,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,YAAY,OAAO,EAAE,GAAG,KAAK,MAAM,GAAG,OAAO,CAAC;AAAA,IACzD,CAAC;AAAA,EACH;AAAA,EAEA,YAAa,OAAoB;AAC/B,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,YAAY,KAAK;AAAA,IAC5B,CAAC;AAAA,EACH;AAAA,EAEA,SAAU,MAAoB;AAC5B,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,SAAS,IAAI;AAAA,IACxB,CAAC;AAAA,EACH;AAAA,EAEA,SAAgB;AACd,cAAU,QAAQ,CAAC,aAAa;AAC9B,eAAS,OAAO;AAAA,IAClB,CAAC;AAAA,EACH;AACF;AAAA,IAEA,kCAAiB,+BAAe,OAAO,QAAQ,YAAoB;AACjE,MAAI,QAAQ,aAAa,yBAAS,OAAO;AAEvC,UAAM,QAAQ,UAAM,2BAAU,QAAQ,MAAM,QAAQ,QAAQ,MAAM,IAAI;AACtE,cAAU,YAAY,IAAI,MAAM,KAAK,CAAC;AAAA,EACxC;AACF,CAAC;",
6
6
  "names": []
7
7
  }