@clevertask/scribe 0.1.29 → 0.1.31

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.
Files changed (94) hide show
  1. package/README.md +39 -53
  2. package/dist/BarMenu-Bm5IfWVV.js +302 -0
  3. package/dist/components/Menu/BarMenu.d.ts.map +1 -1
  4. package/dist/components/Menu/BarMenu.js +1 -2
  5. package/dist/components/Menu/BubbleMenu.js +2 -2
  6. package/dist/components/Menu/CalloutBubbleMenu.js +2 -2
  7. package/dist/components/Menu/LinkBubbleMenu.d.ts.map +1 -1
  8. package/dist/components/Menu/LinkBubbleMenu.js +113 -103
  9. package/dist/components/Menu/LinkEditor.d.ts +0 -7
  10. package/dist/components/Menu/LinkEditor.d.ts.map +1 -1
  11. package/dist/components/Menu/LinkEditor.js +148 -157
  12. package/dist/components/Menu/Mobile/ListOptionBar.js +1 -1
  13. package/dist/components/Menu/TableBubbleMenu.js +3 -3
  14. package/dist/components/Menu/TableHeightSettings.js +3 -11
  15. package/dist/components/Menu/TableLayoutOptions.js +1 -5
  16. package/dist/components/Menu/linkBubbleMenuPlugin.d.ts.map +1 -1
  17. package/dist/components/Menu/linkBubbleMenuPlugin.js +9 -5
  18. package/dist/components/Scribe/extension/callout.js +7 -7
  19. package/dist/components/Scribe/extension/emoji/suggest.js +2 -2
  20. package/dist/components/Scribe/extension/extension-link.js +1 -2
  21. package/dist/components/Scribe/extension/extension-markdown-paste.js +2 -2
  22. package/dist/components/Scribe/extension/extension-selectedText.js +1 -1
  23. package/dist/components/Scribe/extension/external-link-preview/attributes.d.ts +0 -7
  24. package/dist/components/Scribe/extension/external-link-preview/attributes.d.ts.map +1 -1
  25. package/dist/components/Scribe/extension/external-link-preview/attributes.js +26 -51
  26. package/dist/components/Scribe/extension/external-link-preview/commands.d.ts +5 -12
  27. package/dist/components/Scribe/extension/external-link-preview/commands.d.ts.map +1 -1
  28. package/dist/components/Scribe/extension/external-link-preview/commands.js +56 -121
  29. package/dist/components/Scribe/extension/external-link-preview/index.d.ts +4 -6
  30. package/dist/components/Scribe/extension/external-link-preview/index.d.ts.map +1 -1
  31. package/dist/components/Scribe/extension/external-link-preview/index.js +5 -41
  32. package/dist/components/Scribe/extension/external-link-preview/render-html.d.ts +1 -0
  33. package/dist/components/Scribe/extension/external-link-preview/render-html.d.ts.map +1 -1
  34. package/dist/components/Scribe/extension/external-link-preview/render-html.js +17 -60
  35. package/dist/components/Scribe/extension/external-link-preview/schema.d.ts +2 -2
  36. package/dist/components/Scribe/extension/external-link-preview/schema.js +1 -1
  37. package/dist/components/Scribe/extension/external-link-preview/serialization.d.ts.map +1 -1
  38. package/dist/components/Scribe/extension/external-link-preview/serialization.js +29 -51
  39. package/dist/components/Scribe/extension/external-link-preview/types.d.ts +14 -17
  40. package/dist/components/Scribe/extension/external-link-preview/types.d.ts.map +1 -1
  41. package/dist/components/Scribe/extension/index.js +1 -2
  42. package/dist/components/Scribe/extension/resizable-table.js +2 -2
  43. package/dist/components/Scribe/extension/slashCommand/SlashCommandList.js +10 -14
  44. package/dist/components/Scribe/extension/slashCommand/index.js +2 -2
  45. package/dist/components/Scribe/extension/slashCommand/renderItems.js +2 -2
  46. package/dist/components/Scribe/extension/table-layout.js +1 -2
  47. package/dist/components/Scribe/extension/tableOfContents.js +1 -1
  48. package/dist/components/Scribe/index.d.ts +3 -9
  49. package/dist/components/Scribe/index.d.ts.map +1 -1
  50. package/dist/components/Scribe/index.js +7 -21
  51. package/dist/{dist-DnVcys79.js → dist-BoAzo5MN.js} +491 -598
  52. package/dist/{dist-CDJRm4fL.js → dist-BqlzKS-_.js} +9 -17
  53. package/dist/{dist-B0xwy1Q5.js → dist-SM4NoN4h.js} +174 -385
  54. package/dist/document-node-capabilities.js +1 -1
  55. package/dist/{extension-BPeoqfHR.js → extension-dz0CIf3r.js} +1 -1
  56. package/dist/extension-link-DxIXGCtV.js +931 -0
  57. package/dist/{html-to-markdown-DF93it73.js → html-to-markdown-DeRG9OPm.js} +1 -1
  58. package/dist/main.css +1 -141
  59. package/dist/main.js +2 -2
  60. package/dist/{markdown-to-html-BoK5O_j-.js → markdown-to-html-tCPjQ5u6.js} +23 -70
  61. package/dist/{menus-scgppp2C.js → menus-BKxcTUsl.js} +36 -118
  62. package/dist/{purify.es-q6CUdJQi.js → purify.es-CSWcs7f1.js} +1 -23
  63. package/dist/{schema-extensions-ITR9LEgX.js → schema-extensions-B9hR1VrD.js} +1335 -1360
  64. package/dist/schema-extensions.js +1 -2
  65. package/dist/schema.js +1 -1
  66. package/dist/{table-layout-iVolql5p.js → table-layout-ClqaGg1E.js} +36 -36
  67. package/dist/{tippy.esm-MjWnmeEn.js → tippy.esm-C8V6GlaF.js} +5 -17
  68. package/dist/utils/create-scribe-editor.d.ts +1 -1
  69. package/dist/utils/create-scribe-editor.d.ts.map +1 -1
  70. package/dist/utils/create-scribe-editor.js +1 -2
  71. package/dist/utils/html-to-markdown.js +1 -2
  72. package/dist/utils/index.js +4 -4
  73. package/dist/utils/markdown-to-html.js +1 -2
  74. package/package.json +10 -10
  75. package/dist/BarMenu-BC8XoC6e.js +0 -302
  76. package/dist/components/Menu/ExternalLinkDisplayOptions.d.ts +0 -13
  77. package/dist/components/Menu/ExternalLinkDisplayOptions.d.ts.map +0 -1
  78. package/dist/components/Menu/ExternalLinkDisplayOptions.js +0 -90
  79. package/dist/components/Scribe/extension/external-link-preview/node-view.d.ts +0 -3
  80. package/dist/components/Scribe/extension/external-link-preview/node-view.d.ts.map +0 -1
  81. package/dist/components/Scribe/extension/external-link-preview/node-view.js +0 -97
  82. package/dist/components/Scribe/extension/external-link-preview/normalization.d.ts +0 -7
  83. package/dist/components/Scribe/extension/external-link-preview/normalization.d.ts.map +0 -1
  84. package/dist/components/Scribe/extension/external-link-preview/normalization.js +0 -21
  85. package/dist/components/Scribe/extension/external-link-preview/paste.d.ts +0 -8
  86. package/dist/components/Scribe/extension/external-link-preview/paste.d.ts.map +0 -1
  87. package/dist/components/Scribe/extension/external-link-preview/paste.js +0 -53
  88. package/dist/components/Scribe/extension/external-link-preview/policy.d.ts +0 -7
  89. package/dist/components/Scribe/extension/external-link-preview/policy.d.ts.map +0 -1
  90. package/dist/components/Scribe/extension/external-link-preview/policy.js +0 -38
  91. package/dist/components/Scribe/extension/external-link-preview/resolver.d.ts +0 -23
  92. package/dist/components/Scribe/extension/external-link-preview/resolver.d.ts.map +0 -1
  93. package/dist/components/Scribe/extension/external-link-preview/resolver.js +0 -118
  94. package/dist/extension-link-RvaqaDqr.js +0 -934
