@dr-ishaan/remake-blocks 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"remark-remake-blocks.d.ts","sourceRoot":"","sources":["../src/remark-remake-blocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAqC,MAAM,OAAO,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EAId,MAAM,YAAY,CAAC;AAMpB,QAAA,MAAM,gBAAgB,EAAE,aAAa,EAsKpC,CAAC;AAoEF,iBAAS,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAUD,iBAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW9D;AA4KD,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOvC;AAubD,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAwFnE,CAAC;AAiFF,eAAO,MAAM,mBAAmB,oDAAqB,CAAC;AAItD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"remark-remake-blocks.d.ts","sourceRoot":"","sources":["../src/remark-remake-blocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAqC,MAAM,OAAO,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EAId,MAAM,YAAY,CAAC;AAMpB,QAAA,MAAM,gBAAgB,EAAE,aAAa,EAsKpC,CAAC;AA8JF,iBAAS,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAUD,iBAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW9D;AAuMD,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOvC;AAupBD,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CA8FnE,CAAC;AAiFF,eAAO,MAAM,mBAAmB,oDAAqB,CAAC;AAItD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -185,6 +185,92 @@ const BUILTIN_CALLOUTS = [
185
185
  },
186
186
  ];
187
187
  // ---------------------------------------------------------------------------
188
+ // v1.3.0: Alternative icon sets (Lucide + Emoji)
189
+ // ---------------------------------------------------------------------------
190
+ // These are keyed by callout type. When iconSet === "lucide" or "emoji",
191
+ // the plugin uses these icons instead of the default Octicon SVGs.
192
+ // Custom callouts always use their configured `icon` regardless of iconSet.
193
+ const LUCIDE_ICONS = {
194
+ note: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg>`,
195
+ tip: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18h6"/><path d="M10 22h4"/><path d="M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5A4.61 4.61 0 0 1 8.91 14"/></svg>`,
196
+ important: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z"/><path d="m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65"/><path d="m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65"/></svg>`,
197
+ warning: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z"/><path d="M12 9v4"/><path d="M12 17h.01"/></svg>`,
198
+ caution: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m15 9-6 6"/><path d="m9 9 6 6"/></svg>`,
199
+ abstract: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><path d="M14 2v6h6"/><path d="M16 13H8"/><path d="M16 17H8"/><path d="M10 9H8"/></svg>`,
200
+ info: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg>`,
201
+ success: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><path d="m9 11 3 3L22 4"/></svg>`,
202
+ question: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><path d="M12 17h.01"/></svg>`,
203
+ failure: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m15 9-6 6"/><path d="m9 9 6 6"/></svg>`,
204
+ danger: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m13 2-3 7h7l-3 7"/><path d="M12 22a10 10 0 1 1 0-20"/></svg>`,
205
+ quote: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z"/><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3z"/></svg>`,
206
+ bug: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m8 2 1.88 1.88"/><path d="M14.12 3.88 16 2"/><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"/><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"/><path d="M12 20v-9"/><path d="M6.53 9C4.6 8.8 3 7.1 3 5"/><path d="M6 13H2"/><path d="M3 21c0-2.1 1.7-3.9 3.8-4"/><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"/><path d="M22 13h-4"/><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"/></svg>`,
207
+ example: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5z"/><polyline points="14 2 14 8 20 8"/><path d="M16 13H8"/><path d="M16 17H8"/><path d="M10 9H8"/></svg>`,
208
+ todo: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="18" x="3" y="3" rx="2"/><path d="m9 12 2 2 4-4"/></svg>`,
209
+ summary: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><path d="M14 2v6h6"/><path d="M16 13H8"/><path d="M16 17H8"/></svg>`,
210
+ tldr: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m13 2-3 7h7l-3 7"/><path d="M12 22a10 10 0 1 1 0-20"/></svg>`,
211
+ hint: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 18v3c0 .6.4 1 1 1h4v-3h3v-3h2l1.4-1.4a6.5 6.5 0 1 0-4-4Z"/><circle cx="16.5" cy="7.5" r=".5" fill="currentColor"/></svg>`,
212
+ check: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="18" x="3" y="3" rx="2"/><path d="m9 12 2 2 4-4"/></svg>`,
213
+ done: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><path d="m9 11 3 3L22 4"/></svg>`,
214
+ help: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><path d="M12 17h.01"/></svg>`,
215
+ faq: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/><path d="M10 7h.01"/><path d="M14 7h.01"/><path d="M8 11h.01"/><path d="M12 11h.01"/><path d="M16 11h.01"/></svg>`,
216
+ attention: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>`,
217
+ fail: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"/><path d="m15 9-6 6"/><path d="m9 9 6 6"/></svg>`,
218
+ missing: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/><path d="M8 11h6"/></svg>`,
219
+ error: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"/><path d="M12 8v4"/><path d="M12 16h.01"/></svg>`,
220
+ cite: `<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z"/><path d="M13 5v2"/><path d="M13 17v2"/><path d="M13 11v2"/></svg>`,
221
+ };
222
+ const EMOJI_ICONS = {
223
+ note: "ℹ️",
224
+ tip: "💡",
225
+ important: "⚠️",
226
+ warning: "⚠️",
227
+ caution: "⛔",
228
+ abstract: "📋",
229
+ info: "ℹ️",
230
+ success: "✅",
231
+ question: "❓",
232
+ failure: "❌",
233
+ danger: "⚡",
234
+ quote: "💬",
235
+ bug: "🐛",
236
+ example: "📝",
237
+ todo: "☑️",
238
+ summary: "📋",
239
+ tldr: "⚡",
240
+ hint: "💡",
241
+ check: "✅",
242
+ done: "✅",
243
+ help: "❓",
244
+ faq: "❓",
245
+ attention: "⚠️",
246
+ fail: "❌",
247
+ missing: "🚫",
248
+ error: "❌",
249
+ cite: "📌",
250
+ };
251
+ /**
252
+ * Resolve the icon for a given callout type based on the iconSet option.
253
+ * Returns the icon string (SVG or emoji) or empty string if not found.
254
+ */
255
+ function resolveIcon(type, config, iconSet) {
256
+ // Custom callouts always use their configured icon, regardless of iconSet.
257
+ // We detect this by checking if the type is NOT in BUILTIN_CALLOUTS.
258
+ // (config may be a normalized custom callout — its icon is the user's choice.)
259
+ const isBuiltin = BUILTIN_CALLOUTS.some((b) => b.type === type);
260
+ if (!isBuiltin) {
261
+ return config.icon;
262
+ }
263
+ // For builtins, swap icon based on iconSet option.
264
+ if (iconSet === "lucide")
265
+ return LUCIDE_ICONS[type] ?? config.icon;
266
+ if (iconSet === "emoji")
267
+ return EMOJI_ICONS[type] ?? config.icon;
268
+ if (iconSet === "none")
269
+ return "";
270
+ // Default: octicon (the builtin's own icon)
271
+ return config.icon;
272
+ }
273
+ // ---------------------------------------------------------------------------
188
274
  // Default plugin options
