@json-to-office/shared-docx 0.7.0 → 0.9.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-SK6LSPFN.js → chunk-25SAKHVN.js} +2 -2
- package/dist/{chunk-VP3X6DBP.js → chunk-7GGTZ4TA.js} +2 -1
- package/dist/chunk-7GGTZ4TA.js.map +1 -0
- package/dist/{chunk-22VYYAC2.js → chunk-7LRSVYGN.js} +7 -5
- package/dist/{chunk-22VYYAC2.js.map → chunk-7LRSVYGN.js.map} +1 -1
- package/dist/{chunk-OE5JFL7S.js → chunk-ANU2V2BM.js} +9 -7
- package/dist/{chunk-OE5JFL7S.js.map → chunk-ANU2V2BM.js.map} +1 -1
- package/dist/chunk-BFJJ5HYD.js +645 -0
- package/dist/chunk-BFJJ5HYD.js.map +1 -0
- package/dist/{chunk-V4L4S6ZS.js → chunk-CIBMJ7QA.js} +2 -2
- package/dist/{chunk-JOXJOD2C.js → chunk-H56RLQOF.js} +10 -2
- package/dist/chunk-H56RLQOF.js.map +1 -0
- package/dist/{chunk-ABVYMFDA.js → chunk-IHZIO72A.js} +2 -2
- package/dist/{chunk-6SLVQATI.js → chunk-VBZC5WT6.js} +2 -2
- package/dist/{chunk-L5TZFC47.js → chunk-YK2UUG65.js} +5 -43
- package/dist/chunk-YK2UUG65.js.map +1 -0
- package/dist/chunk-YUV5CJMG.js +1346 -0
- package/dist/chunk-YUV5CJMG.js.map +1 -0
- package/dist/{chunk-YQECZGRR.js → chunk-ZQNAWKEI.js} +2 -2
- package/dist/index.d.ts +224 -1
- package/dist/index.js +18 -16
- package/dist/index.js.map +1 -1
- package/dist/schemas/api.js +5 -4
- package/dist/schemas/component-defaults.d.ts +452 -0
- package/dist/schemas/component-defaults.js +24 -0
- package/dist/schemas/component-defaults.js.map +1 -0
- package/dist/schemas/component-registry.js +3 -2
- package/dist/schemas/components.d.ts +442 -0
- package/dist/schemas/components.js +14 -12
- package/dist/schemas/custom-components.d.ts +3 -0
- package/dist/schemas/custom-components.js +1 -1
- package/dist/schemas/document.js +7 -6
- package/dist/schemas/export.js +4 -3
- package/dist/schemas/font.d.ts +2 -0
- package/dist/schemas/font.js +1 -1
- package/dist/schemas/generator.js +4 -3
- package/dist/schemas/theme.d.ts +45 -444
- package/dist/schemas/theme.js +13 -13
- package/dist/validation/unified/index.d.ts +228 -0
- package/dist/validation/unified/index.js +8 -7
- package/package.json +2 -2
- package/dist/chunk-JOXJOD2C.js.map +0 -1
- package/dist/chunk-L5TZFC47.js.map +0 -1
- package/dist/chunk-PN6JT3KF.js +0 -1926
- package/dist/chunk-PN6JT3KF.js.map +0 -1
- package/dist/chunk-VP3X6DBP.js.map +0 -1
- /package/dist/{chunk-SK6LSPFN.js.map → chunk-25SAKHVN.js.map} +0 -0
- /package/dist/{chunk-V4L4S6ZS.js.map → chunk-CIBMJ7QA.js.map} +0 -0
- /package/dist/{chunk-ABVYMFDA.js.map → chunk-IHZIO72A.js.map} +0 -0
- /package/dist/{chunk-6SLVQATI.js.map → chunk-VBZC5WT6.js.map} +0 -0
- /package/dist/{chunk-YQECZGRR.js.map → chunk-ZQNAWKEI.js.map} +0 -0
package/dist/schemas/theme.js
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
|
-
ColumnsComponentDefaultsSchema,
|
|
3
|
-
ComponentDefaultsSchema,
|
|
4
2
|
DocumentMarginsSchema,
|
|
5
3
|
FontsSchema,
|
|
6
|
-
HeadingComponentDefaultsSchema,
|
|
7
4
|
HeadingDefinitionSchema,
|
|
8
|
-
ImageComponentDefaultsSchema,
|
|
9
|
-
ListComponentDefaultsSchema,
|
|
10
5
|
PageDimensionsSchema,
|
|
11
6
|
PageSchema,
|
|
12
|
-
ParagraphComponentDefaultsSchema,
|
|
13
|
-
SectionComponentDefaultsSchema,
|
|
14
|
-
StatisticComponentDefaultsSchema,
|
|
15
7
|
StyleDefinitionsSchema,
|
|
16
|
-
TableComponentDefaultsSchema,
|
|
17
8
|
ThemeConfigSchema,
|
|
18
9
|
isValidThemeConfig
|
|
19
|
-
} from "../chunk-
|
|
20
|
-
import
|
|
21
|
-
|
|
22
|
-
|
|
10
|
+
} from "../chunk-YK2UUG65.js";
|
|
11
|
+
import {
|
|
12
|
+
ColumnsComponentDefaultsSchema,
|
|
13
|
+
ComponentDefaultsSchema,
|
|
14
|
+
HeadingComponentDefaultsSchema,
|
|
15
|
+
ImageComponentDefaultsSchema,
|
|
16
|
+
ListComponentDefaultsSchema,
|
|
17
|
+
ParagraphComponentDefaultsSchema,
|
|
18
|
+
SectionComponentDefaultsSchema,
|
|
19
|
+
StatisticComponentDefaultsSchema,
|
|
20
|
+
TableComponentDefaultsSchema
|
|
21
|
+
} from "../chunk-YUV5CJMG.js";
|
|
22
|
+
import "../chunk-H56RLQOF.js";
|
|
23
23
|
export {
|
|
24
24
|
ColumnsComponentDefaultsSchema,
|
|
25
25
|
ComponentDefaultsSchema,
|
|
@@ -9,6 +9,7 @@ import { ThemeConfigSchema } from '../../schemas/theme.js';
|
|
|
9
9
|
import { ColumnsPropsSchema, HeadingPropsSchema, ImagePropsSchema, ListPropsSchema, ParagraphPropsSchema, ReportPropsSchema, SectionPropsSchema, StatisticPropsSchema, TablePropsSchema } from '../../schemas/components.js';
|
|
10
10
|
import { CustomComponentDefinitionSchema } from '../../schemas/custom-components.js';
|
|
11
11
|
import '../../schemas/font.js';
|
|
12
|
+
import '../../schemas/component-defaults.js';
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* Theme validation implementation
|
|
@@ -111,6 +112,230 @@ declare function getValidationSummary(result: ValidationResult): string;
|
|
|
111
112
|
declare const COMPONENT_SCHEMA_MAP: {
|
|
112
113
|
readonly report: _sinclair_typebox.TObject<{
|
|
113
114
|
theme: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
115
|
+
componentDefaults: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
116
|
+
heading: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
117
|
+
text: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
118
|
+
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>]>>;
|
|
119
|
+
font: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
120
|
+
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
121
|
+
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
122
|
+
bold: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
123
|
+
fontWeight: _sinclair_typebox.TOptional<_sinclair_typebox.TInteger>;
|
|
124
|
+
italic: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
125
|
+
underline: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
126
|
+
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
127
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"single">, _sinclair_typebox.TLiteral<"atLeast">, _sinclair_typebox.TLiteral<"exactly">, _sinclair_typebox.TLiteral<"double">, _sinclair_typebox.TLiteral<"multiple">]>;
|
|
128
|
+
value: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
129
|
+
}>>;
|
|
130
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
131
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
132
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
133
|
+
}>>;
|
|
134
|
+
characterSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
135
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"condensed">, _sinclair_typebox.TLiteral<"expanded">]>;
|
|
136
|
+
value: _sinclair_typebox.TNumber;
|
|
137
|
+
}>>;
|
|
138
|
+
family: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
139
|
+
}>>;
|
|
140
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"justify">]>>;
|
|
141
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
142
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
143
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
144
|
+
}>>;
|
|
145
|
+
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TObject<{
|
|
146
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"single">, _sinclair_typebox.TLiteral<"atLeast">, _sinclair_typebox.TLiteral<"exactly">, _sinclair_typebox.TLiteral<"double">, _sinclair_typebox.TLiteral<"multiple">]>;
|
|
147
|
+
value: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
148
|
+
}>]>>;
|
|
149
|
+
pageBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
150
|
+
columnBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
151
|
+
numbering: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
152
|
+
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
153
|
+
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
154
|
+
}>>;
|
|
155
|
+
paragraph: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
156
|
+
text: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
157
|
+
font: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
158
|
+
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
159
|
+
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
160
|
+
bold: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
161
|
+
fontWeight: _sinclair_typebox.TOptional<_sinclair_typebox.TInteger>;
|
|
162
|
+
italic: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
163
|
+
underline: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
164
|
+
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
165
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"single">, _sinclair_typebox.TLiteral<"atLeast">, _sinclair_typebox.TLiteral<"exactly">, _sinclair_typebox.TLiteral<"double">, _sinclair_typebox.TLiteral<"multiple">]>;
|
|
166
|
+
value: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
167
|
+
}>>;
|
|
168
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
169
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
170
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
171
|
+
}>>;
|
|
172
|
+
characterSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
173
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"condensed">, _sinclair_typebox.TLiteral<"expanded">]>;
|
|
174
|
+
value: _sinclair_typebox.TNumber;
|
|
175
|
+
}>>;
|
|
176
|
+
family: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
177
|
+
}>>;
|
|
178
|
+
themeStyle: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
179
|
+
boldColor: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
180
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
181
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
182
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
183
|
+
}>>;
|
|
184
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"justify">]>>;
|
|
185
|
+
pageBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
186
|
+
columnBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
187
|
+
floating: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
188
|
+
horizontalPosition: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
189
|
+
relative: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"margin">, _sinclair_typebox.TLiteral<"page">, _sinclair_typebox.TLiteral<"text">]>>;
|
|
190
|
+
align: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"inside">, _sinclair_typebox.TLiteral<"outside">]>>;
|
|
191
|
+
offset: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
192
|
+
}>>;
|
|
193
|
+
verticalPosition: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
194
|
+
relative: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"margin">, _sinclair_typebox.TLiteral<"page">, _sinclair_typebox.TLiteral<"text">]>>;
|
|
195
|
+
align: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"top">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"bottom">, _sinclair_typebox.TLiteral<"inside">, _sinclair_typebox.TLiteral<"outside">]>>;
|
|
196
|
+
offset: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
197
|
+
}>>;
|
|
198
|
+
wrap: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
199
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"around">, _sinclair_typebox.TLiteral<"none">, _sinclair_typebox.TLiteral<"notBeside">, _sinclair_typebox.TLiteral<"through">, _sinclair_typebox.TLiteral<"tight">, _sinclair_typebox.TLiteral<"auto">]>;
|
|
200
|
+
}>>;
|
|
201
|
+
lockAnchor: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
202
|
+
width: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
203
|
+
height: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
204
|
+
}>>;
|
|
205
|
+
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
206
|
+
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
207
|
+
id: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
208
|
+
}>>;
|
|
209
|
+
image: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
210
|
+
path: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
211
|
+
base64: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
212
|
+
alt: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
213
|
+
width: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
214
|
+
height: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
215
|
+
widthRelativeTo: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"content">, _sinclair_typebox.TLiteral<"page">]>>;
|
|
216
|
+
heightRelativeTo: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"content">, _sinclair_typebox.TLiteral<"page">]>>;
|
|
217
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">]>>;
|
|
218
|
+
caption: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
219
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
220
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
221
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
222
|
+
}>>;
|
|
223
|
+
floating: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
224
|
+
horizontalPosition: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
225
|
+
relative: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"character">, _sinclair_typebox.TLiteral<"column">, _sinclair_typebox.TLiteral<"margin">, _sinclair_typebox.TLiteral<"page">, _sinclair_typebox.TLiteral<"text">]>>;
|
|
226
|
+
align: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"inside">, _sinclair_typebox.TLiteral<"outside">]>>;
|
|
227
|
+
offset: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
228
|
+
}>>;
|
|
229
|
+
verticalPosition: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
230
|
+
relative: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"margin">, _sinclair_typebox.TLiteral<"page">, _sinclair_typebox.TLiteral<"paragraph">, _sinclair_typebox.TLiteral<"line">, _sinclair_typebox.TLiteral<"text">]>>;
|
|
231
|
+
align: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"top">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"bottom">, _sinclair_typebox.TLiteral<"inside">, _sinclair_typebox.TLiteral<"outside">]>>;
|
|
232
|
+
offset: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
233
|
+
}>>;
|
|
234
|
+
wrap: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
235
|
+
type: _sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"none">, _sinclair_typebox.TLiteral<"square">, _sinclair_typebox.TLiteral<"topAndBottom">, _sinclair_typebox.TLiteral<"around">, _sinclair_typebox.TLiteral<"tight">, _sinclair_typebox.TLiteral<"through">]>;
|
|
236
|
+
side: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"bothSides">, _sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"largest">]>>;
|
|
237
|
+
margins: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
238
|
+
top: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
239
|
+
bottom: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
240
|
+
left: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
241
|
+
right: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
242
|
+
}>>;
|
|
243
|
+
}>>;
|
|
244
|
+
allowOverlap: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
245
|
+
behindDocument: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
246
|
+
lockAnchor: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
247
|
+
layoutInCell: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
248
|
+
zIndex: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
249
|
+
rotation: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
250
|
+
visibility: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"hidden">, _sinclair_typebox.TLiteral<"inherit">]>>;
|
|
251
|
+
}>>;
|
|
252
|
+
keepNext: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
253
|
+
keepLines: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
254
|
+
}>>;
|
|
255
|
+
statistic: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
256
|
+
number: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
257
|
+
description: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
258
|
+
unit: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
259
|
+
format: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
260
|
+
trend: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"up">, _sinclair_typebox.TLiteral<"down">, _sinclair_typebox.TLiteral<"neutral">]>>;
|
|
261
|
+
trendValue: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TString, _sinclair_typebox.TNumber]>>;
|
|
262
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">]>>;
|
|
263
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
264
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
265
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
266
|
+
}>>;
|
|
267
|
+
size: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"small">, _sinclair_typebox.TLiteral<"medium">, _sinclair_typebox.TLiteral<"large">]>>;
|
|
268
|
+
}>>;
|
|
269
|
+
table: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{}>>;
|
|
270
|
+
section: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
271
|
+
title: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
272
|
+
level: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
273
|
+
header: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TArray<TSchema | _sinclair_typebox.TAny>, _sinclair_typebox.TLiteral<"linkToPrevious">]>>;
|
|
274
|
+
footer: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TArray<TSchema | _sinclair_typebox.TAny>, _sinclair_typebox.TLiteral<"linkToPrevious">]>>;
|
|
275
|
+
pageBreak: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
276
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
277
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
278
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
279
|
+
}>>;
|
|
280
|
+
page: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
281
|
+
size: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"A4">, _sinclair_typebox.TLiteral<"A3">, _sinclair_typebox.TLiteral<"LETTER">, _sinclair_typebox.TLiteral<"LEGAL">, _sinclair_typebox.TObject<{
|
|
282
|
+
width: _sinclair_typebox.TNumber;
|
|
283
|
+
height: _sinclair_typebox.TNumber;
|
|
284
|
+
}>]>>;
|
|
285
|
+
margins: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
286
|
+
top: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
287
|
+
bottom: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
288
|
+
left: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
289
|
+
right: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
290
|
+
header: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
291
|
+
footer: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
292
|
+
gutter: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
293
|
+
}>>;
|
|
294
|
+
}>>;
|
|
295
|
+
}>>;
|
|
296
|
+
columns: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
297
|
+
columns: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
298
|
+
width: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString, _sinclair_typebox.TLiteral<"auto">]>>;
|
|
299
|
+
gap: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
300
|
+
}>>]>>;
|
|
301
|
+
gap: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TString]>>;
|
|
302
|
+
}>>;
|
|
303
|
+
list: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
304
|
+
items: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TUnion<[_sinclair_typebox.TString, _sinclair_typebox.TObject<{
|
|
305
|
+
text: _sinclair_typebox.TString;
|
|
306
|
+
level: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
307
|
+
}>]>>>;
|
|
308
|
+
reference: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
309
|
+
levels: _sinclair_typebox.TOptional<_sinclair_typebox.TArray<_sinclair_typebox.TObject<{
|
|
310
|
+
level: _sinclair_typebox.TNumber;
|
|
311
|
+
format: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"decimal">, _sinclair_typebox.TLiteral<"upperRoman">, _sinclair_typebox.TLiteral<"lowerRoman">, _sinclair_typebox.TLiteral<"upperLetter">, _sinclair_typebox.TLiteral<"lowerLetter">, _sinclair_typebox.TLiteral<"bullet">, _sinclair_typebox.TLiteral<"ordinal">, _sinclair_typebox.TLiteral<"cardinalText">, _sinclair_typebox.TLiteral<"ordinalText">, _sinclair_typebox.TLiteral<"hex">, _sinclair_typebox.TLiteral<"chicago">, _sinclair_typebox.TLiteral<"ideographDigital">, _sinclair_typebox.TLiteral<"japaneseCounting">, _sinclair_typebox.TLiteral<"aiueo">, _sinclair_typebox.TLiteral<"iroha">, _sinclair_typebox.TLiteral<"decimalFullWidth">, _sinclair_typebox.TLiteral<"decimalHalfWidth">, _sinclair_typebox.TLiteral<"japaneseLegal">, _sinclair_typebox.TLiteral<"japaneseDigitalTenThousand">, _sinclair_typebox.TLiteral<"decimalEnclosedCircle">, _sinclair_typebox.TLiteral<"decimalFullWidth2">, _sinclair_typebox.TLiteral<"aiueoFullWidth">, _sinclair_typebox.TLiteral<"irohaFullWidth">, _sinclair_typebox.TLiteral<"decimalZero">, _sinclair_typebox.TLiteral<"ganada">, _sinclair_typebox.TLiteral<"chosung">, _sinclair_typebox.TLiteral<"decimalEnclosedFullstop">, _sinclair_typebox.TLiteral<"decimalEnclosedParen">, _sinclair_typebox.TLiteral<"decimalEnclosedCircleChinese">, _sinclair_typebox.TLiteral<"ideographEnclosedCircle">, _sinclair_typebox.TLiteral<"ideographTraditional">, _sinclair_typebox.TLiteral<"ideographZodiac">, _sinclair_typebox.TLiteral<"ideographZodiacTraditional">, _sinclair_typebox.TLiteral<"taiwaneseCounting">, _sinclair_typebox.TLiteral<"ideographLegalTraditional">, _sinclair_typebox.TLiteral<"taiwaneseCountingThousand">, _sinclair_typebox.TLiteral<"taiwaneseDigital">, _sinclair_typebox.TLiteral<"chineseCounting">, _sinclair_typebox.TLiteral<"chineseLegalSimplified">, _sinclair_typebox.TLiteral<"chineseCountingThousand">, _sinclair_typebox.TLiteral<"koreanDigital">, _sinclair_typebox.TLiteral<"koreanCounting">, _sinclair_typebox.TLiteral<"koreanLegal">, _sinclair_typebox.TLiteral<"koreanDigital2">, _sinclair_typebox.TLiteral<"vietnameseCounting">, _sinclair_typebox.TLiteral<"russianLower">, _sinclair_typebox.TLiteral<"russianUpper">, _sinclair_typebox.TLiteral<"none">, _sinclair_typebox.TLiteral<"numberInDash">, _sinclair_typebox.TLiteral<"hebrew1">, _sinclair_typebox.TLiteral<"hebrew2">, _sinclair_typebox.TLiteral<"arabicAlpha">, _sinclair_typebox.TLiteral<"arabicAbjad">, _sinclair_typebox.TLiteral<"hindiVowels">, _sinclair_typebox.TLiteral<"hindiConsonants">, _sinclair_typebox.TLiteral<"hindiNumbers">, _sinclair_typebox.TLiteral<"hindiCounting">, _sinclair_typebox.TLiteral<"thaiLetters">, _sinclair_typebox.TLiteral<"thaiNumbers">, _sinclair_typebox.TLiteral<"thaiCounting">]>>;
|
|
312
|
+
/**
|
|
313
|
+
* Validate a custom component configuration with a custom schema.
|
|
314
|
+
* Delegates to @json-to-office/shared/plugin to avoid duplication.
|
|
315
|
+
*/
|
|
316
|
+
text: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
317
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"start">, _sinclair_typebox.TLiteral<"end">, _sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"center">]>>;
|
|
318
|
+
indent: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
319
|
+
left: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
320
|
+
hanging: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
321
|
+
}>>;
|
|
322
|
+
start: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
323
|
+
}>>>;
|
|
324
|
+
format: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"decimal">, _sinclair_typebox.TLiteral<"upperRoman">, _sinclair_typebox.TLiteral<"lowerRoman">, _sinclair_typebox.TLiteral<"upperLetter">, _sinclair_typebox.TLiteral<"lowerLetter">, _sinclair_typebox.TLiteral<"bullet">, _sinclair_typebox.TLiteral<"ordinal">, _sinclair_typebox.TLiteral<"cardinalText">, _sinclair_typebox.TLiteral<"ordinalText">, _sinclair_typebox.TLiteral<"hex">, _sinclair_typebox.TLiteral<"chicago">, _sinclair_typebox.TLiteral<"ideographDigital">, _sinclair_typebox.TLiteral<"japaneseCounting">, _sinclair_typebox.TLiteral<"aiueo">, _sinclair_typebox.TLiteral<"iroha">, _sinclair_typebox.TLiteral<"decimalFullWidth">, _sinclair_typebox.TLiteral<"decimalHalfWidth">, _sinclair_typebox.TLiteral<"japaneseLegal">, _sinclair_typebox.TLiteral<"japaneseDigitalTenThousand">, _sinclair_typebox.TLiteral<"decimalEnclosedCircle">, _sinclair_typebox.TLiteral<"decimalFullWidth2">, _sinclair_typebox.TLiteral<"aiueoFullWidth">, _sinclair_typebox.TLiteral<"irohaFullWidth">, _sinclair_typebox.TLiteral<"decimalZero">, _sinclair_typebox.TLiteral<"ganada">, _sinclair_typebox.TLiteral<"chosung">, _sinclair_typebox.TLiteral<"decimalEnclosedFullstop">, _sinclair_typebox.TLiteral<"decimalEnclosedParen">, _sinclair_typebox.TLiteral<"decimalEnclosedCircleChinese">, _sinclair_typebox.TLiteral<"ideographEnclosedCircle">, _sinclair_typebox.TLiteral<"ideographTraditional">, _sinclair_typebox.TLiteral<"ideographZodiac">, _sinclair_typebox.TLiteral<"ideographZodiacTraditional">, _sinclair_typebox.TLiteral<"taiwaneseCounting">, _sinclair_typebox.TLiteral<"ideographLegalTraditional">, _sinclair_typebox.TLiteral<"taiwaneseCountingThousand">, _sinclair_typebox.TLiteral<"taiwaneseDigital">, _sinclair_typebox.TLiteral<"chineseCounting">, _sinclair_typebox.TLiteral<"chineseLegalSimplified">, _sinclair_typebox.TLiteral<"chineseCountingThousand">, _sinclair_typebox.TLiteral<"koreanDigital">, _sinclair_typebox.TLiteral<"koreanCounting">, _sinclair_typebox.TLiteral<"koreanLegal">, _sinclair_typebox.TLiteral<"koreanDigital2">, _sinclair_typebox.TLiteral<"vietnameseCounting">, _sinclair_typebox.TLiteral<"russianLower">, _sinclair_typebox.TLiteral<"russianUpper">, _sinclair_typebox.TLiteral<"none">, _sinclair_typebox.TLiteral<"numberInDash">, _sinclair_typebox.TLiteral<"hebrew1">, _sinclair_typebox.TLiteral<"hebrew2">, _sinclair_typebox.TLiteral<"arabicAlpha">, _sinclair_typebox.TLiteral<"arabicAbjad">, _sinclair_typebox.TLiteral<"hindiVowels">, _sinclair_typebox.TLiteral<"hindiConsonants">, _sinclair_typebox.TLiteral<"hindiNumbers">, _sinclair_typebox.TLiteral<"hindiCounting">, _sinclair_typebox.TLiteral<"thaiLetters">, _sinclair_typebox.TLiteral<"thaiNumbers">, _sinclair_typebox.TLiteral<"thaiCounting">]>, _sinclair_typebox.TLiteral<"numbered">, _sinclair_typebox.TLiteral<"none">]>>;
|
|
325
|
+
bullet: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
326
|
+
start: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
327
|
+
spacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
328
|
+
before: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
329
|
+
after: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
330
|
+
item: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
331
|
+
}>>;
|
|
332
|
+
alignment: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TLiteral<"left">, _sinclair_typebox.TLiteral<"center">, _sinclair_typebox.TLiteral<"right">, _sinclair_typebox.TLiteral<"justify">]>>;
|
|
333
|
+
indent: _sinclair_typebox.TOptional<_sinclair_typebox.TUnion<[_sinclair_typebox.TNumber, _sinclair_typebox.TObject<{
|
|
334
|
+
left: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
335
|
+
hanging: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
336
|
+
}>]>>;
|
|
337
|
+
}>>;
|
|
338
|
+
}>>;
|
|
114
339
|
metadata: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
115
340
|
title: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
116
341
|
subtitle: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
@@ -157,6 +382,7 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
157
382
|
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
158
383
|
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
159
384
|
bold: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
385
|
+
fontWeight: _sinclair_typebox.TOptional<_sinclair_typebox.TInteger>;
|
|
160
386
|
italic: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
161
387
|
underline: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
162
388
|
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
@@ -194,6 +420,7 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
194
420
|
size: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
195
421
|
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
196
422
|
bold: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
423
|
+
fontWeight: _sinclair_typebox.TOptional<_sinclair_typebox.TInteger>;
|
|
197
424
|
italic: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
198
425
|
underline: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
199
426
|
lineSpacing: _sinclair_typebox.TOptional<_sinclair_typebox.TObject<{
|
|
@@ -353,6 +580,7 @@ declare const COMPONENT_SCHEMA_MAP: {
|
|
|
353
580
|
fontSize: _sinclair_typebox.TOptional<_sinclair_typebox.TNumber>;
|
|
354
581
|
fontFamily: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
355
582
|
bold: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
583
|
+
fontWeight: _sinclair_typebox.TOptional<_sinclair_typebox.TInteger>;
|
|
356
584
|
italic: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
357
585
|
underline: _sinclair_typebox.TOptional<_sinclair_typebox.TBoolean>;
|
|
358
586
|
color: _sinclair_typebox.TOptional<_sinclair_typebox.TString>;
|
|
@@ -48,8 +48,8 @@ import {
|
|
|
48
48
|
validateTheme,
|
|
49
49
|
validateThemeJson,
|
|
50
50
|
validateThemeWithEnhancement
|
|
51
|
-
} from "../../chunk-
|
|
52
|
-
import "../../chunk-
|
|
51
|
+
} from "../../chunk-ANU2V2BM.js";
|
|
52
|
+
import "../../chunk-YK2UUG65.js";
|
|
53
53
|
import {
|
|
54
54
|
comprehensiveValidateDocument,
|
|
55
55
|
createDocumentValidator,
|
|
@@ -71,11 +71,12 @@ import {
|
|
|
71
71
|
validateJsonComponent,
|
|
72
72
|
validateJsonDocument,
|
|
73
73
|
validateWithEnhancement
|
|
74
|
-
} from "../../chunk-
|
|
75
|
-
import "../../chunk-
|
|
76
|
-
import "../../chunk-
|
|
77
|
-
import "../../chunk-
|
|
78
|
-
import "../../chunk-
|
|
74
|
+
} from "../../chunk-7LRSVYGN.js";
|
|
75
|
+
import "../../chunk-ZQNAWKEI.js";
|
|
76
|
+
import "../../chunk-7GGTZ4TA.js";
|
|
77
|
+
import "../../chunk-BFJJ5HYD.js";
|
|
78
|
+
import "../../chunk-YUV5CJMG.js";
|
|
79
|
+
import "../../chunk-H56RLQOF.js";
|
|
79
80
|
export {
|
|
80
81
|
DEFAULT_ERROR_CONFIG,
|
|
81
82
|
DOC_LINKS,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@json-to-office/shared-docx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "DOCX-specific schemas, component registry and validation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@sinclair/typebox": "0.34.38",
|
|
32
32
|
"docx": "9.5.1",
|
|
33
|
-
"@json-to-office/shared": "^0.
|
|
33
|
+
"@json-to-office/shared": "^0.9.0"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@types/node": "20.11.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schemas/font.ts"],"sourcesContent":["/**\n * Font-related Schemas (shared)\n * Extracted to avoid circular dependencies between theme and module schemas.\n */\n\nimport { Type } from '@sinclair/typebox';\n\n// ----------------------------------------------------------------------------\n// Shared Color Schema\n// ----------------------------------------------------------------------------\n\n/** Hex color with # prefix (e.g. \"#000000\") or a theme color name (e.g. \"primary\") */\nexport const HexColorSchema = Type.String({\n pattern: '^(#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$',\n description: 'Hex color with # prefix (e.g. \"#000000\") or theme color name',\n});\n\n/** Like HexColorSchema but also accepts \"transparent\" (used for backgroundColor) */\nexport const HexColorOrTransparentSchema = Type.String({\n pattern: '^(transparent|#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$',\n description: 'Hex color with # prefix, theme color name, or \"transparent\"',\n});\n\n// ----------------------------------------------------------------------------\n// Shared Text Formatting Properties\n// ----------------------------------------------------------------------------\n\n/**\n * Shared schema for text formatting properties.\n * Used as base for both font definitions and style definitions.\n */\nexport const TextFormattingPropertiesSchema = Type.Object(\n {\n size: Type.Optional(Type.Number({ minimum: 8, maximum: 72 })),\n color: Type.Optional(HexColorSchema),\n bold: Type.Optional(Type.Boolean()),\n italic: Type.Optional(Type.Boolean()),\n underline: Type.Optional(Type.Boolean()),\n lineSpacing: Type.Optional(\n Type.Object({\n type: Type.Union([\n Type.Literal('single'),\n Type.Literal('atLeast'),\n Type.Literal('exactly'),\n Type.Literal('double'),\n Type.Literal('multiple'),\n ]),\n value: Type.Optional(Type.Number({ minimum: 0 })),\n })\n ),\n spacing: Type.Optional(\n Type.Object({\n before: Type.Optional(Type.Number({ minimum: 0 })),\n after: Type.Optional(Type.Number({ minimum: 0 })),\n })\n ),\n characterSpacing: Type.Optional(\n Type.Object({\n type: Type.Union([Type.Literal('condensed'), Type.Literal('expanded')]),\n value: Type.Number(),\n })\n ),\n },\n { additionalProperties: false }\n);\n\n// ----------------------------------------------------------------------------\n// Font Definition Schema\n// ----------------------------------------------------------------------------\n\n/**\n * Font definition schema with full text formatting properties.\n * All properties except 'family' are optional.\n */\nexport const FontDefinitionSchema = Type.Object(\n {\n family: Type.String(),\n ...TextFormattingPropertiesSchema.properties,\n },\n {\n description:\n 'Font definition with family and optional formatting properties',\n additionalProperties: false,\n }\n);\n"],"mappings":";AAKA,SAAS,YAAY;AAOd,IAAM,iBAAiB,KAAK,OAAO;AAAA,EACxC,SAAS;AAAA,EACT,aAAa;AACf,CAAC;AAGM,IAAM,8BAA8B,KAAK,OAAO;AAAA,EACrD,SAAS;AAAA,EACT,aAAa;AACf,CAAC;AAUM,IAAM,iCAAiC,KAAK;AAAA,EACjD;AAAA,IACE,MAAM,KAAK,SAAS,KAAK,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,CAAC,CAAC;AAAA,IAC5D,OAAO,KAAK,SAAS,cAAc;AAAA,IACnC,MAAM,KAAK,SAAS,KAAK,QAAQ,CAAC;AAAA,IAClC,QAAQ,KAAK,SAAS,KAAK,QAAQ,CAAC;AAAA,IACpC,WAAW,KAAK,SAAS,KAAK,QAAQ,CAAC;AAAA,IACvC,aAAa,KAAK;AAAA,MAChB,KAAK,OAAO;AAAA,QACV,MAAM,KAAK,MAAM;AAAA,UACf,KAAK,QAAQ,QAAQ;AAAA,UACrB,KAAK,QAAQ,SAAS;AAAA,UACtB,KAAK,QAAQ,SAAS;AAAA,UACtB,KAAK,QAAQ,QAAQ;AAAA,UACrB,KAAK,QAAQ,UAAU;AAAA,QACzB,CAAC;AAAA,QACD,OAAO,KAAK,SAAS,KAAK,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAAA,MAClD,CAAC;AAAA,IACH;AAAA,IACA,SAAS,KAAK;AAAA,MACZ,KAAK,OAAO;AAAA,QACV,QAAQ,KAAK,SAAS,KAAK,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAAA,QACjD,OAAO,KAAK,SAAS,KAAK,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAAA,MAClD,CAAC;AAAA,IACH;AAAA,IACA,kBAAkB,KAAK;AAAA,MACrB,KAAK,OAAO;AAAA,QACV,MAAM,KAAK,MAAM,CAAC,KAAK,QAAQ,WAAW,GAAG,KAAK,QAAQ,UAAU,CAAC,CAAC;AAAA,QACtE,OAAO,KAAK,OAAO;AAAA,MACrB,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EACA,EAAE,sBAAsB,MAAM;AAChC;AAUO,IAAM,uBAAuB,KAAK;AAAA,EACvC;AAAA,IACE,QAAQ,KAAK,OAAO;AAAA,IACpB,GAAG,+BAA+B;AAAA,EACpC;AAAA,EACA;AAAA,IACE,aACE;AAAA,IACF,sBAAsB;AAAA,EACxB;AACF;","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schemas/theme.ts"],"sourcesContent":["/**\n * Theme Schema Definitions using TypeBox\n * This file provides TypeBox schemas for theme configuration validation\n */\n\nimport { Type, Static } from '@sinclair/typebox';\nimport {\n FontDefinitionSchema,\n TextFormattingPropertiesSchema,\n HexColorSchema,\n} from './font';\nimport { IndentSchema } from './components/common';\n\n// ============================================================================\n// Document Margins Schema\n// ============================================================================\n\nexport const DocumentMarginsSchema = Type.Object(\n {\n top: Type.Number({ minimum: 0 }),\n bottom: Type.Number({ minimum: 0 }),\n left: Type.Number({ minimum: 0 }),\n right: Type.Number({ minimum: 0 }),\n header: Type.Number({ minimum: 0 }),\n footer: Type.Number({ minimum: 0 }),\n gutter: Type.Number({ minimum: 0 }),\n },\n { additionalProperties: false, description: 'Document margin configuration' }\n);\n\n// ============================================================================\n// Page Dimensions Schema\n// ============================================================================\n\nexport const PageDimensionsSchema = Type.Object(\n {\n width: Type.Number({ minimum: 0 }),\n height: Type.Number({ minimum: 0 }),\n },\n { additionalProperties: false, description: 'Page dimensions in twips' }\n);\n\n// ============================================================================\n// Page Schema (replaces PageSetupSchema)\n// ============================================================================\n\nexport const PageSchema = Type.Object(\n {\n size: Type.Union(\n [\n Type.Literal('A4'),\n Type.Literal('A3'),\n Type.Literal('LETTER'),\n Type.Literal('LEGAL'),\n Type.Object(\n {\n width: Type.Number({ minimum: 0 }),\n height: Type.Number({ minimum: 0 }),\n },\n { additionalProperties: false }\n ),\n ],\n { description: 'Standard page size or custom dimensions' }\n ),\n margins: DocumentMarginsSchema,\n },\n {\n description: 'Page configuration including dimensions and margins',\n additionalProperties: false,\n }\n);\n\n// ============================================================================\n// Text formatting and font schemas now imported from './font' to avoid cycles\n\n// ============================================================================\n// Fonts Schema\n// ============================================================================\n\nexport const FontsSchema = Type.Object(\n {\n heading: FontDefinitionSchema,\n body: FontDefinitionSchema,\n mono: FontDefinitionSchema,\n light: FontDefinitionSchema,\n },\n {\n additionalProperties: false,\n description: 'Font definitions for different text types',\n }\n);\n\n// ============================================================================\n// Style Definitions Schema\n// ============================================================================\n\n// Paragraph border style support (matches docx BorderStyle)\nconst BorderStyleSchema = Type.Union(\n [\n Type.Literal('single'),\n Type.Literal('dashDotStroked'),\n Type.Literal('dashed'),\n Type.Literal('dashSmallGap'),\n Type.Literal('dotDash'),\n Type.Literal('dotDotDash'),\n Type.Literal('dotted'),\n Type.Literal('double'),\n Type.Literal('doubleWave'),\n Type.Literal('inset'),\n Type.Literal('nil'),\n Type.Literal('none'),\n Type.Literal('outset'),\n Type.Literal('thick'),\n Type.Literal('thickThinLargeGap'),\n Type.Literal('thickThinMediumGap'),\n Type.Literal('thickThinSmallGap'),\n Type.Literal('thinThickLargeGap'),\n Type.Literal('thinThickMediumGap'),\n Type.Literal('thinThickSmallGap'),\n Type.Literal('thinThickThinLargeGap'),\n Type.Literal('thinThickThinMediumGap'),\n Type.Literal('thinThickThinSmallGap'),\n Type.Literal('threeDEmboss'),\n Type.Literal('threeDEngrave'),\n Type.Literal('triple'),\n Type.Literal('wave'),\n ],\n { description: 'Paragraph border style' }\n);\n\nconst BorderDefinitionSchema = Type.Object(\n {\n style: BorderStyleSchema,\n size: Type.Number({\n minimum: 0,\n description: 'Width in eighths of a point (docx sz)',\n }),\n color: HexColorSchema,\n space: Type.Optional(\n Type.Number({\n minimum: 0,\n description: 'Space between text and border in points',\n })\n ),\n },\n {\n additionalProperties: false,\n description: 'Paragraph border side definition',\n }\n);\n\nconst BordersSchema = Type.Object(\n {\n top: Type.Optional(BorderDefinitionSchema),\n bottom: Type.Optional(BorderDefinitionSchema),\n left: Type.Optional(BorderDefinitionSchema),\n right: Type.Optional(BorderDefinitionSchema),\n },\n { additionalProperties: false, description: 'Paragraph borders (per side)' }\n);\n\n// Alignment schema for paragraph-level alignment (used in styles)\nconst AlignmentSchema = Type.Optional(\n Type.Union([\n Type.Literal('left'),\n Type.Literal('center'),\n Type.Literal('right'),\n Type.Literal('justify'),\n ])\n);\n\n/**\n * Style properties schema that extends text formatting properties\n * with additional style-specific properties (priority, baseStyle, etc.)\n */\nconst StylePropertiesSchema = Type.Object(\n {\n font: Type.Optional(\n Type.Union([\n Type.Literal('heading'),\n Type.Literal('body'),\n Type.Literal('mono'),\n Type.Literal('light'),\n ])\n ),\n ...TextFormattingPropertiesSchema.properties,\n // Paragraph-level alignment (not a font property)\n alignment: AlignmentSchema,\n // Additional properties specific to styles\n priority: Type.Optional(Type.Number()),\n baseStyle: Type.Optional(Type.String()),\n followingStyle: Type.Optional(Type.String()),\n widowControl: Type.Optional(Type.Boolean()),\n keepNext: Type.Optional(Type.Boolean()),\n keepLinesTogether: Type.Optional(Type.Boolean()),\n outlineLevel: Type.Optional(Type.Number()),\n borders: Type.Optional(BordersSchema),\n indent: Type.Optional(IndentSchema),\n },\n { additionalProperties: false }\n);\n\n// ============================================================================\n// Tab Stop Schema\n// ============================================================================\n\n/**\n * Tab stop leader types matching docx.js LeaderType\n */\nconst TabStopLeaderSchema = Type.Union(\n [\n Type.Literal('dot'),\n Type.Literal('hyphen'),\n Type.Literal('middleDot'),\n Type.Literal('none'),\n Type.Literal('underscore'),\n ],\n {\n description:\n 'Tab leader style: dot (dotted), hyphen (dashed), middleDot, none (blank), or underscore',\n }\n);\n\n/**\n * Tab stop type matching docx.js TabStopType\n */\nconst TabStopTypeSchema = Type.Union(\n [\n Type.Literal('left'),\n Type.Literal('right'),\n Type.Literal('center'),\n Type.Literal('bar'),\n Type.Literal('clear'),\n Type.Literal('decimal'),\n Type.Literal('end'),\n Type.Literal('num'),\n Type.Literal('start'),\n ],\n {\n description: 'Tab stop alignment type',\n }\n);\n\n/**\n * Tab stop definition schema\n */\nconst TabStopDefinitionSchema = Type.Object(\n {\n type: TabStopTypeSchema,\n position: Type.Union([\n Type.Number({\n description:\n 'Tab stop position in twips (1/1440 inch). Common: 9026 for right-aligned at page margin',\n }),\n Type.Literal('max', {\n description: 'Use maximum position (TabStopPosition.MAX = 9026 twips)',\n }),\n ]),\n leader: Type.Optional(TabStopLeaderSchema),\n },\n {\n description:\n 'Tab stop configuration with position, alignment, and optional leader',\n additionalProperties: false,\n }\n);\n\n/**\n * TOC style properties schema that extends text formatting properties\n * but EXCLUDES baseStyle to prevent unwanted coupling with Heading styles\n */\nconst TocStylePropertiesSchema = Type.Object(\n {\n font: Type.Optional(\n Type.Union([\n Type.Literal('heading'),\n Type.Literal('body'),\n Type.Literal('mono'),\n Type.Literal('light'),\n ])\n ),\n ...TextFormattingPropertiesSchema.properties,\n // Paragraph-level alignment (not a font property)\n alignment: AlignmentSchema,\n // Tab stops for controlling TOC entry formatting (leader dots, alignment, etc.)\n tabStops: Type.Optional(\n Type.Array(TabStopDefinitionSchema, {\n description:\n 'Tab stops for TOC entries. Use right-aligned tab with leader to create dotted lines to page numbers.',\n default: [{ type: 'right', position: 'max', leader: 'none' }],\n })\n ),\n // Additional properties specific to styles (baseStyle intentionally excluded)\n priority: Type.Optional(Type.Number()),\n followingStyle: Type.Optional(Type.String()),\n widowControl: Type.Optional(Type.Boolean()),\n keepNext: Type.Optional(Type.Boolean()),\n keepLinesTogether: Type.Optional(Type.Boolean()),\n outlineLevel: Type.Optional(Type.Number()),\n borders: Type.Optional(BordersSchema),\n indent: Type.Optional(IndentSchema),\n },\n { additionalProperties: false }\n);\n\nexport const StyleDefinitionsSchema = Type.Object(\n {\n normal: Type.Optional(StylePropertiesSchema),\n heading1: Type.Optional(StylePropertiesSchema),\n heading2: Type.Optional(StylePropertiesSchema),\n heading3: Type.Optional(StylePropertiesSchema),\n heading4: Type.Optional(StylePropertiesSchema),\n heading5: Type.Optional(StylePropertiesSchema),\n heading6: Type.Optional(StylePropertiesSchema),\n title: Type.Optional(StylePropertiesSchema),\n subtitle: Type.Optional(StylePropertiesSchema),\n // TOC entry styles (used by Word to format TOC entries)\n // Note: TOC styles use TocStylePropertiesSchema which excludes baseStyle to prevent coupling with Headings\n TOC1: Type.Optional(TocStylePropertiesSchema),\n TOC2: Type.Optional(TocStylePropertiesSchema),\n TOC3: Type.Optional(TocStylePropertiesSchema),\n TOC4: Type.Optional(TocStylePropertiesSchema),\n TOC5: Type.Optional(TocStylePropertiesSchema),\n TOC6: Type.Optional(TocStylePropertiesSchema),\n },\n {\n additionalProperties: StylePropertiesSchema,\n description:\n 'Style definitions supporting predefined styles (normal, heading1..6, title, subtitle), TOC entry styles (TOC1..TOC6), and arbitrary custom styles.',\n }\n);\n\n// ============================================================================\n// Heading Definition Schema\n// ============================================================================\n\n/**\n * Heading definition schema that uses the same properties as StylePropertiesSchema\n * but adds a required 'level' field.\n */\nexport const HeadingDefinitionSchema = Type.Object(\n {\n level: Type.Union([\n Type.Literal(1),\n Type.Literal(2),\n Type.Literal(3),\n Type.Literal(4),\n Type.Literal(5),\n Type.Literal(6),\n ]),\n ...StylePropertiesSchema.properties,\n },\n { additionalProperties: false }\n);\n\n// ============================================================================\n// Component Defaults Schemas\n// ============================================================================\n\n// Import component props schemas from components.ts\nimport {\n HeadingPropsSchema,\n ParagraphPropsSchema,\n ImagePropsSchema,\n StatisticPropsSchema,\n TablePropsSchema,\n SectionPropsSchema,\n ColumnsPropsSchema,\n ListPropsSchema,\n} from './components';\n\n// Create component defaults by making all fields optional (Type.Partial)\nexport const HeadingComponentDefaultsSchema = Type.Partial(HeadingPropsSchema);\nexport const ParagraphComponentDefaultsSchema =\n Type.Partial(ParagraphPropsSchema);\nexport const ImageComponentDefaultsSchema = Type.Partial(ImagePropsSchema);\nexport const StatisticComponentDefaultsSchema =\n Type.Partial(StatisticPropsSchema);\nexport const TableComponentDefaultsSchema = Type.Partial(TablePropsSchema);\nexport const SectionComponentDefaultsSchema = Type.Partial(SectionPropsSchema);\nexport const ColumnsComponentDefaultsSchema = Type.Partial(ColumnsPropsSchema);\nexport const ListComponentDefaultsSchema = Type.Partial(ListPropsSchema);\n\nexport const ComponentDefaultsSchema = Type.Object(\n {\n heading: Type.Optional(HeadingComponentDefaultsSchema),\n paragraph: Type.Optional(ParagraphComponentDefaultsSchema),\n image: Type.Optional(ImageComponentDefaultsSchema),\n statistic: Type.Optional(StatisticComponentDefaultsSchema),\n table: Type.Optional(TableComponentDefaultsSchema),\n section: Type.Optional(SectionComponentDefaultsSchema),\n columns: Type.Optional(ColumnsComponentDefaultsSchema),\n list: Type.Optional(ListComponentDefaultsSchema),\n },\n { additionalProperties: true } // TODO: add a way to add strict custom component defaults when the plugin/registry paradigm will be implemented\n);\n\n// ============================================================================\n// Theme Config Schema\n// ============================================================================\n\nexport const ThemeConfigSchema = Type.Object(\n {\n $schema: Type.Optional(Type.String()),\n name: Type.String(),\n displayName: Type.String(),\n description: Type.String(),\n version: Type.String(),\n colors: Type.Object(\n {\n primary: HexColorSchema,\n secondary: HexColorSchema,\n accent: HexColorSchema,\n text: HexColorSchema,\n background: HexColorSchema,\n border: HexColorSchema,\n // Additional semantic color names\n textPrimary: HexColorSchema,\n textSecondary: HexColorSchema,\n textMuted: HexColorSchema,\n borderPrimary: HexColorSchema,\n borderSecondary: HexColorSchema,\n backgroundPrimary: HexColorSchema,\n backgroundSecondary: HexColorSchema,\n },\n { additionalProperties: false }\n ),\n fonts: FontsSchema,\n page: PageSchema,\n styles: Type.Optional(StyleDefinitionsSchema),\n componentDefaults: Type.Optional(ComponentDefaultsSchema),\n },\n {\n additionalProperties: false,\n description: 'Theme configuration',\n }\n);\n\n// ============================================================================\n// TypeScript Types\n// ============================================================================\n\nexport type ThemeConfigJson = Static<typeof ThemeConfigSchema>;\nexport type DocumentMargins = Static<typeof DocumentMarginsSchema>;\nexport type PageDimensions = Static<typeof PageDimensionsSchema>;\nexport type Page = Static<typeof PageSchema>;\nexport type FontDefinition = Static<typeof FontDefinitionSchema>;\nexport type Fonts = Static<typeof FontsSchema>;\nexport type StyleDefinitions = Static<typeof StyleDefinitionsSchema>;\nexport type HeadingDefinition = Static<typeof HeadingDefinitionSchema>;\nexport type HeadingComponentDefaults = Static<\n typeof HeadingComponentDefaultsSchema\n>;\nexport type ParagraphComponentDefaults = Static<\n typeof ParagraphComponentDefaultsSchema\n>;\nexport type ImageComponentDefaults = Static<\n typeof ImageComponentDefaultsSchema\n>;\nexport type StatisticComponentDefaults = Static<\n typeof StatisticComponentDefaultsSchema\n>;\nexport type TableComponentDefaults = Static<\n typeof TableComponentDefaultsSchema\n>;\nexport type SectionComponentDefaults = Static<\n typeof SectionComponentDefaultsSchema\n>;\nexport type ColumnsComponentDefaults = Static<\n typeof ColumnsComponentDefaultsSchema\n>;\nexport type ListComponentDefaults = Static<typeof ListComponentDefaultsSchema>;\nexport type ComponentDefaults = Static<typeof ComponentDefaultsSchema>;\n\n// ============================================================================\n// Validation Function\n// ============================================================================\n\nimport { Value } from '@sinclair/typebox/value';\n\nexport function isValidThemeConfig(data: unknown): data is ThemeConfigJson {\n return Value.Check(ThemeConfigSchema, data);\n}\n"],"mappings":"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","names":[]}
|