@openpresentation/opf 0.11.1 → 0.11.3
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/dist/{catalogs-DJ-B5ZyD.d.ts → catalogs-CUClB3nl.d.ts} +202 -5
- package/dist/catalogs.d.ts +1 -1
- package/dist/catalogs.js +1 -1
- package/dist/{chunk-BP6WMSSS.js → chunk-57NWIYX3.js} +17 -4
- package/dist/{chunk-7LF37SG3.js → chunk-AEUSVEUY.js} +4915 -1640
- package/dist/{chunk-6UPHKXI5.js → chunk-BVLWFMDX.js} +40 -4
- package/dist/{chunk-SDETQV7Y.js → chunk-HJL64ETN.js} +505 -0
- package/dist/{chunk-M4GTWRK7.js → chunk-JCXHSTSM.js} +143 -68
- package/dist/{chunk-LTSDDBNW.js → chunk-JTXCMVVP.js} +245 -10
- package/dist/{chunk-NPYN4TZ5.js → chunk-RXNFDGPC.js} +113 -38
- package/dist/{chunk-KWIOQ3QR.js → chunk-UDPSGTZI.js} +3 -3
- package/dist/composition.js +1 -1
- package/dist/docs.js +23 -17
- package/dist/examples.d.ts +1 -1
- package/dist/font-policy.d.ts +4 -0
- package/dist/font-policy.js +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +11 -11
- package/dist/lint.d.ts +2 -2
- package/dist/lint.js +5 -5
- package/dist/pagination.js +5 -5
- package/dist/{presentation-bceTClm8.d.ts → presentation-Cn6vTOCP.d.ts} +13 -13
- package/dist/repo-readme.js +1 -1
- package/dist/schemas.js +1 -1
- package/dist/spec/README.md +3 -2
- package/dist/spec/catalogs/audiences/index.json +2 -0
- package/dist/spec/catalogs/chart-types/box-and-whisker.json +101 -49
- package/dist/spec/catalogs/chart-types/histogram.json +130 -108
- package/dist/spec/catalogs/chart-types/index.json +2 -0
- package/dist/spec/catalogs/chart-types/pareto.json +22 -106
- package/dist/spec/catalogs/color-schemes/black-and-white.json +10 -1
- package/dist/spec/catalogs/color-schemes/bold-red.json +10 -1
- package/dist/spec/catalogs/color-schemes/boost.json +10 -1
- package/dist/spec/catalogs/color-schemes/burnt-orange.json +10 -1
- package/dist/spec/catalogs/color-schemes/cool-horizon.json +10 -1
- package/dist/spec/catalogs/color-schemes/corporate-blue.json +10 -1
- package/dist/spec/catalogs/color-schemes/deep-purple.json +10 -1
- package/dist/spec/catalogs/color-schemes/forest-green.json +10 -1
- package/dist/spec/catalogs/color-schemes/golden-yellow.json +10 -1
- package/dist/spec/catalogs/color-schemes/index.json +2 -0
- package/dist/spec/catalogs/color-schemes/luxury.json +10 -1
- package/dist/spec/catalogs/color-schemes/pastel-red.json +10 -1
- package/dist/spec/catalogs/color-schemes/slate-gray.json +10 -1
- package/dist/spec/catalogs/color-schemes/steel-blue.json +10 -1
- package/dist/spec/catalogs/color-schemes/vibes.json +10 -1
- package/dist/spec/catalogs/font-schemes/angsana-new.json +2 -1
- package/dist/spec/catalogs/font-schemes/aparajita.json +2 -1
- package/dist/spec/catalogs/font-schemes/aptos.json +2 -1
- package/dist/spec/catalogs/font-schemes/arabic-typesetting.json +2 -1
- package/dist/spec/catalogs/font-schemes/arial.json +2 -1
- package/dist/spec/catalogs/font-schemes/batang.json +2 -1
- package/dist/spec/catalogs/font-schemes/bookman.json +2 -1
- package/dist/spec/catalogs/font-schemes/calibri.json +2 -1
- package/dist/spec/catalogs/font-schemes/century-schoolbook.json +2 -1
- package/dist/spec/catalogs/font-schemes/consolas.json +2 -1
- package/dist/spec/catalogs/font-schemes/constantia.json +2 -1
- package/dist/spec/catalogs/font-schemes/courier-new.json +2 -1
- package/dist/spec/catalogs/font-schemes/daunpenh.json +2 -1
- package/dist/spec/catalogs/font-schemes/david.json +2 -1
- package/dist/spec/catalogs/font-schemes/dilleniaupc.json +2 -1
- package/dist/spec/catalogs/font-schemes/fangsong.json +2 -1
- package/dist/spec/catalogs/font-schemes/garamond.json +2 -1
- package/dist/spec/catalogs/font-schemes/gautami.json +2 -1
- package/dist/spec/catalogs/font-schemes/georgia.json +2 -1
- package/dist/spec/catalogs/font-schemes/gisha.json +2 -1
- package/dist/spec/catalogs/font-schemes/grandview.json +2 -1
- package/dist/spec/catalogs/font-schemes/gungsuh.json +2 -1
- package/dist/spec/catalogs/font-schemes/impact.json +2 -1
- package/dist/spec/catalogs/font-schemes/index.json +236 -234
- package/dist/spec/catalogs/font-schemes/kalinga.json +2 -1
- package/dist/spec/catalogs/font-schemes/kartika.json +2 -1
- package/dist/spec/catalogs/font-schemes/khmer-ui.json +2 -1
- package/dist/spec/catalogs/font-schemes/latha.json +2 -1
- package/dist/spec/catalogs/font-schemes/lucida-sans.json +2 -1
- package/dist/spec/catalogs/font-schemes/malgun-gothic.json +2 -1
- package/dist/spec/catalogs/font-schemes/mangal.json +2 -1
- package/dist/spec/catalogs/font-schemes/meiryo.json +2 -1
- package/dist/spec/catalogs/font-schemes/microsoft-jhenghei.json +2 -1
- package/dist/spec/catalogs/font-schemes/microsoft-yahei.json +2 -1
- package/dist/spec/catalogs/font-schemes/mingliu.json +2 -1
- package/dist/spec/catalogs/font-schemes/miriam.json +2 -1
- package/dist/spec/catalogs/font-schemes/montserrat.json +2 -1
- package/dist/spec/catalogs/font-schemes/ms-mincho.json +2 -1
- package/dist/spec/catalogs/font-schemes/nirmala-ui.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-naksh-arabic.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-nastaliq-urdu.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-arabic.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-armenian.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-bengali.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-devangari.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-ethiopic.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-georgian.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-gujarati.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-gurmukhi.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-hebrew.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-jp.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-kannada.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-khmer.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-kr.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-malayalam.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-mongolian.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-oriya.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-sc.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-tamil.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-tc.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-telugu.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans-thai.json +2 -1
- package/dist/spec/catalogs/font-schemes/noto-sans.json +2 -1
- package/dist/spec/catalogs/font-schemes/nyala.json +2 -1
- package/dist/spec/catalogs/font-schemes/open-sans.json +2 -1
- package/dist/spec/catalogs/font-schemes/pmingliu.json +2 -1
- package/dist/spec/catalogs/font-schemes/poppins.json +2 -1
- package/dist/spec/catalogs/font-schemes/pt-serif.json +2 -1
- package/dist/spec/catalogs/font-schemes/raavi.json +2 -1
- package/dist/spec/catalogs/font-schemes/raleway.json +2 -1
- package/dist/spec/catalogs/font-schemes/roboto.json +2 -1
- package/dist/spec/catalogs/font-schemes/rockwell.json +2 -1
- package/dist/spec/catalogs/font-schemes/sakkal-majalla.json +2 -1
- package/dist/spec/catalogs/font-schemes/seaford.json +2 -1
- package/dist/spec/catalogs/font-schemes/segoe-ui-light.json +2 -1
- package/dist/spec/catalogs/font-schemes/segoe-ui.json +2 -1
- package/dist/spec/catalogs/font-schemes/shonar-bangla.json +2 -1
- package/dist/spec/catalogs/font-schemes/shruti.json +2 -1
- package/dist/spec/catalogs/font-schemes/simsun.json +2 -1
- package/dist/spec/catalogs/font-schemes/skeena.json +2 -1
- package/dist/spec/catalogs/font-schemes/sylfaen.json +2 -1
- package/dist/spec/catalogs/font-schemes/tahoma.json +2 -1
- package/dist/spec/catalogs/font-schemes/tenorite.json +2 -1
- package/dist/spec/catalogs/font-schemes/times-new-roman.json +2 -1
- package/dist/spec/catalogs/font-schemes/traditional-arabic.json +2 -1
- package/dist/spec/catalogs/font-schemes/trebuchet-ms.json +2 -1
- package/dist/spec/catalogs/font-schemes/tunga.json +2 -1
- package/dist/spec/catalogs/font-schemes/verdana.json +2 -1
- package/dist/spec/catalogs/font-schemes/vrinda.json +2 -1
- package/dist/spec/catalogs/font-schemes/yu-gothic.json +2 -1
- package/dist/spec/catalogs/languages/index.json +2 -0
- package/dist/spec/catalogs/layouts/action-plan.json +35 -0
- package/dist/spec/catalogs/layouts/agenda.json +35 -0
- package/dist/spec/catalogs/layouts/appendix-index.json +38 -0
- package/dist/spec/catalogs/layouts/architecture-stack.json +35 -0
- package/dist/spec/catalogs/layouts/assumptions-dependencies.json +35 -0
- package/dist/spec/catalogs/layouts/before-after.json +41 -0
- package/dist/spec/catalogs/layouts/benchmark-target-table.json +35 -0
- package/dist/spec/catalogs/layouts/bullet-list.json +38 -0
- package/dist/spec/catalogs/layouts/business-model-canvas.json +35 -0
- package/dist/spec/catalogs/layouts/capability-map.json +35 -0
- package/dist/spec/catalogs/layouts/case-study.json +35 -0
- package/dist/spec/catalogs/layouts/chapter-recap.json +35 -0
- package/dist/spec/catalogs/layouts/circular-lifecycle.json +35 -0
- package/dist/spec/catalogs/layouts/comparison.json +41 -0
- package/dist/spec/catalogs/layouts/competitive-landscape.json +35 -0
- package/dist/spec/catalogs/layouts/customer-journey.json +35 -0
- package/dist/spec/catalogs/layouts/customer-logos.json +38 -0
- package/dist/spec/catalogs/layouts/dashboard.json +41 -0
- package/dist/spec/catalogs/layouts/data-visualization.json +45 -0
- package/dist/spec/catalogs/layouts/decision-tree.json +35 -0
- package/dist/spec/catalogs/layouts/detailed-data-table.json +41 -0
- package/dist/spec/catalogs/layouts/ecosystem-map.json +35 -0
- package/dist/spec/catalogs/layouts/executive-decision.json +38 -0
- package/dist/spec/catalogs/layouts/executive-summary.json +38 -0
- package/dist/spec/catalogs/layouts/faq.json +35 -0
- package/dist/spec/catalogs/layouts/feature-comparison-matrix.json +35 -0
- package/dist/spec/catalogs/layouts/forecast-scenario.json +45 -0
- package/dist/spec/catalogs/layouts/funnel-pyramid.json +38 -0
- package/dist/spec/catalogs/layouts/gantt-project-plan.json +38 -0
- package/dist/spec/catalogs/layouts/geographic-map.json +35 -0
- package/dist/spec/catalogs/layouts/heatmap-cohort.json +38 -0
- package/dist/spec/catalogs/layouts/hub-and-spoke.json +35 -0
- package/dist/spec/catalogs/layouts/icon-grid.json +35 -0
- package/dist/spec/catalogs/layouts/image-focus.json +35 -0
- package/dist/spec/catalogs/layouts/index.json +352 -0
- package/dist/spec/catalogs/layouts/key-takeaway.json +32 -0
- package/dist/spec/catalogs/layouts/kpi-scorecard.json +44 -0
- package/dist/spec/catalogs/layouts/logic-tree.json +35 -0
- package/dist/spec/catalogs/layouts/market-size.json +35 -0
- package/dist/spec/catalogs/layouts/matrix-quadrant.json +48 -0
- package/dist/spec/catalogs/layouts/network-dependency-map.json +35 -0
- package/dist/spec/catalogs/layouts/one-column-explainer.json +35 -0
- package/dist/spec/catalogs/layouts/org-chart.json +45 -0
- package/dist/spec/catalogs/layouts/persona-grid.json +35 -0
- package/dist/spec/catalogs/layouts/photo-grid.json +48 -0
- package/dist/spec/catalogs/layouts/pricing-table.json +35 -0
- package/dist/spec/catalogs/layouts/process-flow.json +35 -0
- package/dist/spec/catalogs/layouts/product-feature.json +35 -0
- package/dist/spec/catalogs/layouts/pros-cons.json +41 -0
- package/dist/spec/catalogs/layouts/qa-discussion.json +38 -0
- package/dist/spec/catalogs/layouts/quote-highlight.json +35 -0
- package/dist/spec/catalogs/layouts/raci-matrix.json +35 -0
- package/dist/spec/catalogs/layouts/risk-heatmap.json +35 -0
- package/dist/spec/catalogs/layouts/roadmap.json +35 -0
- package/dist/spec/catalogs/layouts/screenshot-walkthrough.json +35 -0
- package/dist/spec/catalogs/layouts/section-divider.json +35 -0
- package/dist/spec/catalogs/layouts/single-message-statement.json +32 -0
- package/dist/spec/catalogs/layouts/stats-metrics.json +45 -0
- package/dist/spec/catalogs/layouts/status-rag.json +35 -0
- package/dist/spec/catalogs/layouts/swimlane-process.json +35 -0
- package/dist/spec/catalogs/layouts/swot-analysis.json +48 -0
- package/dist/spec/catalogs/layouts/team-bio.json +35 -0
- package/dist/spec/catalogs/layouts/testimonial-grid.json +44 -0
- package/dist/spec/catalogs/layouts/thank-you-cta.json +35 -0
- package/dist/spec/catalogs/layouts/three-column.json +45 -0
- package/dist/spec/catalogs/layouts/timeline.json +38 -0
- package/dist/spec/catalogs/layouts/title-slide.json +35 -0
- package/dist/spec/catalogs/layouts/two-column.json +42 -0
- package/dist/spec/catalogs/layouts/venn-overlap.json +35 -0
- package/dist/spec/catalogs/layouts/waterfall-bridge.json +45 -0
- package/dist/spec/catalogs/layouts/wheel-radial.json +35 -0
- package/dist/spec/catalogs/manifest.json +111 -0
- package/dist/spec/catalogs/narratives/index.json +746 -144
- package/dist/spec/catalogs/purposes/index.json +2 -0
- package/dist/spec/catalogs/social-platforms/index.json +2 -1
- package/dist/spec/catalogs/themes/index.json +10 -8
- package/dist/spec/catalogs/tones/index.json +2 -0
- package/dist/spec/reference/font-policy.json +113 -38
- package/dist/spec/reference/font-policy.schema.json +10 -0
- package/dist/spec/schemas/audience.schema.json +21 -0
- package/dist/spec/schemas/catalog-index.schema.json +40 -3
- package/dist/spec/schemas/catalog-manifest.schema.json +83 -0
- package/dist/spec/schemas/chart-type.schema.json +5 -0
- package/dist/spec/schemas/color-scheme.schema.json +21 -0
- package/dist/spec/schemas/font-scheme.schema.json +21 -0
- package/dist/spec/schemas/language.schema.json +21 -0
- package/dist/spec/schemas/layout.schema.json +21 -0
- package/dist/spec/schemas/narrative.schema.json +21 -0
- package/dist/spec/schemas/opf.schema.json +5 -5
- package/dist/spec/schemas/purpose.schema.json +21 -0
- package/dist/spec/schemas/social-platform.schema.json +26 -5
- package/dist/spec/schemas/theme.schema.json +21 -0
- package/dist/spec/schemas/tone.schema.json +21 -0
- package/dist/spec-files.d.ts +2 -2
- package/dist/spec-files.js +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/validator.d.ts +2 -2
- package/dist/validator.js +4 -4
- package/package.json +1 -1
|
@@ -319,6 +319,21 @@ function placeTextLines(lines, box, alignment = "left", rasterPadding = 0) {
|
|
|
319
319
|
}
|
|
320
320
|
return { alignment, rasterPadding, lines: placed, height, overflow };
|
|
321
321
|
}
|
|
322
|
+
function translateTextFit(fit, dy) {
|
|
323
|
+
if (!dy || !fit.placement) return fit;
|
|
324
|
+
return {
|
|
325
|
+
...fit,
|
|
326
|
+
placement: {
|
|
327
|
+
...fit.placement,
|
|
328
|
+
lines: fit.placement.lines.map((line) => ({
|
|
329
|
+
...line,
|
|
330
|
+
y: line.y + dy,
|
|
331
|
+
baseline: line.baseline + dy,
|
|
332
|
+
outline: line.outline ? { ...line.outline, y: line.outline.y + dy } : line.outline
|
|
333
|
+
}))
|
|
334
|
+
}
|
|
335
|
+
};
|
|
336
|
+
}
|
|
322
337
|
var OPFCompositionError = class extends Error {
|
|
323
338
|
constructor(diagnostics, explanation) {
|
|
324
339
|
super("Slide content does not fit its composition.");
|
|
@@ -332,6 +347,7 @@ var OPFCompositionError = class extends Error {
|
|
|
332
347
|
};
|
|
333
348
|
var fields = ["text", "items", "bullets", "image", "video", "chart", "table", "code", "metric", "quote", "timeline"];
|
|
334
349
|
var headings = /* @__PURE__ */ new Set(["title", "subtitle", "tag"]);
|
|
350
|
+
var COVER_LAYOUT_IDS = /* @__PURE__ */ new Set(["title", "title-subtitle"]);
|
|
335
351
|
var rows = ["top", "middle", "bottom"];
|
|
336
352
|
var columns = ["left", "center", "right"];
|
|
337
353
|
var record2 = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : {};
|
|
@@ -1520,7 +1536,16 @@ function composeSlide(input, options = {}) {
|
|
|
1520
1536
|
const furniture = measuredFurniture.configured || measuredFurniture.diagnostics.length ? measuredFurniture : void 0;
|
|
1521
1537
|
if (furniture) diagnostics.push(...furniture.diagnostics);
|
|
1522
1538
|
const bodyBottom = Math.min(area.bottom - padding, furniture && furniture.footerTop < height ? furniture.footerTop - gap * 0.5 : height - padding);
|
|
1523
|
-
|
|
1539
|
+
const headingTop = Math.max(area.top + padding, furniture?.headerBottom ? furniture.headerBottom + gap * 0.5 : padding);
|
|
1540
|
+
const layoutPlaceholders = Array.isArray(layout.placeholders) ? layout.placeholders : [];
|
|
1541
|
+
const headingOnlyLayout = COVER_LAYOUT_IDS.has(String(layout.id ?? "")) || layoutPlaceholders.length > 0 && layoutPlaceholders.every((placeholder) => headings.has(placeholder.type ?? ""));
|
|
1542
|
+
const regions = Object.keys(slide).filter((key) => regionParts(key)).sort();
|
|
1543
|
+
const emptyPayload = (value) => value === void 0 || value === null || value === "" || Array.isArray(value) && value.length === 0;
|
|
1544
|
+
const emptyHost = (host) => emptyPayload(host.blocks) && fields.every((field) => emptyPayload(host[field]));
|
|
1545
|
+
const hasBodyPayload = regions.some((key) => !emptyHost(record2(slide[key]))) || !emptyPayload(slide.blocks) || fields.some((field) => !emptyPayload(slide[field]));
|
|
1546
|
+
const isCover = !hasBodyPayload && (headingOnlyLayout || !layout.id && !layoutPlaceholders.some((placeholder) => !headings.has(placeholder.type ?? "")));
|
|
1547
|
+
let y = headingTop;
|
|
1548
|
+
const headingItems = [];
|
|
1524
1549
|
for (const field of ["tag", "title", "subtitle"]) {
|
|
1525
1550
|
if (!slide[field]) continue;
|
|
1526
1551
|
const requested = (field === "title" ? 54 : field === "tag" ? 16 : 25) * scale;
|
|
@@ -1529,10 +1554,22 @@ function composeSlide(input, options = {}) {
|
|
|
1529
1554
|
const text = fitPlacedText(field, slide[field], String(slide[field]), box, requested, minSize, `${path}.${field}`);
|
|
1530
1555
|
box.height = Math.min(maxHeight, Math.max(text.lines.length * text.lineHeight, text.placement?.height ?? 0));
|
|
1531
1556
|
if (furniture && box.y + box.height > bodyBottom + 0.01) diagnostics.push({ code: "text-overflow", path: `${path}.${field}`, message: "Repeated furniture leaves too little room for this heading. Change the header/footer or slide design." });
|
|
1532
|
-
|
|
1557
|
+
const item = { path: `${path}.${field}`, field, type: "text", value: slide[field], payload: { text: slide[field] }, box, text, textStyle: styleFor(field, `${path}.${field}`), composition, alignment: alignmentFor(field) };
|
|
1558
|
+
headingItems.push(item);
|
|
1559
|
+
items.push(item);
|
|
1533
1560
|
y += box.height + gap * 0.5;
|
|
1534
1561
|
}
|
|
1535
|
-
if (
|
|
1562
|
+
if (headingItems.length) {
|
|
1563
|
+
if (isCover) {
|
|
1564
|
+
const last = headingItems[headingItems.length - 1];
|
|
1565
|
+
const shift = Math.max(0, (bodyBottom - (last.box.y + last.box.height)) / 2);
|
|
1566
|
+
if (shift) for (const item of headingItems) {
|
|
1567
|
+
item.box.y += shift;
|
|
1568
|
+
if (item.text) item.text = translateTextFit(item.text, shift);
|
|
1569
|
+
}
|
|
1570
|
+
y = last.box.y + last.box.height + gap;
|
|
1571
|
+
} else y += gap * 0.5;
|
|
1572
|
+
}
|
|
1536
1573
|
const contentBox = { x: area.left + padding, y, width: area.right - area.left - padding * 2, height: Math.max(scale, bodyBottom - y) };
|
|
1537
1574
|
const collect = (host, basePath, depth = 0, ancestors = []) => {
|
|
1538
1575
|
if (Array.isArray(host.blocks)) {
|
|
@@ -1551,7 +1588,6 @@ function composeSlide(input, options = {}) {
|
|
|
1551
1588
|
}
|
|
1552
1589
|
return fields.filter((field) => host[field] !== void 0).map((field) => ({ field, type: host.type ?? kind(field), value: host[field], path: `${basePath}.${field}`, payload: { type: host.type ?? kind(field), [field]: host[field] } }));
|
|
1553
1590
|
};
|
|
1554
|
-
const regions = Object.keys(slide).filter((key) => regionParts(key)).sort();
|
|
1555
1591
|
const pending = regions.length ? regions.flatMap((key) => collect(record2(slide[key]), `${path}.${key}`).map((item) => ({ ...item, region: regionParts(key) }))) : Array.isArray(slide.blocks) ? slide.blocks.flatMap((block, index) => collect(record2(block), `${path}.blocks.${index}`)) : collect(slideImage?.replacesContent ? { ...slide, image: void 0 } : slide, path);
|
|
1556
1592
|
const groups = [], flows = [];
|
|
1557
1593
|
const decisions = options.explain ? [] : void 0;
|