189
275
  // ---------------------------------------------------------------------------
190
276
  const DEFAULT_OPTIONS = {
@@ -213,6 +299,8 @@ const DEFAULT_OPTIONS = {
213
299
  props: {},
214
300
  build: undefined,
215
301
  tags: {},
302
+ // v1.3.0 defaults
303
+ enableDirectiveSyntax: false,
216
304
  };
217
305
  // ---------------------------------------------------------------------------
218
306
  // Helper: Validate + normalize a single custom callout config.
@@ -321,6 +409,7 @@ function buildCalloutPattern(configMap, enableDisclosures) {
321
409
  // Supported keys (v1.2.0):
322
410
  // - icon: true|false — override showIndicator per-callout
323
411
  // - appearance: default|minimal|simple|hidden — override appearance per-callout
412
+ // - inline: inline|inline-end — v1.3.0+: float left/right (responsive)
324
413
  // Unknown keys are silently ignored.
325
414
  // ---------------------------------------------------------------------------
326
415
  function parseOverrides(overridesBlock) {
@@ -330,7 +419,23 @@ function parseOverrides(overridesBlock) {
330
419
  if (!inner)
331
420
  return undefined;
332
421
  const result = {};
333
- // Match key=value pairs. Values can be unquoted barewords or "quoted strings".
422
+ // First pass: handle bare keywords (no `=` sign).
423
+ // Supported bare keywords: `inline`, `inline-end`
424
+ // These set the inline override without needing `inline=true`.
425
+ // Note: `inline-end` must be matched BEFORE `inline` to avoid the prefix
426
+ // matching, so we use a single regex with `inline-end` first in the
427
+ // alternation and consume the entire match.
428
+ const bareKeywordRe = /\b(inline-end|inline)\b(?!\s*=)/gi;
429
+ let bareMatch;
430
+ while ((bareMatch = bareKeywordRe.exec(inner)) !== null) {
431
+ const kw = bareMatch[1].toLowerCase();
432
+ if (kw === "inline-end")
433
+ result.inline = "inline-end";
434
+ else if (kw === "inline")
435
+ result.inline = "inline";
436
+ }
437
+ // Second pass: handle key=value pairs.
438
+ // Values can be unquoted barewords or "quoted strings".
334
439
  const pairRe = /(\w[\w-]*)\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s}]+))/g;