@@ -1,89 +1,64 @@
1
1
  import { EXTERNAL_LINK_PREVIEW_DISPLAYS as e } from "./types.js";
2
2
  //#region lib/components/Scribe/extension/external-link-preview/attributes.ts
3
- var t = /^\/(?![\\/])/, n = /^https?:\/\//i, r = 16384, i = 16384, a = 512, o = 2048, s = 256, c = 16384, l = 128, u = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})$/, d = [
4
- "pageTitle",
5
- "description",
6
- "siteName",
7
- "faviconUrl",
8
- "imageUrl",
9
- "fetchedAt"
10
- ], f = (e) => {
3
+ var t = /^\/(?![\\/])/, n = /^https?:\/\//i, r = 16384, i = 16384, a = 512, o = 2048, s = 256, c = 16384, l = 128, u = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})$/, d = (e) => {
11
4
  for (let t of e) {
12
5
  let e = t.charCodeAt(0);
13
6
  if (e <= 31 || e === 127) return !0;
14
7
  }
15
8
  return !1;
16
- }, p = (e) => {
9
+ }, f = (e) => {
17
10
  let t = e.indexOf("//") + 2, n = [
18
11
  "/",
19
12
  "?",
20
13
  "#"
21
14
  ].map((n) => e.indexOf(n, t)).filter((e) => e >= 0), r = n.length ? Math.min(...n) : e.length;
22
15
  return e.slice(t, r).includes("@");
23
- }, m = "externalLinkPreview", h = "span[data-type=\"external-link-preview\"]", g = "a[data-link-preview-target]", _ = (t) => typeof t == "string" && e.some((e) => e === t), v = (e, t, { preserveWhitespace: n = !1 } = {}) => {
16
+ }, p = "externalLinkPreview", m = "span[data-type=\"external-link-preview\"]", h = "a[data-link-preview-target]", g = (t) => typeof t == "string" && e.some((e) => e === t), _ = (e, t, { preserveWhitespace: n = !1 } = {}) => {
24
17
  if (typeof e != "string") return null;
25
18
  let r = n ? e : e.trim();
26
- return !r.trim() || r.length > t || f(r) ? null : r;
27
- }, y = (e) => v(e, i, { preserveWhitespace: !0 }), b = (e) => {
28
- let t = v(e, r);
29
- if (!t || t.includes("\\") || !n.test(t) || p(t)) return null;
19
+ return !r.trim() || r.length > t || d(r) ? null : r;
20
+ }, v = (e) => _(e, i, { preserveWhitespace: !0 }), y = (e) => {
21
+ let t = _(e, r);
22
+ if (!t || t.includes("\\") || !n.test(t) || f(t)) return null;
30
23
  try {
31
24
  let e = new URL(t);
32
25
  return e.protocol !== "http:" && e.protocol !== "https:" || e.username || e.password ? null : t;
33
26
  } catch {
34
27
  return null;
35
28
  }
36
- }, x = (e) => {
37
- let r = v(e, c);
29
+ }, b = (e) => {
30
+ let r = _(e, c);
38
31
  if (!r || r.includes("\\")) return null;
39
32
  if (t.test(r)) return r;
40
- if (!n.test(r) || p(r)) return null;
33
+ if (!n.test(r) || f(r)) return null;
41
34
  try {
42
35
  let e = new URL(r);
43
36
  return (e.protocol === "http:" || e.protocol === "https:") && !e.username && !e.password ? r : null;
44
37
  } catch {
45
38
  return null;
46
39
  }
47
- }, S = (e) => {
48
- let t = v(e, l);
40
+ }, x = (e) => {
41
+ let t = _(e, l);
49
42
  if (!t || !u.test(t)) return null;
50
43
  let n = new Date(t);
51
44
  return Number.isNaN(n.getTime()) ? null : n.toISOString();
52
- }, C = (e) => ({
53
- pageTitle: v(e?.pageTitle, a),
54
- description: v(e?.description, o),
55
- siteName: v(e?.siteName, s),
56
- faviconUrl: x(e?.faviconUrl),
57
- imageUrl: x(e?.imageUrl),
58
- fetchedAt: S(e?.fetchedAt)
59
- }), w = (e) => {
60
- let t = C(e), n = {};
61
- return d.forEach((r) => {
62
- Object.prototype.hasOwnProperty.call(e, r) && e[r] !== void 0 && (n[r] = t[r]);
63
- }), n;
64
- }, T = (e) => {
65
- let t = b(e.href);
45
+ }, S = (e) => ({
46
+ pageTitle: _(e?.pageTitle, a),
47
+ description: _(e?.description, o),
48
+ siteName: _(e?.siteName, s),
49
+ faviconUrl: b(e?.faviconUrl),
50
+ imageUrl: b(e?.imageUrl),
51
+ fetchedAt: x(e?.fetchedAt)
52
+ }), C = (e) => {
53
+ let t = y(e.href);
66
54
  if (!t) return null;
67
- let n = C(e);
55
+ let n = S(e);
68
56
  return {
69
57
  href: t,
70
- linkText: y(e.linkText) ?? t,
71
- display: _(e.display) ? e.display : "compact",
58
+ linkText: v(e.linkText) ?? t,
59
+ display: g(e.display) ? e.display : "compact",
72
60
  ...n
73
61
  };
74
- }, E = (e) => {
75
- try {
76
- return new URL(e).hostname;
77
- } catch {
78
- return e;
79
- }
80
- }, D = (e) => {
81
- try {
82
- let t = new URL(e), n = t.pathname === "/" ? "" : t.pathname;
83
- return `${t.host}${n}`;
84
- } catch {
85
- return e;
86
- }
87
- }, O = (e, t) => t === "compact" ? e.linkText === e.href ? D(e.href) : e.linkText : e.pageTitle || e.siteName || E(e.href), k = (e) => !!(e.pageTitle || e.description || e.siteName || e.faviconUrl || e.imageUrl);
62
+ };
88
63
  //#endregion
