abstract-document 20.0.4 → 20.1.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/CHANGELOG.md +4 -0
- package/lib/abstract-document/abstract-doc.d.ts.map +1 -1
- package/lib/abstract-document/abstract-doc.js +2 -2
- package/lib/abstract-document/atoms/atom.d.ts +3 -3
- package/lib/abstract-document/atoms/atom.d.ts.map +1 -1
- package/lib/abstract-document/default-styles.d.ts.map +1 -1
- package/lib/abstract-document/default-styles.js.map +1 -1
- package/lib/abstract-document/markdown/markdown.d.ts.map +1 -1
- package/lib/abstract-document/markdown/markdown.js +4 -4
- package/lib/abstract-document/markdown/markdown.js.map +1 -1
- package/lib/abstract-document/numberings/numbering-definition.d.ts +2 -2
- package/lib/abstract-document/numberings/numbering-definition.d.ts.map +1 -1
- package/lib/abstract-document/numberings/numbering-level-definition.js +2 -2
- package/lib/abstract-document/page/master-page.d.ts +1 -1
- package/lib/abstract-document/page/master-page.d.ts.map +1 -1
- package/lib/abstract-document/page/master-page.js +1 -1
- package/lib/abstract-document/page/master-page.js.map +1 -1
- package/lib/abstract-document/page/section.d.ts +1 -1
- package/lib/abstract-document/page/section.d.ts.map +1 -1
- package/lib/abstract-document/page/section.js +2 -2
- package/lib/abstract-document/page/section.js.map +1 -1
- package/lib/abstract-document/primitives/font.d.ts +1 -1
- package/lib/abstract-document/primitives/font.d.ts.map +1 -1
- package/lib/abstract-document/primitives/font.js +1 -1
- package/lib/abstract-document/primitives/font.js.map +1 -1
- package/lib/abstract-document/primitives/layout-foundation-color.d.ts.map +1 -1
- package/lib/abstract-document/primitives/layout-foundation-color.js.map +1 -1
- package/lib/abstract-document/primitives/layout-foundation.d.ts.map +1 -1
- package/lib/abstract-document/primitives/layout-foundation.js.map +1 -1
- package/lib/abstract-document/resources.d.ts +4 -3
- package/lib/abstract-document/resources.d.ts.map +1 -1
- package/lib/abstract-document/resources.js +4 -4
- package/lib/abstract-document/resources.js.map +1 -1
- package/lib/abstract-document/section-elements/group.d.ts +1 -1
- package/lib/abstract-document/section-elements/group.d.ts.map +1 -1
- package/lib/abstract-document/section-elements/group.js +2 -2
- package/lib/abstract-document/section-elements/group.js.map +1 -1
- package/lib/abstract-document/section-elements/page-break.d.ts +2 -2
- package/lib/abstract-document/section-elements/page-break.d.ts.map +1 -1
- package/lib/abstract-document/section-elements/page-break.js +1 -2
- package/lib/abstract-document/section-elements/page-break.js.map +1 -1
- package/lib/abstract-document/section-elements/paragraph.d.ts +2 -2
- package/lib/abstract-document/section-elements/paragraph.d.ts.map +1 -1
- package/lib/abstract-document/section-elements/paragraph.js +2 -2
- package/lib/abstract-document/section-elements/paragraph.js.map +1 -1
- package/lib/abstract-document/section-elements/section-element.d.ts +1 -1
- package/lib/abstract-document/section-elements/section-element.d.ts.map +1 -1
- package/lib/abstract-document/section-elements/section-element.js.map +1 -1
- package/lib/abstract-document/section-elements/table.d.ts +1 -1
- package/lib/abstract-document/section-elements/table.d.ts.map +1 -1
- package/lib/abstract-document/section-elements/table.js +2 -2
- package/lib/abstract-document/section-elements/table.js.map +1 -1
- package/lib/abstract-document/styles/group-style.js +3 -3
- package/lib/abstract-document/styles/page-style.d.ts.map +1 -1
- package/lib/abstract-document/styles/page-style.js +3 -7
- package/lib/abstract-document/styles/page-style.js.map +1 -1
- package/lib/abstract-document/styles/paragraph-style.d.ts +1 -1
- package/lib/abstract-document/styles/paragraph-style.d.ts.map +1 -1
- package/lib/abstract-document/styles/paragraph-style.js +5 -5
- package/lib/abstract-document/styles/paragraph-style.js.map +1 -1
- package/lib/abstract-document/styles/style.d.ts.map +1 -1
- package/lib/abstract-document/styles/style.js.map +1 -1
- package/lib/abstract-document/styles/table-cell-style.d.ts +1 -1
- package/lib/abstract-document/styles/table-cell-style.d.ts.map +1 -1
- package/lib/abstract-document/styles/table-cell-style.js +7 -7
- package/lib/abstract-document/styles/table-cell-style.js.map +1 -1
- package/lib/abstract-document/styles/table-style.d.ts +1 -1
- package/lib/abstract-document/styles/table-style.d.ts.map +1 -1
- package/lib/abstract-document/styles/table-style.js +2 -2
- package/lib/abstract-document/styles/table-style.js.map +1 -1
- package/lib/abstract-document/styles/text-style.d.ts.map +1 -1
- package/lib/abstract-document/styles/text-style.js +16 -21
- package/lib/abstract-document/styles/text-style.js.map +1 -1
- package/lib/abstract-document/table/table-cell.js +2 -2
- package/lib/abstract-document/table/table-row.d.ts +2 -3
- package/lib/abstract-document/table/table-row.d.ts.map +1 -1
- package/lib/abstract-document/table/table-row.js +2 -3
- package/lib/abstract-document/table/table-row.js.map +1 -1
- package/lib/abstract-document/types.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/document-container.d.ts +5 -5
- package/lib/abstract-document-exporters/docx/document-container.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/document-container.js +14 -13
- package/lib/abstract-document-exporters/docx/document-container.js.map +1 -1
- package/lib/abstract-document-exporters/docx/docx-constants.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/docx-constants.js +1 -4
- package/lib/abstract-document-exporters/docx/docx-constants.js.map +1 -1
- package/lib/abstract-document-exporters/docx/ref-container.d.ts +8 -10
- package/lib/abstract-document-exporters/docx/ref-container.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/ref-container.js +34 -35
- package/lib/abstract-document-exporters/docx/ref-container.js.map +1 -1
- package/lib/abstract-document-exporters/docx/string-utils.d.ts +2 -1
- package/lib/abstract-document-exporters/docx/string-utils.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/string-utils.js +6 -4
- package/lib/abstract-document-exporters/docx/string-utils.js.map +1 -1
- package/lib/abstract-document-exporters/docx/xml-writer.d.ts +12 -33
- package/lib/abstract-document-exporters/docx/xml-writer.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx/xml-writer.js +243 -249
- package/lib/abstract-document-exporters/docx/xml-writer.js.map +1 -1
- package/lib/abstract-document-exporters/docx2/render-image.d.ts +1 -1
- package/lib/abstract-document-exporters/docx2/render-image.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx2/render-image.js +4 -16
- package/lib/abstract-document-exporters/docx2/render-image.js.map +1 -1
- package/lib/abstract-document-exporters/docx2/render.d.ts.map +1 -1
- package/lib/abstract-document-exporters/docx2/render.js +28 -38
- package/lib/abstract-document-exporters/docx2/render.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/font.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/font.js +13 -14
- package/lib/abstract-document-exporters/pdf/font.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/header-footer.d.ts +8 -0
- package/lib/abstract-document-exporters/pdf/header-footer.d.ts.map +1 -0
- package/lib/abstract-document-exporters/pdf/header-footer.js +31 -0
- package/lib/abstract-document-exporters/pdf/header-footer.js.map +1 -0
- package/lib/abstract-document-exporters/pdf/measure.d.ts +4 -4
- package/lib/abstract-document-exporters/pdf/measure.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/measure.js +29 -31
- package/lib/abstract-document-exporters/pdf/measure.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/page.d.ts +15 -0
- package/lib/abstract-document-exporters/pdf/page.d.ts.map +1 -0
- package/lib/abstract-document-exporters/pdf/page.js +2 -0
- package/lib/abstract-document-exporters/pdf/page.js.map +1 -0
- package/lib/abstract-document-exporters/pdf/paginate.d.ts +2 -20
- package/lib/abstract-document-exporters/pdf/paginate.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/paginate.js +8 -45
- package/lib/abstract-document-exporters/pdf/paginate.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/pre-process.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/pre-process.js +8 -35
- package/lib/abstract-document-exporters/pdf/pre-process.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/render-image.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/render-image.js +24 -34
- package/lib/abstract-document-exporters/pdf/render-image.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/render.d.ts +4 -3
- package/lib/abstract-document-exporters/pdf/render.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/render.js +60 -50
- package/lib/abstract-document-exporters/pdf/render.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/std-fonts.js +1 -1
- package/lib/abstract-document-exporters/pdf/std-fonts.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/textRunRow.d.ts +3 -3
- package/lib/abstract-document-exporters/pdf/textRunRow.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/textRunRow.js +6 -6
- package/lib/abstract-document-exporters/pdf/textRunRow.js.map +1 -1
- package/lib/abstract-document-exporters/pdf/update-refs.d.ts +1 -1
- package/lib/abstract-document-exporters/pdf/update-refs.d.ts.map +1 -1
- package/lib/abstract-document-exporters/pdf/update-refs.js +3 -2
- package/lib/abstract-document-exporters/pdf/update-refs.js.map +1 -1
- package/lib/abstract-document-exporters/shared/get_resources.d.ts.map +1 -1
- package/lib/abstract-document-exporters/shared/get_resources.js.map +1 -1
- package/lib/abstract-document-jsx/index.d.ts +2 -3
- package/lib/abstract-document-jsx/index.d.ts.map +1 -1
- package/lib/abstract-document-jsx/index.js +10 -6
- package/lib/abstract-document-jsx/index.js.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/abstract-doc-of-xml.d.ts +3 -7
- package/lib/abstract-document-xml/abstract-doc-of-xml/abstract-doc-of-xml.d.ts.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/abstract-doc-of-xml.js +5 -3
- package/lib/abstract-document-xml/abstract-doc-of-xml/abstract-doc-of-xml.js.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/creator.d.ts.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/creator.js +1 -3
- package/lib/abstract-document-xml/abstract-doc-of-xml/creator.js.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/custom-elements.d.ts.map +1 -1
- package/lib/abstract-document-xml/abstract-doc-of-xml/custom-elements.js +4 -8
- package/lib/abstract-document-xml/abstract-doc-of-xml/custom-elements.js.map +1 -1
- package/lib/abstract-document-xml/xsd-template/xsd-template.js +2 -2
- package/lib/abstract-document-xml/xsd-template/xsd-template.js.map +1 -1
- package/package.json +21 -21
- package/src/abstract-document/abstract-doc.ts +6 -6
- package/src/abstract-document/atoms/atom.ts +3 -3
- package/src/abstract-document/default-styles.ts +1 -1
- package/src/abstract-document/markdown/markdown.ts +5 -5
- package/src/abstract-document/numberings/numbering-definition.ts +2 -2
- package/src/abstract-document/numberings/numbering-level-definition.ts +2 -2
- package/src/abstract-document/page/master-page.ts +2 -2
- package/src/abstract-document/page/section.ts +3 -3
- package/src/abstract-document/primitives/font.ts +1 -12
- package/src/abstract-document/primitives/layout-foundation-color.ts +1 -4
- package/src/abstract-document/primitives/layout-foundation.ts +1 -4
- package/src/abstract-document/resources.ts +9 -14
- package/src/abstract-document/section-elements/group.ts +3 -3
- package/src/abstract-document/section-elements/page-break.ts +2 -3
- package/src/abstract-document/section-elements/paragraph.ts +4 -4
- package/src/abstract-document/section-elements/section-element.ts +1 -1
- package/src/abstract-document/section-elements/table.ts +3 -3
- package/src/abstract-document/styles/group-style.ts +3 -3
- package/src/abstract-document/styles/page-style.ts +3 -7
- package/src/abstract-document/styles/paragraph-style.ts +6 -14
- package/src/abstract-document/styles/style.ts +1 -5
- package/src/abstract-document/styles/table-cell-style.ts +8 -11
- package/src/abstract-document/styles/table-style.ts +3 -8
- package/src/abstract-document/styles/text-style.ts +16 -21
- package/src/abstract-document/table/table-cell.ts +2 -2
- package/src/abstract-document/table/table-row.ts +3 -4
- package/src/abstract-document/types.ts +0 -1
- package/src/abstract-document-exporters/docx/document-container.ts +24 -13
- package/src/abstract-document-exporters/docx/docx-constants.ts +2 -6
- package/src/abstract-document-exporters/docx/ref-container.ts +48 -41
- package/src/abstract-document-exporters/docx/string-utils.ts +6 -6
- package/src/abstract-document-exporters/docx/xml-writer.ts +261 -266
- package/src/abstract-document-exporters/docx2/render-image.ts +15 -49
- package/src/abstract-document-exporters/docx2/render.ts +64 -139
- package/src/abstract-document-exporters/pdf/font.ts +17 -23
- package/src/abstract-document-exporters/pdf/header-footer.ts +43 -0
- package/src/abstract-document-exporters/pdf/measure.ts +50 -103
- package/src/abstract-document-exporters/pdf/page.ts +16 -0
- package/src/abstract-document-exporters/pdf/paginate.ts +29 -125
- package/src/abstract-document-exporters/pdf/pre-process.ts +11 -47
- package/src/abstract-document-exporters/pdf/render-image.ts +29 -46
- package/src/abstract-document-exporters/pdf/render.ts +84 -129
- package/src/abstract-document-exporters/pdf/std-fonts.ts +1 -1
- package/src/abstract-document-exporters/pdf/textRunRow.ts +12 -23
- package/src/abstract-document-exporters/pdf/update-refs.ts +10 -33
- package/src/abstract-document-exporters/shared/get_resources.ts +4 -4
- package/src/abstract-document-jsx/index.ts +38 -26
- package/src/abstract-document-xml/abstract-doc-of-xml/abstract-doc-of-xml.ts +14 -26
- package/src/abstract-document-xml/abstract-doc-of-xml/creator.ts +10 -28
- package/src/abstract-document-xml/abstract-doc-of-xml/custom-elements.tsx +8 -30
- package/src/abstract-document-xml/xsd-template/xsd-template.ts +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import * as TextStyle from "./text-style.js";
|
|
2
1
|
import * as LayoutFoundation from "../primitives/layout-foundation.js";
|
|
3
2
|
import type * as Position from "./position.js";
|
|
3
|
+
import * as TextStyle from "./text-style.js";
|
|
4
4
|
|
|
5
5
|
export type TextAlignment = "Start" | "Center" | "End" | "Justify";
|
|
6
6
|
|
|
@@ -20,12 +20,7 @@ export interface ParagraphStyleProps {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export function create(props?: ParagraphStyleProps): ParagraphStyle {
|
|
23
|
-
const {
|
|
24
|
-
alignment,
|
|
25
|
-
margins = LayoutFoundation.create(),
|
|
26
|
-
position = "relative",
|
|
27
|
-
textStyle = TextStyle.create(),
|
|
28
|
-
} = props || {};
|
|
23
|
+
const { alignment, margins = LayoutFoundation.create(), position = "relative", textStyle = TextStyle.create() } = props ?? {};
|
|
29
24
|
return {
|
|
30
25
|
type: "ParagraphStyle",
|
|
31
26
|
alignment,
|
|
@@ -35,14 +30,11 @@ export function create(props?: ParagraphStyleProps): ParagraphStyle {
|
|
|
35
30
|
};
|
|
36
31
|
}
|
|
37
32
|
|
|
38
|
-
export function overrideWith(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
): ParagraphStyle {
|
|
42
|
-
const a: ParagraphStyleProps = overrider || {};
|
|
43
|
-
const b: ParagraphStyleProps = toOverride || {};
|
|
33
|
+
export function overrideWith(overrider: ParagraphStyle | undefined, toOverride: ParagraphStyle | undefined): ParagraphStyle {
|
|
34
|
+
const a: ParagraphStyleProps = overrider ?? {};
|
|
35
|
+
const b: ParagraphStyleProps = toOverride ?? {};
|
|
44
36
|
return create({
|
|
45
|
-
alignment: a.alignment
|
|
37
|
+
alignment: a.alignment ?? b.alignment,
|
|
46
38
|
margins: LayoutFoundation.overrideWith(a.margins, b.margins),
|
|
47
39
|
textStyle: TextStyle.overrideWith(a.textStyle, b.textStyle),
|
|
48
40
|
});
|
|
@@ -3,11 +3,7 @@ import * as TableCellStyle from "./table-cell-style.js";
|
|
|
3
3
|
import * as TableStyle from "./table-style.js";
|
|
4
4
|
import * as TextStyle from "./text-style.js";
|
|
5
5
|
|
|
6
|
-
export type Style =
|
|
7
|
-
| ParagraphStyle.ParagraphStyle
|
|
8
|
-
| TableCellStyle.TableCellStyle
|
|
9
|
-
| TableStyle.TableStyle
|
|
10
|
-
| TextStyle.TextStyle;
|
|
6
|
+
export type Style = ParagraphStyle.ParagraphStyle | TableCellStyle.TableCellStyle | TableStyle.TableStyle | TextStyle.TextStyle;
|
|
11
7
|
|
|
12
8
|
export function overrideWith(overrider: Style | undefined, toOverride: Style | undefined): Style | undefined {
|
|
13
9
|
if (!overrider) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as LayoutFoundation from "../primitives/layout-foundation.js";
|
|
2
1
|
import * as LayoutFoundationColor from "../primitives/layout-foundation-color.js";
|
|
2
|
+
import * as LayoutFoundation from "../primitives/layout-foundation.js";
|
|
3
3
|
|
|
4
4
|
export type RowAlignment = "Top" | "Middle" | "Bottom";
|
|
5
5
|
|
|
@@ -23,7 +23,7 @@ export interface TableCellStyleProps {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
export function create(props?: TableCellStyleProps): TableCellStyle {
|
|
26
|
-
const { background, borders, borderColor, borderColors, padding, verticalAlignment } = props
|
|
26
|
+
const { background, borders, borderColor, borderColors, padding, verticalAlignment } = props ?? {};
|
|
27
27
|
return {
|
|
28
28
|
type: "TableCellStyle",
|
|
29
29
|
background,
|
|
@@ -35,18 +35,15 @@ export function create(props?: TableCellStyleProps): TableCellStyle {
|
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
export function overrideWith(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
): TableCellStyle {
|
|
42
|
-
const a: TableCellStyleProps = overrider || {};
|
|
43
|
-
const b: TableCellStyleProps = toOverride || {};
|
|
38
|
+
export function overrideWith(overrider: TableCellStyle | undefined, toOverride: TableCellStyle | undefined): TableCellStyle {
|
|
39
|
+
const a: TableCellStyleProps = overrider ?? {};
|
|
40
|
+
const b: TableCellStyleProps = toOverride ?? {};
|
|
44
41
|
return create({
|
|
45
|
-
background: a.background
|
|
42
|
+
background: a.background ?? b.background,
|
|
46
43
|
borders: LayoutFoundation.overrideWith(a.borders, b.borders),
|
|
47
|
-
borderColor: a.borderColor
|
|
44
|
+
borderColor: a.borderColor ?? b.borderColor,
|
|
48
45
|
borderColors: LayoutFoundationColor.overrideWith(a.borderColors, b.borderColors),
|
|
49
46
|
padding: LayoutFoundation.overrideWith(a.padding, b.padding),
|
|
50
|
-
verticalAlignment: a.verticalAlignment
|
|
47
|
+
verticalAlignment: a.verticalAlignment ?? b.verticalAlignment,
|
|
51
48
|
});
|
|
52
49
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as LayoutFoundation from "../primitives/layout-foundation.js";
|
|
2
|
-
import * as TableCellStyle from "./table-cell-style.js";
|
|
3
2
|
import type * as Position from "./position.js";
|
|
3
|
+
import * as TableCellStyle from "./table-cell-style.js";
|
|
4
4
|
|
|
5
5
|
export type TableAlignment = "Left" | "Center" | "Right";
|
|
6
6
|
|
|
@@ -20,12 +20,7 @@ export interface TableStyleProps {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export function create(props?: TableStyleProps): TableStyle {
|
|
23
|
-
const {
|
|
24
|
-
margins = LayoutFoundation.create(),
|
|
25
|
-
alignment,
|
|
26
|
-
position = "relative",
|
|
27
|
-
cellStyle = TableCellStyle.create(),
|
|
28
|
-
} = props || {};
|
|
23
|
+
const { margins = LayoutFoundation.create(), alignment, position = "relative", cellStyle = TableCellStyle.create() } = props ?? {};
|
|
29
24
|
return {
|
|
30
25
|
type: "TableStyle",
|
|
31
26
|
position,
|
|
@@ -40,7 +35,7 @@ export function overrideWith(overrider: TableStyle, toOverride: TableStyle): Tab
|
|
|
40
35
|
const b: TableStyleProps = toOverride || {};
|
|
41
36
|
return create({
|
|
42
37
|
margins: LayoutFoundation.overrideWith(a.margins, b.margins),
|
|
43
|
-
alignment: a.alignment
|
|
38
|
+
alignment: a.alignment ?? b.alignment,
|
|
44
39
|
cellStyle: TableCellStyle.overrideWith(a.cellStyle, b.cellStyle),
|
|
45
40
|
});
|
|
46
41
|
}
|
|
@@ -61,12 +61,7 @@ export function create(props?: TextStyleProps): TextStyle {
|
|
|
61
61
|
|
|
62
62
|
export function overrideWith(overrider: TextStyle | undefined, toOverride: TextStyle | undefined): TextStyle {
|
|
63
63
|
const overriddenFontWeight: Partial<TextStyle> =
|
|
64
|
-
overrider?.light ||
|
|
65
|
-
overrider?.normal ||
|
|
66
|
-
overrider?.mediumBold ||
|
|
67
|
-
overrider?.bold ||
|
|
68
|
-
overrider?.extraBold ||
|
|
69
|
-
overrider?.fontWeight
|
|
64
|
+
overrider?.light || overrider?.normal || overrider?.mediumBold || overrider?.bold || overrider?.extraBold || overrider?.fontWeight
|
|
70
65
|
? {
|
|
71
66
|
light: overrider?.light,
|
|
72
67
|
normal: overrider?.normal,
|
|
@@ -83,20 +78,20 @@ export function overrideWith(overrider: TextStyle | undefined, toOverride: TextS
|
|
|
83
78
|
extraBold: toOverride?.extraBold,
|
|
84
79
|
fontWeight: toOverride?.fontWeight,
|
|
85
80
|
};
|
|
86
|
-
const a: TextStyleProps = overrider
|
|
87
|
-
const b: TextStyleProps = toOverride
|
|
81
|
+
const a: TextStyleProps = overrider ?? {};
|
|
82
|
+
const b: TextStyleProps = toOverride ?? {};
|
|
88
83
|
return create({
|
|
89
|
-
fontFamily: a.fontFamily
|
|
90
|
-
color: a.color
|
|
91
|
-
fontSize: a.fontSize
|
|
92
|
-
fontScale: a.fontScale
|
|
93
|
-
italic: a.italic
|
|
94
|
-
subScript: a.subScript
|
|
95
|
-
superScript: a.superScript
|
|
96
|
-
underline: a.underline
|
|
97
|
-
verticalPosition: a.verticalPosition
|
|
98
|
-
indent: a.indent
|
|
99
|
-
lineGap: a.lineGap
|
|
84
|
+
fontFamily: a.fontFamily ?? b.fontFamily,
|
|
85
|
+
color: a.color ?? b.color,
|
|
86
|
+
fontSize: a.fontSize ?? b.fontSize,
|
|
87
|
+
fontScale: a.fontScale ?? b.fontScale,
|
|
88
|
+
italic: a.italic ?? b.italic,
|
|
89
|
+
subScript: a.subScript ?? b.subScript,
|
|
90
|
+
superScript: a.superScript ?? b.superScript,
|
|
91
|
+
underline: a.underline ?? b.underline,
|
|
92
|
+
verticalPosition: a.verticalPosition ?? b.verticalPosition,
|
|
93
|
+
indent: a.indent ?? b.indent,
|
|
94
|
+
lineGap: a.lineGap ?? b.lineGap,
|
|
100
95
|
lineBreak: a.lineBreak ?? b.lineBreak,
|
|
101
96
|
baseline: a.baseline ?? b.baseline,
|
|
102
97
|
strike: a.strike ?? b.strike,
|
|
@@ -107,7 +102,7 @@ export function overrideWith(overrider: TextStyle | undefined, toOverride: TextS
|
|
|
107
102
|
}
|
|
108
103
|
|
|
109
104
|
export function calculateFontSize(textStyle: TextStyle | undefined, defaultFontSize: number): number {
|
|
110
|
-
const fontSize = textStyle
|
|
111
|
-
const fontScale = textStyle
|
|
105
|
+
const fontSize = textStyle?.fontSize ?? defaultFontSize;
|
|
106
|
+
const fontScale = textStyle?.fontScale ?? 1.0;
|
|
112
107
|
return fontSize * fontScale;
|
|
113
108
|
}
|
|
@@ -19,13 +19,13 @@ export interface TableCellProps {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export function create(props?: TableCellProps, children?: ReadonlyArray<SectionElement.SectionElement>): TableCell {
|
|
22
|
-
const { styleName = "", columnSpan = 1, rowSpan = 1, style = TableCellStyle.create(), dummy = false } = props
|
|
22
|
+
const { styleName = "", columnSpan = 1, rowSpan = 1, style = TableCellStyle.create(), dummy = false } = props ?? {};
|
|
23
23
|
return {
|
|
24
24
|
styleName,
|
|
25
25
|
columnSpan,
|
|
26
26
|
rowSpan,
|
|
27
27
|
style,
|
|
28
28
|
dummy,
|
|
29
|
-
children: children
|
|
29
|
+
children: children ?? [],
|
|
30
30
|
};
|
|
31
31
|
}
|
|
@@ -4,11 +4,10 @@ export interface TableRow {
|
|
|
4
4
|
readonly children: ReadonlyArray<TableCell>;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
export
|
|
7
|
+
export type TableRowProps = object;
|
|
8
8
|
|
|
9
|
-
export function create(
|
|
10
|
-
const {} = props || {};
|
|
9
|
+
export function create(_props?: TableRowProps, children?: ReadonlyArray<TableCell>): TableRow {
|
|
11
10
|
return {
|
|
12
|
-
children: children
|
|
11
|
+
children: children ?? [],
|
|
13
12
|
};
|
|
14
13
|
}
|
|
@@ -1,18 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
import type { RefContainer } from "./ref-container.js";
|
|
2
|
+
import { createRefContainer } from "./ref-container.js";
|
|
3
|
+
import type { XmlWriter } from "./xml-writer.js";
|
|
4
|
+
import { createXmlWriter } from "./xml-writer.js";
|
|
3
5
|
|
|
4
|
-
|
|
6
|
+
export interface DocumentContainer {
|
|
7
|
+
readonly filePath: string;
|
|
8
|
+
readonly fileName: string;
|
|
9
|
+
readonly refId: string;
|
|
10
|
+
readonly contentType: string;
|
|
11
|
+
readonly references: RefContainer;
|
|
12
|
+
readonly XMLWriter: XmlWriter;
|
|
13
|
+
}
|
|
5
14
|
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
readonly fileName!: string;
|
|
9
|
-
readonly refId!: string;
|
|
10
|
-
readonly contentType!: string;
|
|
11
|
-
readonly references: RefContainer = new RefContainer();
|
|
15
|
+
export function createDocumentContainer(filePath: string, fileName: string, refId: string, contentType: string): DocumentContainer {
|
|
16
|
+
const xmlWriter = createXmlWriter();
|
|
12
17
|
|
|
13
|
-
|
|
18
|
+
return {
|
|
19
|
+
filePath,
|
|
20
|
+
fileName,
|
|
21
|
+
refId,
|
|
22
|
+
contentType,
|
|
23
|
+
references: createRefContainer(),
|
|
14
24
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
25
|
+
get XMLWriter(): XmlWriter {
|
|
26
|
+
return xmlWriter;
|
|
27
|
+
},
|
|
28
|
+
};
|
|
18
29
|
}
|
|
@@ -1,21 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export const WordNamespace = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
|
|
1
|
+
export const WordNamespace = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
|
|
4
2
|
export const WordPrefix = "w";
|
|
5
3
|
export const VmlNamespace = "urn:schemas-microsoft-com:vml";
|
|
6
4
|
export const VmlPrefix = "v";
|
|
7
5
|
export const OfficeNamespace = "urn:schemas-microsoft-com:office:office";
|
|
8
6
|
export const OfficePrefix = "o";
|
|
9
7
|
export const HeadRelXml =
|
|
10
|
-
// tslint:disable-next-line:max-line-length
|
|
11
8
|
"<?xml version='1.0' encoding='utf-8'?><Relationships xmlns='http://schemas.openxmlformats.org/package/2006/relationships'><Relationship Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument' Target='/word/document.xml' Id='Rac2f7d58837f4830'/></Relationships>";
|
|
12
9
|
|
|
13
10
|
export const RelNamespace = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
|
|
14
11
|
export const RelPrefix = "r";
|
|
15
12
|
export const PointOoXmlFactor = 20;
|
|
16
13
|
|
|
17
|
-
export const ImageStyle =
|
|
18
|
-
"width:{0}pt;height:{1}pt;mso-position-horizontal-relative:char;mso-position-vertical-relative:line;v-text-anchor:middle";
|
|
14
|
+
export const ImageStyle = "width:{0}pt;height:{1}pt;mso-position-horizontal-relative:char;mso-position-vertical-relative:line;v-text-anchor:middle";
|
|
19
15
|
|
|
20
16
|
export const ContentTypeNamespace = "http://schemas.openxmlformats.org/package/2006/content-types.js";
|
|
21
17
|
export const HeaderNamespace = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header";
|
|
@@ -1,50 +1,57 @@
|
|
|
1
|
-
|
|
2
|
-
import { XmlWriter } from "./xml-writer.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
get XMLWriter(): XmlWriter {
|
|
13
|
-
return this._xmlWriter;
|
|
14
|
-
}
|
|
1
|
+
import * as DocxConstants from "./docx-constants.js";
|
|
2
|
+
import type { XmlWriter } from "./xml-writer.js";
|
|
3
|
+
import { createXmlWriter } from "./xml-writer.js";
|
|
4
|
+
|
|
5
|
+
export interface RefContainer {
|
|
6
|
+
readonly XMLWriter: XmlWriter;
|
|
7
|
+
readonly count: number;
|
|
8
|
+
AddReference: (refId: string, filePath: string, type: string) => void;
|
|
9
|
+
AddReference2: (refId: string, filePath: string, type: string) => void;
|
|
10
|
+
finish: () => void;
|
|
11
|
+
}
|
|
15
12
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
13
|
+
export function createRefContainer(): RefContainer {
|
|
14
|
+
let references: Array<string> = [];
|
|
15
|
+
const xmlWriter = createXmlWriter();
|
|
20
16
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
filePath = "/" + filePath;
|
|
24
|
-
}
|
|
25
|
-
this.AddReference2(refId, filePath, type);
|
|
26
|
-
}
|
|
17
|
+
xmlWriter.WriteStartDocument(true);
|
|
18
|
+
xmlWriter.WriteStartElement("Relationships", DocxConstants.RelationNamespace);
|
|
27
19
|
|
|
28
|
-
|
|
29
|
-
if (
|
|
20
|
+
function addReference2(refId: string, filePath: string, type: string): void {
|
|
21
|
+
if (references.indexOf(refId) !== -1) {
|
|
30
22
|
return;
|
|
31
23
|
}
|
|
32
|
-
|
|
33
|
-
|
|
24
|
+
xmlWriter.WriteStartElement("Relationship");
|
|
25
|
+
xmlWriter.WriteAttributeString("Type", type);
|
|
34
26
|
filePath = filePath.replace("\\", "/");
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
27
|
+
xmlWriter.WriteAttributeString("Target", filePath);
|
|
28
|
+
xmlWriter.WriteAttributeString("Id", refId);
|
|
29
|
+
xmlWriter.WriteEndElement();
|
|
30
|
+
references.push(refId);
|
|
39
31
|
}
|
|
40
32
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
33
|
+
return {
|
|
34
|
+
get XMLWriter(): XmlWriter {
|
|
35
|
+
return xmlWriter;
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
get count(): number {
|
|
39
|
+
return references.length;
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
AddReference(refId: string, filePath: string, type: string): void {
|
|
43
|
+
if (!filePath.startsWith("/")) {
|
|
44
|
+
filePath = "/" + filePath;
|
|
45
|
+
}
|
|
46
|
+
addReference2(refId, filePath, type);
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
AddReference2: addReference2,
|
|
50
|
+
|
|
51
|
+
finish(): void {
|
|
52
|
+
xmlWriter.WriteEndElement();
|
|
53
|
+
xmlWriter.close();
|
|
54
|
+
references = [];
|
|
55
|
+
},
|
|
56
|
+
};
|
|
50
57
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
// oxlint-disable no-bitwise
|
|
1
2
|
// https://github.com/google/closure-library/blob/e877b1eac410c0d842bcda118689759512e0e26f/closure/goog/crypt/crypt.js
|
|
2
3
|
|
|
3
|
-
//tslint:disable
|
|
4
|
-
|
|
5
4
|
/**
|
|
6
5
|
* Converts a JS string to a UTF-8 "byte" array.
|
|
6
|
+
*
|
|
7
7
|
* @param {string} str 16-bit unicode string.
|
|
8
|
-
* @
|
|
8
|
+
* @returns {!number[]} UTF-8 byte array.
|
|
9
9
|
*/
|
|
10
10
|
export function stringToUtf8ByteArray(str: string): Uint8Array {
|
|
11
11
|
// TODO(user): Use native implementations if/when available
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
const out: Array<number> = [];
|
|
13
|
+
let p: number = 0;
|
|
14
14
|
for (let i = 0; i < str.length; i++) {
|
|
15
15
|
let c = str.charCodeAt(i);
|
|
16
16
|
if (c < 128) {
|
|
@@ -18,7 +18,7 @@ export function stringToUtf8ByteArray(str: string): Uint8Array {
|
|
|
18
18
|
} else if (c < 2048) {
|
|
19
19
|
out[p++] = (c >> 6) | 192;
|
|
20
20
|
out[p++] = (c & 63) | 128;
|
|
21
|
-
} else if ((c & 0xfc00)
|
|
21
|
+
} else if ((c & 0xfc00) === 0xd800 && i + 1 < str.length && (str.charCodeAt(i + 1) & 0xfc00) === 0xdc00) {
|
|
22
22
|
// Surrogate Pair
|
|
23
23
|
c = 0x10000 + ((c & 0x03ff) << 10) + (str.charCodeAt(++i) & 0x03ff);
|
|
24
24
|
out[p++] = (c >> 18) | 240;
|