@atri-editor/core 0.2.0 → 0.3.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/dist/style.css CHANGED
@@ -280,7 +280,7 @@
280
280
  color: var(--atri-bg-color);
281
281
  }
282
282
 
283
- .atri-table-panel {
283
+ .atri-table-panel, .atri-table-menu {
284
284
  position: fixed;
285
285
  z-index: 1000;
286
286
  padding: 12px;
@@ -293,12 +293,14 @@
293
293
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
294
294
  box-sizing: border-box;
295
295
  }
296
- .atri-table-panel *,
296
+ .atri-table-panel *, .atri-table-menu *,
297
297
  .atri-table-panel *::before,
298
- .atri-table-panel *::after {
298
+ .atri-table-menu *::before,
299
+ .atri-table-panel *::after,
300
+ .atri-table-menu *::after {
299
301
  box-sizing: border-box;
300
302
  }
301
- .atri-table-panel:focus {
303
+ .atri-table-panel:focus, .atri-table-menu:focus {
302
304
  outline: none;
303
305
  }
304
306
 
@@ -328,6 +330,102 @@
328
330
  text-align: center;
329
331
  }
330
332
 
333
+ .atri-table-menu {
334
+ display: flex;
335
+ align-items: center;
336
+ gap: 2px;
337
+ padding: 4px;
338
+ }
339
+
340
+ .atri-table-menu-separator {
341
+ width: 1px;
342
+ height: 20px;
343
+ margin: 0 2px;
344
+ background-color: var(--atri-border-color);
345
+ }
346
+
347
+ .atri-link-panel {
348
+ position: fixed;
349
+ z-index: 1000;
350
+ display: flex;
351
+ flex-direction: column;
352
+ gap: 8px;
353
+ min-width: 280px;
354
+ padding: 12px;
355
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
356
+ font-size: 14px;
357
+ color: var(--atri-text-color);
358
+ background-color: var(--atri-bg-color);
359
+ border: 1px solid var(--atri-border-color);
360
+ border-radius: 8px;
361
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
362
+ box-sizing: border-box;
363
+ }
364
+ .atri-link-panel *,
365
+ .atri-link-panel *::before,
366
+ .atri-link-panel *::after {
367
+ box-sizing: border-box;
368
+ }
369
+ .atri-link-panel input[type=url] {
370
+ width: 100%;
371
+ padding: 4px 8px;
372
+ font-family: inherit;
373
+ font-size: inherit;
374
+ color: var(--atri-text-color);
375
+ background-color: var(--atri-bg-color);
376
+ border: 1px solid var(--atri-border-color);
377
+ border-radius: 4px;
378
+ transition: all 0.2s ease;
379
+ }
380
+ .atri-link-panel input[type=url]::placeholder {
381
+ color: var(--atri-text-color-disabled);
382
+ }
383
+ .atri-link-panel input[type=url]:focus {
384
+ outline: none;
385
+ border-color: var(--atri-border-color-hover);
386
+ }
387
+
388
+ .atri-link-panel-target {
389
+ display: flex;
390
+ align-items: center;
391
+ gap: 4px;
392
+ color: var(--atri-text-color-secondary);
393
+ cursor: pointer;
394
+ }
395
+
396
+ .atri-link-panel-actions {
397
+ display: flex;
398
+ justify-content: flex-end;
399
+ gap: 8px;
400
+ }
401
+
402
+ .atri-link-panel-apply,
403
+ .atri-link-panel-remove {
404
+ padding: 4px 12px;
405
+ font-family: inherit;
406
+ font-size: 12px;
407
+ border: 1px solid var(--atri-border-color);
408
+ border-radius: 4px;
409
+ background-color: var(--atri-bg-color-secondary);
410
+ color: var(--atri-text-color);
411
+ cursor: pointer;
412
+ transition: all 0.2s ease;
413
+ }
414
+ .atri-link-panel-apply:hover,
415
+ .atri-link-panel-remove:hover {
416
+ background-color: var(--atri-bg-color-hover);
417
+ }
418
+
419
+ .atri-link-panel-apply {
420
+ border-color: var(--atri-color-primary);
421
+ background-color: var(--atri-color-primary);
422
+ color: var(--atri-bg-color);
423
+ }
424
+ .atri-link-panel-apply:hover {
425
+ background-color: var(--atri-color-primary-hover);
426
+ border-color: var(--atri-color-primary-hover);
427
+ }
428
+
331
429
  :root {
332
430
  --atri-color-primary: #1890ff;
333
431
  --atri-color-primary-hover: #40a9ff;
@@ -526,6 +624,11 @@
526
624
  background: none;
527
625
  padding: 0;
528
626
  }
627
+ .atri-editor-content hr {
628
+ border: none;
629
+ border-top: 1px solid var(--atri-border-color);
630
+ margin: 1em 0;
631
+ }
529
632
  .atri-editor-content a {
530
633
  color: var(--atri-color-primary);
531
634
  text-decoration: none;
@@ -567,6 +670,24 @@
567
670
  pointer-events: none;
568
671
  }
569
672
 
673
+ .atri-editor-content .tableWrapper {
674
+ overflow-x: auto;
675
+ }
676
+
677
+ .atri-editor-content .column-resize-handle {
678
+ position: absolute;
679
+ top: 0;
680
+ bottom: 0;
681
+ right: -2px;
682
+ width: 4px;
683
+ background-color: var(--atri-color-primary);
684
+ pointer-events: none;
685
+ }
686
+
687
+ .atri-editor-content.resize-cursor {
688
+ cursor: col-resize;
689
+ }
690
+
570
691
  .atri-editor-content ul[data-type=taskList] {
571
692
  list-style: none;
572
693
  padding-left: 0;
@@ -55,6 +55,33 @@ export interface InsertTableOptions {
55
55
  /** 首行是否为表头,默认 true */
56
56
  withHeaderRow?: boolean;
57
57
  }
58
+ /**
59
+ * 表格配置
60
+ */
61
+ export interface AtriTableConfig {
62
+ /** 列宽拖拽,默认开 */
63
+ resizable?: boolean;
64
+ /** 光标进入表格时浮出的操作菜单,默认开 */
65
+ menu?: boolean;
66
+ }
67
+ /** 链接打开方式 */
68
+ export type AtriLinkTarget = '_blank' | '_self';
69
+ /**
70
+ * 链接配置
71
+ */
72
+ export interface AtriLinkConfig {
73
+ /**
74
+ * 编辑态点击链接是否直接导航,默认 false
75
+ *
76
+ * 默认关:编辑时点链接多半是想改它,跳走会把当前页面连同未保存的内容一起丢下。
77
+ * 关闭时点击落在链接上,浮层就地打开编辑;置 true 交回链接扩展去 window.open
78
+ */
79
+ openOnClick?: boolean;
80
+ /** 新链接的打开方式,默认 '_blank',也是浮层里「在新窗口打开」的初始状态 */
81
+ target?: AtriLinkTarget;
82
+ /** 输入 [文字](url) 时实时转成链接,默认 false */
83
+ markdownLinks?: boolean;
84
+ }
58
85
  /**
59
86
  * 编辑器配置
60
87
  */
@@ -85,8 +112,10 @@ export interface AtriEditorOptions {
85
112
  markdown?: AtriMarkdownConfig;
86
113
  /** 媒体(图片 / 附件)配置,false 时不注册图片与附件节点 */
87
114
  media?: AtriMediaConfig | false;
88
- /** 表格开关,false 时不注册表格节点、工具栏也不出插入表格按钮;默认开 */
89
- table?: boolean;
115
+ /** 表格开关,false 时不注册表格节点、工具栏也不出插入表格按钮、光标进入表格不再浮出操作菜单;默认开 */
116
+ table?: boolean | AtriTableConfig;
117
+ /** 链接配置;不设置时编辑态点击不导航,改为就地编辑 */
118
+ link?: AtriLinkConfig;
90
119
  /** 创建完成回调 */
91
120
  onCreate?: (editor: IAtriEditor) => void;
92
121
  /** 内容变更回调 */
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/types/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/types/editor.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,19 @@
6
6
  */
7
7
  import type { Editor } from '@tiptap/core';
8
8
  /**
9
- * 内置表格是否真的可用:table:false 不注册、用户用同名扩展顶掉,两种情况都该判 false
9
+ * 内置表格是否真的赢下了 schema
10
10
  *
11
11
  * 不能扫 extensionManager 里的名字:tiptap 对重名扩展只告警不去重,顶掉场景下
12
- * 内置 Table 仍在列表里、赢的却是用户的 schema 节点,而内置 insertTable 命令
13
- * 按 spec.tableRole 找型,找不到就在点击当场抛错。命令存在性 + schema 角色
14
- * 两条一起看,判定的才是"这一下真能插出来"
12
+ * 内置 Table 仍在列表里、赢的却是用户的 schema 节点,而它没有 tableRole。
13
+ * prosemirror-tables 的列宽插件启动时就按 tableRole 找 table 节点,找不到直接抛错,
14
+ * 所以这个判据同时决定"按钮摆不摆"和"这套插件注不注册"
15
+ */
16
+ export declare function isBuiltinTableActive(editor: Editor): boolean;
17
+ /**
18
+ * 内置表格是否真的可用:table:false 不注册、用户用同名扩展顶掉,两种情况都该判 false
19
+ *
20
+ * 命令存在性 + schema 角色两条一起看,判定的才是"这一下真能插出来"——
21
+ * 内置 insertTable 命令按 spec.tableRole 找型,找不到就在点击当场抛错
15
22
  */
16
23
  export declare function canInsertTable(editor: Editor): boolean;
17
24
  //# sourceMappingURL=table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/utils/table.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAKtD"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/utils/table.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI5D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGtD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atri-editor/core",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Core package for Atri Editor",
5
5
  "keywords": [
6
6
  "editor",
@@ -57,6 +57,7 @@
57
57
  "@floating-ui/dom": "^1.6.0",
58
58
  "@tiptap/extension-bubble-menu": "^3.30.4",
59
59
  "@tiptap/extension-image": "^3.30.4",
60
+ "@tiptap/extension-list": "^3.30.4",
60
61
  "@tiptap/extension-table": "^3.30.4",
61
62
  "@tiptap/extension-text-align": "^3.30.4",
62
63
  "@tiptap/extensions": "^3.30.4",