89
- export { m as EXTERNAL_LINK_PREVIEW_NODE_NAME, h as EXTERNAL_LINK_PREVIEW_SELECTOR, g as EXTERNAL_LINK_PREVIEW_TARGET_SELECTOR, E as getExternalLinkPreviewHostname, D as getExternalLinkPreviewReadableLabel, O as getExternalLinkPreviewTitle, k as hasExternalLinkPreviewMetadata, _ as isExternalLinkPreviewDisplay, T as normalizeExternalLinkPreviewAttributes, b as normalizeExternalLinkPreviewHref, y as normalizeExternalLinkPreviewLinkText, x as normalizeExternalLinkPreviewMediaUrl, C as normalizeExternalLinkPreviewMetadata, w as normalizeExternalLinkPreviewMetadataPatch };
64
+ export { p as EXTERNAL_LINK_PREVIEW_NODE_NAME, m as EXTERNAL_LINK_PREVIEW_SELECTOR, h as EXTERNAL_LINK_PREVIEW_TARGET_SELECTOR, g as isExternalLinkPreviewDisplay, C as normalizeExternalLinkPreviewAttributes, y as normalizeExternalLinkPreviewHref, v as normalizeExternalLinkPreviewLinkText, b as normalizeExternalLinkPreviewMediaUrl, S as normalizeExternalLinkPreviewMetadata };
@@ -4,13 +4,13 @@ import type { ExternalLinkDisplay, ExternalLinkPreviewAttributes, InsertExternal
4
4
  declare module "@tiptap/core" {
5
5
  interface Commands<ReturnType> {
6
6
  externalLinkPreview: {
7
- /** Insert an enhanced external link at the current selection. */
7
+ /** @deprecated Insert a legacy node rendered as an ordinary link; no metadata is fetched. */
8
8
  insertExternalLinkPreview: (options: InsertExternalLinkPreviewOptions) => ReturnType;
9
- /** Convert the selected enhanced link or full-line Link mark to another presentation. */
9
+ /** @deprecated Only explicit conversion to plain is supported; compact/card return false. */
10
10
  setExternalLinkDisplay: (display: ExternalLinkDisplay, targetPosition?: number) => ReturnType;
11
11
  /** Atomically convert a preview to a Plain link while applying its edited destination. */
12
12
  convertExternalLinkPreviewToPlain: (href: string, targetPosition?: number) => ReturnType;
13
- /** Explicitly refresh metadata for the selected enhanced link. */
13
+ /** @deprecated Metadata fetching is retired; this command returns false. */
14
14
  refreshExternalLinkPreview: (targetPosition?: number) => ReturnType;
15
15
  /** Safely update the selected preview's destination, fallback text, or metadata. */
16
16
  updateExternalLinkPreview: (options: UpdateExternalLinkPreviewOptions, targetPosition?: number) => ReturnType;
@@ -21,13 +21,9 @@ interface PreviewContext {
21
21
  attributes: ExternalLinkPreviewAttributes;
22
22
  node: ProseMirrorNode;
23
23
  position: number;
24
- isSoleTextblockContent: boolean;
25
24
  }
26
25
  export declare const getSelectedExternalLinkPreview: (transaction: Transaction, targetPosition?: number) => PreviewContext | null;
27
- export declare const createExternalLinkPreviewCommands: ({ resolveMetadata, shouldPreview, }: {
28
- resolveMetadata: boolean;
29
- shouldPreview?: (href: string) => boolean;
30
- }) => {
26
+ export declare const createExternalLinkPreviewCommands: () => {
31
27
  insertExternalLinkPreview: (options: InsertExternalLinkPreviewOptions) => ({ dispatch, tr }: {
32
28
  dispatch?: (args?: unknown) => unknown;
33
29
  tr: Transaction;
@@ -40,10 +36,7 @@ export declare const createExternalLinkPreviewCommands: ({ resolveMetadata, shou
40
36
  dispatch?: (args?: unknown) => unknown;
41
37
  tr: Transaction;
42
38
  }) => boolean;
43
- refreshExternalLinkPreview: (targetPosition?: number) => ({ dispatch, tr }: {
44
- dispatch?: (args?: unknown) => unknown;
45
- tr: Transaction;
46
- }) => boolean;
39
+ refreshExternalLinkPreview: (_targetPosition?: number) => () => boolean;
47
40
  updateExternalLinkPreview: (options: UpdateExternalLinkPreviewOptions, targetPosition?: number) => ({ dispatch, tr }: {
48
41
  dispatch?: (args?: unknown) => unknown;
49
42
  tr: Transaction;
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,IAAI,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,OAAO,KAAK,EACV,mBAAmB,EACnB,6BAA6B,EAE7B,gCAAgC,EAChC,gCAAgC,EACjC,MAAM,SAAS,CAAC;AAEjB,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,QAAQ,CAAC,UAAU;QAC3B,mBAAmB,EAAE;YACnB,iEAAiE;YACjE,yBAAyB,EAAE,CAAC,OAAO,EAAE,gCAAgC,KAAK,UAAU,CAAC;YACrF,yFAAyF;YACzF,sBAAsB,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YAC9F,0FAA0F;YAC1F,iCAAiC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YACzF,kEAAkE;YAClE,0BAA0B,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YACpE,oFAAoF;YACpF,yBAAyB,EAAE,CACzB,OAAO,EAAE,gCAAgC,EACzC,cAAc,CAAC,EAAE,MAAM,KACpB,UAAU,CAAC;SACjB,CAAC;KACH;CACF;AAED,UAAU,cAAc;IACtB,UAAU,EAAE,6BAA6B,CAAC;IAC1C,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAWD,eAAO,MAAM,8BAA8B,gBAC5B,WAAW,mBACP,MAAM,KACtB,cAAc,GAAG,IAyCnB,CAAC;AAkHF,eAAO,MAAM,iCAAiC,wCAG3C;IACD,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CAC3C;IACC,yBAAyB,YACb,gCAAgC,wBACvB;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IA8ChF,sBAAsB,YACV,mBAAmB,mBAAmB,MAAM,wBACnC;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IA4FhF,iCAAiC,kBACf,MAAM,mBAAmB,MAAM,wBAC5B;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IA+BhF,0BAA0B,oBACN,MAAM,wBACL;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IAsBhF,yBAAyB,YACb,gCAAgC,mBAAmB,MAAM,wBAChD;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;CAsEhF,CAAC"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAQpD,OAAO,KAAK,EACV,mBAAmB,EACnB,6BAA6B,EAC7B,gCAAgC,EAChC,gCAAgC,EACjC,MAAM,SAAS,CAAC;AAEjB,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,QAAQ,CAAC,UAAU;QAC3B,mBAAmB,EAAE;YACnB,6FAA6F;YAC7F,yBAAyB,EAAE,CAAC,OAAO,EAAE,gCAAgC,KAAK,UAAU,CAAC;YACrF,6FAA6F;YAC7F,sBAAsB,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YAC9F,0FAA0F;YAC1F,iCAAiC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YACzF,4EAA4E;YAC5E,0BAA0B,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;YACpE,oFAAoF;YACpF,yBAAyB,EAAE,CACzB,OAAO,EAAE,gCAAgC,EACzC,cAAc,CAAC,EAAE,MAAM,KACpB,UAAU,CAAC;SACjB,CAAC;KACH;CACF;AAED,UAAU,cAAc;IACtB,UAAU,EAAE,6BAA6B,CAAC;IAC1C,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,8BAA8B,gBAC5B,WAAW,mBACP,MAAM,KACtB,cAAc,GAAG,IA+BnB,CAAC;AA6BF,eAAO,MAAM,iCAAiC;IAC5C,yBAAyB,YACb,gCAAgC,wBACvB;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IA0BhF,sBAAsB,YACV,mBAAmB,mBAAmB,MAAM,wBACnC;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IAoBhF,iCAAiC,kBACf,MAAM,mBAAmB,MAAM,wBAC5B;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;IAmBhF,0BAA0B,qBAAqB,MAAM;IACrD,yBAAyB,YACb,gCAAgC,mBAAmB,MAAM,wBAChD;QAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,EAAE,EAAE,WAAW,CAAA;KAAE;CAuDhF,CAAC"}
@@ -1,135 +1,70 @@
1
- import { v as e } from "../../../../dist-DnVcys79.js";
2
- import { EXTERNAL_LINK_PREVIEW_NODE_NAME as t, hasExternalLinkPreviewMetadata as n, normalizeExternalLinkPreviewAttributes as r, normalizeExternalLinkPreviewHref as i } from "./attributes.js";
3
- import { normalizeLinkUrl as a } from "../../../Menu/linkUrl.js";
4
- import { startExternalLinkPreviewResolution as o } from "./resolver.js";
5
- import { NodeSelection as s, TextSelection as c } from "@tiptap/pm/state";
1
+ import { v as e } from "../../../../dist-BoAzo5MN.js";
2
+ import { EXTERNAL_LINK_PREVIEW_NODE_NAME as t, normalizeExternalLinkPreviewAttributes as n, normalizeExternalLinkPreviewHref as r } from "./attributes.js";
3
+ import { normalizeLinkUrl as i } from "../../../Menu/linkUrl.js";
4
+ import { NodeSelection as a, TextSelection as o } from "@tiptap/pm/state";
6
5
  //#region lib/components/Scribe/extension/external-link-preview/commands.ts
7
- var l = (e, t) => {
8
- let { selection: n } = e, i = typeof t == "number";
6
+ var s = (e, t) => {
7
+ let { selection: r } = e, i = typeof t == "number";
9
8
  if (i && (!Number.isInteger(t) || t < 0 || t >= e.doc.content.size)) return null;
10
- let a = i ? t : n.from, o = i ? e.doc.nodeAt(a) : n instanceof s ? n.node : null;
11
- if (!o || o.type.name !== "externalLinkPreview") return null;
12
- let c = r(o.attrs);
13
- if (!c) return null;
14
- let l = e.doc.resolve(a);
15
- return {
9
+ let o = i ? t : r.from, s = i ? e.doc.nodeAt(o) : r instanceof a ? r.node : null;
10
+ if (!s || s.type.name !== "externalLinkPreview") return null;
11
+ let c = n(s.attrs);
12
+ return c ? {
16
13
  attributes: c,
17
- node: o,
18
- position: a,
19
- isSoleTextblockContent: l.parent.isTextblock && l.parent.childCount === 1 && l.parent.content.size === o.nodeSize
20
- };
21
- }, u = (t) => {
22
- let n = t.doc.type.schema.marks.link;
23
- if (!n) return null;
24
- let { selection: r } = t;
25
- if (!r.$from.sameParent(r.$to) || !r.$from.parent.isTextblock) return null;
26
- let a = e(r.$from, n), o = r.$from.start(), s = r.$from.parent;
27
- if (!a) return null;
28
- let c, l = !0, u = "";
29
- t.doc.nodesBetween(a.from, a.to, (e, t) => {
30
- if (!e.isText) {
31
- e.isInline && (l = !1);
32
- return;
33
- }
34
- let r = e.marks.find((e) => e.type === n), i = Math.max(a.from, t), o = Math.min(a.to, t + e.nodeSize);
35
- if (!r || e.marks.some((e) => e.type !== n) || c && r.attrs.href !== c.attrs.href) {
36
- l = !1;
37
- return;
38
- }
39
- c = r, u += e.text?.slice(i - t, o - t) ?? "";
40
- });
41
- let d = i(c?.attrs.href);
42
- return !l || !c || !d ? null : {
43
- href: d,
44
- linkText: u || d,
45
- mark: c,
46
- from: a.from,
47
- to: a.to,
48
- isSoleTextblockContent: a.from === o && a.to === o + s.content.size
49
- };
50
- }, d = (e, t) => {
51
- if (!t) return !0;
52
- try {
53
- return t(e);
54
- } catch {
55
- return !1;
56
- }
57
- }, f = (e, t) => {
58
- e.setSelection(s.create(e.doc, t));
59
- }, p = (e, t) => e.doc.type.schema.nodes.externalLinkPreview?.create(t) ?? null, m = (e, t, n = t.attributes.href, r = t.attributes.linkText) => {
14
+ node: s,
15
+ position: o
16
+ } : null;
17
+ }, c = (e, t) => {
18
+ e.setSelection(a.create(e.doc, t));
19
+ }, l = (e, t, n = t.attributes.href, r = t.attributes.linkText) => {
60
20
  let i = e.doc.type.schema.marks.link, a = e.doc.resolve(t.position).parent;
61
21
  if (!i || !a.type.allowsMarkType(i)) return !1;
62
- let o = e.doc.type.schema.text(r, [i.create({ href: n })]);
63
- return e.replaceWith(t.position, t.position + t.node.nodeSize, o), e.setSelection(c.create(e.doc, t.position, t.position + o.nodeSize)), !0;
64
- }, h = ({ resolveMetadata: e, shouldPreview: s }) => ({
65
- insertExternalLinkPreview: (i) => ({ dispatch: a, tr: c }) => {
66
- let l = r({
67
- ...i,
68
- linkText: i.linkText ?? i.href,
69
- display: i.display ?? "compact"
70
- }), u = c.doc.type.schema.nodes[t], { selection: p } = c, m = l?.display === "card" && !n(l);
71
- if (!l || !u || m && !e || !d(l.href, s) || !p.$from.sameParent(p.$to) || !p.$from.parent.isTextblock || l.display === "card" && p.$from.parent.content.size !== p.content().size) return !1;
72
- let h = p.$from.index();
73
- if (!p.$from.parent.canReplaceWith(h, h, u)) return !1;
74
- if (!a) return !0;
75
- let g = u.create(l), _ = p.from;
76
- return c.replaceRangeWith(p.from, p.to, g), f(c, _), m && o(c, _, l.href), !0;
22
+ let s = e.doc.type.schema.text(r, [i.create({ href: n })]);
23
+ return e.replaceWith(t.position, t.position + t.node.nodeSize, s), e.setSelection(o.create(e.doc, t.position, t.position + s.nodeSize)), !0;
24
+ }, u = () => ({
25
+ insertExternalLinkPreview: (e) => ({ dispatch: r, tr: i }) => {
26
+ let a = n({
27
+ ...e,
28
+ linkText: e.linkText ?? e.href,
29
+ display: e.display ?? "compact"
30
+ }), o = i.doc.type.schema.nodes[t], { selection: s } = i;
31
+ if (!a || !o || !s.$from.sameParent(s.$to) || !s.$from.parent.isTextblock || !s.$from.parent.canReplaceWith(s.$from.index(), s.$to.index(), o)) return !1;
32
+ if (r) {
33
+ let e = s.from;
34
+ i.replaceRangeWith(s.from, s.to, o.create(a)), c(i, e);
35
+ }
36
+ return !0;
77
37
  },
78
- setExternalLinkDisplay: (t, i) => ({ dispatch: a, tr: c }) => {
79
- let h = () => (c.setMeta("preventDispatch", !0), !1), g = l(c, i);
80
- if (g) {
81
- let r = t === "card" && !n(g.attributes);
82
- if (t === "card" && !g.isSoleTextblockContent) return h();
83
- if (t === "plain") {
84
- let e = c.doc.type.schema.marks.link, t = c.doc.resolve(g.position).parent;
85
- return !e || !t.type.allowsMarkType(e) ? h() : !a || m(c, g);
86
- }
87
- return t !== "compact" && t !== "card" || r && !e ? h() : !a || g.attributes.display === t || (c.setNodeMarkup(g.position, void 0, {
88
- ...g.attributes,
89
- display: t
90
- }), f(c, g.position), r && o(c, g.position, g.attributes.href), !0);
38
+ setExternalLinkDisplay: (t, n) => ({ dispatch: r, tr: i }) => {
39
+ if (t !== "plain") return i.setMeta("preventDispatch", !0), !1;
40
+ let a = s(i, n);
41
+ if (a) {
42
+ let e = i.doc.type.schema.marks.link, t = i.doc.resolve(a.position).parent;
43
+ return !!(e && t.type.allowsMarkType(e)) && (!r || l(i, a));
91
44
  }
92
- if (typeof i == "number") return h();
93
- let _ = u(c);
94
- if (!_ || t === "plain" || t === "card" && !e || t === "card" && !_.isSoleTextblockContent || !d(_.href, s)) return t === "plain" && _ ? !0 : h();
95
- let v = r({
96
- href: _.href,
97
- linkText: _.linkText,
98
- display: t
99
- }), y = v ? p(c, v) : null;
100
- return !v || !y ? h() : !a || (c.replaceWith(_.from, _.to, y), f(c, _.from), t === "card" && o(c, _.from, v.href), !0);
45
+ let o = i.doc.type.schema.marks.link;
46
+ return typeof n != "number" && !!(o && e(i.selection.$from, o));
101
47
  },
102
48
  convertExternalLinkPreviewToPlain: (e, t) => ({ dispatch: n, tr: r }) => {
103
- let i = () => (r.setMeta("preventDispatch", !0), !1), o = l(r, t), s = a(e);
104
- if (!o || !s) return i();
105
- let c = r.doc.type.schema.marks.link, u = r.doc.resolve(o.position).parent;
106
- return !c || !u.type.allowsMarkType(c) ? i() : !n || m(r, o, s, o.attributes.linkText === o.attributes.href ? s : o.attributes.linkText);
107
- },
108
- refreshExternalLinkPreview: (t) => ({ dispatch: n, tr: r }) => {
109
- let i = l(r, t);
110
- return !i || i.attributes.display !== "card" || !e || !d(i.attributes.href, s) ? !1 : (n && (typeof t == "number" && f(r, i.position), o(r, i.position, i.attributes.href), r.setMeta("addToHistory", !1)), !0);
49
+ let a = s(r, t), o = i(e), c = r.doc.type.schema.marks.link;
50
+ if (!a || !o || !c || !r.doc.resolve(a.position).parent.type.allowsMarkType(c)) return r.setMeta("preventDispatch", !0), !1;
51
+ let u = a.attributes.linkText === a.attributes.href ? o : a.attributes.linkText;
52
+ return !n || l(r, a, o, u);
111
53
  },
112
- updateExternalLinkPreview: (t, n) => ({ dispatch: a, tr: c }) => {
113
- let u = () => (c.setMeta("preventDispatch", !0), !1), p = l(c, n);
114
- if (!p) return u();
115
- let m = t.href ?? p.attributes.href, h = i(m), g = h !== p.attributes.href;
116
- if (!h || !d(h, s)) return u();
117
- let _ = Object.fromEntries(Object.entries(t).filter(([, e]) => e !== void 0)), v = g ? {
118
- pageTitle: null,
119
- description: null,
120
- siteName: null,
121
- faviconUrl: null,
122
- imageUrl: null,
123
- fetchedAt: null
124
- } : {}, y = r({
125
- ...p.attributes,
126
- ...v,
127
- ..._,
128
- href: h,
129
- linkText: t.linkText ?? (g && p.attributes.linkText === p.attributes.href ? h : p.attributes.linkText)
54
+ refreshExternalLinkPreview: (e) => () => !1,
55
+ updateExternalLinkPreview: (e, t) => ({ dispatch: i, tr: a }) => {
56
+ let o = () => (a.setMeta("preventDispatch", !0), !1), l = s(a, t);
57
+ if (!l) return o();
58
+ let u = e.href ?? l.attributes.href, d = r(u), f = d !== l.attributes.href;
59
+ if (!d) return o();
60
+ let p = Object.fromEntries(Object.entries(e).filter(([, e]) => e !== void 0)), m = n({
61
+ ...l.attributes,
62
+ ...p,
63
+ href: d,
64
+ linkText: e.linkText ?? (f && l.attributes.linkText === l.attributes.href ? d : l.attributes.linkText)
130
65
  });
131
- return y ? !Object.entries(y).some(([e, t]) => p.attributes[e] !== t) || !a || (c.setNodeMarkup(p.position, void 0, y), f(c, p.position), g && p.attributes.display === "card" && e && o(c, p.position, y.href), !0) : u();
66
+ return m ? (!Object.entries(m).some(([e, t]) => l.attributes[e] !== t) || !i || (a.setNodeMarkup(l.position, void 0, m), c(a, l.position)), !0) : o();
132
67
  }
133
68
  });
134
69
  //#endregion
135
- export { h as createExternalLinkPreviewCommands, l as getSelectedExternalLinkPreview };
70
+ export { u as createExternalLinkPreviewCommands, s as getSelectedExternalLinkPreview };
@@ -1,11 +1,9 @@
1
- import type { ExternalLinkPreviewOptions } from "./types";
2
1
  /**
3
- * Backend-agnostic enhanced external links. Consumers own metadata fetching through
4
- * the optional resolver; Scribe owns only presentation, conversion, and persistence.
5
- *
6
- * @experimental The link-preview API and built-in UI may change while this feature is tested.
2
+ * @deprecated Compatibility reader for saved external-link previews.
3
+ * Legacy attributes are retained, but links render as ordinary authored text.
4
+ * No metadata requests, preview creation UI, or automatic document conversions run.
7
5
  */
8
- export declare const ExternalLinkPreview: import("@tiptap/core").Node<ExternalLinkPreviewOptions, any>;
6
+ export declare const ExternalLinkPreview: import("@tiptap/core").Node<import("./types").ExternalLinkPreviewOptions, any>;
9
7
  export { EXTERNAL_LINK_PREVIEW_NODE_NAME } from "./attributes";
10
8
  export { EXTERNAL_LINK_PREVIEW_DISPLAYS } from "./types";
11
9
  export type { ExternalLinkDisplay, ExternalLinkPreviewAttributes, ExternalLinkPreviewDisplay, ExternalLinkPreviewMetadata, ExternalLinkPreviewOptions, ExternalLinkPreviewResolutionStatus, ExternalLinkPreviewResolver, ExternalLinkPreviewResolverContext, InsertExternalLinkPreviewOptions, UpdateExternalLinkPreviewOptions, } from "./types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,8DAoD9B,CAAC;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAC;AACzD,YAAY,EACV,mBAAmB,EACnB,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,mCAAmC,EACnC,2BAA2B,EAC3B,kCAAkC,EAClC,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/index.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,gFAI9B,CAAC;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAC;AACzD,YAAY,EACV,mBAAmB,EACnB,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,mCAAmC,EACnC,2BAA2B,EAC3B,kCAAkC,EAClC,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,SAAS,CAAC"}
@@ -1,46 +1,10 @@
1
1
  import { EXTERNAL_LINK_PREVIEW_DISPLAYS as e } from "./types.js";
2
2
  import { EXTERNAL_LINK_PREVIEW_NODE_NAME as t } from "./attributes.js";
3
3
  import { ExternalLinkPreviewSchema as n } from "./schema.js";
4
- import { r } from "../../../../dist-B0xwy1Q5.js";
5
- import { createExternalLinkPreviewResolverPlugin as i } from "./resolver.js";
6
- import { createExternalLinkPreviewCommands as a } from "./commands.js";
7
- import { ExternalLinkPreviewNodeView as o } from "./node-view.js";
8
- import { createExternalLinkPreviewNormalizationPlugin as s, createExternalLinkPreviewNormalizationTransaction as c } from "./normalization.js";
9
- import { createExternalLinkPreviewPastePlugin as l } from "./paste.js";
10
- import { createExternalLinkPreviewPolicyPlugin as u, createExternalLinkPreviewPolicyTransaction as d } from "./policy.js";
4
+ import { createExternalLinkPreviewCommands as r } from "./commands.js";
11
5
  //#region lib/components/Scribe/extension/external-link-preview/index.ts
12
- var f = n.extend({
13
- addCommands() {
14
- return a({
15
- resolveMetadata: !!this.options.resolve,
16
- shouldPreview: this.options.shouldPreview
17
- });
18
- },
19
- addNodeView() {
20
- return r(o, { trackNodeViewPosition: !0 });
21
- },
22
- onCreate() {
23
- if (this.editor.isDestroyed) return;
24
- let e = c(this.editor.state);
25
- e && this.editor.view.dispatch(e.setMeta("addToHistory", !1));
26
- let t = d(this.editor.state, this.options.shouldPreview);
27
- t && this.editor.view.dispatch(t);
28
- },
29
- addProseMirrorPlugins() {
30
- return [
31
- l({
32
- previewType: this.type,
33
- autoPreviewOnPaste: this.options.autoPreviewOnPaste === !0,
34
- shouldPreview: this.options.shouldPreview
35
- }),
36
- u(this.options.shouldPreview),
37
- s(),
38
- i({
39
- editor: this.editor,
40
- resolve: this.options.resolve
41
- })
42
- ];
43
- }
44
- });
6
+ var i = n.extend({ addCommands() {
7
+ return r();
8
+ } });
45
9
  //#endregion
46
- export { e as EXTERNAL_LINK_PREVIEW_DISPLAYS, t as EXTERNAL_LINK_PREVIEW_NODE_NAME, f as ExternalLinkPreview };
10
+ export { e as EXTERNAL_LINK_PREVIEW_DISPLAYS, t as EXTERNAL_LINK_PREVIEW_NODE_NAME, i as ExternalLinkPreview };
@@ -1,5 +1,6 @@
1
1
  import type { DOMOutputSpec } from "@tiptap/pm/model";
2
2
  import type { ExternalLinkPreviewAttributes } from "./types";
3
+ /** Preserve the legacy wrapper and attributes while displaying only its authored link. */
3
4
  export declare const renderExternalLinkPreviewHTML: ({ attributes, HTMLAttributes, }: {
4
5
  attributes: ExternalLinkPreviewAttributes;
5
6
  HTMLAttributes?: Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"render-html.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/render-html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AAiC7D,eAAO,MAAM,6BAA6B,oCAGvC;IACD,UAAU,EAAE,6BAA6B,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C,KAAG,aA4BH,CAAC"}
1
+ {"version":3,"file":"render-html.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/render-html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AAE7D,0FAA0F;AAC1F,eAAO,MAAM,6BAA6B,oCAGvC;IACD,UAAU,EAAE,6BAA6B,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C,KAAG,aAaH,CAAC"}
@@ -1,62 +1,19 @@
1
- import { z as e } from "../../../../dist-DnVcys79.js";
2
- import { getExternalLinkPreviewHostname as t, getExternalLinkPreviewTitle as n } from "./attributes.js";
3
- import { getExternalLinkPreviewDataAttributes as r } from "./serialization.js";
1
+ import { B as e } from "../../../../dist-BoAzo5MN.js";
2
+ import { getExternalLinkPreviewDataAttributes as t } from "./serialization.js";
4
3
  //#region lib/components/Scribe/extension/external-link-preview/render-html.ts
5
- var i = (e) => {
6
- let r = [[
7
- "span",
8
- { "data-link-preview-title": "" },
9
- n(e, e.display)
10
- ]], i = e.display === "card" ? e.siteName || t(e.href) : null;
11
- return i && r.push([
12
- "span",
13
- { "data-link-preview-site": "" },
14
- i
15
- ]), e.display === "card" && e.description && r.push([
16
- "span",
17
- { "data-link-preview-description": "" },
18
- e.description
19
- ]), [
20
- "span",
21
- { "data-link-preview-main": "" },
22
- e.display === "card" && e.faviconUrl ? ["img", {
23
- "data-link-preview-favicon": "",
24
- src: e.faviconUrl,
25
- alt: ""
26
- }] : [
27
- "span",
28
- {
29
- "data-link-preview-favicon-fallback": "",
30
- "aria-hidden": "true"
31
- },
32
- "↗"
33
- ],
34
- [
35
- "span",
36
- { "data-link-preview-copy": "" },
37
- ...r
38
- ]
39
- ];
40
- }, a = ({ attributes: t, HTMLAttributes: n }) => {
41
- let a = [];
42
- return t.display === "card" && t.imageUrl && a.push(["img", {
43
- "data-link-preview-image": "",
44
- src: t.imageUrl,
45
- alt: ""
46
- }]), a.push(i(t)), [
47
- "span",
48
- e(n ?? {}, r(t), { class: `scribe-external-link-preview scribe-external-link-preview--${t.display}` }),
49
- [
50
- "a",
51
- {
52
- "data-link-preview-target": "",
53
- href: t.href,
54
- target: "_blank",
55
- rel: "noopener noreferrer"
56
- },
57
- ...a
58
- ]
59
- ];
60
- };
4
+ var n = ({ attributes: n, HTMLAttributes: r }) => [
5
+ "span",
6
+ e(r ?? {}, t(n)),
7
+ [
8
+ "a",
9
+ {
10
+ "data-link-preview-target": "",
11
+ href: n.href,
12
+ target: "_blank",
13
+ rel: "noopener noreferrer"
14
+ },
15
+ n.linkText
16
+ ]
17
+ ];
61
18
  //#endregion
62
- export { a as renderExternalLinkPreviewHTML };
19
+ export { n as renderExternalLinkPreviewHTML };
@@ -1,8 +1,8 @@
1
1
  import { Node } from "@tiptap/core";
2
2
  import type { ExternalLinkPreviewOptions } from "./types";
3
3
  /**
4
- * The persistence schema for Scribe external-link previews. Interactive
5
- * behavior is layered onto this node by the regular Scribe editor entry point.
4
+ * Compatibility schema for saved external-link previews. Attributes survive
5
+ * round trips while both editor and headless output render ordinary authored links.
6
6
  */
7
7
  export declare const ExternalLinkPreviewSchema: Node<ExternalLinkPreviewOptions, any>;
8
8
  //# sourceMappingURL=schema.d.ts.map
@@ -1,4 +1,4 @@
1
- import { a as e } from "../../../../dist-DnVcys79.js";
1
+ import { a as e } from "../../../../dist-BoAzo5MN.js";
2
2
  import { EXTERNAL_LINK_PREVIEW_NODE_NAME as t, isExternalLinkPreviewDisplay as n, normalizeExternalLinkPreviewAttributes as r, normalizeExternalLinkPreviewHref as i, normalizeExternalLinkPreviewLinkText as a, normalizeExternalLinkPreviewMediaUrl as o, normalizeExternalLinkPreviewMetadata as s } from "./attributes.js";
3
3
  import { getExternalLinkPreviewAttributesFromElement as c } from "./serialization.js";
4
4
  import { renderExternalLinkPreviewHTML as l } from "./render-html.js";
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/serialization.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AAc7D,eAAO,MAAM,2CAA2C,YAC7C,OAAO,KACf,6BAA6B,GAAG,IAiBlC,CAAC;AAEF,eAAO,MAAM,oCAAoC,eAAgB,6BAA6B,2BAgB7F,CAAC;AAWF,eAAO,MAAM,iCAAiC,YACnC,OAAO,cACJ,6BAA6B,SAmE1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mCAAmC,YAAa,OAAO,KAAG,OAUtE,CAAC;AAEF,eAAO,MAAM,mCAAmC,SAAU,OAAO,KAAG,IAwBnE,CAAC"}
1
+ {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../../../lib/components/Scribe/extension/external-link-preview/serialization.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AAc7D,eAAO,MAAM,2CAA2C,YAC7C,OAAO,KACf,6BAA6B,GAAG,IAiBlC,CAAC;AAEF,eAAO,MAAM,oCAAoC,eAAgB,6BAA6B,2BAgB7F,CAAC;AAEF,eAAO,MAAM,iCAAiC,YACnC,OAAO,cACJ,6BAA6B,SAe1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mCAAmC,YAAa,OAAO,KAAG,OAUtE,CAAC;AAEF,eAAO,MAAM,mCAAmC,SAAU,OAAO,KAAG,IAwBnE,CAAC"}