@json-to-office/core-pptx 6.8.0 → 7.0.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/blocks/document.d.ts.map +1 -1
- package/dist/core/generationContext.d.ts +3 -2
- package/dist/core/generationContext.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +495 -216
- package/dist/index.js.map +1 -1
- package/dist/plugin/createPresentationGenerator.d.ts.map +1 -1
- package/dist/plugin/index.d.ts +1 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/types.d.ts +24 -0
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/quality/facts.d.ts +59 -2
- package/dist/quality/facts.d.ts.map +1 -1
- package/dist/quality/rules.d.ts +31 -6
- package/dist/quality/rules.d.ts.map +1 -1
- package/dist/themes/defaults.d.ts +8 -1
- package/dist/themes/defaults.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPresentationGenerator.d.ts","sourceRoot":"","sources":["../../src/plugin/createPresentationGenerator.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAIV,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAEV,4BAA4B,EAK5B,2BAA2B,
|
|
1
|
+
{"version":3,"file":"createPresentationGenerator.d.ts","sourceRoot":"","sources":["../../src/plugin/createPresentationGenerator.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAIV,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAEV,4BAA4B,EAK5B,2BAA2B,EAG5B,MAAM,SAAS,CAAC;AAMjB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAM5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9E;;GAEG;AACH,MAAM,WAAW,4BACf,SAAQ,4BAA4B;IACpC,wCAAwC;IACxC,KAAK,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IACjC,wBAAwB;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC/C,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,oFAAoF;IACpF,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,qEAAqE;IACrE,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAkiBD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,GAAE,4BAAiC,GACzC,4BAA4B,CAAC,SAAS,EAAE,CAAC,CAmB3C"}
|
package/dist/plugin/index.d.ts
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
*/
|
|
26
26
|
export { createComponent, createVersion, type CustomComponent, type ComponentVersion, type ComponentVersionMap, type RenderFunction, type RenderContext, } from '@json-to-office/shared/plugin';
|
|
27
27
|
export { createPresentationGenerator, type PresentationGeneratorOptions, } from './createPresentationGenerator';
|
|
28
|
-
export { type PresentationGenerator, type PresentationGeneratorBuilder, type BufferGenerationResult, type FileGenerationResult, type GenerateFileOptions, type GenerateOptions, type GenerationValidationOptions, type ValidationResult, type ExtractCustomComponentType, type CustomComponentUnion, type ExtendedPptxComponentInput, type ExtendedPresentationComponent, type InferBuilderComponents, type InferDocumentType, type InferComponentDefinition, } from './types';
|
|
28
|
+
export { type PresentationGenerator, type PresentationGeneratorBuilder, type BufferGenerationResult, type FileGenerationResult, type GenerateFileOptions, type GenerateOptions, type GenerationValidationOptions, type QualityPreparationResult, type ValidationResult, type ExtractCustomComponentType, type CustomComponentUnion, type ExtendedPptxComponentInput, type ExtendedPresentationComponent, type InferBuilderComponents, type InferDocumentType, type InferComponentDefinition, } from './types';
|
|
29
29
|
export { validateComponentProps, validatePresentation, cleanComponentProps, ComponentValidationError, DuplicateComponentError, type ValidationError, type ComponentValidationResult, } from './validation';
|
|
30
30
|
export { generatePluginPresentationSchema, exportPluginSchema } from './schema';
|
|
31
31
|
export { resolveComponentVersion } from '@json-to-office/shared/plugin';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EACL,eAAe,EACf,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,2BAA2B,EAC3B,KAAK,4BAA4B,GAClC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,GAC9B,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,eAAe,EACpB,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EACL,eAAe,EACf,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,2BAA2B,EAC3B,KAAK,4BAA4B,GAClC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,GAC9B,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,eAAe,EACpB,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/plugin/types.d.ts
CHANGED
|
@@ -6,8 +6,10 @@
|
|
|
6
6
|
import type { Static, TSchema } from '@sinclair/typebox';
|
|
7
7
|
import type { CustomComponent } from '@json-to-office/shared/plugin';
|
|
8
8
|
import type { PptxComponentInput, PresentationComponentDefinition, SlideComponentDefinition, PipelineWarning } from '../types';
|
|
9
|
+
import type { PreparedDocument } from '@json-to-office/quality';
|
|
9
10
|
import type { PptxRendererId } from '../renderers/types';
|
|
10
11
|
import type { PresentationPackagingOptions } from '../core/finalizePackage';
|
|
12
|
+
import type { PptxQualityFact, PptxQualityModel } from '../quality/facts';
|
|
11
13
|
type InferVersionMap<T> = T extends CustomComponent<any, infer V, any> ? V : never;
|
|
12
14
|
type InferName<T> = T extends CustomComponent<any, any, infer N> ? N : never;
|
|
13
15
|
/**
|
|
@@ -103,15 +105,37 @@ export interface GenerateOptions extends PresentationPackagingOptions {
|
|
|
103
105
|
* constructor `renderer`; defaults to `pptxgenjs`.
|
|
104
106
|
*/
|
|
105
107
|
renderer?: PptxRendererId;
|
|
108
|
+
/**
|
|
109
|
+
* The model `prepareQuality` built from *this* presentation. Rendering
|
|
110
|
+
* then reuses that one expansion instead of running the registered
|
|
111
|
+
* plugins a second time, so a plugin whose output depends on the clock,
|
|
112
|
+
* on randomness or on a service cannot draw a slide the quality gate
|
|
113
|
+
* never inspected.
|
|
114
|
+
*/
|
|
115
|
+
prepared?: PreparedDocument<PptxQualityModel, PptxQualityFact>;
|
|
106
116
|
}
|
|
107
117
|
export type GenerateFileOptions = GenerateOptions;
|
|
108
118
|
/**
|
|
109
119
|
* Presentation generator with custom components and full type safety
|
|
110
120
|
*/
|
|
121
|
+
/**
|
|
122
|
+
* Result of `prepareQuality` — the quality model of the expanded
|
|
123
|
+
* presentation, ready for `analyzePptxQuality(document, { prepared })`.
|
|
124
|
+
*/
|
|
125
|
+
export interface QualityPreparationResult {
|
|
126
|
+
prepared: PreparedDocument<PptxQualityModel, PptxQualityFact>;
|
|
127
|
+
warnings: PipelineWarning[];
|
|
128
|
+
}
|
|
111
129
|
export interface PresentationGenerator<TCustomComponents extends readonly CustomComponent<any, any, any>[] = readonly []> {
|
|
112
130
|
generate: (document: ExtendedPresentationComponent<TCustomComponents>, options?: GenerateOptions) => Promise<BufferGenerationResult>;
|
|
113
131
|
generateBuffer: (document: ExtendedPresentationComponent<TCustomComponents>, options?: GenerateOptions) => Promise<BufferGenerationResult>;
|
|
114
132
|
generateFile: (document: ExtendedPresentationComponent<TCustomComponents>, outputPath: string, options?: GenerateFileOptions) => Promise<FileGenerationResult>;
|
|
133
|
+
/**
|
|
134
|
+
* Prepare the presentation's quality model with registered components
|
|
135
|
+
* expanded as generation expands them: plugin output is analyzed, and its
|
|
136
|
+
* findings point at the invocation that emitted it. Nothing renders.
|
|
137
|
+
*/
|
|
138
|
+
prepareQuality: (document: ExtendedPresentationComponent<TCustomComponents>, options?: GenerateOptions) => Promise<QualityPreparationResult>;
|
|
115
139
|
getComponentNames: () => string[];
|
|
116
140
|
validate: (document: ExtendedPresentationComponent<TCustomComponents>) => ValidationResult;
|
|
117
141
|
generateSchema: () => TSchema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;;;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EACV,kBAAkB,EAClB,+BAA+B,EAC/B,wBAAwB,EACxB,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin/types.ts"],"names":[],"mappings":"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"}
|
package/dist/quality/facts.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ChartInfoDesign, type PlaceholderKind, type PreparedDocument, type QualityFact, type TableColumnInfoDesign, type TableInfoDesign } from '@json-to-office/quality';
|
|
2
|
-
import type { FontRuntimeOpts, ServicesConfig } from '@json-to-office/shared';
|
|
2
|
+
import type { ExpandedBlocks, FontRuntimeOpts, ServicesConfig } from '@json-to-office/shared';
|
|
3
3
|
import type { PipelineWarning, PptxThemeConfig, PresentationComponentDefinition, ProcessedPresentation } from '../types';
|
|
4
|
+
import { type GenerationThemeContext } from '../core/generationContext';
|
|
4
5
|
import { type BlockSourceMap } from '../blocks';
|
|
5
6
|
import type { BlockSlotRole } from '@json-to-office/shared';
|
|
6
7
|
export interface PptxCanvasFact extends QualityFact {
|
|
@@ -27,6 +28,11 @@ export interface PptxTextFact extends QualityFact {
|
|
|
27
28
|
nodePath: string;
|
|
28
29
|
text: string;
|
|
29
30
|
fontSizePt: number;
|
|
31
|
+
/**
|
|
32
|
+
* The size the text was set at when a bounded `fit` stepped it down to
|
|
33
|
+
* `fontSizePt`; absent when the fit pass left the size alone.
|
|
34
|
+
*/
|
|
35
|
+
fitFromPt?: number;
|
|
30
36
|
lineSpacingPt: number;
|
|
31
37
|
paraSpaceBeforePt: number;
|
|
32
38
|
paraSpaceAfterPt: number;
|
|
@@ -35,6 +41,8 @@ export interface PptxTextFact extends QualityFact {
|
|
|
35
41
|
boxYPt?: number;
|
|
36
42
|
boxWidthPt?: number;
|
|
37
43
|
boxHeightPt?: number;
|
|
44
|
+
/** The inset the text is laid out in, `[top, right, bottom, left]` points. */
|
|
45
|
+
insetsPt: readonly [number, number, number, number];
|
|
38
46
|
verticalAlign: 'top' | 'middle' | 'bottom';
|
|
39
47
|
/** Horizontal alignment: the prop, else the named style's, else left. */
|
|
40
48
|
align: 'left' | 'center' | 'right' | 'justify';
|
|
@@ -53,6 +61,13 @@ export interface PptxTextFact extends QualityFact {
|
|
|
53
61
|
* rather than a size they can patch.
|
|
54
62
|
*/
|
|
55
63
|
generated: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* The component at `path` is one whose props the author wrote: the node
|
|
66
|
+
* itself, or a component placed in a block slot. False where `path` is an
|
|
67
|
+
* invocation — a definition's literal text, a plugin's output — whose props
|
|
68
|
+
* are the block's or the plugin's, not the text's.
|
|
69
|
+
*/
|
|
70
|
+
ownsProps: boolean;
|
|
56
71
|
/** Resolved run colour, bare hex, when the document states one. */
|
|
57
72
|
colorHex?: string;
|
|
58
73
|
/**
|
|
@@ -117,6 +132,11 @@ export interface PptxImageFact extends QualityFact {
|
|
|
117
132
|
bleed: boolean;
|
|
118
133
|
drawnRatio?: number;
|
|
119
134
|
naturalRatio?: number;
|
|
135
|
+
/** `w` and `h` as the author wrote them, in inches, when both are numbers. */
|
|
136
|
+
authoredSizeIn?: {
|
|
137
|
+
w: number;
|
|
138
|
+
h: number;
|
|
139
|
+
};
|
|
120
140
|
}
|
|
121
141
|
/** A box drawn on a slide, in draw order — the input to the overlap rule. */
|
|
122
142
|
export interface PptxBoxFact extends QualityFact {
|
|
@@ -133,6 +153,15 @@ export interface PptxBoxFact extends QualityFact {
|
|
|
133
153
|
yPt: number;
|
|
134
154
|
widthPt: number;
|
|
135
155
|
heightPt: number;
|
|
156
|
+
/**
|
|
157
|
+
* The box's own `x` and `y` in inches, where the author placed it directly
|
|
158
|
+
* on the slide with plain numbers: what a repair can move. A box inside a
|
|
159
|
+
* group sits in the group's frame, and a block's box in its definition's.
|
|
160
|
+
*/
|
|
161
|
+
authoredPositionIn?: {
|
|
162
|
+
x: number;
|
|
163
|
+
y: number;
|
|
164
|
+
};
|
|
136
165
|
}
|
|
137
166
|
/** The resolved theme, as the brand rules see it. */
|
|
138
167
|
export interface PptxThemeFact extends QualityFact {
|
|
@@ -224,7 +253,25 @@ export interface PptxChromeSlotFact extends QualityFact {
|
|
|
224
253
|
estimatedLines?: number;
|
|
225
254
|
fontSizePt?: number;
|
|
226
255
|
}
|
|
227
|
-
|
|
256
|
+
/**
|
|
257
|
+
* The running chrome one slide carries: whether a block builds it, and
|
|
258
|
+
* whether it shows a page number or a footer line. A profile reads it to
|
|
259
|
+
* require a page number on every slide after the cover.
|
|
260
|
+
*/
|
|
261
|
+
export interface PptxSlideChromeFact extends QualityFact {
|
|
262
|
+
kind: 'pptx/slide-chrome';
|
|
263
|
+
/** The slide's place in the deck, 0-based, disabled slides left out. */
|
|
264
|
+
index: number;
|
|
265
|
+
/** A hidden slide is never shown, so nothing is asked of it. */
|
|
266
|
+
hidden?: boolean;
|
|
267
|
+
/** Block invocations placed directly on the slide or in its groups. */
|
|
268
|
+
blocks: number;
|
|
269
|
+
/** A text on the slide carries the `{PAGE_NUMBER}` field. */
|
|
270
|
+
pageNumber: boolean;
|
|
271
|
+
/** A text in the theme's footer type, or a filled `footer` slot. */
|
|
272
|
+
footer: boolean;
|
|
273
|
+
}
|
|
274
|
+
export type PptxQualityFact = PptxCanvasFact | PptxBlockSlotFact | PptxChromeSlotFact | PptxSlideChromeFact | PptxTextFact | PptxRichTextFact | PptxSlideFact | PptxPlaceholderFact | PptxBoxFact | PptxThemeFact | PptxBulletsFact | PptxImageFact | PptxColorFact | PptxFontFact | PptxChartFact | PptxTableFact;
|
|
228
275
|
export interface PptxQualityModel {
|
|
229
276
|
authored: PresentationComponentDefinition;
|
|
230
277
|
/** The document after the export-mode pre-pass and block expansion. */
|
|
@@ -247,6 +294,16 @@ export interface PreparePptxQualityOptions {
|
|
|
247
294
|
services?: ServicesConfig;
|
|
248
295
|
warnings?: PipelineWarning[];
|
|
249
296
|
renderer?: string;
|
|
297
|
+
/** The theme context a plugin host already resolved for `expanded`. */
|
|
298
|
+
context?: GenerationThemeContext;
|
|
299
|
+
/**
|
|
300
|
+
* The expansion a plugin host already ran over `context.document`: blocks
|
|
301
|
+
* and registered code components lowered together, with the source map
|
|
302
|
+
* back to what the author wrote. Given, preparation reads it instead of
|
|
303
|
+
* expanding blocks alone, so a fact about a plugin's output reports at the
|
|
304
|
+
* invocation that emitted it.
|
|
305
|
+
*/
|
|
306
|
+
expanded?: ExpandedBlocks<PresentationComponentDefinition>;
|
|
250
307
|
}
|
|
251
308
|
export declare function preparePptxQualityDocument(document: PresentationComponentDefinition, options?: PreparePptxQualityOptions): PreparedDocument<PptxQualityModel, PptxQualityFact>;
|
|
252
309
|
//# sourceMappingURL=facts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facts.d.ts","sourceRoot":"","sources":["../../src/quality/facts.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAErB,KAAK,WAAW,EAEhB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"facts.d.ts","sourceRoot":"","sources":["../../src/quality/facts.ts"],"names":[],"mappings":"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"}
|
package/dist/quality/rules.d.ts
CHANGED
|
@@ -46,6 +46,15 @@ export declare const pptxSlotBudgetRule: QualityRule<PptxQualityModel, PptxQuali
|
|
|
46
46
|
* styles a source line, selecting the consulting profile requires one.
|
|
47
47
|
*/
|
|
48
48
|
export declare const pptxRequiredChromeRule: QualityRule<PptxQualityModel, PptxQualityFact>;
|
|
49
|
+
/**
|
|
50
|
+
* A deck's running chrome where the profile expects it: every slide from
|
|
51
|
+
* `fromSlide` on that a block builds must carry the parts in `required` — a
|
|
52
|
+
* page number, a footer line. The first slide is exempt by default, so a
|
|
53
|
+
* cover stays clean; a slide drawn by coordinates is not judged, its chrome
|
|
54
|
+
* is its author's to place; a hidden slide is never shown. Off by default:
|
|
55
|
+
* the theme only paints a footer, the archetype asks for one.
|
|
56
|
+
*/
|
|
57
|
+
export declare const pptxSlideFooterRule: QualityRule<PptxQualityModel, PptxQualityFact>;
|
|
49
58
|
/**
|
|
50
59
|
* An action title that wraps past the lines a profile allows, measured in
|
|
51
60
|
* the box its definition drew and with the width model the fit pass uses.
|
|
@@ -79,14 +88,25 @@ export declare const pptxSizeCountRule: QualityRule<PptxQualityModel, PptxQualit
|
|
|
79
88
|
* repaired to it. A style that is consistently overridden is not drift. Off
|
|
80
89
|
* until a profile turns it on, for the same reason as `pptx/type-scale`,
|
|
81
90
|
* which yields to this rule on any pointer it reports.
|
|
91
|
+
*
|
|
92
|
+
* Text with no `style` has no role here, unlike DOCX's `normal`. Measured
|
|
93
|
+
* (#452): as the deck default it reports nothing on the verification decks
|
|
94
|
+
* the house blocks build, and nearly every hand-sized figure and label on
|
|
95
|
+
* the stock decks (115) and the 2.0.0 baselines (about 1,980) — a size
|
|
96
|
+
* choice per box, which type-scale and size-count already judge.
|
|
82
97
|
*/
|
|
83
98
|
export declare const pptxRoleDriftRule: QualityRule<PptxQualityModel, PptxQualityFact>;
|
|
84
99
|
/**
|
|
85
|
-
* Titles of one kind that do not
|
|
86
|
-
* kind
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
100
|
+
* Titles of one kind that do not land where the deck's other titles of that
|
|
101
|
+
* kind land. Judged on the laid-out title — its estimated first baseline and
|
|
102
|
+
* the edge its alignment holds, at the size the fit pass left it, inside its
|
|
103
|
+
* insets, under its vertical anchor — so two boxes drawn differently that set
|
|
104
|
+
* their text on one line agree, and two identical boxes whose titles anchor
|
|
105
|
+
* to the foot at different lengths do not. Titles compare across blocks and
|
|
106
|
+
* with titles placed by hand; a title a couple of lines or more away is a
|
|
107
|
+
* placement of its own. A theme says nothing about where a title sits, so
|
|
108
|
+
* the deck's prevailing placement is the expected value, and the profile is
|
|
109
|
+
* what asks titles to agree. Off until one turns it on.
|
|
90
110
|
*/
|
|
91
111
|
export declare const pptxTitleDriftRule: QualityRule<PptxQualityModel, PptxQualityFact>;
|
|
92
112
|
/**
|
|
@@ -155,13 +175,18 @@ export declare const PPTX_QUALITY_PROFILES: {
|
|
|
155
175
|
readonly 'consulting-deck': {
|
|
156
176
|
readonly id: "consulting-deck";
|
|
157
177
|
readonly formats: readonly ["pptx"];
|
|
158
|
-
readonly description: "Consulting readout: every content slide leads with a two-line action title, every chart carries a takeaway and a source, content stays inside the theme’s safe area, a box holds at most five bullets of at most twelve words, every figure carries alt text, every size is on the theme scale with at most nine in the deck and six on a slide, and titles of one kind hold one line.";
|
|
178
|
+
readonly description: "Consulting readout: every content slide leads with a two-line action title, every chart carries a takeaway and a source, every slide a block builds after the cover carries its page number, content stays inside the theme’s safe area, a box holds at most five bullets of at most twelve words, every figure carries alt text, every size is on the theme scale with at most nine in the deck and six on a slide, and titles of one kind hold one line.";
|
|
159
179
|
readonly rules: {
|
|
160
180
|
readonly 'pptx/required-chrome': {
|
|
161
181
|
readonly parameters: {
|
|
162
182
|
readonly required: readonly ["takeaway", "source"];
|
|
163
183
|
};
|
|
164
184
|
};
|
|
185
|
+
readonly 'pptx/slide-footer': {
|
|
186
|
+
readonly parameters: {
|
|
187
|
+
readonly required: readonly ["pageNumber"];
|
|
188
|
+
};
|
|
189
|
+
};
|
|
165
190
|
readonly 'pptx/action-title': {
|
|
166
191
|
readonly parameters: {
|
|
167
192
|
readonly maxLines: 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/quality/rules.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/quality/rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,18 @@
|
|
|
2
2
|
* PPTX Theme Defaults
|
|
3
3
|
*/
|
|
4
4
|
import type { PptxThemeConfig } from '../types';
|
|
5
|
+
/**
|
|
6
|
+
* The theme a deck gets when it names none: the house style (#331). The
|
|
7
|
+
* stock Office look that used to answer to `default` is gone — it is the look
|
|
8
|
+
* the design program replaces — so the name no longer resolves to a theme: a deck that
|
|
9
|
+
* names it, like one that names anything unregistered, renders on
|
|
10
|
+
* `consulting`.
|
|
11
|
+
*/
|
|
5
12
|
export declare const DEFAULT_PPTX_THEME: PptxThemeConfig;
|
|
6
13
|
export declare function getPptxTheme(name: string): PptxThemeConfig;
|
|
7
14
|
/**
|
|
8
15
|
* Whether `name` is a known built-in theme. `getPptxTheme` never misses (it
|
|
9
|
-
* falls back to the
|
|
16
|
+
* falls back to the house theme), so callers that need to distinguish "a
|
|
10
17
|
* real built-in" from "an unknown name" must check here first.
|
|
11
18
|
*/
|
|
12
19
|
export declare function hasPptxTheme(name: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/themes/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,UAAU,CAAC;AAoCtE,eAAO,MAAM,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/themes/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,UAAU,CAAC;AAoCtE;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,eAAuC,CAAC;AAoEzE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAc,CAAC"}
|