@bendyline/squisq 2.11.13 → 2.11.14
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 +20 -0
- package/dist/{Doc-BWtfp7dT.d.ts → Doc-C-cv1g4G.d.ts} +8 -0
- package/dist/{ImageEditDoc-CYRQK8so.d.ts → ImageEditDoc-3J4PRw8N.d.ts} +1 -1
- package/dist/{chunk-EWO2VLOS.js → chunk-4P557IPH.js} +284 -14
- package/dist/{chunk-BR7ZMDWW.js → chunk-6H2HBBFC.js} +1 -1
- package/dist/{chunk-S4427XKY.js → chunk-GDF2FWL6.js} +9 -5
- package/dist/{chunk-X2TDC4E5.js → chunk-HHGVTXHR.js} +2 -2
- package/dist/{chunk-RLBHQSUG.js → chunk-UVQPK6A3.js} +123 -0
- package/dist/{chunk-GIYWXYCK.js → chunk-XSOIWNZL.js} +8 -0
- package/dist/{chunk-42IU2SJY.js → chunk-YPI2VJSB.js} +190 -45
- package/dist/doc/index.d.ts +11 -7
- package/dist/doc/index.js +3 -3
- package/dist/fence/index.d.ts +1 -1
- package/dist/generate/index.d.ts +1 -1
- package/dist/imageEdit/index.d.ts +3 -3
- package/dist/index.d.ts +5 -5
- package/dist/index.js +9 -7
- package/dist/jsonForm/index.d.ts +1 -1
- package/dist/markdown/index.d.ts +12 -3
- package/dist/markdown/index.js +3 -1
- package/dist/{materializePageSection-Db7pABI0.d.ts → materializePageSection-Dmy_-AUQ.d.ts} +1 -1
- package/dist/mediaEdit/index.d.ts +2 -2
- package/dist/narration/index.d.ts +1 -1
- package/dist/narration/index.js +3 -3
- package/dist/schemas/index.d.ts +4 -4
- package/dist/storage/index.js +1 -1
- package/dist/{themeLibrary-Bphz1CRp.d.ts → themeLibrary-CROfw3YK.d.ts} +1 -1
- package/dist/timing/index.d.ts +1 -1
- package/dist/transform/index.d.ts +8 -2
- package/dist/transform/index.js +2 -2
- package/package.json +1 -1
|
@@ -348,6 +348,8 @@ function createMediaProviderFromContainer(container) {
|
|
|
348
348
|
const generation = generations.get(relativePath) ?? 0;
|
|
349
349
|
const work = (async () => {
|
|
350
350
|
const data = await container.readFile(relativePath);
|
|
351
|
+
if (disposed) return relativePath;
|
|
352
|
+
if ((generations.get(relativePath) ?? 0) !== generation) return resolveUrl(relativePath);
|
|
351
353
|
const entries = data ? await container.listFiles() : [];
|
|
352
354
|
if (disposed) return relativePath;
|
|
353
355
|
if ((generations.get(relativePath) ?? 0) !== generation) return resolveUrl(relativePath);
|
|
@@ -376,6 +378,7 @@ function createMediaProviderFromContainer(container) {
|
|
|
376
378
|
},
|
|
377
379
|
async addMedia(name, data, mimeType) {
|
|
378
380
|
invalidate(name);
|
|
381
|
+
const generation = generations.get(name);
|
|
379
382
|
let buffer;
|
|
380
383
|
if (data instanceof Blob) {
|
|
381
384
|
buffer = await data.arrayBuffer();
|
|
@@ -383,7 +386,12 @@ function createMediaProviderFromContainer(container) {
|
|
|
383
386
|
buffer = data;
|
|
384
387
|
}
|
|
385
388
|
await container.writeFile(name, buffer, mimeType);
|
|
389
|
+
const canCacheUpload = generations.get(name) === generation;
|
|
386
390
|
invalidate(name);
|
|
391
|
+
if (!disposed && canCacheUpload) {
|
|
392
|
+
const bytes = ArrayBuffer.isView(buffer) ? new Uint8Array(buffer).slice().buffer : buffer;
|
|
393
|
+
blobUrlCache.set(name, URL.createObjectURL(new Blob([bytes], { type: mimeType })));
|
|
394
|
+
}
|
|
387
395
|
return name;
|
|
388
396
|
},
|
|
389
397
|
async removeMedia(relativePath) {
|
|
@@ -2153,6 +2153,7 @@ function deriveTemplateInputs(templateName, headingText, contents, options = {})
|
|
|
2153
2153
|
|
|
2154
2154
|
// src/doc/templates/contentBlock.ts
|
|
2155
2155
|
function bodyNodes(context) {
|
|
2156
|
+
if (context.block?.summaryMode === "headings-and-features") return [];
|
|
2156
2157
|
return (context.block?.contents ?? []).filter(
|
|
2157
2158
|
// Mermaid source is already materialized as a visual layer. Repeating the
|
|
2158
2159
|
// fence text as prose makes the loss-averse default noisy without
|
|
@@ -3310,6 +3311,41 @@ function imageWithCaption(input, context) {
|
|
|
3310
3311
|
return layers;
|
|
3311
3312
|
}
|
|
3312
3313
|
|
|
3314
|
+
// src/doc/templates/featureMediaSlot.ts
|
|
3315
|
+
function featureMediaSlot(side, {
|
|
3316
|
+
stack,
|
|
3317
|
+
summaryFeature,
|
|
3318
|
+
sized = false
|
|
3319
|
+
}) {
|
|
3320
|
+
if (summaryFeature) {
|
|
3321
|
+
return {
|
|
3322
|
+
position: {
|
|
3323
|
+
x: stack ? "5%" : side === "left" ? "5%" : "35%",
|
|
3324
|
+
y: "5%",
|
|
3325
|
+
width: stack ? "90%" : "60%",
|
|
3326
|
+
height: stack ? "70%" : "90%"
|
|
3327
|
+
},
|
|
3328
|
+
fit: "contain"
|
|
3329
|
+
};
|
|
3330
|
+
}
|
|
3331
|
+
if (stack) {
|
|
3332
|
+
return {
|
|
3333
|
+
position: { x: "0", y: "0", width: "100%", height: "50%" },
|
|
3334
|
+
fit: sized ? "contain" : "cover"
|
|
3335
|
+
};
|
|
3336
|
+
}
|
|
3337
|
+
if (sized) {
|
|
3338
|
+
return {
|
|
3339
|
+
position: { x: side === "left" ? "5%" : "55%", y: "5%", width: "40%", height: "90%" },
|
|
3340
|
+
fit: "contain"
|
|
3341
|
+
};
|
|
3342
|
+
}
|
|
3343
|
+
return {
|
|
3344
|
+
position: { x: side === "left" ? "0" : "50%", y: "0", width: "50%", height: "100%" },
|
|
3345
|
+
fit: "cover"
|
|
3346
|
+
};
|
|
3347
|
+
}
|
|
3348
|
+
|
|
3313
3349
|
// src/doc/templates/featureBlock.ts
|
|
3314
3350
|
var TITLE_LINE_HEIGHT3 = 1.2;
|
|
3315
3351
|
var BODY_LINE_HEIGHT = 1.5;
|
|
@@ -3375,6 +3411,7 @@ function buildFeatureLayers(input, context, side) {
|
|
|
3375
3411
|
const body = input.body?.trim() ?? "";
|
|
3376
3412
|
const { theme, layout, viewport } = context;
|
|
3377
3413
|
const treatment = themedImageTreatment(context, input.imageTreatment);
|
|
3414
|
+
const summaryFeature = input.summaryMode === "headings-and-features" && !body;
|
|
3378
3415
|
const sized = (imageWidth ?? 0) > 0 || (imageHeight ?? 0) > 0;
|
|
3379
3416
|
const stack = layout.stackColumns;
|
|
3380
3417
|
const titleFont = getThemeFont(context, "title");
|
|
@@ -3383,39 +3420,15 @@ function buildFeatureLayers(input, context, side) {
|
|
|
3383
3420
|
const titleMinSize = themedFontSize(30, context, true);
|
|
3384
3421
|
const bodyBaseSize = themedFontSize(24, context, false);
|
|
3385
3422
|
const bodyMinSize = themedFontSize(18, context, false);
|
|
3386
|
-
|
|
3387
|
-
let imgY;
|
|
3388
|
-
let imgW;
|
|
3389
|
-
let imgH;
|
|
3390
|
-
let imageFit;
|
|
3391
|
-
if (stack) {
|
|
3392
|
-
imgX = "0";
|
|
3393
|
-
imgY = "0";
|
|
3394
|
-
imgW = "100%";
|
|
3395
|
-
imgH = "50%";
|
|
3396
|
-
imageFit = sized ? "contain" : "cover";
|
|
3397
|
-
} else if (sized) {
|
|
3398
|
-
const halfStart = side === "left" ? 5 : 55;
|
|
3399
|
-
imgX = `${halfStart}%`;
|
|
3400
|
-
imgY = "5%";
|
|
3401
|
-
imgW = "40%";
|
|
3402
|
-
imgH = "90%";
|
|
3403
|
-
imageFit = "contain";
|
|
3404
|
-
} else {
|
|
3405
|
-
imgX = side === "left" ? "0" : "50%";
|
|
3406
|
-
imgY = "0";
|
|
3407
|
-
imgW = "50%";
|
|
3408
|
-
imgH = "100%";
|
|
3409
|
-
imageFit = "cover";
|
|
3410
|
-
}
|
|
3423
|
+
const mediaSlot = featureMediaSlot(side, { stack, summaryFeature, sized });
|
|
3411
3424
|
const COLUMN_INSET = 4;
|
|
3412
|
-
const textColumnWidth = stack ? 90 : 42;
|
|
3413
|
-
const textXPct = stack ? (100 - textColumnWidth) / 2 : side === "left" ? 50 + COLUMN_INSET : COLUMN_INSET + 2;
|
|
3425
|
+
const textColumnWidth = stack ? 90 : summaryFeature ? 26 : 42;
|
|
3426
|
+
const textXPct = summaryFeature && !stack ? side === "left" ? 69 : 5 : stack ? (100 - textColumnWidth) / 2 : side === "left" ? 50 + COLUMN_INSET : COLUMN_INSET + 2;
|
|
3414
3427
|
const textX = `${textXPct}%`;
|
|
3415
3428
|
const columnWidthPx = textColumnWidth / 100 * viewport.width;
|
|
3416
3429
|
const textAnchor = "top-left";
|
|
3417
3430
|
const textAlign = "left";
|
|
3418
|
-
const bandTop = (stack ? 0.56 : 0.08) * viewport.height;
|
|
3431
|
+
const bandTop = (stack ? summaryFeature ? 0.79 : 0.56 : 0.08) * viewport.height;
|
|
3419
3432
|
const bandBottom = (stack ? 0.92 : 0.9) * viewport.height;
|
|
3420
3433
|
const bandHeight = bandBottom - bandTop;
|
|
3421
3434
|
const titleWrapWidth = title ? fitWrapWidth(title, titleBaseSize, columnWidthPx, titleFont) : 0;
|
|
@@ -3424,7 +3437,7 @@ function buildFeatureLayers(input, context, side) {
|
|
|
3424
3437
|
baseFontSize: titleBaseSize,
|
|
3425
3438
|
minFontSize: titleMinSize,
|
|
3426
3439
|
maxWidthPx: titleWrapWidth,
|
|
3427
|
-
maxHeightPx: bandHeight * 0.45,
|
|
3440
|
+
maxHeightPx: bandHeight * (summaryFeature ? 1 : 0.45),
|
|
3428
3441
|
lineHeight: TITLE_LINE_HEIGHT3
|
|
3429
3442
|
}) : null;
|
|
3430
3443
|
const titleLines = titleFit ? Math.min(
|
|
@@ -3464,10 +3477,10 @@ function buildFeatureLayers(input, context, side) {
|
|
|
3464
3477
|
content: {
|
|
3465
3478
|
src: imageSrc,
|
|
3466
3479
|
alt: imageAlt ?? title,
|
|
3467
|
-
fit:
|
|
3480
|
+
fit: mediaSlot.fit,
|
|
3468
3481
|
...treatment ? { treatment } : {}
|
|
3469
3482
|
},
|
|
3470
|
-
position:
|
|
3483
|
+
position: mediaSlot.position
|
|
3471
3484
|
});
|
|
3472
3485
|
}
|
|
3473
3486
|
if (title && titleFit) {
|
|
@@ -4902,7 +4915,7 @@ var BLOCK_MEDIA_LAYOUT_POLICIES = {
|
|
|
4902
4915
|
unconsumedMedia: "retain-native-layout"
|
|
4903
4916
|
},
|
|
4904
4917
|
leftFeature: {
|
|
4905
|
-
summary: "
|
|
4918
|
+
summary: "Primary imagery or embedded visuals fill the left feature cell; text occupies the right cell.",
|
|
4906
4919
|
noMedia: "unsupported",
|
|
4907
4920
|
ownership: "required-native",
|
|
4908
4921
|
nativeLayout: "feature-left",
|
|
@@ -4910,7 +4923,7 @@ var BLOCK_MEDIA_LAYOUT_POLICIES = {
|
|
|
4910
4923
|
unconsumedMedia: "retain-native-layout"
|
|
4911
4924
|
},
|
|
4912
4925
|
rightFeature: {
|
|
4913
|
-
summary: "
|
|
4926
|
+
summary: "Primary imagery or embedded visuals fill the right feature cell; text occupies the left cell.",
|
|
4914
4927
|
noMedia: "unsupported",
|
|
4915
4928
|
ownership: "required-native",
|
|
4916
4929
|
nativeLayout: "feature-right",
|
|
@@ -5141,6 +5154,93 @@ function wrappedLineCount2(text, fontSize, maxWidth) {
|
|
|
5141
5154
|
}
|
|
5142
5155
|
|
|
5143
5156
|
// src/doc/richMediaLayout.ts
|
|
5157
|
+
function containedFeatureArea(region, aspects) {
|
|
5158
|
+
const count = aspects.length;
|
|
5159
|
+
const columns = Math.min(
|
|
5160
|
+
count,
|
|
5161
|
+
Math.max(1, Math.ceil(Math.sqrt(count * region.width / region.height)))
|
|
5162
|
+
);
|
|
5163
|
+
const rows = Math.ceil(count / columns);
|
|
5164
|
+
const width = region.width / columns;
|
|
5165
|
+
const height = region.height / rows;
|
|
5166
|
+
return aspects.reduce((area, aspect) => {
|
|
5167
|
+
const ratio = aspect && Number.isFinite(aspect) && aspect > 0 ? aspect : 16 / 9;
|
|
5168
|
+
const containedWidth = Math.min(width, height * ratio);
|
|
5169
|
+
return area + containedWidth * (containedWidth / ratio);
|
|
5170
|
+
}, 0);
|
|
5171
|
+
}
|
|
5172
|
+
function resolveFeatureSummaryLayout(layers, viewport, aspectRatios) {
|
|
5173
|
+
const title = layers.find((layer) => layer.type === "text" && layer.id === "title");
|
|
5174
|
+
if (!title || title.type !== "text") {
|
|
5175
|
+
return { layers, mediaRect: rect(viewport, 0.045, 0.045, 0.91, 0.91), framed: false };
|
|
5176
|
+
}
|
|
5177
|
+
const unit = Math.min(viewport.width, viewport.height);
|
|
5178
|
+
const margin = unit * 0.045;
|
|
5179
|
+
const gap = unit * 0.035;
|
|
5180
|
+
const baseFontSize = Math.min(title.content.style.fontSize, unit * 0.056);
|
|
5181
|
+
const minFontSize = Math.min(baseFontSize, unit * 0.026);
|
|
5182
|
+
const lineHeight = 1.2;
|
|
5183
|
+
const topWidth = viewport.width - margin * 2;
|
|
5184
|
+
const topFit = fitProse({
|
|
5185
|
+
text: title.content.text,
|
|
5186
|
+
baseFontSize,
|
|
5187
|
+
minFontSize,
|
|
5188
|
+
maxWidthPx: topWidth,
|
|
5189
|
+
maxHeightPx: viewport.height * 0.26,
|
|
5190
|
+
lineHeight
|
|
5191
|
+
});
|
|
5192
|
+
const mediaTop = margin + topFit.heightPx + gap;
|
|
5193
|
+
const topMedia = {
|
|
5194
|
+
x: margin,
|
|
5195
|
+
y: mediaTop,
|
|
5196
|
+
width: topWidth,
|
|
5197
|
+
height: viewport.height - margin - mediaTop
|
|
5198
|
+
};
|
|
5199
|
+
const sideWidth = viewport.width * 0.25;
|
|
5200
|
+
const sideMedia = {
|
|
5201
|
+
x: margin + sideWidth + gap,
|
|
5202
|
+
y: margin,
|
|
5203
|
+
width: viewport.width - margin * 2 - sideWidth - gap,
|
|
5204
|
+
height: viewport.height - margin * 2
|
|
5205
|
+
};
|
|
5206
|
+
const side = containedFeatureArea(sideMedia, aspectRatios) > containedFeatureArea(topMedia, aspectRatios) * 1.04;
|
|
5207
|
+
const titleWidth = side ? sideWidth : topWidth;
|
|
5208
|
+
const titleFit = side ? fitProse({
|
|
5209
|
+
text: title.content.text,
|
|
5210
|
+
baseFontSize,
|
|
5211
|
+
minFontSize,
|
|
5212
|
+
maxWidthPx: titleWidth,
|
|
5213
|
+
maxHeightPx: sideMedia.height,
|
|
5214
|
+
lineHeight
|
|
5215
|
+
}) : topFit;
|
|
5216
|
+
const titleLayer = {
|
|
5217
|
+
...title,
|
|
5218
|
+
position: {
|
|
5219
|
+
...title.position,
|
|
5220
|
+
x: side ? margin : viewport.width / 2,
|
|
5221
|
+
y: side ? viewport.height / 2 - titleFit.heightPx / 2 : margin + titleFit.heightPx / 2,
|
|
5222
|
+
width: titleWidth,
|
|
5223
|
+
height: titleFit.heightPx,
|
|
5224
|
+
anchor: side ? "top-left" : "center"
|
|
5225
|
+
},
|
|
5226
|
+
content: {
|
|
5227
|
+
...title.content,
|
|
5228
|
+
style: {
|
|
5229
|
+
...title.content.style,
|
|
5230
|
+
fontSize: titleFit.fontSize,
|
|
5231
|
+
lineHeight,
|
|
5232
|
+
textAlign: side ? "left" : "center",
|
|
5233
|
+
maxLines: titleFit.maxLines,
|
|
5234
|
+
shrinkToFit: true
|
|
5235
|
+
}
|
|
5236
|
+
}
|
|
5237
|
+
};
|
|
5238
|
+
return {
|
|
5239
|
+
layers: [...layers.filter((layer) => isFullViewportBackground(layer, viewport)), titleLayer],
|
|
5240
|
+
mediaRect: side ? sideMedia : topMedia,
|
|
5241
|
+
framed: false
|
|
5242
|
+
};
|
|
5243
|
+
}
|
|
5144
5244
|
function rect(viewport, x, y, width, height) {
|
|
5145
5245
|
return {
|
|
5146
5246
|
x: viewport.width * x,
|
|
@@ -5553,12 +5653,31 @@ function leastObstructedMediaRect(layers, viewport) {
|
|
|
5553
5653
|
return score < bestScore ? candidate : best;
|
|
5554
5654
|
});
|
|
5555
5655
|
}
|
|
5556
|
-
function resolveSupplementalMediaLayout(layers, template, viewport, mediaCount, aspectRatios) {
|
|
5656
|
+
function resolveSupplementalMediaLayout(layers, template, viewport, mediaCount, aspectRatios, featureOptions = {}) {
|
|
5557
5657
|
const policy = getBlockMediaLayoutPolicy(template);
|
|
5558
5658
|
const shape = mediaShape(mediaCount, aspectRatios);
|
|
5559
5659
|
const alreadyOwnsMedia = layers.some(
|
|
5560
5660
|
(layer) => layer.type === "image" || layer.type === "video" || layer.type === "map" || layer.type === "mermaid"
|
|
5561
5661
|
);
|
|
5662
|
+
if (!alreadyOwnsMedia && (policy?.nativeLayout === "feature-left" || policy?.nativeLayout === "feature-right")) {
|
|
5663
|
+
const { position } = featureMediaSlot(
|
|
5664
|
+
policy.nativeLayout === "feature-left" ? "left" : "right",
|
|
5665
|
+
{
|
|
5666
|
+
stack: featureOptions.stackColumns ?? getViewportOrientation(viewport) === "portrait",
|
|
5667
|
+
summaryFeature: featureOptions.summaryFeature ?? false
|
|
5668
|
+
}
|
|
5669
|
+
);
|
|
5670
|
+
return {
|
|
5671
|
+
layers,
|
|
5672
|
+
mediaRect: {
|
|
5673
|
+
x: resolvePositionValue(position.x, viewport.width),
|
|
5674
|
+
y: resolvePositionValue(position.y, viewport.height),
|
|
5675
|
+
width: resolvePositionValue(position.width, viewport.width),
|
|
5676
|
+
height: resolvePositionValue(position.height, viewport.height)
|
|
5677
|
+
},
|
|
5678
|
+
framed: false
|
|
5679
|
+
};
|
|
5680
|
+
}
|
|
5562
5681
|
const retainNativeLayout = policy?.unconsumedMedia === "retain-native-layout" || policy?.unconsumedMedia === "reserve-when-no-native-media" && alreadyOwnsMedia;
|
|
5563
5682
|
if (policy?.additionalMediaLayout === "overlay-inset" && retainNativeLayout) {
|
|
5564
5683
|
return {
|
|
@@ -9638,7 +9757,8 @@ function materializeBlockLayersWithRuntime(block, options, runtime) {
|
|
|
9638
9757
|
cloneData(existingLayers),
|
|
9639
9758
|
block,
|
|
9640
9759
|
theme,
|
|
9641
|
-
viewport
|
|
9760
|
+
viewport,
|
|
9761
|
+
options.mediaAspectRatios
|
|
9642
9762
|
);
|
|
9643
9763
|
return {
|
|
9644
9764
|
layers: injectPersistentLayers(
|
|
@@ -9652,7 +9772,13 @@ function materializeBlockLayersWithRuntime(block, options, runtime) {
|
|
|
9652
9772
|
};
|
|
9653
9773
|
}
|
|
9654
9774
|
if (!isTemplateBlock(block)) {
|
|
9655
|
-
const layers = appendRichContentLayers(
|
|
9775
|
+
const layers = appendRichContentLayers(
|
|
9776
|
+
[],
|
|
9777
|
+
block,
|
|
9778
|
+
theme,
|
|
9779
|
+
viewport,
|
|
9780
|
+
options.mediaAspectRatios
|
|
9781
|
+
);
|
|
9656
9782
|
return {
|
|
9657
9783
|
layers: injectPersistentLayers(
|
|
9658
9784
|
layers,
|
|
@@ -9669,7 +9795,13 @@ function materializeBlockLayersWithRuntime(block, options, runtime) {
|
|
|
9669
9795
|
const execution = executeTemplateMaterialization(block, context, runtime.registry);
|
|
9670
9796
|
if (execution.status === "ok") {
|
|
9671
9797
|
const styledLayers = runtime.applyRenderStyle !== false ? applyRenderStyleToLayers(execution.layers, block, theme) : execution.layers;
|
|
9672
|
-
const layers = appendRichContentLayers(
|
|
9798
|
+
const layers = appendRichContentLayers(
|
|
9799
|
+
styledLayers,
|
|
9800
|
+
block,
|
|
9801
|
+
theme,
|
|
9802
|
+
viewport,
|
|
9803
|
+
options.mediaAspectRatios
|
|
9804
|
+
);
|
|
9673
9805
|
return {
|
|
9674
9806
|
layers: injectPersistentLayers(
|
|
9675
9807
|
layers,
|
|
@@ -9940,16 +10072,25 @@ function applyEmbeddedVideoTiming(layers, block) {
|
|
|
9940
10072
|
};
|
|
9941
10073
|
});
|
|
9942
10074
|
}
|
|
9943
|
-
function appendRichContentLayers(layers, block, theme, viewport) {
|
|
10075
|
+
function appendRichContentLayers(layers, block, theme, viewport, mediaAspectRatios) {
|
|
9944
10076
|
const timedLayers = applyEmbeddedVideoTiming(layers, block);
|
|
9945
10077
|
const items = collectRichMediaItems(timedLayers, block);
|
|
9946
10078
|
if (items.length === 0) return timedLayers;
|
|
9947
|
-
const
|
|
10079
|
+
const aspects = items.map((item) => {
|
|
10080
|
+
const key = item.kind === "image" || item.kind === "video" ? item.src : item.kind === "mermaid" ? item.source : void 0;
|
|
10081
|
+
const intrinsic = key ? mediaAspectRatios?.[key] : void 0;
|
|
10082
|
+
return intrinsic && Number.isFinite(intrinsic) && intrinsic > 0 ? intrinsic : item.aspectRatio;
|
|
10083
|
+
});
|
|
10084
|
+
const layout = block.summaryLayout === "feature" ? resolveFeatureSummaryLayout(timedLayers, viewport, aspects) : resolveSupplementalMediaLayout(
|
|
9948
10085
|
timedLayers,
|
|
9949
10086
|
block.template ? resolveTemplateName(block.template) : void 0,
|
|
9950
10087
|
viewport,
|
|
9951
10088
|
items.length,
|
|
9952
|
-
|
|
10089
|
+
aspects,
|
|
10090
|
+
{
|
|
10091
|
+
summaryFeature: block.summaryMode === "headings-and-features" && !timedLayers.some((layer) => layer.id === "feature-body"),
|
|
10092
|
+
stackColumns: createTemplateContext(theme, 0, 1, viewport).layout.stackColumns
|
|
10093
|
+
}
|
|
9953
10094
|
);
|
|
9954
10095
|
const cells = gridCells(layout.mediaRect, items.length, viewport, layout.framed);
|
|
9955
10096
|
const counters = {
|
|
@@ -10669,7 +10810,7 @@ function expandCoverBlock(config, context, template = "cover") {
|
|
|
10669
10810
|
}
|
|
10670
10811
|
|
|
10671
10812
|
// src/doc/templates/index.ts
|
|
10672
|
-
function materializeScheduledBlock(sourceBlock, blockIndex, totalBlocks, theme, viewport, persistentLayers, expandedPersistentLayers, registry, failureMode, onDiagnostic, motion) {
|
|
10813
|
+
function materializeScheduledBlock(sourceBlock, blockIndex, totalBlocks, theme, viewport, persistentLayers, expandedPersistentLayers, registry, failureMode, onDiagnostic, motion, mediaAspectRatios) {
|
|
10673
10814
|
const materialized = materializeBlockLayersWithRuntime(
|
|
10674
10815
|
sourceBlock,
|
|
10675
10816
|
{
|
|
@@ -10679,7 +10820,8 @@ function materializeScheduledBlock(sourceBlock, blockIndex, totalBlocks, theme,
|
|
|
10679
10820
|
blockIndex,
|
|
10680
10821
|
totalBlocks,
|
|
10681
10822
|
failureMode,
|
|
10682
|
-
motion
|
|
10823
|
+
motion,
|
|
10824
|
+
mediaAspectRatios
|
|
10683
10825
|
},
|
|
10684
10826
|
{ registry, expandedPersistentLayers }
|
|
10685
10827
|
);
|
|
@@ -10739,7 +10881,8 @@ function expandDocBlocks(blocks, options = {}) {
|
|
|
10739
10881
|
registry,
|
|
10740
10882
|
failureMode,
|
|
10741
10883
|
onDiagnostic,
|
|
10742
|
-
motion
|
|
10884
|
+
motion,
|
|
10885
|
+
opts.mediaAspectRatios
|
|
10743
10886
|
);
|
|
10744
10887
|
expandedBlock.startTime = currentTime;
|
|
10745
10888
|
currentTime += expandedBlock.duration;
|
|
@@ -10772,7 +10915,8 @@ function expandDocBlocks(blocks, options = {}) {
|
|
|
10772
10915
|
registry,
|
|
10773
10916
|
failureMode,
|
|
10774
10917
|
onDiagnostic,
|
|
10775
|
-
motion
|
|
10918
|
+
motion,
|
|
10919
|
+
opts.mediaAspectRatios
|
|
10776
10920
|
);
|
|
10777
10921
|
expandedBlock.startTime = offsetTime;
|
|
10778
10922
|
offsetTime += expandedBlock.duration;
|
|
@@ -10811,7 +10955,8 @@ function expandDocBlocks(blocks, options = {}) {
|
|
|
10811
10955
|
registry,
|
|
10812
10956
|
failureMode,
|
|
10813
10957
|
onDiagnostic,
|
|
10814
|
-
motion
|
|
10958
|
+
motion,
|
|
10959
|
+
opts.mediaAspectRatios
|
|
10815
10960
|
);
|
|
10816
10961
|
const templateBlock = block;
|
|
10817
10962
|
expandedInfos.push({
|
package/dist/doc/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { bq as TemplateBlock, br as TemplateContext, a6 as Layer, y as CustomTemplateDefinition, bt as TemplateRegistry, bw as Theme, b$ as ViewportConfig, a_ as PersistentLayerConfig, at as MotionSpec, R as DocBlock, c0 as ViewportOrientation, aZ as PersistentLayer, bJ as TitleBlockInput, bf as SectionHeaderInput, j as BigTextInput, u as ContentBlockInput, bl as StatHighlightInput, b9 as QuoteBlockInput, Y as FactCardInput, bR as TwoColumnInput, J as DateEventInput, a4 as ImageWithCaptionInput, a9 as LeftFeatureInput, bc as RightFeatureInput, ae as MapBlockInput, bk as StartBlockConfig, $ as FullBleedQuoteInput, ac as ListBlockInput, b2 as PhotoGridInput, L as DefinitionCardInput, t as ComparisonBarInput, b8 as PullQuoteInput, b_ as VideoWithCaptionInput, bZ as VideoPullQuoteInput, I as DataTableInput, M as DiagramBlockInput, bM as TreeBlockInput, bF as TimelineBlockInput, k as Block, U as DrawingBlockInput, ai as MarkerStyle, A as AccentImage, a3 as ImageTreatment, a as AccentPosition, c as Animation, d as AnimationType, au as MotionState, ar as MotionProfile, by as ThemeColorScheme, w as CountUpSpec, Q as Doc, bA as ThemeRegistry, aR as PageEmphasis, bz as ThemePageStyle, S as DocDiagnostic, P as DiagramTemplateNode, O as DiagramTemplateEdge, bI as TimelineTemplateTrack, bH as TimelineTemplateLink } from '../Doc-
|
|
2
|
-
export { V as FRONTMATTER_CUSTOM_TEMPLATES_KEY, W as FRONTMATTER_CUSTOM_THEMES_KEY, a8 as LayoutHints, bb as RenderStyle, bx as ThemeColorPalette, bD as ThemeStyle, bE as ThemeTypography, bS as VIEWPORT_PRESETS, c1 as ViewportPreset, c6 as createTemplateContext, cd as getLayoutHints, cg as getTwoColumnPositions, ch as getViewport, ci as getViewportOrientation, cm as isTemplateBlock, cs as scaledFontSize } from '../Doc-
|
|
1
|
+
import { bq as TemplateBlock, br as TemplateContext, a6 as Layer, y as CustomTemplateDefinition, bt as TemplateRegistry, bw as Theme, b$ as ViewportConfig, a_ as PersistentLayerConfig, at as MotionSpec, R as DocBlock, c0 as ViewportOrientation, aZ as PersistentLayer, bJ as TitleBlockInput, bf as SectionHeaderInput, j as BigTextInput, u as ContentBlockInput, bl as StatHighlightInput, b9 as QuoteBlockInput, Y as FactCardInput, bR as TwoColumnInput, J as DateEventInput, a4 as ImageWithCaptionInput, a9 as LeftFeatureInput, bc as RightFeatureInput, ae as MapBlockInput, bk as StartBlockConfig, $ as FullBleedQuoteInput, ac as ListBlockInput, b2 as PhotoGridInput, L as DefinitionCardInput, t as ComparisonBarInput, b8 as PullQuoteInput, b_ as VideoWithCaptionInput, bZ as VideoPullQuoteInput, I as DataTableInput, M as DiagramBlockInput, bM as TreeBlockInput, bF as TimelineBlockInput, k as Block, U as DrawingBlockInput, ai as MarkerStyle, A as AccentImage, a3 as ImageTreatment, a as AccentPosition, c as Animation, d as AnimationType, au as MotionState, ar as MotionProfile, by as ThemeColorScheme, w as CountUpSpec, Q as Doc, bA as ThemeRegistry, aR as PageEmphasis, bz as ThemePageStyle, S as DocDiagnostic, P as DiagramTemplateNode, O as DiagramTemplateEdge, bI as TimelineTemplateTrack, bH as TimelineTemplateLink } from '../Doc-C-cv1g4G.js';
|
|
2
|
+
export { V as FRONTMATTER_CUSTOM_TEMPLATES_KEY, W as FRONTMATTER_CUSTOM_THEMES_KEY, a8 as LayoutHints, bb as RenderStyle, bx as ThemeColorPalette, bD as ThemeStyle, bE as ThemeTypography, bS as VIEWPORT_PRESETS, c1 as ViewportPreset, c6 as createTemplateContext, cd as getLayoutHints, cg as getTwoColumnPositions, ch as getViewport, ci as getViewportOrientation, cm as isTemplateBlock, cs as scaledFontSize } from '../Doc-C-cv1g4G.js';
|
|
3
3
|
import { L as MarkdownNode, a5 as TransitionType, a4 as TransitionDirection, M as MarkdownBlockNode, r as MarkdownHeading, n as MarkdownDocument, V as MarkdownTable, i as MarkdownCodeBlock, G as MarkdownList } from '../types-Be6sBUBx.js';
|
|
4
4
|
import { C as CoercedBlockMeta } from '../annotationCoercion-Ckqpu33y.js';
|
|
5
|
-
import { c as PageSection } from '../materializePageSection-
|
|
6
|
-
export { M as MaterializePageSectionOptions, a as MaterializePageSectionsOptions, P as PageMedia, b as PageRichText, d as PageSectionDiagnostic, e as PageSectionItem, f as PageSectionMaterialization, g as PageSectionSource, h as PageSpatialKind, i as PageTransformHints, m as materializePageSection, j as materializePageSections, r as resolvePageStyle } from '../materializePageSection-
|
|
5
|
+
import { c as PageSection } from '../materializePageSection-Dmy_-AUQ.js';
|
|
6
|
+
export { M as MaterializePageSectionOptions, a as MaterializePageSectionsOptions, P as PageMedia, b as PageRichText, d as PageSectionDiagnostic, e as PageSectionItem, f as PageSectionMaterialization, g as PageSectionSource, h as PageSpatialKind, i as PageTransformHints, m as materializePageSection, j as materializePageSections, r as resolvePageStyle } from '../materializePageSection-Dmy_-AUQ.js';
|
|
7
7
|
import { C as ContentContainer } from '../ContentContainer-B2w9sUoL.js';
|
|
8
8
|
import { V as ViewIssue } from '../viewState-lTZS-hP_.js';
|
|
9
|
-
export { D as DEFAULT_THEME, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from '../themeLibrary-
|
|
9
|
+
export { D as DEFAULT_THEME, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from '../themeLibrary-CROfw3YK.js';
|
|
10
10
|
|
|
11
11
|
/** Runtime registry composition for built-in and document-scoped templates. */
|
|
12
12
|
|
|
@@ -89,6 +89,8 @@ interface MaterializeBlockLayersOptions {
|
|
|
89
89
|
failureMode?: LayerMaterializationFailureMode;
|
|
90
90
|
/** Motion profile for template output; omitted → theme default, else `calm`. */
|
|
91
91
|
motion?: MotionSpec | null;
|
|
92
|
+
/** Intrinsic media aspect ratios, keyed by image/video URL or Mermaid source. */
|
|
93
|
+
mediaAspectRatios?: Readonly<Record<string, number>>;
|
|
92
94
|
}
|
|
93
95
|
/**
|
|
94
96
|
* Turn any doc block into an owned, render-ready layer graph.
|
|
@@ -491,7 +493,7 @@ declare const BLOCK_MEDIA_LAYOUT_POLICIES: {
|
|
|
491
493
|
readonly unconsumedMedia: "retain-native-layout";
|
|
492
494
|
};
|
|
493
495
|
readonly leftFeature: {
|
|
494
|
-
readonly summary: "
|
|
496
|
+
readonly summary: "Primary imagery or embedded visuals fill the left feature cell; text occupies the right cell.";
|
|
495
497
|
readonly noMedia: "unsupported";
|
|
496
498
|
readonly ownership: "required-native";
|
|
497
499
|
readonly nativeLayout: "feature-left";
|
|
@@ -499,7 +501,7 @@ declare const BLOCK_MEDIA_LAYOUT_POLICIES: {
|
|
|
499
501
|
readonly unconsumedMedia: "retain-native-layout";
|
|
500
502
|
};
|
|
501
503
|
readonly rightFeature: {
|
|
502
|
-
readonly summary: "
|
|
504
|
+
readonly summary: "Primary imagery or embedded visuals fill the right feature cell; text occupies the left cell.";
|
|
503
505
|
readonly noMedia: "unsupported";
|
|
504
506
|
readonly ownership: "required-native";
|
|
505
507
|
readonly nativeLayout: "feature-right";
|
|
@@ -1753,6 +1755,8 @@ interface ExpandDocBlocksOptions {
|
|
|
1753
1755
|
* `resolveMotionForDoc()` so `Doc.motion` and frontmatter take part.
|
|
1754
1756
|
*/
|
|
1755
1757
|
motion?: MotionSpec | null;
|
|
1758
|
+
/** Intrinsic media aspect ratios for adaptive feature summaries. */
|
|
1759
|
+
mediaAspectRatios?: Readonly<Record<string, number>>;
|
|
1756
1760
|
}
|
|
1757
1761
|
declare function expandDocBlocks(blocks: DocBlock[], options?: ExpandDocBlocksOptions): Block[];
|
|
1758
1762
|
/**
|
package/dist/doc/index.js
CHANGED
|
@@ -74,8 +74,8 @@ import {
|
|
|
74
74
|
validateMarkdownSource,
|
|
75
75
|
wordRevealDelay,
|
|
76
76
|
writeDashboardLayoutsToFrontmatter
|
|
77
|
-
} from "../chunk-
|
|
78
|
-
import "../chunk-
|
|
77
|
+
} from "../chunk-GDF2FWL6.js";
|
|
78
|
+
import "../chunk-6H2HBBFC.js";
|
|
79
79
|
import {
|
|
80
80
|
ASCII_CHAR_H,
|
|
81
81
|
ASCII_CHAR_W,
|
|
@@ -206,7 +206,7 @@ import {
|
|
|
206
206
|
wrapWithPersistentLayers,
|
|
207
207
|
writeCustomTemplatesToFrontmatter,
|
|
208
208
|
writeCustomThemesToFrontmatter
|
|
209
|
-
} from "../chunk-
|
|
209
|
+
} from "../chunk-YPI2VJSB.js";
|
|
210
210
|
import {
|
|
211
211
|
ASCII_DIAGRAM_FENCE_LANGS,
|
|
212
212
|
ASCII_TIMELINE_FENCE_LANGS,
|
package/dist/fence/index.d.ts
CHANGED
package/dist/generate/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { E as ExtractedElement } from '../contentExtractor-BNfVJV2U.js';
|
|
2
2
|
export { C as ComparisonData, D as DateData, a as DefinitionData, b as ExtractionOptions, c as ExtractionResult, d as ExtractionType, F as FactData, I as ImpactLineData, L as ListData, Q as QuoteData, S as StatData, e as extractContent, s as stripMarkdown } from '../contentExtractor-BNfVJV2U.js';
|
|
3
|
-
import { r as ColorScheme, A as AccentImage, bq as TemplateBlock } from '../Doc-
|
|
3
|
+
import { r as ColorScheme, A as AccentImage, bq as TemplateBlock } from '../Doc-C-cv1g4G.js';
|
|
4
4
|
import '../types-Be6sBUBx.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as ImageEditDoc, b as ImageEditLayer } from '../ImageEditDoc-
|
|
2
|
-
export { E as EditorLayerMeta, I as ImageEditCanvas, c as ImageEditLayerKind, d as ImageEditMeta } from '../ImageEditDoc-
|
|
1
|
+
import { a as ImageEditDoc, b as ImageEditLayer } from '../ImageEditDoc-3J4PRw8N.js';
|
|
2
|
+
export { E as EditorLayerMeta, I as ImageEditCanvas, c as ImageEditLayerKind, d as ImageEditMeta } from '../ImageEditDoc-3J4PRw8N.js';
|
|
3
3
|
import { C as ContentContainer } from '../ContentContainer-B2w9sUoL.js';
|
|
4
4
|
import { V as Version, C as CoalesceOptions, P as PrunePolicy } from '../types-8QjefM9J.js';
|
|
5
|
-
import '../Doc-
|
|
5
|
+
import '../Doc-C-cv1g4G.js';
|
|
6
6
|
import '../types-Be6sBUBx.js';
|
|
7
7
|
|
|
8
8
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
export { B as BoundingBox, C as Coordinates } from './Types-sh2VRxfo.js';
|
|
2
|
-
export { A as AccentImage, a as AccentPosition, b as AmbientGradientConfig, c as Animation, d as AnimationType, e as AreaChartInput, f as AudioBookmark, g as AudioSegment, h as AudioTimingData, i as AudioTrack, B as BarChartInput, j as BigTextInput, k as Block, l as BlockConnection, m as BorderStyle, C as CaptionPhrase, n as CaptionTrack, o as CaptionWord, p as ChartBaseFields, q as ChartTemplateInput, r as ColorScheme, s as ColumnChartInput, t as ComparisonBarInput, u as ContentBlockInput, v as CornerBrandingConfig, w as CountUpSpec, x as CreateTemplateContextOptions, y as CustomTemplateDefinition, z as CustomTemplateLayer, D as CustomTemplateValidationError, E as CustomTemplateValidationResult, F as DARK_SURFACE, G as DEFAULT_DOC_FONT, H as DEFAULT_TITLE_FONT, I as DataTableInput, J as DateEventInput, K as DeepPartial, L as DefinitionCardInput, M as DiagramBlockInput, N as DiagramEdgeAnchor, O as DiagramTemplateEdge, P as DiagramTemplateNode, Q as Doc, R as DocBlock, S as DocDiagnostic, T as DonutChartInput, U as DrawingBlockInput, V as FRONTMATTER_CUSTOM_TEMPLATES_KEY, W as FRONTMATTER_CUSTOM_THEMES_KEY, X as FRONTMATTER_MOTION_KEY, Y as FactCardInput, Z as FontFamily, _ as FontFamilyKind, $ as FullBleedQuoteInput, a0 as GradientBackgroundConfig, a1 as ImageBackgroundConfig, a2 as ImageLayer, a3 as ImageTreatment, a4 as ImageWithCaptionInput, a5 as LIGHT_SURFACE, a6 as Layer, a7 as LayerRepeat, a8 as LayoutHints, a9 as LeftFeatureInput, aa as LineChartInput, ab as LinearGradient, ac as ListBlockInput, ad as MOTION_PROFILES, ae as MapBlockInput, af as MapLayer, ag as MapMarker, ah as MapTileStyle, ai as MarkerStyle, aj as MediaClip, ak as MediaCrop, al as MediaCut, am as MediaEdits, an as MediaScheduleOptions, ao as MermaidLayer, ap as MotionEntrance, aq as MotionOrigin, ar as MotionProfile, as as MotionProfileName, at as MotionSpec, au as MotionState, av as PAGE_ACCENT_STRATEGIES, aw as PAGE_BACKGROUNDS, ax as PAGE_BACKGROUND_RHYTHMS, ay as PAGE_DESIGN_FAMILIES, az as PAGE_DIVIDERS, aA as PAGE_EMPHASES, aB as PAGE_EYEBROWS, aC as PAGE_HEADING_CASES, aD as PAGE_HEADING_SCALES, aE as PAGE_HEADING_UNDERLINES, aF as PAGE_HERO_STYLES, aG as PAGE_IMAGE_FRAMINGS, aH as PAGE_NUMERAL_STYLES, aI as PAGE_PATTERNS, aJ as PAGE_QUOTE_MARKS, aK as PAGE_SECTION_KINDS, aL as PAGE_SECTION_SPACINGS, aM as PAGE_SHADOWS, aN as PAGE_VARIANTS, aO as PageAccentRotation, aP as PageBackground, aQ as PageDesignFamily, aR as PageEmphasis, aS as PageHeadingTreatment, aT as PageSectionKind, aU as PageSectionOverride, aV as PageTokens, aW as PageVariant, aX as PathLayer, aY as PatternBackgroundConfig, aZ as PersistentLayer, a_ as PersistentLayerConfig, a$ as PersistentLayerTemplate, b0 as PersistentLayerTemplateConfig, b1 as PersistentLayerTemplateType, b2 as PhotoGridInput, b3 as PieChartInput, b4 as PipStyle, b5 as Position, b6 as ProgressIndicatorConfig, b7 as PromotedBodyAnnotation, b8 as PullQuoteInput, b9 as QuoteBlockInput, ba as RawLayersInput, bb as RenderStyle, bc as RightFeatureInput, bd as ScatterChartInput, be as ScheduledClip, bf as SectionHeaderInput, bg as ShapeFilter, bh as ShapeLayer, bi as ShapePattern, bj as SolidBackgroundConfig, bk as StartBlockConfig, bl as StatHighlightInput, bm as SurfaceScheme, bn as THEME_SCHEMA_VERSION, bo as TableLayer, bp as TableLayerStyle, bq as TemplateBlock, br as TemplateContext, bs as TemplateFunction, bt as TemplateRegistry, bu as TextLayer, bv as TextStyle, bw as Theme, bx as ThemeColorPalette, by as ThemeColorScheme, bz as ThemePageStyle, bA as ThemeRegistry, bB as ThemeSchemaVersion, bC as ThemeSeedColors, bD as ThemeStyle, bE as ThemeTypography, bF as TimelineBlockInput, bG as TimelineTemplateEvent, bH as TimelineTemplateLink, bI as TimelineTemplateTrack, bJ as TitleBlockInput, bK as TitleCaptionConfig, bL as TranscriptBlockInput, bM as TreeBlockInput, bN as TreeLayer, bO as TreeLayerItem, bP as TreeLayerStyle, bQ as TreeTemplateItem, bR as TwoColumnInput, bS as VIEWPORT_PRESETS, bT as VideoLayer, bU as VideoPipPosition, bV as VideoPipShape, bW as VideoPipSize, bX as VideoPlacement, bY as VideoPresentation, bZ as VideoPullQuoteInput, b_ as VideoWithCaptionInput, b$ as ViewportConfig, c0 as ViewportOrientation, c1 as ViewportPreset, c2 as VignetteConfig, c3 as applySurface, c4 as calculateDuration, c5 as calculateFontScale, c6 as createTemplateContext, c7 as createTheme, c8 as createThemeRegistry, c9 as getAspectRatioString, ca as getBlockAtTime, cb as getCaptionAtTime, cc as getDocPlaybackDuration, cd as getLayoutHints, ce as getSafeTextBounds, cf as getSegmentAtTime, cg as getTwoColumnPositions, ch as getViewport, ci as getViewportOrientation, cj as isCustomTemplateDefinition, ck as isMotionProfileName, cl as isPersistentLayerTemplate, cm as isTemplateBlock, cn as layoutScaledFontSize, co as readFrontmatterMotion, cp as resolveMediaSchedule, cq as resolveMotionForDoc, cr as resolveMotionProfile, cs as scaledFontSize, ct as scheduleMediaClip, cu as validateCustomTemplateDefinition } from './Doc-
|
|
2
|
+
export { A as AccentImage, a as AccentPosition, b as AmbientGradientConfig, c as Animation, d as AnimationType, e as AreaChartInput, f as AudioBookmark, g as AudioSegment, h as AudioTimingData, i as AudioTrack, B as BarChartInput, j as BigTextInput, k as Block, l as BlockConnection, m as BorderStyle, C as CaptionPhrase, n as CaptionTrack, o as CaptionWord, p as ChartBaseFields, q as ChartTemplateInput, r as ColorScheme, s as ColumnChartInput, t as ComparisonBarInput, u as ContentBlockInput, v as CornerBrandingConfig, w as CountUpSpec, x as CreateTemplateContextOptions, y as CustomTemplateDefinition, z as CustomTemplateLayer, D as CustomTemplateValidationError, E as CustomTemplateValidationResult, F as DARK_SURFACE, G as DEFAULT_DOC_FONT, H as DEFAULT_TITLE_FONT, I as DataTableInput, J as DateEventInput, K as DeepPartial, L as DefinitionCardInput, M as DiagramBlockInput, N as DiagramEdgeAnchor, O as DiagramTemplateEdge, P as DiagramTemplateNode, Q as Doc, R as DocBlock, S as DocDiagnostic, T as DonutChartInput, U as DrawingBlockInput, V as FRONTMATTER_CUSTOM_TEMPLATES_KEY, W as FRONTMATTER_CUSTOM_THEMES_KEY, X as FRONTMATTER_MOTION_KEY, Y as FactCardInput, Z as FontFamily, _ as FontFamilyKind, $ as FullBleedQuoteInput, a0 as GradientBackgroundConfig, a1 as ImageBackgroundConfig, a2 as ImageLayer, a3 as ImageTreatment, a4 as ImageWithCaptionInput, a5 as LIGHT_SURFACE, a6 as Layer, a7 as LayerRepeat, a8 as LayoutHints, a9 as LeftFeatureInput, aa as LineChartInput, ab as LinearGradient, ac as ListBlockInput, ad as MOTION_PROFILES, ae as MapBlockInput, af as MapLayer, ag as MapMarker, ah as MapTileStyle, ai as MarkerStyle, aj as MediaClip, ak as MediaCrop, al as MediaCut, am as MediaEdits, an as MediaScheduleOptions, ao as MermaidLayer, ap as MotionEntrance, aq as MotionOrigin, ar as MotionProfile, as as MotionProfileName, at as MotionSpec, au as MotionState, av as PAGE_ACCENT_STRATEGIES, aw as PAGE_BACKGROUNDS, ax as PAGE_BACKGROUND_RHYTHMS, ay as PAGE_DESIGN_FAMILIES, az as PAGE_DIVIDERS, aA as PAGE_EMPHASES, aB as PAGE_EYEBROWS, aC as PAGE_HEADING_CASES, aD as PAGE_HEADING_SCALES, aE as PAGE_HEADING_UNDERLINES, aF as PAGE_HERO_STYLES, aG as PAGE_IMAGE_FRAMINGS, aH as PAGE_NUMERAL_STYLES, aI as PAGE_PATTERNS, aJ as PAGE_QUOTE_MARKS, aK as PAGE_SECTION_KINDS, aL as PAGE_SECTION_SPACINGS, aM as PAGE_SHADOWS, aN as PAGE_VARIANTS, aO as PageAccentRotation, aP as PageBackground, aQ as PageDesignFamily, aR as PageEmphasis, aS as PageHeadingTreatment, aT as PageSectionKind, aU as PageSectionOverride, aV as PageTokens, aW as PageVariant, aX as PathLayer, aY as PatternBackgroundConfig, aZ as PersistentLayer, a_ as PersistentLayerConfig, a$ as PersistentLayerTemplate, b0 as PersistentLayerTemplateConfig, b1 as PersistentLayerTemplateType, b2 as PhotoGridInput, b3 as PieChartInput, b4 as PipStyle, b5 as Position, b6 as ProgressIndicatorConfig, b7 as PromotedBodyAnnotation, b8 as PullQuoteInput, b9 as QuoteBlockInput, ba as RawLayersInput, bb as RenderStyle, bc as RightFeatureInput, bd as ScatterChartInput, be as ScheduledClip, bf as SectionHeaderInput, bg as ShapeFilter, bh as ShapeLayer, bi as ShapePattern, bj as SolidBackgroundConfig, bk as StartBlockConfig, bl as StatHighlightInput, bm as SurfaceScheme, bn as THEME_SCHEMA_VERSION, bo as TableLayer, bp as TableLayerStyle, bq as TemplateBlock, br as TemplateContext, bs as TemplateFunction, bt as TemplateRegistry, bu as TextLayer, bv as TextStyle, bw as Theme, bx as ThemeColorPalette, by as ThemeColorScheme, bz as ThemePageStyle, bA as ThemeRegistry, bB as ThemeSchemaVersion, bC as ThemeSeedColors, bD as ThemeStyle, bE as ThemeTypography, bF as TimelineBlockInput, bG as TimelineTemplateEvent, bH as TimelineTemplateLink, bI as TimelineTemplateTrack, bJ as TitleBlockInput, bK as TitleCaptionConfig, bL as TranscriptBlockInput, bM as TreeBlockInput, bN as TreeLayer, bO as TreeLayerItem, bP as TreeLayerStyle, bQ as TreeTemplateItem, bR as TwoColumnInput, bS as VIEWPORT_PRESETS, bT as VideoLayer, bU as VideoPipPosition, bV as VideoPipShape, bW as VideoPipSize, bX as VideoPlacement, bY as VideoPresentation, bZ as VideoPullQuoteInput, b_ as VideoWithCaptionInput, b$ as ViewportConfig, c0 as ViewportOrientation, c1 as ViewportPreset, c2 as VignetteConfig, c3 as applySurface, c4 as calculateDuration, c5 as calculateFontScale, c6 as createTemplateContext, c7 as createTheme, c8 as createThemeRegistry, c9 as getAspectRatioString, ca as getBlockAtTime, cb as getCaptionAtTime, cc as getDocPlaybackDuration, cd as getLayoutHints, ce as getSafeTextBounds, cf as getSegmentAtTime, cg as getTwoColumnPositions, ch as getViewport, ci as getViewportOrientation, cj as isCustomTemplateDefinition, ck as isMotionProfileName, cl as isPersistentLayerTemplate, cm as isTemplateBlock, cn as layoutScaledFontSize, co as readFrontmatterMotion, cp as resolveMediaSchedule, cq as resolveMotionForDoc, cr as resolveMotionProfile, cs as scaledFontSize, ct as scheduleMediaClip, cu as validateCustomTemplateDefinition } from './Doc-C-cv1g4G.js';
|
|
3
3
|
export { AVAILABLE_FONT_STACKS, CompileOptions, ContrastPreset, DocSchemaIssue, FONT_FALLBACKS, FontStack, MermaidThemeVariables, PipStyleVars, STARTER_THEME, ValidationError, ValidationResult, accentToColorScheme, assertDocSchema, assertTheme, buildGoogleFontsUrl, buildMermaidThemeVariables, compileTheme, contrastRatio, defaultPageStyle, deriveColorPalette, deriveScale, fontStack, getFontStack, guessFontFallback, hexHueDegrees, isHex, matchFontFamily, oklchDarken, oklchLighten, oklchSetChroma, parseTheme, pickContrastingText, pipStyleVars, relativeLuminance, resolveFontFamily, serializeTheme, validateDocSchema, validateTheme, withAlpha } from './schemas/index.js';
|
|
4
4
|
export { D as DEFAULT_MARKDOWN_SAFETY_LIMITS, a as DEFAULT_TRANSITION_DURATION_SECONDS, H as HeadingAttributes, b as HeadingTemplateAnnotation, c as HtmlComment, d as HtmlElement, e as HtmlNode, f as HtmlText, M as MarkdownBlockNode, g as MarkdownBlockquote, h as MarkdownBreak, i as MarkdownCodeBlock, j as MarkdownContainerDirective, k as MarkdownDefinitionDescription, l as MarkdownDefinitionList, m as MarkdownDefinitionTerm, n as MarkdownDocument, o as MarkdownEmphasis, p as MarkdownFootnoteDefinition, q as MarkdownFootnoteReference, r as MarkdownHeading, s as MarkdownHtmlBlock, t as MarkdownImage, u as MarkdownImageReference, v as MarkdownInlineCode, w as MarkdownInlineHtml, x as MarkdownInlineIcon, y as MarkdownInlineMath, z as MarkdownInlineNode, A as MarkdownLeafDirective, B as MarkdownLimitError, C as MarkdownLink, E as MarkdownLinkDefinition, F as MarkdownLinkReference, G as MarkdownList, I as MarkdownListItem, J as MarkdownMathBlock, K as MarkdownMention, L as MarkdownNode, N as MarkdownParagraph, O as MarkdownPoint, P as MarkdownSafetyLimits, Q as MarkdownSourcePosition, R as MarkdownStrikethrough, S as MarkdownStrong, T as MarkdownSubscript, U as MarkdownSuperscript, V as MarkdownTable, W as MarkdownTableCell, X as MarkdownTableRow, Y as MarkdownText, Z as MarkdownTextDirective, _ as MarkdownThematicBreak, $ as ParseOptions, a0 as StringifyOptions, a1 as TRANSITION_DIRECTIONS, a2 as TRANSITION_TYPES, a3 as Transition, a4 as TransitionDirection, a5 as TransitionType, a6 as assertMarkdownDocumentWithinLimits, a7 as assertMarkdownSourceWithinLimits, a8 as isTransitionType, a9 as normalizeTransitionDirection, aa as normalizeTransitionType, ab as resolveBlockTransition, ac as resolveMarkdownSafetyLimits, ad as resolveTransitionDuration } from './types-Be6sBUBx.js';
|
|
5
|
-
export { D as DEFAULT_THEME, a as DEFAULT_THEME_ID, T as THEMES, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from './themeLibrary-
|
|
5
|
+
export { D as DEFAULT_THEME, a as DEFAULT_THEME_ID, T as THEMES, g as getAvailableThemes, b as getThemeSummaries, r as resolveTheme } from './themeLibrary-CROfw3YK.js';
|
|
6
6
|
export { M as MediaEntry, a as MediaProvider } from './MediaProvider-wpSe21B3.js';
|
|
7
|
-
export { E as EditorLayerMeta, I as ImageEditCanvas, a as ImageEditDoc, b as ImageEditLayer, c as ImageEditLayerKind, d as ImageEditMeta } from './ImageEditDoc-
|
|
7
|
+
export { E as EditorLayerMeta, I as ImageEditCanvas, a as ImageEditDoc, b as ImageEditLayer, c as ImageEditLayerKind, d as ImageEditMeta } from './ImageEditDoc-3J4PRw8N.js';
|
|
8
8
|
export { ASCII_CHAR_H, ASCII_CHAR_W, ASCII_DIAGRAM_FENCE_LANGS, ASCII_TIMELINE_FENCE_LANGS, AccentLayout, AsciiDiagram, AsciiDiagramDetection, AsciiDiagramEdge, AsciiDiagramNode, AsciiTimeline, AsciiTimelineDetection, AsciiTimelineEvent, AsciiTimelineLink, AsciiTimelineMarker, AsciiTimelineSide, AsciiTimelineStats, AsciiTimelineStyle, AsciiTimelineTrack, AudioSegmentTiming, BASE_INPUT_DESCRIPTORS, BLOCK_MEDIA_LAYOUT_POLICIES, BUILTIN_DASHBOARD_LAYOUTS, BlockLayerMaterialization, BlockMediaLayoutPolicy, BuildPreviewDocOptions, BuiltInTemplateName, CONTAINER_TEMPLATES, COVER_SLIDE_FRONTMATTER_KEYS, COVER_SLIDE_TEMPLATE_OPTIONS, ClipBox, ConnectorAnchor, ConnectorPort, ConnectorRouting, ConnectorSnapPoint, CoverBlockInput, CoverSlidePlayback, CoverSlideSettings, CoverSlideTemplate, CoverSlideTemplateOption, DASHBOARD_AUTO_LAYOUT_ID, DASHBOARD_FRONTMATTER_KEYS, DASHBOARD_STYLES, DASHBOARD_STYLE_IDS, DASHBOARD_ZOOM_LEVELS, DATA_FILE_EXTENSIONS, DEFAULT_COVER_SLIDE_SETTINGS, DEFAULT_DASHBOARD_SETTINGS, DEFAULT_DASHBOARD_STYLE, DEFAULT_LAYOUT, DEFAULT_WORD_STAGGER, DIAGRAM_LABEL_HORIZONTAL_PADDING, DIAGRAM_LABEL_LINE_HEIGHT, DIAGRAM_LABEL_MIN_FONT_SIZE, DIAGRAM_LABEL_VERTICAL_PADDING, DashboardCell, DashboardCellChrome, DashboardCellDefinition, DashboardCellFrame, DashboardDiagnostic, DashboardLayoutDefinition, DashboardLayoutSummary, DashboardLayoutValidationError, DashboardLayoutValidationResult, DashboardMaterialization, DashboardRectPct, DashboardSettings, DashboardSettingsOverrides, DashboardStyleId, DashboardStyleSummary, DashboardTitle, DashboardTitleSlotDefinition, DashboardZoomCandidate, DashboardZoomLevel, DashboardZoomMode, DataFenceParseResult, DataSourceReadOptions, DataSourceReader, DataSourceStats, DataSourceTable, DeriveTemplateInputsOptions, DetectAsciiTimelineOptions, DiagramEdge, DiagramLabelFit, DiagramLayout, DiagramLayoutOptions, DiagramNodePosition, DrawingConnector, DrawingLayout, DrawingLayoutOptions, DrawingShape, DrawingShapeKind, EmbeddedVideo, ExpandDocBlocksOptions, ExtractedTableData, FRONTMATTER_DASHBOARD_LAYOUTS_KEY, FirstImage, Flashcard, FlashcardChoice, FlashcardDeck, FlashcardDiagnostic, FlashcardDiagnosticCode, FlashcardFace, FlashcardKind, FlashcardSourceMode, GEOMETRY_BOUND_TEMPLATES, InputCoercion, LayerMaterializationDiagnostic, LayerMaterializationFailureMode, LayerMaterializationSource, LayoutLayerDefaults, LayoutLayersResult, MAX_COVER_SLIDE_DURATION_SECONDS, MarkdownToDocOptions, MarkdownValidationResult, MaterializeBlockLayersOptions, MaterializeDashboardOptions, MaterializeFlashcardsOptions, NarrationResolution, NativeMediaLayout, NoMediaLayout, PAGE_BASE_CSS, PATH_SHAPE_KINDS, PageSectionContext, PageSectionDraft, ParsedStat, RenderAsciiDiagramOptions, RenderAsciiTimelineOptions, RenderTreeOptions, RepairResult, ResolveDataReferencesOptions, ResolvedDashboardCell, ResolvedDataReferences, ResolvedPageBlock, RichListItem, RuntimeTemplateRegistry, SHAPE_NAMES, SectionExtractor, SupplementalMediaLayoutVariant, SupplementalMediaShape, SupplementalMediaVariantMatrix, TABLE_FED_TEMPLATES, TEMPLATE_AUTHORING_METADATA, TEMPLATE_INPUT_DESCRIPTORS, TEMPLATE_METADATA, TREE_FENCE_LANGS, TemplateAuthoringMetadata, TemplateAuthoringRole, TemplateBodyPolicy, TemplateInputDescriptor, TemplateMediaOwnership, TemplateMetadata, TemplateParamFinding, Tree, TreeDetection, TreeItem, TreeNode, UnconsumedMediaBehavior, ValidateOptions, adjustY, anchorPoint, applyNarrationTiming, applyRenderStyleToLayers, asciiCellToCanvas, asciiDiagramFromBlocks, asciiDiagramFromTemplateData, asciiDiagramToTemplateData, asciiTimelineToTemplateData, autoTemplatePreservesContent, bigText, buildDashboardCellChrome, buildPageCss, buildPageCssVars, buildPreviewDoc, buildRegistry, canvasToAsciiCell, chooseDashboardLayout, clipEndpoints, clipPoint, coerceTemplateParams, comparisonBar, composeDashboardLayers, computeDiagramLayout, computeDrawingLayout, computeLayoutLayers, connectorPath, contentBlock, countBlocks, countUpSpecFor, coverBlock, createAccentLayers, cssFilterForTreatment, dashboardCanvasFill, dashboardCellAccent, dataSidecarPrefix, dataTable, dateEvent, definitionCard, deriveTemplateInputs, desiredCellZoom, detectAsciiDiagram, detectAsciiTimeline, detectTree, diagramBlock, docToMarkdown, documentTitleFromFileName, drawingBlock, expandCoverBlock, expandDocBlocks, expandPersistentLayers, extractBlockquoteText, extractBodyPlainText, extractEmbeddedVideos, extractFirstEmbeddedVideo, extractFirstImage, extractImages, extractListItems, extractRichListItems, extractTableData, extractTableFromContents, factCard, fallbackBlockLayers, findFirstList, findFirstTable, fitBigTextSize, fitDiagramLabel, flattenBlocks, flattenRenderableBlocks, formatCountUp, formatCountValue, fullBleedQuote, getAccentLayout, getAnimationProgress, getAnimationStyle, getAvailableTemplates, getBlockBodyText, getBlockDepth, getBlockMediaLayoutPolicy, getDashboardLayoutSummaries, getDefaultAnimation, getDefaultAnimationDuration, getMotionProfile, getOverlayOpacity, getPersistentLayersFromTheme, getPinnedBlockMeta, getTemplateHint, getThemeFont, getTransitionClass, hasTemplate, imageWithCaption, isAsciiDiagramFence, isAsciiTimelineFence, isContainerTemplate, isDataFence, isDataFilePath, isEligibleAsciiFenceLang, isEligibleAsciiTimelineFenceLang, isEligibleTreeFenceLang, isExplicitDiagramLang, isExplicitTimelineLang, isExplicitTreeLang, isGeometryBoundTemplate, isRepairableDiagram, isShapeName, isTemplatedPageBlock, isTreeFence, isWrappedFlowTimelineSource, layoutBlock, layoutCapacity, leftFeature, lineStyleDasharray, lintTemplateParams, listBlock, listDashboardLayouts, mapBlock, markdownBlockSeparatorLines, markdownToDoc, markerPath, materializeBlockLayers, materializeDashboard, materializeFlashcards, motionDelay, motionEntrance, motionStateTransform, nearestSnapPoint, normalizeDashboardZoom, normalizeShapeKind, pageStyleDataAttributes, parseAsciiDiagram, parseAsciiTimeline, parseAsciiTimelineWithStats, parseDataFence, parseStatNumber, parseTree, parseWrappedFlowTimeline, parseYamlSubset, photoGrid, pullQuote, quoteBlock, readCustomTemplatesFromFrontmatter, readCustomThemesFromFrontmatter, readDashboardLayoutsFromFrontmatter, renderAsciiDiagram, renderAsciiTimeline, renderMarkdownBlocksHtml, renderTree, repairAsciiDiagram, replaceDataFence, resolveAudioMapping, resolveColorScheme, resolveCoverSlideSettings, resolveDashboardLayoutDefinition, resolveDashboardSettings, resolveDashboardStyleId, resolveDashboardZooms, resolveDataReferences, resolveFlashcardMarker, resolveLayoutCells, resolvePageBlock, resolvePersistentLayers, resolveTemplateName, resolveThemeForDoc, rightFeature, scaleAnimationDuration, scoreTextSimilarity, sectionExtractors, sectionHeader, shapePath, shouldUseShadow, snapEndpoints, snapPoints, statHighlight, stripBlockBackdropLayer, stripsBlockBackdrop, templateRegistry, themeWantsAmbientMotion, themedEntrance, themedFontSize, themedImageTreatment, themedScrim, themedSurfaceGradient, timelineBlock, titleBlock, transformOriginFor, transposeCells, treeBlock, treeFromMarkdownList, treeFromTemplateData, treeToTemplateData, twoColumn, validateDashboardLayoutDefinition, validateMarkdownDoc, validateMarkdownSource, videoPullQuote, videoWithCaption, wordRevealDelay, wrapWithPersistentLayers, writeCustomTemplatesToFrontmatter, writeCustomThemesToFrontmatter, writeDashboardLayoutsToFrontmatter } from './doc/index.js';
|
|
9
|
-
export { M as MaterializePageSectionOptions, a as MaterializePageSectionsOptions, P as PageMedia, b as PageRichText, c as PageSection, d as PageSectionDiagnostic, e as PageSectionItem, f as PageSectionMaterialization, g as PageSectionSource, h as PageSpatialKind, i as PageTransformHints, m as materializePageSection, j as materializePageSections, r as resolvePageStyle } from './materializePageSection-
|
|
9
|
+
export { M as MaterializePageSectionOptions, a as MaterializePageSectionsOptions, P as PageMedia, b as PageRichText, c as PageSection, d as PageSectionDiagnostic, e as PageSectionItem, f as PageSectionMaterialization, g as PageSectionSource, h as PageSpatialKind, i as PageTransformHints, m as materializePageSection, j as materializePageSections, r as resolvePageStyle } from './materializePageSection-Dmy_-AUQ.js';
|
|
10
10
|
export { calculateBearing, decodeGeohash, destinationPoint, encodeGeohash, geohashOverlapsBounds, geohashToHierarchicalPath, getGeohash4Neighbors, getGeohashPath, getGeohashPrefix, getNeighbors, haversineDistance, interpolateGreatCircle, sampleGreatCircle } from './spatial/index.js';
|
|
11
11
|
export { LocalForageAdapter, LocalForageAdapterOptions, LocalStorageAdapter, MemoryStorageAdapter, ScopedContentContainer, StorageAdapter, createMediaProviderFromContainer, scopeContainer } from './storage/index.js';
|
|
12
12
|
export { C as ContentContainer, a as ContentEntry, M as MemoryContentContainer, f as findDocumentPath } from './ContentContainer-B2w9sUoL.js';
|
|
13
|
-
export { DEFAULT_INTERACTIVE_RESOURCE_POLICY, DEFAULT_RESOURCE_MAX_BYTES, DEFAULT_RESOURCE_TIMEOUT_MS, DEFAULT_WRAP_WIDTH, DocfxMarkdownOptions, FetchResourceBytesOptions, FetchedResource, HtmlPolicy, LOCAL_ONLY_RESOURCE_POLICY, MARKDOWN_SOURCE_TRANSFORMS, MarkdownReferenceOptions, MarkdownSourceEdit, MarkdownSourceTransform, MarkdownSourceTransformId, MarkdownSourceTransformOptions, MarkdownSourceTransformResult, MarkdownWrapState, ResourcePolicy, ResourcePolicyError, SanitizeUrlOptions, TrailingAnnotationMatch, UrlKind, applyMarkdownSourceTransform, cleanupMarkdownSource, countNodes, createDocument, detectMarkdownWrapState, extractPlainText, fetchResourceBytes, findNodesByType, formatBlockScalar, formatFrontmatterValue, formatFrontmatterYaml, fromMdast, getChildren, inferDocumentTitle, isResourceUrlAllowed, matchTrailingPandocAttr, matchTrailingTemplateAnnotation, needsQuoting, normalizeDocfxMarkdown, parseFrontmatter, parseHtmlToNodes, parseMarkdown, parsePandocAttrTokens, plainTextFromInlineHtml, quoteAttrValue, readFrontmatterThemeId, rewriteMarkdownReferences, sanitizeHtmlNodes, sanitizeUrl, serializePandocAttributes, setFrontmatterValues, splitFrontmatterBlock, splitKeyValueToken, stringifyHtmlNodes, stringifyMarkdown, toMdast, tokenizeAttrTokens, unquoteAttrValue, unwrapMarkdownSource, walkMarkdownTree, wrapMarkdownSource } from './markdown/index.js';
|
|
13
|
+
export { DEFAULT_INTERACTIVE_RESOURCE_POLICY, DEFAULT_RESOURCE_MAX_BYTES, DEFAULT_RESOURCE_TIMEOUT_MS, DEFAULT_WRAP_WIDTH, DocfxMarkdownOptions, FetchResourceBytesOptions, FetchedResource, HtmlPolicy, LOCAL_ONLY_RESOURCE_POLICY, MARKDOWN_SOURCE_TRANSFORMS, MarkdownReferenceOptions, MarkdownSourceEdit, MarkdownSourceTransform, MarkdownSourceTransformId, MarkdownSourceTransformOptions, MarkdownSourceTransformResult, MarkdownWrapState, ResourcePolicy, ResourcePolicyError, SanitizeUrlOptions, TrailingAnnotationMatch, UrlKind, applyMarkdownSourceTransform, cleanupMarkdownSource, condenseMarkdownSource, countNodes, createDocument, detectMarkdownWrapState, extractPlainText, fetchResourceBytes, findNodesByType, formatBlockScalar, formatFrontmatterValue, formatFrontmatterYaml, fromMdast, getChildren, inferDocumentTitle, isResourceUrlAllowed, matchTrailingPandocAttr, matchTrailingTemplateAnnotation, needsQuoting, normalizeDocfxMarkdown, parseFrontmatter, parseHtmlToNodes, parseMarkdown, parsePandocAttrTokens, plainTextFromInlineHtml, quoteAttrValue, readFrontmatterThemeId, rewriteMarkdownReferences, sanitizeHtmlNodes, sanitizeUrl, serializePandocAttributes, setFrontmatterValues, splitFrontmatterBlock, splitKeyValueToken, stringifyHtmlNodes, stringifyMarkdown, toMdast, tokenizeAttrTokens, unquoteAttrValue, unwrapMarkdownSource, walkMarkdownTree, wrapMarkdownSource } from './markdown/index.js';
|
|
14
14
|
export { B as BLOCK_META_KEY_DESCRIPTORS, a as BlockMetaKeyDescriptor, K as KNOWN_BLOCK_META_KEYS, b as KnownBlockMetaKey, p as parseTimeSeconds } from './annotationCoercion-Ckqpu33y.js';
|
|
15
15
|
export { BuildCaptionTrackOptions, CaptionSegmentSource, DEFAULT_WORDS_PER_SECOND, NarrationTimeEstimate, NarrationTimeOptions, ReadingTimeEstimate, ReadingTimeOptions, buildCaptionTrack, calculatePrefixDuration, countSpokenWords, estimateNarrationDuration, estimateNarrationTime, estimateReadingTime, estimateSpokenWordCount, estimateTimeFromText } from './timing/index.js';
|
|
16
16
|
export { SeededRandom, hashString } from './random/index.js';
|