editor.md-next 0.0.0-stage → 0.1.1
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/LICENSE +32 -0
- package/dist/cdn/editormd-next.min.js +96 -0
- package/dist/cdn/index.css +2 -0
- package/dist/es/chunks/apl-BsW9fB9B.js +74 -0
- package/dist/es/chunks/asciiarmor-CZm6RLC5.js +30 -0
- package/dist/es/chunks/asn1-DBNYSAs9.js +86 -0
- package/dist/es/chunks/asterisk-XIYTp-BQ.js +63 -0
- package/dist/es/chunks/brainfuck-C03PadMX.js +26 -0
- package/dist/es/chunks/clike-QWVxZJBi.js +583 -0
- package/dist/es/chunks/clojure-DT_PY7rc.js +98 -0
- package/dist/es/chunks/cmake-DsoLxE-D.js +27 -0
- package/dist/es/chunks/cobol-CZjCUlI-.js +59 -0
- package/dist/es/chunks/coffeescript-CuHwxkgS.js +174 -0
- package/dist/es/chunks/commonlisp-CGpKWWCQ.js +90 -0
- package/dist/es/chunks/crystal-BH2tBqmL.js +159 -0
- package/dist/es/chunks/css-C6pN9rmb.js +314 -0
- package/dist/es/chunks/cypher-DknS4f0k.js +66 -0
- package/dist/es/chunks/d-zXrED2QC.js +121 -0
- package/dist/es/chunks/diff-Ca3g43eR.js +15 -0
- package/dist/es/chunks/dist-9Y-Blrkp.js +118 -0
- package/dist/es/chunks/dist-B0cBTTiS.js +408 -0
- package/dist/es/chunks/dist-BX9Ur1J1.js +74 -0
- package/dist/es/chunks/dist-BmAxhg3z.js +555 -0
- package/dist/es/chunks/dist-C6c_aHTh.js +269 -0
- package/dist/es/chunks/dist-CGdw3vqm.js +429 -0
- package/dist/es/chunks/dist-CNbWaVYs.js +11572 -0
- package/dist/es/chunks/dist-CR-jmTSB.js +1338 -0
- package/dist/es/chunks/dist-CahNaXTc.js +388 -0
- package/dist/es/chunks/dist-CeqtAM8-.js +438 -0
- package/dist/es/chunks/dist-Clo-Jkvm.js +291 -0
- package/dist/es/chunks/dist-Cpw9AD2K.js +372 -0
- package/dist/es/chunks/dist-Ct5FNAAH.js +406 -0
- package/dist/es/chunks/dist-D0OW86fR.js +605 -0
- package/dist/es/chunks/dist-DAlgXLzd.js +110 -0
- package/dist/es/chunks/dist-DL-UifMi.js +744 -0
- package/dist/es/chunks/dist-DQadNG25.js +523 -0
- package/dist/es/chunks/dist-DlAXkWGE.js +67 -0
- package/dist/es/chunks/dist-DoThxrrR.js +371 -0
- package/dist/es/chunks/dist-DrwgGib-.js +377 -0
- package/dist/es/chunks/dist-P5rAF7pi.js +197 -0
- package/dist/es/chunks/dist-fTCYxiV-.js +355 -0
- package/dist/es/chunks/dockerfile-BZSDl6MT.js +196 -0
- package/dist/es/chunks/dtd-DzUNfrcJ.js +77 -0
- package/dist/es/chunks/dylan-CFjlscB1.js +186 -0
- package/dist/es/chunks/ebnf-Vn9hWL1o.js +67 -0
- package/dist/es/chunks/ecl-CbjLeBF5.js +105 -0
- package/dist/es/chunks/eiffel-Dmm3m78y.js +49 -0
- package/dist/es/chunks/elm-CSe2F7PE.js +85 -0
- package/dist/es/chunks/erlang-D6YOoBpM.js +321 -0
- package/dist/es/chunks/factor-DAqyQvq1.js +165 -0
- package/dist/es/chunks/fcl-BZA_wXmw.js +99 -0
- package/dist/es/chunks/forth-MNc4axOK.js +45 -0
- package/dist/es/chunks/fortran-auI4bdzC.js +40 -0
- package/dist/es/chunks/gas-CZDp8wLI.js +167 -0
- package/dist/es/chunks/gherkin-B12NX28O.js +29 -0
- package/dist/es/chunks/groovy-CBShT4in.js +143 -0
- package/dist/es/chunks/haskell-DQf5nq2l.js +85 -0
- package/dist/es/chunks/haxe-CBKywepX.js +351 -0
- package/dist/es/chunks/http-B-vrcJu5.js +43 -0
- package/dist/es/chunks/idl-kztl-rIS.js +41 -0
- package/dist/es/chunks/javascript-COVyUmNV.js +636 -0
- package/dist/es/chunks/julia-C7x1UmUy.js +173 -0
- package/dist/es/chunks/livescript-BcSQznfC.js +250 -0
- package/dist/es/chunks/lua-CuzOmeFy.js +104 -0
- package/dist/es/chunks/mathematica-C_8O0eBN.js +37 -0
- package/dist/es/chunks/mbox-CgRq7o1s.js +65 -0
- package/dist/es/chunks/mirc-46fAnY_I.js +61 -0
- package/dist/es/chunks/mllike-DwngWEOH.js +260 -0
- package/dist/es/chunks/modelica-CLh6SOPZ.js +82 -0
- package/dist/es/chunks/mscgen-CqCKoWqr.js +287 -0
- package/dist/es/chunks/mumps-CTaGGpGh.js +24 -0
- package/dist/es/chunks/nginx-D8_Tx5a5.js +76 -0
- package/dist/es/chunks/nsis-LQ_3myBa.js +143 -0
- package/dist/es/chunks/ntriples-C8_f-qnr.js +76 -0
- package/dist/es/chunks/octave-Bg8pIvq8.js +40 -0
- package/dist/es/chunks/oz-fY6iPhaV.js +151 -0
- package/dist/es/chunks/pascal-yJGuSy92.js +66 -0
- package/dist/es/chunks/perl-Cp3_dIJp.js +626 -0
- package/dist/es/chunks/pig-Dp8CFFHM.js +49 -0
- package/dist/es/chunks/powershell-CFKKqebC.js +233 -0
- package/dist/es/chunks/properties-bVaZpKhj.js +19 -0
- package/dist/es/chunks/protobuf-CJ_NuiRp.js +14 -0
- package/dist/es/chunks/pug-CNVrzrF7.js +202 -0
- package/dist/es/chunks/puppet-DFrFlsRb.js +37 -0
- package/dist/es/chunks/python-DDOdLHWp.js +219 -0
- package/dist/es/chunks/q-CfAEY3XK.js +82 -0
- package/dist/es/chunks/r-D33f5qKA.js +133 -0
- package/dist/es/chunks/rolldown-runtime-QGRDbDUS.js +19 -0
- package/dist/es/chunks/rpm-KA2CbYVz.js +39 -0
- package/dist/es/chunks/ruby-DkaeL5UR.js +165 -0
- package/dist/es/chunks/sas-BMhoxqFi.js +73 -0
- package/dist/es/chunks/scheme-DiiFnhTV.js +116 -0
- package/dist/es/chunks/shell-BkraTAet.js +108 -0
- package/dist/es/chunks/sieve-CO0RsW8J.js +59 -0
- package/dist/es/chunks/simple-mode-DwMrk-pB.js +95 -0
- package/dist/es/chunks/smalltalk-susA3LoJ.js +43 -0
- package/dist/es/chunks/solr-Dyiozr6d.js +36 -0
- package/dist/es/chunks/sparql-svcWfrig.js +78 -0
- package/dist/es/chunks/spreadsheet-D64TPnFY.js +48 -0
- package/dist/es/chunks/sql-iy-in7fW.js +254 -0
- package/dist/es/chunks/stex-CK4iWXBq.js +108 -0
- package/dist/es/chunks/stylus-Bla1TtoF.js +281 -0
- package/dist/es/chunks/swift-BfLWtovc.js +158 -0
- package/dist/es/chunks/tcl-Cqsx32oK.js +71 -0
- package/dist/es/chunks/textile-CP9LptjR.js +215 -0
- package/dist/es/chunks/tiddlywiki-Ta-GM0jK.js +129 -0
- package/dist/es/chunks/tiki-CX4cONcl.js +160 -0
- package/dist/es/chunks/toml-BvD52WqI.js +27 -0
- package/dist/es/chunks/troff-CQ9EHWHs.js +29 -0
- package/dist/es/chunks/ttcn-DvhS_Gkc.js +117 -0
- package/dist/es/chunks/ttcn-cfg-GQi0YvSM.js +80 -0
- package/dist/es/chunks/turtle-VdGQLPpt.js +78 -0
- package/dist/es/chunks/vb-CPJS1Nrj.js +108 -0
- package/dist/es/chunks/vbscript-DEYreBb1.js +208 -0
- package/dist/es/chunks/velocity-BzjrTOAF.js +89 -0
- package/dist/es/chunks/verilog-Bc3Yq1WU.js +218 -0
- package/dist/es/chunks/vhdl-BD6jHQjr.js +102 -0
- package/dist/es/chunks/webidl-C5YO-ffA.js +102 -0
- package/dist/es/chunks/xquery-ugZJVSaq.js +204 -0
- package/dist/es/chunks/yacas-tAOeQ6Ok.js +72 -0
- package/dist/es/chunks/z80-DZa7RpgS.js +43 -0
- package/dist/es/index.js +19829 -0
- package/dist/iife/index.iife.js +96 -0
- package/dist/index.css +2 -0
- package/dist/types/cm/create-view.d.ts +19 -0
- package/dist/types/cm/create-view.d.ts.map +1 -0
- package/dist/types/cm/shortcuts.d.ts +11 -0
- package/dist/types/cm/shortcuts.d.ts.map +1 -0
- package/dist/types/cm/themes.d.ts +24 -0
- package/dist/types/cm/themes.d.ts.map +1 -0
- package/dist/types/cm/themes.test.d.ts +2 -0
- package/dist/types/cm/themes.test.d.ts.map +1 -0
- package/dist/types/defaults.d.ts +5 -0
- package/dist/types/defaults.d.ts.map +1 -0
- package/dist/types/dialogs/code.d.ts +5 -0
- package/dist/types/dialogs/code.d.ts.map +1 -0
- package/dist/types/dialogs/data/html-entities-data.d.ts +9 -0
- package/dist/types/dialogs/data/html-entities-data.d.ts.map +1 -0
- package/dist/types/dialogs/dialog.d.ts +37 -0
- package/dist/types/dialogs/dialog.d.ts.map +1 -0
- package/dist/types/dialogs/emoji.d.ts +4 -0
- package/dist/types/dialogs/emoji.d.ts.map +1 -0
- package/dist/types/dialogs/entities.d.ts +4 -0
- package/dist/types/dialogs/entities.d.ts.map +1 -0
- package/dist/types/dialogs/form.d.ts +12 -0
- package/dist/types/dialogs/form.d.ts.map +1 -0
- package/dist/types/dialogs/image.d.ts +4 -0
- package/dist/types/dialogs/image.d.ts.map +1 -0
- package/dist/types/dialogs/link.d.ts +6 -0
- package/dist/types/dialogs/link.d.ts.map +1 -0
- package/dist/types/dialogs/misc.d.ts +6 -0
- package/dist/types/dialogs/misc.d.ts.map +1 -0
- package/dist/types/dialogs/registry.d.ts +8 -0
- package/dist/types/dialogs/registry.d.ts.map +1 -0
- package/dist/types/dialogs/table.d.ts +4 -0
- package/dist/types/dialogs/table.d.ts.map +1 -0
- package/dist/types/editor.d.ts +105 -0
- package/dist/types/editor.d.ts.map +1 -0
- package/dist/types/features/paste-drop.d.ts +4 -0
- package/dist/types/features/paste-drop.d.ts.map +1 -0
- package/dist/types/features/view-modes.d.ts +8 -0
- package/dist/types/features/view-modes.d.ts.map +1 -0
- package/dist/types/i18n/en.d.ts +3 -0
- package/dist/types/i18n/en.d.ts.map +1 -0
- package/dist/types/i18n/index.d.ts +9 -0
- package/dist/types/i18n/index.d.ts.map +1 -0
- package/dist/types/i18n/zh-cn.d.ts +3 -0
- package/dist/types/i18n/zh-cn.d.ts.map +1 -0
- package/dist/types/i18n/zh-tw.d.ts +3 -0
- package/dist/types/i18n/zh-tw.d.ts.map +1 -0
- package/dist/types/index.d.ts +14 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lifecycle/layout.d.ts +11 -0
- package/dist/types/lifecycle/layout.d.ts.map +1 -0
- package/dist/types/lifecycle/mount.d.ts +12 -0
- package/dist/types/lifecycle/mount.d.ts.map +1 -0
- package/dist/types/markdown/cdn-lazy.d.ts +49 -0
- package/dist/types/markdown/cdn-lazy.d.ts.map +1 -0
- package/dist/types/markdown/data/emoji-data.d.ts +13 -0
- package/dist/types/markdown/data/emoji-data.d.ts.map +1 -0
- package/dist/types/markdown/data/emoji-unicode.d.ts +6 -0
- package/dist/types/markdown/data/emoji-unicode.d.ts.map +1 -0
- package/dist/types/markdown/data-attr.d.ts +10 -0
- package/dist/types/markdown/data-attr.d.ts.map +1 -0
- package/dist/types/markdown/engine.d.ts +18 -0
- package/dist/types/markdown/engine.d.ts.map +1 -0
- package/dist/types/markdown/engine.test.d.ts +2 -0
- package/dist/types/markdown/engine.test.d.ts.map +1 -0
- package/dist/types/markdown/highlight.d.ts +9 -0
- package/dist/types/markdown/highlight.d.ts.map +1 -0
- package/dist/types/markdown/plugin-emoji.d.ts +9 -0
- package/dist/types/markdown/plugin-emoji.d.ts.map +1 -0
- package/dist/types/markdown/plugin-fence.d.ts +3 -0
- package/dist/types/markdown/plugin-fence.d.ts.map +1 -0
- package/dist/types/markdown/plugin-misc.d.ts +9 -0
- package/dist/types/markdown/plugin-misc.d.ts.map +1 -0
- package/dist/types/markdown/plugin-tasks.d.ts +4 -0
- package/dist/types/markdown/plugin-tasks.d.ts.map +1 -0
- package/dist/types/markdown/plugin-tex.d.ts +3 -0
- package/dist/types/markdown/plugin-tex.d.ts.map +1 -0
- package/dist/types/markdown/plugin-toc.d.ts +18 -0
- package/dist/types/markdown/plugin-toc.d.ts.map +1 -0
- package/dist/types/normalize.d.ts +3 -0
- package/dist/types/normalize.d.ts.map +1 -0
- package/dist/types/preview/pane.d.ts +9 -0
- package/dist/types/preview/pane.d.ts.map +1 -0
- package/dist/types/preview/post-render.d.ts +19 -0
- package/dist/types/preview/post-render.d.ts.map +1 -0
- package/dist/types/preview/sync-scroll.d.ts +13 -0
- package/dist/types/preview/sync-scroll.d.ts.map +1 -0
- package/dist/types/preview/toc.d.ts +15 -0
- package/dist/types/preview/toc.d.ts.map +1 -0
- package/dist/types/render-to.d.ts +3 -0
- package/dist/types/render-to.d.ts.map +1 -0
- package/dist/types/toolbar/handlers.d.ts +4 -0
- package/dist/types/toolbar/handlers.d.ts.map +1 -0
- package/dist/types/toolbar/icons.d.ts +5 -0
- package/dist/types/toolbar/icons.d.ts.map +1 -0
- package/dist/types/toolbar/modes.d.ts +20 -0
- package/dist/types/toolbar/modes.d.ts.map +1 -0
- package/dist/types/toolbar/toolbar.d.ts +16 -0
- package/dist/types/toolbar/toolbar.d.ts.map +1 -0
- package/dist/types/types/common.d.ts +7 -0
- package/dist/types/types/common.d.ts.map +1 -0
- package/dist/types/types/events.d.ts +38 -0
- package/dist/types/types/events.d.ts.map +1 -0
- package/dist/types/types/lang.d.ts +95 -0
- package/dist/types/types/lang.d.ts.map +1 -0
- package/dist/types/types/settings.d.ts +171 -0
- package/dist/types/types/settings.d.ts.map +1 -0
- package/dist/umd/index.umd.cjs +96 -0
- package/package.json +69 -3
- package/README.md +0 -3
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Compartment } from '@codemirror/state';
|
|
2
|
+
import type { Extension } from '@codemirror/state';
|
|
3
|
+
import { EditorView } from '@codemirror/view';
|
|
4
|
+
import type { EditorOptions } from '../types/settings';
|
|
5
|
+
export interface CmSetup {
|
|
6
|
+
view: EditorView;
|
|
7
|
+
/** 主题 Compartment:运行时切换 editor.theme 用 */
|
|
8
|
+
themeCompartment: Compartment;
|
|
9
|
+
}
|
|
10
|
+
export declare function createEditorView(host: HTMLElement, options: EditorOptions, handlers: {
|
|
11
|
+
onInput: () => void;
|
|
12
|
+
onDocChange: () => void;
|
|
13
|
+
}, extra?: Extension[]): CmSetup;
|
|
14
|
+
/** 标记一次 dispatch 为程序触发(setMarkdown 等),避免重复进入渲染循环。 */
|
|
15
|
+
export declare const programmaticAnnotation: import("@codemirror/state").AnnotationType<number>;
|
|
16
|
+
export declare function markProgrammatic(): {
|
|
17
|
+
annotations: ReturnType<typeof programmaticAnnotation.of>;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=create-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-view.d.ts","sourceRoot":"","sources":["../../../src/cm/create-view.ts"],"names":[],"mappings":"AAOA,OAAO,EAAc,WAAW,EAAe,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EACL,UAAU,EAUX,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,UAAU,CAAA;IAChB,0CAA0C;IAC1C,gBAAgB,EAAE,WAAW,CAAA;CAC9B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,IAAI,CAAA;CAAE,EAC1D,KAAK,GAAE,SAAS,EAAO,GACtB,OAAO,CA+CT;AAED,qDAAqD;AACrD,eAAO,MAAM,sBAAsB,oDAA8B,CAAA;AAEjE,wBAAgB,gBAAgB,IAAI;IAAE,WAAW,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,EAAE,CAAC,CAAA;CAAE,CAEhG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Extension } from '@codemirror/state';
|
|
2
|
+
import type { EditorMD } from '../editor';
|
|
3
|
+
/** 快捷键 → 动作名(Mod = Ctrl/⌘;Shift/Alt 组合与原版一致) */
|
|
4
|
+
export declare const SHORTCUT_MAP: Record<string, string>;
|
|
5
|
+
/** 窗口级功能键(编辑器失焦时也生效,对齐原版 window keydown 绑定) */
|
|
6
|
+
export declare const WINDOW_KEYS: Record<string, string>;
|
|
7
|
+
/** 构建编辑器内快捷键扩展(尊重 disabledKeys) */
|
|
8
|
+
export declare function buildShortcutKeymap(editor: EditorMD): Extension;
|
|
9
|
+
/** 绑定窗口级 F9/F10/F11;返回解绑函数列表 */
|
|
10
|
+
export declare function bindWindowKeys(editor: EditorMD): Array<() => void>;
|
|
11
|
+
//# sourceMappingURL=shortcuts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortcuts.d.ts","sourceRoot":"","sources":["../../../src/cm/shortcuts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAGzC,gDAAgD;AAChD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoC/C,CAAA;AAED,+CAA+C;AAC/C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI9C,CAAA;AAED,mCAAmC;AACnC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAkB/D;AAOD,gCAAgC;AAChC,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,CAiBlE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Extension } from '@codemirror/state';
|
|
2
|
+
import type { ThemeName } from '../types/common';
|
|
3
|
+
/**
|
|
4
|
+
* 行/匹配背景色必须保持半透明(alpha < 1):drawSelection 的选区层是
|
|
5
|
+
* z-index:-2 后代,任何不透明行背景都会把它完全盖住(选区可用但不可见)。
|
|
6
|
+
* 颜色可用 rgba() 或 8 位 hex(#RRGGBBAA);新增背景色一律登记到这里,
|
|
7
|
+
* 由 themes.test.ts 逐个校验 alpha 并守护字段完整性。
|
|
8
|
+
* 见 ai-docs/bugfix-cm6-selection-invisible.md。
|
|
9
|
+
*/
|
|
10
|
+
export declare const THEME_BG: {
|
|
11
|
+
readonly light: {
|
|
12
|
+
readonly activeLine: 'rgba(9, 105, 218, 0.04)';
|
|
13
|
+
readonly searchMatch: 'rgba(212, 167, 44, 0.22)';
|
|
14
|
+
readonly selectionMatch: '#fae17d80';
|
|
15
|
+
};
|
|
16
|
+
readonly dark: {
|
|
17
|
+
readonly activeLine: 'rgba(255, 255, 255, 0.055)';
|
|
18
|
+
readonly searchMatch: 'rgba(212, 167, 44, 0.25)';
|
|
19
|
+
readonly selectionMatch: '#63533480';
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
/** 解析主题配置:字符串 → 内置主题;Extension → 用户自定义原样返回。 */
|
|
23
|
+
export declare function themeExtension(theme: ThemeName | Extension): Extension;
|
|
24
|
+
//# sourceMappingURL=themes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../../src/cm/themes.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ;aACnB,KAAK;iBACH,UAAU,EAAE,yBAAyB;iBACrC,WAAW,EAAE,0BAA0B;iBACvC,cAAc,EAAE,WAAW;;aAE7B,IAAI;iBACF,UAAU,EAAE,4BAA4B;iBACxC,WAAW,EAAE,0BAA0B;iBACvC,cAAc,EAAE,WAAW;;CAErB,CAAA;AA2EV,+CAA+C;AAC/C,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAKtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"themes.test.d.ts","sourceRoot":"","sources":["../../../src/cm/themes.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/defaults.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,eAAO,MAAM,QAAQ,EAAE,aAqFtB,CAAA;AAED,eAAO,MAAM,OAAO,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../../src/dialogs/code.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AA+BjC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAqC5D;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAuCnE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTML 实体数据(源自 editor.md plugins/html-entities-dialog/html-entities.json,MIT License © pandao)。
|
|
3
|
+
*/
|
|
4
|
+
export interface HtmlEntity {
|
|
5
|
+
name: string;
|
|
6
|
+
description: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const HTML_ENTITIES: HtmlEntity[];
|
|
9
|
+
//# sourceMappingURL=html-entities-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-entities-data.d.ts","sourceRoot":"","sources":["../../../../src/dialogs/data/html-entities-data.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,eAAO,MAAM,aAAa,EAAE,UAAU,EAAwkZ,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { EditorMD } from '../editor';
|
|
2
|
+
export interface DialogButton {
|
|
3
|
+
key: string;
|
|
4
|
+
label: string;
|
|
5
|
+
/** 点击回调;返回 false 或不返回视为关闭对话框 */
|
|
6
|
+
action?: (dialog: Dialog) => void | false;
|
|
7
|
+
primary?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface DialogOptions {
|
|
10
|
+
name: string;
|
|
11
|
+
title: string;
|
|
12
|
+
width?: number;
|
|
13
|
+
/** 内容元素(可延迟构建) */
|
|
14
|
+
content: HTMLElement | (() => HTMLElement);
|
|
15
|
+
buttons?: DialogButton[];
|
|
16
|
+
/** 关闭回调 */
|
|
17
|
+
onClose?: () => void;
|
|
18
|
+
}
|
|
19
|
+
export declare class Dialog {
|
|
20
|
+
readonly el: HTMLElement;
|
|
21
|
+
readonly body: HTMLElement;
|
|
22
|
+
readonly editor: EditorMD;
|
|
23
|
+
private options;
|
|
24
|
+
private mask;
|
|
25
|
+
private unbinds;
|
|
26
|
+
private closed;
|
|
27
|
+
constructor(editor: EditorMD, options: DialogOptions);
|
|
28
|
+
/** 打开:挂载 + 遮罩 + 居中 */
|
|
29
|
+
open(): this;
|
|
30
|
+
close(): void;
|
|
31
|
+
/** 显示加载态(上传时使用) */
|
|
32
|
+
loading(show: boolean): void;
|
|
33
|
+
private center;
|
|
34
|
+
private bindEvents;
|
|
35
|
+
private bindDrag;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/dialogs/dialog.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEzC,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,gCAAgC;IAChC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,KAAK,CAAA;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB;IAClB,OAAO,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAA;IAC1C,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACxB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAID,qBAAa,MAAM;IACjB,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,MAAM,CAAQ;IAEtB,YAAY,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EA2CnD;IAED,sBAAsB;IACtB,IAAI,IAAI,IAAI,CAiBX;IAED,KAAK,IAAI,IAAI,CAWZ;IAED,mBAAmB;IACnB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAE3B;IAED,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,UAAU;IAkBlB,OAAO,CAAC,QAAQ;CAuCjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emoji.d.ts","sourceRoot":"","sources":["../../../src/dialogs/emoji.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAcjC,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CA+DxD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/dialogs/entities.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAuC/D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { EditorMD } from '../editor';
|
|
2
|
+
import { Dialog } from './dialog';
|
|
3
|
+
export declare function formRow(labelText: string, input: HTMLElement): HTMLElement;
|
|
4
|
+
export declare function textInput(placeholder?: string): HTMLInputElement;
|
|
5
|
+
/** 打开对话框并可选地在确认时执行动作;回车键触发主按钮。 */
|
|
6
|
+
export declare function openWithEnter(editor: EditorMD, dialog: Dialog): void;
|
|
7
|
+
/**
|
|
8
|
+
* 在对话框 body 内显示行内错误提示。
|
|
9
|
+
* 不用 window.alert —— 原生弹窗会阻塞 JS 线程(用户明确要求)。
|
|
10
|
+
*/
|
|
11
|
+
export declare function showErrorHint(dialog: Dialog, message: string): void;
|
|
12
|
+
//# sourceMappingURL=form.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/dialogs/form.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAQ1E;AAED,wBAAgB,SAAS,CAAC,WAAW,SAAK,GAAG,gBAAgB,CAM5D;AAED,kCAAkC;AAClC,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CASnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/dialogs/image.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CA2GxD"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 链接 / 引用链接对话框。 */
|
|
2
|
+
import type { EditorMD } from '../editor';
|
|
3
|
+
import { Dialog } from './dialog';
|
|
4
|
+
export declare function openLinkDialog(editor: EditorMD): Dialog;
|
|
5
|
+
export declare function openReferenceLinkDialog(editor: EditorMD): Dialog;
|
|
6
|
+
//# sourceMappingURL=link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/dialogs/link.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAgCvD;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAuChE"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { EditorMD } from '../editor';
|
|
2
|
+
import { Dialog } from './dialog';
|
|
3
|
+
export declare function openGotoLineDialog(editor: EditorMD): Dialog;
|
|
4
|
+
export declare function openHelpDialog(editor: EditorMD): Dialog;
|
|
5
|
+
export declare function openInfoDialog(editor: EditorMD): Dialog;
|
|
6
|
+
//# sourceMappingURL=misc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../src/dialogs/misc.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAoC3D;AA0BD,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAavD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAiBvD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** 对话框注册表:名称 → 打开函数。 */
|
|
2
|
+
import type { EditorMD } from '../editor';
|
|
3
|
+
import type { Dialog } from './dialog';
|
|
4
|
+
export type DialogFactory = (editor: EditorMD) => Dialog;
|
|
5
|
+
/** 注册自定义对话框(覆盖同名内置) */
|
|
6
|
+
export declare function registerDialog(name: string, factory: DialogFactory): void;
|
|
7
|
+
export declare function openRegisteredDialog(editor: EditorMD, name: string): Dialog | null;
|
|
8
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/dialogs/registry.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAStC,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,QAAQ,KAAK,MAAM,CAAA;AAgBxD,uBAAuB;AACvB,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAEzE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/dialogs/table.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAajC,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAwDxD"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EditorMD —— 编辑器编排核心。
|
|
3
|
+
* 组装 CM6 视图、渲染管线、预览面板与同步滚动;对外暴露新 API。
|
|
4
|
+
* config() 支持原位重建:teardown 内部结构后用新配置重新 setup。
|
|
5
|
+
*/
|
|
6
|
+
import { EventEmitter } from '@editormd-next/utils';
|
|
7
|
+
import type { UploadResult } from '@editormd-next/utils';
|
|
8
|
+
import type { EditorView } from '@codemirror/view';
|
|
9
|
+
import type { MountedDom } from './lifecycle/mount';
|
|
10
|
+
import type { EditorEvents } from './types/events';
|
|
11
|
+
import type { LangDict } from './types/lang';
|
|
12
|
+
import type { EditorOptions, EditorUserOptions } from './types/settings';
|
|
13
|
+
import type { ThemeName } from './types/common';
|
|
14
|
+
import type { Extension } from '@codemirror/state';
|
|
15
|
+
export interface EditorState {
|
|
16
|
+
watching: boolean;
|
|
17
|
+
loaded: boolean;
|
|
18
|
+
destroyed: boolean;
|
|
19
|
+
/** 全窗口预览中 */
|
|
20
|
+
previewing: boolean;
|
|
21
|
+
/** 全屏中 */
|
|
22
|
+
fullscreen: boolean;
|
|
23
|
+
}
|
|
24
|
+
export declare class EditorMD {
|
|
25
|
+
/** 静态渲染:把 markdown 渲染为只读 HTML(替代原版 editormd.markdownToHTML) */
|
|
26
|
+
static renderTo(target: string | HTMLElement, options?: EditorUserOptions): HTMLElement;
|
|
27
|
+
options: EditorOptions;
|
|
28
|
+
/** 当前语言字典(i18n 运行时切换用) */
|
|
29
|
+
lang: LangDict;
|
|
30
|
+
/** CM6 编辑视图(高级用法可直接操作) */
|
|
31
|
+
cm: EditorView;
|
|
32
|
+
dom: MountedDom;
|
|
33
|
+
state: EditorState;
|
|
34
|
+
/** 事件总线:on/off/once/emit */
|
|
35
|
+
readonly emitter: EventEmitter<EditorEvents>;
|
|
36
|
+
private engine;
|
|
37
|
+
private previewPane;
|
|
38
|
+
private syncHandle;
|
|
39
|
+
private toolbar;
|
|
40
|
+
private themeCompartment;
|
|
41
|
+
private debouncedRender;
|
|
42
|
+
private lastHtml;
|
|
43
|
+
private unbinds;
|
|
44
|
+
/** 用户挂在容器上的原始 class,重建时恢复 */
|
|
45
|
+
private initialClassName;
|
|
46
|
+
constructor(target: string | HTMLElement, userOptions?: EditorUserOptions);
|
|
47
|
+
/** 当前 markdown 文本 */
|
|
48
|
+
getMarkdown(): string;
|
|
49
|
+
/** 整体替换 markdown(程序性替换,立即渲染) */
|
|
50
|
+
setMarkdown(markdown: string): this;
|
|
51
|
+
/** 在文档末尾追加 markdown */
|
|
52
|
+
appendMarkdown(markdown: string): this;
|
|
53
|
+
/** 在光标处插入文本 */
|
|
54
|
+
insertValue(value: string): this;
|
|
55
|
+
/** 最近一次渲染产出的 HTML */
|
|
56
|
+
getHtml(): string;
|
|
57
|
+
/** 预览区当前 DOM 内的 HTML */
|
|
58
|
+
getPreviewedHtml(): string;
|
|
59
|
+
/** 清空内容 */
|
|
60
|
+
clear(): this;
|
|
61
|
+
/** 开启实况预览(分屏) */
|
|
62
|
+
watch(): this;
|
|
63
|
+
/** 关闭实况预览(仅编辑器) */
|
|
64
|
+
unwatch(): this;
|
|
65
|
+
toggleWatch(): this;
|
|
66
|
+
/** 切换编辑区主题(内置名称或 CM6 主题扩展) */
|
|
67
|
+
setEditorTheme(theme: ThemeName | Extension): this;
|
|
68
|
+
/** 切换预览区主题 */
|
|
69
|
+
setPreviewTheme(theme: ThemeName): this;
|
|
70
|
+
/** 一键切换浅/深(changetheme 按钮) */
|
|
71
|
+
toggleTheme(): this;
|
|
72
|
+
/** 按名称打开对话框(link/referenceLink/image/codeBlock/table/emoji/…) */
|
|
73
|
+
openDialog(name: string): void;
|
|
74
|
+
/** 跳转到指定行(1 基;支持 'first'/'last'),并同步预览滚动 */
|
|
75
|
+
gotoLine(line: number | 'first' | 'last'): this;
|
|
76
|
+
/** 上传图片文件(响应协议 {success,url,message},兼容原版服务端) */
|
|
77
|
+
uploadImage(file: File, onProgress?: (percent: number) => void): Promise<UploadResult>;
|
|
78
|
+
/** 全窗口 HTML 预览切换(ESC 退出) */
|
|
79
|
+
togglePreviewMode(): this;
|
|
80
|
+
/** 全屏切换(ESC 退出) */
|
|
81
|
+
toggleFullscreen(): this;
|
|
82
|
+
focus(): this;
|
|
83
|
+
/** 订阅事件,返回解绑函数 */
|
|
84
|
+
on<K extends keyof EditorEvents>(event: K, listener: (payload: EditorEvents[K]) => void): () => void;
|
|
85
|
+
/** 订阅一次性事件 */
|
|
86
|
+
once<K extends keyof EditorEvents>(event: K, listener: (payload: EditorEvents[K]) => void): () => void;
|
|
87
|
+
/** 解绑事件 */
|
|
88
|
+
off<K extends keyof EditorEvents>(event: K, listener?: (payload: EditorEvents[K]) => void): void;
|
|
89
|
+
/** 触发事件(自定义扩展事件用) */
|
|
90
|
+
emit<K extends keyof EditorEvents>(event: K, payload: EditorEvents[K]): void;
|
|
91
|
+
/**
|
|
92
|
+
* 深合并部分配置并原位重建(保留当前 markdown 内容)。
|
|
93
|
+
* 注意:结构型配置(宽高/工具栏/预览开关)都走重建,成本可接受。
|
|
94
|
+
*/
|
|
95
|
+
config(patch: EditorUserOptions): this;
|
|
96
|
+
/** 销毁编辑器:移除视图、解绑事件、还原容器 */
|
|
97
|
+
destroy(): void;
|
|
98
|
+
private setup;
|
|
99
|
+
private teardown;
|
|
100
|
+
private resolveTarget;
|
|
101
|
+
/** 渲染管线:markdown → 引擎 → 预览/textarea → 后处理 → change 事件 */
|
|
102
|
+
renderNow(): void;
|
|
103
|
+
private bindWindowEvents;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=editor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/editor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paste-drop.d.ts","sourceRoot":"","sources":["../../../src/features/paste-drop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEzC,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAiB9D"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EditorMD } from '../editor';
|
|
2
|
+
/** 进入全窗口 HTML 预览(编辑区隐藏、预览占满、右上角关闭按钮、ESC 退出) */
|
|
3
|
+
export declare function enterPreviewMode(editor: EditorMD): void;
|
|
4
|
+
export declare function exitPreviewMode(editor: EditorMD): void;
|
|
5
|
+
/** 进入/退出全屏(CSS fixed 覆盖视口;ESC 退出) */
|
|
6
|
+
export declare function enterFullscreen(editor: EditorMD): void;
|
|
7
|
+
export declare function exitFullscreen(editor: EditorMD): void;
|
|
8
|
+
//# sourceMappingURL=view-modes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-modes.d.ts","sourceRoot":"","sources":["../../../src/features/view-modes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEzC,+CAA+C;AAC/C,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAWvD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAMtD;AAED,qCAAqC;AACrC,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAKtD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAKrD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/i18n/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,eAAO,MAAM,EAAE,EAAE,QA4IhB,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** 语言注册与解析。 */
|
|
2
|
+
import type { I18nOption } from '../types/settings';
|
|
3
|
+
import type { LangDict } from '../types/lang';
|
|
4
|
+
/** 注册自定义语言包(同名覆盖内置)。 */
|
|
5
|
+
export declare function registerLang(dict: LangDict): void;
|
|
6
|
+
export declare function listLangs(): string[];
|
|
7
|
+
/** 解析 i18n 配置:语言代码 → 内置字典;对象 → 直接使用。 */
|
|
8
|
+
export declare function resolveLang(option: I18nOption): LangDict;
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAW7C,wBAAwB;AACxB,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAEjD;AAED,wBAAgB,SAAS,IAAI,MAAM,EAAE,CAEpC;AAED,wCAAwC;AACxC,wBAAgB,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAKxD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh-cn.d.ts","sourceRoot":"","sources":["../../../src/i18n/zh-cn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,eAAO,MAAM,IAAI,EAAE,QA4IlB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh-tw.d.ts","sourceRoot":"","sources":["../../../src/i18n/zh-tw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,eAAO,MAAM,IAAI,EAAE,QA4IlB,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** editor.md-next —— TypeScript + CodeMirror 6 重写的 Markdown 编辑器。 */
|
|
2
|
+
import './styles/index.css';
|
|
3
|
+
export { EditorMD } from './editor';
|
|
4
|
+
export type { EditorState } from './editor';
|
|
5
|
+
export { renderTo } from './render-to';
|
|
6
|
+
export { defaults, VERSION } from './defaults';
|
|
7
|
+
export { registerLang, listLangs, resolveLang } from './i18n';
|
|
8
|
+
export { registerDialog } from './dialogs/registry';
|
|
9
|
+
export type { Dialog, DialogOptions, DialogButton } from './dialogs/dialog';
|
|
10
|
+
export type { EditorEvents } from './types/events';
|
|
11
|
+
export type { LangDict } from './types/lang';
|
|
12
|
+
export type { EditorOptions, EditorUserOptions, MarkdownConfig, MarkdownItPlugin, PreviewSectionConfig, EditorSectionConfig, ToolbarConfig, ToolbarMode, ToolbarSpec, ToolbarHandler, TocOptions, UploadConfig, DialogConfig, CdnConfig, I18nOption, } from './types/settings';
|
|
13
|
+
export type { ThemeName, I18nCode, WidthOrHeight } from './types/common';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,OAAO,oBAAoB,CAAA;AAE3B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE3E,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,GACX,MAAM,kBAAkB,CAAA;AACzB,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { WidthOrHeight } from '../types/common';
|
|
2
|
+
import type { MountedDom } from './mount';
|
|
3
|
+
export declare function toCssSize(value: WidthOrHeight): string;
|
|
4
|
+
/** 应用容器宽高 */
|
|
5
|
+
export declare function applyContainerSize(dom: MountedDom, width: WidthOrHeight, height: WidthOrHeight): void;
|
|
6
|
+
/**
|
|
7
|
+
* 按 watch 状态重排:分屏(编辑|预览)或仅编辑器。
|
|
8
|
+
* watch 时各占一半;unwatch 时预览隐藏、编辑器占满。
|
|
9
|
+
*/
|
|
10
|
+
export declare function layout(dom: MountedDom, watching: boolean, previewEnabled: boolean): void;
|
|
11
|
+
//# sourceMappingURL=layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/layout.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEtD;AAED,aAAa;AACb,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAErG;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAUxF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { EditorOptions } from '../types/settings';
|
|
2
|
+
export interface MountedDom {
|
|
3
|
+
container: HTMLElement;
|
|
4
|
+
toolbarSlot: HTMLElement | null;
|
|
5
|
+
editorHost: HTMLElement;
|
|
6
|
+
/** 仅在 preview.enable 时非空 */
|
|
7
|
+
previewHost: HTMLElement;
|
|
8
|
+
textarea: HTMLTextAreaElement | null;
|
|
9
|
+
htmlTextarea: HTMLTextAreaElement | null;
|
|
10
|
+
}
|
|
11
|
+
export declare function mountDom(target: string | HTMLElement, options: EditorOptions): MountedDom;
|
|
12
|
+
//# sourceMappingURL=mount.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/mount.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,WAAW,CAAA;IACtB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAA;IAC/B,UAAU,EAAE,WAAW,CAAA;IACvB,4BAA4B;IAC5B,WAAW,EAAE,WAAW,CAAA;IACxB,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACpC,YAAY,EAAE,mBAAmB,GAAG,IAAI,CAAA;CACzC;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,UAAU,CAkDzF"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { CdnConfig } from '../types/settings';
|
|
2
|
+
/** KaTeX 最小结构类型(避免引入 @types/katex) */
|
|
3
|
+
interface KatexLike {
|
|
4
|
+
renderToString(tex: string, options?: {
|
|
5
|
+
displayMode?: boolean;
|
|
6
|
+
throwOnError?: boolean;
|
|
7
|
+
}): string;
|
|
8
|
+
}
|
|
9
|
+
interface MermaidLike {
|
|
10
|
+
initialize(config: Record<string, unknown>): void;
|
|
11
|
+
parse(text: string): Promise<boolean>;
|
|
12
|
+
run(options: {
|
|
13
|
+
nodes?: Iterable<HTMLElement>;
|
|
14
|
+
suppressErrors?: boolean;
|
|
15
|
+
}): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
/** markmap-view 的最小结构类型 */
|
|
18
|
+
interface MarkmapViewLike {
|
|
19
|
+
Markmap: {
|
|
20
|
+
create(svg: SVGSVGElement, options?: Record<string, unknown>, data?: unknown): unknown;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
interface MarkmapLibLike {
|
|
24
|
+
Transformer: new (plugins?: unknown[]) => {
|
|
25
|
+
transform(source: string): {
|
|
26
|
+
root: unknown;
|
|
27
|
+
} | Promise<{
|
|
28
|
+
root: unknown;
|
|
29
|
+
}>;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
declare global {
|
|
33
|
+
interface Window {
|
|
34
|
+
katex?: KatexLike;
|
|
35
|
+
mermaid?: MermaidLike;
|
|
36
|
+
/** markmap-lib + markmap-view 的浏览器全局(同名命名空间合并) */
|
|
37
|
+
markmap?: MarkmapLibLike & MarkmapViewLike & Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/** 渲染容器内所有 .emd-tex / .emd-tex-display */
|
|
41
|
+
export declare function renderTexIn(container: HTMLElement, cdn: CdnConfig): Promise<void>;
|
|
42
|
+
/** 渲染容器内所有 .emd-mermaid(源文本 base64 存于 data-emd-mermaid-src) */
|
|
43
|
+
export declare function renderMermaidIn(container: HTMLElement, cdn: CdnConfig, dark?: boolean): Promise<void>;
|
|
44
|
+
/** 渲染容器内所有 .emd-mindmap(源文本 base64 存于 data-emd-mindmap-src)。
|
|
45
|
+
* 直接使用 markmap-lib + markmap-view:autoloader 只在脚本加载时处理一次静态节点,
|
|
46
|
+
* 无法覆盖编辑过程中的重新渲染。 */
|
|
47
|
+
export declare function renderMindmapIn(container: HTMLElement, cdn: CdnConfig): Promise<void>;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=cdn-lazy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdn-lazy.d.ts","sourceRoot":"","sources":["../../../src/markdown/cdn-lazy.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,sCAAsC;AACtC,UAAU,SAAS;IACjB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAAA;CACjG;AAED,UAAU,WAAW;IACnB,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACjD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACrC,GAAG,CAAC,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACzF;AAED,2BAA2B;AAC3B,UAAU,eAAe;IACvB,OAAO,EAAE;QACP,MAAM,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;KACvF,CAAA;CACF;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,KAAK,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK;QACxC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,CAAC,CAAA;KAC1E,CAAA;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,KAAK,CAAC,EAAE,SAAS,CAAA;QACjB,OAAO,CAAC,EAAE,WAAW,CAAA;QACrB,kDAAkD;QAClD,OAAO,CAAC,EAAE,cAAc,GAAG,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KACrE;CACF;AA0BD,0CAA0C;AAC1C,wBAAsB,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBvF;AAKD,+DAA+D;AAC/D,wBAAgB,eAAe,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BnG;AA+BD;;qBAEqB;AACrB,wBAAsB,eAAe,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CA0B3F"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Emoji 数据(源自 editor.md plugins/emoji-dialog/emoji.json,MIT License © pandao)。
|
|
3
|
+
* 供渲染插件与 emoji 对话框共用。
|
|
4
|
+
*/
|
|
5
|
+
export interface EmojiCategory {
|
|
6
|
+
category: string;
|
|
7
|
+
list: string[];
|
|
8
|
+
}
|
|
9
|
+
export declare const GITHUB_EMOJI: EmojiCategory[];
|
|
10
|
+
export declare const TWEMOJI: string[];
|
|
11
|
+
export declare const FONT_AWESOME_ICONS: string[];
|
|
12
|
+
export declare const EMOJI_LOGOS: string[];
|
|
13
|
+
//# sourceMappingURL=emoji-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emoji-data.d.ts","sourceRoot":"","sources":["../../../../src/markdown/data/emoji-data.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,eAAO,MAAM,YAAY,EAAE,aAAa,EAA+9U,CAAA;AAEvgV,eAAO,MAAM,OAAO,EAAE,MAAM,EAA8xN,CAAA;AAE1zN,eAAO,MAAM,kBAAkB,EAAE,MAAM,EAAg3c,CAAA;AAEv5c,eAAO,MAAM,WAAW,EAAE,MAAM,EAG/B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emoji-unicode.d.ts","sourceRoot":"","sources":["../../../../src/markdown/data/emoji-unicode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAA0yhB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* data-* 属性承载源文本的编解码。
|
|
3
|
+
*
|
|
4
|
+
* 为什么不直接 escapeHtml:DOMPurify(SAFE_FOR_XML 默认开启)会剥掉值中含
|
|
5
|
+
* `-->` / `<!--` / `]]>` 的属性(mermaid/markdown 源文本几乎必然含 `-->`),
|
|
6
|
+
* 而 base64 值不会触发该规则,读回时精确还原。
|
|
7
|
+
*/
|
|
8
|
+
export declare function encodeDataAttr(text: string): string;
|
|
9
|
+
export declare function decodeDataAttr(encoded: string): string;
|
|
10
|
+
//# sourceMappingURL=data-attr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-attr.d.ts","sourceRoot":"","sources":["../../../src/markdown/data-attr.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAItD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { MarkdownIt as MarkdownItInstance } from 'markdown-it';
|
|
2
|
+
import type { TocItem } from './plugin-toc';
|
|
3
|
+
import type { MarkdownConfig } from '../types/settings';
|
|
4
|
+
export interface RenderResult {
|
|
5
|
+
html: string;
|
|
6
|
+
toc: TocItem[];
|
|
7
|
+
}
|
|
8
|
+
export interface EngineOptions {
|
|
9
|
+
codeHighlight: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare class MarkdownEngine {
|
|
12
|
+
readonly md: MarkdownItInstance;
|
|
13
|
+
private readonly sanitize;
|
|
14
|
+
constructor(config: MarkdownConfig, options: EngineOptions);
|
|
15
|
+
/** 渲染 markdown → { html, toc }(html 已消毒) */
|
|
16
|
+
render(markdown: string): RenderResult;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=engine.d.ts.map
|