@bnsights/bbsf-utilities 1.0.69 → 1.2.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/README.md +167 -2
- package/auth/index.d.ts +5 -0
- package/auth/public-api.d.ts +1 -0
- package/fesm2022/bnsights-bbsf-utilities-auth.mjs +10 -0
- package/fesm2022/bnsights-bbsf-utilities-auth.mjs.map +1 -0
- package/fesm2022/bnsights-bbsf-utilities-http.mjs +10 -0
- package/fesm2022/bnsights-bbsf-utilities-http.mjs.map +1 -0
- package/fesm2022/bnsights-bbsf-utilities-translate.mjs +10 -0
- package/fesm2022/bnsights-bbsf-utilities-translate.mjs.map +1 -0
- package/fesm2022/bnsights-bbsf-utilities-ui.mjs +10 -0
- package/fesm2022/bnsights-bbsf-utilities-ui.mjs.map +1 -0
- package/fesm2022/bnsights-bbsf-utilities.mjs +369 -3842
- package/fesm2022/bnsights-bbsf-utilities.mjs.map +1 -1
- package/http/index.d.ts +5 -0
- package/http/public-api.d.ts +4 -0
- package/lib/bbsf-utilities.module.d.ts +22 -2
- package/lib/shared/authentication/auth.service.d.ts +0 -1
- package/lib/shared/models/index.d.ts +0 -1
- package/lib/shared/services/index.d.ts +0 -1
- package/lib/shared/services/language.service.d.ts +12 -0
- package/lib/shared/services/request-handler.service.d.ts +2 -3
- package/lib/shared/services/styles-bundle.service.d.ts +7 -1
- package/package.json +32 -25
- package/public-api.d.ts +14 -12
- package/translate/index.d.ts +5 -0
- package/translate/public-api.d.ts +3 -0
- package/ui/index.d.ts +5 -0
- package/ui/public-api.d.ts +4 -0
- package/esm2022/bnsights-bbsf-utilities.mjs +0 -5
- package/esm2022/lib/bbsf-utilities.module.mjs +0 -63
- package/esm2022/lib/shared/authentication/auth.service.mjs +0 -260
- package/esm2022/lib/shared/authentication/index.mjs +0 -2
- package/esm2022/lib/shared/config/environment.mjs +0 -12
- package/esm2022/lib/shared/config/word/constants.mjs +0 -105
- package/esm2022/lib/shared/config/word/docx-document.mjs +0 -348
- package/esm2022/lib/shared/config/word/helpers/index.mjs +0 -4
- package/esm2022/lib/shared/config/word/helpers/render-document-file.mjs +0 -154
- package/esm2022/lib/shared/config/word/helpers/xml-builder.mjs +0 -1836
- package/esm2022/lib/shared/config/word/html-to-docx.mjs +0 -187
- package/esm2022/lib/shared/config/word/index.mjs +0 -50
- package/esm2022/lib/shared/config/word/namespaces.mjs +0 -37
- package/esm2022/lib/shared/config/word/schemas/content-types.mjs +0 -26
- package/esm2022/lib/shared/config/word/schemas/core.mjs +0 -27
- package/esm2022/lib/shared/config/word/schemas/document-rels.mjs +0 -16
- package/esm2022/lib/shared/config/word/schemas/document.template.mjs +0 -107
- package/esm2022/lib/shared/config/word/schemas/font-table.mjs +0 -40
- package/esm2022/lib/shared/config/word/schemas/generic-rels.mjs +0 -11
- package/esm2022/lib/shared/config/word/schemas/index.mjs +0 -13
- package/esm2022/lib/shared/config/word/schemas/numbering.mjs +0 -17
- package/esm2022/lib/shared/config/word/schemas/rels.mjs +0 -11
- package/esm2022/lib/shared/config/word/schemas/settings.mjs +0 -13
- package/esm2022/lib/shared/config/word/schemas/styles.mjs +0 -147
- package/esm2022/lib/shared/config/word/schemas/theme.mjs +0 -198
- package/esm2022/lib/shared/config/word/schemas/web-settings.mjs +0 -9
- package/esm2022/lib/shared/config/word/utils/color-conversion.mjs +0 -60
- package/esm2022/lib/shared/config/word/utils/list.mjs +0 -51
- package/esm2022/lib/shared/config/word/utils/unit-conversion.mjs +0 -30
- package/esm2022/lib/shared/config/word/utils/url.mjs +0 -7
- package/esm2022/lib/shared/config/word/utils/vnode.mjs +0 -3
- package/esm2022/lib/shared/config/word/word-work/templates/documentTemplate.mjs +0 -54
- package/esm2022/lib/shared/config/word/word-work/templates/index.mjs +0 -4
- package/esm2022/lib/shared/config/word/word-work/templates/mhtDocumentTemplate.mjs +0 -22
- package/esm2022/lib/shared/config/word/word-work/templates/mhtPartTemplate.mjs +0 -10
- package/esm2022/lib/shared/config/word/word-work/utils.mjs +0 -26
- package/esm2022/lib/shared/enums/authentication-modes-enums.mjs +0 -8
- package/esm2022/lib/shared/index.mjs +0 -4
- package/esm2022/lib/shared/models/UserModel.mjs +0 -3
- package/esm2022/lib/shared/models/area-model.mjs +0 -3
- package/esm2022/lib/shared/models/error-model.mjs +0 -3
- package/esm2022/lib/shared/models/index.mjs +0 -6
- package/esm2022/lib/shared/models/request-options-model.mjs +0 -11
- package/esm2022/lib/shared/models/speech-language.mjs +0 -3
- package/esm2022/lib/shared/models/word-document-model.mjs +0 -8
- package/esm2022/lib/shared/services/appearance-configuration.service.mjs +0 -35
- package/esm2022/lib/shared/services/configuration.service.mjs +0 -48
- package/esm2022/lib/shared/services/control-validation.service.mjs +0 -173
- package/esm2022/lib/shared/services/environment.service.mjs +0 -83
- package/esm2022/lib/shared/services/index.mjs +0 -15
- package/esm2022/lib/shared/services/language.service.mjs +0 -21
- package/esm2022/lib/shared/services/master-layout.service.mjs +0 -77
- package/esm2022/lib/shared/services/preload.service.mjs +0 -54
- package/esm2022/lib/shared/services/request-handler.service.mjs +0 -260
- package/esm2022/lib/shared/services/speech-recognition.service.mjs +0 -76
- package/esm2022/lib/shared/services/styles-bundle.service.mjs +0 -55
- package/esm2022/lib/shared/services/translate.service.mjs +0 -14
- package/esm2022/lib/shared/services/translation-resolver.service.mjs +0 -7
- package/esm2022/lib/shared/services/utility.service.mjs +0 -87
- package/esm2022/lib/shared/services/word-document.service.mjs +0 -38
- package/esm2022/public-api.mjs +0 -34
- package/lib/shared/config/word/constants.d.ts +0 -124
- package/lib/shared/config/word/docx-document.d.ts +0 -73
- package/lib/shared/config/word/helpers/index.d.ts +0 -1
- package/lib/shared/config/word/helpers/render-document-file.d.ts +0 -2
- package/lib/shared/config/word/helpers/xml-builder.d.ts +0 -16
- package/lib/shared/config/word/html-to-docx.d.ts +0 -1
- package/lib/shared/config/word/index.d.ts +0 -1
- package/lib/shared/config/word/namespaces.d.ts +0 -36
- package/lib/shared/config/word/schemas/content-types.d.ts +0 -1
- package/lib/shared/config/word/schemas/core.d.ts +0 -1
- package/lib/shared/config/word/schemas/document-rels.d.ts +0 -1
- package/lib/shared/config/word/schemas/document.template.d.ts +0 -4
- package/lib/shared/config/word/schemas/font-table.d.ts +0 -1
- package/lib/shared/config/word/schemas/generic-rels.d.ts +0 -1
- package/lib/shared/config/word/schemas/index.d.ts +0 -12
- package/lib/shared/config/word/schemas/numbering.d.ts +0 -1
- package/lib/shared/config/word/schemas/rels.d.ts +0 -1
- package/lib/shared/config/word/schemas/settings.d.ts +0 -1
- package/lib/shared/config/word/schemas/styles.d.ts +0 -1
- package/lib/shared/config/word/schemas/theme.d.ts +0 -1
- package/lib/shared/config/word/schemas/web-settings.d.ts +0 -1
- package/lib/shared/config/word/utils/color-conversion.d.ts +0 -7
- package/lib/shared/config/word/utils/list.d.ts +0 -6
- package/lib/shared/config/word/utils/unit-conversion.d.ts +0 -29
- package/lib/shared/config/word/utils/url.d.ts +0 -1
- package/lib/shared/config/word/utils/vnode.d.ts +0 -1
- package/lib/shared/config/word/word-work/templates/documentTemplate.d.ts +0 -12
- package/lib/shared/config/word/word-work/templates/index.d.ts +0 -3
- package/lib/shared/config/word/word-work/templates/mhtDocumentTemplate.d.ts +0 -1
- package/lib/shared/config/word/word-work/templates/mhtPartTemplate.d.ts +0 -1
- package/lib/shared/config/word/word-work/utils.d.ts +0 -1
- package/lib/shared/models/word-document-model.d.ts +0 -16
- package/lib/shared/services/word-document.service.d.ts +0 -8
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
import { create } from 'xmlbuilder2';
|
|
2
|
-
import VNode from 'virtual-dom/vnode/vnode';
|
|
3
|
-
import VText from 'virtual-dom/vnode/vtext';
|
|
4
|
-
// eslint-disable-next-line import/no-named-default
|
|
5
|
-
import { default as HTMLToVDOM } from 'html-to-vdom';
|
|
6
|
-
import { relsXML } from './schemas';
|
|
7
|
-
import { DocxDocument } from './docx-document';
|
|
8
|
-
import { renderDocumentFile } from './helpers';
|
|
9
|
-
import { getMHTdocument } from "./word-work/utils";
|
|
10
|
-
import { pixelRegex, pixelToTWIP, cmRegex, cmToTWIP, inchRegex, inchToTWIP, pointRegex, pointToHIP, } from './utils/unit-conversion';
|
|
11
|
-
import { defaultDocumentOptions, defaultHTMLString, relsFolderName, headerFileName, footerFileName, themeFileName, documentFileName, headerType, footerType, internalRelationship, wordFolder, themeFolder, themeType, } from './constants';
|
|
12
|
-
import { generateDocumentTemplateHeader, generateDocumentTemplateFooter, generateDocumentTemplateFooterWithoutPaging } from './schemas/document.template';
|
|
13
|
-
const convertHTML = HTMLToVDOM({
|
|
14
|
-
VNode,
|
|
15
|
-
VText,
|
|
16
|
-
});
|
|
17
|
-
const mergeOptions = (options, patch) => ({ ...options, ...patch });
|
|
18
|
-
const fixupFontSize = (fontSize) => {
|
|
19
|
-
let normalizedFontSize;
|
|
20
|
-
if (pointRegex.test(fontSize)) {
|
|
21
|
-
const matchedParts = fontSize.match(pointRegex);
|
|
22
|
-
normalizedFontSize = pointToHIP(matchedParts[1]);
|
|
23
|
-
}
|
|
24
|
-
else if (fontSize) {
|
|
25
|
-
// assuming it is already in HIP
|
|
26
|
-
normalizedFontSize = fontSize;
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
normalizedFontSize = null;
|
|
30
|
-
}
|
|
31
|
-
return normalizedFontSize;
|
|
32
|
-
};
|
|
33
|
-
const normalizeUnits = (dimensioningObject, defaultDimensionsProperty) => {
|
|
34
|
-
let normalizedUnitResult = {};
|
|
35
|
-
if (typeof dimensioningObject === 'object' && dimensioningObject !== null) {
|
|
36
|
-
Object.keys(dimensioningObject).forEach((key) => {
|
|
37
|
-
if (pixelRegex.test(dimensioningObject[key])) {
|
|
38
|
-
const matchedParts = dimensioningObject[key].match(pixelRegex);
|
|
39
|
-
normalizedUnitResult[key] = pixelToTWIP(matchedParts[1]);
|
|
40
|
-
}
|
|
41
|
-
else if (cmRegex.test(dimensioningObject[key])) {
|
|
42
|
-
const matchedParts = dimensioningObject[key].match(cmRegex);
|
|
43
|
-
normalizedUnitResult[key] = cmToTWIP(matchedParts[1]);
|
|
44
|
-
}
|
|
45
|
-
else if (inchRegex.test(dimensioningObject[key])) {
|
|
46
|
-
const matchedParts = dimensioningObject[key].match(inchRegex);
|
|
47
|
-
normalizedUnitResult[key] = inchToTWIP(matchedParts[1]);
|
|
48
|
-
}
|
|
49
|
-
else if (dimensioningObject[key]) {
|
|
50
|
-
normalizedUnitResult[key] = dimensioningObject[key];
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
// incase value is something like 0
|
|
54
|
-
normalizedUnitResult[key] = defaultDimensionsProperty[key];
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
// eslint-disable-next-line no-param-reassign
|
|
60
|
-
normalizedUnitResult = null;
|
|
61
|
-
}
|
|
62
|
-
return normalizedUnitResult;
|
|
63
|
-
};
|
|
64
|
-
const normalizeDocumentOptions = (documentOptions) => {
|
|
65
|
-
const normalizedDocumentOptions = { ...documentOptions };
|
|
66
|
-
Object.keys(documentOptions).forEach((key) => {
|
|
67
|
-
// eslint-disable-next-line default-case
|
|
68
|
-
switch (key) {
|
|
69
|
-
case 'pageSize':
|
|
70
|
-
case 'margins':
|
|
71
|
-
normalizedDocumentOptions[key] = normalizeUnits(documentOptions[key], defaultDocumentOptions[key]);
|
|
72
|
-
break;
|
|
73
|
-
case 'fontSize':
|
|
74
|
-
case 'complexScriptFontSize':
|
|
75
|
-
normalizedDocumentOptions[key] = fixupFontSize(documentOptions[key]);
|
|
76
|
-
break;
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
return normalizedDocumentOptions;
|
|
80
|
-
};
|
|
81
|
-
// Ref: https://en.wikipedia.org/wiki/Office_Open_XML_file_formats
|
|
82
|
-
// http://officeopenxml.com/anatomyofOOXML.php
|
|
83
|
-
async function addFilesToContainer(zip, htmlString, suppliedDocumentOptions, headerHTMLString, footerHTMLString) {
|
|
84
|
-
debugger;
|
|
85
|
-
const normalizedDocumentOptions = normalizeDocumentOptions(suppliedDocumentOptions);
|
|
86
|
-
const documentOptions = mergeOptions(defaultDocumentOptions, normalizedDocumentOptions);
|
|
87
|
-
if (documentOptions.header && !headerHTMLString) {
|
|
88
|
-
// eslint-disable-next-line no-param-reassign
|
|
89
|
-
headerHTMLString = defaultHTMLString;
|
|
90
|
-
}
|
|
91
|
-
if (documentOptions.footer && !footerHTMLString) {
|
|
92
|
-
// eslint-disable-next-line no-param-reassign
|
|
93
|
-
footerHTMLString = defaultHTMLString;
|
|
94
|
-
}
|
|
95
|
-
const docxDocument = new DocxDocument({ zip, htmlString, ...documentOptions });
|
|
96
|
-
// Conversion to Word XML happens here
|
|
97
|
-
docxDocument.documentXML = await renderDocumentFile(docxDocument);
|
|
98
|
-
debugger;
|
|
99
|
-
zip
|
|
100
|
-
.folder(relsFolderName)
|
|
101
|
-
.file('.rels', create({ encoding: 'UTF-8', standalone: true }, relsXML).toString({ prettyPrint: true }), { createFolders: false });
|
|
102
|
-
zip.folder('docProps').file('core.xml', docxDocument.generateCoreXML(), {
|
|
103
|
-
createFolders: false,
|
|
104
|
-
});
|
|
105
|
-
if (docxDocument.header && headerHTMLString) {
|
|
106
|
-
const vTree = convertHTML(headerHTMLString);
|
|
107
|
-
docxDocument.relationshipFilename = headerFileName;
|
|
108
|
-
const { headerId, headerXML } = await docxDocument.generateHeaderXML(vTree);
|
|
109
|
-
docxDocument.relationshipFilename = documentFileName;
|
|
110
|
-
const fileNameWithExt = `${headerType}${headerId}.xml`;
|
|
111
|
-
const relationshipId = docxDocument.createDocumentRelationships(docxDocument.relationshipFilename, headerType, fileNameWithExt, internalRelationship);
|
|
112
|
-
zip.folder(wordFolder).file(fileNameWithExt, generateDocumentTemplateHeader.toString({ prettyPrint: true }), {
|
|
113
|
-
createFolders: false,
|
|
114
|
-
});
|
|
115
|
-
docxDocument.headerObjects.push({ headerId, relationshipId, type: docxDocument.headerType });
|
|
116
|
-
}
|
|
117
|
-
if (docxDocument.footer && footerHTMLString) {
|
|
118
|
-
const vTree = convertHTML(footerHTMLString);
|
|
119
|
-
docxDocument.relationshipFilename = footerFileName;
|
|
120
|
-
const { footerId, footerXML } = await docxDocument.generateFooterXML(vTree);
|
|
121
|
-
docxDocument.relationshipFilename = documentFileName;
|
|
122
|
-
const fileNameWithExt = `${footerType}${footerId}.xml`;
|
|
123
|
-
const relationshipId = docxDocument.createDocumentRelationships(docxDocument.relationshipFilename, footerType, fileNameWithExt, internalRelationship);
|
|
124
|
-
console.log(footerXML.toString({ prettyPrint: true }));
|
|
125
|
-
if (suppliedDocumentOptions.pageNumber)
|
|
126
|
-
zip.folder(wordFolder).file(fileNameWithExt, generateDocumentTemplateFooter.toString({ prettyPrint: true }), {
|
|
127
|
-
createFolders: false,
|
|
128
|
-
});
|
|
129
|
-
else
|
|
130
|
-
zip.folder(wordFolder).file(fileNameWithExt, generateDocumentTemplateFooterWithoutPaging.toString({ prettyPrint: true }), {
|
|
131
|
-
createFolders: false,
|
|
132
|
-
});
|
|
133
|
-
docxDocument.footerObjects.push({ footerId, relationshipId, type: docxDocument.footerType });
|
|
134
|
-
}
|
|
135
|
-
const themeFileNameWithExt = `${themeFileName}.xml`;
|
|
136
|
-
docxDocument.createDocumentRelationships(docxDocument.relationshipFilename, themeType, `${themeFolder}/${themeFileNameWithExt}`, internalRelationship);
|
|
137
|
-
zip
|
|
138
|
-
.folder(wordFolder)
|
|
139
|
-
.folder(themeFolder)
|
|
140
|
-
.file(themeFileNameWithExt, docxDocument.generateThemeXML(), {
|
|
141
|
-
createFolders: false,
|
|
142
|
-
});
|
|
143
|
-
zip
|
|
144
|
-
.folder(wordFolder)
|
|
145
|
-
.file('document.xml', docxDocument.generateDocumentXML(), { createFolders: false })
|
|
146
|
-
.file('afchunk.mht', getMHTdocument(htmlString), {
|
|
147
|
-
createFolders: false,
|
|
148
|
-
})
|
|
149
|
-
.file('afchunkheader.mht', getMHTdocument(headerHTMLString), {
|
|
150
|
-
createFolders: false,
|
|
151
|
-
})
|
|
152
|
-
.file('afchunkfooter.mht', getMHTdocument(footerHTMLString), {
|
|
153
|
-
createFolders: false,
|
|
154
|
-
})
|
|
155
|
-
.file('fontTable.xml', docxDocument.generateFontTableXML(), { createFolders: false })
|
|
156
|
-
.file('styles.xml', docxDocument.generateStylesXML(), { createFolders: false })
|
|
157
|
-
.file('numbering.xml', docxDocument.generateNumberingXML(), { createFolders: false })
|
|
158
|
-
.file('settings.xml', docxDocument.generateSettingsXML(), { createFolders: false })
|
|
159
|
-
.file('webSettings.xml', docxDocument.generateWebSettingsXML(), { createFolders: false });
|
|
160
|
-
const relationshipXMLs = docxDocument.generateRelsXML();
|
|
161
|
-
if (relationshipXMLs && Array.isArray(relationshipXMLs)) {
|
|
162
|
-
relationshipXMLs.forEach(({ fileName, xmlString }) => {
|
|
163
|
-
console.log(xmlString);
|
|
164
|
-
zip.folder(wordFolder).folder(relsFolderName).file(`${fileName}.xml.rels`, xmlString, {
|
|
165
|
-
createFolders: false,
|
|
166
|
-
});
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
if (relationshipXMLs && Array.isArray(relationshipXMLs)) {
|
|
170
|
-
relationshipXMLs.forEach(({ fileName, xmlString }) => {
|
|
171
|
-
zip.folder(wordFolder).folder(relsFolderName).file(`header1.xml.rels`, xmlString, {
|
|
172
|
-
createFolders: false,
|
|
173
|
-
});
|
|
174
|
-
});
|
|
175
|
-
}
|
|
176
|
-
if (relationshipXMLs && Array.isArray(relationshipXMLs)) {
|
|
177
|
-
relationshipXMLs.forEach(({ fileName, xmlString }) => {
|
|
178
|
-
zip.folder(wordFolder).folder(relsFolderName).file(`footer1.xml.rels`, xmlString, {
|
|
179
|
-
createFolders: false,
|
|
180
|
-
});
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
zip.file('[Content_Types].xml', docxDocument.generateContentTypesXML(), { createFolders: false });
|
|
184
|
-
return zip;
|
|
185
|
-
}
|
|
186
|
-
export { addFilesToContainer };
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC10by1kb2N4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvY29uZmlnL3dvcmQvaHRtbC10by1kb2N4LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckMsT0FBTyxLQUFLLE1BQU0seUJBQXlCLENBQUM7QUFDNUMsT0FBTyxLQUFLLE1BQU0seUJBQXlCLENBQUM7QUFDNUMsbURBQW1EO0FBQ25ELE9BQU8sRUFBRSxPQUFPLElBQUksVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXJELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbEQsT0FBTyxFQUNMLFVBQVUsRUFDVixXQUFXLEVBQ1gsT0FBTyxFQUNQLFFBQVEsRUFDUixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixVQUFVLEdBQ1gsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsY0FBYyxFQUNkLGNBQWMsRUFDZCxhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3BCLFVBQVUsRUFDVixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSw4QkFBOEIsRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFKLE1BQU0sV0FBVyxHQUFHLFVBQVUs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LGdCQUFnQixDQUFDLEVBQUU7UUFDdkQsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUNuRCxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsU0FBUyxFQUFFO2dCQUNoRixhQUFhLEVBQUUsS0FBSzthQUNyQixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztLQUNKO0lBQ0QsSUFBSSxnQkFBZ0IsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUU7UUFDdkQsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUNuRCxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsU0FBUyxFQUFFO2dCQUNoRixhQUFhLEVBQUUsS0FBSzthQUNyQixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztLQUNKO0lBR0QsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxZQUFZLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBRWxHLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAneG1sYnVpbGRlcjInO1xyXG5pbXBvcnQgVk5vZGUgZnJvbSAndmlydHVhbC1kb20vdm5vZGUvdm5vZGUnO1xyXG5pbXBvcnQgVlRleHQgZnJvbSAndmlydHVhbC1kb20vdm5vZGUvdnRleHQnO1xyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLW5hbWVkLWRlZmF1bHRcclxuaW1wb3J0IHsgZGVmYXVsdCBhcyBIVE1MVG9WRE9NIH0gZnJvbSAnaHRtbC10by12ZG9tJztcclxuXHJcbmltcG9ydCB7IHJlbHNYTUwgfSBmcm9tICcuL3NjaGVtYXMnO1xyXG5pbXBvcnQgeyBEb2N4RG9jdW1lbnQgfSBmcm9tICcuL2RvY3gtZG9jdW1lbnQnO1xyXG5pbXBvcnQgeyByZW5kZXJEb2N1bWVudEZpbGUgfSBmcm9tICcuL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBnZXRNSFRkb2N1bWVudCB9IGZyb20gXCIuL3dvcmQtd29yay91dGlsc1wiXHJcbmltcG9ydCB7XHJcbiAgcGl4ZWxSZWdleCxcclxuICBwaXhlbFRvVFdJUCxcclxuICBjbVJlZ2V4LFxyXG4gIGNtVG9UV0lQLFxyXG4gIGluY2hSZWdleCxcclxuICBpbmNoVG9UV0lQLFxyXG4gIHBvaW50UmVnZXgsXHJcbiAgcG9pbnRUb0hJUCxcclxufSBmcm9tICcuL3V0aWxzL3VuaXQtY29udmVyc2lvbic7XHJcbmltcG9ydCB7XHJcbiAgZGVmYXVsdERvY3VtZW50T3B0aW9ucyxcclxuICBkZWZhdWx0SFRNTFN0cmluZyxcclxuICByZWxzRm9sZGVyTmFtZSxcclxuICBoZWFkZXJGaWxlTmFtZSxcclxuICBmb290ZXJGaWxlTmFtZSxcclxuICB0aGVtZUZpbGVOYW1lLFxyXG4gIGRvY3VtZW50RmlsZU5hbWUsXHJcbiAgaGVhZGVyVHlwZSxcclxuICBmb290ZXJUeXBlLFxyXG4gIGludGVybmFsUmVsYXRpb25zaGlwLFxyXG4gIHdvcmRGb2xkZXIsXHJcbiAgdGhlbWVGb2xkZXIsXHJcbiAgdGhlbWVUeXBlLFxyXG59IGZyb20gJy4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgZ2VuZXJhdGVEb2N1bWVudFRlbXBsYXRlSGVhZGVyLCBnZW5lcmF0ZURvY3VtZW50VGVtcGxhdGVGb290ZXIsIGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZUZvb3RlcldpdGhvdXRQYWdpbmcgfSBmcm9tICcuL3NjaGVtYXMvZG9jdW1lbnQudGVtcGxhdGUnO1xyXG5jb25zdCBjb252ZXJ0SFRNTCA9IEhUTUxUb1ZET00oe1xyXG4gIFZOb2RlLFxyXG4gIFZUZXh0LFxyXG59KTtcclxuXHJcbmNvbnN0IG1lcmdlT3B0aW9ucyA9IChvcHRpb25zLCBwYXRjaCkgPT4gKHsgLi4ub3B0aW9ucywgLi4ucGF0Y2ggfSk7XHJcblxyXG5jb25zdCBmaXh1cEZvbnRTaXplID0gKGZvbnRTaXplKSA9PiB7XHJcbiAgbGV0IG5vcm1hbGl6ZWRGb250U2l6ZTtcclxuICBpZiAocG9pbnRSZWdleC50ZXN0KGZvbnRTaXplKSkge1xyXG4gICAgY29uc3QgbWF0Y2hlZFBhcnRzID0gZm9udFNpemUubWF0Y2gocG9pbnRSZWdleCk7XHJcblxyXG4gICAgbm9ybWFsaXplZEZvbnRTaXplID0gcG9pbnRUb0hJUChtYXRjaGVkUGFydHNbMV0pO1xyXG4gIH0gZWxzZSBpZiAoZm9udFNpemUpIHtcclxuICAgIC8vIGFzc3VtaW5nIGl0IGlzIGFscmVhZHkgaW4gSElQXHJcbiAgICBub3JtYWxpemVkRm9udFNpemUgPSBmb250U2l6ZTtcclxuICB9IGVsc2Uge1xyXG4gICAgbm9ybWFsaXplZEZvbnRTaXplID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHJldHVybiBub3JtYWxpemVkRm9udFNpemU7XHJcbn07XHJcblxyXG5jb25zdCBub3JtYWxpemVVbml0cyA9IChkaW1lbnNpb25pbmdPYmplY3QsIGRlZmF1bHREaW1lbnNpb25zUHJvcGVydHkpID0+IHtcclxuICBsZXQgbm9ybWFsaXplZFVuaXRSZXN1bHQgPSB7fTtcclxuICBpZiAodHlwZW9mIGRpbWVuc2lvbmluZ09iamVjdCA9PT0gJ29iamVjdCcgJiYgZGltZW5zaW9uaW5nT2JqZWN0ICE9PSBudWxsKSB7XHJcbiAgICBPYmplY3Qua2V5cyhkaW1lbnNpb25pbmdPYmplY3QpLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBpZiAocGl4ZWxSZWdleC50ZXN0KGRpbWVuc2lvbmluZ09iamVjdFtrZXldKSkge1xyXG4gICAgICAgIGNvbnN0IG1hdGNoZWRQYXJ0cyA9IGRpbWVuc2lvbmluZ09iamVjdFtrZXldLm1hdGNoKHBpeGVsUmVnZXgpO1xyXG4gICAgICAgIG5vcm1hbGl6ZWRVbml0UmVzdWx0W2tleV0gPSBwaXhlbFRvVFdJUChtYXRjaGVkUGFydHNbMV0pO1xyXG4gICAgICB9IGVsc2UgaWYgKGNtUmVnZXgudGVzdChkaW1lbnNpb25pbmdPYmplY3Rba2V5XSkpIHtcclxuICAgICAgICBjb25zdCBtYXRjaGVkUGFydHMgPSBkaW1lbnNpb25pbmdPYmplY3Rba2V5XS5tYXRjaChjbVJlZ2V4KTtcclxuICAgICAgICBub3JtYWxpemVkVW5pdFJlc3VsdFtrZXldID0gY21Ub1RXSVAobWF0Y2hlZFBhcnRzWzFdKTtcclxuICAgICAgfSBlbHNlIGlmIChpbmNoUmVnZXgudGVzdChkaW1lbnNpb25pbmdPYmplY3Rba2V5XSkpIHtcclxuICAgICAgICBjb25zdCBtYXRjaGVkUGFydHMgPSBkaW1lbnNpb25pbmdPYmplY3Rba2V5XS5tYXRjaChpbmNoUmVnZXgpO1xyXG4gICAgICAgIG5vcm1hbGl6ZWRVbml0UmVzdWx0W2tleV0gPSBpbmNoVG9UV0lQKG1hdGNoZWRQYXJ0c1sxXSk7XHJcbiAgICAgIH0gZWxzZSBpZiAoZGltZW5zaW9uaW5nT2JqZWN0W2tleV0pIHtcclxuICAgICAgICBub3JtYWxpemVkVW5pdFJlc3VsdFtrZXldID0gZGltZW5zaW9uaW5nT2JqZWN0W2tleV07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgLy8gaW5jYXNlIHZhbHVlIGlzIHNvbWV0aGluZyBsaWtlIDBcclxuICAgICAgICBub3JtYWxpemVkVW5pdFJlc3VsdFtrZXldID0gZGVmYXVsdERpbWVuc2lvbnNQcm9wZXJ0eVtrZXldO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9IGVsc2Uge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXHJcbiAgICBub3JtYWxpemVkVW5pdFJlc3VsdCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gbm9ybWFsaXplZFVuaXRSZXN1bHQ7XHJcbn07XHJcblxyXG5jb25zdCBub3JtYWxpemVEb2N1bWVudE9wdGlvbnMgPSAoZG9jdW1lbnRPcHRpb25zKSA9PiB7XHJcbiAgY29uc3Qgbm9ybWFsaXplZERvY3VtZW50T3B0aW9ucyA9IHsgLi4uZG9jdW1lbnRPcHRpb25zIH07XHJcbiAgT2JqZWN0LmtleXMoZG9jdW1lbnRPcHRpb25zKS5mb3JFYWNoKChrZXkpID0+IHtcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWZhdWx0LWNhc2VcclxuICAgIHN3aXRjaCAoa2V5KSB7XHJcbiAgICAgIGNhc2UgJ3BhZ2VTaXplJzpcclxuICAgICAgY2FzZSAnbWFyZ2lucyc6XHJcbiAgICAgICAgbm9ybWFsaXplZERvY3VtZW50T3B0aW9uc1trZXldID0gbm9ybWFsaXplVW5pdHMoXHJcbiAgICAgICAgICBkb2N1bWVudE9wdGlvbnNba2V5XSxcclxuICAgICAgICAgIGRlZmF1bHREb2N1bWVudE9wdGlvbnNba2V5XVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2ZvbnRTaXplJzpcclxuICAgICAgY2FzZSAnY29tcGxleFNjcmlwdEZvbnRTaXplJzpcclxuICAgICAgICBub3JtYWxpemVkRG9jdW1lbnRPcHRpb25zW2tleV0gPSBmaXh1cEZvbnRTaXplKGRvY3VtZW50T3B0aW9uc1trZXldKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9KTtcclxuXHJcbiAgcmV0dXJuIG5vcm1hbGl6ZWREb2N1bWVudE9wdGlvbnM7XHJcbn07XHJcblxyXG4vLyBSZWY6IGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL09mZmljZV9PcGVuX1hNTF9maWxlX2Zvcm1hdHNcclxuLy8gaHR0cDovL29mZmljZW9wZW54bWwuY29tL2FuYXRvbXlvZk9PWE1MLnBocFxyXG5hc3luYyBmdW5jdGlvbiBhZGRGaWxlc1RvQ29udGFpbmVyKFxyXG4gIHppcCxcclxuICBodG1sU3RyaW5nLFxyXG4gIHN1cHBsaWVkRG9jdW1lbnRPcHRpb25zLFxyXG4gIGhlYWRlckhUTUxTdHJpbmcsXHJcbiAgZm9vdGVySFRNTFN0cmluZ1xyXG4pIHtcclxuICBkZWJ1Z2dlcjtcclxuICBjb25zdCBub3JtYWxpemVkRG9jdW1lbnRPcHRpb25zID0gbm9ybWFsaXplRG9jdW1lbnRPcHRpb25zKHN1cHBsaWVkRG9jdW1lbnRPcHRpb25zKTtcclxuICBjb25zdCBkb2N1bWVudE9wdGlvbnMgPSBtZXJnZU9wdGlvbnMoZGVmYXVsdERvY3VtZW50T3B0aW9ucywgbm9ybWFsaXplZERvY3VtZW50T3B0aW9ucyk7XHJcblxyXG4gIGlmIChkb2N1bWVudE9wdGlvbnMuaGVhZGVyICYmICFoZWFkZXJIVE1MU3RyaW5nKSB7XHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cclxuICAgIGhlYWRlckhUTUxTdHJpbmcgPSBkZWZhdWx0SFRNTFN0cmluZztcclxuICB9XHJcbiAgaWYgKGRvY3VtZW50T3B0aW9ucy5mb290ZXIgJiYgIWZvb3RlckhUTUxTdHJpbmcpIHtcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxyXG4gICAgZm9vdGVySFRNTFN0cmluZyA9IGRlZmF1bHRIVE1MU3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgZG9jeERvY3VtZW50ID0gbmV3IERvY3hEb2N1bWVudCh7IHppcCwgaHRtbFN0cmluZywgLi4uZG9jdW1lbnRPcHRpb25zIH0pO1xyXG4gIC8vIENvbnZlcnNpb24gdG8gV29yZCBYTUwgaGFwcGVucyBoZXJlXHJcbiAgZG9jeERvY3VtZW50LmRvY3VtZW50WE1MID0gYXdhaXQgcmVuZGVyRG9jdW1lbnRGaWxlKGRvY3hEb2N1bWVudCk7XHJcbiAgZGVidWdnZXI7XHJcbiAgemlwXHJcbiAgICAuZm9sZGVyKHJlbHNGb2xkZXJOYW1lKVxyXG4gICAgLmZpbGUoXHJcbiAgICAgICcucmVscycsXHJcbiAgICAgIGNyZWF0ZSh7IGVuY29kaW5nOiAnVVRGLTgnLCBzdGFuZGFsb25lOiB0cnVlIH0sIHJlbHNYTUwpLnRvU3RyaW5nKHsgcHJldHR5UHJpbnQ6IHRydWUgfSksXHJcbiAgICAgIHsgY3JlYXRlRm9sZGVyczogZmFsc2UgfVxyXG4gICAgKTtcclxuXHJcbiAgemlwLmZvbGRlcignZG9jUHJvcHMnKS5maWxlKCdjb3JlLnhtbCcsIGRvY3hEb2N1bWVudC5nZW5lcmF0ZUNvcmVYTUwoKSwge1xyXG4gICAgY3JlYXRlRm9sZGVyczogZmFsc2UsXHJcbiAgfSk7XHJcblxyXG4gIGlmIChkb2N4RG9jdW1lbnQuaGVhZGVyICYmIGhlYWRlckhUTUxTdHJpbmcpIHtcclxuICAgIGNvbnN0IHZUcmVlID0gY29udmVydEhUTUwoaGVhZGVySFRNTFN0cmluZyk7XHJcblxyXG4gICAgZG9jeERvY3VtZW50LnJlbGF0aW9uc2hpcEZpbGVuYW1lID0gaGVhZGVyRmlsZU5hbWU7XHJcbiAgICBjb25zdCB7IGhlYWRlcklkLCBoZWFkZXJYTUwgfSA9IGF3YWl0IGRvY3hEb2N1bWVudC5nZW5lcmF0ZUhlYWRlclhNTCh2VHJlZSk7XHJcbiAgICBkb2N4RG9jdW1lbnQucmVsYXRpb25zaGlwRmlsZW5hbWUgPSBkb2N1bWVudEZpbGVOYW1lO1xyXG4gICAgY29uc3QgZmlsZU5hbWVXaXRoRXh0ID0gYCR7aGVhZGVyVHlwZX0ke2hlYWRlcklkfS54bWxgO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9uc2hpcElkID0gZG9jeERvY3VtZW50LmNyZWF0ZURvY3VtZW50UmVsYXRpb25zaGlwcyhcclxuICAgICAgZG9jeERvY3VtZW50LnJlbGF0aW9uc2hpcEZpbGVuYW1lLFxyXG4gICAgICBoZWFkZXJUeXBlLFxyXG4gICAgICBmaWxlTmFtZVdpdGhFeHQsXHJcbiAgICAgIGludGVybmFsUmVsYXRpb25zaGlwXHJcbiAgICApO1xyXG5cclxuICAgIHppcC5mb2xkZXIod29yZEZvbGRlcikuZmlsZShmaWxlTmFtZVdpdGhFeHQsIGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZUhlYWRlci50b1N0cmluZyh7IHByZXR0eVByaW50OiB0cnVlIH0pLCB7XHJcbiAgICAgIGNyZWF0ZUZvbGRlcnM6IGZhbHNlLFxyXG4gICAgfSk7XHJcblxyXG4gICAgZG9jeERvY3VtZW50LmhlYWRlck9iamVjdHMucHVzaCh7IGhlYWRlcklkLCByZWxhdGlvbnNoaXBJZCwgdHlwZTogZG9jeERvY3VtZW50LmhlYWRlclR5cGUgfSk7XHJcbiAgfVxyXG4gIGlmIChkb2N4RG9jdW1lbnQuZm9vdGVyICYmIGZvb3RlckhUTUxTdHJpbmcpIHtcclxuICAgIGNvbnN0IHZUcmVlID0gY29udmVydEhUTUwoZm9vdGVySFRNTFN0cmluZyk7XHJcblxyXG4gICAgZG9jeERvY3VtZW50LnJlbGF0aW9uc2hpcEZpbGVuYW1lID0gZm9vdGVyRmlsZU5hbWU7XHJcbiAgICBjb25zdCB7IGZvb3RlcklkLCBmb290ZXJYTUwgfSA9IGF3YWl0IGRvY3hEb2N1bWVudC5nZW5lcmF0ZUZvb3RlclhNTCh2VHJlZSk7XHJcbiAgICBkb2N4RG9jdW1lbnQucmVsYXRpb25zaGlwRmlsZW5hbWUgPSBkb2N1bWVudEZpbGVOYW1lO1xyXG4gICAgY29uc3QgZmlsZU5hbWVXaXRoRXh0ID0gYCR7Zm9vdGVyVHlwZX0ke2Zvb3RlcklkfS54bWxgO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9uc2hpcElkID0gZG9jeERvY3VtZW50LmNyZWF0ZURvY3VtZW50UmVsYXRpb25zaGlwcyhcclxuICAgICAgZG9jeERvY3VtZW50LnJlbGF0aW9uc2hpcEZpbGVuYW1lLFxyXG4gICAgICBmb290ZXJUeXBlLFxyXG4gICAgICBmaWxlTmFtZVdpdGhFeHQsXHJcbiAgICAgIGludGVybmFsUmVsYXRpb25zaGlwXHJcbiAgICApO1xyXG4gICAgY29uc29sZS5sb2coZm9vdGVyWE1MLnRvU3RyaW5nKHsgcHJldHR5UHJpbnQ6IHRydWUgfSkpXHJcblxyXG4gICAgaWYgKHN1cHBsaWVkRG9jdW1lbnRPcHRpb25zLnBhZ2VOdW1iZXIpXHJcbiAgICAgIHppcC5mb2xkZXIod29yZEZvbGRlcikuZmlsZShmaWxlTmFtZVdpdGhFeHQsIGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZUZvb3Rlci50b1N0cmluZyh7IHByZXR0eVByaW50OiB0cnVlIH0pLCB7XHJcbiAgICAgICAgY3JlYXRlRm9sZGVyczogZmFsc2UsXHJcbiAgICAgIH0pO1xyXG4gICAgZWxzZVxyXG4gICAgICB6aXAuZm9sZGVyKHdvcmRGb2xkZXIpLmZpbGUoZmlsZU5hbWVXaXRoRXh0LCBnZW5lcmF0ZURvY3VtZW50VGVtcGxhdGVGb290ZXJXaXRob3V0UGFnaW5nLnRvU3RyaW5nKHsgcHJldHR5UHJpbnQ6IHRydWUgfSksIHtcclxuICAgICAgICBjcmVhdGVGb2xkZXJzOiBmYWxzZSxcclxuICAgICAgfSk7XHJcblxyXG4gICAgZG9jeERvY3VtZW50LmZvb3Rlck9iamVjdHMucHVzaCh7IGZvb3RlcklkLCByZWxhdGlvbnNoaXBJZCwgdHlwZTogZG9jeERvY3VtZW50LmZvb3RlclR5cGUgfSk7XHJcbiAgfVxyXG4gIGNvbnN0IHRoZW1lRmlsZU5hbWVXaXRoRXh0ID0gYCR7dGhlbWVGaWxlTmFtZX0ueG1sYDtcclxuICBkb2N4RG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRSZWxhdGlvbnNoaXBzKFxyXG4gICAgZG9jeERvY3VtZW50LnJlbGF0aW9uc2hpcEZpbGVuYW1lLFxyXG4gICAgdGhlbWVUeXBlLFxyXG4gICAgYCR7dGhlbWVGb2xkZXJ9LyR7dGhlbWVGaWxlTmFtZVdpdGhFeHR9YCxcclxuICAgIGludGVybmFsUmVsYXRpb25zaGlwXHJcbiAgKTtcclxuICB6aXBcclxuICAgIC5mb2xkZXIod29yZEZvbGRlcilcclxuICAgIC5mb2xkZXIodGhlbWVGb2xkZXIpXHJcbiAgICAuZmlsZSh0aGVtZUZpbGVOYW1lV2l0aEV4dCwgZG9jeERvY3VtZW50LmdlbmVyYXRlVGhlbWVYTUwoKSwge1xyXG4gICAgICBjcmVhdGVGb2xkZXJzOiBmYWxzZSxcclxuICAgIH0pO1xyXG5cclxuICB6aXBcclxuICAgIC5mb2xkZXIod29yZEZvbGRlcilcclxuICAgIC5maWxlKCdkb2N1bWVudC54bWwnLCBkb2N4RG9jdW1lbnQuZ2VuZXJhdGVEb2N1bWVudFhNTCgpLCB7IGNyZWF0ZUZvbGRlcnM6IGZhbHNlIH0pXHJcbiAgICAuZmlsZSgnYWZjaHVuay5taHQnLCBnZXRNSFRkb2N1bWVudChodG1sU3RyaW5nKSwge1xyXG4gICAgICBjcmVhdGVGb2xkZXJzOiBmYWxzZSxcclxuICAgIH0pXHJcbiAgICAuZmlsZSgnYWZjaHVua2hlYWRlci5taHQnLCBnZXRNSFRkb2N1bWVudChoZWFkZXJIVE1MU3RyaW5nKSwge1xyXG4gICAgICBjcmVhdGVGb2xkZXJzOiBmYWxzZSxcclxuICAgIH0pXHJcbiAgICAuZmlsZSgnYWZjaHVua2Zvb3Rlci5taHQnLCBnZXRNSFRkb2N1bWVudChmb290ZXJIVE1MU3RyaW5nKSwge1xyXG4gICAgICBjcmVhdGVGb2xkZXJzOiBmYWxzZSxcclxuICAgIH0pXHJcbiAgICAuZmlsZSgnZm9udFRhYmxlLnhtbCcsIGRvY3hEb2N1bWVudC5nZW5lcmF0ZUZvbnRUYWJsZVhNTCgpLCB7IGNyZWF0ZUZvbGRlcnM6IGZhbHNlIH0pXHJcbiAgICAuZmlsZSgnc3R5bGVzLnhtbCcsIGRvY3hEb2N1bWVudC5nZW5lcmF0ZVN0eWxlc1hNTCgpLCB7IGNyZWF0ZUZvbGRlcnM6IGZhbHNlIH0pXHJcbiAgICAuZmlsZSgnbnVtYmVyaW5nLnhtbCcsIGRvY3hEb2N1bWVudC5nZW5lcmF0ZU51bWJlcmluZ1hNTCgpLCB7IGNyZWF0ZUZvbGRlcnM6IGZhbHNlIH0pXHJcbiAgICAuZmlsZSgnc2V0dGluZ3MueG1sJywgZG9jeERvY3VtZW50LmdlbmVyYXRlU2V0dGluZ3NYTUwoKSwgeyBjcmVhdGVGb2xkZXJzOiBmYWxzZSB9KVxyXG4gICAgLmZpbGUoJ3dlYlNldHRpbmdzLnhtbCcsIGRvY3hEb2N1bWVudC5nZW5lcmF0ZVdlYlNldHRpbmdzWE1MKCksIHsgY3JlYXRlRm9sZGVyczogZmFsc2UgfSk7XHJcblxyXG4gIGNvbnN0IHJlbGF0aW9uc2hpcFhNTHMgPSBkb2N4RG9jdW1lbnQuZ2VuZXJhdGVSZWxzWE1MKCk7XHJcbiAgaWYgKHJlbGF0aW9uc2hpcFhNTHMgJiYgQXJyYXkuaXNBcnJheShyZWxhdGlvbnNoaXBYTUxzKSkge1xyXG4gICAgcmVsYXRpb25zaGlwWE1Mcy5mb3JFYWNoKCh7IGZpbGVOYW1lLCB4bWxTdHJpbmcgfSkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyh4bWxTdHJpbmcpXHJcbiAgICAgIHppcC5mb2xkZXIod29yZEZvbGRlcikuZm9sZGVyKHJlbHNGb2xkZXJOYW1lKS5maWxlKGAke2ZpbGVOYW1lfS54bWwucmVsc2AsIHhtbFN0cmluZywge1xyXG4gICAgICAgIGNyZWF0ZUZvbGRlcnM6IGZhbHNlLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaWYgKHJlbGF0aW9uc2hpcFhNTHMgJiYgQXJyYXkuaXNBcnJheShyZWxhdGlvbnNoaXBYTUxzKSkge1xyXG4gICAgcmVsYXRpb25zaGlwWE1Mcy5mb3JFYWNoKCh7IGZpbGVOYW1lLCB4bWxTdHJpbmcgfSkgPT4ge1xyXG4gICAgICB6aXAuZm9sZGVyKHdvcmRGb2xkZXIpLmZvbGRlcihyZWxzRm9sZGVyTmFtZSkuZmlsZShgaGVhZGVyMS54bWwucmVsc2AsIHhtbFN0cmluZywge1xyXG4gICAgICAgIGNyZWF0ZUZvbGRlcnM6IGZhbHNlLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBpZiAocmVsYXRpb25zaGlwWE1McyAmJiBBcnJheS5pc0FycmF5KHJlbGF0aW9uc2hpcFhNTHMpKSB7XHJcbiAgICByZWxhdGlvbnNoaXBYTUxzLmZvckVhY2goKHsgZmlsZU5hbWUsIHhtbFN0cmluZyB9KSA9PiB7XHJcbiAgICAgIHppcC5mb2xkZXIod29yZEZvbGRlcikuZm9sZGVyKHJlbHNGb2xkZXJOYW1lKS5maWxlKGBmb290ZXIxLnhtbC5yZWxzYCwgeG1sU3RyaW5nLCB7XHJcbiAgICAgICAgY3JlYXRlRm9sZGVyczogZmFsc2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgemlwLmZpbGUoJ1tDb250ZW50X1R5cGVzXS54bWwnLCBkb2N4RG9jdW1lbnQuZ2VuZXJhdGVDb250ZW50VHlwZXNYTUwoKSwgeyBjcmVhdGVGb2xkZXJzOiBmYWxzZSB9KTtcclxuXHJcbiAgcmV0dXJuIHppcDtcclxufVxyXG5cclxuZXhwb3J0IHsgYWRkRmlsZXNUb0NvbnRhaW5lciB9O1xyXG4iXX0=
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-useless-escape */
|
|
2
|
-
import JSZip from 'jszip';
|
|
3
|
-
import { addFilesToContainer } from './html-to-docx';
|
|
4
|
-
const minifyHTMLString = (htmlString) => {
|
|
5
|
-
try {
|
|
6
|
-
if (typeof htmlString === 'string' || htmlString instanceof String) {
|
|
7
|
-
const minifiedHTMLString = htmlString
|
|
8
|
-
.replace(/\n/g, ' ')
|
|
9
|
-
.replace(/\r/g, ' ')
|
|
10
|
-
.replace(/\r\n/g, ' ')
|
|
11
|
-
.replace(/[\t]+\</g, '<')
|
|
12
|
-
.replace(/\>[\t ]+\</g, '><')
|
|
13
|
-
.replace(/\>[\t ]+$/g, '>');
|
|
14
|
-
return minifiedHTMLString;
|
|
15
|
-
}
|
|
16
|
-
throw new Error('invalid html string');
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
async function generateContainer(htmlString, headerHTMLString, documentOptions = {}, footerHTMLString) {
|
|
23
|
-
const zip = new JSZip();
|
|
24
|
-
let contentHTML = htmlString;
|
|
25
|
-
let headerHTML = headerHTMLString;
|
|
26
|
-
let footerHTML = footerHTMLString;
|
|
27
|
-
if (htmlString) {
|
|
28
|
-
contentHTML = minifyHTMLString(contentHTML);
|
|
29
|
-
}
|
|
30
|
-
if (headerHTMLString) {
|
|
31
|
-
headerHTML = minifyHTMLString(headerHTML);
|
|
32
|
-
}
|
|
33
|
-
if (footerHTMLString) {
|
|
34
|
-
footerHTML = minifyHTMLString(footerHTML);
|
|
35
|
-
}
|
|
36
|
-
await addFilesToContainer(zip, contentHTML, documentOptions, headerHTML, footerHTML);
|
|
37
|
-
const buffer = await zip.generateAsync({ type: 'arraybuffer' });
|
|
38
|
-
if (Object.prototype.hasOwnProperty.call(global, 'Buffer')) {
|
|
39
|
-
return Buffer.from(new Uint8Array(buffer));
|
|
40
|
-
}
|
|
41
|
-
if (Object.prototype.hasOwnProperty.call(global, 'Blob')) {
|
|
42
|
-
// eslint-disable-next-line no-undef
|
|
43
|
-
return new Blob([buffer], {
|
|
44
|
-
type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
throw new Error('Add blob support using a polyfill eg https://github.com/bjornstar/blob-polyfill');
|
|
48
|
-
}
|
|
49
|
-
export { generateContainer };
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9jb25maWcvd29yZC9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQ0FBc0M7QUFDdEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsRUFBRTtJQUN0QyxJQUFJO1FBQ0YsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLElBQUksVUFBVSxZQUFZLE1BQU0sRUFBRTtZQUNsRSxNQUFNLGtCQUFrQixHQUFHLFVBQVU7aUJBQ2xDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDO2lCQUNuQixPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQztpQkFDbkIsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7aUJBQ3JCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDO2lCQUN4QixPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQztpQkFDNUIsT0FBTyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUU5QixPQUFPLGtCQUFrQixDQUFDO1NBQzNCO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBQ3hDO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsS0FBSyxVQUFVLGlCQUFpQixDQUM5QixVQUFVLEVBQ1YsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FBRyxFQUFFLEVBQ3BCLGdCQUFnQjtJQUVoQixNQUFNLEdBQUcsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0lBRXhCLElBQUksV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUM3QixJQUFJLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztJQUNsQyxJQUFJLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztJQUNsQyxJQUFJLFVBQVUsRUFBRTtRQUNkLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztLQUM3QztJQUNELElBQUksZ0JBQWdCLEVBQUU7UUFDcEIsVUFBVSxHQUFHLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQzNDO0lBQ0QsSUFBSSxnQkFBZ0IsRUFBRTtRQUNwQixVQUFVLEdBQUcsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7S0FDM0M7SUFFRCxNQUFNLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUVyRixNQUFNLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUNoRSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUU7UUFDMUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7S0FDNUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDeEQsb0NBQW9DO1FBQ3BDLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN4QixJQUFJLEVBQUUseUVBQXlFO1NBQ2hGLENBQUMsQ0FBQztLQUNKO0lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FDYixpRkFBaUYsQ0FDbEYsQ0FBQztBQUNKLENBQUM7QUFFRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXVzZWxlc3MtZXNjYXBlICovXHJcbmltcG9ydCBKU1ppcCBmcm9tICdqc3ppcCc7XHJcbmltcG9ydCB7YWRkRmlsZXNUb0NvbnRhaW5lcn0gZnJvbSAnLi9odG1sLXRvLWRvY3gnO1xyXG5cclxuY29uc3QgbWluaWZ5SFRNTFN0cmluZyA9IChodG1sU3RyaW5nKSA9PiB7XHJcbiAgdHJ5IHtcclxuICAgIGlmICh0eXBlb2YgaHRtbFN0cmluZyA9PT0gJ3N0cmluZycgfHwgaHRtbFN0cmluZyBpbnN0YW5jZW9mIFN0cmluZykge1xyXG4gICAgICBjb25zdCBtaW5pZmllZEhUTUxTdHJpbmcgPSBodG1sU3RyaW5nXHJcbiAgICAgICAgLnJlcGxhY2UoL1xcbi9nLCAnICcpXHJcbiAgICAgICAgLnJlcGxhY2UoL1xcci9nLCAnICcpXHJcbiAgICAgICAgLnJlcGxhY2UoL1xcclxcbi9nLCAnICcpXHJcbiAgICAgICAgLnJlcGxhY2UoL1tcXHRdK1xcPC9nLCAnPCcpXHJcbiAgICAgICAgLnJlcGxhY2UoL1xcPltcXHQgXStcXDwvZywgJz48JylcclxuICAgICAgICAucmVwbGFjZSgvXFw+W1xcdCBdKyQvZywgJz4nKTtcclxuXHJcbiAgICAgIHJldHVybiBtaW5pZmllZEhUTUxTdHJpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGh0bWwgc3RyaW5nJyk7XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufTtcclxuXHJcbmFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlQ29udGFpbmVyKFxyXG4gIGh0bWxTdHJpbmcsXHJcbiAgaGVhZGVySFRNTFN0cmluZyxcclxuICBkb2N1bWVudE9wdGlvbnMgPSB7fSxcclxuICBmb290ZXJIVE1MU3RyaW5nXHJcbikge1xyXG4gIGNvbnN0IHppcCA9IG5ldyBKU1ppcCgpO1xyXG5cclxuICBsZXQgY29udGVudEhUTUwgPSBodG1sU3RyaW5nO1xyXG4gIGxldCBoZWFkZXJIVE1MID0gaGVhZGVySFRNTFN0cmluZztcclxuICBsZXQgZm9vdGVySFRNTCA9IGZvb3RlckhUTUxTdHJpbmc7XHJcbiAgaWYgKGh0bWxTdHJpbmcpIHtcclxuICAgIGNvbnRlbnRIVE1MID0gbWluaWZ5SFRNTFN0cmluZyhjb250ZW50SFRNTCk7XHJcbiAgfVxyXG4gIGlmIChoZWFkZXJIVE1MU3RyaW5nKSB7XHJcbiAgICBoZWFkZXJIVE1MID0gbWluaWZ5SFRNTFN0cmluZyhoZWFkZXJIVE1MKTtcclxuICB9XHJcbiAgaWYgKGZvb3RlckhUTUxTdHJpbmcpIHtcclxuICAgIGZvb3RlckhUTUwgPSBtaW5pZnlIVE1MU3RyaW5nKGZvb3RlckhUTUwpO1xyXG4gIH1cclxuXHJcbiAgYXdhaXQgYWRkRmlsZXNUb0NvbnRhaW5lcih6aXAsIGNvbnRlbnRIVE1MLCBkb2N1bWVudE9wdGlvbnMsIGhlYWRlckhUTUwsIGZvb3RlckhUTUwpO1xyXG5cclxuICBjb25zdCBidWZmZXIgPSBhd2FpdCB6aXAuZ2VuZXJhdGVBc3luYyh7IHR5cGU6ICdhcnJheWJ1ZmZlcicgfSk7XHJcbiAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChnbG9iYWwsICdCdWZmZXInKSkge1xyXG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKG5ldyBVaW50OEFycmF5KGJ1ZmZlcikpO1xyXG4gIH1cclxuICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGdsb2JhbCwgJ0Jsb2InKSkge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXHJcbiAgICByZXR1cm4gbmV3IEJsb2IoW2J1ZmZlcl0sIHtcclxuICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JyxcclxuICAgIH0pO1xyXG4gIH1cclxuICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAnQWRkIGJsb2Igc3VwcG9ydCB1c2luZyBhIHBvbHlmaWxsIGVnIGh0dHBzOi8vZ2l0aHViLmNvbS9iam9ybnN0YXIvYmxvYi1wb2x5ZmlsbCdcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQge2dlbmVyYXRlQ29udGFpbmVyfTtcclxuIl19
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
const namespaces = {
|
|
2
|
-
a: 'http://schemas.openxmlformats.org/drawingml/2006/main',
|
|
3
|
-
b: 'http://schemas.openxmlformats.org/officeDocument/2006/bibliography',
|
|
4
|
-
cdr: 'http://schemas.openxmlformats.org/drawingml/2006/chartDrawing',
|
|
5
|
-
dc: 'http://purl.org/dc/elements/1.1/',
|
|
6
|
-
dcmitype: 'http://purl.org/dc/dcmitype/',
|
|
7
|
-
dcterms: 'http://purl.org/dc/terms/',
|
|
8
|
-
o: 'urn:schemas-microsoft-com:office:office',
|
|
9
|
-
pic: 'http://schemas.openxmlformats.org/drawingml/2006/picture',
|
|
10
|
-
r: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
|
|
11
|
-
v: 'urn:schemas-microsoft-com:vml',
|
|
12
|
-
ve: 'http://schemas.openxmlformats.org/markup-compatibility/2006',
|
|
13
|
-
vt: 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes',
|
|
14
|
-
w: 'http://schemas.openxmlformats.org/wordprocessingml/2006/main',
|
|
15
|
-
w10: 'urn:schemas-microsoft-com:office:word',
|
|
16
|
-
wp: 'http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing',
|
|
17
|
-
wne: 'http://schemas.microsoft.com/office/word/2006/wordml',
|
|
18
|
-
xsd: 'http://www.w3.org/2001/XMLSchema',
|
|
19
|
-
xsi: 'http://www.w3.org/2001/XMLSchema-instance',
|
|
20
|
-
numbering: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering',
|
|
21
|
-
hyperlinks: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink',
|
|
22
|
-
images: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image',
|
|
23
|
-
styles: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles',
|
|
24
|
-
headers: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/header',
|
|
25
|
-
footers: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer',
|
|
26
|
-
themes: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme',
|
|
27
|
-
coreProperties: 'http://schemas.openxmlformats.org/package/2006/metadata/core-properties',
|
|
28
|
-
officeDocumentRelation: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument',
|
|
29
|
-
corePropertiesRelation: 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties',
|
|
30
|
-
settingsRelation: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings',
|
|
31
|
-
webSettingsRelation: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings',
|
|
32
|
-
sl: 'http://schemas.openxmlformats.org/schemaLibrary/2006/main',
|
|
33
|
-
contentTypes: 'http://schemas.openxmlformats.org/package/2006/content-types',
|
|
34
|
-
relationship: 'http://schemas.openxmlformats.org/package/2006/relationships',
|
|
35
|
-
};
|
|
36
|
-
export default namespaces;
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL25hbWVzcGFjZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLEdBQUc7SUFDakIsQ0FBQyxFQUFFLHVEQUF1RDtJQUMxRCxDQUFDLEVBQUUsb0VBQW9FO0lBQ3ZFLEdBQUcsRUFBRSwrREFBK0Q7SUFDcEUsRUFBRSxFQUFFLGtDQUFrQztJQUN0QyxRQUFRLEVBQUUsOEJBQThCO0lBQ3hDLE9BQU8sRUFBRSwyQkFBMkI7SUFDcEMsQ0FBQyxFQUFFLHlDQUF5QztJQUM1QyxHQUFHLEVBQUUsMERBQTBEO0lBQy9ELENBQUMsRUFBRSxxRUFBcUU7SUFDeEUsQ0FBQyxFQUFFLCtCQUErQjtJQUNsQyxFQUFFLEVBQUUsNkRBQTZEO0lBQ2pFLEVBQUUsRUFBRSxzRUFBc0U7SUFDMUUsQ0FBQyxFQUFFLDhEQUE4RDtJQUNqRSxHQUFHLEVBQUUsdUNBQXVDO0lBQzVDLEVBQUUsRUFBRSx3RUFBd0U7SUFDNUUsR0FBRyxFQUFFLHNEQUFzRDtJQUMzRCxHQUFHLEVBQUUsa0NBQWtDO0lBQ3ZDLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaEQsU0FBUyxFQUFFLCtFQUErRTtJQUMxRixVQUFVLEVBQUUsK0VBQStFO0lBQzNGLE1BQU0sRUFBRSwyRUFBMkU7SUFDbkYsTUFBTSxFQUFFLDRFQUE0RTtJQUNwRixPQUFPLEVBQUUsNEVBQTRFO0lBQ3JGLE9BQU8sRUFBRSw0RUFBNEU7SUFDckYsTUFBTSxFQUFFLDJFQUEyRTtJQUNuRixjQUFjLEVBQUUseUVBQXlFO0lBQ3pGLHNCQUFzQixFQUFFLG9GQUFvRjtJQUM1RyxzQkFBc0IsRUFBRSx1RkFBdUY7SUFDL0csZ0JBQWdCLEVBQUUsOEVBQThFO0lBQ2hHLG1CQUFtQixFQUFFLGlGQUFpRjtJQUN0RyxFQUFFLEVBQUUsMkRBQTJEO0lBQy9ELFlBQVksRUFBRSw4REFBOEQ7SUFDNUUsWUFBWSxFQUFFLDhEQUE4RDtDQUM3RSxDQUFDO0FBRUYsZUFBZSxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBuYW1lc3BhY2VzID0ge1xyXG4gIGE6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvbWFpbicsXHJcbiAgYjogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L2JpYmxpb2dyYXBoeScsXHJcbiAgY2RyOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L2NoYXJ0RHJhd2luZycsXHJcbiAgZGM6ICdodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLycsXHJcbiAgZGNtaXR5cGU6ICdodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvJyxcclxuICBkY3Rlcm1zOiAnaHR0cDovL3B1cmwub3JnL2RjL3Rlcm1zLycsXHJcbiAgbzogJ3VybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZScsXHJcbiAgcGljOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L3BpY3R1cmUnLFxyXG4gIHI6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzJyxcclxuICB2OiAndXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwnLFxyXG4gIHZlOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL21hcmt1cC1jb21wYXRpYmlsaXR5LzIwMDYnLFxyXG4gIHZ0OiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvZG9jUHJvcHNWVHlwZXMnLFxyXG4gIHc6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvd29yZHByb2Nlc3NpbmdtbC8yMDA2L21haW4nLFxyXG4gIHcxMDogJ3VybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOndvcmQnLFxyXG4gIHdwOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L3dvcmRwcm9jZXNzaW5nRHJhd2luZycsXHJcbiAgd25lOiAnaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZpY2Uvd29yZC8yMDA2L3dvcmRtbCcsXHJcbiAgeHNkOiAnaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEnLFxyXG4gIHhzaTogJ2h0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlJyxcclxuICBudW1iZXJpbmc6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL251bWJlcmluZycsXHJcbiAgaHlwZXJsaW5rczogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvaHlwZXJsaW5rJyxcclxuICBpbWFnZXM6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL2ltYWdlJyxcclxuICBzdHlsZXM6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL3N0eWxlcycsXHJcbiAgaGVhZGVyczogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvaGVhZGVyJyxcclxuICBmb290ZXJzOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwcy9mb290ZXInLFxyXG4gIHRoZW1lczogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvdGhlbWUnLFxyXG4gIGNvcmVQcm9wZXJ0aWVzOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAwNi9tZXRhZGF0YS9jb3JlLXByb3BlcnRpZXMnLFxyXG4gIG9mZmljZURvY3VtZW50UmVsYXRpb246ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL29mZmljZURvY3VtZW50JyxcclxuICBjb3JlUHJvcGVydGllc1JlbGF0aW9uOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAwNi9yZWxhdGlvbnNoaXBzL21ldGFkYXRhL2NvcmUtcHJvcGVydGllcycsXHJcbiAgc2V0dGluZ3NSZWxhdGlvbjogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvc2V0dGluZ3MnLFxyXG4gIHdlYlNldHRpbmdzUmVsYXRpb246ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL3dlYlNldHRpbmdzJyxcclxuICBzbDogJ2h0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9zY2hlbWFMaWJyYXJ5LzIwMDYvbWFpbicsXHJcbiAgY29udGVudFR5cGVzOiAnaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAwNi9jb250ZW50LXR5cGVzJyxcclxuICByZWxhdGlvbnNoaXA6ICdodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvcGFja2FnZS8yMDA2L3JlbGF0aW9uc2hpcHMnLFxyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgbmFtZXNwYWNlcztcclxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
const contentTypesXML = `
|
|
2
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
3
|
-
|
|
4
|
-
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
|
|
5
|
-
<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml" />
|
|
6
|
-
<Default Extension="jpeg" ContentType="image/jpeg"/>
|
|
7
|
-
<Default Extension="png" ContentType="image/png"/>
|
|
8
|
-
<Default Extension="xml" ContentType="application/xml"/>
|
|
9
|
-
<Override PartName="/_rels/.rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
|
|
10
|
-
<Override PartName="/word/_rels/document.xml.rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
|
|
11
|
-
<Override PartName="/word/_rels/footer1.xml.rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
|
|
12
|
-
<Override PartName="/word/document.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"/>
|
|
13
|
-
<Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>
|
|
14
|
-
<Override PartName="/word/numbering.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml"/>
|
|
15
|
-
<Override PartName="/word/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/>
|
|
16
|
-
<Override PartName="/word/fontTable.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml"/>
|
|
17
|
-
<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>
|
|
18
|
-
<Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/>
|
|
19
|
-
<Override PartName="/word/webSettings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml"/>
|
|
20
|
-
<Override PartName="/word/afchunk.mht" ContentType="message/rfc822"/>
|
|
21
|
-
<Override PartName="/word/afchunkheader.mht" ContentType="message/rfc822"/>
|
|
22
|
-
<Override PartName="/word/afchunkfooter.mht" ContentType="message/rfc822"/>
|
|
23
|
-
</Types>
|
|
24
|
-
`;
|
|
25
|
-
export { contentTypesXML };
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3NjaGVtYXMvY29udGVudC10eXBlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLGVBQWUsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F1QnZCLENBQUM7QUFFRixPQUFPLEVBQUUsZUFBZSxFQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBjb250ZW50VHlwZXNYTUwgPSBgXHJcbiAgICA8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJVVEYtOFwiIHN0YW5kYWxvbmU9XCJ5ZXNcIj8+XHJcblxyXG4gICAgPFR5cGVzIHhtbG5zPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAwNi9jb250ZW50LXR5cGVzXCI+XHJcbiAgICAgICAgPERlZmF1bHQgRXh0ZW5zaW9uPVwicmVsc1wiIENvbnRlbnRUeXBlPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLXBhY2thZ2UucmVsYXRpb25zaGlwcyt4bWxcIiAvPlxyXG4gICAgICAgIDxEZWZhdWx0IEV4dGVuc2lvbj1cImpwZWdcIiBDb250ZW50VHlwZT1cImltYWdlL2pwZWdcIi8+XHJcbiAgICAgICAgPERlZmF1bHQgRXh0ZW5zaW9uPVwicG5nXCIgQ29udGVudFR5cGU9XCJpbWFnZS9wbmdcIi8+XHJcbiAgICAgICAgPERlZmF1bHQgRXh0ZW5zaW9uPVwieG1sXCIgQ29udGVudFR5cGU9XCJhcHBsaWNhdGlvbi94bWxcIi8+XHJcbiAgICAgICAgPE92ZXJyaWRlIFBhcnROYW1lPVwiL19yZWxzLy5yZWxzXCIgQ29udGVudFR5cGU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtcGFja2FnZS5yZWxhdGlvbnNoaXBzK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC9fcmVscy9kb2N1bWVudC54bWwucmVsc1wiIENvbnRlbnRUeXBlPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLXBhY2thZ2UucmVsYXRpb25zaGlwcyt4bWxcIi8+XHJcbiAgICAgICAgPE92ZXJyaWRlIFBhcnROYW1lPVwiL3dvcmQvX3JlbHMvZm9vdGVyMS54bWwucmVsc1wiIENvbnRlbnRUeXBlPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLXBhY2thZ2UucmVsYXRpb25zaGlwcyt4bWxcIi8+XHJcbiAgICAgICAgPE92ZXJyaWRlIFBhcnROYW1lPVwiL3dvcmQvZG9jdW1lbnQueG1sXCIgQ29udGVudFR5cGU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQud29yZHByb2Nlc3NpbmdtbC5kb2N1bWVudC5tYWluK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC9zdHlsZXMueG1sXCIgQ29udGVudFR5cGU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQud29yZHByb2Nlc3NpbmdtbC5zdHlsZXMreG1sXCIvPlxyXG4gICAgICAgIDxPdmVycmlkZSBQYXJ0TmFtZT1cIi93b3JkL251bWJlcmluZy54bWxcIiBDb250ZW50VHlwZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLm51bWJlcmluZyt4bWxcIi8+XHJcbiAgICAgICAgPE92ZXJyaWRlIFBhcnROYW1lPVwiL3dvcmQvdGhlbWUvdGhlbWUxLnhtbFwiIENvbnRlbnRUeXBlPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnRoZW1lK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC9mb250VGFibGUueG1sXCIgQ29udGVudFR5cGU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQud29yZHByb2Nlc3NpbmdtbC5mb250VGFibGUreG1sXCIvPlxyXG4gICAgICAgIDxPdmVycmlkZSBQYXJ0TmFtZT1cIi9kb2NQcm9wcy9jb3JlLnhtbFwiIENvbnRlbnRUeXBlPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLXBhY2thZ2UuY29yZS1wcm9wZXJ0aWVzK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC9zZXR0aW5ncy54bWxcIiBDb250ZW50VHlwZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLnNldHRpbmdzK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC93ZWJTZXR0aW5ncy54bWxcIiBDb250ZW50VHlwZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLndlYlNldHRpbmdzK3htbFwiLz5cclxuICAgICAgICA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvd29yZC9hZmNodW5rLm1odFwiIENvbnRlbnRUeXBlPVwibWVzc2FnZS9yZmM4MjJcIi8+XHJcbiAgICAgICAgPE92ZXJyaWRlIFBhcnROYW1lPVwiL3dvcmQvYWZjaHVua2hlYWRlci5taHRcIiBDb250ZW50VHlwZT1cIm1lc3NhZ2UvcmZjODIyXCIvPlxyXG4gICAgICAgIDxPdmVycmlkZSBQYXJ0TmFtZT1cIi93b3JkL2FmY2h1bmtmb290ZXIubWh0XCIgQ29udGVudFR5cGU9XCJtZXNzYWdlL3JmYzgyMlwiLz5cclxuICAgIDwvVHlwZXM+XHJcbmA7XHJcblxyXG5leHBvcnQgeyBjb250ZW50VHlwZXNYTUx9O1xyXG4iXX0=
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import namespaces from '../namespaces';
|
|
2
|
-
import { applicationName } from '../constants';
|
|
3
|
-
const generateCoreXML = (title = '', subject = '', creator = applicationName, keywords = [applicationName], description = '', lastModifiedBy = applicationName, revision = 1, createdAt = new Date(), modifiedAt = new Date()) => `
|
|
4
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5
|
-
|
|
6
|
-
<cp:coreProperties
|
|
7
|
-
xmlns:cp="${namespaces.coreProperties}"
|
|
8
|
-
xmlns:dc="${namespaces.dc}"
|
|
9
|
-
xmlns:dcterms="${namespaces.dcterms}"
|
|
10
|
-
xmlns:dcmitype="${namespaces.dcmitype}"
|
|
11
|
-
xmlns:xsi="${namespaces.xsi}"
|
|
12
|
-
>
|
|
13
|
-
<dc:title>${title}</dc:title>
|
|
14
|
-
<dc:subject>${subject}</dc:subject>
|
|
15
|
-
<dc:creator>${creator}</dc:creator>
|
|
16
|
-
${keywords && Array.isArray(keywords)
|
|
17
|
-
? `<cp:keywords>${keywords.join(', ')}</cp:keywords>`
|
|
18
|
-
: ''}
|
|
19
|
-
<dc:description>${description}</dc:description>
|
|
20
|
-
<cp:lastModifiedBy>${lastModifiedBy}</cp:lastModifiedBy>
|
|
21
|
-
<cp:revision>${revision}</cp:revision>
|
|
22
|
-
<dcterms:created xsi:type="dcterms:W3CDTF">${createdAt instanceof Date ? createdAt.toISOString() : new Date().toISOString()}</dcterms:created>
|
|
23
|
-
<dcterms:modified xsi:type="dcterms:W3CDTF">${modifiedAt instanceof Date ? modifiedAt.toISOString() : new Date().toISOString()}</dcterms:modified>
|
|
24
|
-
</cp:coreProperties>
|
|
25
|
-
`;
|
|
26
|
-
export { generateCoreXML };
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3NjaGVtYXMvY29yZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvQyxNQUFNLGVBQWUsR0FBRyxDQUN0QixLQUFLLEdBQUcsRUFBRSxFQUNWLE9BQU8sR0FBRyxFQUFFLEVBQ1osT0FBTyxHQUFHLGVBQWUsRUFDekIsUUFBUSxHQUFHLENBQUMsZUFBZSxDQUFDLEVBQzVCLFdBQVcsR0FBRyxFQUFFLEVBQ2hCLGNBQWMsR0FBRyxlQUFlLEVBQ2hDLFFBQVEsR0FBRyxDQUFDLEVBQ1osU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLEVBQ3RCLFVBQVUsR0FBRyxJQUFJLElBQUksRUFBRSxFQUN2QixFQUFFLENBQUM7Ozs7c0JBSWlCLFVBQVUsQ0FBQyxjQUFjO3NCQUN6QixVQUFVLENBQUMsRUFBRTsyQkFDUixVQUFVLENBQUMsT0FBTzs0QkFDakIsVUFBVSxDQUFDLFFBQVE7dUJBQ3hCLFVBQVUsQ0FBQyxHQUFHOzt3QkFFYixLQUFLOzBCQUNILE9BQU87MEJBQ1AsT0FBTztjQUVuQixRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDakMsQ0FBQyxDQUFDLGdCQUFnQixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0I7SUFDckQsQ0FBQyxDQUFDLEVBQ047OEJBQ2tCLFdBQVc7aUNBQ1IsY0FBYzsyQkFDcEIsUUFBUTt5REFFckIsU0FBUyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFDOUU7MERBRUUsVUFBVSxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFDaEY7O0tBRVAsQ0FBQztBQUVOLE9BQU8sRUFBRSxlQUFlLEVBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBuYW1lc3BhY2VzIGZyb20gJy4uL25hbWVzcGFjZXMnO1xyXG5pbXBvcnQgeyBhcHBsaWNhdGlvbk5hbWUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5cclxuY29uc3QgZ2VuZXJhdGVDb3JlWE1MID0gKFxyXG4gIHRpdGxlID0gJycsXHJcbiAgc3ViamVjdCA9ICcnLFxyXG4gIGNyZWF0b3IgPSBhcHBsaWNhdGlvbk5hbWUsXHJcbiAga2V5d29yZHMgPSBbYXBwbGljYXRpb25OYW1lXSxcclxuICBkZXNjcmlwdGlvbiA9ICcnLFxyXG4gIGxhc3RNb2RpZmllZEJ5ID0gYXBwbGljYXRpb25OYW1lLFxyXG4gIHJldmlzaW9uID0gMSxcclxuICBjcmVhdGVkQXQgPSBuZXcgRGF0ZSgpLFxyXG4gIG1vZGlmaWVkQXQgPSBuZXcgRGF0ZSgpXHJcbikgPT4gYFxyXG4gICAgICAgIDw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIgc3RhbmRhbG9uZT1cInllc1wiPz5cclxuXHJcbiAgICAgICAgPGNwOmNvcmVQcm9wZXJ0aWVzXHJcbiAgICAgICAgICB4bWxuczpjcD1cIiR7bmFtZXNwYWNlcy5jb3JlUHJvcGVydGllc31cIlxyXG4gICAgICAgICAgeG1sbnM6ZGM9XCIke25hbWVzcGFjZXMuZGN9XCJcclxuICAgICAgICAgIHhtbG5zOmRjdGVybXM9XCIke25hbWVzcGFjZXMuZGN0ZXJtc31cIlxyXG4gICAgICAgICAgeG1sbnM6ZGNtaXR5cGU9XCIke25hbWVzcGFjZXMuZGNtaXR5cGV9XCJcclxuICAgICAgICAgIHhtbG5zOnhzaT1cIiR7bmFtZXNwYWNlcy54c2l9XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRjOnRpdGxlPiR7dGl0bGV9PC9kYzp0aXRsZT5cclxuICAgICAgICAgICAgPGRjOnN1YmplY3Q+JHtzdWJqZWN0fTwvZGM6c3ViamVjdD5cclxuICAgICAgICAgICAgPGRjOmNyZWF0b3I+JHtjcmVhdG9yfTwvZGM6Y3JlYXRvcj5cclxuICAgICAgICAgICAgJHtcclxuICAgICAgICAgICAgICBrZXl3b3JkcyAmJiBBcnJheS5pc0FycmF5KGtleXdvcmRzKVxyXG4gICAgICAgICAgICAgICAgPyBgPGNwOmtleXdvcmRzPiR7a2V5d29yZHMuam9pbignLCAnKX08L2NwOmtleXdvcmRzPmBcclxuICAgICAgICAgICAgICAgIDogJydcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8ZGM6ZGVzY3JpcHRpb24+JHtkZXNjcmlwdGlvbn08L2RjOmRlc2NyaXB0aW9uPlxyXG4gICAgICAgICAgICA8Y3A6bGFzdE1vZGlmaWVkQnk+JHtsYXN0TW9kaWZpZWRCeX08L2NwOmxhc3RNb2RpZmllZEJ5PlxyXG4gICAgICAgICAgICA8Y3A6cmV2aXNpb24+JHtyZXZpc2lvbn08L2NwOnJldmlzaW9uPlxyXG4gICAgICAgICAgICA8ZGN0ZXJtczpjcmVhdGVkIHhzaTp0eXBlPVwiZGN0ZXJtczpXM0NEVEZcIj4ke1xyXG4gICAgICAgICAgICAgIGNyZWF0ZWRBdCBpbnN0YW5jZW9mIERhdGUgPyBjcmVhdGVkQXQudG9JU09TdHJpbmcoKSA6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKVxyXG4gICAgICAgICAgICB9PC9kY3Rlcm1zOmNyZWF0ZWQ+XHJcbiAgICAgICAgICAgIDxkY3Rlcm1zOm1vZGlmaWVkIHhzaTp0eXBlPVwiZGN0ZXJtczpXM0NEVEZcIj4ke1xyXG4gICAgICAgICAgICAgIG1vZGlmaWVkQXQgaW5zdGFuY2VvZiBEYXRlID8gbW9kaWZpZWRBdC50b0lTT1N0cmluZygpIDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpXHJcbiAgICAgICAgICAgIH08L2RjdGVybXM6bW9kaWZpZWQ+XHJcbiAgICAgICAgPC9jcDpjb3JlUHJvcGVydGllcz5cclxuICAgIGA7XHJcblxyXG5leHBvcnQgeyBnZW5lcmF0ZUNvcmVYTUx9O1xyXG4iXX0=
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import namespaces from '../namespaces';
|
|
2
|
-
const documentRelsXML = `
|
|
3
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
4
|
-
|
|
5
|
-
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
|
|
6
|
-
<Relationship Id="rId1" Type="${namespaces.numbering}" Target="numbering.xml"/>
|
|
7
|
-
<Relationship Id="rId2" Type="${namespaces.styles}" Target="styles.xml"/>
|
|
8
|
-
<Relationship Id="rId3" Type="${namespaces.settingsRelation}" Target="settings.xml"/>
|
|
9
|
-
<Relationship Id="rId4" Type="${namespaces.webSettingsRelation}" Target="webSettings.xml"/>
|
|
10
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunk.mht" Id="htmlChunk" />
|
|
11
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunkheader.mht" Id="htmlChunkHeader" />
|
|
12
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunkfooter.mht" Id="htmlChunkFooter" />
|
|
13
|
-
</Relationships>
|
|
14
|
-
`;
|
|
15
|
-
export { documentRelsXML };
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtcmVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3NjaGVtYXMvZG9jdW1lbnQtcmVscy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdkMsTUFBTSxlQUFlLEdBQUc7Ozs7b0NBSVksVUFBVSxDQUFDLFNBQVM7b0NBQ3BCLFVBQVUsQ0FBQyxNQUFNO29DQUNqQixVQUFVLENBQUMsZ0JBQWdCO29DQUMzQixVQUFVLENBQUMsbUJBQW1COzs7OztDQUtqRSxDQUFDO0FBRUYsT0FBUSxFQUFDLGVBQWUsRUFBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG5hbWVzcGFjZXMgZnJvbSAnLi4vbmFtZXNwYWNlcyc7XHJcblxyXG5jb25zdCBkb2N1bWVudFJlbHNYTUwgPSBgXHJcbiAgPD94bWwgdmVyc2lvbj1cIjEuMFwiIGVuY29kaW5nPVwiVVRGLThcIiBzdGFuZGFsb25lPVwieWVzXCI/PlxyXG5cclxuICA8UmVsYXRpb25zaGlwcyB4bWxucz1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9wYWNrYWdlLzIwMDYvcmVsYXRpb25zaGlwc1wiPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBJZD1cInJJZDFcIiBUeXBlPVwiJHtuYW1lc3BhY2VzLm51bWJlcmluZ31cIiBUYXJnZXQ9XCJudW1iZXJpbmcueG1sXCIvPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBJZD1cInJJZDJcIiBUeXBlPVwiJHtuYW1lc3BhY2VzLnN0eWxlc31cIiBUYXJnZXQ9XCJzdHlsZXMueG1sXCIvPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBJZD1cInJJZDNcIiBUeXBlPVwiJHtuYW1lc3BhY2VzLnNldHRpbmdzUmVsYXRpb259XCIgVGFyZ2V0PVwic2V0dGluZ3MueG1sXCIvPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBJZD1cInJJZDRcIiBUeXBlPVwiJHtuYW1lc3BhY2VzLndlYlNldHRpbmdzUmVsYXRpb259XCIgVGFyZ2V0PVwid2ViU2V0dGluZ3MueG1sXCIvPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBUeXBlPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwcy9hRkNodW5rXCIgICBUYXJnZXQ9XCIvd29yZC9hZmNodW5rLm1odFwiIElkPVwiaHRtbENodW5rXCIgLz5cclxuICAgIDxSZWxhdGlvbnNoaXAgVHlwZT1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvYUZDaHVua1wiICAgVGFyZ2V0PVwiL3dvcmQvYWZjaHVua2hlYWRlci5taHRcIiBJZD1cImh0bWxDaHVua0hlYWRlclwiIC8+XHJcbiAgICA8UmVsYXRpb25zaGlwIFR5cGU9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL2FGQ2h1bmtcIiAgIFRhcmdldD1cIi93b3JkL2FmY2h1bmtmb290ZXIubWh0XCIgSWQ9XCJodG1sQ2h1bmtGb290ZXJcIiAvPlxyXG4gIDwvUmVsYXRpb25zaGlwcz5cclxuYDtcclxuXHJcbmV4cG9ydCAge2RvY3VtZW50UmVsc1hNTH07XHJcbiJdfQ==
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import namespaces from "../namespaces";
|
|
2
|
-
const generateDocumentTemplate = (width, height, orientation, margins) => `
|
|
3
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
4
|
-
<w:document
|
|
5
|
-
xmlns:a="${namespaces.a}"
|
|
6
|
-
xmlns:cdr="${namespaces.cdr}"
|
|
7
|
-
xmlns:o="${namespaces.o}"
|
|
8
|
-
xmlns:pic="${namespaces.pic}"
|
|
9
|
-
xmlns:r="${namespaces.r}"
|
|
10
|
-
xmlns:v="${namespaces.v}"
|
|
11
|
-
xmlns:ve="${namespaces.ve}"
|
|
12
|
-
xmlns:vt="${namespaces.vt}"
|
|
13
|
-
xmlns:w="${namespaces.w}"
|
|
14
|
-
xmlns:w10="${namespaces.w10}"
|
|
15
|
-
xmlns:wp="${namespaces.wp}"
|
|
16
|
-
xmlns:wne="${namespaces.wne}"
|
|
17
|
-
>
|
|
18
|
-
<w:body>
|
|
19
|
-
|
|
20
|
-
<w:altChunk r:id="htmlChunk" />
|
|
21
|
-
<w:sectPr>
|
|
22
|
-
<w:pgSz w:w="${width}" w:h="${height}" w:orient="${orientation}" />
|
|
23
|
-
<w:pgMar w:top="${margins.top}"
|
|
24
|
-
w:right="${margins.right}"
|
|
25
|
-
w:bottom="${margins.bottom}"
|
|
26
|
-
w:left="${margins.left}"
|
|
27
|
-
w:header="${margins.header}"
|
|
28
|
-
w:footer="${margins.footer}"
|
|
29
|
-
w:gutter="${margins.gutter}"/>
|
|
30
|
-
</w:sectPr>
|
|
31
|
-
</w:body>
|
|
32
|
-
</w:document>
|
|
33
|
-
`;
|
|
34
|
-
const generateDocumentTemplateHeader = `
|
|
35
|
-
<w:hdr
|
|
36
|
-
xmlns:a="${namespaces.a}"
|
|
37
|
-
xmlns:cdr="${namespaces.cdr}"
|
|
38
|
-
xmlns:o="${namespaces.o}"
|
|
39
|
-
xmlns:pic="${namespaces.pic}"
|
|
40
|
-
xmlns:r="${namespaces.r}"
|
|
41
|
-
xmlns:v="${namespaces.v}"
|
|
42
|
-
xmlns:ve="${namespaces.ve}"
|
|
43
|
-
xmlns:vt="${namespaces.vt}"
|
|
44
|
-
xmlns:w="${namespaces.w}"
|
|
45
|
-
xmlns:w10="${namespaces.w10}"
|
|
46
|
-
xmlns:wp="${namespaces.wp}"
|
|
47
|
-
xmlns:wne="${namespaces.wne}"
|
|
48
|
-
>
|
|
49
|
-
<w:altChunk r:id="htmlChunkHeader" />
|
|
50
|
-
</w:hdr>
|
|
51
|
-
`;
|
|
52
|
-
const generateDocumentTemplateFooter = `
|
|
53
|
-
<w:ftr
|
|
54
|
-
xmlns:a="${namespaces.a}"
|
|
55
|
-
xmlns:cdr="${namespaces.cdr}"
|
|
56
|
-
xmlns:o="${namespaces.o}"
|
|
57
|
-
xmlns:pic="${namespaces.pic}"
|
|
58
|
-
xmlns:r="${namespaces.r}"
|
|
59
|
-
xmlns:v="${namespaces.v}"
|
|
60
|
-
xmlns:ve="${namespaces.ve}"
|
|
61
|
-
xmlns:vt="${namespaces.vt}"
|
|
62
|
-
xmlns:w="${namespaces.w}"
|
|
63
|
-
xmlns:w10="${namespaces.w10}"
|
|
64
|
-
xmlns:wp="${namespaces.wp}"
|
|
65
|
-
>
|
|
66
|
-
<w:altChunk r:id="htmlChunkFooter" />
|
|
67
|
-
<w:p w:rsidR="0014021C" w:rsidRDefault="0014021C" w:rsidP="0014021C">
|
|
68
|
-
<w:pPr>
|
|
69
|
-
<w:pStyle w:val="Footer"/>
|
|
70
|
-
<w:jc w:val="center"/>
|
|
71
|
-
</w:pPr>
|
|
72
|
-
<w:fldSimple xmlns:ns2="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ns2:instr="PAGE">
|
|
73
|
-
<w:r/>
|
|
74
|
-
</w:fldSimple>
|
|
75
|
-
</w:p>
|
|
76
|
-
</w:ftr>
|
|
77
|
-
`;
|
|
78
|
-
const generateDocumentTemplateFooterWithoutPaging = `
|
|
79
|
-
<w:ftr
|
|
80
|
-
xmlns:a="${namespaces.a}"
|
|
81
|
-
xmlns:cdr="${namespaces.cdr}"
|
|
82
|
-
xmlns:o="${namespaces.o}"
|
|
83
|
-
xmlns:pic="${namespaces.pic}"
|
|
84
|
-
xmlns:r="${namespaces.r}"
|
|
85
|
-
xmlns:v="${namespaces.v}"
|
|
86
|
-
xmlns:ve="${namespaces.ve}"
|
|
87
|
-
xmlns:vt="${namespaces.vt}"
|
|
88
|
-
xmlns:w="${namespaces.w}"
|
|
89
|
-
xmlns:w10="${namespaces.w10}"
|
|
90
|
-
xmlns:wp="${namespaces.wp}"
|
|
91
|
-
>
|
|
92
|
-
<w:altChunk r:id="htmlChunkFooter" />
|
|
93
|
-
</w:ftr>
|
|
94
|
-
`;
|
|
95
|
-
export { generateDocumentTemplate, generateDocumentTemplateHeader, generateDocumentTemplateFooter, generateDocumentTemplateFooterWithoutPaging };
|
|
96
|
-
{ /* <w:altChunk r:id="htmlChunkFooter" /> */ }
|
|
97
|
-
{
|
|
98
|
-
/* <w:altChunk r:id="htmlChunkFooter" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" /> */
|
|
99
|
-
}
|
|
100
|
-
{
|
|
101
|
-
/* <w:ftr xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
|
|
102
|
-
<fldSimple xmlns:ns2="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ns2:instr="PAGE">
|
|
103
|
-
</fldSimple>
|
|
104
|
-
<w:altChunk r:id="htmlChunkFooter" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" />
|
|
105
|
-
</w:ftr> */
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQudGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9jb25maWcvd29yZC9zY2hlbWFzL2RvY3VtZW50LnRlbXBsYXRlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sVUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxNQUFNLHdCQUF3QixHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQzs7O21CQUd2RCxVQUFVLENBQUMsQ0FBQztxQkFDVixVQUFVLENBQUMsR0FBRzttQkFDaEIsVUFBVSxDQUFDLENBQUM7cUJBQ1YsVUFBVSxDQUFDLEdBQUc7bUJBQ2hCLFVBQVUsQ0FBQyxDQUFDO21CQUNaLFVBQVUsQ0FBQyxDQUFDO29CQUNYLFVBQVUsQ0FBQyxFQUFFO29CQUNiLFVBQVUsQ0FBQyxFQUFFO21CQUNkLFVBQVUsQ0FBQyxDQUFDO3FCQUNWLFVBQVUsQ0FBQyxHQUFHO29CQUNmLFVBQVUsQ0FBQyxFQUFFO3FCQUNaLFVBQVUsQ0FBQyxHQUFHOzs7Ozs7K0JBTUosS0FBSyxVQUFVLE1BQU0sZUFBZSxXQUFXO2tDQUM1QyxPQUFPLENBQUMsR0FBRzttQ0FDVixPQUFPLENBQUMsS0FBSztvQ0FDWixPQUFPLENBQUMsTUFBTTtrQ0FDaEIsT0FBTyxDQUFDLElBQUk7b0NBQ1YsT0FBTyxDQUFDLE1BQU07b0NBQ2QsT0FBTyxDQUFDLE1BQU07b0NBQ2QsT0FBTyxDQUFDLE1BQU07Ozs7R0FJL0MsQ0FBQztBQUVKLE1BQU0sOEJBQThCLEdBQUc7O1dBRTVCLFVBQVUsQ0FBQyxDQUFDO2FBQ1YsVUFBVSxDQUFDLEdBQUc7V0FDaEIsVUFBVSxDQUFDLENBQUM7YUFDVixVQUFVLENBQUMsR0FBRztXQUNoQixVQUFVLENBQUMsQ0FBQztXQUNaLFVBQVUsQ0FBQyxDQUFDO1lBQ1gsVUFBVSxDQUFDLEVBQUU7WUFDYixVQUFVLENBQUMsRUFBRTtXQUNkLFVBQVUsQ0FBQyxDQUFDO2FBQ1YsVUFBVSxDQUFDLEdBQUc7WUFDZixVQUFVLENBQUMsRUFBRTthQUNaLFVBQVUsQ0FBQyxHQUFHOzs7O0dBSXhCLENBQUM7QUFFSixNQUFNLDhCQUE4QixHQUFHOzthQUUxQixVQUFVLENBQUMsQ0FBQztlQUNWLFVBQVUsQ0FBQyxHQUFHO2FBQ2hCLFVBQVUsQ0FBQyxDQUFDO2VBQ1YsVUFBVSxDQUFDLEdBQUc7YUFDaEIsVUFBVSxDQUFDLENBQUM7YUFDWixVQUFVLENBQUMsQ0FBQztjQUNYLFVBQVUsQ0FBQyxFQUFFO2NBQ2IsVUFBVSxDQUFDLEVBQUU7YUFDZCxVQUFVLENBQUMsQ0FBQztlQUNWLFVBQVUsQ0FBQyxHQUFHO2NBQ2YsVUFBVSxDQUFDLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FheEIsQ0FBQztBQUVGLE1BQU0sMkNBQTJDLEdBQUc7O2FBRXpDLFVBQVUsQ0FBQyxDQUFDO2VBQ1YsVUFBVSxDQUFDLEdBQUc7YUFDaEIsVUFBVSxDQUFDLENBQUM7ZUFDVixVQUFVLENBQUMsR0FBRzthQUNoQixVQUFVLENBQUMsQ0FBQzthQUNaLFVBQVUsQ0FBQyxDQUFDO2NBQ1gsVUFBVSxDQUFDLEVBQUU7Y0FDYixVQUFVLENBQUMsRUFBRTthQUNkLFVBQVUsQ0FBQyxDQUFDO2VBQ1YsVUFBVSxDQUFDLEdBQUc7Y0FDZixVQUFVLENBQUMsRUFBRTs7OztHQUl4QixDQUFDO0FBRUosT0FBTyxFQUNMLHdCQUF3QixFQUN4Qiw4QkFBOEIsRUFDOUIsOEJBQThCLEVBQzlCLDJDQUEyQyxFQUM1QyxDQUFDO0FBRUYsRUFBQywyQ0FBMkMsRUFBQztBQUU3QztJQUNFLHlIQUF5SDtDQUMxSDtBQUVEO0lBQ0U7Ozs7Y0FJVTtDQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG5hbWVzcGFjZXMgZnJvbSBcIi4uL25hbWVzcGFjZXNcIjtcclxuXHJcbmNvbnN0IGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZSA9ICh3aWR0aCwgaGVpZ2h0LCBvcmllbnRhdGlvbiwgbWFyZ2lucykgPT4gYFxyXG4gIDw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIgc3RhbmRhbG9uZT1cInllc1wiPz5cclxuICAgIDx3OmRvY3VtZW50XHJcbiAgICAgICAgeG1sbnM6YT1cIiR7bmFtZXNwYWNlcy5hfVwiXHJcbiAgICAgICAgeG1sbnM6Y2RyPVwiJHtuYW1lc3BhY2VzLmNkcn1cIlxyXG4gICAgICAgIHhtbG5zOm89XCIke25hbWVzcGFjZXMub31cIlxyXG4gICAgICAgIHhtbG5zOnBpYz1cIiR7bmFtZXNwYWNlcy5waWN9XCJcclxuICAgICAgICB4bWxuczpyPVwiJHtuYW1lc3BhY2VzLnJ9XCJcclxuICAgICAgICB4bWxuczp2PVwiJHtuYW1lc3BhY2VzLnZ9XCJcclxuICAgICAgICB4bWxuczp2ZT1cIiR7bmFtZXNwYWNlcy52ZX1cIlxyXG4gICAgICAgIHhtbG5zOnZ0PVwiJHtuYW1lc3BhY2VzLnZ0fVwiXHJcbiAgICAgICAgeG1sbnM6dz1cIiR7bmFtZXNwYWNlcy53fVwiXHJcbiAgICAgICAgeG1sbnM6dzEwPVwiJHtuYW1lc3BhY2VzLncxMH1cIlxyXG4gICAgICAgIHhtbG5zOndwPVwiJHtuYW1lc3BhY2VzLndwfVwiXHJcbiAgICAgICAgeG1sbnM6d25lPVwiJHtuYW1lc3BhY2VzLnduZX1cIlxyXG4gICAgICAgID5cclxuICAgICAgICA8dzpib2R5PlxyXG5cclxuICAgICAgICA8dzphbHRDaHVuayByOmlkPVwiaHRtbENodW5rXCIgLz5cclxuICAgICAgICAgICAgPHc6c2VjdFByPlxyXG4gICAgICAgICAgICAgICAgPHc6cGdTeiB3Onc9XCIke3dpZHRofVwiIHc6aD1cIiR7aGVpZ2h0fVwiIHc6b3JpZW50PVwiJHtvcmllbnRhdGlvbn1cIiAvPlxyXG4gICAgICAgICAgICAgICAgPHc6cGdNYXIgdzp0b3A9XCIke21hcmdpbnMudG9wfVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHc6cmlnaHQ9XCIke21hcmdpbnMucmlnaHR9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdzpib3R0b209XCIke21hcmdpbnMuYm90dG9tfVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHc6bGVmdD1cIiR7bWFyZ2lucy5sZWZ0fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHc6aGVhZGVyPVwiJHttYXJnaW5zLmhlYWRlcn1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3OmZvb3Rlcj1cIiR7bWFyZ2lucy5mb290ZXJ9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdzpndXR0ZXI9XCIke21hcmdpbnMuZ3V0dGVyfVwiLz5cclxuICAgICAgICAgICAgPC93OnNlY3RQcj5cclxuICAgICAgICA8L3c6Ym9keT5cclxuICAgIDwvdzpkb2N1bWVudD5cclxuICBgO1xyXG5cclxuY29uc3QgZ2VuZXJhdGVEb2N1bWVudFRlbXBsYXRlSGVhZGVyID0gYFxyXG48dzpoZHJcclxueG1sbnM6YT1cIiR7bmFtZXNwYWNlcy5hfVwiXHJcbnhtbG5zOmNkcj1cIiR7bmFtZXNwYWNlcy5jZHJ9XCJcclxueG1sbnM6bz1cIiR7bmFtZXNwYWNlcy5vfVwiXHJcbnhtbG5zOnBpYz1cIiR7bmFtZXNwYWNlcy5waWN9XCJcclxueG1sbnM6cj1cIiR7bmFtZXNwYWNlcy5yfVwiXHJcbnhtbG5zOnY9XCIke25hbWVzcGFjZXMudn1cIlxyXG54bWxuczp2ZT1cIiR7bmFtZXNwYWNlcy52ZX1cIlxyXG54bWxuczp2dD1cIiR7bmFtZXNwYWNlcy52dH1cIlxyXG54bWxuczp3PVwiJHtuYW1lc3BhY2VzLnd9XCJcclxueG1sbnM6dzEwPVwiJHtuYW1lc3BhY2VzLncxMH1cIlxyXG54bWxuczp3cD1cIiR7bmFtZXNwYWNlcy53cH1cIlxyXG54bWxuczp3bmU9XCIke25hbWVzcGFjZXMud25lfVwiXHJcbj5cclxuPHc6YWx0Q2h1bmsgcjppZD1cImh0bWxDaHVua0hlYWRlclwiIC8+XHJcbjwvdzpoZHI+XHJcbiAgYDtcclxuXHJcbmNvbnN0IGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZUZvb3RlciA9IGBcclxuICA8dzpmdHJcclxuICB4bWxuczphPVwiJHtuYW1lc3BhY2VzLmF9XCJcclxuICB4bWxuczpjZHI9XCIke25hbWVzcGFjZXMuY2RyfVwiXHJcbiAgeG1sbnM6bz1cIiR7bmFtZXNwYWNlcy5vfVwiXHJcbiAgeG1sbnM6cGljPVwiJHtuYW1lc3BhY2VzLnBpY31cIlxyXG4gIHhtbG5zOnI9XCIke25hbWVzcGFjZXMucn1cIlxyXG4gIHhtbG5zOnY9XCIke25hbWVzcGFjZXMudn1cIlxyXG4gIHhtbG5zOnZlPVwiJHtuYW1lc3BhY2VzLnZlfVwiXHJcbiAgeG1sbnM6dnQ9XCIke25hbWVzcGFjZXMudnR9XCJcclxuICB4bWxuczp3PVwiJHtuYW1lc3BhY2VzLnd9XCJcclxuICB4bWxuczp3MTA9XCIke25hbWVzcGFjZXMudzEwfVwiXHJcbiAgeG1sbnM6d3A9XCIke25hbWVzcGFjZXMud3B9XCJcclxuICA+XHJcbiAgPHc6YWx0Q2h1bmsgcjppZD1cImh0bWxDaHVua0Zvb3RlclwiIC8+XHJcblx0PHc6cCB3OnJzaWRSPVwiMDAxNDAyMUNcIiB3OnJzaWRSRGVmYXVsdD1cIjAwMTQwMjFDXCIgdzpyc2lkUD1cIjAwMTQwMjFDXCI+XHJcblx0XHRcdDx3OnBQcj5cclxuXHRcdFx0XHQ8dzpwU3R5bGUgdzp2YWw9XCJGb290ZXJcIi8+XHJcblx0XHRcdFx0PHc6amMgdzp2YWw9XCJjZW50ZXJcIi8+XHJcblx0XHRcdDwvdzpwUHI+XHJcbiAgICAgIDx3OmZsZFNpbXBsZSB4bWxuczpuczI9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvd29yZHByb2Nlc3NpbmdtbC8yMDA2L21haW5cIiBuczI6aW5zdHI9XCJQQUdFXCI+XHJcbiAgICAgIDx3OnIvPlxyXG4gICAgPC93OmZsZFNpbXBsZT5cclxuXHRcdDwvdzpwPlxyXG5cdDwvdzpmdHI+XHJcbiAgYDtcclxuXHJcbiAgY29uc3QgZ2VuZXJhdGVEb2N1bWVudFRlbXBsYXRlRm9vdGVyV2l0aG91dFBhZ2luZyA9IGBcclxuICA8dzpmdHJcclxuICB4bWxuczphPVwiJHtuYW1lc3BhY2VzLmF9XCJcclxuICB4bWxuczpjZHI9XCIke25hbWVzcGFjZXMuY2RyfVwiXHJcbiAgeG1sbnM6bz1cIiR7bmFtZXNwYWNlcy5vfVwiXHJcbiAgeG1sbnM6cGljPVwiJHtuYW1lc3BhY2VzLnBpY31cIlxyXG4gIHhtbG5zOnI9XCIke25hbWVzcGFjZXMucn1cIlxyXG4gIHhtbG5zOnY9XCIke25hbWVzcGFjZXMudn1cIlxyXG4gIHhtbG5zOnZlPVwiJHtuYW1lc3BhY2VzLnZlfVwiXHJcbiAgeG1sbnM6dnQ9XCIke25hbWVzcGFjZXMudnR9XCJcclxuICB4bWxuczp3PVwiJHtuYW1lc3BhY2VzLnd9XCJcclxuICB4bWxuczp3MTA9XCIke25hbWVzcGFjZXMudzEwfVwiXHJcbiAgeG1sbnM6d3A9XCIke25hbWVzcGFjZXMud3B9XCJcclxuICA+XHJcbiAgPHc6YWx0Q2h1bmsgcjppZD1cImh0bWxDaHVua0Zvb3RlclwiIC8+XHJcblx0PC93OmZ0cj5cclxuICBgO1xyXG5cclxuZXhwb3J0IHtcclxuICBnZW5lcmF0ZURvY3VtZW50VGVtcGxhdGUsXHJcbiAgZ2VuZXJhdGVEb2N1bWVudFRlbXBsYXRlSGVhZGVyLFxyXG4gIGdlbmVyYXRlRG9jdW1lbnRUZW1wbGF0ZUZvb3RlcixcclxuICBnZW5lcmF0ZURvY3VtZW50VGVtcGxhdGVGb290ZXJXaXRob3V0UGFnaW5nXHJcbn07XHJcblxyXG57LyogPHc6YWx0Q2h1bmsgcjppZD1cImh0bWxDaHVua0Zvb3RlclwiIC8+ICovfVxyXG5cclxue1xyXG4gIC8qIDx3OmFsdENodW5rIHI6aWQ9XCJodG1sQ2h1bmtGb290ZXJcIiB4bWxuczpyPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwc1wiIC8+ICovXHJcbn1cclxuXHJcbntcclxuICAvKiA8dzpmdHIgeG1sbnM6dz1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy93b3JkcHJvY2Vzc2luZ21sLzIwMDYvbWFpblwiPlxyXG48ZmxkU2ltcGxlIHhtbG5zOm5zMj1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy93b3JkcHJvY2Vzc2luZ21sLzIwMDYvbWFpblwiIG5zMjppbnN0cj1cIlBBR0VcIj5cclxuPC9mbGRTaW1wbGU+XHJcbjx3OmFsdENodW5rIHI6aWQ9XCJodG1sQ2h1bmtGb290ZXJcIiB4bWxuczpyPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwc1wiIC8+XHJcbiA8L3c6ZnRyPiAqL1xyXG59XHJcbiJdfQ==
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import namespaces from '../namespaces';
|
|
2
|
-
const fontTableXML = `
|
|
3
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
4
|
-
|
|
5
|
-
<w:fonts
|
|
6
|
-
xmlns:r="${namespaces.r}"
|
|
7
|
-
xmlns:w="${namespaces.w}"
|
|
8
|
-
>
|
|
9
|
-
<w:font w:name="Symbol">
|
|
10
|
-
<w:panose1 w:val="05050102010706020507"/>
|
|
11
|
-
<w:charset w:val="02"/>
|
|
12
|
-
<w:family w:val="decorative"/>
|
|
13
|
-
<w:pitch w:val="variable"/>
|
|
14
|
-
<w:sig w:usb0="00000000" w:usb1="10000000" w:usb2="00000000" w:usb3="00000000" w:csb0="80000000" w:csb1="00000000"/>
|
|
15
|
-
</w:font>
|
|
16
|
-
<w:font w:name="Calibri">
|
|
17
|
-
<w:panose1 w:val="020F0502020204030204"/>
|
|
18
|
-
<w:charset w:val="00"/>
|
|
19
|
-
<w:family w:val="swiss"/>
|
|
20
|
-
<w:pitch w:val="variable"/>
|
|
21
|
-
<w:sig w:usb0="E4002EFF" w:usb1="C000247B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/>
|
|
22
|
-
</w:font>
|
|
23
|
-
<w:font w:name="Times New Roman">
|
|
24
|
-
<w:panose1 w:val="02020603050405020304"/>
|
|
25
|
-
<w:charset w:val="00"/>
|
|
26
|
-
<w:family w:val="roman"/>
|
|
27
|
-
<w:pitch w:val="variable"/>
|
|
28
|
-
<w:sig w:usb0="E0002EFF" w:usb1="C000785B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/>
|
|
29
|
-
</w:font>
|
|
30
|
-
<w:font w:name="Calibri Light">
|
|
31
|
-
<w:panose1 w:val="020F0302020204030204"/>
|
|
32
|
-
<w:charset w:val="00"/>
|
|
33
|
-
<w:family w:val="swiss"/>
|
|
34
|
-
<w:pitch w:val="variable"/>
|
|
35
|
-
<w:sig w:usb0="E4002EFF" w:usb1="C000247B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/>
|
|
36
|
-
</w:font>
|
|
37
|
-
</w:fonts>
|
|
38
|
-
`;
|
|
39
|
-
export { fontTableXML };
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3NjaGVtYXMvZm9udC10YWJsZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdkMsTUFBTSxZQUFZLEdBQUc7Ozs7aUJBSUosVUFBVSxDQUFDLENBQUM7aUJBQ1osVUFBVSxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0ErQjVCLENBQUM7QUFFRixPQUFPLEVBQUMsWUFBWSxFQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbmFtZXNwYWNlcyBmcm9tICcuLi9uYW1lc3BhY2VzJztcclxuXHJcbmNvbnN0IGZvbnRUYWJsZVhNTCA9IGBcclxuICAgIDw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIgc3RhbmRhbG9uZT1cInllc1wiPz5cclxuXHJcbiAgICA8dzpmb250c1xyXG4gICAgICB4bWxuczpyPVwiJHtuYW1lc3BhY2VzLnJ9XCJcclxuICAgICAgeG1sbnM6dz1cIiR7bmFtZXNwYWNlcy53fVwiXHJcbiAgICAgID5cclxuICAgICAgICA8dzpmb250IHc6bmFtZT1cIlN5bWJvbFwiPlxyXG4gICAgICAgICAgICA8dzpwYW5vc2UxIHc6dmFsPVwiMDUwNTAxMDIwMTA3MDYwMjA1MDdcIi8+XHJcbiAgICAgICAgICAgIDx3OmNoYXJzZXQgdzp2YWw9XCIwMlwiLz5cclxuICAgICAgICAgICAgPHc6ZmFtaWx5IHc6dmFsPVwiZGVjb3JhdGl2ZVwiLz5cclxuICAgICAgICAgICAgPHc6cGl0Y2ggdzp2YWw9XCJ2YXJpYWJsZVwiLz5cclxuICAgICAgICAgICAgPHc6c2lnIHc6dXNiMD1cIjAwMDAwMDAwXCIgdzp1c2IxPVwiMTAwMDAwMDBcIiB3OnVzYjI9XCIwMDAwMDAwMFwiIHc6dXNiMz1cIjAwMDAwMDAwXCIgdzpjc2IwPVwiODAwMDAwMDBcIiB3OmNzYjE9XCIwMDAwMDAwMFwiLz5cclxuICAgICAgICA8L3c6Zm9udD5cclxuICAgICAgICA8dzpmb250IHc6bmFtZT1cIkNhbGlicmlcIj5cclxuICAgICAgICAgICAgPHc6cGFub3NlMSB3OnZhbD1cIjAyMEYwNTAyMDIwMjA0MDMwMjA0XCIvPlxyXG4gICAgICAgICAgICA8dzpjaGFyc2V0IHc6dmFsPVwiMDBcIi8+XHJcbiAgICAgICAgICAgIDx3OmZhbWlseSB3OnZhbD1cInN3aXNzXCIvPlxyXG4gICAgICAgICAgICA8dzpwaXRjaCB3OnZhbD1cInZhcmlhYmxlXCIvPlxyXG4gICAgICAgICAgICA8dzpzaWcgdzp1c2IwPVwiRTQwMDJFRkZcIiB3OnVzYjE9XCJDMDAwMjQ3QlwiIHc6dXNiMj1cIjAwMDAwMDA5XCIgdzp1c2IzPVwiMDAwMDAwMDBcIiB3OmNzYjA9XCIwMDAwMDFGRlwiIHc6Y3NiMT1cIjAwMDAwMDAwXCIvPlxyXG4gICAgICAgIDwvdzpmb250PlxyXG4gICAgICAgIDx3OmZvbnQgdzpuYW1lPVwiVGltZXMgTmV3IFJvbWFuXCI+XHJcbiAgICAgICAgICAgIDx3OnBhbm9zZTEgdzp2YWw9XCIwMjAyMDYwMzA1MDQwNTAyMDMwNFwiLz5cclxuICAgICAgICAgICAgPHc6Y2hhcnNldCB3OnZhbD1cIjAwXCIvPlxyXG4gICAgICAgICAgICA8dzpmYW1pbHkgdzp2YWw9XCJyb21hblwiLz5cclxuICAgICAgICAgICAgPHc6cGl0Y2ggdzp2YWw9XCJ2YXJpYWJsZVwiLz5cclxuICAgICAgICAgICAgPHc6c2lnIHc6dXNiMD1cIkUwMDAyRUZGXCIgdzp1c2IxPVwiQzAwMDc4NUJcIiB3OnVzYjI9XCIwMDAwMDAwOVwiIHc6dXNiMz1cIjAwMDAwMDAwXCIgdzpjc2IwPVwiMDAwMDAxRkZcIiB3OmNzYjE9XCIwMDAwMDAwMFwiLz5cclxuICAgICAgICA8L3c6Zm9udD5cclxuICAgICAgICA8dzpmb250IHc6bmFtZT1cIkNhbGlicmkgTGlnaHRcIj5cclxuICAgICAgICAgICAgPHc6cGFub3NlMSB3OnZhbD1cIjAyMEYwMzAyMDIwMjA0MDMwMjA0XCIvPlxyXG4gICAgICAgICAgICA8dzpjaGFyc2V0IHc6dmFsPVwiMDBcIi8+XHJcbiAgICAgICAgICAgIDx3OmZhbWlseSB3OnZhbD1cInN3aXNzXCIvPlxyXG4gICAgICAgICAgICA8dzpwaXRjaCB3OnZhbD1cInZhcmlhYmxlXCIvPlxyXG4gICAgICAgICAgICA8dzpzaWcgdzp1c2IwPVwiRTQwMDJFRkZcIiB3OnVzYjE9XCJDMDAwMjQ3QlwiIHc6dXNiMj1cIjAwMDAwMDA5XCIgdzp1c2IzPVwiMDAwMDAwMDBcIiB3OmNzYjA9XCIwMDAwMDFGRlwiIHc6Y3NiMT1cIjAwMDAwMDAwXCIvPlxyXG4gICAgICAgIDwvdzpmb250PlxyXG4gICAgPC93OmZvbnRzPlxyXG5gO1xyXG5cclxuZXhwb3J0IHtmb250VGFibGVYTUx9O1xyXG4iXX0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
const genericRelsXML = `
|
|
2
|
-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
3
|
-
|
|
4
|
-
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
|
|
5
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunk.mht" Id="htmlChunk" />
|
|
6
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunkheader.mht" Id="htmlChunkHeader" />
|
|
7
|
-
<Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk" Target="/word/afchunkfooter.mht" Id="htmlChunkFooter" />
|
|
8
|
-
</Relationships>
|
|
9
|
-
`;
|
|
10
|
-
export { genericRelsXML };
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1yZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvY29uZmlnL3dvcmQvc2NoZW1hcy9nZW5lcmljLXJlbHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxjQUFjLEdBQUc7Ozs7Ozs7O0NBUXRCLENBQUM7QUFFRixPQUFPLEVBQUMsY0FBYyxFQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBnZW5lcmljUmVsc1hNTCA9IGBcclxuICAgIDw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIgc3RhbmRhbG9uZT1cInllc1wiPz5cclxuXHJcbiAgICA8UmVsYXRpb25zaGlwcyB4bWxucz1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9wYWNrYWdlLzIwMDYvcmVsYXRpb25zaGlwc1wiPlxyXG4gICAgPFJlbGF0aW9uc2hpcCBUeXBlPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwcy9hRkNodW5rXCIgICBUYXJnZXQ9XCIvd29yZC9hZmNodW5rLm1odFwiIElkPVwiaHRtbENodW5rXCIgLz5cclxuICAgIDxSZWxhdGlvbnNoaXAgVHlwZT1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvYUZDaHVua1wiICAgVGFyZ2V0PVwiL3dvcmQvYWZjaHVua2hlYWRlci5taHRcIiBJZD1cImh0bWxDaHVua0hlYWRlclwiIC8+XHJcbiAgICA8UmVsYXRpb25zaGlwIFR5cGU9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL2FGQ2h1bmtcIiAgIFRhcmdldD1cIi93b3JkL2FmY2h1bmtmb290ZXIubWh0XCIgSWQ9XCJodG1sQ2h1bmtGb290ZXJcIiAvPlxyXG4gICAgPC9SZWxhdGlvbnNoaXBzPlxyXG5gO1xyXG5cclxuZXhwb3J0IHtnZW5lcmljUmVsc1hNTH07XHJcbiJdfQ==
|