@atri-editor/core 0.4.0 → 0.5.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.
- package/CHANGELOG.md +8 -0
- package/dist/AtriEditor.d.ts +13 -1
- package/dist/AtriEditor.d.ts.map +1 -1
- package/dist/AtriEditorElement.d.ts +12 -1
- package/dist/AtriEditorElement.d.ts.map +1 -1
- package/dist/core/MarkdownService.d.ts +12 -1
- package/dist/core/MarkdownService.d.ts.map +1 -1
- package/dist/core/markdown-losses.d.ts +26 -0
- package/dist/core/markdown-losses.d.ts.map +1 -0
- package/dist/index.js +148 -1
- package/dist/index.js.map +1 -1
- package/dist/types/editor.d.ts +5 -1
- package/dist/types/editor.d.ts.map +1 -1
- package/dist/types/markdown.d.ts +18 -0
- package/dist/types/markdown.d.ts.map +1 -1
- package/package.json +11 -12
package/dist/types/editor.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Editor, Extensions, JSONContent } from '@tiptap/core';
|
|
2
2
|
import type { AtriAIConfig } from './ai';
|
|
3
|
-
import type { AtriMarkdownConfig } from './markdown';
|
|
3
|
+
import type { AtriMarkdownConfig, MarkdownLoss } from './markdown';
|
|
4
4
|
import type { AtriMediaConfig, InsertAttachmentOptions, InsertImageOptions, MediaKind } from './media';
|
|
5
5
|
import type { AtriNodeViewConfig } from './extension';
|
|
6
6
|
import type { ThemeType } from '../core/ThemeManager';
|
|
@@ -156,6 +156,10 @@ export interface IAtriEditor {
|
|
|
156
156
|
getJSON(): object;
|
|
157
157
|
/** 获取 Markdown 内容 */
|
|
158
158
|
getMarkdown(): string;
|
|
159
|
+
/** 这一次 getMarkdown() 会丢掉哪些内容 */
|
|
160
|
+
getMarkdownLosses(): MarkdownLoss[];
|
|
161
|
+
/** 当前内容里有没有导出 Markdown 时会丢的东西 */
|
|
162
|
+
hasLossyContent(): boolean;
|
|
159
163
|
/** 设置内容 */
|
|
160
164
|
setContent(content: string | object, options?: SetContentOptions): void;
|
|
161
165
|
/** 设置 Markdown 内容 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/types/editor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/types/editor.ts"],"names":[],"mappings":"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"}
|
package/dist/types/markdown.d.ts
CHANGED
|
@@ -40,4 +40,22 @@ export interface AtriMarkdownConfig {
|
|
|
40
40
|
*/
|
|
41
41
|
inlineStyles?: 'html' | 'drop';
|
|
42
42
|
}
|
|
43
|
+
/** 导出 Markdown 时丢失的类别:整个节点、整个标记,还是类型上一个没被 renderer 读到的属性 */
|
|
44
|
+
export type MarkdownLossKind = 'node' | 'mark' | 'attribute';
|
|
45
|
+
/**
|
|
46
|
+
* 一处会在 `getMarkdown()` 中丢失的内容,由 `AtriEditor.getMarkdownLosses()` 产出
|
|
47
|
+
*
|
|
48
|
+
* Tiptap 的序列化器对没有 `renderMarkdown` 钩子的类型是静默丢弃——不抛错、不降级成 HTML、
|
|
49
|
+
* 不留痕迹,所以光看返回值看不出这一趟少了什么。
|
|
50
|
+
*/
|
|
51
|
+
export interface MarkdownLoss {
|
|
52
|
+
/** 丢的是节点、标记,还是一个属性 */
|
|
53
|
+
kind: MarkdownLossKind;
|
|
54
|
+
/** schema 里的类型名,如 `'paragraph'` */
|
|
55
|
+
type: string;
|
|
56
|
+
/** `kind === 'attribute'` 时给出属性名,其余情况省略 */
|
|
57
|
+
attribute?: string;
|
|
58
|
+
/** 这一趟导出里会丢几处。标记按连续区间计,一个红色短语不会数出三处 */
|
|
59
|
+
count: number;
|
|
60
|
+
}
|
|
43
61
|
//# sourceMappingURL=markdown.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/types/markdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,WAAW,CAAC,EAAE;QACZ,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,kBAAkB;IAClB,aAAa,CAAC,EAAE;QACd,+BAA+B;QAC/B,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,gBAAgB;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,WAAW;QACX,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC"}
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/types/markdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,WAAW,CAAC,EAAE;QACZ,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,kBAAkB;IAClB,aAAa,CAAC,EAAE;QACd,+BAA+B;QAC/B,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,gBAAgB;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,WAAW;QACX,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAED,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,sBAAsB;IACtB,IAAI,EAAE,gBAAgB,CAAC;IACvB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;CACf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atri-editor/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Core package for Atri Editor",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"editor",
|
|
@@ -44,16 +44,6 @@
|
|
|
44
44
|
"publishConfig": {
|
|
45
45
|
"access": "public"
|
|
46
46
|
},
|
|
47
|
-
"scripts": {
|
|
48
|
-
"dev": "vite build --watch",
|
|
49
|
-
"build": "vite build && pnpm run build:types && pnpm run build:styles",
|
|
50
|
-
"build:types": "tsc -p tsconfig.build.json",
|
|
51
|
-
"build:styles": "sass src/styles/index.scss dist/style.css --style=expanded --no-source-map",
|
|
52
|
-
"typecheck": "tsc -p tsconfig.json && tsc -p tsconfig.test.json",
|
|
53
|
-
"test": "vitest run",
|
|
54
|
-
"test:watch": "vitest",
|
|
55
|
-
"prepublishOnly": "pnpm build"
|
|
56
|
-
},
|
|
57
47
|
"dependencies": {
|
|
58
48
|
"@floating-ui/dom": "^1.6.0",
|
|
59
49
|
"@tiptap/extension-bubble-menu": "^3.30.4",
|
|
@@ -83,5 +73,14 @@
|
|
|
83
73
|
"peerDependencies": {
|
|
84
74
|
"@tiptap/core": "^3.30.4",
|
|
85
75
|
"@tiptap/pm": "^3.30.4"
|
|
76
|
+
},
|
|
77
|
+
"scripts": {
|
|
78
|
+
"dev": "vite build --watch",
|
|
79
|
+
"build": "vite build && pnpm run build:types && pnpm run build:styles",
|
|
80
|
+
"build:types": "tsc -p tsconfig.build.json",
|
|
81
|
+
"build:styles": "sass src/styles/index.scss dist/style.css --style=expanded --no-source-map",
|
|
82
|
+
"typecheck": "tsc -p tsconfig.json && tsc -p tsconfig.test.json",
|
|
83
|
+
"test": "vitest run",
|
|
84
|
+
"test:watch": "vitest"
|
|
86
85
|
}
|
|
87
|
-
}
|
|
86
|
+
}
|