@bendyline/squisq 2.11.18 → 2.11.20

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.
@@ -2,7 +2,7 @@ import {
2
2
  assertMarkdownDocumentWithinLimits,
3
3
  parseMarkdown,
4
4
  toMdast
5
- } from "./chunk-PGWYC3S2.js";
5
+ } from "./chunk-Y4OZ5DSG.js";
6
6
  import {
7
7
  formatFrontmatterYaml,
8
8
  getChildren,
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-3XEABCT3.js";
4
4
  import {
5
5
  applySavedPresentation
6
- } from "./chunk-NM747LUO.js";
6
+ } from "./chunk-QFC4JZZH.js";
7
7
  import {
8
8
  SHAPE_NAMES,
9
9
  buildChartData,
@@ -35,7 +35,7 @@ import {
35
35
  templateRegistry,
36
36
  writeCustomTemplatesToFrontmatter,
37
37
  writeCustomThemesToFrontmatter
38
- } from "./chunk-7IGKCHDP.js";
38
+ } from "./chunk-UWLEDXSU.js";
39
39
  import {
40
40
  ASCII_TREE_VOCAB,
41
41
  ASCII_VOCAB,
@@ -85,7 +85,7 @@ import {
85
85
  } from "./chunk-L7QZORLB.js";
86
86
  import {
87
87
  parseMarkdown
88
- } from "./chunk-PGWYC3S2.js";
88
+ } from "./chunk-Y4OZ5DSG.js";
89
89
  import {
90
90
  KNOWN_BLOCK_META_KEYS,
91
91
  TABLE_FED_TEMPLATES,
@@ -11,7 +11,7 @@ import {
11
11
  bytesToBase64,
12
12
  markerPath,
13
13
  shapePath
14
- } from "./chunk-PUS54YU6.js";
14
+ } from "./chunk-4KTLKEIY.js";
15
15
 
16
16
  // src/imageEdit/state.ts
17
17
  var IMAGE_EDIT_STATE_FILENAME = "state.json";
@@ -5,7 +5,7 @@ import {
5
5
  flattenRenderableBlocks,
6
6
  getPinnedBlockMeta,
7
7
  markdownToDoc
8
- } from "./chunk-7IGKCHDP.js";
8
+ } from "./chunk-UWLEDXSU.js";
9
9
  import {
10
10
  isAsciiDiagramFence,
11
11
  isAsciiTimelineFence,
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk-PFH3WV6J.js";
23
23
  import {
24
24
  parseMarkdown
25
- } from "./chunk-PGWYC3S2.js";
25
+ } from "./chunk-Y4OZ5DSG.js";
26
26
  import {
27
27
  isContainerTemplate
28
28
  } from "./chunk-WSFXV5BT.js";
@@ -21,7 +21,7 @@ import {
21
21
  lineStyleDasharray,
22
22
  shapePath,
23
23
  snapEndpoints
24
- } from "./chunk-PUS54YU6.js";
24
+ } from "./chunk-4KTLKEIY.js";
25
25
  import {
26
26
  DEFAULT_THEME,
27
27
  FRONTMATTER_CUSTOM_TEMPLATES_KEY,
@@ -1502,18 +1502,16 @@ function asciiTimelineToTemplateData(timeline) {
1502
1502
  id: track.id,
1503
1503
  ...track.label ? { label: track.label } : {},
1504
1504
  ...track.endLabel ? { endLabel: track.endLabel } : {},
1505
- events: track.events.map(
1506
- (event) => ({
1507
- id: event.id,
1508
- label: event.label,
1509
- ...event.description ? { description: event.description } : {},
1510
- position: clamp01((event.column - globalStart) / span),
1511
- ...event.side ? { side: event.side } : {},
1512
- ...event.descriptionSide ? { descriptionSide: event.descriptionSide } : {},
1513
- ...event.callout === false ? { callout: false } : {},
1514
- ...event.marker ? { marker: event.marker } : {}
1515
- })
1516
- )
1505
+ events: track.events.map((event) => ({
1506
+ id: event.id,
1507
+ label: event.label,
1508
+ ...event.description ? { description: event.description } : {},
1509
+ position: clamp01((event.column - globalStart) / span),
1510
+ ...event.side ? { side: event.side } : {},
1511
+ ...event.descriptionSide ? { descriptionSide: event.descriptionSide } : {},
1512
+ ...event.callout === false ? { callout: false } : {},
1513
+ ...event.marker ? { marker: event.marker } : {}
1514
+ }))
1517
1515
  }));
