@pinkpixel/marzipan 1.0.6 → 1.0.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/README.md +1 -1
- package/dist/actions/core/detection.d.ts +11 -0
- package/dist/actions/core/detection.d.ts.map +1 -0
- package/dist/actions/core/detection.js +142 -0
- package/dist/actions/core/detection.js.map +1 -0
- package/dist/actions/core/formats.d.ts +5 -0
- package/dist/actions/core/formats.d.ts.map +1 -0
- package/dist/actions/core/formats.js +75 -0
- package/dist/actions/core/formats.js.map +1 -0
- package/dist/actions/core/insertion.d.ts +5 -0
- package/dist/actions/core/insertion.d.ts.map +1 -0
- package/dist/actions/core/insertion.js +116 -0
- package/dist/actions/core/insertion.js.map +1 -0
- package/dist/actions/core/selection.d.ts +13 -0
- package/dist/actions/core/selection.d.ts.map +1 -0
- package/dist/actions/core/selection.js +137 -0
- package/dist/actions/core/selection.js.map +1 -0
- package/dist/actions/debug.d.ts +10 -0
- package/dist/actions/debug.d.ts.map +1 -0
- package/dist/actions/debug.js +39 -0
- package/dist/actions/debug.js.map +1 -0
- package/dist/actions/index.d.ts +48 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +237 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/operations/block.d.ts +5 -0
- package/dist/actions/operations/block.d.ts.map +1 -0
- package/dist/actions/operations/block.js +120 -0
- package/dist/actions/operations/block.js.map +1 -0
- package/dist/actions/operations/list.d.ts +4 -0
- package/dist/actions/operations/list.d.ts.map +1 -0
- package/dist/actions/operations/list.js +151 -0
- package/dist/actions/operations/list.js.map +1 -0
- package/dist/actions/types.d.ts +43 -0
- package/dist/actions/types.d.ts.map +1 -0
- package/dist/actions/types.js +2 -0
- package/dist/actions/types.js.map +1 -0
- package/dist/favicon.png +0 -0
- package/dist/icons.d.ts +18 -0
- package/dist/icons.d.ts.map +1 -0
- package/dist/icons.js +73 -0
- package/dist/icons.js.map +1 -0
- package/dist/index.d.ts +143 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +420 -349
- package/dist/index.js.map +1 -1
- package/dist/link-tooltip.d.ts +27 -0
- package/dist/link-tooltip.d.ts.map +1 -0
- package/dist/link-tooltip.js +224 -0
- package/dist/link-tooltip.js.map +1 -0
- package/dist/logo.png +0 -0
- package/dist/marzipan.d.ts +495 -0
- package/dist/marzipan.d.ts.map +1 -0
- package/dist/marzipan.js +1268 -0
- package/dist/marzipan.js.map +1 -0
- package/dist/parser.d.ts +234 -0
- package/dist/parser.d.ts.map +1 -0
- package/dist/parser.js +886 -0
- package/dist/parser.js.map +1 -0
- package/dist/plugins/accentSwatchPlugin.d.ts +15 -0
- package/dist/plugins/accentSwatchPlugin.d.ts.map +1 -0
- package/dist/plugins/imageManagerPlugin.d.ts +16 -0
- package/dist/plugins/imageManagerPlugin.d.ts.map +1 -0
- package/dist/plugins/imagePicker.d.ts +9 -0
- package/dist/plugins/imagePicker.d.ts.map +1 -0
- package/dist/plugins/imagePicker.js +17 -15
- package/dist/plugins/imagePicker.js.map +1 -1
- package/dist/plugins/imagePickerPlugin.d.ts +3 -0
- package/dist/plugins/imagePickerPlugin.d.ts.map +1 -0
- package/dist/plugins/mermaidExternal.d.ts +2 -0
- package/dist/plugins/mermaidExternal.d.ts.map +1 -0
- package/dist/plugins/mermaidPlugin.d.ts +2 -0
- package/dist/plugins/mermaidPlugin.d.ts.map +1 -0
- package/dist/plugins/tableGenerator.d.ts +2 -0
- package/dist/plugins/tableGenerator.d.ts.map +1 -0
- package/dist/plugins/tableGridPlugin.d.ts +16 -0
- package/dist/plugins/tableGridPlugin.d.ts.map +1 -0
- package/dist/plugins/tableGridPlugin.js +21 -21
- package/dist/plugins/tableGridPlugin.js.map +1 -1
- package/dist/plugins/tablePlugin.d.ts +8 -0
- package/dist/plugins/tablePlugin.d.ts.map +1 -0
- package/dist/plugins/tablePlugin.js +20 -19
- package/dist/plugins/tablePlugin.js.map +1 -1
- package/dist/plugins/tinyHighlight.d.ts +10 -0
- package/dist/plugins/tinyHighlight.d.ts.map +1 -0
- package/dist/plugins/utils/table.d.ts +3 -0
- package/dist/plugins/utils/table.d.ts.map +1 -0
- package/dist/plugins/utils/table.js +25 -0
- package/dist/plugins/utils/table.js.map +1 -0
- package/dist/shortcuts.d.ts +15 -0
- package/dist/shortcuts.d.ts.map +1 -0
- package/dist/shortcuts.js +78 -0
- package/dist/shortcuts.js.map +1 -0
- package/dist/styles.d.ts +11 -0
- package/dist/styles.d.ts.map +1 -0
- package/dist/styles.js +854 -0
- package/dist/styles.js.map +1 -0
- package/dist/themes.d.ts +197 -0
- package/dist/themes.d.ts.map +1 -0
- package/dist/themes.js +120 -0
- package/dist/themes.js.map +1 -0
- package/dist/toolbar.d.ts +40 -0
- package/dist/toolbar.d.ts.map +1 -0
- package/dist/toolbar.js +323 -0
- package/dist/toolbar.js.map +1 -0
- package/docs/api.md +95 -48
- package/docs/types.d.ts +57 -37
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type MzEditor = {
|
|
2
|
+
container: HTMLElement;
|
|
3
|
+
textarea: HTMLTextAreaElement;
|
|
4
|
+
updatePreview: () => void;
|
|
5
|
+
setAccent?: (hex: string) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare function accentSwatchPlugin(opts?: {
|
|
8
|
+
max?: number;
|
|
9
|
+
defaults?: string[];
|
|
10
|
+
title?: string;
|
|
11
|
+
label?: string;
|
|
12
|
+
}): (editor: MzEditor) => void;
|
|
13
|
+
export declare const accentSwatchStyles = "\n.mz-accent-pop { width: 280px; max-width: calc(100vw - 24px); }\n.mz-accent-grid { display: grid; grid-template-columns: repeat(8, 28px); gap: 8px; padding: 6px; }\n.mz-swatch {\n width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--mz-pop-bd, #333);\n background: var(--sw, #777); cursor: pointer; box-shadow: inset 0 0 0 2px rgba(0,0,0,.2);\n}\n.mz-swatch.sel { outline: 2px solid var(--mz-accent, #8b5cf6); outline-offset: 2px; }\n.mz-swatch-add { background: linear-gradient(135deg, #222, #2b2f36); color: #e7e7e7;\n display:flex; align-items:center; justify-content:center; font-weight:700; }\n.mz-accent-row { display:flex; gap:8px; padding: 6px; }\n.mz-accent-row button {\n flex:1; padding:6px 8px; border-radius:8px; border:1px solid var(--mz-bd, #2b2f36);\n background: var(--mz-btn-bg, #1a1e24); color: var(--mz-btn-fg, #e7e7e7); cursor:pointer;\n}\n.mz-accent-hint { font-size: 12px; opacity: .7; padding: 0 6px 6px; }\n";
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=accentSwatchPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accentSwatchPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/accentSwatchPlugin.ts"],"names":[],"mappings":"AAIA,KAAK,QAAQ,GAAG;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAC;IAE1B,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,CAAC;AAyCF,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,IAKS,QAAQ,QAAQ,UAwKzB;AAGD,eAAO,MAAM,kBAAkB,k8BAgB9B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type MzEditor = {
|
|
2
|
+
container: HTMLElement;
|
|
3
|
+
textarea: HTMLTextAreaElement;
|
|
4
|
+
updatePreview: () => void;
|
|
5
|
+
};
|
|
6
|
+
export declare function imageManagerPlugin(opts?: {
|
|
7
|
+
label?: string;
|
|
8
|
+
title?: string;
|
|
9
|
+
maxRecent?: number;
|
|
10
|
+
persistThresholdBytes?: number;
|
|
11
|
+
uploader?: (file: File) => Promise<string>;
|
|
12
|
+
onInsert?: (url: string) => string;
|
|
13
|
+
}): (editor: MzEditor) => void;
|
|
14
|
+
export declare const imageManagerStyles = "\n.mz-im-panel { width: 440px; max-width: calc(100vw - 24px); }\n.mz-im-row { display: grid; grid-template-columns: 1fr auto auto auto; gap: 6px; margin-bottom: 8px; }\n.mz-im-row input[type=\"url\"] {\n background: var(--mz-ip-bg, #0f1216); color: var(--mz-ip-fg, #e7e7e7);\n border: 1px solid var(--mz-ip-bd, #2b2f36); border-radius: 8px; padding: 6px 8px;\n}\n.mz-im-row button {\n padding: 6px 10px; border-radius: 8px; border: 1px solid var(--mz-bd, #2b2f36);\n background: var(--mz-btn-bg, #1a1e24); color: var(--mz-btn-fg, #e7e7e7); cursor: pointer;\n}\n.mz-im-drop {\n border: 1px dashed var(--mz-drop-bd, #3b4350); border-radius: 8px;\n padding: 10px; text-align: center; font-size: 12px; margin-bottom: 8px;\n background: var(--mz-drop-bg, #0e1116);\n}\n.mz-im-drop.on { background: var(--mz-drop-on, #172033); }\n.mz-im-grid {\n display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr));\n gap: 8px; max-height: 320px; overflow: auto; padding: 2px;\n}\n.mz-im-card { border: 1px solid var(--mz-card-bd, #2b2f36); border-radius: 8px; overflow: hidden;\n background: var(--mz-card-bg, #12151a); display: flex; flex-direction: column; }\n.mz-im-card img { width: 100%; height: 82px; object-fit: cover; display: block; }\n.mz-im-actions { display: flex; gap: 6px; padding: 6px; justify-content: space-between; }\n.mz-im-actions button {\n flex: 1; padding: 4px 6px; border-radius: 6px; border: 1px solid var(--mz-bd, #2b2f36);\n background: var(--mz-btn2-bg, #1b2027); color: var(--mz-btn2-fg, #e7e7e7); cursor: pointer; font-size: 12px;\n}\n";
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=imageManagerPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageManagerPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/imageManagerPlugin.ts"],"names":[],"mappings":"AAOA,KAAK,QAAQ,GAAG;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AA+BF,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACpC,IAMS,QAAQ,QAAQ,UAmMzB;AAGD,eAAO,MAAM,kBAAkB,+iDA6B9B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type ImagePickerOptions = {
|
|
2
|
+
uploader?: (file: File) => Promise<string>;
|
|
3
|
+
label?: string;
|
|
4
|
+
title?: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
promptMessage?: string;
|
|
7
|
+
};
|
|
8
|
+
export declare function imagePickerPlugin(opts?: ImagePickerOptions): (editor: any) => void;
|
|
9
|
+
//# sourceMappingURL=imagePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imagePicker.d.ts","sourceRoot":"","sources":["../../src/plugins/imagePicker.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAUF,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,kBAAuB,IAIrD,QAAQ,GAAG,UA4CpB"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
function
|
|
2
|
-
const t = e.textarea, n = t.selectionStart ?? 0,
|
|
3
|
-
t.setRangeText(
|
|
1
|
+
function m(e, r) {
|
|
2
|
+
const t = e.textarea, n = t.selectionStart ?? 0, l = t.selectionEnd ?? 0;
|
|
3
|
+
t.setRangeText(r, n, l, "end"), e.updatePreview?.(), t.focus();
|
|
4
4
|
}
|
|
5
|
-
function
|
|
6
|
-
const
|
|
5
|
+
function f(e = {}) {
|
|
6
|
+
const r = e.label ?? "🖼️", t = e.title ?? "Insert image";
|
|
7
7
|
return (n) => {
|
|
8
|
-
const
|
|
9
|
-
a.type = "button", a.title = t, a.className = "mz-btn mz-btn-image", a.textContent =
|
|
10
|
-
const
|
|
8
|
+
const l = n.container?.querySelector?.(".marzipan-toolbar") ?? n.container, a = document.createElement("button");
|
|
9
|
+
a.type = "button", a.title = t, a.className = "mz-btn mz-btn-image", a.textContent = r, a.onclick = async () => {
|
|
10
|
+
const p = e.promptMessage ?? 'Paste an image URL, or type "upload" to pick a file:', d = e.placeholder ?? "", u = prompt(p, d);
|
|
11
|
+
if (!u) return;
|
|
12
|
+
const i = u.trim();
|
|
11
13
|
if (!i) return;
|
|
12
14
|
if (i.toLowerCase() !== "upload") {
|
|
13
|
-
|
|
15
|
+
m(n, ``);
|
|
14
16
|
return;
|
|
15
17
|
}
|
|
16
18
|
const c = document.createElement("input");
|
|
@@ -18,16 +20,16 @@ function m(e = {}) {
|
|
|
18
20
|
const o = c.files?.[0];
|
|
19
21
|
if (o)
|
|
20
22
|
try {
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
} catch (
|
|
24
|
-
console.error("Image upload failed:",
|
|
23
|
+
const s = e.uploader ? await e.uploader(o) : URL.createObjectURL(o);
|
|
24
|
+
m(n, ``);
|
|
25
|
+
} catch (s) {
|
|
26
|
+
console.error("Image upload failed:", s), alert("Image upload failed.");
|
|
25
27
|
}
|
|
26
28
|
}, c.click();
|
|
27
|
-
},
|
|
29
|
+
}, l?.appendChild(a);
|
|
28
30
|
};
|
|
29
31
|
}
|
|
30
32
|
export {
|
|
31
|
-
|
|
33
|
+
f as imagePickerPlugin
|
|
32
34
|
};
|
|
33
35
|
//# sourceMappingURL=imagePicker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagePicker.js","sources":["../../src/plugins/imagePicker.ts"],"sourcesContent":["// plugins/imagePicker.ts\n// Adds a toolbar button to insert images. Supports URL or file -> blob URL.\n// Optional uploader(file) => Promise<string> to persist and return a real URL.\n\nexport type ImagePickerOptions = {\n uploader?: (file: File) => Promise<string>;\n label?: string; // button label or emoji\n title?: string; // tooltip\n};\n\nfunction insertAtCursor(editor: any, text: string) {\n const ta = editor.textarea as HTMLTextAreaElement;\n const s = ta.selectionStart ?? 0, e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview?.();\n ta.focus();\n}\n\nexport function imagePickerPlugin(opts: ImagePickerOptions = {}) {\n const label = opts.label ?? '🖼️';\n const title = opts.title ?? 'Insert image';\n\n return (editor: any) => {\n // Find or create a toolbar container\n const bar = editor.container?.querySelector?.('.marzipan-toolbar') as HTMLElement\n ?? editor.container;\n\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.title = title;\n btn.className = 'mz-btn mz-btn-image';\n btn.textContent = label;\n\n btn.onclick = async () => {\n const
|
|
1
|
+
{"version":3,"file":"imagePicker.js","sources":["../../src/plugins/imagePicker.ts"],"sourcesContent":["// plugins/imagePicker.ts\n// Adds a toolbar button to insert images. Supports URL or file -> blob URL.\n// Optional uploader(file) => Promise<string> to persist and return a real URL.\n\nexport type ImagePickerOptions = {\n uploader?: (file: File) => Promise<string>;\n label?: string; // button label or emoji\n title?: string; // tooltip\n placeholder?: string; // default value for prompt\n promptMessage?: string; // custom prompt message\n};\n\nfunction insertAtCursor(editor: any, text: string) {\n const ta = editor.textarea as HTMLTextAreaElement;\n const s = ta.selectionStart ?? 0, e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview?.();\n ta.focus();\n}\n\nexport function imagePickerPlugin(opts: ImagePickerOptions = {}) {\n const label = opts.label ?? '🖼️';\n const title = opts.title ?? 'Insert image';\n\n return (editor: any) => {\n // Find or create a toolbar container\n const bar = editor.container?.querySelector?.('.marzipan-toolbar') as HTMLElement\n ?? editor.container;\n\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.title = title;\n btn.className = 'mz-btn mz-btn-image';\n btn.textContent = label;\n\n btn.onclick = async () => {\n const promptMessage = opts.promptMessage ?? 'Paste an image URL, or type \"upload\" to pick a file:';\n const initialValue = opts.placeholder ?? '';\n const mode = prompt(promptMessage, initialValue);\n if (!mode) return;\n\n const normalized = mode.trim();\n if (!normalized) return;\n\n if (normalized.toLowerCase() !== 'upload') {\n insertAtCursor(editor, ``);\n return;\n }\n\n const input = document.createElement('input');\n input.type = 'file';\n input.accept = 'image/*';\n input.onchange = async () => {\n const file = input.files?.[0];\n if (!file) return;\n try {\n const url = opts.uploader ? await opts.uploader(file) : URL.createObjectURL(file);\n insertAtCursor(editor, ``);\n } catch (e) {\n console.error('Image upload failed:', e);\n alert('Image upload failed.');\n }\n };\n input.click();\n };\n\n bar?.appendChild(btn);\n };\n}\n"],"names":["insertAtCursor","editor","text","ta","s","e","imagePickerPlugin","opts","label","title","bar","btn","promptMessage","initialValue","mode","normalized","input","file","url"],"mappings":"AAYA,SAASA,EAAeC,GAAaC,GAAc;AACjD,QAAMC,IAAKF,EAAO,UACZG,IAAID,EAAG,kBAAkB,GAAGE,IAAIF,EAAG,gBAAgB;AACzD,EAAAA,EAAG,aAAaD,GAAME,GAAGC,GAAG,KAAK,GACjCJ,EAAO,gBAAA,GACPE,EAAG,MAAA;AACL;AAEO,SAASG,EAAkBC,IAA2B,IAAI;AAC/D,QAAMC,IAAQD,EAAK,SAAS,OACtBE,IAAQF,EAAK,SAAS;AAE5B,SAAO,CAACN,MAAgB;AAEtB,UAAMS,IAAMT,EAAO,WAAW,gBAAgB,mBAAmB,KAC5DA,EAAO,WAENU,IAAM,SAAS,cAAc,QAAQ;AAC3C,IAAAA,EAAI,OAAO,UACXA,EAAI,QAAQF,GACZE,EAAI,YAAY,uBAChBA,EAAI,cAAcH,GAElBG,EAAI,UAAU,YAAY;AACxB,YAAMC,IAAgBL,EAAK,iBAAiB,wDACtCM,IAAeN,EAAK,eAAe,IACnCO,IAAO,OAAOF,GAAeC,CAAY;AAC/C,UAAI,CAACC,EAAM;AAEX,YAAMC,IAAaD,EAAK,KAAA;AACxB,UAAI,CAACC,EAAY;AAEjB,UAAIA,EAAW,YAAA,MAAkB,UAAU;AACzC,QAAAf,EAAeC,GAAQ,eAAec,CAAU,GAAG;AACnD;AAAA,MACF;AAEA,YAAMC,IAAQ,SAAS,cAAc,OAAO;AAC5C,MAAAA,EAAM,OAAO,QACbA,EAAM,SAAS,WACfA,EAAM,WAAW,YAAY;AAC3B,cAAMC,IAAOD,EAAM,QAAQ,CAAC;AAC5B,YAAKC;AACL,cAAI;AACF,kBAAMC,IAAMX,EAAK,WAAW,MAAMA,EAAK,SAASU,CAAI,IAAI,IAAI,gBAAgBA,CAAI;AAChF,YAAAjB,EAAeC,GAAQ,KAAKgB,EAAK,IAAI,KAAKC,CAAG,GAAG;AAAA,UAClD,SAASb,GAAG;AACV,oBAAQ,MAAM,wBAAwBA,CAAC,GACvC,MAAM,sBAAsB;AAAA,UAC9B;AAAA,MACF,GACAW,EAAM,MAAA;AAAA,IACR,GAEAN,GAAK,YAAYC,CAAG;AAAA,EACtB;AACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imagePickerPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/imagePickerPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEpG,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,kBAAkB,yBAM1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mermaidExternal.d.ts","sourceRoot":"","sources":["../../src/plugins/mermaidExternal.ts"],"names":[],"mappings":"AAIA,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAiBnE,QAAQ,GAAG,UAwCpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mermaidPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/mermaidPlugin.ts"],"names":[],"mappings":"AACA,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,GAAG,IAIhC,QAAQ,GAAG,UA8BpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableGenerator.d.ts","sourceRoot":"","sources":["../../src/plugins/tableGenerator.ts"],"names":[],"mappings":"AAcA,wBAAgB,oBAAoB,KAC1B,QAAQ,GAAG,UAuBpB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type MzEditor = {
|
|
2
|
+
container: HTMLElement;
|
|
3
|
+
textarea: HTMLTextAreaElement;
|
|
4
|
+
updatePreview: () => void;
|
|
5
|
+
};
|
|
6
|
+
export interface TableGridPluginOptions {
|
|
7
|
+
maxRows?: number;
|
|
8
|
+
maxColumns?: number;
|
|
9
|
+
maxCols?: number;
|
|
10
|
+
label?: string;
|
|
11
|
+
title?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function tableGridPlugin(opts?: TableGridPluginOptions): (editor: MzEditor) => void;
|
|
14
|
+
export declare const tableGridStyles = "\n.mz-pop {\n position: absolute; z-index: 9999; user-select: none;\n background: var(--mz-pop-bg, #111); color: var(--mz-pop-fg, #eee);\n border: 1px solid var(--mz-pop-bd, #333); border-radius: 10px;\n box-shadow: 0 8px 24px rgba(0,0,0,.35); padding: 10px;\n}\n.mz-tablegrid {\n display: grid; grid-template-rows: repeat(var(--r), 16px);\n grid-template-columns: repeat(var(--c), 16px);\n gap: 4px; margin: 4px;\n}\n.mz-tablegrid .mz-cell {\n width: 16px; height: 16px; border-radius: 4px;\n background: var(--mz-cell-bg, #1d1f23); border: 1px solid var(--mz-cell-bd, #2b2f36);\n}\n.mz-tablegrid .mz-cell.sel {\n background: var(--mz-cell-sel-bg, #2f6feb); border-color: var(--mz-cell-sel-bd, #3b82f6);\n}\n.mz-tablegrid-status { font-size: 12px; opacity: .8; padding: 6px 4px 2px; text-align: center; }\n.mz-btn { cursor: pointer; }\n";
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=tableGridPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableGridPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tableGridPlugin.ts"],"names":[],"mappings":"AAKA,KAAK,QAAQ,GAAG;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAWD,wBAAgB,eAAe,CAAC,IAAI,GAAE,sBAA2B,IAMvD,QAAQ,QAAQ,UAiFzB;AAGD,eAAO,MAAM,eAAe,o1BAqB3B,CAAC"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { b as h } from "../table-DMIy93NJ.js";
|
|
2
|
-
function
|
|
3
|
-
const o =
|
|
4
|
-
o.setRangeText(i, m, p, "end"),
|
|
2
|
+
function C(n, i) {
|
|
3
|
+
const o = n.textarea, m = o.selectionStart ?? 0, p = o.selectionEnd ?? 0;
|
|
4
|
+
o.setRangeText(i, m, p, "end"), n.updatePreview(), o.focus();
|
|
5
5
|
}
|
|
6
|
-
function E(
|
|
7
|
-
const i = Math.max(1,
|
|
6
|
+
function E(n = {}) {
|
|
7
|
+
const i = Math.max(1, n.maxRows ?? 10), o = Math.max(1, n.maxColumns ?? n.maxCols ?? 10), m = n.label ?? "▦", p = n.title ?? "Insert table";
|
|
8
8
|
return (u) => {
|
|
9
|
-
const z = u.container.querySelector(".marzipan-toolbar") ?? u.container,
|
|
10
|
-
|
|
9
|
+
const z = u.container.querySelector(".marzipan-toolbar") ?? u.container, r = document.createElement("button");
|
|
10
|
+
r.type = "button", r.className = "mz-btn mz-btn-tablegrid", r.title = p, r.textContent = m;
|
|
11
11
|
let e = null;
|
|
12
|
-
function
|
|
13
|
-
e?.remove(), e = null, document.removeEventListener("click", g, !0), window.removeEventListener("resize",
|
|
12
|
+
function l() {
|
|
13
|
+
e?.remove(), e = null, document.removeEventListener("click", g, !0), window.removeEventListener("resize", l), window.removeEventListener("scroll", l, !0);
|
|
14
14
|
}
|
|
15
15
|
function g(t) {
|
|
16
|
-
e && (t.target instanceof Node && (e.contains(t.target) ||
|
|
16
|
+
e && (t.target instanceof Node && (e.contains(t.target) || r.contains(t.target)) || l());
|
|
17
17
|
}
|
|
18
18
|
function v() {
|
|
19
19
|
if (e) {
|
|
20
|
-
|
|
20
|
+
l();
|
|
21
21
|
return;
|
|
22
22
|
}
|
|
23
23
|
e = document.createElement("div"), e.className = "mz-pop mz-tablegrid-pop";
|
|
@@ -25,27 +25,27 @@ function E(r) {
|
|
|
25
25
|
t.className = "mz-tablegrid", t.style.setProperty("--r", String(i)), t.style.setProperty("--c", String(o));
|
|
26
26
|
const d = document.createElement("div");
|
|
27
27
|
d.className = "mz-tablegrid-status", d.textContent = "0 × 0";
|
|
28
|
-
for (let
|
|
28
|
+
for (let a = 1; a <= i; a++)
|
|
29
29
|
for (let s = 1; s <= o; s++) {
|
|
30
30
|
const c = document.createElement("div");
|
|
31
|
-
c.className = "mz-cell", c.dataset.r = String(
|
|
32
|
-
d.textContent = `${
|
|
31
|
+
c.className = "mz-cell", c.dataset.r = String(a), c.dataset.c = String(s), c.onmouseenter = () => {
|
|
32
|
+
d.textContent = `${a} × ${s}`, t.querySelectorAll(".mz-cell").forEach((b) => {
|
|
33
33
|
const f = Number(b.dataset.r), w = Number(b.dataset.c);
|
|
34
|
-
b.classList.toggle("sel", f <=
|
|
34
|
+
b.classList.toggle("sel", f <= a && w <= s);
|
|
35
35
|
});
|
|
36
36
|
}, c.onclick = () => {
|
|
37
|
-
|
|
38
|
-
${h(
|
|
39
|
-
`),
|
|
37
|
+
C(u, `
|
|
38
|
+
${h(a, s)}
|
|
39
|
+
`), l();
|
|
40
40
|
}, t.appendChild(c);
|
|
41
41
|
}
|
|
42
42
|
e.appendChild(t), e.appendChild(d), document.body.appendChild(e);
|
|
43
|
-
const x =
|
|
43
|
+
const x = r.getBoundingClientRect();
|
|
44
44
|
e.style.left = `${Math.round(window.scrollX + x.left)}px`, e.style.top = `${Math.round(window.scrollY + x.bottom + 6)}px`, setTimeout(() => {
|
|
45
|
-
document.addEventListener("click", g, !0), window.addEventListener("resize",
|
|
45
|
+
document.addEventListener("click", g, !0), window.addEventListener("resize", l), window.addEventListener("scroll", l, !0);
|
|
46
46
|
}, 0);
|
|
47
47
|
}
|
|
48
|
-
|
|
48
|
+
r.onclick = v, z.appendChild(r);
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
51
|
const k = `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableGridPlugin.js","sources":["../../src/plugins/tableGridPlugin.ts"],"sourcesContent":["// plugins/tableGridPlugin.ts\n// Zero-dep \"grid popover\" table inserter (like Notion). GFM markdown output.\n\nimport { buildTableMarkdown } from './utils/table';\n\ntype MzEditor = {\n container: HTMLElement;\n textarea: HTMLTextAreaElement;\n updatePreview: () => void;\n};\n\nfunction insertAtCursor(editor: MzEditor, text: string) {\n const ta = editor.textarea;\n const s = ta.selectionStart ?? 0;\n const e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview();\n ta.focus();\n}\n\nexport function tableGridPlugin(opts
|
|
1
|
+
{"version":3,"file":"tableGridPlugin.js","sources":["../../src/plugins/tableGridPlugin.ts"],"sourcesContent":["// plugins/tableGridPlugin.ts\n// Zero-dep \"grid popover\" table inserter (like Notion). GFM markdown output.\n\nimport { buildTableMarkdown } from './utils/table';\n\ntype MzEditor = {\n container: HTMLElement;\n textarea: HTMLTextAreaElement;\n updatePreview: () => void;\n};\n\nexport interface TableGridPluginOptions {\n maxRows?: number;\n maxColumns?: number;\n maxCols?: number;\n label?: string;\n title?: string;\n}\n\nfunction insertAtCursor(editor: MzEditor, text: string) {\n const ta = editor.textarea;\n const s = ta.selectionStart ?? 0;\n const e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview();\n ta.focus();\n}\n\nexport function tableGridPlugin(opts: TableGridPluginOptions = {}) {\n const resolvedMaxRows = Math.max(1, opts.maxRows ?? 10);\n const resolvedMaxCols = Math.max(1, opts.maxColumns ?? opts.maxCols ?? 10);\n const label = opts.label ?? '▦';\n const title = opts.title ?? 'Insert table';\n\n return (editor: MzEditor) => {\n const bar = editor.container.querySelector('.marzipan-toolbar') as HTMLElement ?? editor.container;\n\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.className = 'mz-btn mz-btn-tablegrid';\n btn.title = title;\n btn.textContent = label;\n\n let pop: HTMLElement | null = null;\n\n function closePop() {\n pop?.remove();\n pop = null;\n document.removeEventListener('click', outsideClose, true);\n window.removeEventListener('resize', closePop);\n window.removeEventListener('scroll', closePop, true);\n }\n\n function outsideClose(e: MouseEvent) {\n if (!pop) return;\n if (e.target instanceof Node && (pop.contains(e.target) || btn.contains(e.target))) return;\n closePop();\n }\n\n function openPop() {\n if (pop) { closePop(); return; }\n\n pop = document.createElement('div');\n pop.className = 'mz-pop mz-tablegrid-pop';\n\n const grid = document.createElement('div');\n grid.className = 'mz-tablegrid';\n grid.style.setProperty('--r', String(resolvedMaxRows));\n grid.style.setProperty('--c', String(resolvedMaxCols));\n\n const status = document.createElement('div');\n status.className = 'mz-tablegrid-status';\n status.textContent = '0 × 0';\n\n for (let r = 1; r <= resolvedMaxRows; r++) {\n for (let c = 1; c <= resolvedMaxCols; c++) {\n const cell = document.createElement('div');\n cell.className = 'mz-cell';\n cell.dataset.r = String(r);\n cell.dataset.c = String(c);\n cell.onmouseenter = () => {\n status.textContent = `${r} × ${c}`;\n // highlight\n grid.querySelectorAll<HTMLElement>('.mz-cell').forEach(el => {\n const rr = Number(el.dataset.r), cc = Number(el.dataset.c);\n el.classList.toggle('sel', rr <= r && cc <= c);\n });\n };\n cell.onclick = () => {\n insertAtCursor(editor, `\\n${buildTableMarkdown(r, c)}\\n`);\n closePop();\n };\n grid.appendChild(cell);\n }\n }\n\n pop.appendChild(grid);\n pop.appendChild(status);\n document.body.appendChild(pop);\n\n // position under button\n const br = btn.getBoundingClientRect();\n pop.style.left = `${Math.round(window.scrollX + br.left)}px`;\n pop.style.top = `${Math.round(window.scrollY + br.bottom + 6)}px`;\n\n setTimeout(() => {\n document.addEventListener('click', outsideClose, true);\n window.addEventListener('resize', closePop);\n window.addEventListener('scroll', closePop, true);\n }, 0);\n }\n\n btn.onclick = openPop;\n bar.appendChild(btn);\n };\n}\n\n// Minimal styles (inject once in your app)\nexport const tableGridStyles = `\n.mz-pop {\n position: absolute; z-index: 9999; user-select: none;\n background: var(--mz-pop-bg, #111); color: var(--mz-pop-fg, #eee);\n border: 1px solid var(--mz-pop-bd, #333); border-radius: 10px;\n box-shadow: 0 8px 24px rgba(0,0,0,.35); padding: 10px;\n}\n.mz-tablegrid {\n display: grid; grid-template-rows: repeat(var(--r), 16px);\n grid-template-columns: repeat(var(--c), 16px);\n gap: 4px; margin: 4px;\n}\n.mz-tablegrid .mz-cell {\n width: 16px; height: 16px; border-radius: 4px;\n background: var(--mz-cell-bg, #1d1f23); border: 1px solid var(--mz-cell-bd, #2b2f36);\n}\n.mz-tablegrid .mz-cell.sel {\n background: var(--mz-cell-sel-bg, #2f6feb); border-color: var(--mz-cell-sel-bd, #3b82f6);\n}\n.mz-tablegrid-status { font-size: 12px; opacity: .8; padding: 6px 4px 2px; text-align: center; }\n.mz-btn { cursor: pointer; }\n`;\n"],"names":["insertAtCursor","editor","text","ta","s","e","tableGridPlugin","opts","resolvedMaxRows","resolvedMaxCols","label","title","bar","btn","pop","closePop","outsideClose","openPop","grid","status","r","c","cell","el","rr","cc","buildTableMarkdown","br","tableGridStyles"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tablePlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tablePlugin.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAWD,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,IAMlD,QAAQ,GAAG,UAuBpB"}
|
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
import { r as
|
|
2
|
-
function
|
|
3
|
-
const
|
|
4
|
-
|
|
1
|
+
import { r as i, b as f } from "../table-DMIy93NJ.js";
|
|
2
|
+
function p(t, o) {
|
|
3
|
+
const e = t.textarea, l = e.selectionStart ?? 0, r = e.selectionEnd ?? 0;
|
|
4
|
+
e.setRangeText(o, l, r, "end"), t.updatePreview?.(), e.focus();
|
|
5
5
|
}
|
|
6
|
-
function
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
6
|
+
function x(t = {}) {
|
|
7
|
+
const o = Math.max(1, t.defaultRows ?? 2), e = Math.max(1, t.defaultColumns ?? 2), l = t.label ?? "▦", r = t.title ?? "Insert table";
|
|
8
|
+
return (s) => {
|
|
9
|
+
const a = s.container.querySelector(".marzipan-toolbar");
|
|
10
|
+
if (!a) return;
|
|
11
|
+
const n = document.createElement("button");
|
|
12
|
+
n.type = "button", n.title = r, n.textContent = l, n.onclick = () => {
|
|
13
|
+
const b = prompt("Rows (excluding header)?", String(o)), c = i(b, o);
|
|
14
|
+
if (c === null) return;
|
|
15
|
+
const m = prompt("Columns?", String(e)), u = i(m, e);
|
|
16
|
+
if (u === null) return;
|
|
17
|
+
const d = f(c, u);
|
|
18
|
+
p(s, `
|
|
19
|
+
${d}
|
|
19
20
|
`);
|
|
20
|
-
},
|
|
21
|
+
}, a.appendChild(n);
|
|
21
22
|
};
|
|
22
23
|
}
|
|
23
24
|
export {
|
|
24
|
-
|
|
25
|
+
x as tablePlugin
|
|
25
26
|
};
|
|
26
27
|
//# sourceMappingURL=tablePlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tablePlugin.js","sources":["../../src/plugins/tablePlugin.ts"],"sourcesContent":["// tablePlugin.ts\n\nimport { buildTableMarkdown, resolvePositiveInteger } from './utils/table';\n\nfunction insertAtCursor(editor: any, text: string) {\n const ta = editor.textarea as HTMLTextAreaElement;\n const s = ta.selectionStart ?? 0;\n const e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview();\n ta.focus();\n}\n\nexport function tablePlugin() {\n return (editor: any) => {\n const bar = editor.container.querySelector('.marzipan-toolbar') as HTMLElement;\n if (!bar) return;\n\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.title =
|
|
1
|
+
{"version":3,"file":"tablePlugin.js","sources":["../../src/plugins/tablePlugin.ts"],"sourcesContent":["// tablePlugin.ts\n\nimport { buildTableMarkdown, resolvePositiveInteger } from './utils/table';\n\nexport interface TablePluginOptions {\n defaultRows?: number;\n defaultColumns?: number;\n label?: string;\n title?: string;\n}\n\nfunction insertAtCursor(editor: any, text: string) {\n const ta = editor.textarea as HTMLTextAreaElement;\n const s = ta.selectionStart ?? 0;\n const e = ta.selectionEnd ?? 0;\n ta.setRangeText(text, s, e, 'end');\n editor.updatePreview?.();\n ta.focus();\n}\n\nexport function tablePlugin(options: TablePluginOptions = {}) {\n const fallbackRows = Math.max(1, options.defaultRows ?? 2);\n const fallbackCols = Math.max(1, options.defaultColumns ?? 2);\n const label = options.label ?? '▦';\n const title = options.title ?? 'Insert table';\n\n return (editor: any) => {\n const bar = editor.container.querySelector('.marzipan-toolbar') as HTMLElement;\n if (!bar) return;\n\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.title = title;\n btn.textContent = label;\n btn.onclick = () => {\n const rowsInput = prompt('Rows (excluding header)?', String(fallbackRows));\n const rows = resolvePositiveInteger(rowsInput, fallbackRows);\n if (rows === null) return;\n\n const colsInput = prompt('Columns?', String(fallbackCols));\n const cols = resolvePositiveInteger(colsInput, fallbackCols);\n if (cols === null) return;\n\n const md = buildTableMarkdown(rows, cols);\n insertAtCursor(editor, `\\n${md}\\n`);\n };\n\n bar.appendChild(btn);\n };\n}\n"],"names":["insertAtCursor","editor","text","ta","s","e","tablePlugin","options","fallbackRows","fallbackCols","label","title","bar","btn","rowsInput","rows","resolvePositiveInteger","colsInput","cols","md","buildTableMarkdown"],"mappings":";AAWA,SAASA,EAAeC,GAAaC,GAAc;AACjD,QAAMC,IAAKF,EAAO,UACZG,IAAID,EAAG,kBAAkB,GACzBE,IAAIF,EAAG,gBAAgB;AAC7B,EAAAA,EAAG,aAAaD,GAAME,GAAGC,GAAG,KAAK,GACjCJ,EAAO,gBAAA,GACPE,EAAG,MAAA;AACL;AAEO,SAASG,EAAYC,IAA8B,IAAI;AAC5D,QAAMC,IAAe,KAAK,IAAI,GAAGD,EAAQ,eAAe,CAAC,GACnDE,IAAe,KAAK,IAAI,GAAGF,EAAQ,kBAAkB,CAAC,GACtDG,IAAQH,EAAQ,SAAS,KACzBI,IAAQJ,EAAQ,SAAS;AAE/B,SAAO,CAACN,MAAgB;AACtB,UAAMW,IAAMX,EAAO,UAAU,cAAc,mBAAmB;AAC9D,QAAI,CAACW,EAAK;AAEV,UAAMC,IAAM,SAAS,cAAc,QAAQ;AAC3C,IAAAA,EAAI,OAAO,UACXA,EAAI,QAAQF,GACZE,EAAI,cAAcH,GAClBG,EAAI,UAAU,MAAM;AAClB,YAAMC,IAAY,OAAO,4BAA4B,OAAON,CAAY,CAAC,GACnEO,IAAOC,EAAuBF,GAAWN,CAAY;AAC3D,UAAIO,MAAS,KAAM;AAEnB,YAAME,IAAY,OAAO,YAAY,OAAOR,CAAY,CAAC,GACnDS,IAAOF,EAAuBC,GAAWR,CAAY;AAC3D,UAAIS,MAAS,KAAM;AAEnB,YAAMC,IAAKC,EAAmBL,GAAMG,CAAI;AACxC,MAAAlB,EAAeC,GAAQ;AAAA,EAAKkB,CAAE;AAAA,CAAI;AAAA,IACpC,GAEAP,EAAI,YAAYC,CAAG;AAAA,EACrB;AACF;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type MarzipanLike = {
|
|
2
|
+
options: {
|
|
3
|
+
hooks?: {
|
|
4
|
+
afterPreviewRender?: (root: HTMLElement, editor: any) => void;
|
|
5
|
+
};
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
export declare function tinyHighlightPlugin(): (editor: MarzipanLike) => void;
|
|
9
|
+
export declare const tinyHighlightStyles = "\n.marzipan-highlight { line-height: 1.5; overflow: auto; border-radius: 8px; }\n.tok.kw { color: var(--mz-k, #c678dd); font-weight: 600; }\n.tok.type { color: var(--mz-t, #56b6c2); }\n.tok.prop { color: var(--mz-p, #e5c07b); }\n.tok.num { color: var(--mz-n, #d19a66); }\n.tok.str { color: var(--mz-s, #98c379); }\n.tok.com { color: var(--mz-c, #7f848e); font-style: italic; }\n.tok.tag { color: var(--mz-tag, #e06c75); }\n.tok.attr { color: var(--mz-attr, #61afef); }\n.tok.var { color: var(--mz-var, #61afef); }\n.tok.code { color: var(--mz-code, #e5c07b); }\n.tok.strong { font-weight: 700; }\n.tok.em { font-style: italic; }\n";
|
|
10
|
+
//# sourceMappingURL=tinyHighlight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tinyHighlight.d.ts","sourceRoot":"","sources":["../../src/plugins/tinyHighlight.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;CACxF,CAAC;AA6FF,wBAAgB,mBAAmB,KACzB,QAAQ,YAAY,UAqB7B;AAGD,eAAO,MAAM,mBAAmB,2nBAc/B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/plugins/utils/table.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAarE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgB5F"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export function buildTableMarkdown(rows, cols) {
|
|
2
|
+
const safeRows = Math.max(1, Math.floor(rows));
|
|
3
|
+
const safeCols = Math.max(1, Math.floor(cols));
|
|
4
|
+
const header = Array.from({ length: safeCols }, (_, i) => `Header ${i + 1}`).join(' | ');
|
|
5
|
+
const divider = Array.from({ length: safeCols }, () => '---').join(' | ');
|
|
6
|
+
const body = Array.from({ length: safeRows }, () => Array.from({ length: safeCols }, () => ' ').join(' | '))
|
|
7
|
+
.map((row) => `| ${row} |`)
|
|
8
|
+
.join('\n');
|
|
9
|
+
return `| ${header} |\n| ${divider} |\n${body}\n`;
|
|
10
|
+
}
|
|
11
|
+
export function resolvePositiveInteger(value, fallback) {
|
|
12
|
+
if (value === null) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
const trimmed = value.trim();
|
|
16
|
+
if (!trimmed) {
|
|
17
|
+
return Math.max(1, fallback);
|
|
18
|
+
}
|
|
19
|
+
const parsed = Number.parseInt(trimmed, 10);
|
|
20
|
+
if (Number.isNaN(parsed) || parsed < 1) {
|
|
21
|
+
return Math.max(1, fallback);
|
|
22
|
+
}
|
|
23
|
+
return parsed;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/plugins/utils/table.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,IAAY;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CACjD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CACxD;SACE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC;SAC1B,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,KAAK,MAAM,SAAS,OAAO,OAAO,IAAI,IAAI,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAoB,EAAE,QAAgB;IAC3E,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Toolbar } from './toolbar';
|
|
2
|
+
interface ShortcutHost {
|
|
3
|
+
textarea: HTMLTextAreaElement | null;
|
|
4
|
+
toolbar?: Toolbar;
|
|
5
|
+
}
|
|
6
|
+
export declare class ShortcutsManager {
|
|
7
|
+
private readonly editor;
|
|
8
|
+
private readonly textarea;
|
|
9
|
+
constructor(editor: ShortcutHost);
|
|
10
|
+
handleKeydown(event: KeyboardEvent): boolean;
|
|
11
|
+
handleAction(action: string): void;
|
|
12
|
+
destroy(): void;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=shortcuts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortcuts.d.ts","sourceRoot":"","sources":["../src/shortcuts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,UAAU,YAAY;IACpB,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAaD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6B;gBAE1C,MAAM,EAAE,YAAY;IAKhC,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAgC5C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAmClC,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import * as markdownActions from './actions';
|
|
2
|
+
const keyActionMap = {
|
|
3
|
+
b: 'toggleBold',
|
|
4
|
+
i: 'toggleItalic',
|
|
5
|
+
k: 'insertLink',
|
|
6
|
+
};
|
|
7
|
+
const codeActionMap = {
|
|
8
|
+
Digit7: 'toggleNumberedList',
|
|
9
|
+
Digit8: 'toggleBulletList',
|
|
10
|
+
};
|
|
11
|
+
export class ShortcutsManager {
|
|
12
|
+
constructor(editor) {
|
|
13
|
+
this.editor = editor;
|
|
14
|
+
this.textarea = editor.textarea;
|
|
15
|
+
}
|
|
16
|
+
handleKeydown(event) {
|
|
17
|
+
const platform = navigator.platform.toLowerCase();
|
|
18
|
+
const isMac = platform.includes('mac');
|
|
19
|
+
const modKey = isMac ? event.metaKey : event.ctrlKey;
|
|
20
|
+
if (!modKey)
|
|
21
|
+
return false;
|
|
22
|
+
const key = event.key.toLowerCase();
|
|
23
|
+
const codeAction = codeActionMap[event.code];
|
|
24
|
+
const action = codeAction ?? keyActionMap[key];
|
|
25
|
+
if (!action)
|
|
26
|
+
return false;
|
|
27
|
+
if (codeAction && !event.shiftKey) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
if (!codeAction && (key === 'b' || key === 'i' || key === 'k') && event.shiftKey) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
if (this.editor.toolbar) {
|
|
35
|
+
this.editor.toolbar.handleAction(action);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
this.handleAction(action);
|
|
39
|
+
}
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
handleAction(action) {
|
|
43
|
+
const textarea = this.textarea;
|
|
44
|
+
if (!textarea)
|
|
45
|
+
return;
|
|
46
|
+
textarea.focus();
|
|
47
|
+
switch (action) {
|
|
48
|
+
case 'toggleBold':
|
|
49
|
+
markdownActions.toggleBold(textarea);
|
|
50
|
+
break;
|
|
51
|
+
case 'toggleItalic':
|
|
52
|
+
markdownActions.toggleItalic(textarea);
|
|
53
|
+
break;
|
|
54
|
+
case 'insertLink':
|
|
55
|
+
markdownActions.insertLink(textarea);
|
|
56
|
+
break;
|
|
57
|
+
case 'toggleBulletList':
|
|
58
|
+
markdownActions.toggleBulletList(textarea);
|
|
59
|
+
break;
|
|
60
|
+
case 'toggleNumberedList':
|
|
61
|
+
markdownActions.toggleNumberedList(textarea);
|
|
62
|
+
break;
|
|
63
|
+
case 'toggleQuote':
|
|
64
|
+
markdownActions.toggleQuote(textarea);
|
|
65
|
+
break;
|
|
66
|
+
case 'toggleTaskList':
|
|
67
|
+
markdownActions.toggleTaskList(textarea);
|
|
68
|
+
break;
|
|
69
|
+
default:
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
textarea.dispatchEvent(new Event('input', { bubbles: true }));
|
|
73
|
+
}
|
|
74
|
+
destroy() {
|
|
75
|
+
// No resources to clean up; method included for API compatibility.
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=shortcuts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../src/shortcuts.ts"],"names":[],"mappings":"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"}
|