@doist/typist 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/CODE_OF_CONDUCT.md +83 -0
  3. package/CONTRIBUTING.md +123 -0
  4. package/LICENSE +21 -0
  5. package/README.md +74 -0
  6. package/dist/components/typist-editor.d.ts +173 -0
  7. package/dist/components/typist-editor.d.ts.map +1 -0
  8. package/dist/components/typist-editor.helper.d.ts +22 -0
  9. package/dist/components/typist-editor.helper.d.ts.map +1 -0
  10. package/dist/components/typist-editor.helper.js +26 -0
  11. package/dist/components/typist-editor.js +160 -0
  12. package/dist/constants/common.d.ts +10 -0
  13. package/dist/constants/common.d.ts.map +1 -0
  14. package/dist/constants/common.js +9 -0
  15. package/dist/constants/extension-priorities.d.ts +26 -0
  16. package/dist/constants/extension-priorities.d.ts.map +1 -0
  17. package/dist/constants/extension-priorities.js +25 -0
  18. package/dist/constants/regular-expressions.d.ts +6 -0
  19. package/dist/constants/regular-expressions.d.ts.map +1 -0
  20. package/dist/constants/regular-expressions.js +5 -0
  21. package/dist/extensions/core/extra-editor-commands/commands/extend-word-range.d.ts +24 -0
  22. package/dist/extensions/core/extra-editor-commands/commands/extend-word-range.d.ts.map +1 -0
  23. package/dist/extensions/core/extra-editor-commands/commands/extend-word-range.js +32 -0
  24. package/dist/extensions/core/extra-editor-commands/commands/insert-markdown-content.d.ts +28 -0
  25. package/dist/extensions/core/extra-editor-commands/commands/insert-markdown-content.d.ts.map +1 -0
  26. package/dist/extensions/core/extra-editor-commands/commands/insert-markdown-content.js +25 -0
  27. package/dist/extensions/core/extra-editor-commands/extra-editor-commands.d.ts +9 -0
  28. package/dist/extensions/core/extra-editor-commands/extra-editor-commands.d.ts.map +1 -0
  29. package/dist/extensions/core/extra-editor-commands/extra-editor-commands.js +18 -0
  30. package/dist/extensions/core/view-event-handlers.d.ts +33 -0
  31. package/dist/extensions/core/view-event-handlers.d.ts.map +1 -0
  32. package/dist/extensions/core/view-event-handlers.js +35 -0
  33. package/dist/extensions/plain-text/paste-multiline-text.d.ts +10 -0
  34. package/dist/extensions/plain-text/paste-multiline-text.d.ts.map +1 -0
  35. package/dist/extensions/plain-text/paste-multiline-text.js +66 -0
  36. package/dist/extensions/plain-text/plain-text-document.d.ts +17 -0
  37. package/dist/extensions/plain-text/plain-text-document.d.ts.map +1 -0
  38. package/dist/extensions/plain-text/plain-text-document.js +17 -0
  39. package/dist/extensions/plain-text/plain-text-kit.d.ts +42 -0
  40. package/dist/extensions/plain-text/plain-text-kit.d.ts.map +1 -0
  41. package/dist/extensions/plain-text/plain-text-kit.js +47 -0
  42. package/dist/extensions/plain-text/plain-text-paragraph.d.ts +9 -0
  43. package/dist/extensions/plain-text/plain-text-paragraph.d.ts.map +1 -0
  44. package/dist/extensions/plain-text/plain-text-paragraph.js +13 -0
  45. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-lists.d.ts +9 -0
  46. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-lists.d.ts.map +1 -0
  47. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-lists.js +89 -0
  48. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-select-wrap.d.ts +9 -0
  49. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-select-wrap.d.ts.map +1 -0
  50. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-select-wrap.js +49 -0
  51. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-url-pasting.d.ts +9 -0
  52. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-url-pasting.d.ts.map +1 -0
  53. package/dist/extensions/plain-text/smart-markdown-typing/plugins/smart-url-pasting.js +43 -0
  54. package/dist/extensions/plain-text/smart-markdown-typing/smart-markdown-typing.d.ts +8 -0
  55. package/dist/extensions/plain-text/smart-markdown-typing/smart-markdown-typing.d.ts.map +1 -0
  56. package/dist/extensions/plain-text/smart-markdown-typing/smart-markdown-typing.js +17 -0
  57. package/dist/extensions/rich-text/bold-and-italics.d.ts +8 -0
  58. package/dist/extensions/rich-text/bold-and-italics.d.ts.map +1 -0
  59. package/dist/extensions/rich-text/bold-and-italics.js +40 -0
  60. package/dist/extensions/rich-text/curvenote-codemark.d.ts +11 -0
  61. package/dist/extensions/rich-text/curvenote-codemark.d.ts.map +1 -0
  62. package/dist/extensions/rich-text/curvenote-codemark.js +18 -0
  63. package/dist/extensions/rich-text/paste-emojis.d.ts +9 -0
  64. package/dist/extensions/rich-text/paste-emojis.d.ts.map +1 -0
  65. package/dist/extensions/rich-text/paste-emojis.js +28 -0
  66. package/dist/extensions/rich-text/paste-markdown.d.ts +11 -0
  67. package/dist/extensions/rich-text/paste-markdown.d.ts.map +1 -0
  68. package/dist/extensions/rich-text/paste-markdown.js +68 -0
  69. package/dist/extensions/rich-text/rich-text-document.d.ts +17 -0
  70. package/dist/extensions/rich-text/rich-text-document.d.ts.map +1 -0
  71. package/dist/extensions/rich-text/rich-text-document.js +17 -0
  72. package/dist/extensions/rich-text/rich-text-image.d.ts +80 -0
  73. package/dist/extensions/rich-text/rich-text-image.d.ts.map +1 -0
  74. package/dist/extensions/rich-text/rich-text-image.js +109 -0
  75. package/dist/extensions/rich-text/rich-text-kit.d.ts +129 -0
  76. package/dist/extensions/rich-text/rich-text-kit.d.ts.map +1 -0
  77. package/dist/extensions/rich-text/rich-text-kit.js +130 -0
  78. package/dist/extensions/rich-text/rich-text-link.d.ts +10 -0
  79. package/dist/extensions/rich-text/rich-text-link.d.ts.map +1 -0
  80. package/dist/extensions/rich-text/rich-text-link.js +102 -0
  81. package/dist/extensions/shared/copy-markdown-source.d.ts +20 -0
  82. package/dist/extensions/shared/copy-markdown-source.d.ts.map +1 -0
  83. package/dist/extensions/shared/copy-markdown-source.js +35 -0
  84. package/dist/extensions/shared/paste-singleline-text.d.ts +10 -0
  85. package/dist/extensions/shared/paste-singleline-text.d.ts.map +1 -0
  86. package/dist/extensions/shared/paste-singleline-text.js +43 -0
  87. package/dist/factories/create-suggestion-extension.d.ts +121 -0
  88. package/dist/factories/create-suggestion-extension.d.ts.map +1 -0
  89. package/dist/factories/create-suggestion-extension.js +149 -0
  90. package/dist/helpers/dom.d.ts +8 -0
  91. package/dist/helpers/dom.d.ts.map +1 -0
  92. package/dist/helpers/dom.js +9 -0
  93. package/dist/helpers/schema.d.ts +19 -0
  94. package/dist/helpers/schema.d.ts.map +1 -0
  95. package/dist/helpers/schema.js +21 -0
  96. package/dist/helpers/serializer.d.ts +11 -0
  97. package/dist/helpers/serializer.d.ts.map +1 -0
  98. package/dist/helpers/serializer.js +16 -0
  99. package/dist/hooks/use-editor.d.ts +19 -0
  100. package/dist/hooks/use-editor.d.ts.map +1 -0
  101. package/dist/hooks/use-editor.js +46 -0
  102. package/dist/index.d.ts +26 -0
  103. package/dist/index.d.ts.map +1 -0
  104. package/dist/index.js +17 -0
  105. package/dist/serializers/html/extensions/checkbox.d.ts +8 -0
  106. package/dist/serializers/html/extensions/checkbox.d.ts.map +1 -0
  107. package/dist/serializers/html/extensions/checkbox.js +12 -0
  108. package/dist/serializers/html/extensions/code.d.ts +9 -0
  109. package/dist/serializers/html/extensions/code.d.ts.map +1 -0
  110. package/dist/serializers/html/extensions/code.js +20 -0
  111. package/dist/serializers/html/extensions/html.d.ts +10 -0
  112. package/dist/serializers/html/extensions/html.d.ts.map +1 -0
  113. package/dist/serializers/html/extensions/html.js +15 -0
  114. package/dist/serializers/html/extensions/link.d.ts +11 -0
  115. package/dist/serializers/html/extensions/link.d.ts.map +1 -0
  116. package/dist/serializers/html/extensions/link.js +28 -0
  117. package/dist/serializers/html/extensions/paragraph.d.ts +12 -0
  118. package/dist/serializers/html/extensions/paragraph.d.ts.map +1 -0
  119. package/dist/serializers/html/extensions/paragraph.js +51 -0
  120. package/dist/serializers/html/extensions/task-list.d.ts +9 -0
  121. package/dist/serializers/html/extensions/task-list.d.ts.map +1 -0
  122. package/dist/serializers/html/extensions/task-list.js +31 -0
  123. package/dist/serializers/html/html.d.ts +27 -0
  124. package/dist/serializers/html/html.d.ts.map +1 -0
  125. package/dist/serializers/html/html.js +129 -0
  126. package/dist/serializers/markdown/markdown.d.ts +40 -0
  127. package/dist/serializers/markdown/markdown.d.ts.map +1 -0
  128. package/dist/serializers/markdown/markdown.js +126 -0
  129. package/dist/serializers/markdown/plugins/image.d.ts +12 -0
  130. package/dist/serializers/markdown/plugins/image.d.ts.map +1 -0
  131. package/dist/serializers/markdown/plugins/image.js +31 -0
  132. package/dist/serializers/markdown/plugins/list-item.d.ts +14 -0
  133. package/dist/serializers/markdown/plugins/list-item.d.ts.map +1 -0
  134. package/dist/serializers/markdown/plugins/list-item.js +41 -0
  135. package/dist/serializers/markdown/plugins/paragraph.d.ts +12 -0
  136. package/dist/serializers/markdown/plugins/paragraph.d.ts.map +1 -0
  137. package/dist/serializers/markdown/plugins/paragraph.js +18 -0
  138. package/dist/serializers/markdown/plugins/strikethrough.d.ts +13 -0
  139. package/dist/serializers/markdown/plugins/strikethrough.d.ts.map +1 -0
  140. package/dist/serializers/markdown/plugins/strikethrough.js +23 -0
  141. package/dist/serializers/markdown/plugins/suggestion.d.ts +11 -0
  142. package/dist/serializers/markdown/plugins/suggestion.d.ts.map +1 -0
  143. package/dist/serializers/markdown/plugins/suggestion.js +21 -0
  144. package/dist/serializers/markdown/plugins/task-item.d.ts +14 -0
  145. package/dist/serializers/markdown/plugins/task-item.d.ts.map +1 -0
  146. package/dist/serializers/markdown/plugins/task-item.js +39 -0
  147. package/package.json +146 -0
