@json-to-office/core-docx 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/table.d.ts.map +1 -1
- package/dist/core/content.d.ts +2 -1
- package/dist/core/content.d.ts.map +1 -1
- package/dist/index.js +79 -137
- package/dist/index.js.map +1 -1
- package/dist/plugin/createComponent.d.ts +8 -106
- package/dist/plugin/createComponent.d.ts.map +1 -1
- package/dist/plugin/createDocumentGenerator.d.ts +3 -1
- package/dist/plugin/createDocumentGenerator.d.ts.map +1 -1
- package/dist/plugin/example/index.js +87 -136
- package/dist/plugin/example/index.js.map +1 -1
- package/dist/plugin/validation.d.ts +6 -22
- package/dist/plugin/validation.d.ts.map +1 -1
- package/dist/plugin/version-resolver.d.ts +1 -9
- package/dist/plugin/version-resolver.d.ts.map +1 -1
- package/dist/templates/themes/index.d.ts +4 -4
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/widthUtils.d.ts +0 -1
- package/dist/utils/widthUtils.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/components/table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAoB,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/components/table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAoB,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AA8ExC;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,KAAK,EAAE,CAAC,CAyDlB"}
|
package/dist/core/content.d.ts
CHANGED
|
@@ -196,7 +196,8 @@ type TableConfig = {
|
|
|
196
196
|
headerCellDefaults?: CellDefaults;
|
|
197
197
|
width?: number;
|
|
198
198
|
columns: {
|
|
199
|
-
|
|
199
|
+
/** Width in points (number) or as percentage string e.g. "40%" */
|
|
200
|
+
width?: number | string;
|
|
200
201
|
cellDefaults?: CellDefaults;
|
|
201
202
|
header?: CellDefaults & {
|
|
202
203
|
content?: string | ComponentDefinition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/core/content.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/core/content.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1421,7 +1421,6 @@ var init_styles = __esm({
|
|
|
1421
1421
|
// src/utils/widthUtils.ts
|
|
1422
1422
|
var widthUtils_exports = {};
|
|
1423
1423
|
__export(widthUtils_exports, {
|
|
1424
|
-
__widthUtils: () => __widthUtils,
|
|
1425
1424
|
getAvailableHeightTwips: () => getAvailableHeightTwips,
|
|
1426
1425
|
getAvailableWidthTwips: () => getAvailableWidthTwips,
|
|
1427
1426
|
getPageHeightTwips: () => getPageHeightTwips,
|
|
@@ -1466,13 +1465,11 @@ function relativeLengthToTwips(value, availableWidthTwips) {
|
|
|
1466
1465
|
if (fraction === void 0) return 0;
|
|
1467
1466
|
return Math.round(availableWidthTwips * fraction);
|
|
1468
1467
|
}
|
|
1469
|
-
var __widthUtils;
|
|
1470
1468
|
var init_widthUtils = __esm({
|
|
1471
1469
|
"src/utils/widthUtils.ts"() {
|
|
1472
1470
|
"use strict";
|
|
1473
1471
|
init_styles();
|
|
1474
1472
|
init_styleHelpers();
|
|
1475
|
-
__widthUtils = true;
|
|
1476
1473
|
}
|
|
1477
1474
|
});
|
|
1478
1475
|
|
|
@@ -5056,15 +5053,21 @@ async function createTable(columns, tableConfig, theme, themeName, _options = {}
|
|
|
5056
5053
|
let columnWidths;
|
|
5057
5054
|
let tableWidth;
|
|
5058
5055
|
if (hasExplicitWidths) {
|
|
5059
|
-
const
|
|
5056
|
+
const widthUtils = await Promise.resolve().then(() => (init_widthUtils(), widthUtils_exports));
|
|
5057
|
+
const { getAvailableWidthTwips: getAvailableWidthTwips2, relativeLengthToTwips: relativeLengthToTwips2 } = widthUtils;
|
|
5060
5058
|
const availableTableWidth = getAvailableWidthTwips2(theme, themeName);
|
|
5061
5059
|
const columnsWithExplicitWidthTwips = columns.map(
|
|
5062
|
-
(col) => col.width !== void 0 ?
|
|
5060
|
+
(col) => col.width !== void 0 ? relativeLengthToTwips2(col.width, availableTableWidth) : void 0
|
|
5063
5061
|
);
|
|
5064
5062
|
const totalExplicitWidth = columnsWithExplicitWidthTwips.reduce(
|
|
5065
5063
|
(sum, w) => sum + (w || 0),
|
|
5066
5064
|
0
|
|
5067
5065
|
);
|
|
5066
|
+
if (totalExplicitWidth > availableTableWidth) {
|
|
5067
|
+
console.warn(
|
|
5068
|
+
`[json-to-office] Column widths total (${totalExplicitWidth} twips) exceeds available table width (${availableTableWidth} twips). Table may overflow.`
|
|
5069
|
+
);
|
|
5070
|
+
}
|
|
5068
5071
|
const columnsWithoutWidth = columns.filter(
|
|
5069
5072
|
(col) => col.width === void 0
|
|
5070
5073
|
).length;
|
|
@@ -6175,42 +6178,15 @@ async function renderHighchartsComponent(component, theme, _themeName) {
|
|
|
6175
6178
|
import { Type } from "@sinclair/typebox";
|
|
6176
6179
|
|
|
6177
6180
|
// src/plugin/createComponent.ts
|
|
6178
|
-
import {
|
|
6181
|
+
import {
|
|
6182
|
+
createVersion as sharedCreateVersion,
|
|
6183
|
+
createComponent as sharedCreateComponent
|
|
6184
|
+
} from "@json-to-office/shared/plugin";
|
|
6179
6185
|
function createVersion(version) {
|
|
6180
|
-
return version;
|
|
6186
|
+
return sharedCreateVersion(version);
|
|
6181
6187
|
}
|
|
6182
6188
|
function createComponent(component) {
|
|
6183
|
-
|
|
6184
|
-
throw new Error("Component name is required");
|
|
6185
|
-
}
|
|
6186
|
-
if (!component.versions || typeof component.versions !== "object") {
|
|
6187
|
-
throw new Error(`Component "${component.name}" requires a versions map`);
|
|
6188
|
-
}
|
|
6189
|
-
const versionKeys = Object.keys(component.versions);
|
|
6190
|
-
if (versionKeys.length === 0) {
|
|
6191
|
-
throw new Error(
|
|
6192
|
-
`Component "${component.name}" must have at least one version`
|
|
6193
|
-
);
|
|
6194
|
-
}
|
|
6195
|
-
for (const key of versionKeys) {
|
|
6196
|
-
if (!isValidSemver(key)) {
|
|
6197
|
-
throw new Error(
|
|
6198
|
-
`Component "${component.name}": invalid semver key "${key}". Expected format: major.minor.patch`
|
|
6199
|
-
);
|
|
6200
|
-
}
|
|
6201
|
-
const entry = component.versions[key];
|
|
6202
|
-
if (!entry.propsSchema) {
|
|
6203
|
-
throw new Error(
|
|
6204
|
-
`Component "${component.name}" version "${key}" requires a propsSchema`
|
|
6205
|
-
);
|
|
6206
|
-
}
|
|
6207
|
-
if (!entry.render || typeof entry.render !== "function") {
|
|
6208
|
-
throw new Error(
|
|
6209
|
-
`Component "${component.name}" version "${key}" requires a render function`
|
|
6210
|
-
);
|
|
6211
|
-
}
|
|
6212
|
-
}
|
|
6213
|
-
return component;
|
|
6189
|
+
return sharedCreateComponent(component);
|
|
6214
6190
|
}
|
|
6215
6191
|
|
|
6216
6192
|
// src/components/text-space-after.ts
|
|
@@ -7089,62 +7065,29 @@ async function runExample(example, options = {}) {
|
|
|
7089
7065
|
}
|
|
7090
7066
|
|
|
7091
7067
|
// src/plugin/createDocumentGenerator.ts
|
|
7068
|
+
init_styles();
|
|
7092
7069
|
import { Packer as Packer2 } from "docx";
|
|
7093
7070
|
|
|
7094
7071
|
// src/plugin/version-resolver.ts
|
|
7095
|
-
import {
|
|
7096
|
-
function resolveComponentVersion(componentName, versions, requestedVersion) {
|
|
7097
|
-
const versionKeys = Object.keys(versions);
|
|
7098
|
-
if (requestedVersion) {
|
|
7099
|
-
const entry = versions[requestedVersion];
|
|
7100
|
-
if (!entry) {
|
|
7101
|
-
throw new Error(
|
|
7102
|
-
`Component "${componentName}" does not have version "${requestedVersion}". Available versions: ${versionKeys.join(", ")}`
|
|
7103
|
-
);
|
|
7104
|
-
}
|
|
7105
|
-
return entry;
|
|
7106
|
-
}
|
|
7107
|
-
const latest = latestVersion(versionKeys);
|
|
7108
|
-
return versions[latest];
|
|
7109
|
-
}
|
|
7072
|
+
import { resolveComponentVersion } from "@json-to-office/shared/plugin";
|
|
7110
7073
|
|
|
7111
7074
|
// src/plugin/validation.ts
|
|
7112
7075
|
import {
|
|
7113
7076
|
validateCustomComponentProps,
|
|
7077
|
+
ComponentValidationError
|
|
7078
|
+
} from "@json-to-office/shared/plugin";
|
|
7079
|
+
import {
|
|
7114
7080
|
validateDocument as validateDocumentUnified
|
|
7115
7081
|
} from "@json-to-office/shared-docx/validation/unified";
|
|
7116
|
-
|
|
7117
|
-
|
|
7118
|
-
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
`Cannot register component "${componentName}": a component with this name is already registered. Component names must be unique within a document generator.`
|
|
7122
|
-
);
|
|
7123
|
-
this.name = "DuplicateComponentError";
|
|
7124
|
-
this.componentName = componentName;
|
|
7125
|
-
if (Error.captureStackTrace) {
|
|
7126
|
-
Error.captureStackTrace(this, _DuplicateComponentError);
|
|
7127
|
-
}
|
|
7128
|
-
}
|
|
7129
|
-
};
|
|
7130
|
-
var ComponentValidationError = class extends Error {
|
|
7131
|
-
errors;
|
|
7132
|
-
props;
|
|
7133
|
-
constructor(errors, props) {
|
|
7134
|
-
const propsStr = props !== void 0 ? `
|
|
7135
|
-
Props: ${JSON.stringify(props, null, 2)}` : "";
|
|
7136
|
-
const message = `Document validation failed:
|
|
7137
|
-
${errors.map((e) => ` ${e.path}: ${e.message}`).join("\n")}${propsStr}`;
|
|
7138
|
-
super(message);
|
|
7139
|
-
this.name = "ComponentValidationError";
|
|
7140
|
-
this.errors = errors;
|
|
7141
|
-
this.props = props;
|
|
7142
|
-
}
|
|
7143
|
-
};
|
|
7144
|
-
function validateComponentProps(schema, props) {
|
|
7082
|
+
import {
|
|
7083
|
+
DuplicateComponentError,
|
|
7084
|
+
ComponentValidationError as ComponentValidationError2
|
|
7085
|
+
} from "@json-to-office/shared/plugin";
|
|
7086
|
+
function validateComponentProps(schema, props, componentName) {
|
|
7145
7087
|
return validateCustomComponentProps(schema.propsSchema, props, {
|
|
7146
7088
|
clean: true,
|
|
7147
|
-
applyDefaults: true
|
|
7089
|
+
applyDefaults: true,
|
|
7090
|
+
componentName
|
|
7148
7091
|
});
|
|
7149
7092
|
}
|
|
7150
7093
|
function validateDocument(document, customComponents) {
|
|
@@ -7171,7 +7114,8 @@ function validateDocument(document, customComponents) {
|
|
|
7171
7114
|
);
|
|
7172
7115
|
const validation = validateComponentProps(
|
|
7173
7116
|
versionEntry,
|
|
7174
|
-
componentData.props
|
|
7117
|
+
componentData.props,
|
|
7118
|
+
customComponent.name
|
|
7175
7119
|
);
|
|
7176
7120
|
if (!validation.valid && validation.errors) {
|
|
7177
7121
|
const indexedErrors = validation.errors.map(
|
|
@@ -7206,7 +7150,7 @@ var cleanComponentProps = getValidatedProps;
|
|
|
7206
7150
|
|
|
7207
7151
|
// src/plugin/schema.ts
|
|
7208
7152
|
import { Type as Type2 } from "@sinclair/typebox";
|
|
7209
|
-
import { latestVersion
|
|
7153
|
+
import { latestVersion } from "@json-to-office/shared-docx";
|
|
7210
7154
|
import {
|
|
7211
7155
|
ReportPropsSchema,
|
|
7212
7156
|
SectionPropsSchema,
|
|
@@ -7261,7 +7205,7 @@ function generateComponentSchemas(customComponents) {
|
|
|
7261
7205
|
const schemas = {};
|
|
7262
7206
|
for (const component of customComponents) {
|
|
7263
7207
|
const versionKeys = Object.keys(component.versions);
|
|
7264
|
-
const latest =
|
|
7208
|
+
const latest = latestVersion(versionKeys);
|
|
7265
7209
|
for (const v of versionKeys) {
|
|
7266
7210
|
const entry = component.versions[v];
|
|
7267
7211
|
const cacheKey = `component_${component.name}@${v}`;
|
|
@@ -7359,45 +7303,29 @@ function mergeSchemas(customComponents, standardSchemas) {
|
|
|
7359
7303
|
};
|
|
7360
7304
|
}
|
|
7361
7305
|
|
|
7362
|
-
// src/styles/theme-resolver.ts
|
|
7363
|
-
init_themes();
|
|
7364
|
-
function resolveTheme2(theme) {
|
|
7365
|
-
if (typeof theme === "string") {
|
|
7366
|
-
const resolvedTheme = getTheme(theme);
|
|
7367
|
-
if (resolvedTheme) {
|
|
7368
|
-
return resolvedTheme;
|
|
7369
|
-
}
|
|
7370
|
-
return getTheme("minimal");
|
|
7371
|
-
}
|
|
7372
|
-
if (theme) {
|
|
7373
|
-
return theme;
|
|
7374
|
-
}
|
|
7375
|
-
return getTheme("minimal");
|
|
7376
|
-
}
|
|
7377
|
-
|
|
7378
|
-
// src/styles/theme-validator.ts
|
|
7379
|
-
import { validateTheme as validateThemeUnified } from "@json-to-office/shared-docx/validation/unified";
|
|
7380
|
-
function validateTheme(theme) {
|
|
7381
|
-
if (!theme) {
|
|
7382
|
-
return void 0;
|
|
7383
|
-
}
|
|
7384
|
-
if (typeof theme === "string") {
|
|
7385
|
-
return theme;
|
|
7386
|
-
}
|
|
7387
|
-
const result = validateThemeUnified(theme);
|
|
7388
|
-
if (!result.valid) {
|
|
7389
|
-
const errorSummary = result.errors?.map((e) => e.message).join(", ") || "Invalid theme";
|
|
7390
|
-
throw new Error(`Invalid theme: ${errorSummary}`);
|
|
7391
|
-
}
|
|
7392
|
-
return result.data;
|
|
7393
|
-
}
|
|
7394
|
-
|
|
7395
7306
|
// src/plugin/createDocumentGenerator.ts
|
|
7396
7307
|
function createBuilderImpl(state) {
|
|
7397
|
-
const validatedTheme = validateTheme(state.theme);
|
|
7398
|
-
const fullTheme = resolveTheme2(validatedTheme);
|
|
7399
7308
|
const componentMap = new Map(state.components.map((c) => [c.name, c]));
|
|
7400
|
-
|
|
7309
|
+
function resolveDocumentTheme(themeName) {
|
|
7310
|
+
if (state.customThemes) {
|
|
7311
|
+
if (state.customThemes[themeName]) {
|
|
7312
|
+
return state.customThemes[themeName];
|
|
7313
|
+
}
|
|
7314
|
+
const key = Object.keys(state.customThemes).find(
|
|
7315
|
+
(k) => k.toLowerCase() === themeName.toLowerCase()
|
|
7316
|
+
);
|
|
7317
|
+
if (key) {
|
|
7318
|
+
return state.customThemes[key];
|
|
7319
|
+
}
|
|
7320
|
+
}
|
|
7321
|
+
return getThemeWithFallback(themeName);
|
|
7322
|
+
}
|
|
7323
|
+
async function processDocumentComponents(components, warningsCollector, resolvedTheme, depth = 0) {
|
|
7324
|
+
if (depth > 20) {
|
|
7325
|
+
throw new Error(
|
|
7326
|
+
"Maximum component nesting depth exceeded (20). Check for circular component references."
|
|
7327
|
+
);
|
|
7328
|
+
}
|
|
7401
7329
|
const processedComponents = [];
|
|
7402
7330
|
for (const componentData of components) {
|
|
7403
7331
|
const componentName = componentData?.name;
|
|
@@ -7427,7 +7355,9 @@ function createBuilderImpl(state) {
|
|
|
7427
7355
|
if (componentWithName.children && Array.isArray(componentWithName.children)) {
|
|
7428
7356
|
nestedChildren = await processDocumentComponents(
|
|
7429
7357
|
componentWithName.children,
|
|
7430
|
-
warningsCollector
|
|
7358
|
+
warningsCollector,
|
|
7359
|
+
resolvedTheme,
|
|
7360
|
+
depth + 1
|
|
7431
7361
|
);
|
|
7432
7362
|
}
|
|
7433
7363
|
const versionLabel = componentWithName.version ? `${customComponent.name}@${componentWithName.version}` : customComponent.name;
|
|
@@ -7441,14 +7371,16 @@ function createBuilderImpl(state) {
|
|
|
7441
7371
|
};
|
|
7442
7372
|
const result = await versionEntry.render({
|
|
7443
7373
|
props: cleanedProps,
|
|
7444
|
-
theme:
|
|
7374
|
+
theme: resolvedTheme,
|
|
7445
7375
|
addWarning,
|
|
7446
7376
|
children: nestedChildren
|
|
7447
7377
|
});
|
|
7448
7378
|
const resultComponents = Array.isArray(result) ? result : [result];
|
|
7449
7379
|
const processedResult = await processDocumentComponents(
|
|
7450
7380
|
resultComponents,
|
|
7451
|
-
warningsCollector
|
|
7381
|
+
warningsCollector,
|
|
7382
|
+
resolvedTheme,
|
|
7383
|
+
depth + 1
|
|
7452
7384
|
);
|
|
7453
7385
|
processedComponents.push(...processedResult);
|
|
7454
7386
|
if (state.debug) {
|
|
@@ -7458,7 +7390,7 @@ function createBuilderImpl(state) {
|
|
|
7458
7390
|
);
|
|
7459
7391
|
}
|
|
7460
7392
|
} catch (error) {
|
|
7461
|
-
if (error instanceof
|
|
7393
|
+
if (error instanceof ComponentValidationError2) {
|
|
7462
7394
|
throw error;
|
|
7463
7395
|
}
|
|
7464
7396
|
throw new Error(
|
|
@@ -7469,7 +7401,9 @@ function createBuilderImpl(state) {
|
|
|
7469
7401
|
if ("children" in componentData && Array.isArray(componentData.children)) {
|
|
7470
7402
|
const processedNested = await processDocumentComponents(
|
|
7471
7403
|
componentData.children,
|
|
7472
|
-
warningsCollector
|
|
7404
|
+
warningsCollector,
|
|
7405
|
+
resolvedTheme,
|
|
7406
|
+
depth + 1
|
|
7473
7407
|
);
|
|
7474
7408
|
processedComponents.push({
|
|
7475
7409
|
...componentData,
|
|
@@ -7483,18 +7417,19 @@ function createBuilderImpl(state) {
|
|
|
7483
7417
|
return processedComponents;
|
|
7484
7418
|
}
|
|
7485
7419
|
function addComponent(component) {
|
|
7486
|
-
if (state.componentNames.has(component.name)) {
|
|
7487
|
-
throw new DuplicateComponentError(component.name);
|
|
7488
|
-
}
|
|
7489
7420
|
if (!component.name) {
|
|
7490
7421
|
throw new Error("Component name is required");
|
|
7491
7422
|
}
|
|
7423
|
+
if (state.componentNames.has(component.name)) {
|
|
7424
|
+
throw new DuplicateComponentError(component.name);
|
|
7425
|
+
}
|
|
7492
7426
|
const newComponentNames = new Set(state.componentNames);
|
|
7493
7427
|
newComponentNames.add(component.name);
|
|
7494
7428
|
const newState = {
|
|
7495
7429
|
components: [...state.components, component],
|
|
7496
7430
|
componentNames: newComponentNames,
|
|
7497
7431
|
theme: state.theme,
|
|
7432
|
+
customThemes: state.customThemes,
|
|
7498
7433
|
debug: state.debug,
|
|
7499
7434
|
enableCache: state.enableCache
|
|
7500
7435
|
};
|
|
@@ -7509,10 +7444,13 @@ function createBuilderImpl(state) {
|
|
|
7509
7444
|
internalDocument,
|
|
7510
7445
|
state.components
|
|
7511
7446
|
);
|
|
7447
|
+
const themeName = internalDocument.props.theme || "minimal";
|
|
7448
|
+
const docTheme = resolveDocumentTheme(themeName);
|
|
7512
7449
|
const warnings = [];
|
|
7513
7450
|
const processedComponents = await processDocumentComponents(
|
|
7514
7451
|
internalDocument.children || [],
|
|
7515
|
-
warnings
|
|
7452
|
+
warnings,
|
|
7453
|
+
docTheme
|
|
7516
7454
|
);
|
|
7517
7455
|
const processedDocument = {
|
|
7518
7456
|
...internalDocument,
|
|
@@ -7521,10 +7459,10 @@ function createBuilderImpl(state) {
|
|
|
7521
7459
|
const [finalReportComponent] = normalizeDocument(processedDocument);
|
|
7522
7460
|
const structure = await processDocument(
|
|
7523
7461
|
finalReportComponent,
|
|
7524
|
-
|
|
7525
|
-
|
|
7462
|
+
docTheme,
|
|
7463
|
+
themeName
|
|
7526
7464
|
);
|
|
7527
|
-
const layout = applyLayout(structure.sections,
|
|
7465
|
+
const layout = applyLayout(structure.sections, docTheme, themeName);
|
|
7528
7466
|
const generatedDocument = await renderDocument(structure, layout);
|
|
7529
7467
|
return {
|
|
7530
7468
|
document: generatedDocument,
|
|
@@ -7560,7 +7498,7 @@ function createBuilderImpl(state) {
|
|
|
7560
7498
|
);
|
|
7561
7499
|
return { valid: true };
|
|
7562
7500
|
} catch (error) {
|
|
7563
|
-
if (error instanceof
|
|
7501
|
+
if (error instanceof ComponentValidationError2) {
|
|
7564
7502
|
return {
|
|
7565
7503
|
valid: false,
|
|
7566
7504
|
errors: error.errors.map((e) => ({
|
|
@@ -7600,10 +7538,13 @@ function createBuilderImpl(state) {
|
|
|
7600
7538
|
internalDocument,
|
|
7601
7539
|
state.components
|
|
7602
7540
|
);
|
|
7541
|
+
const themeName = internalDocument.props.theme || "minimal";
|
|
7542
|
+
const docTheme = resolveDocumentTheme(themeName);
|
|
7603
7543
|
const warnings = [];
|
|
7604
7544
|
const processedComponents = await processDocumentComponents(
|
|
7605
7545
|
internalDocument.children || [],
|
|
7606
|
-
warnings
|
|
7546
|
+
warnings,
|
|
7547
|
+
docTheme
|
|
7607
7548
|
);
|
|
7608
7549
|
const processedDocument = {
|
|
7609
7550
|
...internalDocument,
|
|
@@ -7635,6 +7576,7 @@ function createDocumentGenerator(options) {
|
|
|
7635
7576
|
components: [],
|
|
7636
7577
|
componentNames: /* @__PURE__ */ new Set(),
|
|
7637
7578
|
theme: options.theme,
|
|
7579
|
+
customThemes: options.customThemes,
|
|
7638
7580
|
debug: options.debug ?? false,
|
|
7639
7581
|
enableCache: options.enableCache ?? false
|
|
7640
7582
|
};
|
|
@@ -7653,7 +7595,7 @@ var export_mergeConfigs = cache_exports.mergeConfigs;
|
|
|
7653
7595
|
export {
|
|
7654
7596
|
CacheKeyGenerator,
|
|
7655
7597
|
export_ComponentCacheAnalytics as ComponentCacheAnalytics,
|
|
7656
|
-
ComponentValidationError,
|
|
7598
|
+
ComponentValidationError2 as ComponentValidationError,
|
|
7657
7599
|
DocumentGenerator as CoreDocumentGenerator,
|
|
7658
7600
|
export_DEFAULT_CACHE_CONFIG as DEFAULT_CACHE_CONFIG,
|
|
7659
7601
|
export_MemoryCache as MemoryCache,
|