@doist/typist 1.2.6 → 1.2.8

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/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [1.2.8](https://github.com/Doist/typist/compare/v1.2.7...v1.2.8) (2023-05-30)
2
+
3
+ ### Reverts
4
+
5
+ - Revert "ci: Add support to publish experimental releases" (#279) ([dc57964](https://github.com/Doist/typist/commit/dc57964c08f34606fa5070898f0415b4b8340190)), closes [#279](https://github.com/Doist/typist/issues/279) [#278](https://github.com/Doist/typist/issues/278)
6
+
7
+ ## [1.2.7](https://github.com/Doist/typist/compare/v1.2.6...v1.2.7) (2023-05-22)
8
+
9
+ ### Bug Fixes
10
+
11
+ - **paste-markdown:** Incorrect paste behaviour when HTML source is VSCode ([#260](https://github.com/Doist/typist/issues/260)) ([3326796](https://github.com/Doist/typist/commit/3326796a9093a984113ac76f69bc3ec109004288))
12
+
1
13
  ## [1.2.6](https://github.com/Doist/typist/compare/v1.2.5...v1.2.6) (2023-04-18)
2
14
 
3
15
  ### Bug Fixes
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { ViewEventHandlersOptions } from '../extensions/core/view-event-handlers';
3
2
  import { getAllNodesAttributesByType } from './typist-editor.helper';
4
3
  import type { Editor as CoreEditor, EditorEvents, Extensions } from '@tiptap/core';
@@ -1 +1 @@
1
- {"version":3,"file":"typist-editor.d.ts","sourceRoot":"","sources":["../../src/components/typist-editor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typist-editor.d.ts","sourceRoot":"","sources":["../../src/components/typist-editor.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"paste-markdown.d.ts","sourceRoot":"","sources":["../../../src/extensions/rich-text/paste-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAexC;;;;;;GAMG;AACH,QAAA,MAAM,aAAa,qBA4EjB,CAAA;AAEF,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"paste-markdown.d.ts","sourceRoot":"","sources":["../../../src/extensions/rich-text/paste-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAexC;;;;;;GAMG;AACH,QAAA,MAAM,aAAa,qBA8FjB,CAAA;AAEF,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -25,38 +25,50 @@ const PasteMarkdown = Extension.create({
25
25
  return Slice.maxOpen(Fragment.from(editor.schema.text(text)));
26
26
  },
27
27
  handlePaste(_, event, slice) {
28
- const clipboardText = event.clipboardData
29
- ?.getData(ClipboardDataType.Text)
30
- .trim();
28
+ // The clipboard contains text if the slice content size is greater than
29
+ // zero, otherwise it contains other data types (like files or images)
30
+ const clipboardContainsText = Boolean(slice.content.size);
31
31
  const clipboardContainsHTML = Boolean(event.clipboardData?.types.some((type) => type === ClipboardDataType.HTML));
32
32
  // Unfortunately, the VS Code clipboard data type is not supported by
33
33
  // Firefox or Safari, which means that copy/paste experience from VS Code
34
- // into the editor with any of those browsers is supbar:
34
+ // into the editor with either of those browsers is subpar:
35
35
  // * The Markdown syntax is not fully converted to rich-text
36
36
  // * Code is not detected nor converted to a code-block
37
37
  const clipboardContainsVSCodeMetadata = Boolean(event.clipboardData?.types.some((type) => type === ClipboardDataType.VSCode));
38
+ const clipboardContainsHTMLFromUnknownSource = clipboardContainsHTML && !clipboardContainsVSCodeMetadata;
38
39
  const vsCodeClipboardMetadata = clipboardContainsVSCodeMetadata
39
40
  ? JSON.parse(event.clipboardData?.getData(ClipboardDataType.VSCode) ||
40
41
  '{}')
41
42
  : {};
43
+ const clipboardContainsHTMLFromVSCodeOtherThanTextOrMarkdown = clipboardContainsVSCodeMetadata &&
44
+ // If `mode` from the VS Code metadata is `null` it probably means that
45
+ // the user has the VS Code `editor.copyWithSyntaxHighlighting` setting
46
+ // set to `false`, thus returning plain-text
47
+ vsCodeClipboardMetadata.mode !== null &&
48
+ vsCodeClipboardMetadata.mode !== 'markdown';
49
+ const isInsideCodeBlockNode = editor.state.selection.$from.parent.type.name === 'codeBlock';
42
50
  // Do not handle the paste event if:
43
- // * The clipboard doesn't contain plain-text
44
- // * The clipboard HTML content doesn't come with VS Code metadata
45
- // * The clipboard VS Code metadata does not represent plain-Markdown
46
- // * The user is pasting inside a code block element
47
- if (!clipboardText ||
48
- (clipboardContainsHTML && !clipboardContainsVSCodeMetadata) ||
49
- (clipboardContainsVSCodeMetadata &&
50
- vsCodeClipboardMetadata.mode !== 'markdown') ||
51
- editor.state.selection.$from.parent.type.name === 'codeBlock') {
51
+ // * The clipboard does NOT contain plain-text
52
+ // * The clipboard contains HTML but from an unknown source (like Google
53
+ // Drive, Dropbox Paper, etc.)
54
+ // * The clipboard contains HTML from VS Code that it's NOT plain-text or
55
+ // Markdown (like Python, TypeScript, JSON, etc.)
56
+ // * The user is pasting content inside a code block node
57
+ // For all the above conditions we want the default handling behaviour from
58
+ // ProseMirror to kick-in, otherwise we'll handle it ourselves below
59
+ if (!clipboardContainsText ||
60
+ clipboardContainsHTMLFromUnknownSource ||
61
+ clipboardContainsHTMLFromVSCodeOtherThanTextOrMarkdown ||
62
+ isInsideCodeBlockNode) {
52
63
  return false;
53
64
  }
54
65
  // Send the clipboard text through the HTML serializer to convert potential
55
66
  // Markdown into HTML, and then insert it into the editor
56
67
  editor.commands.insertMarkdownContent(
57
- // The slice content is used instead of `clipboardText` as the pasted
58
- // content could have already been transformed by other plugins
59
- slice.content.textBetween(0, slice.content.size));
68
+ // The slice content is used instead of getting the text directly from
69
+ // the clipboard data because the pasted content could have already
70
+ // been transformed by other ProseMirror plugins
71
+ slice.content.textBetween(0, slice.content.size, '\n'));
60
72
  // Suppress the default handling behaviour
61
73
  return true;
62
74
  },
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { NodeViewProps } from '@tiptap/react';
3
2
  /**
4
3
  * The properties that describe `RichTextImage` node attributes.
@@ -1 +1 @@
1
- {"version":3,"file":"rich-text-image.d.ts","sourceRoot":"","sources":["../../../src/extensions/rich-text/rich-text-image.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD;;GAEG;AACH,KAAK,uBAAuB,GAAG;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE;QACP;;WAEG;QACH,YAAY,EAAE,MAAM,CAAA;QAEpB;;WAEG;QACH,cAAc,EAAE,OAAO,CAAA;QAEvB;;WAEG;QACH,cAAc,EAAE,MAAM,CAAA;KACzB,CAAA;CACJ,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAC7B,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,CAAA;AAEpD;;;GAGG;AACH,OAAO,QAAQ,cAAc,CAAC;IAC1B,UAAU,QAAQ,CAAC,UAAU;QACzB,aAAa,EAAE;YACX;;eAEG;YACH,WAAW,EAAE,CAAC,UAAU,EAAE,uBAAuB,KAAK,UAAU,CAAA;YAEhE;;eAEG;YACH,WAAW,EAAE,CACT,UAAU,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACxC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC,KACtD,UAAU,CAAA;SAClB,CAAA;KACJ;CACJ;AAED;;GAEG;AACH,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,sBAAsB,EAAE,MAAM,EAAE,CAAA;IAEhC;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAA;IAEf;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEtC;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;IAEtD;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;IAEvC;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD,CAAA;AAED;;;GAGG;AACH,QAAA,MAAM,aAAa,yDAoHjB,CAAA;AAEF,OAAO,EAAE,aAAa,EAAE,CAAA;AAExB,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAA"}
1
+ {"version":3,"file":"rich-text-image.d.ts","sourceRoot":"","sources":["../../../src/extensions/rich-text/rich-text-image.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD;;GAEG;AACH,KAAK,uBAAuB,GAAG;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE;QACP;;WAEG;QACH,YAAY,EAAE,MAAM,CAAA;QAEpB;;WAEG;QACH,cAAc,EAAE,OAAO,CAAA;QAEvB;;WAEG;QACH,cAAc,EAAE,MAAM,CAAA;KACzB,CAAA;CACJ,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAC7B,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,CAAA;AAEpD;;;GAGG;AACH,OAAO,QAAQ,cAAc,CAAC;IAC1B,UAAU,QAAQ,CAAC,UAAU;QACzB,aAAa,EAAE;YACX;;eAEG;YACH,WAAW,EAAE,CAAC,UAAU,EAAE,uBAAuB,KAAK,UAAU,CAAA;YAEhE;;eAEG;YACH,WAAW,EAAE,CACT,UAAU,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACxC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC,KACtD,UAAU,CAAA;SAClB,CAAA;KACJ;CACJ;AAED;;GAEG;AACH,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,sBAAsB,EAAE,MAAM,EAAE,CAAA;IAEhC;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAA;IAEf;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEtC;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;IAEtD;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;IAEvC;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD,CAAA;AAED;;;GAGG;AACH,QAAA,MAAM,aAAa,yDAoHjB,CAAA;AAEF,OAAO,EAAE,aAAa,EAAE,CAAA;AAExB,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@doist/typist",
3
3
  "description": "The mighty Tiptap-based rich-text editor React component that powers Doist products.",
4
- "version": "1.2.6",
4
+ "version": "1.2.8",
5
5
  "license": "MIT",
6
6
  "homepage": "https://typist.doist.dev/",
7
7
  "repository": "https://github.com/Doist/typist",
@@ -14,7 +14,8 @@
14
14
  "npm": "^7.0.0 || ^8.0.0 || ^9.0.0"
15
15
  },
16
16
  "publishConfig": {
17
- "access": "public"
17
+ "access": "public",
18
+ "provenance": true
18
19
  },
19
20
  "files": [
20
21
  "CHANGELOG.md",
@@ -38,8 +39,8 @@
38
39
  "prettier:format": "prettier --write \"./**/*.{js,jsx,ts,tsx,json,css,yml,md}\"",
39
40
  "storybook:build": "storybook build",
40
41
  "storybook:start": "storybook dev --port 6006 --ci",
41
- "test": "jest",
42
- "test:watch": "jest --watch",
42
+ "test": "vitest run",
43
+ "test:watch": "vitest watch",
43
44
  "typescript:check": "tsc --project tsconfig.json",
44
45
  "typist:build": "tsc --build tsconfig.build.json",
45
46
  "validate:pre-commit": "lint-staged",
@@ -78,50 +79,49 @@
78
79
  "prosemirror-codemark": "0.4.2"
79
80
  },
80
81
  "devDependencies": {
81
- "@doist/eslint-config": "8.1.4",
82
+ "@doist/eslint-config": "9.0.0",
82
83
  "@doist/prettier-config": "3.0.5",
83
- "@doist/reactist": "20.1.0",
84
+ "@doist/reactist": "21.0.0",
84
85
  "@mdx-js/react": "2.3.0",
85
86
  "@semantic-release/changelog": "6.0.3",
86
87
  "@semantic-release/exec": "6.0.3",
87
88
  "@semantic-release/git": "10.0.1",
88
- "@storybook/addon-a11y": "7.0.4",
89
- "@storybook/addon-essentials": "7.0.4",
90
- "@storybook/addons": "7.0.4",
89
+ "@storybook/addon-a11y": "7.0.17",
90
+ "@storybook/addon-essentials": "7.0.17",
91
+ "@storybook/addons": "7.0.17",
91
92
  "@storybook/csf": "0.1.0",
92
- "@storybook/mdx2-csf": "1.0.0",
93
- "@storybook/react": "7.0.4",
94
- "@storybook/react-vite": "7.0.4",
95
- "@testing-library/dom": "9.2.0",
93
+ "@storybook/mdx2-csf": "1.1.0",
94
+ "@storybook/react": "7.0.17",
95
+ "@storybook/react-vite": "7.0.17",
96
+ "@testing-library/dom": "9.3.0",
96
97
  "@testing-library/jest-dom": "5.16.5",
97
98
  "@testing-library/react": "14.0.0",
98
- "@types/jest": "29.5.0",
99
99
  "@types/lodash-es": "4.17.7",
100
- "@types/marked": "4.0.8",
101
- "@types/react": "18.0.35",
102
- "@types/react-dom": "18.0.11",
100
+ "@types/marked": "4.3.1",
101
+ "@types/react": "18.2.7",
102
+ "@types/react-dom": "18.2.4",
103
103
  "@types/react-syntax-highlighter": "15.5.6",
104
104
  "@types/turndown": "5.0.1",
105
105
  "boring-avatars": "1.7.0",
106
106
  "classnames": "2.3.2",
107
107
  "conventional-changelog-conventionalcommits": "5.0.0",
108
108
  "emoji-regex": "10.2.1",
109
- "eslint": "8.38.0",
109
+ "eslint": "8.41.0",
110
110
  "eslint-formatter-codeframe": "7.32.1",
111
111
  "eslint-import-resolver-typescript": "3.5.5",
112
- "eslint-plugin-jest": "27.2.1",
113
112
  "eslint-plugin-simple-import-sort": "10.0.0",
114
- "eslint-plugin-storybook": "0.6.11",
115
- "eslint-plugin-unicorn": "46.0.0",
113
+ "eslint-plugin-storybook": "0.6.12",
114
+ "eslint-plugin-unicorn": "47.0.0",
115
+ "eslint-plugin-vitest": "0.2.3",
116
+ "eslint-plugin-vitest-globals": "1.3.1",
116
117
  "github-markdown-css": "5.2.0",
117
118
  "husky": "8.0.3",
118
- "ignore-sync": "6.0.2",
119
+ "ignore-sync": "7.0.1",
119
120
  "is-ci": "3.0.1",
120
- "jest": "29.5.0",
121
- "jest-environment-jsdom": "29.5.0",
122
- "lint-staged": "13.2.1",
121
+ "jsdom": "22.0.0",
122
+ "lint-staged": "13.2.2",
123
123
  "npm-run-all": "4.1.5",
124
- "prettier": "2.8.7",
124
+ "prettier": "2.8.8",
125
125
  "react": "18.2.0",
126
126
  "react-dom": "18.2.0",
127
127
  "react-icons": "4.8.0",
@@ -129,15 +129,14 @@
129
129
  "react-syntax-highlighter": "15.5.0",
130
130
  "rehype-raw": "6.1.1",
131
131
  "remark-gfm": "3.0.1",
132
- "rimraf": "4.4.1",
133
- "semantic-release": "21.0.1",
134
- "storybook": "7.0.4",
132
+ "rimraf": "5.0.1",
133
+ "semantic-release": "21.0.2",
134
+ "storybook": "7.0.17",
135
135
  "storybook-css-modules": "1.0.8",
136
- "ts-jest": "29.1.0",
137
- "ts-node": "10.9.1",
138
- "type-fest": "3.8.0",
136
+ "type-fest": "3.11.0",
139
137
  "typescript": "5.0.4",
140
- "typescript-plugin-css-modules": "5.0.1"
138
+ "typescript-plugin-css-modules": "5.0.1",
139
+ "vitest": "0.31.1"
141
140
  },
142
141
  "peerDependencies": {
143
142
  "@react-hookz/web": "^14.2.3 || >=15.x",