335
440
  let m;
336
441
  while ((m = pairRe.exec(inner)) !== null) {
@@ -347,9 +452,22 @@ function parseOverrides(overridesBlock) {
347
452
  result.appearance = value;
348
453
  }
349
454
  }
455
+ else if (key === "inline") {
456
+ // v1.3.0+: inline floating callouts
457
+ if (value === "true" || value === "left" || value === "inline") {
458
+ result.inline = "inline";
459
+ }
460
+ else if (value === "right" || value === "inline-end" || value === "end") {
461
+ result.inline = "inline-end";
462
+ }
463
+ else if (value === "false" || value === "0" || value === "no") {
464
+ // explicitly disable inline (clear any bare-keyword setting)
465
+ result.inline = undefined;
466
+ }
467
+ }
350
468
  // Unknown keys silently ignored
351
469
  }
352
- if (result.icon === undefined && result.appearance === undefined)
470
+ if (result.icon === undefined && result.appearance === undefined && result.inline === undefined)
353
471
  return undefined;
354
472
  return result;
355
473
  }
@@ -564,10 +682,15 @@ function buildCalloutHtml(parsed, blockquote, calloutPattern, configMap, options
564
682
  const extraAttrs = formatPropsAsAttrs(extraProps);
565
683
  // v1.2.0: appearance class
566
684
  const appearanceClass = appearance !== "default" ? ` callout-${appearance}` : "";
685
+ // v1.3.0: inline floating class (responsive float left/right)
686
+ const inlineClass = parsed.overrides?.inline ? ` callout-${parsed.overrides.inline}` : "";
567
687
  // v1.2.0: icon HTML — only render if showIcon AND appearance allows it
688
+ // v1.3.0: resolve icon based on iconSet option (octicon|lucide|emoji|none)
568
689
  const renderIcon = showIcon && appearance !== "simple" && appearance !== "hidden";
569
- const iconHtml = renderIcon
570
- ? `<span class="callout-icon" style="color:${safeIconColor}" aria-hidden="true">${config.icon}</span>`
690
+ const resolvedIcon = renderIcon ? resolveIcon(parsed.type, config, options.iconSet) : "";
691
+ const effectiveRenderIcon = renderIcon && resolvedIcon.length > 0;
692
+ const iconHtml = effectiveRenderIcon
693
+ ? `<span class="callout-icon" style="color:${safeIconColor}" aria-hidden="true">${resolvedIcon}</span>`
571
694
  : "";
572
695
  // v1.2.0: title-text always rendered (unless appearance="hidden")
573
696
  const renderTitle = appearance !== "hidden";
@@ -582,8 +705,8 @@ function buildCalloutHtml(parsed, blockquote, calloutPattern, configMap, options
582
705
  const titleTextTag = tags.titleText || "span";
583
706
  const bodyTag = tags.body || "div";
584
707
  // Build icon span with custom tag if provided
585
- const iconSpan = renderIcon
586
- ? `<${iconTag} class="callout-icon" style="color:${safeIconColor}" aria-hidden="true">${config.icon}</${iconTag}>`
708
+ const iconSpan = effectiveRenderIcon
709
+ ? `<${iconTag} class="callout-icon" style="color:${safeIconColor}" aria-hidden="true">${resolvedIcon}</${iconTag}>`
587
710
  : "";
588
711
  // Build the title block (or skip for "hidden" appearance)
589
712
  const titleBlock = renderTitle
@@ -612,7 +735,7 @@ function buildCalloutHtml(parsed, blockquote, calloutPattern, configMap, options
612
735
  if (parsed.collapsible) {
613
736
  const openAttr = parsed.collapsibleOpen ? " open" : "";
614
737
  return html([
615
- `<${containerTag} class="${safeCalloutClass} ${safeConfigClassName} collapsible${appearanceClass}"${dataAttr} role="${ariaRole}"${labelledby}${dirAuto}${openAttr}${extraAttrs}>`,
738
+ `<${containerTag} class="${safeCalloutClass} ${safeConfigClassName} collapsible${appearanceClass}${inlineClass}"${dataAttr} role="${ariaRole}"${labelledby}${dirAuto}${openAttr}${extraAttrs}>`,
616
739
  titleBlockWithDir,
617
740
  ` <${bodyTag} class="${safeCalloutBodyClass}">`,
618
741
  bodyHtml,
@@ -621,7 +744,7 @@ function buildCalloutHtml(parsed, blockquote, calloutPattern, configMap, options
621
744
  ].filter(Boolean).join("\n"));
622
745
  }
623
746
  return html([
624
- `<${containerTag} class="${safeCalloutClass} ${safeConfigClassName}${appearanceClass}"${dataAttr} role="${ariaRole}"${labelledby}${dirAuto}${extraAttrs}>`,
747
+ `<${containerTag} class="${safeCalloutClass} ${safeConfigClassName}${appearanceClass}${inlineClass}"${dataAttr} role="${ariaRole}"${labelledby}${dirAuto}${extraAttrs}>`,
625
748
  titleBlockWithDir,
626
749
  ` <${bodyTag} class="${safeCalloutBodyClass}">`,
627
750
  bodyHtml,
@@ -797,6 +920,192 @@ function getBlockquoteDepth(node, parent, tree) {
797
920
  return depth;
798
921
  }
799
922
  // ---------------------------------------------------------------------------
923
+ // v1.3.0: Directive syntax transformer (:::type[Title] ... :::)
924
+ // ---------------------------------------------------------------------------
925
+ // Detects :::type paragraphs and converts them to callouts. This is a
926
+ // lightweight alternative to installing remark-directive — we detect the
927
+ // pattern in raw paragraph text and synthesize a ParsedCallout + HTML node.
928
+ //
929
+ // Supported syntax:
930
+ // :::note — basic callout (default title)
931
+ // :::note[Custom Title] — with custom title
932
+ // :::note{fold=-} — with overrides (icon, appearance, fold, inline)
933
+ // :::note[Title]{fold=-} — title + overrides
934
+ // ::::note ... :::: — 4-colon variant (for nesting; same behavior)
935
+ //
936
+ // The closing ::: must be on its own line. Body content between the opening
937
+ // and closing lines is rendered as the callout body.
938
+ function transformDirectiveSyntax(tree, configMap, options) {
939
+ if (!tree.children)
940
+ return;
941
+ const newChildren = [];
942
+ let i = 0;
943
+ while (i < tree.children.length) {
944
+ const child = tree.children[i];
945
+ // Check if this is a paragraph containing a :::type ... ::: directive
946
+ if (child.type === "paragraph") {
947
+ const text = extractTextContent(child);
948
+ // Use string methods (more reliable than regex with ^ anchor in some Node versions)
949
+ // Pattern: :::type[Title]{overrides}\n<body>\n:::
950
+ // Note: We use startsWith() + manual parsing instead of /^.../ regex
951
+ // because the ^ anchor has issues in some Node.js environments.
952
+ if (text.startsWith(":::")) {
953
+ // Count the colons
954
+ let colonCount = 0;
955
+ while (colonCount < text.length && text[colonCount] === ":")
956
+ colonCount++;
957
+ if (colonCount >= 3) {
958
+ const afterColons = text.slice(colonCount);
959
+ // Match type name (letters, digits, hyphens)
960
+ const typeMatch = afterColons.match(/^([a-zA-Z][\w-]*)/);
961
+ if (typeMatch) {
962
+ const rawType = typeMatch[1];
963
+ const type = rawType.toLowerCase();
964
+ const afterType = afterColons.slice(typeMatch[0].length);
965
+ // Parse optional [Title] and {overrides}
966
+ let title;
967
+ let overridesBlock;
968
+ let remaining = afterType;
969
+ // Optional [Title]
970
+ if (remaining.startsWith("[")) {
971
+ const closeIdx = remaining.indexOf("]");
972
+ if (closeIdx !== -1) {
973
+ title = remaining.slice(1, closeIdx);
974
+ remaining = remaining.slice(closeIdx + 1);
975
+ }
976
+ }
977
+ // Optional {overrides}
978
+ if (remaining.startsWith("{")) {
979
+ const closeIdx = remaining.indexOf("}");
980
+ if (closeIdx !== -1) {
981
+ overridesBlock = `{${remaining.slice(1, closeIdx)}}`;
982
+ remaining = remaining.slice(closeIdx + 1);
983
+ }
984
+ }
985
+ // Must be followed by \n
986
+ if (remaining.startsWith("\n")) {
987
+ remaining = remaining.slice(1);
988
+ // Find the closing ::: (must be on its own line at the end)
989
+ // Look for \n::: at the end
990
+ const closingMatch = remaining.match(/\n(:{3,})$/);
991
+ if (closingMatch) {
992
+ const bodyText = remaining.slice(0, closingMatch.index);
993
+ // Only convert if the type is a known callout type
994
+ if (configMap.has(type)) {
995
+ const config = configMap.get(type);
996
+ const customTitle = title?.trim() || undefined;
997
+ const overrides = parseOverrides(overridesBlock);
998
+ // Check for fold override
999
+ let foldMarker = "";
1000
+ if (overridesBlock) {
1001
+ const foldMatch = overridesBlock.match(/fold\s*=\s*([+-])/);
1002
+ if (foldMatch)
1003
+ foldMarker = foldMatch[1];
1004
+ }
1005
+ const collapsible = foldMarker === "+" || foldMarker === "-";
1006
+ const collapsibleOpen = foldMarker === "+";
1007
+ const parsed = {
1008
+ type: type,
1009
+ customTitle,
1010
+ collapsible,
1011
+ collapsibleOpen,
1012
+ isDisclosure: false,
1013
+ overrides,
1014
+ };
1015
+ // Build body HTML from the bodyText
1016
+ const bodyLines = bodyText.split("\n");
1017
+ const bodyHtml = bodyLines
1018
+ .map((line) => {
1019
+ if (line.trim() === "")
1020
+ return "";
1021
+ const escaped = options.allowDangerousHtml ? line : escapeHtml(line);
1022
+ return `<p>${escaped}</p>\n`;
1023
+ })
1024
+ .join("");
1025
+ const calloutHtml = buildCalloutFromParts(parsed, config, bodyHtml, options);
1026
+ newChildren.push(html(calloutHtml));
1027
+ i++;
1028
+ continue;
1029
+ }
1030
+ }
1031
+ }
1032
+ }
1033
+ }
1034
+ }
1035
+ }
1036
+ newChildren.push(child);
1037
+ i++;
1038
+ }
1039
+ tree.children = newChildren;
1040
+ }
1041
+ // ---------------------------------------------------------------------------
1042
+ // Helper: Build callout HTML from parsed parts (used by directive syntax)
1043
+ // ---------------------------------------------------------------------------
1044
+ function buildCalloutFromParts(parsed, config, bodyHtml, options) {
1045
+ // Reuse the existing buildCalloutHtml by synthesizing a fake blockquote
1046
+ // structure. We construct a minimal Blockquote-compatible object that
1047
+ // buildBodyHtml can process.
1048
+ const fakeBlockquote = {
1049
+ type: "blockquote",
1050
+ children: [
1051
+ {
1052
+ type: "paragraph",
1053
+ children: [{ type: "text", value: "" }],
1054
+ },
1055
+ ],
1056
+ };
1057
+ // We need to call buildCalloutHtml which expects a real blockquote.
1058
+ // Instead, inline the essential rendering logic here.
1059
+ const title = parsed.customTitle || config.defaultTitle;
1060
+ const dataAttr = options.dataCalloutType ? ` data-callout-type="${escapeAttribute(parsed.type)}"` : "";
1061
+ const safeIconColor = sanitizeColor(config.iconColor || config.color, "#57606a");
1062
+ const ariaRole = "note";
1063
+ const safeCalloutClass = escapeAttribute(options.calloutClass);
1064
+ const safeConfigClassName = escapeAttribute(config.className);
1065
+ const safeCalloutTitleClass = escapeAttribute(options.calloutTitleClass);
1066
+ const safeCalloutBodyClass = escapeAttribute(options.calloutBodyClass);
1067
+ const titleId = generateCalloutId(parsed.type);
1068
+ const { showIcon, appearance } = resolveVisuals(parsed, options);
1069
+ const resolvedIcon = showIcon && appearance !== "simple" && appearance !== "hidden"
1070
+ ? resolveIcon(parsed.type, config, options.iconSet)
1071
+ : "";
1072
+ const effectiveRenderIcon = showIcon && appearance !== "simple" && appearance !== "hidden" && resolvedIcon.length > 0;
1073
+ const iconSpan = effectiveRenderIcon
1074
+ ? `<span class="callout-icon" style="color:${safeIconColor}" aria-hidden="true">${resolvedIcon}</span>`
1075
+ : "";
1076
+ const renderTitle = appearance !== "hidden";
1077
+ const labelledby = renderTitle ? ` aria-labelledby="${titleId}"` : "";
1078
+ const appearanceClass = appearance !== "default" ? ` callout-${appearance}` : "";
1079
+ const inlineClass = parsed.overrides?.inline ? ` callout-${parsed.overrides.inline}` : "";
1080
+ const titleBlock = renderTitle
1081
+ ? [
1082
+ ` <div class="${safeCalloutTitleClass}" style="color:${safeIconColor}" id="${titleId}" dir="auto">`,
1083
+ iconSpan && ` ${iconSpan}`,
1084
+ ` <span class="callout-title-text">${escapeHtml(title)}</span>`,
1085
+ ` </div>`,
1086
+ ].filter(Boolean).join("\n")
1087
+ : "";
1088
+ if (parsed.collapsible) {
1089
+ const openAttr = parsed.collapsibleOpen ? " open" : "";
1090
+ return [
1091
+ `<details class="${safeCalloutClass} ${safeConfigClassName} collapsible${appearanceClass}${inlineClass}"${dataAttr} role="${ariaRole}"${labelledby} dir="auto"${openAttr}>`,
1092
+ titleBlock.replace(/<div /, "<summary ").replace(/<\/div>$/, "</summary>"),
1093
+ ` <div class="${safeCalloutBodyClass}">`,
1094
+ bodyHtml,
1095
+ ` </div>`,
1096
+ `</details>`,
1097
+ ].filter(Boolean).join("\n");
1098
+ }
1099
+ return [
1100
+ `<aside class="${safeCalloutClass} ${safeConfigClassName}${appearanceClass}${inlineClass}"${dataAttr} role="${ariaRole}"${labelledby} dir="auto">`,
1101
+ titleBlock,
1102
+ ` <div class="${safeCalloutBodyClass}">`,
1103
+ bodyHtml,
1104
+ ` </div>`,
1105
+ `</aside>`,
1106
+ ].filter(Boolean).join("\n");
1107
+ }
1108
+ // ---------------------------------------------------------------------------
800
1109
  // Plugin implementation
801
1110
  // ---------------------------------------------------------------------------
802
1111
  export const remarkRemakeBlocks = (userOptions) => {
@@ -811,6 +1120,11 @@ export const remarkRemakeBlocks = (userOptions) => {
811
1120
  // same HTML, including same ids). This is important for snapshot tests
812
1121
  // and for SSR/deterministic rendering.
813
1122
  resetCalloutIdCounter();
1123
+ // v1.3.0: Pass 0 — Transform :::type[Title]{overrides} ... ::: directive syntax
1124
+ // into callouts (Starlight/Docusaurus/MkDocs content portability).
1125
+ if (options.enableDirectiveSyntax) {
1126
+ transformDirectiveSyntax(tree, configMap, options);
1127
+ }
814
1128
  // ── Pass 1: Transform blockquotes → callouts / disclosures ──────
815
1129
  // We must process DEEPEST blockquotes first (inside-out) so that
816
1130
  // nested [!] directives are converted before their parents read them.
@@ -1 +1 @@
1
- {"version":3,"file":"remark-remake-blocks.js","sourceRoot":"","sources":["../src/remark-remake-blocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remark-remake-blocks.js","sourceRoot":"","sources":["../src/remark-remake-blocks.ts"],"names":[],"mappings":"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"}