@json-to-office/shared-docx 0.13.1 → 0.16.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/{chunk-CIBMJ7QA.js → chunk-5C7XT6LW.js} +6 -2
- package/dist/{chunk-CIBMJ7QA.js.map → chunk-5C7XT6LW.js.map} +1 -1
- package/dist/{chunk-YUV5CJMG.js → chunk-CGMJ665Z.js} +488 -436
- package/dist/chunk-CGMJ665Z.js.map +1 -0
- package/dist/{chunk-ZQNAWKEI.js → chunk-M6LVAHZB.js} +2 -2
- package/dist/chunk-M6LVAHZB.js.map +1 -0
- package/dist/{chunk-TPA2QVQD.js → chunk-NZKLNPBZ.js} +6 -6
- package/dist/{chunk-UTOSZI5Q.js → chunk-P4CGTP5W.js} +4 -4
- package/dist/chunk-P4CGTP5W.js.map +1 -0
- package/dist/{chunk-IHZIO72A.js → chunk-PVQV2RS4.js} +2 -2
- package/dist/{chunk-VBZC5WT6.js → chunk-SMIG3LSE.js} +2 -2
- package/dist/{chunk-YK2UUG65.js → chunk-X2B5OVWA.js} +2 -2
- package/dist/{chunk-25SAKHVN.js → chunk-YRRBEJPB.js} +2 -2
- package/dist/{chunk-BFJJ5HYD.js → chunk-YZYUY2VH.js} +153 -11
- package/dist/chunk-YZYUY2VH.js.map +1 -0
- package/dist/index.d.ts +158 -21
- package/dist/index.js +701 -12
- package/dist/index.js.map +1 -1
- package/dist/schemas/api.js +4 -4
- package/dist/schemas/component-defaults.d.ts +48 -32
- package/dist/schemas/component-defaults.js +1 -1
- package/dist/schemas/component-registry.js +2 -2
- package/dist/schemas/components.d.ts +178 -33
- package/dist/schemas/components.js +13 -3
- package/dist/schemas/document.js +5 -5
- package/dist/schemas/export.js +3 -3
- package/dist/schemas/generator.js +3 -3
- package/dist/schemas/theme.d.ts +24 -16
- package/dist/schemas/theme.js +2 -2
- package/dist/validation/unified/index.d.ts +51 -18
- package/dist/validation/unified/index.js +6 -6
- package/package.json +3 -2
- package/dist/chunk-BFJJ5HYD.js.map +0 -1
- package/dist/chunk-UTOSZI5Q.js.map +0 -1
- package/dist/chunk-YUV5CJMG.js.map +0 -1
- package/dist/chunk-ZQNAWKEI.js.map +0 -1
- /package/dist/{chunk-TPA2QVQD.js.map → chunk-NZKLNPBZ.js.map} +0 -0
- /package/dist/{chunk-IHZIO72A.js.map → chunk-PVQV2RS4.js.map} +0 -0
- /package/dist/{chunk-VBZC5WT6.js.map → chunk-SMIG3LSE.js.map} +0 -0
- /package/dist/{chunk-YK2UUG65.js.map → chunk-X2B5OVWA.js.map} +0 -0
- /package/dist/{chunk-25SAKHVN.js.map → chunk-YRRBEJPB.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import { RevisionSegment, ComponentDefinition as ComponentDefinition$1, ComponentDefinitionSchema, ColumnsPropsSchema, ReportPropsSchema, SectionPropsSchema, HeadingPropsSchema, ParagraphPropsSchema, TextBoxPropsSchema, ImagePropsSchema, HighchartsPropsSchema, VisualPropsSchema, StatisticPropsSchema, TablePropsSchema, ListPropsSchema, TocPropsSchema } from './schemas/components.js';
|
|
2
|
+
export { Alignment, AlignmentSchema, BaseComponentProps, BaseComponentPropsSchema, BorderSchema, ColumnsProps, HeadingLevel, HeadingLevelSchema, HeadingProps, HighchartsProps, ImageProps, Indent, IndentSchema, JustifiedAlignment, JustifiedAlignmentSchema, LineSpacing, LineSpacingSchema, ListProps, MarginsSchema, Numbering, NumberingSchema, ParagraphProps, ReportProps, Revision, RevisionSchema, RevisionSegmentSchema, SectionProps, Spacing, SpacingSchema, StandardComponentDefinitionSchema, StatisticProps, TableProps, TextBoxProps, TocProps, VisualCanvas, VisualCanvasBackgroundSchema, VisualCanvasSchema, VisualProps } from './schemas/components.js';
|
|
1
3
|
export { AddWarningFunction, ComponentSchemaConfig, DEFAULT_ERROR_CONFIG, ERROR_EMOJIS, ErrorFormatterConfig, GenerationWarning, ParsedSemver, ComponentDefinition as SharedComponentDefinition, ValidationError, ValidationResult, calculatePosition, clearComponentNamesCache, compareSemver, convertToJsonSchema, createComponentSchema, createErrorConfig, createJsonParseError, exportSchemaToFile, extractStandardComponentNames, fixSchemaReferences, formatErrorMessage, formatErrorSummary, getLiteralValue, getObjectSchemaPropertyNames, getSchemaMetadata, groupErrorsByPath, isLiteralSchema, isObjectSchema, isUnionSchema, isValidSemver, latestVersion, parseSemver, createComponentSchemaObject as sharedCreateComponentSchemaObject, transformValueError, transformValueErrors } from '@json-to-office/shared';
|
|
2
4
|
import { DocumentValidationResult, ValidationError } from './schemas/document.js';
|
|
3
5
|
export { JSON_SCHEMA_URLS, JsonComponentDefinitionSchema } from './schemas/document.js';
|
|
4
6
|
export { DocumentMargins, FontDefinition, Fonts, HeadingDefinition, Page, PageDimensions, StyleDefinitions, ThemeConfigJson, ThemeConfigSchema, isValidThemeConfig } from './schemas/theme.js';
|
|
5
7
|
export { GenerateDocumentRequest, GenerateDocumentRequestSchema, GenerateDocumentResponse, GenerateDocumentResponseSchema, ValidateDocumentRequest, ValidateDocumentRequestSchema, ValidateDocumentResponse, ValidateDocumentResponseSchema } from './schemas/api.js';
|
|
6
|
-
import { ComponentDefinition as ComponentDefinition$1, ComponentDefinitionSchema, ColumnsPropsSchema, ReportPropsSchema, SectionPropsSchema, HeadingPropsSchema, ParagraphPropsSchema, TextBoxPropsSchema, ImagePropsSchema, HighchartsPropsSchema, StatisticPropsSchema, TablePropsSchema, ListPropsSchema, TocPropsSchema } from './schemas/components.js';
|
|
7
|
-
export { Alignment, AlignmentSchema, BaseComponentProps, BaseComponentPropsSchema, BorderSchema, ColumnsProps, HeadingLevel, HeadingLevelSchema, HeadingProps, HighchartsProps, ImageProps, Indent, IndentSchema, JustifiedAlignment, JustifiedAlignmentSchema, LineSpacing, LineSpacingSchema, ListProps, MarginsSchema, Numbering, NumberingSchema, ParagraphProps, ReportProps, SectionProps, Spacing, SpacingSchema, StandardComponentDefinitionSchema, StatisticProps, TableProps, TextBoxProps, TocProps } from './schemas/components.js';
|
|
8
8
|
import * as _sinclair_typebox from '@sinclair/typebox';
|
|
9
9
|
import { Static } from '@sinclair/typebox';
|
|
10
10
|
import { ValueError } from '@sinclair/typebox/value';
|
|
@@ -17,6 +17,98 @@ export { ColumnsComponentDefaults, ComponentDefaults, HeadingComponentDefaults,
|
|
|
17
17
|
export { C as ComponentValidationResult, E as EnhancedValueError, J as JsonValidationResult, T as ThemeValidationResult, V as ValidationOptions, c as createDocumentValidator, d as documentValidator, i as isValidDocument, s as strictDocumentValidator, v as validateDocument, a as validateDocumentWithSchema, b as validateJsonComponent, e as validateJsonComponentDoc, b as validateJsonDocument } from './document-validator-CiaGiy1v.js';
|
|
18
18
|
import './schemas/font.js';
|
|
19
19
|
|
|
20
|
+
/**
|
|
21
|
+
* Document diff engine
|
|
22
|
+
*
|
|
23
|
+
* Compares two json-to-office DOCX definitions and produces a redline
|
|
24
|
+
* document: a third definition (based on the new one) where text changes
|
|
25
|
+
* are expressed as `revision` segments that the renderer turns into native
|
|
26
|
+
* Word tracked changes (w:ins / w:del).
|
|
27
|
+
*
|
|
28
|
+
* Scope (v1):
|
|
29
|
+
* - paragraph / heading: word-level tracked changes
|
|
30
|
+
* - list: item-level alignment, word-level tracked changes per item
|
|
31
|
+
* - containers (section, columns, text-box, ...): recursed into
|
|
32
|
+
* - everything else (table, image, chart, ...): block replace, reported
|
|
33
|
+
* as an *untracked* change in the summary — Word has no native revision
|
|
34
|
+
* for these at the fidelity docx.js supports.
|
|
35
|
+
*/
|
|
36
|
+
/** Structural view of any component node — schemas validate elsewhere. */
|
|
37
|
+
interface JsonNode {
|
|
38
|
+
name: string;
|
|
39
|
+
props?: Record<string, unknown>;
|
|
40
|
+
children?: JsonNode[];
|
|
41
|
+
[key: string]: unknown;
|
|
42
|
+
}
|
|
43
|
+
interface DiffDocumentsOptions {
|
|
44
|
+
/** Revision author shown in Word (default: "json-to-office") */
|
|
45
|
+
author?: string;
|
|
46
|
+
/** Revision timestamp, ISO 8601 (default: deterministic epoch) */
|
|
47
|
+
date?: string;
|
|
48
|
+
}
|
|
49
|
+
interface UntrackedChange {
|
|
50
|
+
/** JSON-pointer-ish location in the NEW document */
|
|
51
|
+
path: string;
|
|
52
|
+
kind: 'modified' | 'inserted' | 'deleted';
|
|
53
|
+
component: string;
|
|
54
|
+
detail: string;
|
|
55
|
+
}
|
|
56
|
+
interface DiffSummary {
|
|
57
|
+
/** Blocks rendered with native tracked changes */
|
|
58
|
+
tracked: {
|
|
59
|
+
modified: number;
|
|
60
|
+
inserted: number;
|
|
61
|
+
deleted: number;
|
|
62
|
+
};
|
|
63
|
+
/** Changes the redline cannot express as native revisions */
|
|
64
|
+
untracked: UntrackedChange[];
|
|
65
|
+
unchangedBlocks: number;
|
|
66
|
+
/** Aggregate fidelity caveats about the redline */
|
|
67
|
+
notes: string[];
|
|
68
|
+
}
|
|
69
|
+
interface DiffDocumentsResult {
|
|
70
|
+
/** Redline document definition (renderable as-is) */
|
|
71
|
+
document: JsonNode;
|
|
72
|
+
summary: DiffSummary;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Diff two DOCX definitions into a renderable redline document.
|
|
76
|
+
*
|
|
77
|
+
* Both inputs must be json-to-office DOCX definitions (root `name: "docx"`).
|
|
78
|
+
* The result is based on the NEW document; the root gains
|
|
79
|
+
* `trackRevisions: true` so Word opens it in review mode.
|
|
80
|
+
*/
|
|
81
|
+
declare function diffDocuments(oldDoc: JsonNode, newDoc: JsonNode, options?: DiffDocumentsOptions): DiffDocumentsResult;
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Word-level text diff
|
|
85
|
+
*
|
|
86
|
+
* Tokenizes text into words and whitespace, runs an LCS diff over the
|
|
87
|
+
* tokens, and emits revision segments. Pure, dependency-free.
|
|
88
|
+
*/
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Anchored to the schema type so the diff engine can never emit segments
|
|
92
|
+
* the RevisionSchema would reject.
|
|
93
|
+
*/
|
|
94
|
+
type DiffSegment = RevisionSegment;
|
|
95
|
+
/**
|
|
96
|
+
* Word-level diff between two strings.
|
|
97
|
+
*
|
|
98
|
+
* Returns merged segments in document order. Deleting everything and
|
|
99
|
+
* inserting everything (whole replace) is the degenerate output for
|
|
100
|
+
* completely different texts or oversized inputs.
|
|
101
|
+
*/
|
|
102
|
+
declare function diffWords(oldText: string, newText: string): DiffSegment[];
|
|
103
|
+
/**
|
|
104
|
+
* Strip the inline markdown the renderer understands (bold/italic markers,
|
|
105
|
+
* hyperlinks) so revision segments — which render literally — never expose
|
|
106
|
+
* raw markers. Uses the exact decorator regex of textParser.ts (lazy
|
|
107
|
+
* [\s\S]*? content), so what the parser would style, this strips — including
|
|
108
|
+
* content containing '*' or '_' (e.g. **snake_case**).
|
|
109
|
+
*/
|
|
110
|
+
declare function stripMarkdown(text: string): string;
|
|
111
|
+
|
|
20
112
|
/**
|
|
21
113
|
* JSON parser
|
|
22
114
|
* @module validation/parsers/json
|
|
@@ -208,6 +300,14 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
208
300
|
componentDefaults: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
209
301
|
heading: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
210
302
|
text: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
303
|
+
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TObject<{
|
|
304
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"single">, _sinclair_typebox.TLiteral<"atLeast">, _sinclair_typebox.TLiteral<"exactly">, _sinclair_typebox.TLiteral<"double">, _sinclair_typebox.TLiteral<"multiple">]>;
|
|
305
|
+
value: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
306
|
+
}>]>>;
|
|
307
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
308
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
309
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
310
|
+
}>>;
|
|
211
311
|
level: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<1>, _sinclair_typebox.TLiteral<2>, _sinclair_typebox.TLiteral<3>, _sinclair_typebox.TLiteral<4>, _sinclair_typebox.TLiteral<5>, _sinclair_typebox.TLiteral<6>]>>;
|
|
212
312
|
font: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
213
313
|
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
@@ -231,14 +331,6 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
231
331
|
family: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
232
332
|
}>>;
|
|
233
333
|
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"justify">]>>;
|
|
234
|
-
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
235
|
-
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
236
|
-
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
237
|
-
}>>;
|
|
238
|
-
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TObject<{
|
|
239
|
-
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"single">, _sinclair_typebox.TLiteral<"atLeast">, _sinclair_typebox.TLiteral<"exactly">, _sinclair_typebox.TLiteral<"double">, _sinclair_typebox.TLiteral<"multiple">]>;
|
|
240
|
-
value: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
241
|
-
}>]>>;
|
|
242
334
|
pageBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
243
335
|
columnBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
244
336
|
numbering: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
@@ -247,6 +339,10 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
247
339
|
}>>;
|
|
248
340
|
paragraph: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
249
341
|
text: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
342
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
343
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
344
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
345
|
+
}>>;
|
|
250
346
|
font: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
251
347
|
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
252
348
|
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
@@ -268,15 +364,13 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
268
364
|
}>>;
|
|
269
365
|
family: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
270
366
|
}>>;
|
|
271
|
-
themeStyle: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
272
|
-
boldColor: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
273
|
-
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
274
|
-
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
275
|
-
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
276
|
-
}>>;
|
|
277
367
|
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"justify">]>>;
|
|
278
368
|
pageBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
279
369
|
columnBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
370
|
+
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
371
|
+
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
372
|
+
themeStyle: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
373
|
+
boldColor: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
280
374
|
floating: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
281
375
|
horizontalPosition: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
282
376
|
relative: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"margin">, _sinclair_typebox.TLiteral<"page">, _sinclair_typebox.TLiteral<"text">]>>;
|
|
@@ -295,8 +389,6 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
295
389
|
width: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
296
390
|
height: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
297
391
|
}>>;
|
|
298
|
-
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
299
|
-
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
300
392
|
id: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
301
393
|
}>>;
|
|
302
394
|
image: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
@@ -397,6 +489,14 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
397
489
|
items: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[_sinclair_typebox.TString, _sinclair_typebox.TObject<{
|
|
398
490
|
text: _sinclair_typebox.TString;
|
|
399
491
|
level: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
492
|
+
revision: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
493
|
+
author: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
494
|
+
date: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
495
|
+
segments: _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
496
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"equal">, _sinclair_typebox.TLiteral<"insert">, _sinclair_typebox.TLiteral<"delete">]>;
|
|
497
|
+
text: _sinclair_typebox.TString;
|
|
498
|
+
}>>;
|
|
499
|
+
}>>;
|
|
400
500
|
}>]>>>;
|
|
401
501
|
reference: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
402
502
|
levels: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
@@ -425,6 +525,7 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
425
525
|
}>]>>;
|
|
426
526
|
}>>;
|
|
427
527
|
}>>;
|
|
528
|
+
trackRevisions: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
428
529
|
metadata: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
429
530
|
title: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
430
531
|
subtitle: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
@@ -502,6 +603,14 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
502
603
|
numbering: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
503
604
|
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
504
605
|
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
606
|
+
revision: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
607
|
+
author: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
608
|
+
date: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
609
|
+
segments: _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
610
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"equal">, _sinclair_typebox.TLiteral<"insert">, _sinclair_typebox.TLiteral<"delete">]>;
|
|
611
|
+
text: _sinclair_typebox.TString;
|
|
612
|
+
}>>;
|
|
613
|
+
}>>;
|
|
505
614
|
}>;
|
|
506
615
|
readonly paragraph: _sinclair_typebox.TObject<{
|
|
507
616
|
text: _sinclair_typebox.TString;
|
|
@@ -556,6 +665,14 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
556
665
|
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
557
666
|
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
558
667
|
id: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
668
|
+
revision: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
669
|
+
author: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
670
|
+
date: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
671
|
+
segments: _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
672
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"equal">, _sinclair_typebox.TLiteral<"insert">, _sinclair_typebox.TLiteral<"delete">]>;
|
|
673
|
+
text: _sinclair_typebox.TString;
|
|
674
|
+
}>>;
|
|
675
|
+
}>>;
|
|
559
676
|
}>;
|
|
560
677
|
readonly columns: _sinclair_typebox.TObject<{
|
|
561
678
|
columns: _sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
@@ -629,6 +746,14 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
629
746
|
items: _sinclair_typebox.TArray<_sinclair_typebox.TUnion<[_sinclair_typebox.TString, _sinclair_typebox.TObject<{
|
|
630
747
|
text: _sinclair_typebox.TString;
|
|
631
748
|
level: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
749
|
+
revision: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
750
|
+
author: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
751
|
+
date: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
752
|
+
segments: _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
753
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"equal">, _sinclair_typebox.TLiteral<"insert">, _sinclair_typebox.TLiteral<"delete">]>;
|
|
754
|
+
text: _sinclair_typebox.TString;
|
|
755
|
+
}>>;
|
|
756
|
+
}>>;
|
|
632
757
|
}>]>>;
|
|
633
758
|
reference: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
634
759
|
levels: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
@@ -811,6 +936,17 @@ interface HighchartsComponent {
|
|
|
811
936
|
enabled?: boolean;
|
|
812
937
|
props: Static<typeof HighchartsPropsSchema>;
|
|
813
938
|
}
|
|
939
|
+
/**
|
|
940
|
+
* Visual component with literal name discriminator.
|
|
941
|
+
* A pptx-rendered free-canvas graphic embedded as a rasterized image.
|
|
942
|
+
*/
|
|
943
|
+
interface VisualComponent {
|
|
944
|
+
name: 'visual';
|
|
945
|
+
id?: string;
|
|
946
|
+
/** When false, this component is filtered out and not rendered. Defaults to true */
|
|
947
|
+
enabled?: boolean;
|
|
948
|
+
props: Static<typeof VisualPropsSchema>;
|
|
949
|
+
}
|
|
814
950
|
/**
|
|
815
951
|
* Text Box component with literal name discriminator
|
|
816
952
|
* Container for child components with floating positioning
|
|
@@ -856,12 +992,12 @@ interface TextSpaceAfterComponent {
|
|
|
856
992
|
/**
|
|
857
993
|
* Union of all standard component types
|
|
858
994
|
*/
|
|
859
|
-
type StandardComponentDefinition = ReportComponent | SectionComponent | ColumnsComponent | HeadingComponent | ParagraphComponent | TextBoxComponent | ImageComponent | HighchartsComponent | StatisticComponent | TableComponent | ListComponent | TocComponent;
|
|
995
|
+
type StandardComponentDefinition = ReportComponent | SectionComponent | ColumnsComponent | HeadingComponent | ParagraphComponent | TextBoxComponent | ImageComponent | HighchartsComponent | VisualComponent | StatisticComponent | TableComponent | ListComponent | TocComponent;
|
|
860
996
|
/**
|
|
861
997
|
* Array of all standard component names.
|
|
862
998
|
* Useful for iterating, validation, or displaying available components to users.
|
|
863
999
|
*/
|
|
864
|
-
declare const STANDARD_COMPONENTS: readonly ["columns", "heading", "highcharts", "image", "list", "paragraph", "docx", "section", "statistic", "table", "text-box", "toc"];
|
|
1000
|
+
declare const STANDARD_COMPONENTS: readonly ["columns", "heading", "highcharts", "image", "list", "paragraph", "docx", "section", "statistic", "table", "text-box", "toc", "visual"];
|
|
865
1001
|
/**
|
|
866
1002
|
* Set of all standard component names for O(1) lookup.
|
|
867
1003
|
*/
|
|
@@ -903,10 +1039,11 @@ declare function isTableComponent(component: ComponentDefinition): component is
|
|
|
903
1039
|
declare function isListComponent(component: ComponentDefinition): component is ListComponent;
|
|
904
1040
|
declare function isTocComponent(component: ComponentDefinition): component is TocComponent;
|
|
905
1041
|
declare function isHighchartsComponent(component: ComponentDefinition): component is HighchartsComponent;
|
|
1042
|
+
declare function isVisualComponent(component: ComponentDefinition): component is VisualComponent;
|
|
906
1043
|
declare function isTextSpaceAfterComponent(component: ComponentDefinition): component is TextSpaceAfterComponent;
|
|
907
1044
|
|
|
908
1045
|
type ThemeName = 'minimal' | 'verizon' | 'a2a' | 'hitachi';
|
|
909
1046
|
|
|
910
1047
|
declare const SHARED_DOCX_VERSION = "1.0.0";
|
|
911
1048
|
|
|
912
|
-
export { type ColumnsComponent, ColumnsPropsSchema, type ComponentDefinition, ComponentDefinitionSchema, type CoreValidationResult, ValidationError as DocumentValidationError, DocumentValidationResult, type FormattedError, type HeadingComponent, HeadingPropsSchema, type HighchartsComponent, HighchartsPropsSchema, type ImageComponent, ImagePropsSchema, JsonDocumentParser, JsonParsingError, JsonValidationError, type ListComponent, ListPropsSchema, type ParagraphComponent, ParagraphPropsSchema, type ReportComponent, ReportPropsSchema, SHARED_DOCX_VERSION, STANDARD_COMPONENTS, STANDARD_COMPONENTS_SET, type SectionComponent, SectionPropsSchema, type StandardComponentDefinition, type StandardComponentName, type StatisticComponent, StatisticPropsSchema, type TableComponent, TablePropsSchema, type TextBoxComponent, TextBoxPropsSchema, type TextSpaceAfterComponent, TextSpaceAfterPropsSchema, type ThemeName, type TocComponent, TocPropsSchema, createValidatedComponent, formatErrorReport, formatValidationError, formatValidationErrorStrings, formatValidationErrors, getErrorSummary, getValidationContext, getValidationErrors, hasCriticalErrors, isColumnsComponent, isHeadingComponent, isHighchartsComponent, isImageComponent, isListComponent, isParagraphComponent, isReportComponent, isSectionComponent, isStatisticComponent, isTableComponent, isTextBoxComponent, isTextSpaceAfterComponent, isTocComponent, isValidComponent, parseJsonComponent, parseJsonWithLineNumbers, safeValidateComponentDefinition, safeValidateComponentProps, transformAndValidate, validateComponent, validateComponentDefinition, validateComponents };
|
|
1049
|
+
export { type ColumnsComponent, ColumnsPropsSchema, type ComponentDefinition, ComponentDefinitionSchema, type CoreValidationResult, type DiffDocumentsOptions, type DiffDocumentsResult, type DiffSegment, type DiffSummary, ValidationError as DocumentValidationError, DocumentValidationResult, type FormattedError, type HeadingComponent, HeadingPropsSchema, type HighchartsComponent, HighchartsPropsSchema, type ImageComponent, ImagePropsSchema, JsonDocumentParser, type JsonNode, JsonParsingError, JsonValidationError, type ListComponent, ListPropsSchema, type ParagraphComponent, ParagraphPropsSchema, type ReportComponent, ReportPropsSchema, RevisionSegment, SHARED_DOCX_VERSION, STANDARD_COMPONENTS, STANDARD_COMPONENTS_SET, type SectionComponent, SectionPropsSchema, type StandardComponentDefinition, type StandardComponentName, type StatisticComponent, StatisticPropsSchema, type TableComponent, TablePropsSchema, type TextBoxComponent, TextBoxPropsSchema, type TextSpaceAfterComponent, TextSpaceAfterPropsSchema, type ThemeName, type TocComponent, TocPropsSchema, type UntrackedChange, type VisualComponent, VisualPropsSchema, createValidatedComponent, diffDocuments, diffWords, formatErrorReport, formatValidationError, formatValidationErrorStrings, formatValidationErrors, getErrorSummary, getValidationContext, getValidationErrors, hasCriticalErrors, isColumnsComponent, isHeadingComponent, isHighchartsComponent, isImageComponent, isListComponent, isParagraphComponent, isReportComponent, isSectionComponent, isStatisticComponent, isTableComponent, isTextBoxComponent, isTextSpaceAfterComponent, isTocComponent, isValidComponent, isVisualComponent, parseJsonComponent, parseJsonWithLineNumbers, safeValidateComponentDefinition, safeValidateComponentProps, stripMarkdown, transformAndValidate, validateComponent, validateComponentDefinition, validateComponents };
|