1518
1516
  const links = timeline.links.map((link) => ({ ...link }));
1519
1517
  return { tracks, links };
@@ -6132,7 +6130,14 @@ function diagramBlock(input, context) {
6132
6130
  const positions = /* @__PURE__ */ new Map();
6133
6131
  for (const node of resolved.nodes) {
6134
6132
  const t = transform(node);
6135
- positions.set(node.id, { cx: t.x + t.w / 2, cy: t.y + t.h / 2, rx: t.w / 2, ry: t.h / 2 });
6133
+ positions.set(node.id, {
6134
+ cx: t.x + t.w / 2,
6135
+ cy: t.y + t.h / 2,
6136
+ rx: t.w / 2,
6137
+ ry: t.h / 2,
6138
+ // Matches the drawing below: containers always 10, leaf cards pill or 10.
6139
+ radius: !node.isContainer && input.nodeShape === "pill" ? t.h / 2 : 10
6140
+ });
6136
6141
  }
6137
6142
  const startMarker = input.startStyle ?? "none";
6138
6143
  const configuredEnd = input.endStyle ?? "arrow";
@@ -10008,34 +10013,28 @@ function collectRichMediaItems(layers, block) {
10008
10013
  (video) => !existingEmbeds.has(video.url)
10009
10014
  );
10010
10015
  return [
10011
- ...images.map(
10012
- (image) => ({
10013
- kind: "image",
10014
- src: image.src,
10015
- alt: image.alt,
10016
- ...image.width && image.height ? { aspectRatio: image.width / image.height } : {}
10017
- })
10018
- ),
10019
- ...videos.map(
10020
- (video) => ({
10021
- kind: "video",
10022
- src: video.src,
10023
- ...video.posterSrc ? { posterSrc: video.posterSrc } : {},
10024
- alt: video.alt,
10025
- aspectRatio: 16 / 9,
10026
- ...video.startAt != null ? { startAt: video.startAt } : {},
10027
- ...video.clipStart != null ? { clipStart: video.clipStart } : {},
10028
- ...video.clipEnd != null ? { clipEnd: video.clipEnd } : {}
10029
- })
10030
- ),
10031
- ...hosted.map(
10032
- (video) => ({
10033
- kind: "videoEmbed",
10034
- url: video.url,
10035
- title: video.title,
10036
- aspectRatio: video.aspectRatio
10037
- })
10038
- ),
10016
+ ...images.map((image) => ({
10017
+ kind: "image",
10018
+ src: image.src,
10019
+ alt: image.alt,
10020
+ ...image.width && image.height ? { aspectRatio: image.width / image.height } : {}
10021
+ })),
10022
+ ...videos.map((video) => ({
10023
+ kind: "video",
10024
+ src: video.src,
10025
+ ...video.posterSrc ? { posterSrc: video.posterSrc } : {},
10026
+ alt: video.alt,
10027
+ aspectRatio: 16 / 9,
10028
+ ...video.startAt != null ? { startAt: video.startAt } : {},
10029
+ ...video.clipStart != null ? { clipStart: video.clipStart } : {},
10030
+ ...video.clipEnd != null ? { clipEnd: video.clipEnd } : {}
10031
+ })),
10032
+ ...hosted.map((video) => ({
10033
+ kind: "videoEmbed",
10034
+ url: video.url,
10035
+ title: video.title,
10036
+ aspectRatio: video.aspectRatio
10037
+ })),
10039
10038
  ...sources.map((source) => ({ kind: "mermaid", source, aspectRatio: 16 / 9 })),
10040
10039
  ...embeddedSpatialMedia(block)
10041
10040
  ];
@@ -10659,6 +10658,7 @@ var TEMPLATE_AUTHORING_METADATA = {
10659
10658
  var COVER_TITLE_BASE_PX = 120;
10660
10659
  var COVER_TITLE_COMFORTABLE_CHARS = 26;
10661
10660
  var COVER_TITLE_MIN_BASE_PX = 62;
10661
+ var COVER_HERO_BOTTOM_MARGIN_PCT = 6;
10662
10662
  function fitCoverTitleSize(title) {
10663
10663
  const len = title.trim().length;
10664
10664
  if (len <= COVER_TITLE_COMFORTABLE_CHARS) return COVER_TITLE_BASE_PX;
@@ -10689,12 +10689,18 @@ function coverBlock(input, context) {
10689
10689
  const subtitleFontSize = themedFontSize(40, context, false);
10690
10690
  const titleYPct = subtitle ? parseFloat(layout.primaryY) : 50;
10691
10691
  const maxWidthPx = parseFloat(layout.maxTextWidth) / 100 * viewport.width;
10692
- const titleH = estimateTextHeight(title, titleFontSize, maxWidthPx, 1.4);
10692
+ const titleH = Math.max(
10693
+ estimateTextHeight(title, titleFontSize, maxWidthPx, 1.4),
10694
+ estimateProseLineCount(title, titleFontSize, maxWidthPx) * titleFontSize * 1.4
10695
+ );
10693
10696
  const px = (v) => v / viewport.height * 100;
10697
+ const subH = subtitle ? estimateTextHeight(subtitle, subtitleFontSize, maxWidthPx, 1.5) : 0;
10694
10698
  const titleBottomPct = titleYPct + px(titleH / 2);
10695
10699
  let accentYPct = titleBottomPct + px(40);
10700
+ const heroTitleBasePct = subtitle ? 70 : 75;
10701
+ const heroTitleLimitPct = subtitle ? 82 - px(subH / 2) : 100 - COVER_HERO_BOTTOM_MARGIN_PCT;
10702
+ const heroTitleYPct = Math.min(heroTitleBasePct, heroTitleLimitPct - px(titleH / 2));
10696
10703
  if (subtitle) {
10697
- const subH = estimateTextHeight(subtitle, subtitleFontSize, maxWidthPx, 1.5);
10698
10704
  const subtitleTopPct = parseFloat(layout.secondaryY) - px(subH / 2);
10699
10705
  accentYPct = Math.max(
10700
10706
  titleBottomPct,
@@ -10788,14 +10794,16 @@ function coverBlock(input, context) {
10788
10794
  fontWeight: "bold",
10789
10795
  color: theme.colors.text,
10790
10796
  textAlign: "center",
10791
- shadow: !standardLightCover
10797
+ shadow: !standardLightCover,
10798
+ shrinkToFit: true
10792
10799
  }
10793
10800
  },
10794
10801
  position: {
10795
10802
  x: "50%",
10796
- y: heroSrc ? subtitle ? "70%" : "75%" : `${titleYPct}%`,
10803
+ y: heroSrc ? `${Math.round(heroTitleYPct * 100) / 100}%` : `${titleYPct}%`,
10797
10804
  anchor: "center",
10798
- width: layout.maxTextWidth
10805
+ width: layout.maxTextWidth,
10806
+ height: `${Math.round(px(titleH) * 100) / 100}%`
10799
10807
  },
10800
10808
  // No animation delay - shown immediately at rest. Word-by-word reveal is
10801
10809
  // a profile opt-in (off by default: the cover doubles as the poster).
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-Q6ELOAOQ.js";
14
14
  import {
15
15
  resolveIcon
16
- } from "./chunk-7N4G32LG.js";
16
+ } from "./chunk-CZ7AUSLI.js";
17
17
 
18
18
  // src/markdown/convert.ts
19
19
  function convertPosition(pos) {
@@ -1427,6 +1427,12 @@ interface ClipBox {
1427
1427
  cy: number;
1428
1428
  rx: number;
1429
1429
  ry: number;
1430
+ /**
1431
+ * Corner radius of the drawn outline (a pill is `ry`). Corner ports sit on
1432
+ * the rounded corner instead of the bounding-box corner, which on a pill is
1433
+ * empty space beyond the curve. Omitted → square corners.
1434
+ */
1435
+ radius?: number;
1430
1436
  }
1431
1437
  type ConnectorPort = 'top' | 'right' | 'bottom' | 'left' | 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left';
1432
1438
  interface ConnectorSnapPoint {
@@ -1454,7 +1460,11 @@ declare function clipEndpoints(a: ClipBox, b: ClipBox): {
1454
1460
  y: number;
1455
1461
  };
1456
1462
  };
1457
- /** The stable connector ports exposed around a shape/card box. */
1463
+ /**
1464
+ * The stable connector ports exposed around a shape/card box. With a corner
1465
+ * `radius`, each corner port moves to the 45° point of its rounded corner,
1466
+ * inset by `r·(1 − √½)` on both axes, so an edge meets the drawn outline.
1467
+ */
1458
1468
  declare function snapPoints(box: ClipBox): ConnectorSnapPoint[];
1459
1469
  /** Resolve a normalized authored anchor to a concrete point on a box. */
1460
1470
  declare function anchorPoint(box: ClipBox, anchor: ConnectorAnchor): ConnectorSnapPoint;
package/dist/doc/index.js CHANGED
@@ -74,9 +74,9 @@ import {
74
74
  validateMarkdownSource,
75
75
  wordRevealDelay,
76
76
  writeDashboardLayoutsToFrontmatter
77
- } from "../chunk-J4ACZBO4.js";
77
+ } from "../chunk-KCD3SH5Z.js";
78
78
  import "../chunk-3XEABCT3.js";
79
- import "../chunk-NM747LUO.js";
79
+ import "../chunk-QFC4JZZH.js";
80
80
  import {
81
81
  ASCII_CHAR_H,
82
82
  ASCII_CHAR_W,
@@ -210,7 +210,7 @@ import {
210
210
  wrapWithPersistentLayers,
211
211
  writeCustomTemplatesToFrontmatter,
212
212
  writeCustomThemesToFrontmatter
213
- } from "../chunk-7IGKCHDP.js";
213
+ } from "../chunk-UWLEDXSU.js";
214
214
  import {
215
215
  ASCII_DIAGRAM_FENCE_LANGS,
216
216
  ASCII_TIMELINE_FENCE_LANGS,
@@ -247,7 +247,7 @@ import {
247
247
  shapePath,
248
248
  snapEndpoints,
249
249
  snapPoints
250
- } from "../chunk-PUS54YU6.js";
250
+ } from "../chunk-4KTLKEIY.js";
251
251
  import "../chunk-7ZAAICW4.js";
252
252
  import "../chunk-2SRF5III.js";
253
253
  import {
@@ -268,7 +268,7 @@ import {
268
268
  } from "../chunk-PFH3WV6J.js";
269
269
  import "../chunk-JSGIWW35.js";
270
270
  import "../chunk-L7QZORLB.js";
271
- import "../chunk-PGWYC3S2.js";
271
+ import "../chunk-Y4OZ5DSG.js";
272
272
  import {
273
273
  CONTAINER_TEMPLATES,
274
274
  TABLE_FED_TEMPLATES,
@@ -276,7 +276,7 @@ import {
276
276
  resolveTemplateName
277
277
  } from "../chunk-WSFXV5BT.js";
278
278
  import "../chunk-Q6ELOAOQ.js";
279
- import "../chunk-7N4G32LG.js";
279
+ import "../chunk-CZ7AUSLI.js";
280
280
  import "../chunk-4VOD55SX.js";
281
281
  import "../chunk-4OQFLZ6G.js";
282
282
  import "../chunk-GHOPHGOK.js";
@@ -1,5 +1,5 @@
1
- import { a as IconEntry } from '../inlineIconMarker-CiE8Hlvz.js';
2
- export { I as ICONS, b as IconFamily, c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from '../inlineIconMarker-CiE8Hlvz.js';
1
+ import { a as IconEntry } from '../inlineIconMarker-BGjv-W4j.js';
2
+ export { I as ICONS, b as IconFamily, c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from '../inlineIconMarker-BGjv-W4j.js';
3
3
 
4
4
  /**
5
5
  * Icon Resolver
@@ -12,7 +12,7 @@ import {
12
12
  looksLikeIconToken,
13
13
  resolveIcon,
14
14
  suggestIcons
15
- } from "../chunk-7N4G32LG.js";
15
+ } from "../chunk-CZ7AUSLI.js";
16
16
  export {
17
17
  ICONS,
18
18
  canonicalIconToken,
@@ -1 +1 @@
1
- export { c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from '../inlineIconMarker-CiE8Hlvz.js';
1
+ export { c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from '../inlineIconMarker-BGjv-W4j.js';
@@ -26,9 +26,9 @@ import {
26
26
  touch,
27
27
  updateLayer,
28
28
  writeImageEditDoc
29
- } from "../chunk-OU5FYBOB.js";
29
+ } from "../chunk-PSC3KZEK.js";
30
30
  import "../chunk-OPO5K4DZ.js";
31
- import "../chunk-PUS54YU6.js";
31
+ import "../chunk-4KTLKEIY.js";
32
32
  export {
33
33
  IMAGE_EDIT_ASSETS_PREFIX,
34
34
  IMAGE_EDIT_DEFAULT_BASENAME,
package/dist/index.d.ts CHANGED
@@ -21,7 +21,7 @@ export { C as CoalesceOptions, P as PrunePolicy, R as RevertFailureReason, a as
21
21
  export { DATA_BACKUP_PREFIX, DocumentVersionManager, DocumentVersionManagerOptions, VERSIONS_PREFIX, VERSION_TIMESTAMP_PATTERN, buildDataBackupPath, buildVersionPath, coalesceVersions, formatVersionTimestamp, getDocBasename, listVersions, parseVersionPath, parseVersionTimestamp, pruneVersions, readVersion, revertToVersion, saveVersion } from './versions/index.js';
22
22
  export { BuildJsonFormTokensOptions, ControlKind, InferSchemaOptions, JsonFormValidationError, JsonFormValidator, SquisqAnnotatedSchema, SquisqHints, SquisqWhen, appendPointer, arrayItemKind, buildJsonFormTokens, chooseControl, escapePointerSegment, evaluateWhen, getByPointer, inferSchema, isSafeConditionRegex, pointerSegments, primaryType, resolveFlag, resolveJsonFormTheme, resolveRef, setByPointer, toPointer } from './jsonForm/index.js';
23
23
  export { AnimatedImageFormat, AnimatedImageInfo, IMAGE_EDIT_ASSETS_PREFIX, IMAGE_EDIT_DEFAULT_BASENAME, IMAGE_EDIT_STATE_FILENAME, IMAGE_EDIT_VERSIONS_PREFIX, ImageEditExportFormat, ImageEditExportOptions, ImageEditVersionManager, ImageEditVersionManagerOptions, RevertImageEditFailureReason, RevertImageEditOptions, RevertImageEditResult, SaveImageEditVersionOptions, SaveImageEditVersionResult, addLayer, buildImageEditVersionPath, buildSvgString, coalesceImageEditVersions, createEmptyImageEditDoc, exportImageEditDoc, inspectAnimatedImage, listImageEditVersions, mayBeAnimatedImage, parseImageEditVersionPath, pruneImageEditVersions, readImageEditDoc, readImageEditVersion, readImageEditVersionText, removeLayer, reorderLayer, revertToImageEditVersion, saveImageEditVersion, setCanvas, touch, updateLayer, writeImageEditDoc } from './imageEdit/index.js';
24
- export { I as ICONS, a as IconEntry, b as IconFamily, c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from './inlineIconMarker-CiE8Hlvz.js';
24
+ export { I as ICONS, a as IconEntry, b as IconFamily, c as IconTextRun, h as hasIconMarker, i as iconClass, d as iconMarker, s as splitIconMarkers, e as stripIconMarkers } from './inlineIconMarker-BGjv-W4j.js';
25
25
  export { IconSuggestion, canonicalIconToken, iconGlyph, looksLikeIconToken, resolveIcon, suggestIcons } from './icons/index.js';
26
26
  export { BlockContentProfile, RecommendationResult, profileBlockContents, recommendTemplatesForBlock } from './recommend/index.js';
27
27
  export { AdvanceCoverage, AlignConfig, AlignInput, BandpassState, BuildAdvanceTimingOptions, BuildNarrationTimingOptions, BuildScriptOptions, DEFAULT_ALIGN_CONFIG, DEFAULT_FEATURE_CONFIG, DEFAULT_NUCLEI_CONFIG, DEFAULT_PACING_CONFIG, DEFAULT_VAD_CONFIG, EMPTY_ADVANCE_LOG, FeatureConfig, FeatureState, FrameFeatures, NarrationAlignment, NarrationBlockRange, NarrationScript, NarrationSessionConfig, NarrationSessionState, NarrationTimingBlock, NarrationTimingGenerator, NarrationTimingJsonV3, NarrationTimingMethod, NarrationTrace, NucleiConfig, NucleiState, PacingConfig, PacingState, PacingTick, ScriptBlockRange, ScriptToken, SlideAdvance, SlideAdvanceLog, TraceSample, VadConfig, VadState, WordTiming, advanceCoverage, alignNarration, bandpassRun, buildAdvanceTimingJson, buildNarrationScript, buildNarrationTimingJson, createBandpass, createFeatureState, createNarrationSession, createNucleiState, createPacingState, createVadState, detectSyllableOnsets, downsampleTrace, estimateSyllables, expectedSyllablesAt, extractFrameFeatures, featureStep, narrationSessionStep, nucleiStep, pacingStep, parseNarrationTimingJson, reanchorPacing, reanchorSession, recordSlideShown, resolveNarrationTimingGenerator, traceWordPosAt, vadStep, wordIndexAtChar, wordIndexAtTime, wordPosAtExpectedSyllables } from './narration/index.js';
package/dist/index.js CHANGED
@@ -27,7 +27,7 @@ import {
27
27
  recordSlideShown,
28
28
  traceWordPosAt,
29
29
  vadStep
30
- } from "./chunk-RYO4QW6R.js";
30
+ } from "./chunk-5F7AO4S5.js";
31
31
  import {
32
32
  fenceRendererLangs
33
33
  } from "./chunk-PGI7HSWE.js";
@@ -115,7 +115,7 @@ import {
115
115
  touch,
116
116
  updateLayer,
117
117
  writeImageEditDoc
118
- } from "./chunk-OU5FYBOB.js";
118
+ } from "./chunk-PSC3KZEK.js";
119
119
  import {
120
120
  VERSION_TIMESTAMP_PATTERN,
121
121
  formatVersionTimestamp,
@@ -229,7 +229,7 @@ import {
229
229
  validateMarkdownSource,
230
230
  wordRevealDelay,
231
231
  writeDashboardLayoutsToFrontmatter
232
- } from "./chunk-J4ACZBO4.js";
232
+ } from "./chunk-KCD3SH5Z.js";
233
233
  import {
234
234
  buildNarrationTimingJson,
235
235
  parseNarrationTimingJson,
@@ -261,7 +261,7 @@ import {
261
261
  serializePresentationPlan,
262
262
  transformNarratedSegment,
263
263
  usesDynamicPresentation
264
- } from "./chunk-NM747LUO.js";
264
+ } from "./chunk-QFC4JZZH.js";
265
265
  import {
266
266
  ASCII_CHAR_H,
267
267
  ASCII_CHAR_W,
@@ -401,7 +401,7 @@ import {
401
401
  wrapWithPersistentLayers,
402
402
  writeCustomTemplatesToFrontmatter,
403
403
  writeCustomThemesToFrontmatter
404
- } from "./chunk-7IGKCHDP.js";
404
+ } from "./chunk-UWLEDXSU.js";
405
405
  import {
406
406
  ASCII_DIAGRAM_FENCE_LANGS,
407
407
  ASCII_TIMELINE_FENCE_LANGS,
@@ -444,7 +444,7 @@ import {
444
444
  shapePath,
445
445
  snapEndpoints,
446
446
  snapPoints
447
- } from "./chunk-PUS54YU6.js";
447
+ } from "./chunk-4KTLKEIY.js";
448
448
  import {
449
449
  hasIconMarker,
450
450
  iconClass,
@@ -567,7 +567,7 @@ import {
567
567
  stringifyMarkdown,
568
568
  unwrapMarkdownSource,
569
569
  wrapMarkdownSource
570
- } from "./chunk-LJZHC6GN.js";
570
+ } from "./chunk-K2Z7K65P.js";
571
571
  import {
572
572
  DEFAULT_MARKDOWN_SAFETY_LIMITS,
573
573
  MarkdownLimitError,
@@ -579,7 +579,7 @@ import {
579
579
  resolveMarkdownSafetyLimits,
580
580
  serializePandocAttributes,
581
581
  toMdast
582
- } from "./chunk-PGWYC3S2.js";
582
+ } from "./chunk-Y4OZ5DSG.js";
583
583
  import {
584
584
  BLOCK_META_KEY_DESCRIPTORS,
585
585
  CONTAINER_TEMPLATES,
@@ -634,7 +634,7 @@ import {
634
634
  looksLikeIconToken,
635
635
  resolveIcon,
636
636
  suggestIcons
637
- } from "./chunk-7N4G32LG.js";
637
+ } from "./chunk-CZ7AUSLI.js";
638
638
  import {
639
639
  DEFAULT_TRANSITION_DURATION_SECONDS,
640
640
  TRANSITION_DIRECTIONS,
@@ -4,8 +4,8 @@
4
4
  * FontAwesome Free icon catalog. Run `node scripts/generate-icon-data.mjs`
5
5
  * to regenerate after bumping @fortawesome/fontawesome-free.
6
6
  *
7
- * Entry count: 2141
8
- * Generated: 2026-05-14T03:38:13.863Z
7
+ * Entry count: 2163
8
+ * Generated: 2026-10-10T13:40:14.471Z
9
9
  */
10
10
  type IconFamily = 'brands' | 'solid' | 'regular';
11
11
  interface IconEntry {
@@ -17,7 +17,7 @@ import {
17
17
  stringifyMarkdown,
18
18
  unwrapMarkdownSource,
19
19
  wrapMarkdownSource
20
- } from "../chunk-LJZHC6GN.js";
20
+ } from "../chunk-K2Z7K65P.js";
21
21
  import {
22
22
  DEFAULT_MARKDOWN_SAFETY_LIMITS,
23
23
  MarkdownLimitError,
@@ -29,7 +29,7 @@ import {
29
29
  resolveMarkdownSafetyLimits,
30
30
  serializePandocAttributes,
31
31
  toMdast
32
- } from "../chunk-PGWYC3S2.js";
32
+ } from "../chunk-Y4OZ5DSG.js";
33
33
  import {
34
34
  BLOCK_META_KEY_DESCRIPTORS,
35
35
  KNOWN_BLOCK_META_KEYS,
@@ -73,7 +73,7 @@ import {
73
73
  videoEmbedIframeAttributes,
74
74
  walkMarkdownTree
75
75
  } from "../chunk-Q6ELOAOQ.js";
76
- import "../chunk-7N4G32LG.js";
76
+ import "../chunk-CZ7AUSLI.js";
77
77
  import "../chunk-4VOD55SX.js";
78
78
  export {
79
79
  BLOCK_META_KEY_DESCRIPTORS,
@@ -27,7 +27,7 @@ import {
27
27
  recordSlideShown,
28
28
  traceWordPosAt,
29
29
  vadStep
30
- } from "../chunk-RYO4QW6R.js";
30
+ } from "../chunk-5F7AO4S5.js";
31
31
  import "../chunk-NEWNNLWN.js";
32
32
  import {
33
33
  buildNarrationTimingJson,
@@ -41,9 +41,9 @@ import {
41
41
  wordIndexAtChar,
42
42
  wordIndexAtTime,
43
43
  wordPosAtExpectedSyllables
44
- } from "../chunk-7IGKCHDP.js";
44
+ } from "../chunk-UWLEDXSU.js";
45
45
  import "../chunk-A5QJJZ5S.js";
46
- import "../chunk-PUS54YU6.js";
46
+ import "../chunk-4KTLKEIY.js";
47
47
  import "../chunk-PFH3WV6J.js";
48
48
  import "../chunk-L7QZORLB.js";
49
49
  import "../chunk-WSFXV5BT.js";
@@ -24,17 +24,17 @@ import {
24
24
  serializePresentationPlan,
25
25
  transformNarratedSegment,
26
26
  usesDynamicPresentation
27
- } from "../chunk-NM747LUO.js";
28
- import "../chunk-7IGKCHDP.js";
27
+ } from "../chunk-QFC4JZZH.js";
28
+ import "../chunk-UWLEDXSU.js";
29
29
  import "../chunk-A5QJJZ5S.js";
30
30
  import "../chunk-SVN7T6BK.js";
31
- import "../chunk-PUS54YU6.js";
31
+ import "../chunk-4KTLKEIY.js";
32
32
  import "../chunk-PFH3WV6J.js";
33
33
  import "../chunk-L7QZORLB.js";
34
- import "../chunk-PGWYC3S2.js";
34
+ import "../chunk-Y4OZ5DSG.js";
35
35
  import "../chunk-WSFXV5BT.js";
36
36
  import "../chunk-Q6ELOAOQ.js";
37
- import "../chunk-7N4G32LG.js";
37
+ import "../chunk-CZ7AUSLI.js";
38
38
  import "../chunk-4VOD55SX.js";
39
39
  import "../chunk-GHOPHGOK.js";
40
40
  import "../chunk-XRW6P7IF.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bendyline/squisq",
3
- "version": "2.11.18",
3
+ "version": "2.11.20",
4
4
  "description": "Headless utilities for doc/block rendering, spatial math, Markdown, and storage",
5
5
  "license": "MIT",
6
6
  "author": "Bendyline",
@@ -157,7 +157,7 @@
157
157
  "genson-js": "0.0.8",
158
158
  "hast-util-from-html": "2.0.3",
159
159
  "localforage": "1.10.0",
160
- "ngeohash": "0.6.3",
160
+ "ngeohash": "0.6.4",
161
161
  "remark-directive": "3.0.1",
162
162
  "remark-frontmatter": "5.0.0",
163
163
  "remark-gfm": "4.0.1",