@json-to-office/core-docx 7.6.0 → 7.7.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/highcharts.d.ts +16 -0
- package/dist/components/highcharts.d.ts.map +1 -1
- package/dist/components/highchartsOptions.d.ts +73 -0
- package/dist/components/highchartsOptions.d.ts.map +1 -0
- package/dist/core/componentTransform.d.ts +2 -2
- package/dist/core/componentTransform.d.ts.map +1 -1
- package/dist/core/fontResolution.d.ts.map +1 -1
- package/dist/core/generateFromIr.d.ts +7 -1
- package/dist/core/generateFromIr.d.ts.map +1 -1
- package/dist/core/nodeOrigin.d.ts +35 -0
- package/dist/core/nodeOrigin.d.ts.map +1 -0
- package/dist/core/renderManifest.d.ts +76 -0
- package/dist/core/renderManifest.d.ts.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +568 -115
- package/dist/index.js.map +1 -1
- package/dist/ir/compiler.d.ts +11 -1
- package/dist/ir/compiler.d.ts.map +1 -1
- package/dist/plugin/createDocumentGenerator.d.ts +2 -0
- package/dist/plugin/createDocumentGenerator.d.ts.map +1 -1
- package/dist/plugin/example/index.js +527 -110
- package/dist/plugin/example/index.js.map +1 -1
- package/dist/plugin/index.d.ts +2 -2
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/types.d.ts +22 -1
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/renderers/office-open/emit.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -40,6 +40,22 @@ export declare function effectiveChartServerUrl(props: HighchartsProps, services
|
|
|
40
40
|
* it did: where the request goes is part of the document's confidentiality.
|
|
41
41
|
*/
|
|
42
42
|
export declare function assertExportServerAllowed(serverUrl: string, servicesConfig: HighchartsServiceConfig | undefined, warnings: GenerationWarning[] | undefined): void;
|
|
43
|
+
/** The body posted to the export server's `/export` for one chart. */
|
|
44
|
+
export type HighchartsExportRequest = {
|
|
45
|
+
/** The chart's effective Highcharts options. */
|
|
46
|
+
infile: HighchartsProps['options'];
|
|
47
|
+
type: 'png';
|
|
48
|
+
b64: true;
|
|
49
|
+
scale: HighchartsProps['scale'];
|
|
50
|
+
resources?: HighchartsProps['resources'];
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* The request the render posts for a chart with these props, under the theme
|
|
54
|
+
* the chart is rendered with — already resolved: design system materialized,
|
|
55
|
+
* document defaults merged, the section's page applied. The render and
|
|
56
|
+
* `resolveHighchartsRequest` both build their request here.
|
|
57
|
+
*/
|
|
58
|
+
export declare function resolveChartRequest(props: HighchartsProps, renderTheme: ThemeConfig, fontFaces?: readonly RasterizeFontFace[]): HighchartsExportRequest;
|
|
43
59
|
/**
|
|
44
60
|
* Map a chart's props to the `image` props it desugars to.
|
|
45
61
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highcharts.d.ts","sourceRoot":"","sources":["../../src/components/highcharts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAMxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAaL,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EAEvB,MAAM,wBAAwB,CAAC;AAGhC,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;AAIjE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,uBAAuB,GAAG,SAAS,GAClD,MAAM,CAMR;AAED;;GAEG;AACH;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,QAAQ,EAAE,iBAAiB,EAAE,GAAG,SAAS,GACxC,IAAI,CAkBN;
|
|
1
|
+
{"version":3,"file":"highcharts.d.ts","sourceRoot":"","sources":["../../src/components/highcharts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAMxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAaL,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EAEvB,MAAM,wBAAwB,CAAC;AAGhC,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;AAIjE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,uBAAuB,GAAG,SAAS,GAClD,MAAM,CAMR;AAED;;GAEG;AACH;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,QAAQ,EAAE,iBAAiB,EAAE,GAAG,SAAS,GACxC,IAAI,CAkBN;AAuRD,sEAAsE;AACtE,MAAM,MAAM,uBAAuB,GAAG;IACpC,gDAAgD;IAChD,MAAM,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,IAAI,CAAC;IACV,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;CAC1C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,SAAS,iBAAiB,EAAE,GACvC,uBAAuB,CAEzB;AAED;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,WAAW,EAClB,cAAc,CAAC,EAAE,uBAAuB,EACxC,UAAU,CAAC,EAAE,SAAS,iBAAiB,EAAE,EACzC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,EAC9B,KAAK,CAAC,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAgBlC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A `highcharts` node's effective options, without rendering it.
|
|
3
|
+
*
|
|
4
|
+
* The render does not post a chart under the theme it was handed. Before any
|
|
5
|
+
* chart is drawn the theme goes through the generation prologue — the
|
|
6
|
+
* document's `themeOverrides`, the design system's type roles materialized
|
|
7
|
+
* into styles, the font export mode — then the document's
|
|
8
|
+
* `componentDefaults`, and a top-level section with its own `page` narrows
|
|
9
|
+
* the text width a percentage resolves against. Each of those changes what
|
|
10
|
+
* the export server is asked for, so this module runs the very same
|
|
11
|
+
* functions, in the same order, and then builds the request with the one the
|
|
12
|
+
* render uses.
|
|
13
|
+
*/
|
|
14
|
+
import type { HighchartsProps } from '@json-to-office/shared-docx';
|
|
15
|
+
import type { FontRuntimeOpts, RasterizeFontFace } from '@json-to-office/shared';
|
|
16
|
+
import type { ThemeConfig } from '../styles';
|
|
17
|
+
import type { ReportProps } from '../types';
|
|
18
|
+
import { type SectionPageOverride } from '../styles/utils/layoutUtils';
|
|
19
|
+
import { type HighchartsExportRequest } from './highcharts';
|
|
20
|
+
export type { HighchartsExportRequest } from './highcharts';
|
|
21
|
+
/** What `resolveHighchartsOptions` and `resolveHighchartsRequest` read. */
|
|
22
|
+
export interface ResolveHighchartsOptionsInput {
|
|
23
|
+
/** The node's `props.options`, as authored. */
|
|
24
|
+
options: HighchartsProps['options'];
|
|
25
|
+
/**
|
|
26
|
+
* The theme the document renders with, as it is handed to the generator —
|
|
27
|
+
* the `theme` or `customThemes` entry, or a built-in theme object. It is
|
|
28
|
+
* resolved here exactly as generation resolves it.
|
|
29
|
+
*/
|
|
30
|
+
theme: ThemeConfig;
|
|
31
|
+
/** The node's `props.width`; the placed width scales the chart's type. */
|
|
32
|
+
width?: HighchartsProps['width'];
|
|
33
|
+
/** The node's `props.height`; it places the chart when `width` is absent. */
|
|
34
|
+
height?: HighchartsProps['height'];
|
|
35
|
+
/** The node's `props.scale`. */
|
|
36
|
+
scale?: HighchartsProps['scale'];
|
|
37
|
+
/** The node's `props.resources`. */
|
|
38
|
+
resources?: HighchartsProps['resources'];
|
|
39
|
+
/**
|
|
40
|
+
* The document root's `props`, for the parts that reach a chart:
|
|
41
|
+
* `themeOverrides` and `componentDefaults` (its `highcharts` presets merge
|
|
42
|
+
* over the theme's).
|
|
43
|
+
*/
|
|
44
|
+
documentProps?: Pick<ReportProps, 'themeOverrides' | 'componentDefaults'>;
|
|
45
|
+
/**
|
|
46
|
+
* `props.page` of the top-level section holding the chart, when it
|
|
47
|
+
* overrides the page: a percentage `width` is of that page's text width.
|
|
48
|
+
*/
|
|
49
|
+
page?: SectionPageOverride;
|
|
50
|
+
/** The generator's `fonts` option; its export mode can rewrite families. */
|
|
51
|
+
fonts?: FontRuntimeOpts;
|
|
52
|
+
/**
|
|
53
|
+
* The font faces the render hands the export server. They only add
|
|
54
|
+
* `@font-face` rules to `resources.css`; the options never depend on them.
|
|
55
|
+
*/
|
|
56
|
+
fontFaces?: readonly RasterizeFontFace[];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The exact request the library posts to the export server for a `highcharts`
|
|
60
|
+
* node with these props, in a document rendered with this theme. Pure: no
|
|
61
|
+
* service is called.
|
|
62
|
+
*/
|
|
63
|
+
export declare function resolveHighchartsRequest(input: ResolveHighchartsOptionsInput): HighchartsExportRequest;
|
|
64
|
+
/**
|
|
65
|
+
* The effective Highcharts options of a `highcharts` node — exactly the
|
|
66
|
+
* `infile` the library posts to the export server: the theme's (and the
|
|
67
|
+
* document's) `componentDefaults.highcharts.options` beneath the node's own,
|
|
68
|
+
* the theme's chart palette when the node sets no `colors`, and the
|
|
69
|
+
* document's type at the size the chart is placed at. Pure: no service is
|
|
70
|
+
* called.
|
|
71
|
+
*/
|
|
72
|
+
export declare function resolveHighchartsOptions(input: ResolveHighchartsOptionsInput): HighchartsProps['options'];
|
|
73
|
+
//# sourceMappingURL=highchartsOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"highchartsOptions.d.ts","sourceRoot":"","sources":["../../src/components/highchartsOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAA6B,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvE,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAE5D,2EAA2E;AAC3E,MAAM,WAAW,6BAA6B;IAC5C,+CAA+C;IAC/C,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACpC;;;;OAIG;IACH,KAAK,EAAE,WAAW,CAAC;IACnB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,6EAA6E;IAC7E,MAAM,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IACnC,gCAAgC;IAChC,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,oCAAoC;IACpC,SAAS,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IACzC;;;;OAIG;IACH,aAAa,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,gBAAgB,GAAG,mBAAmB,CAAC,CAAC;IAC1E;;;OAGG;IACH,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,4EAA4E;IAC5E,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC1C;AAqBD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GACnC,uBAAuB,CASzB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GACnC,eAAe,CAAC,SAAS,CAAC,CAE5B"}
|
|
@@ -23,8 +23,8 @@ export declare function transformComponents<T>(doc: T, replace: ComponentReplace
|
|
|
23
23
|
* Carry a node's identity and visibility onto its replacement.
|
|
24
24
|
*
|
|
25
25
|
* A desugared node is still the component the author wrote: an `id` other
|
|
26
|
-
* things link to,
|
|
27
|
-
* have to survive the substitution.
|
|
26
|
+
* things link to, an `enabled` flag something downstream may act on, and the
|
|
27
|
+
* path the render manifest reports it at all have to survive the substitution.
|
|
28
28
|
*/
|
|
29
29
|
export declare function withNodeIdentity(original: Record<string, unknown>, replacement: Record<string, unknown>): Record<string, unknown>;
|
|
30
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentTransform.d.ts","sourceRoot":"","sources":["../../src/core/componentTransform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"componentTransform.d.ts","sourceRoot":"","sources":["../../src/core/componentTransform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAC9B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;AAElD,6EAA6E;AAC7E,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAkFD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKzB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYtE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontResolution.d.ts","sourceRoot":"","sources":["../../src/core/fontResolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"fontResolution.d.ts","sourceRoot":"","sources":["../../src/core/fontResolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAehC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,yBAAyB,EACnC,KAAK,EAAE,WAAW,EAClB,KAAK,CAAC,EAAE,eAAe,EACvB,QAAQ,CAAC,EAAE,iBAAiB,EAAE;AAC9B;;;;;;;;GAQG;AACH,gBAAgB,UAAQ,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC,CAyFzB"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
/// <reference types="node" />
|
|
17
17
|
import type { GenerationWarning, ServicesConfig } from '@json-to-office/shared';
|
|
18
18
|
import type { EmbeddedFontFace, FontRuntimeOpts } from '@json-to-office/shared';
|
|
19
|
-
import { compileDocument, type UnsupportedComponent } from '../ir/compiler';
|
|
19
|
+
import { compileDocument, type ImageOrigins, type UnsupportedComponent } from '../ir/compiler';
|
|
20
20
|
import type { DocxIR } from '../ir/types';
|
|
21
21
|
import type { DocxRendererId } from '../renderers/types';
|
|
22
22
|
import type { ThemeConfig } from '../styles';
|
|
@@ -58,6 +58,10 @@ export interface IrDocxGenerationOptions {
|
|
|
58
58
|
export interface IrDocxGenerationResult {
|
|
59
59
|
buffer: Buffer;
|
|
60
60
|
warnings: GenerationWarning[];
|
|
61
|
+
/** The IR the bytes were rendered from. */
|
|
62
|
+
ir: DocxIR;
|
|
63
|
+
/** The standard-definition node each image in `ir` was lowered from. */
|
|
64
|
+
imageOrigins: ImageOrigins;
|
|
61
65
|
}
|
|
62
66
|
/**
|
|
63
67
|
* Thrown when the compiler meets something it does not lower yet.
|
|
@@ -76,6 +80,8 @@ export interface CompiledDocx {
|
|
|
76
80
|
warnings: GenerationWarning[];
|
|
77
81
|
required: ReturnType<typeof compileDocument>['required'];
|
|
78
82
|
unsupported: UnsupportedComponent[];
|
|
83
|
+
/** The standard-definition node each image in `ir` was lowered from. */
|
|
84
|
+
imageOrigins: ImageOrigins;
|
|
79
85
|
/**
|
|
80
86
|
* The font faces `embed` mode writes into the package; empty in every other
|
|
81
87
|
* mode. Kept beside the IR rather than in it: they are a resource of this
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFromIr.d.ts","sourceRoot":"","sources":["../../src/core/generateFromIr.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;;;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAWhF,OAAO,
|
|
1
|
+
{"version":3,"file":"generateFromIr.d.ts","sourceRoot":"","sources":["../../src/core/generateFromIr.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;;;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAWhF,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAKlE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,iEAAiE;IACjE,QAAQ,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,2CAA2C;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;;;;GAKG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,SAAgB,IAAI,0BAA0B;IAC9C,SAAgB,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;gBAEhD,UAAU,EAAE,SAAS,oBAAoB,EAAE;CAiBxD;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,QAAQ,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC;IACzD,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,wEAAwE;IACxE,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;;OAKG;IACH,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,yBAAyB,EACnC,OAAO,GAAE,uBAA4B,EACrC,SAAS,CAAC,EAAE,iBAAiB,EAAE,GAC9B,OAAO,CAAC,YAAY,CAAC,CAOvB;AA4HD,0EAA0E;AAC1E,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,yBAAyB,EACnC,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,sBAAsB,CAAC,CAcjC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a component sits in the standard definition, carried to the compiler.
|
|
3
|
+
*
|
|
4
|
+
* Between `standardDefinition` and the IR the tree is copied many times —
|
|
5
|
+
* defaults resolved, charts and visuals desugared, sections flattened, laid
|
|
6
|
+
* out — and none of those copies keeps a path. The render manifest has to say
|
|
7
|
+
* which node of the returned tree each embedded image came from, so the path
|
|
8
|
+
* rides on the node itself under a symbol key: an object spread copies it,
|
|
9
|
+
* while `JSON.stringify`, `Object.keys` and every cache key built from them
|
|
10
|
+
* never see it. That is what keeps the document bytes unchanged.
|
|
11
|
+
*
|
|
12
|
+
* The tag goes on a copy, never on the caller's objects: one object reused at
|
|
13
|
+
* two places in a document would otherwise carry a single path for both.
|
|
14
|
+
*/
|
|
15
|
+
export interface NodeOrigin {
|
|
16
|
+
/** Dot path of the node in the standard definition, e.g. `children.4.children.2`. */
|
|
17
|
+
standardPath: string;
|
|
18
|
+
/** The standard component's name at that path. */
|
|
19
|
+
kind: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Copy `root`, tagging every component node with its path from `root`.
|
|
23
|
+
*
|
|
24
|
+
* Plain objects and arrays are copied; anything else — strings, buffers,
|
|
25
|
+
* dates — is shared, so the copy costs a walk and not the image bytes.
|
|
26
|
+
*/
|
|
27
|
+
export declare function tagNodeOrigins<T>(root: T): T;
|
|
28
|
+
/** The origin a node was tagged with, if any. */
|
|
29
|
+
export declare function nodeOrigin(node: unknown): NodeOrigin | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Carry `original`'s origin onto a node built to replace it. A desugared chart
|
|
32
|
+
* is still the node the author placed: its image comes from that path.
|
|
33
|
+
*/
|
|
34
|
+
export declare function withNodeOrigin<T extends object>(original: object, next: T): T;
|
|
35
|
+
//# sourceMappingURL=nodeOrigin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodeOrigin.d.ts","sourceRoot":"","sources":["../../src/core/nodeOrigin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,UAAU;IACzB,qFAAqF;IACrF,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;CACd;AAgBD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAmB5C;AAMD,iDAAiD;AACjD,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAGhE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAI7E"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The render manifest: one entry per image embedded in a generated `.docx`,
|
|
3
|
+
* saying which node of the returned definition produced it.
|
|
4
|
+
*
|
|
5
|
+
* Built from the package itself, not predicted: the blips are read out of
|
|
6
|
+
* `word/document.xml` and each header and footer part in the order a reader
|
|
7
|
+
* meets them, and paired with the image runs of the IR the bytes were
|
|
8
|
+
* rendered from, which a backend writes in that same order. Each pair is then
|
|
9
|
+
* checked against the media bytes — the blip must point at the very bytes
|
|
10
|
+
* the run's resource holds — so a manifest that comes back is one whose every
|
|
11
|
+
* entry was confirmed against the file, and a package the pairing cannot
|
|
12
|
+
* account for yields no manifest rather than a wrong one.
|
|
13
|
+
*/
|
|
14
|
+
/// <reference types="node" />
|
|
15
|
+
/// <reference types="node" />
|
|
16
|
+
import type { DocxIR } from '../ir/types';
|
|
17
|
+
import type { ImageOrigins } from '../ir/compiler';
|
|
18
|
+
/** Where in the package an image sits. */
|
|
19
|
+
export type RenderManifestPart = 'body' | 'header' | 'footer';
|
|
20
|
+
/** One embedded image occurrence and the definition node that produced it. */
|
|
21
|
+
export interface RenderManifestEntry {
|
|
22
|
+
/** `body` for `word/document.xml`; `header` or `footer` for page chrome. */
|
|
23
|
+
part: RenderManifestPart;
|
|
24
|
+
/** The package part holding the `<a:blip>`, e.g. `word/document.xml`, `word/header1.xml`. */
|
|
25
|
+
partPath: string;
|
|
26
|
+
/**
|
|
27
|
+
* The media file the blip embeds, e.g. `word/media/image12.png`. Identical
|
|
28
|
+
* images are stored once, so two entries can name the same file.
|
|
29
|
+
*/
|
|
30
|
+
mediaPath: string;
|
|
31
|
+
/** Lowercase hex SHA-256 of the media file's bytes. */
|
|
32
|
+
sha256: string;
|
|
33
|
+
/**
|
|
34
|
+
* Dot path of the producing node in the returned `standardDefinition`, e.g.
|
|
35
|
+
* `children.4.children.2` or `children.0.props.header.0`.
|
|
36
|
+
*/
|
|
37
|
+
standardPath: string;
|
|
38
|
+
/** The standard component at `standardPath`: `image`, `highcharts`, `visual`, … */
|
|
39
|
+
kind: string;
|
|
40
|
+
/**
|
|
41
|
+
* Present only when the node came from a custom component kept by
|
|
42
|
+
* `preserveCustomComponents`: the dot path of that component in the
|
|
43
|
+
* returned `preservedDefinition`. Every node one preserved component emits
|
|
44
|
+
* carries the same path.
|
|
45
|
+
*/
|
|
46
|
+
sourcePath?: string;
|
|
47
|
+
/** The preserved custom component's name, alongside `sourcePath`. */
|
|
48
|
+
sourceKind?: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Every embedded image, body first in the order of the `<a:blip r:embed>`
|
|
52
|
+
* elements of `word/document.xml`, then each section's header and footer
|
|
53
|
+
* parts in section order. One entry per occurrence, not per media file.
|
|
54
|
+
*/
|
|
55
|
+
export type RenderManifest = RenderManifestEntry[];
|
|
56
|
+
/** A custom-component origin recorded while the definition was expanded. */
|
|
57
|
+
export interface SourceOrigin {
|
|
58
|
+
sourcePath: string;
|
|
59
|
+
sourceKind: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Standard-definition dot paths mapped to the preserved component whose
|
|
63
|
+
* expansion they root. A node's origin is that of its nearest recorded
|
|
64
|
+
* ancestor-or-self.
|
|
65
|
+
*/
|
|
66
|
+
export type SourceOrigins = ReadonlyMap<string, SourceOrigin>;
|
|
67
|
+
export type RenderManifestBuild = {
|
|
68
|
+
ok: true;
|
|
69
|
+
manifest: RenderManifest;
|
|
70
|
+
} | {
|
|
71
|
+
ok: false;
|
|
72
|
+
reason: string;
|
|
73
|
+
};
|
|
74
|
+
/** Build the manifest for `buffer`, rendered from `ir`. */
|
|
75
|
+
export declare function buildRenderManifest(buffer: Buffer, ir: DocxIR, imageOrigins: ImageOrigins, sourceOrigins?: SourceOrigins): RenderManifestBuild;
|
|
76
|
+
//# sourceMappingURL=renderManifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderManifest.d.ts","sourceRoot":"","sources":["../../src/core/renderManifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;;;AAIH,OAAO,KAAK,EACV,MAAM,EAQP,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,0CAA0C;AAC1C,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9D,8EAA8E;AAC9E,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,IAAI,EAAE,kBAAkB,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,EAAE,CAAC;AAEnD,4EAA4E;AAC5E,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAE9D,MAAM,MAAM,mBAAmB,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,GACtC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAalC,2DAA2D;AAC3D,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,YAAY,EAC1B,aAAa,GAAE,aAAyB,GACvC,mBAAmB,CAYrB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export { examples, getExample, getExampleNames, loadJsonExample, } from './templ
|
|
|
28
28
|
export { runExample } from './utils/exampleRunner';
|
|
29
29
|
import './components/index';
|
|
30
30
|
export type { ChartGenerationResult, } from './components/highcharts';
|
|
31
|
-
export {
|
|
31
|
+
export { resolveHighchartsOptions, resolveHighchartsRequest, type ResolveHighchartsOptionsInput, type HighchartsExportRequest, } from './components/highchartsOptions';
|
|
32
|
+
export { createComponent, createVersion, createDocumentGenerator, validateComponentProps, validateDocument, cleanComponentProps, ComponentValidationError, UnknownPreservedComponentError, RENDER_MANIFEST_UNAVAILABLE, generatePluginDocumentSchema, exportPluginSchema, generateComponentSchemas, mergeSchemas, type CustomComponent, type ComponentVersion, type ComponentVersionMap, type RenderFunction, type RenderContext as ComponentRenderContext, type DocumentGenerator, type DocumentGeneratorOptions, type GenerateOptions, type GenerateFileOptions, type BufferGenerationResult, type FileGenerationResult, type RenderManifest, type RenderManifestEntry, type RenderManifestPart, type StandardDefinitionResult, type QualityPreparationResult, type ValidationResult, type ValidationError, type ExtractCustomComponentType, type CustomComponentUnion, type ExtendedComponentDefinition, type ExtendedReportComponent, type InferCustomComponents, } from './plugin/index';
|
|
32
33
|
export type { PluginComponent, PluginRenderFunction, PluginValidationError, PluginValidationResult, } from './types/plugin';
|
|
33
34
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|