@@ -0,0 +1,18 @@
1
+ /**
2
+ * A Turndown plugin which adds a custom rule for paragraphs. This custom rule is required to avoid
3
+ * adding unnecessary blank lines between paragraphs to plain-text documents.
4
+ *
5
+ * @param nodeType The node object that matches this rule.
6
+ * @param isPlainText Specifies if the schema represents a plain-text document.
7
+ */
8
+ function paragraph(nodeType, isPlainText) {
9
+ return (turndown) => {
10
+ turndown.addRule(nodeType.name, {
11
+ filter: 'p',
12
+ replacement: function (content) {
13
+ return isPlainText ? `\n${content}\n` : `\n\n${content}\n\n`;
14
+ },
15
+ });
16
+ };
17
+ }
18
+ export { paragraph };
@@ -0,0 +1,13 @@
1
+ import type { MarkType } from 'prosemirror-model';
2
+ import type Turndown from 'turndown';
3
+ /**
4
+ * A Turndown plugin which adds a rule for strikethrough text, based on the original plugin. This
5
+ * rules forces two tildes instead of one.
6
+ *
7
+ * @see https://github.com/mixmark-io/turndown-plugin-gfm/blob/v1.0.1/src/strikethrough.js
8
+ *
9
+ * @param markType The mark object that matches this rule.
10
+ */
11
+ declare function strikethrough(markType: MarkType): Turndown.Plugin;
12
+ export { strikethrough };
13
+ //# sourceMappingURL=strikethrough.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strikethrough.d.ts","sourceRoot":"","sources":["../../../../src/serializers/markdown/plugins/strikethrough.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAA;AAEpC;;;;;;;GAOG;AACH,iBAAS,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAa1D;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { extractTagsFromParseRules } from '../../../helpers/serializer';
2
+ /**
3
+ * A Turndown plugin which adds a rule for strikethrough text, based on the original plugin. This
4
+ * rules forces two tildes instead of one.
5
+ *
6
+ * @see https://github.com/mixmark-io/turndown-plugin-gfm/blob/v1.0.1/src/strikethrough.js
7
+ *
8
+ * @param markType The mark object that matches this rule.
9
+ */
10
+ function strikethrough(markType) {
11
+ const tags = extractTagsFromParseRules(markType.spec.parseDOM);
12
+ return (turndown) => {
13
+ turndown.addRule(markType.name, {
14
+ filter: (node) => {
15
+ return tags.some((tag) => tag.toUpperCase() === node.nodeName);
16
+ },
17
+ replacement: (content) => {
18
+ return `~~${content}~~`;
19
+ },
20
+ });
21
+ };
22
+ }
23
+ export { strikethrough };
@@ -0,0 +1,11 @@
1
+ import type { NodeType } from 'prosemirror-model';
2
+ import type Turndown from 'turndown';
3
+ /**
4
+ * A Turndown plugin which adds a custom rule for suggestion nodes created by the suggestion
5
+ * extension factory function.
6
+ *
7
+ * @param nodeType The node object that matches this rule.
8
+ */
9
+ declare function suggestion(nodeType: NodeType): Turndown.Plugin;
10
+ export { suggestion };
11
+ //# sourceMappingURL=suggestion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggestion.d.ts","sourceRoot":"","sources":["../../../../src/serializers/markdown/plugins/suggestion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAA;AAEpC;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAcvD;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { kebabCase } from 'lodash-es';
2
+ /**
3
+ * A Turndown plugin which adds a custom rule for suggestion nodes created by the suggestion
4
+ * extension factory function.
5
+ *
6
+ * @param nodeType The node object that matches this rule.
7
+ */
8
+ function suggestion(nodeType) {
9
+ const attributeType = kebabCase(nodeType.name.replace(/Suggestion$/, ''));
10
+ return (turndown) => {
11
+ turndown.addRule(nodeType.name, {
12
+ filter: (node) => node.hasAttribute(`data-${attributeType}`),
13
+ replacement: (_, node) => {
14
+ const label = String(node.getAttribute('data-label'));
15
+ const id = String(node.getAttribute('data-id'));
16
+ return `[${label}](${attributeType}://${id})`;
17
+ },
18
+ });
19
+ };
20
+ }
21
+ export { suggestion };
@@ -0,0 +1,14 @@
1
+ import type { NodeType } from 'prosemirror-model';
2
+ import type Turndown from 'turndown';
3
+ /**
4
+ * A Turndown plugin which adds a rule for task list items (i.e., `* [ ] Task`), based on the
5
+ * original list item rule. This rule not only avoids conflicts with standard list items, but also
6
+ * normalizes the Markdown output.
7
+ *
8
+ * @see https://github.com/mixmark-io/turndown/blob/v7.1.1/src/commonmark-rules.js#L61
9
+ *
10
+ * @param nodeType The node object that matches this rule.
11
+ */
12
+ declare function taskItem(nodeType: NodeType): Turndown.Plugin;
13
+ export { taskItem };
14
+ //# sourceMappingURL=task-item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-item.d.ts","sourceRoot":"","sources":["../../../../src/serializers/markdown/plugins/task-item.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAA;AAEpC;;;;;;;;GAQG;AACH,iBAAS,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAkCrD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,39 @@
1
+ import { extractTagsFromParseRules } from '../../../helpers/serializer';
2
+ import { BULLET_LIST_MARKER } from '../markdown';
3
+ /**
4
+ * A Turndown plugin which adds a rule for task list items (i.e., `* [ ] Task`), based on the
5
+ * original list item rule. This rule not only avoids conflicts with standard list items, but also
6
+ * normalizes the Markdown output.
7
+ *
8
+ * @see https://github.com/mixmark-io/turndown/blob/v7.1.1/src/commonmark-rules.js#L61
9
+ *
10
+ * @param nodeType The node object that matches this rule.
11
+ */
12
+ function taskItem(nodeType) {
13
+ const tags = extractTagsFromParseRules(nodeType.spec.parseDOM);
14
+ return (turndown) => {
15
+ turndown.addRule(nodeType.name, {
16
+ filter: (node) => {
17
+ return (tags.some((tag) => tag.toUpperCase().startsWith(node.nodeName)) &&
18
+ node.getAttribute('data-type') === 'taskItem');
19
+ },
20
+ replacement: function (content, node) {
21
+ const parentNode = node.parentNode;
22
+ let listItemMarker = `${BULLET_LIST_MARKER} `;
23
+ if (parentNode?.nodeName === 'UL') {
24
+ const checked = node.getAttribute('data-checked');
25
+ listItemMarker = `${listItemMarker}${checked === 'true' ? '[x]' : '[ ]'} `;
26
+ }
27
+ const newContent = content
28
+ // Remove leading newlines
29
+ .replace(/^\n+/, '')
30
+ // Replace trailing newlines with a single one
31
+ .replace(/\n+$/, '\n')
32
+ // Indent list items with 4 spaces
33
+ .replace(/\s*\n/gm, '\n ');
34
+ return `${listItemMarker}${newContent.trim()}${node.nextSibling && !newContent.endsWith('\n') ? '\n' : ''}`;
35
+ },
36
+ });
37
+ };
38
+ }
39
+ export { taskItem };
package/package.json ADDED
@@ -0,0 +1,146 @@
1
+ {
2
+ "name": "@doist/typist",
3
+ "description": "The mighty Tiptap-based rich-text editor that powers Doist products.",
4
+ "version": "1.0.0",
5
+ "license": "MIT",
6
+ "homepage": "https://typist.doist.dev/",
7
+ "repository": "https://github.com/Doist/typist",
8
+ "prettier": "@doist/prettier-config",
9
+ "main": "dist/index.js",
10
+ "types": "dist/index.d.ts",
11
+ "sideEffects": false,
12
+ "engines": {
13
+ "node": "^16.0.0 || ^18.0.0",
14
+ "npm": "^7.0.0 || ^8.0.0 || ^9.0.0"
15
+ },
16
+ "publishConfig": {
17
+ "access": "public",
18
+ "registry": "https://registry.npmjs.org/"
19
+ },
20
+ "files": [
21
+ "CHANGELOG.md",
22
+ "CODE_OF_CONDUCT.md",
23
+ "CONTRIBUTING.md",
24
+ "LICENSE",
25
+ "README.md",
26
+ "dist/**"
27
+ ],
28
+ "scripts": {
29
+ "build": "run-s clean:* typist:build",
30
+ "check": "run-s prettier:check eslint:check typescript:check",
31
+ "clean": "run-s clean:*",
32
+ "clean:cache": "rimraf .cache/",
33
+ "clean:dist": "rimraf dist/",
34
+ "clean:storybook-static": "rimraf storybook-static/",
35
+ "eslint:check": "eslint --format codeframe --cache --cache-location ./.cache/.eslintcache --ext js,jsx,ts,tsx ./",
36
+ "format": "run-s prettier:format",
37
+ "prepare": "is-ci || husky install",
38
+ "prettier:check": "prettier --check \"./**/*.{js,jsx,ts,tsx,json,css,yml,md}\"",
39
+ "prettier:format": "prettier --write \"./**/*.{js,jsx,ts,tsx,json,css,yml,md}\"",
40
+ "storybook:build": "build-storybook",
41
+ "storybook:start": "start-storybook --port 6006 --no-manager-cache --ci",
42
+ "test": "jest",
43
+ "test:watch": "jest --watch",
44
+ "typescript:check": "tsc --project tsconfig.json",
45
+ "typist:build": "tsc --build tsconfig.build.json",
46
+ "validate:pre-commit": "lint-staged",
47
+ "validate:pre-push": "run-s test"
48
+ },
49
+ "dependencies": {
50
+ "@tiptap/core": "2.0.0-beta.200",
51
+ "@tiptap/extension-blockquote": "2.0.0-beta.200",
52
+ "@tiptap/extension-bold": "2.0.0-beta.200",
53
+ "@tiptap/extension-bullet-list": "2.0.0-beta.200",
54
+ "@tiptap/extension-character-count": "2.0.0-beta.200",
55
+ "@tiptap/extension-code": "2.0.0-beta.200",
56
+ "@tiptap/extension-code-block": "2.0.0-beta.200",
57
+ "@tiptap/extension-document": "2.0.0-beta.200",
58
+ "@tiptap/extension-dropcursor": "2.0.0-beta.200",
59
+ "@tiptap/extension-gapcursor": "2.0.0-beta.200",
60
+ "@tiptap/extension-hard-break": "2.0.0-beta.200",
61
+ "@tiptap/extension-heading": "2.0.0-beta.200",
62
+ "@tiptap/extension-history": "2.0.0-beta.200",
63
+ "@tiptap/extension-horizontal-rule": "2.0.0-beta.200",
64
+ "@tiptap/extension-image": "2.0.0-beta.200",
65
+ "@tiptap/extension-italic": "2.0.0-beta.200",
66
+ "@tiptap/extension-link": "2.0.0-beta.200",
67
+ "@tiptap/extension-list-item": "2.0.0-beta.200",
68
+ "@tiptap/extension-ordered-list": "2.0.0-beta.200",
69
+ "@tiptap/extension-paragraph": "2.0.0-beta.200",
70
+ "@tiptap/extension-placeholder": "2.0.0-beta.200",
71
+ "@tiptap/extension-strike": "2.0.0-beta.200",
72
+ "@tiptap/extension-task-item": "2.0.0-beta.200",
73
+ "@tiptap/extension-task-list": "2.0.0-beta.200",
74
+ "@tiptap/extension-text": "2.0.0-beta.200",
75
+ "@tiptap/extension-typography": "2.0.0-beta.200",
76
+ "@tiptap/react": "2.0.0-beta.200",
77
+ "@tiptap/suggestion": "2.0.0-beta.200",
78
+ "prosemirror-codemark": "0.4.1",
79
+ "prosemirror-model": "1.18.1",
80
+ "prosemirror-state": "1.4.2",
81
+ "prosemirror-view": "1.29.0"
82
+ },
83
+ "devDependencies": {
84
+ "@doist/eslint-config": "8.0.1",
85
+ "@doist/prettier-config": "3.0.5",
86
+ "@doist/reactist": "15.3.0",
87
+ "@mdx-js/react": "2.1.5",
88
+ "@semantic-release/changelog": "6.0.1",
89
+ "@semantic-release/exec": "6.0.3",
90
+ "@semantic-release/git": "10.0.1",
91
+ "@storybook/addon-a11y": "6.5.13",
92
+ "@storybook/addon-essentials": "6.5.13",
93
+ "@storybook/addons": "6.5.13",
94
+ "@storybook/builder-vite": "0.2.5",
95
+ "@storybook/mdx2-csf": "0.0.3",
96
+ "@storybook/react": "6.5.13",
97
+ "@testing-library/dom": "8.19.0",
98
+ "@testing-library/jest-dom": "5.16.5",
99
+ "@testing-library/react": "13.4.0",
100
+ "@types/jest": "29.2.1",
101
+ "@types/lodash-es": "4.17.6",
102
+ "@types/marked": "4.0.7",
103
+ "@types/react": "18.0.24",
104
+ "@types/react-dom": "18.0.8",
105
+ "@types/turndown": "5.0.1",
106
+ "boring-avatars": "1.7.0",
107
+ "classnames": "2.3.2",
108
+ "conventional-changelog-conventionalcommits": "5.0.0",
109
+ "emoji-regex": "10.2.1",
110
+ "eslint": "8.26.0",
111
+ "eslint-formatter-codeframe": "7.32.1",
112
+ "eslint-import-resolver-typescript": "3.5.2",
113
+ "eslint-plugin-jest": "27.1.3",
114
+ "eslint-plugin-simple-import-sort": "8.0.0",
115
+ "eslint-plugin-unicorn": "44.0.2",
116
+ "github-markdown-css": "5.1.0",
117
+ "husky": "8.0.1",
118
+ "ignore-sync": "6.0.2",
119
+ "is-ci": "3.0.1",
120
+ "jest": "29.2.2",
121
+ "jest-environment-jsdom": "29.2.2",
122
+ "lint-staged": "13.0.3",
123
+ "npm-run-all": "4.1.5",
124
+ "prettier": "2.7.1",
125
+ "react-icons": "4.6.0",
126
+ "rimraf": "3.0.2",
127
+ "semantic-release": "19.0.5",
128
+ "storybook-css-modules": "1.0.8",
129
+ "ts-jest": "29.0.3",
130
+ "ts-node": "10.9.1",
131
+ "type-fest": "3.1.0",
132
+ "typescript": "4.8.4",
133
+ "typescript-plugin-css-modules": "3.4.0"
134
+ },
135
+ "peerDependencies": {
136
+ "@react-hookz/web": "^14.2.3 || >=15.x",
137
+ "emoji-regex": "^10.2.1",
138
+ "lodash-es": "^4.17.21",
139
+ "marked": "^4.1.1",
140
+ "react": "^17.0.0 || ^18.0.0",
141
+ "react-dom": "^17.0.0 || ^18.0.0",
142
+ "react-use-event-hook": "^0.9.3",
143
+ "tippy.js": "^6.3.7",
144
+ "turndown": "^7.1.1"
145
+ }
146
+ }