@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.
- package/README.md +186 -56
- package/node_modules/@hcengineering/account-client/lib/__tests__/utils.test.js +249 -0
- package/node_modules/@hcengineering/account-client/lib/__tests__/utils.test.js.map +7 -0
- package/node_modules/@hcengineering/account-client/lib/client.js +88 -3
- package/node_modules/@hcengineering/account-client/lib/client.js.map +2 -2
- package/node_modules/@hcengineering/account-client/lib/types.js.map +2 -2
- package/node_modules/@hcengineering/account-client/lib/utils.js +50 -0
- package/node_modules/@hcengineering/account-client/lib/utils.js.map +2 -2
- package/node_modules/@hcengineering/account-client/package.json +22 -19
- package/node_modules/@hcengineering/account-client/src/__tests__/utils.test.ts +304 -0
- package/node_modules/@hcengineering/account-client/src/client.ts +127 -6
- package/node_modules/@hcengineering/account-client/src/types.ts +7 -0
- package/node_modules/@hcengineering/account-client/src/utils.ts +65 -1
- package/node_modules/@hcengineering/analytics/lib/index.js +1 -1
- package/node_modules/@hcengineering/analytics/lib/index.js.map +2 -2
- package/node_modules/@hcengineering/analytics/package.json +19 -16
- package/node_modules/@hcengineering/analytics/src/index.ts +2 -1
- package/node_modules/@hcengineering/api-client/lib/client.js +9 -4
- package/node_modules/@hcengineering/api-client/lib/client.js.map +2 -2
- package/node_modules/@hcengineering/api-client/lib/rest/adapter.js +64 -0
- package/node_modules/@hcengineering/api-client/lib/rest/adapter.js.map +7 -0
- package/node_modules/@hcengineering/api-client/lib/rest/index.js +2 -0
- package/node_modules/@hcengineering/api-client/lib/rest/index.js.map +2 -2
- package/node_modules/@hcengineering/api-client/lib/socket/node.js +5 -1
- package/node_modules/@hcengineering/api-client/lib/socket/node.js.map +2 -2
- package/node_modules/@hcengineering/api-client/package.json +28 -25
- package/node_modules/@hcengineering/api-client/src/client.ts +10 -1
- package/node_modules/@hcengineering/api-client/src/rest/adapter.ts +96 -0
- package/node_modules/@hcengineering/api-client/src/rest/index.ts +1 -0
- package/node_modules/@hcengineering/api-client/src/socket/node.ts +6 -1
- package/node_modules/@hcengineering/chunter/lib/index.js.map +2 -2
- package/node_modules/@hcengineering/chunter/package.json +13 -10
- package/node_modules/@hcengineering/client/package.json +21 -18
- package/node_modules/@hcengineering/client-resources/package.json +24 -21
- package/node_modules/@hcengineering/collaborator-client/package.json +21 -18
- package/node_modules/@hcengineering/contact/lib/__tests__/workspaceMemberStatusUtils.test.js +38 -0
- package/node_modules/@hcengineering/contact/lib/__tests__/workspaceMemberStatusUtils.test.js.map +7 -0
- package/node_modules/@hcengineering/contact/lib/index.js +13 -4
- package/node_modules/@hcengineering/contact/lib/index.js.map +2 -2
- package/node_modules/@hcengineering/contact/lib/types.js.map +1 -1
- package/node_modules/@hcengineering/contact/lib/utils.js +132 -108
- package/node_modules/@hcengineering/contact/lib/utils.js.map +3 -3
- package/node_modules/@hcengineering/contact/lib/workspaceMemberStatusUtils.js +79 -0
- package/node_modules/@hcengineering/contact/lib/workspaceMemberStatusUtils.js.map +7 -0
- package/node_modules/@hcengineering/contact/package.json +12 -9
- package/node_modules/@hcengineering/core/CHANGELOG.md +9 -1
- package/node_modules/@hcengineering/core/lang/cs.json +6 -1
- package/node_modules/@hcengineering/core/lang/de.json +6 -1
- package/node_modules/@hcengineering/core/lang/en.json +6 -1
- package/node_modules/@hcengineering/core/lang/es.json +6 -1
- package/node_modules/@hcengineering/core/lang/fr.json +6 -1
- package/node_modules/@hcengineering/core/lang/it.json +6 -1
- package/node_modules/@hcengineering/core/lang/ja.json +6 -1
- package/node_modules/@hcengineering/core/lang/pt-br.json +70 -0
- package/node_modules/@hcengineering/core/lang/pt.json +6 -1
- package/node_modules/@hcengineering/core/lang/ru.json +6 -1
- package/node_modules/@hcengineering/core/lang/tr.json +6 -1
- package/node_modules/@hcengineering/core/lang/zh.json +6 -1
- package/node_modules/@hcengineering/core/lib/__tests__/autoJoinRoles.test.js +13 -0
- package/node_modules/@hcengineering/core/lib/__tests__/autoJoinRoles.test.js.map +7 -0
- package/node_modules/@hcengineering/core/lib/__tests__/memdb.test.js +133 -0
- package/node_modules/@hcengineering/core/lib/__tests__/memdb.test.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/__tests__/minmodel.js +25 -0
- package/node_modules/@hcengineering/core/lib/__tests__/minmodel.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/__tests__/query.test.js +43 -0
- package/node_modules/@hcengineering/core/lib/__tests__/query.test.js.map +7 -0
- package/node_modules/@hcengineering/core/lib/autoJoinRoles.js +36 -0
- package/node_modules/@hcengineering/core/lib/autoJoinRoles.js.map +7 -0
- package/node_modules/@hcengineering/core/lib/classes.js +5 -0
- package/node_modules/@hcengineering/core/lib/classes.js.map +3 -3
- package/node_modules/@hcengineering/core/lib/clone.js +13 -2
- package/node_modules/@hcengineering/core/lib/clone.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/component.js +14 -3
- package/node_modules/@hcengineering/core/lib/component.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/index.js +2 -0
- package/node_modules/@hcengineering/core/lib/index.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/memdb.js +6 -2
- package/node_modules/@hcengineering/core/lib/memdb.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/operations.js +11 -0
- package/node_modules/@hcengineering/core/lib/operations.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/predicate.js +3 -0
- package/node_modules/@hcengineering/core/lib/predicate.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/storage.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/tx.js +3 -1
- package/node_modules/@hcengineering/core/lib/tx.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/utils.js +1 -1
- package/node_modules/@hcengineering/core/lib/utils.js.map +2 -2
- package/node_modules/@hcengineering/core/lib/versioning.js +17 -0
- package/node_modules/@hcengineering/core/lib/versioning.js.map +7 -0
- package/node_modules/@hcengineering/core/package.json +22 -19
- package/node_modules/@hcengineering/core/src/__tests__/autoJoinRoles.test.ts +27 -0
- package/node_modules/@hcengineering/core/src/__tests__/memdb.test.ts +150 -1
- package/node_modules/@hcengineering/core/src/__tests__/minmodel.ts +29 -1
- package/node_modules/@hcengineering/core/src/__tests__/query.test.ts +66 -0
- package/node_modules/@hcengineering/core/src/autoJoinRoles.ts +33 -0
- package/node_modules/@hcengineering/core/src/classes.ts +61 -1
- package/node_modules/@hcengineering/core/src/clone.ts +13 -2
- package/node_modules/@hcengineering/core/src/component.ts +25 -9
- package/node_modules/@hcengineering/core/src/index.ts +2 -0
- package/node_modules/@hcengineering/core/src/memdb.ts +7 -3
- package/node_modules/@hcengineering/core/src/operations.ts +11 -0
- package/node_modules/@hcengineering/core/src/predicate.ts +3 -0
- package/node_modules/@hcengineering/core/src/storage.ts +6 -3
- package/node_modules/@hcengineering/core/src/tx.ts +4 -1
- package/node_modules/@hcengineering/core/src/utils.ts +1 -1
- package/node_modules/@hcengineering/core/src/versioning.ts +13 -0
- package/node_modules/@hcengineering/measurements/lib/__tests__/performance.test.js +3 -3
- package/node_modules/@hcengineering/measurements/lib/__tests__/performance.test.js.map +2 -2
- package/node_modules/@hcengineering/measurements/package.json +17 -14
- package/node_modules/@hcengineering/measurements/src/__tests__/performance.test.ts +3 -3
- package/node_modules/@hcengineering/platform/lang/pt-br.json +31 -0
- package/node_modules/@hcengineering/platform/lib/__tests__/i18n.test.js +100 -0
- package/node_modules/@hcengineering/platform/lib/__tests__/i18n.test.js.map +2 -2
- package/node_modules/@hcengineering/platform/lib/__tests__/status.test.js +78 -0
- package/node_modules/@hcengineering/platform/lib/__tests__/status.test.js.map +7 -0
- package/node_modules/@hcengineering/platform/lib/i18n.js +78 -69
- package/node_modules/@hcengineering/platform/lib/i18n.js.map +3 -3
- package/node_modules/@hcengineering/platform/lib/status.js +25 -0
- package/node_modules/@hcengineering/platform/lib/status.js.map +2 -2
- package/node_modules/@hcengineering/platform/package.json +18 -15
- package/node_modules/@hcengineering/platform/src/__tests__/i18n.test.ts +114 -2
- package/node_modules/@hcengineering/platform/src/__tests__/status.test.ts +77 -0
- package/node_modules/@hcengineering/platform/src/i18n.ts +99 -71
- package/node_modules/@hcengineering/platform/src/status.ts +30 -0
- package/node_modules/@hcengineering/rank/package.json +19 -16
- package/node_modules/@hcengineering/rpc/package.json +21 -18
- package/node_modules/@hcengineering/tags/package.json +12 -9
- package/node_modules/@hcengineering/task/package.json +14 -11
- package/node_modules/@hcengineering/text/lib/markup/__tests__/utils.test.js +25 -0
- package/node_modules/@hcengineering/text/lib/markup/__tests__/utils.test.js.map +2 -2
- package/node_modules/@hcengineering/text/lib/tiptapExtensions.js +6 -0
- package/node_modules/@hcengineering/text/lib/tiptapExtensions.js.map +2 -2
- package/node_modules/@hcengineering/text/package.json +23 -18
- package/node_modules/@hcengineering/text/src/markup/__tests__/utils.test.ts +27 -0
- package/node_modules/@hcengineering/text/src/tiptapExtensions.ts +3 -0
- package/node_modules/@hcengineering/text-core/lib/markup/model.js +1 -0
- package/node_modules/@hcengineering/text-core/lib/markup/model.js.map +2 -2
- package/node_modules/@hcengineering/text-core/package.json +20 -17
- package/node_modules/@hcengineering/text-core/src/markup/model.ts +2 -1
- package/node_modules/@hcengineering/text-html/package.json +19 -16
- package/node_modules/@hcengineering/text-markdown/lib/serializer.js +14 -0
- package/node_modules/@hcengineering/text-markdown/lib/serializer.js.map +2 -2
- package/node_modules/@hcengineering/text-markdown/package.json +20 -17
- package/node_modules/@hcengineering/text-markdown/src/serializer.ts +14 -0
- package/node_modules/@hcengineering/tracker/lib/index.js +1 -0
- package/node_modules/@hcengineering/tracker/lib/index.js.map +2 -2
- package/node_modules/@hcengineering/tracker/package.json +16 -13
- package/node_modules/@tiptap/core/dist/commands/focus.d.ts.map +1 -1
- package/node_modules/@tiptap/core/dist/index.cjs +19 -2
- package/node_modules/@tiptap/core/dist/index.cjs.map +1 -1
- package/node_modules/@tiptap/core/dist/index.js +19 -3
- package/node_modules/@tiptap/core/dist/index.js.map +1 -1
- package/node_modules/@tiptap/core/dist/index.umd.js +19 -2
- package/node_modules/@tiptap/core/dist/index.umd.js.map +1 -1
- package/node_modules/@tiptap/core/dist/utilities/index.d.ts +1 -0
- package/node_modules/@tiptap/core/dist/utilities/index.d.ts.map +1 -1
- package/node_modules/@tiptap/core/dist/utilities/isSafari.d.ts +10 -0
- package/node_modules/@tiptap/core/dist/utilities/isSafari.d.ts.map +1 -0
- package/node_modules/@tiptap/core/package.json +2 -2
- package/node_modules/@tiptap/core/src/commands/focus.ts +7 -2
- package/node_modules/@tiptap/core/src/utilities/index.ts +1 -0
- package/node_modules/@tiptap/core/src/utilities/isSafari.ts +11 -0
- package/node_modules/@tiptap/extension-blockquote/package.json +2 -2
- package/node_modules/@tiptap/extension-bold/package.json +2 -2
- package/node_modules/@tiptap/extension-bullet-list/package.json +2 -2
- package/node_modules/@tiptap/extension-code/package.json +2 -2
- package/node_modules/@tiptap/extension-code-block/package.json +3 -3
- package/node_modules/@tiptap/extension-document/package.json +2 -2
- package/node_modules/@tiptap/extension-dropcursor/package.json +3 -3
- package/node_modules/@tiptap/extension-gapcursor/package.json +3 -3
- package/node_modules/@tiptap/extension-hard-break/package.json +2 -2
- package/node_modules/@tiptap/extension-heading/package.json +2 -2
- package/node_modules/@tiptap/extension-highlight/package.json +2 -2
- package/node_modules/@tiptap/extension-history/package.json +3 -3
- package/node_modules/@tiptap/extension-horizontal-rule/package.json +3 -3
- package/node_modules/@tiptap/extension-italic/package.json +2 -2
- package/node_modules/@tiptap/extension-link/package.json +3 -3
- package/node_modules/@tiptap/extension-list-item/package.json +2 -2
- package/node_modules/@tiptap/extension-mention/package.json +4 -4
- package/node_modules/@tiptap/extension-ordered-list/package.json +2 -2
- package/node_modules/@tiptap/extension-paragraph/package.json +2 -2
- package/node_modules/@tiptap/extension-strike/package.json +2 -2
- package/node_modules/@tiptap/extension-subscript/README.md +14 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.cjs +61 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.cjs.map +1 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.d.ts +4 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.d.ts.map +1 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.js +56 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.js.map +1 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.umd.js +65 -0
- package/node_modules/@tiptap/extension-subscript/dist/index.umd.js.map +1 -0
- package/node_modules/@tiptap/extension-subscript/dist/subscript.d.ts +36 -0
- package/node_modules/@tiptap/extension-subscript/dist/subscript.d.ts.map +1 -0
- package/node_modules/@tiptap/extension-subscript/package.json +49 -0
- package/node_modules/@tiptap/extension-subscript/src/index.ts +5 -0
- package/node_modules/@tiptap/extension-subscript/src/subscript.ts +91 -0
- package/node_modules/@tiptap/extension-superscript/README.md +14 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.cjs +61 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.cjs.map +1 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.d.ts +4 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.d.ts.map +1 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.js +56 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.js.map +1 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.umd.js +65 -0
- package/node_modules/@tiptap/extension-superscript/dist/index.umd.js.map +1 -0
- package/node_modules/@tiptap/extension-superscript/dist/superscript.d.ts +36 -0
- package/node_modules/@tiptap/extension-superscript/dist/superscript.d.ts.map +1 -0
- package/node_modules/@tiptap/extension-superscript/package.json +49 -0
- package/node_modules/@tiptap/extension-superscript/src/index.ts +5 -0
- package/node_modules/@tiptap/extension-superscript/src/superscript.ts +91 -0
- package/node_modules/@tiptap/extension-table/package.json +3 -3
- package/node_modules/@tiptap/extension-table-cell/package.json +2 -2
- package/node_modules/@tiptap/extension-table-header/package.json +2 -2
- package/node_modules/@tiptap/extension-table-row/package.json +2 -2
- package/node_modules/@tiptap/extension-task-item/package.json +3 -3
- package/node_modules/@tiptap/extension-task-list/package.json +2 -2
- package/node_modules/@tiptap/extension-text/package.json +2 -2
- package/node_modules/@tiptap/extension-typography/package.json +2 -2
- package/node_modules/@tiptap/extension-underline/package.json +2 -2
- package/node_modules/@tiptap/html/package.json +3 -3
- package/node_modules/@tiptap/pm/package.json +1 -1
- package/node_modules/@tiptap/starter-kit/node_modules/@tiptap/extension-text-style/package.json +2 -2
- package/node_modules/@tiptap/starter-kit/package.json +22 -22
- package/node_modules/@tiptap/suggestion/package.json +3 -3
- package/node_modules/linkify-it/build/index.cjs.js +99 -94
- package/node_modules/linkify-it/index.mjs +99 -94
- package/node_modules/linkify-it/package.json +11 -1
- package/node_modules/linkifyjs/README.md +4 -2
- package/node_modules/linkifyjs/dist/linkify.cjs +8 -11
- package/node_modules/linkifyjs/dist/linkify.d.cts +14 -14
- package/node_modules/linkifyjs/dist/linkify.d.mts +14 -14
- package/node_modules/linkifyjs/dist/linkify.js +8 -11
- package/node_modules/linkifyjs/dist/linkify.min.js +1 -1
- package/node_modules/linkifyjs/dist/linkify.mjs +8 -11
- package/node_modules/linkifyjs/package.json +1 -1
- package/node_modules/markdown-it/README.md +13 -17
- package/node_modules/markdown-it/dist/index.cjs.js +111 -31
- package/node_modules/markdown-it/dist/markdown-it.js +117 -31
- package/node_modules/markdown-it/dist/markdown-it.min.js +2 -2
- package/node_modules/markdown-it/lib/common/utils.mjs +30 -1
- package/node_modules/markdown-it/lib/index.mjs +1 -1
- package/node_modules/markdown-it/lib/rules_block/heading.mjs +2 -2
- package/node_modules/markdown-it/lib/rules_block/html_block.mjs +12 -1
- package/node_modules/markdown-it/lib/rules_block/lheading.mjs +4 -1
- package/node_modules/markdown-it/lib/rules_block/paragraph.mjs +3 -1
- package/node_modules/markdown-it/lib/rules_core/smartquotes.mjs +37 -21
- package/node_modules/markdown-it/lib/rules_inline/entity.mjs +2 -2
- package/node_modules/markdown-it/lib/rules_inline/state_inline.mjs +37 -6
- package/node_modules/markdown-it/package.json +14 -3
- package/node_modules/msgpackr/README.md +1 -3
- package/node_modules/msgpackr/benchmark.md +26 -16
- package/node_modules/msgpackr/dist/index-no-eval.cjs +35 -16
- package/node_modules/msgpackr/dist/index-no-eval.cjs.map +1 -1
- package/node_modules/msgpackr/dist/index-no-eval.min.js +1 -1
- package/node_modules/msgpackr/dist/index-no-eval.min.js.map +1 -1
- package/node_modules/msgpackr/dist/index.js +35 -16
- package/node_modules/msgpackr/dist/index.js.map +1 -1
- package/node_modules/msgpackr/dist/index.min.js +1 -1
- package/node_modules/msgpackr/dist/index.min.js.map +1 -1
- package/node_modules/msgpackr/dist/node.cjs +50 -26
- package/node_modules/msgpackr/dist/node.cjs.map +1 -1
- package/node_modules/msgpackr/dist/test.js +44 -16
- package/node_modules/msgpackr/dist/test.js.map +1 -1
- package/node_modules/msgpackr/dist/unpack-no-eval.cjs +35 -16
- package/node_modules/msgpackr/dist/unpack-no-eval.cjs.map +1 -1
- package/node_modules/msgpackr/index.d.cts +2 -0
- package/node_modules/msgpackr/index.d.ts +2 -0
- package/node_modules/msgpackr/package.json +1 -1
- package/node_modules/msgpackr/stream.js +15 -10
- package/node_modules/msgpackr/unpack.js +35 -16
- package/node_modules/prosemirror-changeset/CHANGELOG.md +12 -0
- package/node_modules/prosemirror-changeset/README.md +31 -2
- package/node_modules/prosemirror-changeset/dist/index.cjs +17 -2
- package/node_modules/prosemirror-changeset/dist/index.d.cts +32 -2
- package/node_modules/prosemirror-changeset/dist/index.d.ts +32 -2
- package/node_modules/prosemirror-changeset/dist/index.js +18 -3
- package/node_modules/prosemirror-changeset/package.json +2 -2
- package/node_modules/prosemirror-changeset/src/README.md +4 -2
- package/node_modules/prosemirror-changeset/src/change.ts +18 -0
- package/node_modules/prosemirror-changeset/src/changeset.ts +10 -4
- package/node_modules/prosemirror-changeset/src/simplify.ts +1 -1
- package/node_modules/prosemirror-changeset/test/test-simplify.ts +3 -0
- package/node_modules/prosemirror-gapcursor/CHANGELOG.md +6 -0
- package/node_modules/prosemirror-gapcursor/dist/index.cjs +1 -1
- package/node_modules/prosemirror-gapcursor/dist/index.js +1 -1
- package/node_modules/prosemirror-gapcursor/package.json +3 -2
- package/node_modules/prosemirror-gapcursor/src/gapcursor.ts +1 -1
- package/node_modules/prosemirror-markdown/CHANGELOG.md +12 -0
- package/node_modules/prosemirror-markdown/dist/index.cjs +11 -1
- package/node_modules/prosemirror-markdown/dist/index.js +14 -2
- package/node_modules/prosemirror-markdown/package.json +1 -1
- package/node_modules/prosemirror-markdown/src/to_markdown.ts +12 -3
- package/node_modules/prosemirror-menu/CHANGELOG.md +18 -0
- package/node_modules/prosemirror-menu/CONTRIBUTING.md +22 -18
- package/node_modules/prosemirror-menu/README.md +69 -29
- package/node_modules/prosemirror-menu/dist/index.cjs +232 -48
- package/node_modules/prosemirror-menu/dist/index.d.cts +29 -14
- package/node_modules/prosemirror-menu/dist/index.d.ts +29 -14
- package/node_modules/prosemirror-menu/dist/index.js +229 -36
- package/node_modules/prosemirror-menu/package.json +2 -2
- package/node_modules/prosemirror-menu/src/README.md +30 -1
- package/node_modules/prosemirror-menu/src/icons.ts +3 -2
- package/node_modules/prosemirror-menu/src/menu.ts +193 -40
- package/node_modules/prosemirror-menu/src/menubar.ts +50 -5
- package/node_modules/prosemirror-menu/style/menu.css +28 -7
- package/node_modules/prosemirror-model/CHANGELOG.md +20 -0
- package/node_modules/prosemirror-model/CONTRIBUTING.md +19 -19
- package/node_modules/prosemirror-model/README.md +3 -3
- package/node_modules/prosemirror-model/dist/index.cjs +13 -10
- package/node_modules/prosemirror-model/dist/index.d.cts +25 -21
- package/node_modules/prosemirror-model/dist/index.d.ts +25 -21
- package/node_modules/prosemirror-model/dist/index.js +19 -23
- package/node_modules/prosemirror-model/package.json +2 -2
- package/node_modules/prosemirror-model/src/fragment.ts +1 -1
- package/node_modules/prosemirror-model/src/from_dom.ts +4 -1
- package/node_modules/prosemirror-model/src/node.ts +5 -4
- package/node_modules/prosemirror-model/src/replace.ts +6 -15
- package/node_modules/prosemirror-model/src/schema.ts +1 -1
- package/node_modules/prosemirror-model/src/to_dom.ts +24 -20
- package/node_modules/prosemirror-transform/CHANGELOG.md +16 -0
- package/node_modules/prosemirror-transform/dist/index.cjs +38 -4
- package/node_modules/prosemirror-transform/dist/index.d.cts +19 -0
- package/node_modules/prosemirror-transform/dist/index.d.ts +19 -0
- package/node_modules/prosemirror-transform/dist/index.js +52 -1
- package/node_modules/prosemirror-transform/package.json +1 -1
- package/node_modules/prosemirror-transform/src/replace.ts +16 -0
- package/node_modules/prosemirror-transform/src/replace_step.ts +10 -1
- package/node_modules/prosemirror-transform/src/transform.ts +21 -2
- package/node_modules/prosemirror-view/CHANGELOG.md +34 -2
- package/node_modules/prosemirror-view/CONTRIBUTING.md +19 -19
- package/node_modules/prosemirror-view/README.md +3 -3
- package/node_modules/prosemirror-view/dist/index.cjs +96 -40
- package/node_modules/prosemirror-view/dist/index.d.cts +2 -2
- package/node_modules/prosemirror-view/dist/index.d.ts +2 -2
- package/node_modules/prosemirror-view/dist/index.js +90 -39
- package/node_modules/prosemirror-view/package.json +2 -2
- package/node_modules/prosemirror-view/src/domchange.ts +1 -1
- package/node_modules/prosemirror-view/src/domobserver.ts +59 -16
- package/node_modules/prosemirror-view/src/index.ts +4 -4
- package/node_modules/prosemirror-view/src/input.ts +9 -6
- package/node_modules/prosemirror-view/src/viewdesc.ts +26 -22
- package/node_modules/prosemirror-view/style/prosemirror.css +1 -1
- package/package.json +5 -4
- package/src/client.mjs +2 -2
- package/src/config.mjs +1 -0
- package/src/helpers.mjs +2 -2
- package/src/index.mjs +31 -1
- package/src/initCodex.mjs +281 -0
- package/src/mcp.mjs +1 -1
- package/src/mcpShared.mjs +95 -5
- package/node_modules/@hcengineering/account-client/types/client.d.ts +0 -140
- package/node_modules/@hcengineering/account-client/types/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/account-client/types/index.d.ts +0 -4
- package/node_modules/@hcengineering/account-client/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/account-client/types/types.d.ts +0 -177
- package/node_modules/@hcengineering/account-client/types/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/account-client/types/utils.d.ts +0 -5
- package/node_modules/@hcengineering/account-client/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/analytics/types/index.d.ts +0 -25
- package/node_modules/@hcengineering/analytics/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/__tests__/config.test.d.ts +0 -2
- package/node_modules/@hcengineering/api-client/types/__tests__/config.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/__tests__/markup-client.test.d.ts +0 -2
- package/node_modules/@hcengineering/api-client/types/__tests__/markup-client.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/__tests__/markup-types.test.d.ts +0 -2
- package/node_modules/@hcengineering/api-client/types/__tests__/markup-types.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/__tests__/rest-utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/api-client/types/__tests__/rest-utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/__tests__/utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/api-client/types/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/client.d.ts +0 -6
- package/node_modules/@hcengineering/api-client/types/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/config.d.ts +0 -8
- package/node_modules/@hcengineering/api-client/types/config.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/index.d.ts +0 -9
- package/node_modules/@hcengineering/api-client/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/markup/client.d.ts +0 -5
- package/node_modules/@hcengineering/api-client/types/markup/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/markup/index.d.ts +0 -3
- package/node_modules/@hcengineering/api-client/types/markup/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/markup/types.d.ts +0 -41
- package/node_modules/@hcengineering/api-client/types/markup/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/rest/index.d.ts +0 -4
- package/node_modules/@hcengineering/api-client/types/rest/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/rest/rest.d.ts +0 -39
- package/node_modules/@hcengineering/api-client/types/rest/rest.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/rest/tx.d.ts +0 -3
- package/node_modules/@hcengineering/api-client/types/rest/tx.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/rest/types.d.ts +0 -16
- package/node_modules/@hcengineering/api-client/types/rest/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/rest/utils.d.ts +0 -3
- package/node_modules/@hcengineering/api-client/types/rest/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/socket/browser.d.ts +0 -4
- package/node_modules/@hcengineering/api-client/types/socket/browser.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/socket/index.d.ts +0 -3
- package/node_modules/@hcengineering/api-client/types/socket/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/socket/node.d.ts +0 -4
- package/node_modules/@hcengineering/api-client/types/socket/node.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/storage/client.d.ts +0 -21
- package/node_modules/@hcengineering/api-client/types/storage/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/storage/error.d.ts +0 -10
- package/node_modules/@hcengineering/api-client/types/storage/error.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/storage/index.d.ts +0 -4
- package/node_modules/@hcengineering/api-client/types/storage/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/storage/types.d.ts +0 -10
- package/node_modules/@hcengineering/api-client/types/storage/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/types.d.ts +0 -101
- package/node_modules/@hcengineering/api-client/types/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/api-client/types/utils.d.ts +0 -12
- package/node_modules/@hcengineering/api-client/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/chunter/types/analytics.d.ts +0 -5
- package/node_modules/@hcengineering/chunter/types/analytics.d.ts.map +0 -1
- package/node_modules/@hcengineering/chunter/types/index.d.ts +0 -211
- package/node_modules/@hcengineering/chunter/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/chunter/types/utils.d.ts +0 -7
- package/node_modules/@hcengineering/chunter/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/client/types/__tests__/client.test.d.ts +0 -2
- package/node_modules/@hcengineering/client/types/__tests__/client.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/client/types/index.d.ts +0 -69
- package/node_modules/@hcengineering/client/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/client-resources/types/__tests__/connection.test.d.ts +0 -2
- package/node_modules/@hcengineering/client-resources/types/__tests__/connection.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/client-resources/types/__tests__/integration.test.d.ts +0 -45
- package/node_modules/@hcengineering/client-resources/types/__tests__/integration.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/client-resources/types/connection.d.ts +0 -7
- package/node_modules/@hcengineering/client-resources/types/connection.d.ts.map +0 -1
- package/node_modules/@hcengineering/client-resources/types/index.d.ts +0 -11
- package/node_modules/@hcengineering/client-resources/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/collaborator-client/types/__tests__/utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/collaborator-client/types/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/collaborator-client/types/client.d.ts +0 -34
- package/node_modules/@hcengineering/collaborator-client/types/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/collaborator-client/types/index.d.ts +0 -3
- package/node_modules/@hcengineering/collaborator-client/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/collaborator-client/types/utils.d.ts +0 -9
- package/node_modules/@hcengineering/collaborator-client/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/__tests__/cache.test.d.ts +0 -2
- package/node_modules/@hcengineering/contact/types/__tests__/cache.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/analytics.d.ts +0 -6
- package/node_modules/@hcengineering/contact/types/analytics.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/avatar.d.ts +0 -12
- package/node_modules/@hcengineering/contact/types/avatar.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/cache.d.ts +0 -49
- package/node_modules/@hcengineering/contact/types/cache.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/index.d.ts +0 -367
- package/node_modules/@hcengineering/contact/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/types.d.ts +0 -25
- package/node_modules/@hcengineering/contact/types/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/contact/types/utils.d.ts +0 -110
- package/node_modules/@hcengineering/contact/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/client.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/client.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/clone.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/clone.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/collaboration.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/collaboration.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/collaborators.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/collaborators.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/common.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/common.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/connection.d.ts +0 -4
- package/node_modules/@hcengineering/core/types/__tests__/connection.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/contexts.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/contexts.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/hierarchy.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/hierarchy.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/lang.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/lang.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/limiter-edge-cases.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/limiter-edge-cases.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/limits.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/limits.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/memdb.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/memdb.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/minmodel.d.ts +0 -50
- package/node_modules/@hcengineering/core/types/__tests__/minmodel.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/objvalue.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/objvalue.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/operator-bugs.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/operator-bugs.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/operator.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/operator.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/rate-limiter.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/rate-limiter.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/time.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/time.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/__tests__/utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/core/types/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/backup.d.ts +0 -26
- package/node_modules/@hcengineering/core/types/backup.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/benchmark.d.ts +0 -19
- package/node_modules/@hcengineering/core/types/benchmark.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/classes.d.ts +0 -716
- package/node_modules/@hcengineering/core/types/classes.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/client.d.ts +0 -69
- package/node_modules/@hcengineering/core/types/client.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/clone.d.ts +0 -3
- package/node_modules/@hcengineering/core/types/clone.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/collaboration.d.ts +0 -16
- package/node_modules/@hcengineering/core/types/collaboration.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/collaborators.d.ts +0 -3
- package/node_modules/@hcengineering/core/types/collaborators.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/common.d.ts +0 -4
- package/node_modules/@hcengineering/core/types/common.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/component.d.ts +0 -229
- package/node_modules/@hcengineering/core/types/component.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/hierarchy.d.ts +0 -84
- package/node_modules/@hcengineering/core/types/hierarchy.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/index.d.ts +0 -25
- package/node_modules/@hcengineering/core/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/memdb.d.ts +0 -60
- package/node_modules/@hcengineering/core/types/memdb.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/objvalue.d.ts +0 -10
- package/node_modules/@hcengineering/core/types/objvalue.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/operations.d.ts +0 -87
- package/node_modules/@hcengineering/core/types/operations.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/operator.d.ts +0 -16
- package/node_modules/@hcengineering/core/types/operator.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/predicate.d.ts +0 -6
- package/node_modules/@hcengineering/core/types/predicate.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/proxy.d.ts +0 -21
- package/node_modules/@hcengineering/core/types/proxy.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/query.d.ts +0 -21
- package/node_modules/@hcengineering/core/types/query.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/server.d.ts +0 -82
- package/node_modules/@hcengineering/core/types/server.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/status.d.ts +0 -30
- package/node_modules/@hcengineering/core/types/status.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/storage.d.ts +0 -233
- package/node_modules/@hcengineering/core/types/storage.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/time.d.ts +0 -8
- package/node_modules/@hcengineering/core/types/time.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/tx.d.ts +0 -261
- package/node_modules/@hcengineering/core/types/tx.d.ts.map +0 -1
- package/node_modules/@hcengineering/core/types/utils.d.ts +0 -207
- package/node_modules/@hcengineering/core/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/__tests__/context.test.d.ts +0 -2
- package/node_modules/@hcengineering/measurements/types/__tests__/context.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/__tests__/index.test.d.ts +0 -2
- package/node_modules/@hcengineering/measurements/types/__tests__/index.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/__tests__/metrics.test.d.ts +0 -2
- package/node_modules/@hcengineering/measurements/types/__tests__/metrics.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/__tests__/performance.test.d.ts +0 -2
- package/node_modules/@hcengineering/measurements/types/__tests__/performance.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/context.d.ts +0 -64
- package/node_modules/@hcengineering/measurements/types/context.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/index.d.ts +0 -12
- package/node_modules/@hcengineering/measurements/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/metrics.d.ts +0 -34
- package/node_modules/@hcengineering/measurements/types/metrics.d.ts.map +0 -1
- package/node_modules/@hcengineering/measurements/types/types.d.ts +0 -88
- package/node_modules/@hcengineering/measurements/types/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/__tests__/i18n.test.d.ts +0 -2
- package/node_modules/@hcengineering/platform/types/__tests__/i18n.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/__tests__/ident.test.d.ts +0 -2
- package/node_modules/@hcengineering/platform/types/__tests__/ident.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/__tests__/plugin.d.ts +0 -7
- package/node_modules/@hcengineering/platform/types/__tests__/plugin.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/__tests__/resource.test.d.ts +0 -2
- package/node_modules/@hcengineering/platform/types/__tests__/resource.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/event.d.ts +0 -39
- package/node_modules/@hcengineering/platform/types/event.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/i18n.d.ts +0 -28
- package/node_modules/@hcengineering/platform/types/i18n.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/ident.d.ts +0 -14
- package/node_modules/@hcengineering/platform/types/ident.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/index.d.ts +0 -19
- package/node_modules/@hcengineering/platform/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/metadata.d.ts +0 -38
- package/node_modules/@hcengineering/platform/types/metadata.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/platform.d.ts +0 -218
- package/node_modules/@hcengineering/platform/types/platform.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/resource.d.ts +0 -49
- package/node_modules/@hcengineering/platform/types/resource.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/status.d.ts +0 -60
- package/node_modules/@hcengineering/platform/types/status.d.ts.map +0 -1
- package/node_modules/@hcengineering/platform/types/testUtils.d.ts +0 -8
- package/node_modules/@hcengineering/platform/types/testUtils.d.ts.map +0 -1
- package/node_modules/@hcengineering/rank/types/__tests__/utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/rank/types/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/rank/types/index.d.ts +0 -3
- package/node_modules/@hcengineering/rank/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/rank/types/types.d.ts +0 -2
- package/node_modules/@hcengineering/rank/types/types.d.ts.map +0 -1
- package/node_modules/@hcengineering/rank/types/utils.d.ts +0 -6
- package/node_modules/@hcengineering/rank/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/rpc/types/index.d.ts +0 -3
- package/node_modules/@hcengineering/rpc/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/rpc/types/rpc.d.ts +0 -96
- package/node_modules/@hcengineering/rpc/types/rpc.d.ts.map +0 -1
- package/node_modules/@hcengineering/rpc/types/sliding.d.ts +0 -11
- package/node_modules/@hcengineering/rpc/types/sliding.d.ts.map +0 -1
- package/node_modules/@hcengineering/rpc/types/test/rateLimit.spec.d.ts +0 -2
- package/node_modules/@hcengineering/rpc/types/test/rateLimit.spec.d.ts.map +0 -1
- package/node_modules/@hcengineering/tags/types/analytics.d.ts +0 -5
- package/node_modules/@hcengineering/tags/types/analytics.d.ts.map +0 -1
- package/node_modules/@hcengineering/tags/types/index.d.ts +0 -105
- package/node_modules/@hcengineering/tags/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/task/types/index.d.ts +0 -227
- package/node_modules/@hcengineering/task/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/task/types/utils.d.ts +0 -61
- package/node_modules/@hcengineering/task/types/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/extensions.d.ts +0 -53
- package/node_modules/@hcengineering/text/types/extensions.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/index.d.ts +0 -13
- package/node_modules/@hcengineering/text/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/kit.d.ts +0 -12
- package/node_modules/@hcengineering/text/types/kit.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/kits/common-kit.d.ts +0 -72
- package/node_modules/@hcengineering/text/types/kits/common-kit.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/kits/server-kit.d.ts +0 -106
- package/node_modules/@hcengineering/text/types/kits/server-kit.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/marks/code.d.ts +0 -8
- package/node_modules/@hcengineering/text/types/marks/code.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/marks/colors.d.ts +0 -21
- package/node_modules/@hcengineering/text/types/marks/colors.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/marks/inlineComment.d.ts +0 -5
- package/node_modules/@hcengineering/text/types/marks/inlineComment.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/marks/noteBase.d.ts +0 -23
- package/node_modules/@hcengineering/text/types/marks/noteBase.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/marks/qmsInlineCommentMark.d.ts +0 -6
- package/node_modules/@hcengineering/text/types/marks/qmsInlineCommentMark.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/markup/__tests__/dsl.test.d.ts +0 -2
- package/node_modules/@hcengineering/text/types/markup/__tests__/dsl.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/markup/__tests__/utils.test.d.ts +0 -5
- package/node_modules/@hcengineering/text/types/markup/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/markup/utils.d.ts +0 -19
- package/node_modules/@hcengineering/text/types/markup/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/codeblock.d.ts +0 -12
- package/node_modules/@hcengineering/text/types/nodes/codeblock.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/comment.d.ts +0 -6
- package/node_modules/@hcengineering/text/types/nodes/comment.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/embed.d.ts +0 -3
- package/node_modules/@hcengineering/text/types/nodes/embed.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/emoji.d.ts +0 -17
- package/node_modules/@hcengineering/text/types/nodes/emoji.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/file.d.ts +0 -13
- package/node_modules/@hcengineering/text/types/nodes/file.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/image.d.ts +0 -52
- package/node_modules/@hcengineering/text/types/nodes/image.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/index.d.ts +0 -11
- package/node_modules/@hcengineering/text/types/nodes/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/markdown.d.ts +0 -3
- package/node_modules/@hcengineering/text/types/nodes/markdown.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/mermaid.d.ts +0 -4
- package/node_modules/@hcengineering/text/types/nodes/mermaid.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/reference.d.ts +0 -18
- package/node_modules/@hcengineering/text/types/nodes/reference.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/todo.d.ts +0 -3
- package/node_modules/@hcengineering/text/types/nodes/todo.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/nodes/utils.d.ts +0 -6
- package/node_modules/@hcengineering/text/types/nodes/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/text/types/tiptapExtensions.d.ts +0 -28
- package/node_modules/@hcengineering/text/types/tiptapExtensions.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/index.d.ts +0 -6
- package/node_modules/@hcengineering/text-core/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/__tests__/traverse.test.d.ts +0 -2
- package/node_modules/@hcengineering/text-core/types/markup/__tests__/traverse.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/__tests__/utils.test.d.ts +0 -2
- package/node_modules/@hcengineering/text-core/types/markup/__tests__/utils.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/dsl.d.ts +0 -25
- package/node_modules/@hcengineering/text-core/types/markup/dsl.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/model.d.ts +0 -74
- package/node_modules/@hcengineering/text-core/types/markup/model.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/reference.d.ts +0 -15
- package/node_modules/@hcengineering/text-core/types/markup/reference.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/traverse.d.ts +0 -6
- package/node_modules/@hcengineering/text-core/types/markup/traverse.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-core/types/markup/utils.d.ts +0 -25
- package/node_modules/@hcengineering/text-core/types/markup/utils.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-html/types/__tests__/html.test.d.ts +0 -2
- package/node_modules/@hcengineering/text-html/types/__tests__/html.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-html/types/index.d.ts +0 -6
- package/node_modules/@hcengineering/text-html/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-html/types/parser.d.ts +0 -10
- package/node_modules/@hcengineering/text-html/types/parser.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-html/types/serializer.d.ts +0 -9
- package/node_modules/@hcengineering/text-html/types/serializer.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/__tests__/markdown.test.d.ts +0 -9
- package/node_modules/@hcengineering/text-markdown/types/__tests__/markdown.test.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/compare.d.ts +0 -10
- package/node_modules/@hcengineering/text-markdown/types/compare.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/index.d.ts +0 -14
- package/node_modules/@hcengineering/text-markdown/types/index.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/marks.d.ts +0 -8
- package/node_modules/@hcengineering/text-markdown/types/marks.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/node.d.ts +0 -4
- package/node_modules/@hcengineering/text-markdown/types/node.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/parser.d.ts +0 -50
- package/node_modules/@hcengineering/text-markdown/types/parser.d.ts.map +0 -1
- package/node_modules/@hcengineering/text-markdown/types/serializer.d.ts +0 -102
- package/node_modules/@hcengineering/text-markdown/types/serializer.d.ts.map +0 -1
- package/node_modules/@hcengineering/tracker/types/analytics.d.ts +0 -24
- package/node_modules/@hcengineering/tracker/types/analytics.d.ts.map +0 -1
- package/node_modules/@hcengineering/tracker/types/index.d.ts +0 -431
- package/node_modules/@hcengineering/tracker/types/index.d.ts.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hcengineering/text-html",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.423",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"svelte": "src/index.ts",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -13,8 +13,18 @@
|
|
|
13
13
|
],
|
|
14
14
|
"author": "Anticrm Platform Contributors",
|
|
15
15
|
"license": "EPL-2.0",
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "compile",
|
|
18
|
+
"test": "jest --passWithNoTests --silent --coverage",
|
|
19
|
+
"build:watch": "compile",
|
|
20
|
+
"format": "format src",
|
|
21
|
+
"_phase:build": "compile transpile src",
|
|
22
|
+
"_phase:test": "jest --passWithNoTests --silent --coverage",
|
|
23
|
+
"_phase:format": "format src",
|
|
24
|
+
"_phase:validate": "compile validate"
|
|
25
|
+
},
|
|
16
26
|
"devDependencies": {
|
|
17
|
-
"@hcengineering/platform-rig": "^0.7.
|
|
27
|
+
"@hcengineering/platform-rig": "^0.7.423",
|
|
18
28
|
"@typescript-eslint/eslint-plugin": "^6.21.0",
|
|
19
29
|
"eslint-plugin-import": "^2.26.0",
|
|
20
30
|
"eslint-plugin-promise": "^6.1.1",
|
|
@@ -22,7 +32,7 @@
|
|
|
22
32
|
"eslint": "^8.54.0",
|
|
23
33
|
"@typescript-eslint/parser": "^6.21.0",
|
|
24
34
|
"eslint-config-standard-with-typescript": "^40.0.0",
|
|
25
|
-
"prettier": "^3.
|
|
35
|
+
"prettier": "^3.6.2",
|
|
26
36
|
"typescript": "^5.9.3",
|
|
27
37
|
"jest": "^29.7.0",
|
|
28
38
|
"ts-jest": "^29.1.1",
|
|
@@ -30,10 +40,13 @@
|
|
|
30
40
|
"eslint-plugin-svelte": "^2.35.1"
|
|
31
41
|
},
|
|
32
42
|
"dependencies": {
|
|
33
|
-
"@hcengineering/text-core": "^0.7.
|
|
43
|
+
"@hcengineering/text-core": "^0.7.423",
|
|
34
44
|
"htmlparser2": "^9.0.0"
|
|
35
45
|
},
|
|
36
|
-
"repository":
|
|
46
|
+
"repository": {
|
|
47
|
+
"type": "git",
|
|
48
|
+
"url": "git+https://github.com/hcengineering/huly.core.git"
|
|
49
|
+
},
|
|
37
50
|
"publishConfig": {
|
|
38
51
|
"access": "public"
|
|
39
52
|
},
|
|
@@ -43,15 +56,5 @@
|
|
|
43
56
|
"require": "./lib/index.js",
|
|
44
57
|
"import": "./lib/index.js"
|
|
45
58
|
}
|
|
46
|
-
},
|
|
47
|
-
"scripts": {
|
|
48
|
-
"build": "compile",
|
|
49
|
-
"test": "jest --passWithNoTests --silent --coverage",
|
|
50
|
-
"build:watch": "compile",
|
|
51
|
-
"format": "format src",
|
|
52
|
-
"_phase:build": "compile transpile src",
|
|
53
|
-
"_phase:test": "jest --passWithNoTests --silent --coverage",
|
|
54
|
-
"_phase:format": "format src",
|
|
55
|
-
"_phase:validate": "compile validate"
|
|
56
59
|
}
|
|
57
|
-
}
|
|
60
|
+
}
|
|
@@ -323,6 +323,20 @@ const storeMarks = {
|
|
|
323
323
|
mixable: false,
|
|
324
324
|
expelEnclosingWhitespace: false,
|
|
325
325
|
escape: false
|
|
326
|
+
},
|
|
327
|
+
subscript: {
|
|
328
|
+
open: "<sub>",
|
|
329
|
+
close: "</sub>",
|
|
330
|
+
mixable: true,
|
|
331
|
+
expelEnclosingWhitespace: false,
|
|
332
|
+
escape: true
|
|
333
|
+
},
|
|
334
|
+
superscript: {
|
|
335
|
+
open: "<sup>",
|
|
336
|
+
close: "</sup>",
|
|
337
|
+
mixable: true,
|
|
338
|
+
expelEnclosingWhitespace: false,
|
|
339
|
+
escape: true
|
|
326
340
|
}
|
|
327
341
|
};
|
|
328
342
|
class MarkdownState {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/serializer.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright \u00A9 2025 Hardcore Engineering Inc.\n//\n// Licensed under the Eclipse Public License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License. You may\n// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n//\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//\n\nimport { MarkupMark, MarkupNode, MarkupNodeType } from '@hcengineering/text-core'\nimport { markupToHtml } from '@hcengineering/text-html'\n\nimport { isInSet, markEq } from './marks'\nimport { nodeContent, nodeAttrs } from './node'\n\ntype FirstDelim = (i: number, attrs?: Record<string, any>, parentAttrs?: Record<string, any>) => string\ninterface IState {\n wrapBlock: (delim: string, firstDelim: string | null, node: MarkupNode, f: () => void) => void\n flushClose: (size: number) => void\n atBlank: () => void\n ensureNewLine: () => void\n write: (content: string) => void\n closeBlock: (node: any) => void\n text: (text: string, escape?: boolean) => void\n render: (node: MarkupNode, parent: MarkupNode, index: number) => void\n renderContent: (parent: MarkupNode) => void\n renderInline: (parent: MarkupNode) => void\n renderList: (node: MarkupNode, delim: string, firstDelim: FirstDelim) => void\n esc: (str: string, startOfLine?: boolean) => string\n htmlEsc: (str: string) => string\n quote: (str: string) => string\n repeat: (str: string, n: number) => string\n markString: (mark: MarkupMark, open: boolean, parent: MarkupNode, index: number) => string\n renderHtml: (node: MarkupNode) => string\n refUrl: string\n imageUrl: string\n inAutolink?: boolean\n renderAHref?: boolean\n}\n\ntype NodeProcessor = (state: IState, node: MarkupNode, parent: MarkupNode, index: number) => void\n\ninterface InlineState {\n active: MarkupMark[]\n trailing: string\n parent: MarkupNode\n node?: MarkupNode\n marks: MarkupMark[]\n}\n\n// *************************************************************\n\nfunction backticksFor (side: boolean): string {\n return side ? '`' : '`'\n}\n\nfunction isPlainURL (link: MarkupMark, parent: MarkupNode, index: number): boolean {\n if (link.attrs?.title !== undefined || !/^\\w+:/.test(link.attrs?.href)) return false\n const content = parent.content?.[index]\n if (content === undefined) {\n return false\n }\n if (\n content.type !== MarkupNodeType.text ||\n content.text !== link.attrs?.href ||\n content.marks?.[content.marks.length - 1] !== link\n ) {\n return false\n }\n return index === (parent.content?.length ?? 0) - 1 || !isInSet(link, parent.content?.[index + 1]?.marks ?? [])\n}\n\nconst formatTodoItem: FirstDelim = (i, attrs, parentAttrs?: Record<string, any>) => {\n const meta =\n attrs?.todoid !== undefined && attrs?.userid !== undefined\n ? `<!-- todoid=${attrs?.todoid},userid=${attrs?.userid} -->`\n : ''\n\n const bullet = parentAttrs?.bullet ?? '*'\n return `${bullet} [${attrs?.checked === true ? 'x' : ' '}] ${meta}`\n}\n\n// *************************************************************\n\nexport const storeNodes: Record<string, NodeProcessor> = {\n blockquote: (state, node) => {\n state.wrapBlock('> ', null, node, () => {\n state.renderContent(node)\n })\n },\n codeBlock: (state, node) => {\n state.write('```' + `${nodeAttrs(node).language ?? ''}` + '\\n')\n // TODO: Check for node.textContent\n state.renderInline(node)\n // state.text(node.text ?? '', false)\n state.ensureNewLine()\n state.write('```')\n state.closeBlock(node)\n },\n mermaid: (state, node) => {\n state.write('```mermaid\\n')\n state.renderInline(node)\n state.ensureNewLine()\n state.write('```')\n state.closeBlock(node)\n },\n heading: (state, node) => {\n const attrs = nodeAttrs(node)\n if (attrs.marker === '=' && attrs.level === 1) {\n state.renderInline(node)\n state.ensureNewLine()\n state.write('===\\n')\n } else if (attrs.marker === '-' && attrs.level === 2) {\n state.renderInline(node)\n state.ensureNewLine()\n state.write('---\\n')\n } else {\n state.write(state.repeat('#', attrs.level !== undefined ? Number(attrs.level) : 1) + ' ')\n state.renderInline(node)\n }\n state.closeBlock(node)\n },\n horizontalRule: (state, node) => {\n state.write(`${nodeAttrs(node).markup ?? '---'}`)\n state.closeBlock(node)\n },\n bulletList: (state, node) => {\n state.renderList(node, ' ', () => `${nodeAttrs(node).bullet ?? '*'}` + ' ')\n },\n taskList: (state, node) => {\n state.renderList(node, ' ', () => '* [ ]' + ' ')\n },\n todoList: (state, node) => {\n state.renderList(node, ' ', formatTodoItem)\n },\n orderedList: (state, node) => {\n let start = 1\n if (nodeAttrs(node).order !== undefined) {\n start = Number(nodeAttrs(node).order)\n }\n const maxW = String(start + nodeContent(node).length - 1).length\n const space = state.repeat(' ', maxW + 2)\n state.renderList(node, space, (i: number) => {\n const nStr = String(start + i)\n return state.repeat(' ', maxW - nStr.length) + nStr + '. '\n })\n },\n listItem: (state, node) => {\n state.renderContent(node)\n },\n taskItem: (state, node) => {\n state.renderContent(node)\n },\n todoItem: (state, node) => {\n state.renderContent(node)\n },\n paragraph: (state, node) => {\n state.renderInline(node)\n state.closeBlock(node)\n },\n subLink: (state, node) => {\n state.write('<sub>')\n state.renderAHref = true\n state.renderInline(node)\n state.renderAHref = false\n state.write('</sub>')\n },\n\n image: (state, node) => {\n const attrs = nodeAttrs(node)\n if (attrs.token != null && attrs['file-id'] != null) {\n // Convert image to token format\n state.write(\n ' : '') +\n (attrs.height != null ? '&height=' + state.esc(`${attrs.height}`) : '') +\n (attrs.token != null ? '&token=' + state.esc(`${attrs.token}`) : '')) +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n } else if (attrs['file-id'] != null) {\n // Convert image to fileid format\n state.write(\n ' : '') +\n (attrs.height != null ? '&height=' + state.esc(`${attrs.height}`) : '')) +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n } else {\n if (attrs.width != null || attrs.height != null) {\n state.write(\n '<img' +\n (attrs.width != null ? ` width=\"${state.esc(`${attrs.width}`)}\"` : '') +\n (attrs.height != null ? ` height=\"${state.esc(`${attrs.height}`)}\"` : '') +\n ` src=\"${state.esc(`${attrs.src}`)}\"` +\n (attrs.alt != null ? ` alt=\"${state.esc(`${attrs.alt}`)}\"` : '') +\n (attrs.title != null ? '>' + state.quote(`${attrs.title}`) + '</img>' : '>')\n )\n } else {\n state.write(\n ' +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n }\n }\n },\n reference: (state, node) => {\n const attrs = nodeAttrs(node)\n let url = state.refUrl\n if (!url.includes('?')) {\n url += '?'\n } else {\n url += '&'\n }\n state.write(\n '[' +\n state.esc(`${attrs.label ?? ''}`) +\n '](' +\n `${url}${makeQuery({\n _class: attrs.objectclass,\n _id: attrs.id,\n label: attrs.label\n })}` +\n (attrs.title !== undefined ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n },\n markdown: (state, node) => {\n state.renderInline(node)\n state.closeBlock(node)\n },\n comment: (state, node) => {\n state.write('<!--')\n state.renderInline(node)\n state.write('-->')\n },\n hardBreak: (state, node, parent, index) => {\n const content = nodeContent(parent)\n for (let i = index + 1; i < content.length; i++) {\n if (content[i].type !== node.type) {\n state.write('\\\\\\n')\n return\n }\n }\n },\n text: (state, node) => {\n // Check if test has reference mark, in this case we need to remove [[]]\n state.text(node.text ?? '')\n },\n emoji: (state, node) => {\n state.text(node.attrs?.emoji as string)\n },\n table: (state, node) => {\n state.write(state.renderHtml(node))\n state.closeBlock(node)\n },\n embed: (state, node) => {\n const attrs = nodeAttrs(node)\n const embedUrl = attrs.src as string\n state.write(`<a href=\"${encodeURI(embedUrl)}\" data-type=\"embed\">`)\n // Slashes are escaped to prevent autolink creation\n state.write(state.htmlEsc(embedUrl).replace(/\\//g, '/'))\n state.write('</a>')\n }\n}\n\ninterface MarkProcessor {\n open: ((_state: IState, mark: MarkupMark, parent: MarkupNode, index: number) => string) | string\n close: ((_state: IState, mark: MarkupMark, parent: MarkupNode, index: number) => string) | string\n mixable: boolean\n expelEnclosingWhitespace: boolean\n escape: boolean\n}\n\nexport const storeMarks: Record<string, MarkProcessor> = {\n em: {\n open: '*',\n close: '*',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n italic: {\n open: '*',\n close: '*',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n bold: {\n open: '**',\n close: '**',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n strong: {\n open: '**',\n close: '**',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n strike: {\n open: '~~',\n close: '~~',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n underline: {\n open: '<ins>',\n close: '</ins>',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n link: {\n open: (state, mark, parent, index) => {\n if (state.renderAHref === true) {\n return `<a href=\"${encodeURI(mark.attrs?.href)}\">`\n } else {\n state.inAutolink = isPlainURL(mark, parent, index)\n return state.inAutolink ? '<' : '['\n }\n },\n close: (state, mark, parent, index) => {\n if (state.renderAHref === true) {\n return '</a>'\n } else {\n const { inAutolink } = state\n state.inAutolink = undefined\n\n const href = (mark.attrs?.href as string) ?? ''\n // eslint-disable-next-line\n const url = href.replace(/[\\(\\)\"\\\\<>]/g, '\\\\$&')\n const hasSpaces = url.includes(' ')\n\n return inAutolink === true\n ? '>'\n : '](' +\n (hasSpaces ? `<${url}>` : url) +\n (mark.attrs?.title !== undefined ? ` \"${(mark.attrs?.title as string).replace(/\"/g, '\\\\\"')}\"` : '') +\n ')'\n }\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: true\n },\n code: {\n open: (state, mark, parent, index) => {\n return backticksFor(false)\n },\n close: (state, mark, parent, index) => {\n return backticksFor(true)\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n },\n textColor: {\n open: (state, mark, parent, index) => {\n if (mark.attrs?.color === undefined) {\n return ''\n }\n return `<span style=\"color: ${mark.attrs.color}\" data-color=\"${mark.attrs.color}\">`\n },\n close: (state, mark, parent, index) => {\n if (mark.attrs?.color === undefined) {\n return ''\n }\n return '</span>'\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n },\n textStyle: {\n open: (state, mark, parent, index) => {\n const attrs = mark.attrs ?? {}\n if (Object.keys(attrs).length === 0) {\n return ''\n }\n const styleAttrs = Object.entries(attrs)\n .map(([key, value]) => {\n const kebabKey = key.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)\n return `${kebabKey}: ${value}`\n })\n .join('; ')\n\n return `<span style=\"${styleAttrs}\">`\n },\n close: (state, mark, parent, index) => {\n const attrs = mark.attrs ?? {}\n if (Object.keys(attrs).length === 0) {\n return ''\n }\n return '</span>'\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n }\n}\n\nexport type HtmlWriter = (markup: MarkupNode) => string\n\nexport interface StateOptions {\n tightLists: boolean\n refUrl: string\n imageUrl: string\n htmlWriter?: HtmlWriter\n}\nexport class MarkdownState implements IState {\n nodes: Record<string, NodeProcessor>\n marks: Record<string, MarkProcessor>\n delim: string\n out: string\n closed: boolean\n closedNode?: MarkupNode\n inTightList: boolean\n options: StateOptions\n refUrl: string\n imageUrl: string\n htmlWriter: HtmlWriter\n\n constructor (\n nodes = storeNodes,\n marks = storeMarks,\n options: StateOptions = { tightLists: true, refUrl: 'ref://', imageUrl: 'http://' }\n ) {\n this.nodes = nodes\n this.marks = marks\n this.delim = this.out = ''\n this.closed = false\n this.inTightList = false\n this.refUrl = options.refUrl\n this.imageUrl = options.imageUrl\n this.htmlWriter = options.htmlWriter ?? markupToHtml\n\n this.options = options\n }\n\n flushClose (size: number): void {\n if (this.closed) {\n if (!this.atBlank()) this.out += '\\n'\n if (size > 1) {\n this.addDelim(size)\n }\n this.closed = false\n }\n }\n\n private addDelim (size: number): void {\n let delimMin = this.delim\n const trim = /\\s+$/.exec(delimMin)\n if (trim !== null) {\n delimMin = delimMin.slice(0, delimMin.length - trim[0].length)\n }\n for (let i = 1; i < size; i++) {\n this.out += delimMin + '\\n'\n }\n }\n\n renderHtml (node: MarkupNode): string {\n return this.htmlWriter(node)\n }\n\n wrapBlock (delim: string, firstDelim: string | null, node: MarkupNode, f: () => void): void {\n const old = this.delim\n this.write(firstDelim ?? delim)\n this.delim += delim\n f()\n this.delim = old\n this.closeBlock(node)\n }\n\n atBlank (): boolean {\n return /(^|\\n)$/.test(this.out)\n }\n\n // :: ()\n // Ensure the current content ends with a newline.\n ensureNewLine (): void {\n if (!this.atBlank()) this.out += '\\n'\n }\n\n // :: (?string)\n // Prepare the state for writing output (closing closed paragraphs,\n // adding delimiters, and so on), and then optionally add content\n // (unescaped) to the output.\n write (content: string): void {\n this.flushClose(2)\n if (this.delim !== undefined && this.atBlank()) this.out += this.delim\n if (content.length > 0) this.out += content\n }\n\n // :: (Node)\n // Close the block for the given node.\n closeBlock (node: MarkupNode): void {\n this.closedNode = node\n this.closed = true\n }\n\n // :: (string, ?bool)\n // Add the given text to the document. When escape is not `false`,\n // it will be escaped.\n text (text: string, escape = false): void {\n const lines = text.split('\\n')\n for (let i = 0; i < lines.length; i++) {\n const startOfLine = this.atBlank() || this.closed\n this.write('')\n this.out += escape ? this.esc(lines[i], startOfLine) : lines[i]\n if (i !== lines.length - 1) this.out += '\\n'\n }\n }\n\n // :: (Node)\n // Render the given node as a block.\n render (node: MarkupNode, parent: MarkupNode, index: number): void {\n if (this.nodes[node.type] === undefined) {\n throw new Error('Token type `' + node.type + '` not supported by Markdown renderer')\n }\n this.nodes[node.type](this, node, parent, index)\n }\n\n // :: (Node)\n // Render the contents of `parent` as block nodes.\n renderContent (parent: MarkupNode): void {\n nodeContent(parent).forEach((node: MarkupNode, i: number) => {\n this.render(node, parent, i)\n })\n }\n\n reorderMixableMark (state: InlineState, mark: MarkupMark, i: number, len: number): void {\n for (let j = 0; j < state.active.length; j++) {\n const other = state.active[j]\n if (!this.marks[other.type].mixable || this.checkSwitchMarks(i, j, state, mark, other, len)) {\n break\n }\n }\n }\n\n reorderMixableMarks (state: InlineState, len: number): void {\n // Try to reorder 'mixable' marks, such as em and strong, which\n // in Markdown may be opened and closed in different order, so\n // that order of the marks for the token matches the order in\n // active.\n\n for (let i = 0; i < len; i++) {\n const mark = state.marks[i]\n const mm = this.marks[mark.type]\n if (mm == null) {\n break\n }\n if (!mm.mixable) break\n this.reorderMixableMark(state, mark, i, len)\n }\n }\n\n private checkSwitchMarks (\n i: number,\n j: number,\n state: InlineState,\n mark: MarkupMark,\n other: MarkupMark,\n len: number\n ): boolean {\n if (!markEq(mark, other) || i === j) {\n return false\n }\n this.switchMarks(i, j, state, mark, len)\n return true\n }\n\n private switchMarks (i: number, j: number, state: InlineState, mark: MarkupMark, len: number): void {\n if (i > j) {\n state.marks = state.marks\n .slice(0, j)\n .concat(mark)\n .concat(state.marks.slice(j, i))\n .concat(state.marks.slice(i + 1, len))\n }\n if (j > i) {\n state.marks = state.marks\n .slice(0, i)\n .concat(state.marks.slice(i + 1, j))\n .concat(mark)\n .concat(state.marks.slice(j, len))\n }\n }\n\n renderNodeInline (state: InlineState, index: number): void {\n state.marks = state.node?.marks ?? []\n this.updateHardBreakMarks(state, index)\n\n const leading = this.adjustLeading(state)\n\n const inner: MarkupMark | undefined = state.marks.length > 0 ? state.marks[state.marks.length - 1] : undefined\n const noEsc = inner !== undefined && !(this.marks[inner.type]?.escape ?? false)\n const len = state.marks.length - (noEsc ? 1 : 0)\n\n this.reorderMixableMarks(state, len)\n\n // Find the prefix of the mark set that didn't change\n this.checkCloseMarks(state, len, index)\n\n // Output any previously expelled trailing whitespace outside the marks\n if (leading !== '') this.text(leading)\n\n // Open the marks that need to be opened\n this.checkOpenMarks(state, len, index, inner, noEsc)\n }\n\n private checkOpenMarks (\n state: InlineState,\n len: number,\n index: number,\n inner: MarkupMark | undefined,\n noEsc: boolean\n ): void {\n if (state.node !== undefined) {\n this.updateActiveMarks(state, len, index)\n\n // Render the node. Special case code marks, since their content\n // may not be escaped.\n if (this.isNoEscapeRequire(state.node, inner, noEsc, state)) {\n this.renderMarkText(inner as MarkupMark, state, index)\n } else {\n this.render(state.node, state.parent, index)\n }\n }\n }\n\n private isNoEscapeRequire (\n node: MarkupNode,\n inner: MarkupMark | undefined,\n noEsc: boolean,\n state: InlineState\n ): boolean {\n return inner !== undefined && noEsc && node.type === MarkupNodeType.text\n }\n\n private renderMarkText (inner: MarkupMark, state: InlineState, index: number): void {\n this.text(\n this.markString(inner, true, state.parent, index) +\n (state.node?.text as string) +\n this.markString(inner, false, state.parent, index + 1),\n false\n )\n }\n\n private updateActiveMarks (state: InlineState, len: number, index: number): void {\n while (state.active.length < len) {\n const add = state.marks[state.active.length]\n state.active.push(add)\n this.text(this.markString(add, true, state.parent, index), false)\n }\n }\n\n private checkCloseMarks (state: InlineState, len: number, index: number): void {\n let keep = 0\n while (keep < Math.min(state.active.length, len) && markEq(state.marks[keep], state.active[keep])) {\n ++keep\n }\n\n // Close the marks that need to be closed\n while (keep < state.active.length) {\n const mark = state.active.pop()\n if (mark !== undefined) {\n this.text(this.markString(mark, false, state.parent, index), false)\n }\n }\n }\n\n private adjustLeading (state: InlineState): string {\n let leading = state.trailing\n state.trailing = ''\n // If whitespace has to be expelled from the node, adjust\n // leading and trailing accordingly.\n const node = state?.node\n if (this.isText(node) && this.isMarksHasExpelEnclosingWhitespace(state)) {\n const match = /^(\\s*)(.*?)(\\s*)$/m.exec(node?.text ?? '')\n if (match !== null) {\n const [leadMatch, innerMatch, trailMatch] = [match[1], match[2], match[3]]\n leading += leadMatch\n state.trailing = trailMatch\n this.adjustLeadingTextNode(leadMatch, trailMatch, state, innerMatch, node as MarkupNode)\n }\n }\n return leading\n }\n\n private isMarksHasExpelEnclosingWhitespace (state: InlineState): boolean {\n return state.marks.some((mark) => this.marks[mark.type]?.expelEnclosingWhitespace)\n }\n\n private adjustLeadingTextNode (\n lead: string,\n trail: string,\n state: InlineState,\n inner: string,\n node: MarkupNode\n ): void {\n if (lead !== '' || trail !== '') {\n state.node = inner !== undefined ? { ...node, text: inner } : undefined\n if (state.node === undefined) {\n state.marks = state.active\n }\n }\n }\n\n private updateHardBreakMarks (state: InlineState, index: number): void {\n if (state.node !== undefined && state.node.type === MarkupNodeType.hard_break) {\n state.marks = this.filterHardBreakMarks(state.marks, index, state)\n }\n }\n\n private filterHardBreakMarks (marks: MarkupMark[], index: number, state: InlineState): MarkupMark[] {\n const content = state.parent.content ?? []\n const next = content[index + 1]\n if (!this.isHardbreakText(next)) {\n return []\n }\n return marks.filter((m) => isInSet(m, next.marks ?? []))\n }\n\n private isHardbreakText (next?: MarkupNode): boolean {\n return (\n next !== undefined && (next.type !== MarkupNodeType.text || (next.text !== undefined && /\\S/.test(next.text)))\n )\n }\n\n private isText (node?: MarkupNode): boolean {\n return node !== undefined && node.type === MarkupNodeType.text && node.text !== undefined\n }\n\n // :: (Node)\n // Render the contents of `parent` as inline content.\n renderInline (parent: MarkupNode): void {\n const state: InlineState = { active: [], trailing: '', parent, marks: [] }\n nodeContent(parent).forEach((nde, index) => {\n state.node = nde\n this.renderNodeInline(state, index)\n })\n state.node = undefined\n this.renderNodeInline(state, 0)\n }\n\n // :: (Node, string, (number) \u2192 string)\n // Render a node's content as a list. `delim` should be the extra\n // indentation added to all lines except the first in an item,\n // `firstDelim` is a function going from an item index to a\n // delimiter for the first line of the item.\n renderList (node: MarkupNode, delim: string, firstDelim: FirstDelim): void {\n this.flushListClose(node)\n\n const isTight: boolean =\n typeof node.attrs?.tight !== 'undefined' ? node.attrs.tight === 'true' : this.options.tightLists\n const prevTight = this.inTightList\n this.inTightList = isTight\n\n nodeContent(node).forEach((child, i) => {\n this.renderListItem(node, child, i, isTight, delim, firstDelim)\n })\n this.inTightList = prevTight\n }\n\n renderListItem (\n node: MarkupNode,\n child: MarkupNode,\n i: number,\n isTight: boolean,\n delim: string,\n firstDelim: FirstDelim\n ): void {\n if (i > 0 && isTight) this.flushClose(1)\n this.wrapBlock(delim, firstDelim(i, node.content?.[i].attrs, node.attrs), node, () => {\n this.render(child, node, i)\n })\n }\n\n private flushListClose (node: MarkupNode): void {\n if (this.closed && this.closedNode?.type === node.type) {\n this.flushClose(3)\n } else if (this.inTightList) {\n this.flushClose(1)\n }\n }\n\n // :: (string, ?bool) \u2192 string\n // Escape the given string so that it can safely appear in Markdown\n // content. If `startOfLine` is true, also escape characters that\n // has special meaning only at the start of the line.\n esc (str: string, startOfLine = false): string {\n if (str == null) {\n return ''\n }\n str = str.replace(/[`*\\\\~\\[\\]]/g, '\\\\$&') // eslint-disable-line\n if (startOfLine) {\n str = str.replace(/^[:#\\-*+]/, '\\\\$&').replace(/^(\\d+)\\./, '$1\\\\.')\n }\n str = str.replace(/\\r?\\n/g, '\\\\\\n')\n return str\n }\n\n htmlEsc (str: string): string {\n if (str == null) {\n return ''\n }\n\n return str\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n }\n\n quote (str: string): string {\n const wrap = !(str?.includes('\"') ?? false) ? '\"\"' : !(str?.includes(\"'\") ?? false) ? \"''\" : '()'\n return wrap[0] + str + wrap[1]\n }\n\n // :: (string, number) \u2192 string\n // Repeat the given string `n` times.\n repeat (str: string, n: number): string {\n let out = ''\n for (let i = 0; i < n; i++) out += str\n return out\n }\n\n // : (Mark, bool, string?) \u2192 string\n // Get the markdown string for a given opening or closing mark.\n markString (mark: MarkupMark, open: boolean, parent: MarkupNode, index: number): string {\n let value = mark.attrs?.marker\n if (value === undefined) {\n const info = this.marks[mark.type]\n if (info == null) {\n throw new Error(`No info for mark ${mark.type}`)\n }\n value = open ? info.open : info.close\n }\n return typeof value === 'string' ? value : (value(this, mark, parent, index) ?? '')\n }\n}\n\nfunction makeQuery (obj: Record<string, string | number | boolean | null | undefined>): string {\n return Object.keys(obj)\n .filter((it) => it[1] != null)\n .map(function (k) {\n return encodeURIComponent(k) + '=' + encodeURIComponent(obj[k] as string | number | boolean)\n })\n .join('&')\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["//\n// Copyright \u00A9 2025 Hardcore Engineering Inc.\n//\n// Licensed under the Eclipse Public License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License. You may\n// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n//\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//\n\nimport { MarkupMark, MarkupNode, MarkupNodeType } from '@hcengineering/text-core'\nimport { markupToHtml } from '@hcengineering/text-html'\n\nimport { isInSet, markEq } from './marks'\nimport { nodeContent, nodeAttrs } from './node'\n\ntype FirstDelim = (i: number, attrs?: Record<string, any>, parentAttrs?: Record<string, any>) => string\ninterface IState {\n wrapBlock: (delim: string, firstDelim: string | null, node: MarkupNode, f: () => void) => void\n flushClose: (size: number) => void\n atBlank: () => void\n ensureNewLine: () => void\n write: (content: string) => void\n closeBlock: (node: any) => void\n text: (text: string, escape?: boolean) => void\n render: (node: MarkupNode, parent: MarkupNode, index: number) => void\n renderContent: (parent: MarkupNode) => void\n renderInline: (parent: MarkupNode) => void\n renderList: (node: MarkupNode, delim: string, firstDelim: FirstDelim) => void\n esc: (str: string, startOfLine?: boolean) => string\n htmlEsc: (str: string) => string\n quote: (str: string) => string\n repeat: (str: string, n: number) => string\n markString: (mark: MarkupMark, open: boolean, parent: MarkupNode, index: number) => string\n renderHtml: (node: MarkupNode) => string\n refUrl: string\n imageUrl: string\n inAutolink?: boolean\n renderAHref?: boolean\n}\n\ntype NodeProcessor = (state: IState, node: MarkupNode, parent: MarkupNode, index: number) => void\n\ninterface InlineState {\n active: MarkupMark[]\n trailing: string\n parent: MarkupNode\n node?: MarkupNode\n marks: MarkupMark[]\n}\n\n// *************************************************************\n\nfunction backticksFor (side: boolean): string {\n return side ? '`' : '`'\n}\n\nfunction isPlainURL (link: MarkupMark, parent: MarkupNode, index: number): boolean {\n if (link.attrs?.title !== undefined || !/^\\w+:/.test(link.attrs?.href)) return false\n const content = parent.content?.[index]\n if (content === undefined) {\n return false\n }\n if (\n content.type !== MarkupNodeType.text ||\n content.text !== link.attrs?.href ||\n content.marks?.[content.marks.length - 1] !== link\n ) {\n return false\n }\n return index === (parent.content?.length ?? 0) - 1 || !isInSet(link, parent.content?.[index + 1]?.marks ?? [])\n}\n\nconst formatTodoItem: FirstDelim = (i, attrs, parentAttrs?: Record<string, any>) => {\n const meta =\n attrs?.todoid !== undefined && attrs?.userid !== undefined\n ? `<!-- todoid=${attrs?.todoid},userid=${attrs?.userid} -->`\n : ''\n\n const bullet = parentAttrs?.bullet ?? '*'\n return `${bullet} [${attrs?.checked === true ? 'x' : ' '}] ${meta}`\n}\n\n// *************************************************************\n\nexport const storeNodes: Record<string, NodeProcessor> = {\n blockquote: (state, node) => {\n state.wrapBlock('> ', null, node, () => {\n state.renderContent(node)\n })\n },\n codeBlock: (state, node) => {\n state.write('```' + `${nodeAttrs(node).language ?? ''}` + '\\n')\n // TODO: Check for node.textContent\n state.renderInline(node)\n // state.text(node.text ?? '', false)\n state.ensureNewLine()\n state.write('```')\n state.closeBlock(node)\n },\n mermaid: (state, node) => {\n state.write('```mermaid\\n')\n state.renderInline(node)\n state.ensureNewLine()\n state.write('```')\n state.closeBlock(node)\n },\n heading: (state, node) => {\n const attrs = nodeAttrs(node)\n if (attrs.marker === '=' && attrs.level === 1) {\n state.renderInline(node)\n state.ensureNewLine()\n state.write('===\\n')\n } else if (attrs.marker === '-' && attrs.level === 2) {\n state.renderInline(node)\n state.ensureNewLine()\n state.write('---\\n')\n } else {\n state.write(state.repeat('#', attrs.level !== undefined ? Number(attrs.level) : 1) + ' ')\n state.renderInline(node)\n }\n state.closeBlock(node)\n },\n horizontalRule: (state, node) => {\n state.write(`${nodeAttrs(node).markup ?? '---'}`)\n state.closeBlock(node)\n },\n bulletList: (state, node) => {\n state.renderList(node, ' ', () => `${nodeAttrs(node).bullet ?? '*'}` + ' ')\n },\n taskList: (state, node) => {\n state.renderList(node, ' ', () => '* [ ]' + ' ')\n },\n todoList: (state, node) => {\n state.renderList(node, ' ', formatTodoItem)\n },\n orderedList: (state, node) => {\n let start = 1\n if (nodeAttrs(node).order !== undefined) {\n start = Number(nodeAttrs(node).order)\n }\n const maxW = String(start + nodeContent(node).length - 1).length\n const space = state.repeat(' ', maxW + 2)\n state.renderList(node, space, (i: number) => {\n const nStr = String(start + i)\n return state.repeat(' ', maxW - nStr.length) + nStr + '. '\n })\n },\n listItem: (state, node) => {\n state.renderContent(node)\n },\n taskItem: (state, node) => {\n state.renderContent(node)\n },\n todoItem: (state, node) => {\n state.renderContent(node)\n },\n paragraph: (state, node) => {\n state.renderInline(node)\n state.closeBlock(node)\n },\n subLink: (state, node) => {\n state.write('<sub>')\n state.renderAHref = true\n state.renderInline(node)\n state.renderAHref = false\n state.write('</sub>')\n },\n\n image: (state, node) => {\n const attrs = nodeAttrs(node)\n if (attrs.token != null && attrs['file-id'] != null) {\n // Convert image to token format\n state.write(\n ' : '') +\n (attrs.height != null ? '&height=' + state.esc(`${attrs.height}`) : '') +\n (attrs.token != null ? '&token=' + state.esc(`${attrs.token}`) : '')) +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n } else if (attrs['file-id'] != null) {\n // Convert image to fileid format\n state.write(\n ' : '') +\n (attrs.height != null ? '&height=' + state.esc(`${attrs.height}`) : '')) +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n } else {\n if (attrs.width != null || attrs.height != null) {\n state.write(\n '<img' +\n (attrs.width != null ? ` width=\"${state.esc(`${attrs.width}`)}\"` : '') +\n (attrs.height != null ? ` height=\"${state.esc(`${attrs.height}`)}\"` : '') +\n ` src=\"${state.esc(`${attrs.src}`)}\"` +\n (attrs.alt != null ? ` alt=\"${state.esc(`${attrs.alt}`)}\"` : '') +\n (attrs.title != null ? '>' + state.quote(`${attrs.title}`) + '</img>' : '>')\n )\n } else {\n state.write(\n ' +\n (attrs.title != null ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n }\n }\n },\n reference: (state, node) => {\n const attrs = nodeAttrs(node)\n let url = state.refUrl\n if (!url.includes('?')) {\n url += '?'\n } else {\n url += '&'\n }\n state.write(\n '[' +\n state.esc(`${attrs.label ?? ''}`) +\n '](' +\n `${url}${makeQuery({\n _class: attrs.objectclass,\n _id: attrs.id,\n label: attrs.label\n })}` +\n (attrs.title !== undefined ? ' ' + state.quote(`${attrs.title}`) : '') +\n ')'\n )\n },\n markdown: (state, node) => {\n state.renderInline(node)\n state.closeBlock(node)\n },\n comment: (state, node) => {\n state.write('<!--')\n state.renderInline(node)\n state.write('-->')\n },\n hardBreak: (state, node, parent, index) => {\n const content = nodeContent(parent)\n for (let i = index + 1; i < content.length; i++) {\n if (content[i].type !== node.type) {\n state.write('\\\\\\n')\n return\n }\n }\n },\n text: (state, node) => {\n // Check if test has reference mark, in this case we need to remove [[]]\n state.text(node.text ?? '')\n },\n emoji: (state, node) => {\n state.text(node.attrs?.emoji as string)\n },\n table: (state, node) => {\n state.write(state.renderHtml(node))\n state.closeBlock(node)\n },\n embed: (state, node) => {\n const attrs = nodeAttrs(node)\n const embedUrl = attrs.src as string\n state.write(`<a href=\"${encodeURI(embedUrl)}\" data-type=\"embed\">`)\n // Slashes are escaped to prevent autolink creation\n state.write(state.htmlEsc(embedUrl).replace(/\\//g, '/'))\n state.write('</a>')\n }\n}\n\ninterface MarkProcessor {\n open: ((_state: IState, mark: MarkupMark, parent: MarkupNode, index: number) => string) | string\n close: ((_state: IState, mark: MarkupMark, parent: MarkupNode, index: number) => string) | string\n mixable: boolean\n expelEnclosingWhitespace: boolean\n escape: boolean\n}\n\nexport const storeMarks: Record<string, MarkProcessor> = {\n em: {\n open: '*',\n close: '*',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n italic: {\n open: '*',\n close: '*',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n bold: {\n open: '**',\n close: '**',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n strong: {\n open: '**',\n close: '**',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n strike: {\n open: '~~',\n close: '~~',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n underline: {\n open: '<ins>',\n close: '</ins>',\n mixable: true,\n expelEnclosingWhitespace: true,\n escape: true\n },\n link: {\n open: (state, mark, parent, index) => {\n if (state.renderAHref === true) {\n return `<a href=\"${encodeURI(mark.attrs?.href)}\">`\n } else {\n state.inAutolink = isPlainURL(mark, parent, index)\n return state.inAutolink ? '<' : '['\n }\n },\n close: (state, mark, parent, index) => {\n if (state.renderAHref === true) {\n return '</a>'\n } else {\n const { inAutolink } = state\n state.inAutolink = undefined\n\n const href = (mark.attrs?.href as string) ?? ''\n // eslint-disable-next-line\n const url = href.replace(/[\\(\\)\"\\\\<>]/g, '\\\\$&')\n const hasSpaces = url.includes(' ')\n\n return inAutolink === true\n ? '>'\n : '](' +\n (hasSpaces ? `<${url}>` : url) +\n (mark.attrs?.title !== undefined ? ` \"${(mark.attrs?.title as string).replace(/\"/g, '\\\\\"')}\"` : '') +\n ')'\n }\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: true\n },\n code: {\n open: (state, mark, parent, index) => {\n return backticksFor(false)\n },\n close: (state, mark, parent, index) => {\n return backticksFor(true)\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n },\n textColor: {\n open: (state, mark, parent, index) => {\n if (mark.attrs?.color === undefined) {\n return ''\n }\n return `<span style=\"color: ${mark.attrs.color}\" data-color=\"${mark.attrs.color}\">`\n },\n close: (state, mark, parent, index) => {\n if (mark.attrs?.color === undefined) {\n return ''\n }\n return '</span>'\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n },\n textStyle: {\n open: (state, mark, parent, index) => {\n const attrs = mark.attrs ?? {}\n if (Object.keys(attrs).length === 0) {\n return ''\n }\n const styleAttrs = Object.entries(attrs)\n .map(([key, value]) => {\n const kebabKey = key.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)\n return `${kebabKey}: ${value}`\n })\n .join('; ')\n\n return `<span style=\"${styleAttrs}\">`\n },\n close: (state, mark, parent, index) => {\n const attrs = mark.attrs ?? {}\n if (Object.keys(attrs).length === 0) {\n return ''\n }\n return '</span>'\n },\n mixable: false,\n expelEnclosingWhitespace: false,\n escape: false\n },\n subscript: {\n open: '<sub>',\n close: '</sub>',\n mixable: true,\n expelEnclosingWhitespace: false,\n escape: true\n },\n superscript: {\n open: '<sup>',\n close: '</sup>',\n mixable: true,\n expelEnclosingWhitespace: false,\n escape: true\n }\n}\n\nexport type HtmlWriter = (markup: MarkupNode) => string\n\nexport interface StateOptions {\n tightLists: boolean\n refUrl: string\n imageUrl: string\n htmlWriter?: HtmlWriter\n}\nexport class MarkdownState implements IState {\n nodes: Record<string, NodeProcessor>\n marks: Record<string, MarkProcessor>\n delim: string\n out: string\n closed: boolean\n closedNode?: MarkupNode\n inTightList: boolean\n options: StateOptions\n refUrl: string\n imageUrl: string\n htmlWriter: HtmlWriter\n\n constructor (\n nodes = storeNodes,\n marks = storeMarks,\n options: StateOptions = { tightLists: true, refUrl: 'ref://', imageUrl: 'http://' }\n ) {\n this.nodes = nodes\n this.marks = marks\n this.delim = this.out = ''\n this.closed = false\n this.inTightList = false\n this.refUrl = options.refUrl\n this.imageUrl = options.imageUrl\n this.htmlWriter = options.htmlWriter ?? markupToHtml\n\n this.options = options\n }\n\n flushClose (size: number): void {\n if (this.closed) {\n if (!this.atBlank()) this.out += '\\n'\n if (size > 1) {\n this.addDelim(size)\n }\n this.closed = false\n }\n }\n\n private addDelim (size: number): void {\n let delimMin = this.delim\n const trim = /\\s+$/.exec(delimMin)\n if (trim !== null) {\n delimMin = delimMin.slice(0, delimMin.length - trim[0].length)\n }\n for (let i = 1; i < size; i++) {\n this.out += delimMin + '\\n'\n }\n }\n\n renderHtml (node: MarkupNode): string {\n return this.htmlWriter(node)\n }\n\n wrapBlock (delim: string, firstDelim: string | null, node: MarkupNode, f: () => void): void {\n const old = this.delim\n this.write(firstDelim ?? delim)\n this.delim += delim\n f()\n this.delim = old\n this.closeBlock(node)\n }\n\n atBlank (): boolean {\n return /(^|\\n)$/.test(this.out)\n }\n\n // :: ()\n // Ensure the current content ends with a newline.\n ensureNewLine (): void {\n if (!this.atBlank()) this.out += '\\n'\n }\n\n // :: (?string)\n // Prepare the state for writing output (closing closed paragraphs,\n // adding delimiters, and so on), and then optionally add content\n // (unescaped) to the output.\n write (content: string): void {\n this.flushClose(2)\n if (this.delim !== undefined && this.atBlank()) this.out += this.delim\n if (content.length > 0) this.out += content\n }\n\n // :: (Node)\n // Close the block for the given node.\n closeBlock (node: MarkupNode): void {\n this.closedNode = node\n this.closed = true\n }\n\n // :: (string, ?bool)\n // Add the given text to the document. When escape is not `false`,\n // it will be escaped.\n text (text: string, escape = false): void {\n const lines = text.split('\\n')\n for (let i = 0; i < lines.length; i++) {\n const startOfLine = this.atBlank() || this.closed\n this.write('')\n this.out += escape ? this.esc(lines[i], startOfLine) : lines[i]\n if (i !== lines.length - 1) this.out += '\\n'\n }\n }\n\n // :: (Node)\n // Render the given node as a block.\n render (node: MarkupNode, parent: MarkupNode, index: number): void {\n if (this.nodes[node.type] === undefined) {\n throw new Error('Token type `' + node.type + '` not supported by Markdown renderer')\n }\n this.nodes[node.type](this, node, parent, index)\n }\n\n // :: (Node)\n // Render the contents of `parent` as block nodes.\n renderContent (parent: MarkupNode): void {\n nodeContent(parent).forEach((node: MarkupNode, i: number) => {\n this.render(node, parent, i)\n })\n }\n\n reorderMixableMark (state: InlineState, mark: MarkupMark, i: number, len: number): void {\n for (let j = 0; j < state.active.length; j++) {\n const other = state.active[j]\n if (!this.marks[other.type].mixable || this.checkSwitchMarks(i, j, state, mark, other, len)) {\n break\n }\n }\n }\n\n reorderMixableMarks (state: InlineState, len: number): void {\n // Try to reorder 'mixable' marks, such as em and strong, which\n // in Markdown may be opened and closed in different order, so\n // that order of the marks for the token matches the order in\n // active.\n\n for (let i = 0; i < len; i++) {\n const mark = state.marks[i]\n const mm = this.marks[mark.type]\n if (mm == null) {\n break\n }\n if (!mm.mixable) break\n this.reorderMixableMark(state, mark, i, len)\n }\n }\n\n private checkSwitchMarks (\n i: number,\n j: number,\n state: InlineState,\n mark: MarkupMark,\n other: MarkupMark,\n len: number\n ): boolean {\n if (!markEq(mark, other) || i === j) {\n return false\n }\n this.switchMarks(i, j, state, mark, len)\n return true\n }\n\n private switchMarks (i: number, j: number, state: InlineState, mark: MarkupMark, len: number): void {\n if (i > j) {\n state.marks = state.marks\n .slice(0, j)\n .concat(mark)\n .concat(state.marks.slice(j, i))\n .concat(state.marks.slice(i + 1, len))\n }\n if (j > i) {\n state.marks = state.marks\n .slice(0, i)\n .concat(state.marks.slice(i + 1, j))\n .concat(mark)\n .concat(state.marks.slice(j, len))\n }\n }\n\n renderNodeInline (state: InlineState, index: number): void {\n state.marks = state.node?.marks ?? []\n this.updateHardBreakMarks(state, index)\n\n const leading = this.adjustLeading(state)\n\n const inner: MarkupMark | undefined = state.marks.length > 0 ? state.marks[state.marks.length - 1] : undefined\n const noEsc = inner !== undefined && !(this.marks[inner.type]?.escape ?? false)\n const len = state.marks.length - (noEsc ? 1 : 0)\n\n this.reorderMixableMarks(state, len)\n\n // Find the prefix of the mark set that didn't change\n this.checkCloseMarks(state, len, index)\n\n // Output any previously expelled trailing whitespace outside the marks\n if (leading !== '') this.text(leading)\n\n // Open the marks that need to be opened\n this.checkOpenMarks(state, len, index, inner, noEsc)\n }\n\n private checkOpenMarks (\n state: InlineState,\n len: number,\n index: number,\n inner: MarkupMark | undefined,\n noEsc: boolean\n ): void {\n if (state.node !== undefined) {\n this.updateActiveMarks(state, len, index)\n\n // Render the node. Special case code marks, since their content\n // may not be escaped.\n if (this.isNoEscapeRequire(state.node, inner, noEsc, state)) {\n this.renderMarkText(inner as MarkupMark, state, index)\n } else {\n this.render(state.node, state.parent, index)\n }\n }\n }\n\n private isNoEscapeRequire (\n node: MarkupNode,\n inner: MarkupMark | undefined,\n noEsc: boolean,\n state: InlineState\n ): boolean {\n return inner !== undefined && noEsc && node.type === MarkupNodeType.text\n }\n\n private renderMarkText (inner: MarkupMark, state: InlineState, index: number): void {\n this.text(\n this.markString(inner, true, state.parent, index) +\n (state.node?.text as string) +\n this.markString(inner, false, state.parent, index + 1),\n false\n )\n }\n\n private updateActiveMarks (state: InlineState, len: number, index: number): void {\n while (state.active.length < len) {\n const add = state.marks[state.active.length]\n state.active.push(add)\n this.text(this.markString(add, true, state.parent, index), false)\n }\n }\n\n private checkCloseMarks (state: InlineState, len: number, index: number): void {\n let keep = 0\n while (keep < Math.min(state.active.length, len) && markEq(state.marks[keep], state.active[keep])) {\n ++keep\n }\n\n // Close the marks that need to be closed\n while (keep < state.active.length) {\n const mark = state.active.pop()\n if (mark !== undefined) {\n this.text(this.markString(mark, false, state.parent, index), false)\n }\n }\n }\n\n private adjustLeading (state: InlineState): string {\n let leading = state.trailing\n state.trailing = ''\n // If whitespace has to be expelled from the node, adjust\n // leading and trailing accordingly.\n const node = state?.node\n if (this.isText(node) && this.isMarksHasExpelEnclosingWhitespace(state)) {\n const match = /^(\\s*)(.*?)(\\s*)$/m.exec(node?.text ?? '')\n if (match !== null) {\n const [leadMatch, innerMatch, trailMatch] = [match[1], match[2], match[3]]\n leading += leadMatch\n state.trailing = trailMatch\n this.adjustLeadingTextNode(leadMatch, trailMatch, state, innerMatch, node as MarkupNode)\n }\n }\n return leading\n }\n\n private isMarksHasExpelEnclosingWhitespace (state: InlineState): boolean {\n return state.marks.some((mark) => this.marks[mark.type]?.expelEnclosingWhitespace)\n }\n\n private adjustLeadingTextNode (\n lead: string,\n trail: string,\n state: InlineState,\n inner: string,\n node: MarkupNode\n ): void {\n if (lead !== '' || trail !== '') {\n state.node = inner !== undefined ? { ...node, text: inner } : undefined\n if (state.node === undefined) {\n state.marks = state.active\n }\n }\n }\n\n private updateHardBreakMarks (state: InlineState, index: number): void {\n if (state.node !== undefined && state.node.type === MarkupNodeType.hard_break) {\n state.marks = this.filterHardBreakMarks(state.marks, index, state)\n }\n }\n\n private filterHardBreakMarks (marks: MarkupMark[], index: number, state: InlineState): MarkupMark[] {\n const content = state.parent.content ?? []\n const next = content[index + 1]\n if (!this.isHardbreakText(next)) {\n return []\n }\n return marks.filter((m) => isInSet(m, next.marks ?? []))\n }\n\n private isHardbreakText (next?: MarkupNode): boolean {\n return (\n next !== undefined && (next.type !== MarkupNodeType.text || (next.text !== undefined && /\\S/.test(next.text)))\n )\n }\n\n private isText (node?: MarkupNode): boolean {\n return node !== undefined && node.type === MarkupNodeType.text && node.text !== undefined\n }\n\n // :: (Node)\n // Render the contents of `parent` as inline content.\n renderInline (parent: MarkupNode): void {\n const state: InlineState = { active: [], trailing: '', parent, marks: [] }\n nodeContent(parent).forEach((nde, index) => {\n state.node = nde\n this.renderNodeInline(state, index)\n })\n state.node = undefined\n this.renderNodeInline(state, 0)\n }\n\n // :: (Node, string, (number) \u2192 string)\n // Render a node's content as a list. `delim` should be the extra\n // indentation added to all lines except the first in an item,\n // `firstDelim` is a function going from an item index to a\n // delimiter for the first line of the item.\n renderList (node: MarkupNode, delim: string, firstDelim: FirstDelim): void {\n this.flushListClose(node)\n\n const isTight: boolean =\n typeof node.attrs?.tight !== 'undefined' ? node.attrs.tight === 'true' : this.options.tightLists\n const prevTight = this.inTightList\n this.inTightList = isTight\n\n nodeContent(node).forEach((child, i) => {\n this.renderListItem(node, child, i, isTight, delim, firstDelim)\n })\n this.inTightList = prevTight\n }\n\n renderListItem (\n node: MarkupNode,\n child: MarkupNode,\n i: number,\n isTight: boolean,\n delim: string,\n firstDelim: FirstDelim\n ): void {\n if (i > 0 && isTight) this.flushClose(1)\n this.wrapBlock(delim, firstDelim(i, node.content?.[i].attrs, node.attrs), node, () => {\n this.render(child, node, i)\n })\n }\n\n private flushListClose (node: MarkupNode): void {\n if (this.closed && this.closedNode?.type === node.type) {\n this.flushClose(3)\n } else if (this.inTightList) {\n this.flushClose(1)\n }\n }\n\n // :: (string, ?bool) \u2192 string\n // Escape the given string so that it can safely appear in Markdown\n // content. If `startOfLine` is true, also escape characters that\n // has special meaning only at the start of the line.\n esc (str: string, startOfLine = false): string {\n if (str == null) {\n return ''\n }\n str = str.replace(/[`*\\\\~\\[\\]]/g, '\\\\$&') // eslint-disable-line\n if (startOfLine) {\n str = str.replace(/^[:#\\-*+]/, '\\\\$&').replace(/^(\\d+)\\./, '$1\\\\.')\n }\n str = str.replace(/\\r?\\n/g, '\\\\\\n')\n return str\n }\n\n htmlEsc (str: string): string {\n if (str == null) {\n return ''\n }\n\n return str\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n }\n\n quote (str: string): string {\n const wrap = !(str?.includes('\"') ?? false) ? '\"\"' : !(str?.includes(\"'\") ?? false) ? \"''\" : '()'\n return wrap[0] + str + wrap[1]\n }\n\n // :: (string, number) \u2192 string\n // Repeat the given string `n` times.\n repeat (str: string, n: number): string {\n let out = ''\n for (let i = 0; i < n; i++) out += str\n return out\n }\n\n // : (Mark, bool, string?) \u2192 string\n // Get the markdown string for a given opening or closing mark.\n markString (mark: MarkupMark, open: boolean, parent: MarkupNode, index: number): string {\n let value = mark.attrs?.marker\n if (value === undefined) {\n const info = this.marks[mark.type]\n if (info == null) {\n throw new Error(`No info for mark ${mark.type}`)\n }\n value = open ? info.open : info.close\n }\n return typeof value === 'string' ? value : (value(this, mark, parent, index) ?? '')\n }\n}\n\nfunction makeQuery (obj: Record<string, string | number | boolean | null | undefined>): string {\n return Object.keys(obj)\n .filter((it) => it[1] != null)\n .map(function (k) {\n return encodeURIComponent(k) + '=' + encodeURIComponent(obj[k] as string | number | boolean)\n })\n .join('&')\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,uBAAuD;AACvD,uBAA6B;AAE7B,mBAAgC;AAChC,kBAAuC;AAuCvC,SAAS,aAAc,MAAuB;AAC5C,SAAO,OAAO,MAAM;AACtB;AAFS;AAIT,SAAS,WAAY,MAAkB,QAAoB,OAAwB;AACjF,MAAI,KAAK,OAAO,UAAU,UAAa,CAAC,QAAQ,KAAK,KAAK,OAAO,IAAI,EAAG,QAAO;AAC/E,QAAM,UAAU,OAAO,UAAU,KAAK;AACtC,MAAI,YAAY,QAAW;AACzB,WAAO;AAAA,EACT;AACA,MACE,QAAQ,SAAS,gCAAe,QAChC,QAAQ,SAAS,KAAK,OAAO,QAC7B,QAAQ,QAAQ,QAAQ,MAAM,SAAS,CAAC,MAAM,MAC9C;AACA,WAAO;AAAA,EACT;AACA,SAAO,WAAW,OAAO,SAAS,UAAU,KAAK,KAAK,KAAC,sBAAQ,MAAM,OAAO,UAAU,QAAQ,CAAC,GAAG,SAAS,CAAC,CAAC;AAC/G;AAdS;AAgBT,MAAM,iBAA6B,wBAAC,GAAG,OAAO,gBAAsC;AAClF,QAAM,OACJ,OAAO,WAAW,UAAa,OAAO,WAAW,SAC7C,eAAe,OAAO,MAAM,WAAW,OAAO,MAAM,SACpD;AAEN,QAAM,SAAS,aAAa,UAAU;AACtC,SAAO,GAAG,MAAM,KAAK,OAAO,YAAY,OAAO,MAAM,GAAG,KAAK,IAAI;AACnE,GARmC;AAY5B,MAAM,aAA4C;AAAA,EACvD,YAAY,wBAAC,OAAO,SAAS;AAC3B,UAAM,UAAU,MAAM,MAAM,MAAM,MAAM;AACtC,YAAM,cAAc,IAAI;AAAA,IAC1B,CAAC;AAAA,EACH,GAJY;AAAA,EAKZ,WAAW,wBAAC,OAAO,SAAS;AAC1B,UAAM,MAAM,aAAW,uBAAU,IAAI,EAAE,YAAY,EAAE;AAAA,CAAS;AAE9D,UAAM,aAAa,IAAI;AAEvB,UAAM,cAAc;AACpB,UAAM,MAAM,KAAK;AACjB,UAAM,WAAW,IAAI;AAAA,EACvB,GARW;AAAA,EASX,SAAS,wBAAC,OAAO,SAAS;AACxB,UAAM,MAAM,cAAc;AAC1B,UAAM,aAAa,IAAI;AACvB,UAAM,cAAc;AACpB,UAAM,MAAM,KAAK;AACjB,UAAM,WAAW,IAAI;AAAA,EACvB,GANS;AAAA,EAOT,SAAS,wBAAC,OAAO,SAAS;AACxB,UAAM,YAAQ,uBAAU,IAAI;AAC5B,QAAI,MAAM,WAAW,OAAO,MAAM,UAAU,GAAG;AAC7C,YAAM,aAAa,IAAI;AACvB,YAAM,cAAc;AACpB,YAAM,MAAM,OAAO;AAAA,IACrB,WAAW,MAAM,WAAW,OAAO,MAAM,UAAU,GAAG;AACpD,YAAM,aAAa,IAAI;AACvB,YAAM,cAAc;AACpB,YAAM,MAAM,OAAO;AAAA,IACrB,OAAO;AACL,YAAM,MAAM,MAAM,OAAO,KAAK,MAAM,UAAU,SAAY,OAAO,MAAM,KAAK,IAAI,CAAC,IAAI,GAAG;AACxF,YAAM,aAAa,IAAI;AAAA,IACzB;AACA,UAAM,WAAW,IAAI;AAAA,EACvB,GAfS;AAAA,EAgBT,gBAAgB,wBAAC,OAAO,SAAS;AAC/B,UAAM,MAAM,OAAG,uBAAU,IAAI,EAAE,UAAU,KAAK,EAAE;AAChD,UAAM,WAAW,IAAI;AAAA,EACvB,GAHgB;AAAA,EAIhB,YAAY,wBAAC,OAAO,SAAS;AAC3B,UAAM,WAAW,MAAM,MAAM,MAAM,OAAG,uBAAU,IAAI,EAAE,UAAU,GAAG,GAAQ;AAAA,EAC7E,GAFY;AAAA,EAGZ,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,WAAW,MAAM,MAAM,MAAM,QAAa;AAAA,EAClD,GAFU;AAAA,EAGV,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,WAAW,MAAM,MAAM,cAAc;AAAA,EAC7C,GAFU;AAAA,EAGV,aAAa,wBAAC,OAAO,SAAS;AAC5B,QAAI,QAAQ;AACZ,YAAI,uBAAU,IAAI,EAAE,UAAU,QAAW;AACvC,cAAQ,WAAO,uBAAU,IAAI,EAAE,KAAK;AAAA,IACtC;AACA,UAAM,OAAO,OAAO,YAAQ,yBAAY,IAAI,EAAE,SAAS,CAAC,EAAE;AAC1D,UAAM,QAAQ,MAAM,OAAO,KAAK,OAAO,CAAC;AACxC,UAAM,WAAW,MAAM,OAAO,CAAC,MAAc;AAC3C,YAAM,OAAO,OAAO,QAAQ,CAAC;AAC7B,aAAO,MAAM,OAAO,KAAK,OAAO,KAAK,MAAM,IAAI,OAAO;AAAA,IACxD,CAAC;AAAA,EACH,GAXa;AAAA,EAYb,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,cAAc,IAAI;AAAA,EAC1B,GAFU;AAAA,EAGV,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,cAAc,IAAI;AAAA,EAC1B,GAFU;AAAA,EAGV,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,cAAc,IAAI;AAAA,EAC1B,GAFU;AAAA,EAGV,WAAW,wBAAC,OAAO,SAAS;AAC1B,UAAM,aAAa,IAAI;AACvB,UAAM,WAAW,IAAI;AAAA,EACvB,GAHW;AAAA,EAIX,SAAS,wBAAC,OAAO,SAAS;AACxB,UAAM,MAAM,OAAO;AACnB,UAAM,cAAc;AACpB,UAAM,aAAa,IAAI;AACvB,UAAM,cAAc;AACpB,UAAM,MAAM,QAAQ;AAAA,EACtB,GANS;AAAA,EAQT,OAAO,wBAAC,OAAO,SAAS;AACtB,UAAM,YAAQ,uBAAU,IAAI;AAC5B,QAAI,MAAM,SAAS,QAAQ,MAAM,SAAS,KAAK,MAAM;AAEnD,YAAM;AAAA,QACJ,OACE,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,EAAE,IAC9B,QACC,MAAM,WACL,GAAG,MAAM,SAAS,CAAC,SACV,MAAM,SAAS,CAAC,MACxB,MAAM,SAAS,OAAO,YAAY,MAAM,IAAI,GAAG,MAAM,KAAK,EAAE,IAAI,OAChE,MAAM,UAAU,OAAO,aAAa,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,IAAI,OACnE,MAAM,SAAS,OAAO,YAAY,MAAM,IAAI,GAAG,MAAM,KAAK,EAAE,IAAI,QAClE,MAAM,SAAS,OAAO,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,IAAI,MAC7D;AAAA,MACJ;AAAA,IACF,WAAW,MAAM,SAAS,KAAK,MAAM;AAEnC,YAAM;AAAA,QACJ,OACE,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,EAAE,IAC9B,QACC,MAAM,WACL,GAAG,MAAM,SAAS,CAAC,MAClB,MAAM,SAAS,OAAO,YAAY,MAAM,IAAI,GAAG,MAAM,KAAK,EAAE,IAAI,OAChE,MAAM,UAAU,OAAO,aAAa,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,IAAI,QACrE,MAAM,SAAS,OAAO,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,IAAI,MAC7D;AAAA,MACJ;AAAA,IACF,OAAO;AACL,UAAI,MAAM,SAAS,QAAQ,MAAM,UAAU,MAAM;AAC/C,cAAM;AAAA,UACJ,UACG,MAAM,SAAS,OAAO,WAAW,MAAM,IAAI,GAAG,MAAM,KAAK,EAAE,CAAC,MAAM,OAClE,MAAM,UAAU,OAAO,YAAY,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,MAAM,MACtE,SAAS,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,CAAC,OACjC,MAAM,OAAO,OAAO,SAAS,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,OAC5D,MAAM,SAAS,OAAO,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,IAAI,WAAW;AAAA,QAC5E;AAAA,MACF,OAAO;AACL,cAAM;AAAA,UACJ,OACE,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,EAAE,IAC9B,OACA,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,KACvB,MAAM,SAAS,OAAO,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,IAAI,MAC7D;AAAA,QACJ;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAnDO;AAAA,EAoDP,WAAW,wBAAC,OAAO,SAAS;AAC1B,UAAM,YAAQ,uBAAU,IAAI;AAC5B,QAAI,MAAM,MAAM;AAChB,QAAI,CAAC,IAAI,SAAS,GAAG,GAAG;AACtB,aAAO;AAAA,IACT,OAAO;AACL,aAAO;AAAA,IACT;AACA,UAAM;AAAA,MACJ,MACE,MAAM,IAAI,GAAG,MAAM,SAAS,EAAE,EAAE,IAChC,KACG,GAAG,GAAG,UAAU;AAAA,QACjB,QAAQ,MAAM;AAAA,QACd,KAAK,MAAM;AAAA,QACX,OAAO,MAAM;AAAA,MACf,CAAC,CAAC,MACD,MAAM,UAAU,SAAY,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,IAAI,MACnE;AAAA,IACJ;AAAA,EACF,GApBW;AAAA,EAqBX,UAAU,wBAAC,OAAO,SAAS;AACzB,UAAM,aAAa,IAAI;AACvB,UAAM,WAAW,IAAI;AAAA,EACvB,GAHU;AAAA,EAIV,SAAS,wBAAC,OAAO,SAAS;AACxB,UAAM,MAAM,MAAM;AAClB,UAAM,aAAa,IAAI;AACvB,UAAM,MAAM,KAAK;AAAA,EACnB,GAJS;AAAA,EAKT,WAAW,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACzC,UAAM,cAAU,yBAAY,MAAM;AAClC,aAAS,IAAI,QAAQ,GAAG,IAAI,QAAQ,QAAQ,KAAK;AAC/C,UAAI,QAAQ,CAAC,EAAE,SAAS,KAAK,MAAM;AACjC,cAAM,MAAM,MAAM;AAClB;AAAA,MACF;AAAA,IACF;AAAA,EACF,GARW;AAAA,EASX,MAAM,wBAAC,OAAO,SAAS;AAErB,UAAM,KAAK,KAAK,QAAQ,EAAE;AAAA,EAC5B,GAHM;AAAA,EAIN,OAAO,wBAAC,OAAO,SAAS;AACtB,UAAM,KAAK,KAAK,OAAO,KAAe;AAAA,EACxC,GAFO;AAAA,EAGP,OAAO,wBAAC,OAAO,SAAS;AACtB,UAAM,MAAM,MAAM,WAAW,IAAI,CAAC;AAClC,UAAM,WAAW,IAAI;AAAA,EACvB,GAHO;AAAA,EAIP,OAAO,wBAAC,OAAO,SAAS;AACtB,UAAM,YAAQ,uBAAU,IAAI;AAC5B,UAAM,WAAW,MAAM;AACvB,UAAM,MAAM,YAAY,UAAU,QAAQ,CAAC,sBAAsB;AAEjE,UAAM,MAAM,MAAM,QAAQ,QAAQ,EAAE,QAAQ,OAAO,QAAQ,CAAC;AAC5D,UAAM,MAAM,MAAM;AAAA,EACpB,GAPO;AAQT;AAUO,MAAM,aAA4C;AAAA,EACvD,IAAI;AAAA,IACF,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACpC,UAAI,MAAM,gBAAgB,MAAM;AAC9B,eAAO,YAAY,UAAU,KAAK,OAAO,IAAI,CAAC;AAAA,MAChD,OAAO;AACL,cAAM,aAAa,WAAW,MAAM,QAAQ,KAAK;AACjD,eAAO,MAAM,aAAa,MAAM;AAAA,MAClC;AAAA,IACF,GAPM;AAAA,IAQN,OAAO,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACrC,UAAI,MAAM,gBAAgB,MAAM;AAC9B,eAAO;AAAA,MACT,OAAO;AACL,cAAM,EAAE,WAAW,IAAI;AACvB,cAAM,aAAa;AAEnB,cAAM,OAAQ,KAAK,OAAO,QAAmB;AAE7C,cAAM,MAAM,KAAK,QAAQ,gBAAgB,MAAM;AAC/C,cAAM,YAAY,IAAI,SAAS,GAAG;AAElC,eAAO,eAAe,OAClB,MACA,QACG,YAAY,IAAI,GAAG,MAAM,QACzB,KAAK,OAAO,UAAU,SAAY,MAAM,KAAK,OAAO,OAAiB,QAAQ,MAAM,KAAK,CAAC,MAAM,MAChG;AAAA,MACR;AAAA,IACF,GAnBO;AAAA,IAoBP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACpC,aAAO,aAAa,KAAK;AAAA,IAC3B,GAFM;AAAA,IAGN,OAAO,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACrC,aAAO,aAAa,IAAI;AAAA,IAC1B,GAFO;AAAA,IAGP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,WAAW;AAAA,IACT,MAAM,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACpC,UAAI,KAAK,OAAO,UAAU,QAAW;AACnC,eAAO;AAAA,MACT;AACA,aAAO,uBAAuB,KAAK,MAAM,KAAK,iBAAiB,KAAK,MAAM,KAAK;AAAA,IACjF,GALM;AAAA,IAMN,OAAO,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACrC,UAAI,KAAK,OAAO,UAAU,QAAW;AACnC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,GALO;AAAA,IAMP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,WAAW;AAAA,IACT,MAAM,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACpC,YAAM,QAAQ,KAAK,SAAS,CAAC;AAC7B,UAAI,OAAO,KAAK,KAAK,EAAE,WAAW,GAAG;AACnC,eAAO;AAAA,MACT;AACA,YAAM,aAAa,OAAO,QAAQ,KAAK,EACpC,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,cAAM,WAAW,IAAI,QAAQ,UAAU,CAAC,WAAW,IAAI,OAAO,YAAY,CAAC,EAAE;AAC7E,eAAO,GAAG,QAAQ,KAAK,KAAK;AAAA,MAC9B,CAAC,EACA,KAAK,IAAI;AAEZ,aAAO,gBAAgB,UAAU;AAAA,IACnC,GAbM;AAAA,IAcN,OAAO,wBAAC,OAAO,MAAM,QAAQ,UAAU;AACrC,YAAM,QAAQ,KAAK,SAAS,CAAC;AAC7B,UAAI,OAAO,KAAK,KAAK,EAAE,WAAW,GAAG;AACnC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,GANO;AAAA,IAOP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,0BAA0B;AAAA,IAC1B,QAAQ;AAAA,EACV;AACF;AAUO,MAAM,cAAgC;AAAA,EAhc7C,OAgc6C;AAAA;AAAA;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YACE,QAAQ,YACR,QAAQ,YACR,UAAwB,EAAE,YAAY,MAAM,QAAQ,UAAU,UAAU,UAAU,GAClF;AACA,SAAK,QAAQ;AACb,SAAK,QAAQ;AACb,SAAK,QAAQ,KAAK,MAAM;AACxB,SAAK,SAAS;AACd,SAAK,cAAc;AACnB,SAAK,SAAS,QAAQ;AACtB,SAAK,WAAW,QAAQ;AACxB,SAAK,aAAa,QAAQ,cAAc;AAExC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,WAAY,MAAoB;AAC9B,QAAI,KAAK,QAAQ;AACf,UAAI,CAAC,KAAK,QAAQ,EAAG,MAAK,OAAO;AACjC,UAAI,OAAO,GAAG;AACZ,aAAK,SAAS,IAAI;AAAA,MACpB;AACA,WAAK,SAAS;AAAA,IAChB;AAAA,EACF;AAAA,EAEQ,SAAU,MAAoB;AACpC,QAAI,WAAW,KAAK;AACpB,UAAM,OAAO,OAAO,KAAK,QAAQ;AACjC,QAAI,SAAS,MAAM;AACjB,iBAAW,SAAS,MAAM,GAAG,SAAS,SAAS,KAAK,CAAC,EAAE,MAAM;AAAA,IAC/D;AACA,aAAS,IAAI,GAAG,IAAI,MAAM,KAAK;AAC7B,WAAK,OAAO,WAAW;AAAA,IACzB;AAAA,EACF;AAAA,EAEA,WAAY,MAA0B;AACpC,WAAO,KAAK,WAAW,IAAI;AAAA,EAC7B;AAAA,EAEA,UAAW,OAAe,YAA2B,MAAkB,GAAqB;AAC1F,UAAM,MAAM,KAAK;AACjB,SAAK,MAAM,cAAc,KAAK;AAC9B,SAAK,SAAS;AACd,MAAE;AACF,SAAK,QAAQ;AACb,SAAK,WAAW,IAAI;AAAA,EACtB;AAAA,EAEA,UAAoB;AAClB,WAAO,UAAU,KAAK,KAAK,GAAG;AAAA,EAChC;AAAA;AAAA;AAAA,EAIA,gBAAuB;AACrB,QAAI,CAAC,KAAK,QAAQ,EAAG,MAAK,OAAO;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAO,SAAuB;AAC5B,SAAK,WAAW,CAAC;AACjB,QAAI,KAAK,UAAU,UAAa,KAAK,QAAQ,EAAG,MAAK,OAAO,KAAK;AACjE,QAAI,QAAQ,SAAS,EAAG,MAAK,OAAO;AAAA,EACtC;AAAA;AAAA;AAAA,EAIA,WAAY,MAAwB;AAClC,SAAK,aAAa;AAClB,SAAK,SAAS;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,KAAM,MAAc,SAAS,OAAa;AACxC,UAAM,QAAQ,KAAK,MAAM,IAAI;AAC7B,aAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,YAAM,cAAc,KAAK,QAAQ,KAAK,KAAK;AAC3C,WAAK,MAAM,EAAE;AACb,WAAK,OAAO,SAAS,KAAK,IAAI,MAAM,CAAC,GAAG,WAAW,IAAI,MAAM,CAAC;AAC9D,UAAI,MAAM,MAAM,SAAS,EAAG,MAAK,OAAO;AAAA,IAC1C;AAAA,EACF;AAAA;AAAA;AAAA,EAIA,OAAQ,MAAkB,QAAoB,OAAqB;AACjE,QAAI,KAAK,MAAM,KAAK,IAAI,MAAM,QAAW;AACvC,YAAM,IAAI,MAAM,iBAAiB,KAAK,OAAO,sCAAsC;AAAA,IACrF;AACA,SAAK,MAAM,KAAK,IAAI,EAAE,MAAM,MAAM,QAAQ,KAAK;AAAA,EACjD;AAAA;AAAA;AAAA,EAIA,cAAe,QAA0B;AACvC,iCAAY,MAAM,EAAE,QAAQ,CAAC,MAAkB,MAAc;AAC3D,WAAK,OAAO,MAAM,QAAQ,CAAC;AAAA,IAC7B,CAAC;AAAA,EACH;AAAA,EAEA,mBAAoB,OAAoB,MAAkB,GAAW,KAAmB;AACtF,aAAS,IAAI,GAAG,IAAI,MAAM,OAAO,QAAQ,KAAK;AAC5C,YAAM,QAAQ,MAAM,OAAO,CAAC;AAC5B,UAAI,CAAC,KAAK,MAAM,MAAM,IAAI,EAAE,WAAW,KAAK,iBAAiB,GAAG,GAAG,OAAO,MAAM,OAAO,GAAG,GAAG;AAC3F;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,oBAAqB,OAAoB,KAAmB;AAM1D,aAAS,IAAI,GAAG,IAAI,KAAK,KAAK;AAC5B,YAAM,OAAO,MAAM,MAAM,CAAC;AAC1B,YAAM,KAAK,KAAK,MAAM,KAAK,IAAI;AAC/B,UAAI,MAAM,MAAM;AACd;AAAA,MACF;AACA,UAAI,CAAC,GAAG,QAAS;AACjB,WAAK,mBAAmB,OAAO,MAAM,GAAG,GAAG;AAAA,IAC7C;AAAA,EACF;AAAA,EAEQ,iBACN,GACA,GACA,OACA,MACA,OACA,KACS;AACT,QAAI,KAAC,qBAAO,MAAM,KAAK,KAAK,MAAM,GAAG;AACnC,aAAO;AAAA,IACT;AACA,SAAK,YAAY,GAAG,GAAG,OAAO,MAAM,GAAG;AACvC,WAAO;AAAA,EACT;AAAA,EAEQ,YAAa,GAAW,GAAW,OAAoB,MAAkB,KAAmB;AAClG,QAAI,IAAI,GAAG;AACT,YAAM,QAAQ,MAAM,MACjB,MAAM,GAAG,CAAC,EACV,OAAO,IAAI,EACX,OAAO,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,EAC9B,OAAO,MAAM,MAAM,MAAM,IAAI,GAAG,GAAG,CAAC;AAAA,IACzC;AACA,QAAI,IAAI,GAAG;AACT,YAAM,QAAQ,MAAM,MACjB,MAAM,GAAG,CAAC,EACV,OAAO,MAAM,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,EAClC,OAAO,IAAI,EACX,OAAO,MAAM,MAAM,MAAM,GAAG,GAAG,CAAC;AAAA,IACrC;AAAA,EACF;AAAA,EAEA,iBAAkB,OAAoB,OAAqB;AACzD,UAAM,QAAQ,MAAM,MAAM,SAAS,CAAC;AACpC,SAAK,qBAAqB,OAAO,KAAK;AAEtC,UAAM,UAAU,KAAK,cAAc,KAAK;AAExC,UAAM,QAAgC,MAAM,MAAM,SAAS,IAAI,MAAM,MAAM,MAAM,MAAM,SAAS,CAAC,IAAI;AACrG,UAAM,QAAQ,UAAU,UAAa,EAAE,KAAK,MAAM,MAAM,IAAI,GAAG,UAAU;AACzE,UAAM,MAAM,MAAM,MAAM,UAAU,QAAQ,IAAI;AAE9C,SAAK,oBAAoB,OAAO,GAAG;AAGnC,SAAK,gBAAgB,OAAO,KAAK,KAAK;AAGtC,QAAI,YAAY,GAAI,MAAK,KAAK,OAAO;AAGrC,SAAK,eAAe,OAAO,KAAK,OAAO,OAAO,KAAK;AAAA,EACrD;AAAA,EAEQ,eACN,OACA,KACA,OACA,OACA,OACM;AACN,QAAI,MAAM,SAAS,QAAW;AAC5B,WAAK,kBAAkB,OAAO,KAAK,KAAK;AAIxC,UAAI,KAAK,kBAAkB,MAAM,MAAM,OAAO,OAAO,KAAK,GAAG;AAC3D,aAAK,eAAe,OAAqB,OAAO,KAAK;AAAA,MACvD,OAAO;AACL,aAAK,OAAO,MAAM,MAAM,MAAM,QAAQ,KAAK;AAAA,MAC7C;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,kBACN,MACA,OACA,OACA,OACS;AACT,WAAO,UAAU,UAAa,SAAS,KAAK,SAAS,gCAAe;AAAA,EACtE;AAAA,EAEQ,eAAgB,OAAmB,OAAoB,OAAqB;AAClF,SAAK;AAAA,MACH,KAAK,WAAW,OAAO,MAAM,MAAM,QAAQ,KAAK,IAC7C,MAAM,MAAM,OACb,KAAK,WAAW,OAAO,OAAO,MAAM,QAAQ,QAAQ,CAAC;AAAA,MACvD;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,kBAAmB,OAAoB,KAAa,OAAqB;AAC/E,WAAO,MAAM,OAAO,SAAS,KAAK;AAChC,YAAM,MAAM,MAAM,MAAM,MAAM,OAAO,MAAM;AAC3C,YAAM,OAAO,KAAK,GAAG;AACrB,WAAK,KAAK,KAAK,WAAW,KAAK,MAAM,MAAM,QAAQ,KAAK,GAAG,KAAK;AAAA,IAClE;AAAA,EACF;AAAA,EAEQ,gBAAiB,OAAoB,KAAa,OAAqB;AAC7E,QAAI,OAAO;AACX,WAAO,OAAO,KAAK,IAAI,MAAM,OAAO,QAAQ,GAAG,SAAK,qBAAO,MAAM,MAAM,IAAI,GAAG,MAAM,OAAO,IAAI,CAAC,GAAG;AACjG,QAAE;AAAA,IACJ;AAGA,WAAO,OAAO,MAAM,OAAO,QAAQ;AACjC,YAAM,OAAO,MAAM,OAAO,IAAI;AAC9B,UAAI,SAAS,QAAW;AACtB,aAAK,KAAK,KAAK,WAAW,MAAM,OAAO,MAAM,QAAQ,KAAK,GAAG,KAAK;AAAA,MACpE;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,cAAe,OAA4B;AACjD,QAAI,UAAU,MAAM;AACpB,UAAM,WAAW;AAGjB,UAAM,OAAO,OAAO;AACpB,QAAI,KAAK,OAAO,IAAI,KAAK,KAAK,mCAAmC,KAAK,GAAG;AACvE,YAAM,QAAQ,qBAAqB,KAAK,MAAM,QAAQ,EAAE;AACxD,UAAI,UAAU,MAAM;AAClB,cAAM,CAAC,WAAW,YAAY,UAAU,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC;AACzE,mBAAW;AACX,cAAM,WAAW;AACjB,aAAK,sBAAsB,WAAW,YAAY,OAAO,YAAY,IAAkB;AAAA,MACzF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA,EAEQ,mCAAoC,OAA6B;AACvE,WAAO,MAAM,MAAM,KAAK,CAAC,SAAS,KAAK,MAAM,KAAK,IAAI,GAAG,wBAAwB;AAAA,EACnF;AAAA,EAEQ,sBACN,MACA,OACA,OACA,OACA,MACM;AACN,QAAI,SAAS,MAAM,UAAU,IAAI;AAC/B,YAAM,OAAO,UAAU,SAAY,EAAE,GAAG,MAAM,MAAM,MAAM,IAAI;AAC9D,UAAI,MAAM,SAAS,QAAW;AAC5B,cAAM,QAAQ,MAAM;AAAA,MACtB;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,qBAAsB,OAAoB,OAAqB;AACrE,QAAI,MAAM,SAAS,UAAa,MAAM,KAAK,SAAS,gCAAe,YAAY;AAC7E,YAAM,QAAQ,KAAK,qBAAqB,MAAM,OAAO,OAAO,KAAK;AAAA,IACnE;AAAA,EACF;AAAA,EAEQ,qBAAsB,OAAqB,OAAe,OAAkC;AAClG,UAAM,UAAU,MAAM,OAAO,WAAW,CAAC;AACzC,UAAM,OAAO,QAAQ,QAAQ,CAAC;AAC9B,QAAI,CAAC,KAAK,gBAAgB,IAAI,GAAG;AAC/B,aAAO,CAAC;AAAA,IACV;AACA,WAAO,MAAM,OAAO,CAAC,UAAM,sBAAQ,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC;AAAA,EACzD;AAAA,EAEQ,gBAAiB,MAA4B;AACnD,WACE,SAAS,WAAc,KAAK,SAAS,gCAAe,QAAS,KAAK,SAAS,UAAa,KAAK,KAAK,KAAK,IAAI;AAAA,EAE/G;AAAA,EAEQ,OAAQ,MAA4B;AAC1C,WAAO,SAAS,UAAa,KAAK,SAAS,gCAAe,QAAQ,KAAK,SAAS;AAAA,EAClF;AAAA;AAAA;AAAA,EAIA,aAAc,QAA0B;AACtC,UAAM,QAAqB,EAAE,QAAQ,CAAC,GAAG,UAAU,IAAI,QAAQ,OAAO,CAAC,EAAE;AACzE,iCAAY,MAAM,EAAE,QAAQ,CAAC,KAAK,UAAU;AAC1C,YAAM,OAAO;AACb,WAAK,iBAAiB,OAAO,KAAK;AAAA,IACpC,CAAC;AACD,UAAM,OAAO;AACb,SAAK,iBAAiB,OAAO,CAAC;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAY,MAAkB,OAAe,YAA8B;AACzE,SAAK,eAAe,IAAI;AAExB,UAAM,UACJ,OAAO,KAAK,OAAO,UAAU,cAAc,KAAK,MAAM,UAAU,SAAS,KAAK,QAAQ;AACxF,UAAM,YAAY,KAAK;AACvB,SAAK,cAAc;AAEnB,iCAAY,IAAI,EAAE,QAAQ,CAAC,OAAO,MAAM;AACtC,WAAK,eAAe,MAAM,OAAO,GAAG,SAAS,OAAO,UAAU;AAAA,IAChE,CAAC;AACD,SAAK,cAAc;AAAA,EACrB;AAAA,EAEA,eACE,MACA,OACA,GACA,SACA,OACA,YACM;AACN,QAAI,IAAI,KAAK,QAAS,MAAK,WAAW,CAAC;AACvC,SAAK,UAAU,OAAO,WAAW,GAAG,KAAK,UAAU,CAAC,EAAE,OAAO,KAAK,KAAK,GAAG,MAAM,MAAM;AACpF,WAAK,OAAO,OAAO,MAAM,CAAC;AAAA,IAC5B,CAAC;AAAA,EACH;AAAA,EAEQ,eAAgB,MAAwB;AAC9C,QAAI,KAAK,UAAU,KAAK,YAAY,SAAS,KAAK,MAAM;AACtD,WAAK,WAAW,CAAC;AAAA,IACnB,WAAW,KAAK,aAAa;AAC3B,WAAK,WAAW,CAAC;AAAA,IACnB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,IAAK,KAAa,cAAc,OAAe;AAC7C,QAAI,OAAO,MAAM;AACf,aAAO;AAAA,IACT;AACA,UAAM,IAAI,QAAQ,gBAAgB,MAAM;AACxC,QAAI,aAAa;AACf,YAAM,IAAI,QAAQ,aAAa,MAAM,EAAE,QAAQ,YAAY,OAAO;AAAA,IACpE;AACA,UAAM,IAAI,QAAQ,UAAU,MAAM;AAClC,WAAO;AAAA,EACT;AAAA,EAEA,QAAS,KAAqB;AAC5B,QAAI,OAAO,MAAM;AACf,aAAO;AAAA,IACT;AAEA,WAAO,IACJ,QAAQ,MAAM,OAAO,EACrB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,QAAQ,EACtB,QAAQ,MAAM,QAAQ;AAAA,EAC3B;AAAA,EAEA,MAAO,KAAqB;AAC1B,UAAM,OAAO,EAAE,KAAK,SAAS,GAAG,KAAK,SAAS,OAAO,EAAE,KAAK,SAAS,GAAG,KAAK,SAAS,OAAO;AAC7F,WAAO,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC;AAAA,EAC/B;AAAA;AAAA;AAAA,EAIA,OAAQ,KAAa,GAAmB;AACtC,QAAI,MAAM;AACV,aAAS,IAAI,GAAG,IAAI,GAAG,IAAK,QAAO;AACnC,WAAO;AAAA,EACT;AAAA;AAAA;AAAA,EAIA,WAAY,MAAkB,MAAe,QAAoB,OAAuB;AACtF,QAAI,QAAQ,KAAK,OAAO;AACxB,QAAI,UAAU,QAAW;AACvB,YAAM,OAAO,KAAK,MAAM,KAAK,IAAI;AACjC,UAAI,QAAQ,MAAM;AAChB,cAAM,IAAI,MAAM,oBAAoB,KAAK,IAAI,EAAE;AAAA,MACjD;AACA,cAAQ,OAAO,KAAK,OAAO,KAAK;AAAA,IAClC;AACA,WAAO,OAAO,UAAU,WAAW,QAAS,MAAM,MAAM,MAAM,QAAQ,KAAK,KAAK;AAAA,EAClF;AACF;AAEA,SAAS,UAAW,KAA2E;AAC7F,SAAO,OAAO,KAAK,GAAG,EACnB,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,IAAI,EAC5B,IAAI,SAAU,GAAG;AAChB,WAAO,mBAAmB,CAAC,IAAI,MAAM,mBAAmB,IAAI,CAAC,CAA8B;AAAA,EAC7F,CAAC,EACA,KAAK,GAAG;AACb;AAPS;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hcengineering/text-markdown",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.423",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"svelte": "src/index.ts",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -13,8 +13,18 @@
|
|
|
13
13
|
],
|
|
14
14
|
"author": "Anticrm Platform Contributors",
|
|
15
15
|
"license": "EPL-2.0",
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "compile",
|
|
18
|
+
"test": "jest --passWithNoTests --silent --coverage",
|
|
19
|
+
"build:watch": "compile",
|
|
20
|
+
"format": "format src",
|
|
21
|
+
"_phase:build": "compile transpile src",
|
|
22
|
+
"_phase:test": "jest --passWithNoTests --silent --coverage",
|
|
23
|
+
"_phase:format": "format src",
|
|
24
|
+
"_phase:validate": "compile validate"
|
|
25
|
+
},
|
|
16
26
|
"devDependencies": {
|
|
17
|
-
"@hcengineering/platform-rig": "^0.7.
|
|
27
|
+
"@hcengineering/platform-rig": "^0.7.423",
|
|
18
28
|
"@typescript-eslint/eslint-plugin": "^6.21.0",
|
|
19
29
|
"eslint-plugin-import": "^2.26.0",
|
|
20
30
|
"eslint-plugin-promise": "^6.1.1",
|
|
@@ -22,7 +32,7 @@
|
|
|
22
32
|
"eslint": "^8.54.0",
|
|
23
33
|
"@typescript-eslint/parser": "^6.21.0",
|
|
24
34
|
"eslint-config-standard-with-typescript": "^40.0.0",
|
|
25
|
-
"prettier": "^3.
|
|
35
|
+
"prettier": "^3.6.2",
|
|
26
36
|
"typescript": "^5.9.3",
|
|
27
37
|
"jest": "^29.7.0",
|
|
28
38
|
"ts-jest": "^29.1.1",
|
|
@@ -31,12 +41,15 @@
|
|
|
31
41
|
"eslint-plugin-svelte": "^2.35.1"
|
|
32
42
|
},
|
|
33
43
|
"dependencies": {
|
|
34
|
-
"@hcengineering/text-core": "^0.7.
|
|
35
|
-
"@hcengineering/text-html": "^0.7.
|
|
44
|
+
"@hcengineering/text-core": "^0.7.423",
|
|
45
|
+
"@hcengineering/text-html": "^0.7.423",
|
|
36
46
|
"markdown-it": "^14.0.0",
|
|
37
47
|
"fast-equals": "^5.2.2"
|
|
38
48
|
},
|
|
39
|
-
"repository":
|
|
49
|
+
"repository": {
|
|
50
|
+
"type": "git",
|
|
51
|
+
"url": "git+https://github.com/hcengineering/huly.core.git"
|
|
52
|
+
},
|
|
40
53
|
"publishConfig": {
|
|
41
54
|
"access": "public"
|
|
42
55
|
},
|
|
@@ -46,15 +59,5 @@
|
|
|
46
59
|
"require": "./lib/index.js",
|
|
47
60
|
"import": "./lib/index.js"
|
|
48
61
|
}
|
|
49
|
-
},
|
|
50
|
-
"scripts": {
|
|
51
|
-
"build": "compile",
|
|
52
|
-
"test": "jest --passWithNoTests --silent --coverage",
|
|
53
|
-
"build:watch": "compile",
|
|
54
|
-
"format": "format src",
|
|
55
|
-
"_phase:build": "compile transpile src",
|
|
56
|
-
"_phase:test": "jest --passWithNoTests --silent --coverage",
|
|
57
|
-
"_phase:format": "format src",
|
|
58
|
-
"_phase:validate": "compile validate"
|
|
59
62
|
}
|
|
60
|
-
}
|
|
63
|
+
}
|
|
@@ -421,6 +421,20 @@ export const storeMarks: Record<string, MarkProcessor> = {
|
|
|
421
421
|
mixable: false,
|
|
422
422
|
expelEnclosingWhitespace: false,
|
|
423
423
|
escape: false
|
|
424
|
+
},
|
|
425
|
+
subscript: {
|
|
426
|
+
open: '<sub>',
|
|
427
|
+
close: '</sub>',
|
|
428
|
+
mixable: true,
|
|
429
|
+
expelEnclosingWhitespace: false,
|
|
430
|
+
escape: true
|
|
431
|
+
},
|
|
432
|
+
superscript: {
|
|
433
|
+
open: '<sup>',
|
|
434
|
+
close: '</sup>',
|
|
435
|
+
mixable: true,
|
|
436
|
+
expelEnclosingWhitespace: false,
|
|
437
|
+
escape: true
|
|
424
438
|
}
|
|
425
439
|
}
|
|
426
440
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright \u00A9 2022-2023 Hardcore Engineering Inc.\n//\n// Licensed under the Eclipse Public License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License. You may\n// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n//\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//\n\nimport { Employee, Person } from '@hcengineering/contact'\nimport {\n AttachedDoc,\n Attribute,\n Class,\n MarkupBlobRef,\n CollectionSize,\n Data,\n Doc,\n Markup,\n Mixin,\n Ref,\n RelatedDocument,\n Space,\n Status,\n Timestamp,\n Type,\n type Permission\n} from '@hcengineering/core'\nimport { Asset, IntlString, Plugin, Resource, plugin } from '@hcengineering/platform'\nimport { Preference } from '@hcengineering/preference'\nimport { TagCategory, TagElement, TagReference } from '@hcengineering/tags'\nimport { ToDo } from '@hcengineering/time'\nimport {\n ProjectType,\n ProjectTypeDescriptor,\n Task,\n Project as TaskProject,\n TaskStatusFactory,\n TaskType,\n TaskTypeDescriptor\n} from '@hcengineering/task'\nimport { AnyComponent, ComponentExtensionId, Location, ResolvedLocation } from '@hcengineering/ui'\nimport { Action, ActionCategory, IconProps } from '@hcengineering/view'\n\nexport * from './analytics'\n\n/**\n * @public\n */\nexport interface IssueStatus extends Status {}\n\n/**\n * @public\n */\nexport interface Project extends TaskProject, IconProps {\n identifier: string // Project identifier\n sequence: number\n defaultIssueStatus: Ref<IssueStatus>\n defaultAssignee?: Ref<Employee>\n defaultTimeReportDay: TimeReportDayType\n}\n\n/**\n * @public\n */\nexport interface ProjectTargetPreference extends Preference {\n attachedTo: Ref<Project> // tracker.ids.ProjectPreferences\n\n usedOn: Timestamp\n\n props?: { key: string, value: any }[]\n}\n\nexport type RelatedIssueKind = 'classRule' | 'spaceRule'\n\nexport interface RelatedClassRule {\n kind: 'classRule'\n ofClass: Ref<Class<Doc>>\n}\n\nexport interface RelatedSpaceRule {\n kind: 'spaceRule'\n space: Ref<Space>\n}\n\n/**\n * @public\n *\n * If defined, will be used to set a default project for this kind of document's related issues.\n */\nexport interface RelatedIssueTarget extends Doc {\n // Attached to project.\n target?: Ref<Project> | null\n rule: RelatedClassRule | RelatedSpaceRule\n}\n\n/**\n * @public\n */\nexport enum TimeReportDayType {\n CurrentWorkDay = 'CurrentWorkDay',\n PreviousWorkDay = 'PreviousWorkDay'\n}\n\n/**\n * @public\n */\nexport enum IssuePriority {\n NoPriority,\n Urgent,\n High,\n Medium,\n Low\n}\n\n/**\n * @public\n */\nexport enum IssuesGrouping {\n Status = 'status',\n Assignee = 'assignee',\n Priority = 'priority',\n Component = 'component',\n Milestone = 'milestone',\n NoGrouping = '#no_category'\n}\n\n/**\n * @public\n */\nexport enum IssuesOrdering {\n Status = 'status',\n Priority = 'priority',\n LastUpdated = 'modifiedOn',\n DueDate = 'dueDate',\n Manual = 'rank'\n}\n\n/**\n * @public\n */\nexport enum IssuesDateModificationPeriod {\n All = 'all',\n PastWeek = 'pastWeek',\n PastMonth = 'pastMonth'\n}\n\n/**\n * @public\n */\nexport enum MilestoneStatus {\n Planned,\n InProgress,\n Completed,\n Canceled\n}\n\n/**\n * @public\n */\nexport interface Milestone extends Doc {\n label: string\n description?: Markup\n\n status: MilestoneStatus\n\n space: Ref<Project>\n\n comments: number\n attachments?: number\n\n targetDate: Timestamp\n}\n\n/**\n * @public\n */\nexport interface Issue extends Task {\n attachedTo: Ref<Issue>\n title: string\n description: MarkupBlobRef | null\n status: Ref<IssueStatus>\n priority: IssuePriority\n\n component: Ref<Component> | null\n\n // For subtasks\n subIssues: CollectionSize<Issue>\n blockedBy?: RelatedDocument[]\n relations?: RelatedDocument[]\n parents: IssueParentInfo[]\n\n space: Ref<Project>\n\n milestone?: Ref<Milestone> | null\n\n // Estimation in man hours\n estimation: number\n\n // Remaining time in man hours\n remainingTime: number\n\n // ReportedTime time, auto updated using trigger.\n reportedTime: number\n // Collection of reportedTime entries, for proper time estimations per person.\n reports: CollectionSize<TimeSpendReport>\n\n childInfo: IssueChildInfo[]\n\n template?: {\n // A template issue is based on\n template: Ref<IssueTemplate>\n // Child id in template\n childId?: string\n }\n\n todos?: CollectionSize<ToDo>\n}\n\n/**\n * @public\n */\nexport interface IssueDraft {\n kind: Ref<TaskType>\n _id: Ref<Issue>\n title: string\n description: Markup\n status?: Ref<IssueStatus>\n priority: IssuePriority\n assignee: Ref<Person> | null\n component: Ref<Component> | null\n space: Ref<Project>\n dueDate: Timestamp | null\n milestone?: Ref<Milestone> | null\n\n // Estimation in man days\n estimation: number\n parentIssue?: Ref<Issue>\n attachments?: number\n labels: TagReference[]\n subIssues: IssueDraft[]\n template?: {\n // A template issue is based on\n template: Ref<IssueTemplate>\n // Child id in template\n childId?: string\n }\n}\n\n/**\n * @public\n */\nexport interface IssueTemplateData {\n title: string\n description: Markup\n priority: IssuePriority\n\n assignee: Ref<Person> | null\n component: Ref<Component> | null\n\n milestone?: Ref<Milestone> | null\n\n // Estimation in man days\n estimation: number\n\n labels?: Ref<TagElement>[]\n\n kind?: Ref<TaskType>\n}\n\n/**\n * @public\n */\nexport interface IssueTemplateChild extends IssueTemplateData {\n id: Ref<Issue>\n}\n\n/**\n * @public\n */\nexport interface IssueTemplate extends Doc, IssueTemplateData {\n space: Ref<Project>\n\n children: IssueTemplateChild[]\n\n // Discussion stuff\n comments: number\n attachments?: number\n\n relations?: RelatedDocument[]\n}\n\n/**\n * @public\n *\n * Declares time spend entry\n */\nexport interface TimeSpendReport extends AttachedDoc {\n attachedTo: Ref<Issue>\n\n employee: Ref<Employee> | null\n\n date: Timestamp | null\n // Value in man hours\n value: number\n\n description: string\n}\n\n/**\n * @public\n */\nexport interface IssueParentInfo {\n parentId: Ref<Issue>\n identifier: string\n parentTitle: string\n space: Ref<Space>\n}\n\n/**\n * @public\n */\nexport interface IssueChildInfo {\n childId: Ref<Issue>\n estimation: number\n reportedTime: number\n}\n\n/**\n * @public\n */\nexport interface Document extends Doc {\n title: string\n icon: string | null\n color: number\n content?: Markup\n\n space: Ref<Project>\n}\n\n/**\n * @public\n */\nexport interface Component extends Doc {\n label: string\n description?: Markup\n lead: Ref<Employee> | null\n space: Ref<Project>\n comments: number\n attachments?: number\n}\n\n/**\n * @public\n */\nexport const trackerId = 'tracker' as Plugin\nexport * from './analytics'\n\nconst pluginState = plugin(trackerId, {\n class: {\n Project: '' as Ref<Class<Project>>,\n Issue: '' as Ref<Class<Issue>>,\n IssueTemplate: '' as Ref<Class<IssueTemplate>>,\n Component: '' as Ref<Class<Component>>,\n IssueStatus: '' as Ref<Class<IssueStatus>>,\n TypeIssuePriority: '' as Ref<Class<Type<IssuePriority>>>,\n Milestone: '' as Ref<Class<Milestone>>,\n TypeMilestoneStatus: '' as Ref<Class<Type<MilestoneStatus>>>,\n TimeSpendReport: '' as Ref<Class<TimeSpendReport>>,\n TypeReportedTime: '' as Ref<Class<Type<number>>>,\n TypeEstimation: '' as Ref<Class<Type<number>>>,\n TypeRemainingTime: '' as Ref<Class<Type<number>>>,\n RelatedIssueTarget: '' as Ref<Class<RelatedIssueTarget>>,\n ProjectTargetPreference: '' as Ref<Class<ProjectTargetPreference>>\n },\n mixin: {\n ClassicProjectTypeData: '' as Ref<Mixin<Project>>,\n IssueTypeData: '' as Ref<Mixin<Issue>>\n },\n ids: {\n NoParent: '' as Ref<Issue>,\n IssueDraft: '',\n IssueDraftChild: '',\n ClassingProjectType: '' as Ref<ProjectType>\n },\n status: {\n Backlog: '' as Ref<Status>,\n Todo: '' as Ref<Status>,\n InProgress: '' as Ref<Status>,\n Coding: '' as Ref<Status>,\n UnderReview: '' as Ref<Status>,\n Done: '' as Ref<Status>,\n Canceled: '' as Ref<Status>\n },\n component: {\n Tracker: '' as AnyComponent,\n TrackerApp: '' as AnyComponent,\n RelatedIssues: '' as AnyComponent,\n RelatedIssuesSection: '' as AnyComponent,\n RelatedIssueSelector: '' as AnyComponent,\n RelatedIssueTemplates: '' as AnyComponent,\n EditIssue: '' as AnyComponent,\n CreateIssue: '' as AnyComponent,\n ProjectPresenter: '' as AnyComponent,\n CreateIssueTemplate: '' as AnyComponent,\n CreateProject: '' as AnyComponent,\n IssueStatusPresenter: '' as AnyComponent,\n LabelsView: '' as AnyComponent\n },\n attribute: {\n IssueStatus: '' as Ref<Attribute<Status>>\n },\n icon: {\n TrackerApplication: '' as Asset,\n Component: '' as Asset,\n Issue: '' as Asset,\n Subissue: '' as Asset,\n Project: '' as Asset,\n Relations: '' as Asset,\n Inbox: '' as Asset,\n MyIssues: '' as Asset,\n Views: '' as Asset,\n Issues: '' as Asset,\n Components: '' as Asset,\n NewIssue: '' as Asset,\n Magnifier: '' as Asset,\n Labels: '' as Asset,\n DueDate: '' as Asset,\n Parent: '' as Asset,\n UnsetParent: '' as Asset,\n Milestone: '' as Asset,\n IssueTemplates: '' as Asset,\n Start: '' as Asset,\n Stop: '' as Asset,\n\n CategoryBacklog: '' as Asset,\n CategoryUnstarted: '' as Asset,\n CategoryStarted: '' as Asset,\n CategoryCompleted: '' as Asset,\n CategoryCanceled: '' as Asset,\n\n PriorityNoPriority: '' as Asset,\n PriorityUrgent: '' as Asset,\n PriorityHigh: '' as Asset,\n PriorityMedium: '' as Asset,\n PriorityLow: '' as Asset,\n\n ComponentsList: '' as Asset,\n\n MilestoneStatusPlanned: '' as Asset,\n MilestoneStatusInProgress: '' as Asset,\n MilestoneStatusPaused: '' as Asset,\n MilestoneStatusCompleted: '' as Asset,\n MilestoneStatusCanceled: '' as Asset,\n\n CopyBranch: '' as Asset,\n Duplicate: '' as Asset,\n\n TimeReport: '' as Asset,\n Estimation: '' as Asset,\n\n // Project icons\n Home: '' as Asset,\n RedCircle: '' as Asset\n },\n category: {\n Other: '' as Ref<TagCategory>,\n Tracker: '' as Ref<ActionCategory>\n },\n descriptors: {\n ProjectType: '' as Ref<ProjectTypeDescriptor>,\n Issue: '' as Ref<TaskTypeDescriptor>\n },\n action: {\n SetDueDate: '' as Ref<Action<Doc, any>>,\n SetParent: '' as Ref<Action<Doc, any>>,\n SetStatus: '' as Ref<Action>,\n SetPriority: '' as Ref<Action<Doc, any>>,\n SetAssignee: '' as Ref<Action<Doc, any>>,\n SetComponent: '' as Ref<Action<Doc, any>>,\n CopyIssueId: '' as Ref<Action<Doc, any>>,\n CopyIssueTitle: '' as Ref<Action<Doc, any>>,\n CopyIssueLink: '' as Ref<Action<Doc, any>>,\n MoveToProject: '' as Ref<Action>,\n Duplicate: '' as Ref<Action<Doc, any>>,\n Relations: '' as Ref<Action<Doc, any>>,\n NewIssue: '' as Ref<Action<Doc, any>>,\n NewIssueGlobal: '' as Ref<Action<Doc, any>>,\n NewSubIssue: '' as Ref<Action<Doc, any>>,\n EditWorkflowStatuses: '' as Ref<Action>,\n EditProject: '' as Ref<Action>,\n SetMilestone: '' as Ref<Action<Doc, any>>,\n SetLabels: '' as Ref<Action<Doc, any>>,\n EditRelatedTargets: '' as Ref<Action<Doc, any>>,\n UnsetParent: '' as Ref<Action<Doc, any>>\n },\n project: {\n DefaultProject: '' as Ref<Project>\n },\n resolver: {\n Location: '' as Resource<(loc: Location) => Promise<ResolvedLocation | undefined>>\n },\n string: {\n TrackerApplication: '' as IntlString,\n ConfigLabel: '' as IntlString,\n NewRelatedIssue: '' as IntlString,\n IssueNotificationTitle: '' as IntlString,\n IssueNotificationBody: '' as IntlString,\n IssueNotificationChanged: '' as IntlString,\n IssueNotificationChangedProperty: '' as IntlString,\n IssueNotificationMessage: '' as IntlString,\n IssueAssignedToYou: '' as IntlString,\n Project: '' as IntlString,\n RelatedIssues: '' as IntlString,\n Issue: '' as IntlString,\n NewProject: '' as IntlString,\n UnsetParentIssue: '' as IntlString,\n ForbidCreateProjectPermission: '' as IntlString,\n ForbidCreateProjectPermissionDescription: '' as IntlString\n },\n extensions: {\n IssueListHeader: '' as ComponentExtensionId,\n EditIssueHeader: '' as ComponentExtensionId,\n EditIssueTitle: '' as ComponentExtensionId\n },\n taskTypes: {\n Issue: '' as Ref<TaskType>,\n SubIssue: '' as Ref<TaskType>\n },\n permission: {\n ForbidCreateProject: '' as Ref<Permission>\n }\n})\nexport default pluginState\n\n/**\n * @public\n */\nexport function createStatesData (data: TaskStatusFactory[]): Omit<Data<Status>, 'rank'>[] {\n const states: Omit<Data<Status>, 'rank'>[] = []\n\n for (const category of data) {\n for (const sName of category.statuses) {\n states.push({\n ofAttribute: pluginState.attribute.IssueStatus,\n name: Array.isArray(sName) ? sName[0] : sName,\n color: Array.isArray(sName) ? sName[1] : undefined,\n category: category.category\n })\n }\n }\n return states\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["//\n// Copyright \u00A9 2022-2023 Hardcore Engineering Inc.\n//\n// Licensed under the Eclipse Public License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License. You may\n// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n//\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//\n\nimport { Employee, Person } from '@hcengineering/contact'\nimport {\n AttachedDoc,\n Attribute,\n Class,\n MarkupBlobRef,\n CollectionSize,\n Data,\n Doc,\n Markup,\n Mixin,\n Ref,\n RelatedDocument,\n Space,\n Status,\n Timestamp,\n Type,\n type Permission\n} from '@hcengineering/core'\nimport { Asset, IntlString, Plugin, Resource, plugin } from '@hcengineering/platform'\nimport { Preference } from '@hcengineering/preference'\nimport { TagCategory, TagElement, TagReference } from '@hcengineering/tags'\nimport { ToDo } from '@hcengineering/time'\nimport {\n ProjectType,\n ProjectTypeDescriptor,\n Task,\n Project as TaskProject,\n TaskStatusFactory,\n TaskType,\n TaskTypeDescriptor\n} from '@hcengineering/task'\nimport { AnyComponent, ComponentExtensionId, Location, ResolvedLocation } from '@hcengineering/ui'\nimport { Action, ActionCategory, IconProps } from '@hcengineering/view'\n\nexport * from './analytics'\n\n/**\n * @public\n */\nexport interface IssueStatus extends Status {}\n\n/**\n * @public\n */\nexport interface Project extends TaskProject, IconProps {\n identifier: string // Project identifier\n sequence: number\n defaultIssueStatus?: Ref<IssueStatus>\n defaultAssignee?: Ref<Employee>\n defaultTimeReportDay: TimeReportDayType\n}\n\n/**\n * @public\n */\nexport interface ProjectTargetPreference extends Preference {\n attachedTo: Ref<Project> // tracker.ids.ProjectPreferences\n\n usedOn: Timestamp\n\n props?: { key: string, value: any }[]\n}\n\nexport type RelatedIssueKind = 'classRule' | 'spaceRule'\n\nexport interface RelatedClassRule {\n kind: 'classRule'\n ofClass: Ref<Class<Doc>>\n}\n\nexport interface RelatedSpaceRule {\n kind: 'spaceRule'\n space: Ref<Space>\n}\n\n/**\n * @public\n *\n * If defined, will be used to set a default project for this kind of document's related issues.\n */\nexport interface RelatedIssueTarget extends Doc {\n // Attached to project.\n target?: Ref<Project> | null\n rule: RelatedClassRule | RelatedSpaceRule\n}\n\n/**\n * @public\n */\nexport enum TimeReportDayType {\n CurrentWorkDay = 'CurrentWorkDay',\n PreviousWorkDay = 'PreviousWorkDay'\n}\n\n/**\n * @public\n */\nexport enum IssuePriority {\n NoPriority,\n Urgent,\n High,\n Medium,\n Low\n}\n\n/**\n * @public\n */\nexport enum IssuesGrouping {\n Status = 'status',\n Assignee = 'assignee',\n Priority = 'priority',\n Component = 'component',\n Milestone = 'milestone',\n NoGrouping = '#no_category'\n}\n\n/**\n * @public\n */\nexport enum IssuesOrdering {\n Status = 'status',\n Priority = 'priority',\n LastUpdated = 'modifiedOn',\n DueDate = 'dueDate',\n Manual = 'rank'\n}\n\n/**\n * @public\n */\nexport enum IssuesDateModificationPeriod {\n All = 'all',\n PastWeek = 'pastWeek',\n PastMonth = 'pastMonth'\n}\n\n/**\n * @public\n */\nexport enum MilestoneStatus {\n Planned,\n InProgress,\n Completed,\n Canceled\n}\n\n/**\n * @public\n */\nexport interface Milestone extends Doc {\n label: string\n description?: Markup\n\n status: MilestoneStatus\n\n space: Ref<Project>\n\n comments: number\n attachments?: number\n\n targetDate: Timestamp\n}\n\n/**\n * @public\n */\nexport interface Issue extends Task {\n attachedTo: Ref<Issue>\n title: string\n description: MarkupBlobRef | null\n status: Ref<IssueStatus>\n priority: IssuePriority\n\n component: Ref<Component> | null\n\n // For subtasks\n subIssues: CollectionSize<Issue>\n blockedBy?: RelatedDocument[]\n relations?: RelatedDocument[]\n parents: IssueParentInfo[]\n\n space: Ref<Project>\n\n milestone?: Ref<Milestone> | null\n\n // Estimation in man hours\n estimation: number\n\n // Remaining time in man hours\n remainingTime: number\n\n // ReportedTime time, auto updated using trigger.\n reportedTime: number\n // Collection of reportedTime entries, for proper time estimations per person.\n reports: CollectionSize<TimeSpendReport>\n\n childInfo: IssueChildInfo[]\n\n template?: {\n // A template issue is based on\n template: Ref<IssueTemplate>\n // Child id in template\n childId?: string\n }\n\n todos?: CollectionSize<ToDo>\n}\n\n/**\n * @public\n */\nexport interface IssueDraft {\n kind: Ref<TaskType>\n _id: Ref<Issue>\n title: string\n description: Markup\n status?: Ref<IssueStatus>\n priority: IssuePriority\n assignee: Ref<Person> | null\n component: Ref<Component> | null\n space: Ref<Project>\n dueDate: Timestamp | null\n milestone?: Ref<Milestone> | null\n\n // Estimation in man days\n estimation: number\n parentIssue?: Ref<Issue>\n attachments?: number\n labels: TagReference[]\n subIssues: IssueDraft[]\n template?: {\n // A template issue is based on\n template: Ref<IssueTemplate>\n // Child id in template\n childId?: string\n }\n}\n\n/**\n * @public\n */\nexport interface IssueTemplateData {\n title: string\n description: Markup\n priority: IssuePriority\n\n assignee: Ref<Person> | null\n component: Ref<Component> | null\n\n milestone?: Ref<Milestone> | null\n\n // Estimation in man days\n estimation: number\n\n labels?: Ref<TagElement>[]\n\n kind?: Ref<TaskType>\n}\n\n/**\n * @public\n */\nexport interface IssueTemplateChild extends IssueTemplateData {\n id: Ref<Issue>\n}\n\n/**\n * @public\n */\nexport interface IssueTemplate extends Doc, IssueTemplateData {\n space: Ref<Project>\n\n children: IssueTemplateChild[]\n\n // Discussion stuff\n comments: number\n attachments?: number\n\n relations?: RelatedDocument[]\n}\n\n/**\n * @public\n *\n * Declares time spend entry\n */\nexport interface TimeSpendReport extends AttachedDoc {\n attachedTo: Ref<Issue>\n\n employee: Ref<Employee> | null\n\n date: Timestamp | null\n // Value in man hours\n value: number\n\n description: string\n}\n\n/**\n * @public\n */\nexport interface IssueParentInfo {\n parentId: Ref<Issue>\n identifier: string\n parentTitle: string\n space: Ref<Space>\n}\n\n/**\n * @public\n */\nexport interface IssueChildInfo {\n childId: Ref<Issue>\n estimation: number\n reportedTime: number\n}\n\n/**\n * @public\n */\nexport interface Document extends Doc {\n title: string\n icon: string | null\n color: number\n content?: Markup\n\n space: Ref<Project>\n}\n\n/**\n * @public\n */\nexport interface Component extends Doc {\n label: string\n description?: Markup\n lead: Ref<Employee> | null\n space: Ref<Project>\n comments: number\n attachments?: number\n}\n\n/**\n * @public\n */\nexport const trackerId = 'tracker' as Plugin\nexport * from './analytics'\n\nconst pluginState = plugin(trackerId, {\n class: {\n Project: '' as Ref<Class<Project>>,\n Issue: '' as Ref<Class<Issue>>,\n IssueTemplate: '' as Ref<Class<IssueTemplate>>,\n Component: '' as Ref<Class<Component>>,\n IssueStatus: '' as Ref<Class<IssueStatus>>,\n TypeIssuePriority: '' as Ref<Class<Type<IssuePriority>>>,\n Milestone: '' as Ref<Class<Milestone>>,\n TypeMilestoneStatus: '' as Ref<Class<Type<MilestoneStatus>>>,\n TimeSpendReport: '' as Ref<Class<TimeSpendReport>>,\n TypeReportedTime: '' as Ref<Class<Type<number>>>,\n TypeEstimation: '' as Ref<Class<Type<number>>>,\n TypeRemainingTime: '' as Ref<Class<Type<number>>>,\n RelatedIssueTarget: '' as Ref<Class<RelatedIssueTarget>>,\n ProjectTargetPreference: '' as Ref<Class<ProjectTargetPreference>>\n },\n mixin: {\n ClassicProjectTypeData: '' as Ref<Mixin<Project>>,\n IssueTypeData: '' as Ref<Mixin<Issue>>\n },\n ids: {\n NoParent: '' as Ref<Issue>,\n IssueDraft: '',\n IssueDraftChild: '',\n ClassingProjectType: '' as Ref<ProjectType>\n },\n status: {\n Backlog: '' as Ref<Status>,\n Todo: '' as Ref<Status>,\n InProgress: '' as Ref<Status>,\n Coding: '' as Ref<Status>,\n UnderReview: '' as Ref<Status>,\n Done: '' as Ref<Status>,\n Canceled: '' as Ref<Status>\n },\n component: {\n Tracker: '' as AnyComponent,\n TrackerApp: '' as AnyComponent,\n RelatedIssues: '' as AnyComponent,\n RelatedIssuesSection: '' as AnyComponent,\n RelatedIssueSelector: '' as AnyComponent,\n RelatedIssueTemplates: '' as AnyComponent,\n EditIssue: '' as AnyComponent,\n CreateIssue: '' as AnyComponent,\n ProjectPresenter: '' as AnyComponent,\n CreateIssueTemplate: '' as AnyComponent,\n CreateProject: '' as AnyComponent,\n IssueStatusPresenter: '' as AnyComponent,\n LabelsView: '' as AnyComponent\n },\n attribute: {\n IssueStatus: '' as Ref<Attribute<Status>>\n },\n icon: {\n TrackerApplication: '' as Asset,\n Component: '' as Asset,\n Issue: '' as Asset,\n Subissue: '' as Asset,\n Project: '' as Asset,\n Relations: '' as Asset,\n Inbox: '' as Asset,\n MyIssues: '' as Asset,\n Views: '' as Asset,\n Issues: '' as Asset,\n Components: '' as Asset,\n NewIssue: '' as Asset,\n Magnifier: '' as Asset,\n Labels: '' as Asset,\n DueDate: '' as Asset,\n Parent: '' as Asset,\n UnsetParent: '' as Asset,\n Milestone: '' as Asset,\n IssueTemplates: '' as Asset,\n Start: '' as Asset,\n Stop: '' as Asset,\n\n CategoryBacklog: '' as Asset,\n CategoryUnstarted: '' as Asset,\n CategoryStarted: '' as Asset,\n CategoryCompleted: '' as Asset,\n CategoryCanceled: '' as Asset,\n\n PriorityNoPriority: '' as Asset,\n PriorityUrgent: '' as Asset,\n PriorityHigh: '' as Asset,\n PriorityMedium: '' as Asset,\n PriorityLow: '' as Asset,\n\n ComponentsList: '' as Asset,\n\n MilestoneStatusPlanned: '' as Asset,\n MilestoneStatusInProgress: '' as Asset,\n MilestoneStatusPaused: '' as Asset,\n MilestoneStatusCompleted: '' as Asset,\n MilestoneStatusCanceled: '' as Asset,\n\n CopyBranch: '' as Asset,\n Duplicate: '' as Asset,\n\n TimeReport: '' as Asset,\n Estimation: '' as Asset,\n\n // Project icons\n Home: '' as Asset,\n RedCircle: '' as Asset\n },\n category: {\n Other: '' as Ref<TagCategory>,\n Tracker: '' as Ref<ActionCategory>\n },\n descriptors: {\n ProjectType: '' as Ref<ProjectTypeDescriptor>,\n Issue: '' as Ref<TaskTypeDescriptor>\n },\n action: {\n CopyAsMarkdownTable: '' as Ref<Action<Doc, any>>,\n SetDueDate: '' as Ref<Action<Doc, any>>,\n SetParent: '' as Ref<Action<Doc, any>>,\n SetStatus: '' as Ref<Action>,\n SetPriority: '' as Ref<Action<Doc, any>>,\n SetAssignee: '' as Ref<Action<Doc, any>>,\n SetComponent: '' as Ref<Action<Doc, any>>,\n CopyIssueId: '' as Ref<Action<Doc, any>>,\n CopyIssueTitle: '' as Ref<Action<Doc, any>>,\n CopyIssueLink: '' as Ref<Action<Doc, any>>,\n MoveToProject: '' as Ref<Action>,\n Duplicate: '' as Ref<Action<Doc, any>>,\n Relations: '' as Ref<Action<Doc, any>>,\n NewIssue: '' as Ref<Action<Doc, any>>,\n NewIssueGlobal: '' as Ref<Action<Doc, any>>,\n NewSubIssue: '' as Ref<Action<Doc, any>>,\n EditWorkflowStatuses: '' as Ref<Action>,\n EditProject: '' as Ref<Action>,\n SetMilestone: '' as Ref<Action<Doc, any>>,\n SetLabels: '' as Ref<Action<Doc, any>>,\n EditRelatedTargets: '' as Ref<Action<Doc, any>>,\n UnsetParent: '' as Ref<Action<Doc, any>>\n },\n project: {\n DefaultProject: '' as Ref<Project>\n },\n resolver: {\n Location: '' as Resource<(loc: Location) => Promise<ResolvedLocation | undefined>>\n },\n string: {\n TrackerApplication: '' as IntlString,\n ConfigLabel: '' as IntlString,\n NewRelatedIssue: '' as IntlString,\n IssueNotificationTitle: '' as IntlString,\n IssueNotificationBody: '' as IntlString,\n IssueNotificationChanged: '' as IntlString,\n IssueNotificationChangedProperty: '' as IntlString,\n IssueNotificationMessage: '' as IntlString,\n IssueAssignedToYou: '' as IntlString,\n Project: '' as IntlString,\n RelatedIssues: '' as IntlString,\n Issue: '' as IntlString,\n NewProject: '' as IntlString,\n UnsetParentIssue: '' as IntlString,\n ForbidCreateProjectPermission: '' as IntlString,\n ForbidCreateProjectPermissionDescription: '' as IntlString\n },\n extensions: {\n IssueListHeader: '' as ComponentExtensionId,\n EditIssueHeader: '' as ComponentExtensionId,\n EditIssueTitle: '' as ComponentExtensionId\n },\n taskTypes: {\n Issue: '' as Ref<TaskType>,\n SubIssue: '' as Ref<TaskType>\n },\n permission: {\n ForbidCreateProject: '' as Ref<Permission>\n }\n})\nexport default pluginState\n\n/**\n * @public\n */\nexport function createStatesData (data: TaskStatusFactory[]): Omit<Data<Status>, 'rank'>[] {\n const states: Omit<Data<Status>, 'rank'>[] = []\n\n for (const category of data) {\n for (const sName of category.statuses) {\n states.push({\n ofAttribute: pluginState.attribute.IssueStatus,\n name: Array.isArray(sName) ? sName[0] : sName,\n color: Array.isArray(sName) ? sName[1] : undefined,\n category: category.category\n })\n }\n }\n return states\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["TimeReportDayType", "IssuePriority", "IssuesGrouping", "IssuesOrdering", "IssuesDateModificationPeriod", "MilestoneStatus"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hcengineering/tracker",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.423",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"svelte": "src/index.ts",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -22,30 +22,33 @@
|
|
|
22
22
|
"_phase:validate": "compile validate"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@hcengineering/platform-rig": "^0.7.
|
|
26
|
-
"@typescript-eslint/eslint-plugin": "^6.
|
|
25
|
+
"@hcengineering/platform-rig": "^0.7.423",
|
|
26
|
+
"@typescript-eslint/eslint-plugin": "^6.21.0",
|
|
27
27
|
"eslint-plugin-import": "^2.26.0",
|
|
28
28
|
"eslint-plugin-promise": "^6.1.1",
|
|
29
29
|
"eslint-plugin-n": "^15.4.0",
|
|
30
30
|
"eslint": "^8.54.0",
|
|
31
|
-
"@typescript-eslint/parser": "^6.
|
|
31
|
+
"@typescript-eslint/parser": "^6.21.0",
|
|
32
32
|
"eslint-config-standard-with-typescript": "^40.0.0",
|
|
33
|
-
"prettier": "^3.
|
|
34
|
-
"typescript": "^5.
|
|
33
|
+
"prettier": "^3.6.2",
|
|
34
|
+
"typescript": "^5.9.3",
|
|
35
35
|
"jest": "^29.7.0",
|
|
36
36
|
"ts-jest": "^29.1.1",
|
|
37
37
|
"@types/jest": "^29.5.5"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@hcengineering/core": "^0.7.
|
|
41
|
-
"@hcengineering/platform": "^0.7.
|
|
42
|
-
"@hcengineering/contact": "^0.7.
|
|
43
|
-
"@hcengineering/chunter": "^0.7.
|
|
44
|
-
"@hcengineering/task": "^0.7.
|
|
45
|
-
"@hcengineering/tags": "^0.7.
|
|
40
|
+
"@hcengineering/core": "^0.7.423",
|
|
41
|
+
"@hcengineering/platform": "^0.7.423",
|
|
42
|
+
"@hcengineering/contact": "^0.7.423",
|
|
43
|
+
"@hcengineering/chunter": "^0.7.423",
|
|
44
|
+
"@hcengineering/task": "^0.7.423",
|
|
45
|
+
"@hcengineering/tags": "^0.7.423",
|
|
46
46
|
"lexorank": "~1.0.4"
|
|
47
47
|
},
|
|
48
|
-
"repository":
|
|
48
|
+
"repository": {
|
|
49
|
+
"type": "git",
|
|
50
|
+
"url": "git+https://github.com/hcengineering/platform.git"
|
|
51
|
+
},
|
|
49
52
|
"publishConfig": {
|
|
50
53
|
"access": "public"
|
|
51
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus.d.ts","sourceRoot":"","sources":["../../src/commands/focus.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"focus.d.ts","sourceRoot":"","sources":["../../src/commands/focus.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAKxD,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,QAAQ,CAAC,UAAU;QAC3B,KAAK,EAAE;YACL;;;;;;eAMG;YACH,KAAK,EAAE;YACL;;eAEG;YACH,QAAQ,CAAC,EAAE,aAAa;YAExB;;;eAGG;YACH,OAAO,CAAC,EAAE;gBACR,cAAc,CAAC,EAAE,OAAO,CAAC;aAC1B,KACE,UAAU,CAAC;SACjB,CAAA;KACF;CACF;AAED,eAAO,MAAM,KAAK,EAAE,WAAW,CAAC,OAAO,CAiEtC,CAAA"}
|