@bendyline/squisq-formats 2.0.1 → 2.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.
Files changed (195) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE.md +20 -0
  3. package/README.md +1 -1
  4. package/dist/{chunk-CRAVSMPZ.js → chunk-26ISNJ7Y.js} +356 -114
  5. package/dist/{chunk-NKAJPJ4G.js → chunk-2JJ5RFDZ.js} +0 -1
  6. package/dist/{chunk-HTW2M27H.js → chunk-3NKXBZSR.js} +193 -42
  7. package/dist/{chunk-U32AG3G3.js → chunk-4V3KCHAP.js} +3 -4
  8. package/dist/{chunk-MLX2BOJC.js → chunk-6RQOV3B3.js} +1 -2
  9. package/dist/{chunk-QRVN6A6E.js → chunk-6S6GU3ZG.js} +5 -6
  10. package/dist/{chunk-FE6OJV6O.js → chunk-7AWFHP5U.js} +1 -1
  11. package/dist/{chunk-RFAPOKHJ.js → chunk-AD2WT564.js} +59 -9
  12. package/dist/{chunk-O3GVVND4.js → chunk-AONELFLA.js} +0 -1
  13. package/dist/{chunk-XKUMNGBW.js → chunk-EJTNGKEA.js} +5 -8
  14. package/dist/chunk-GX7RAUME.js +121 -0
  15. package/dist/{chunk-SSUPBUF5.js → chunk-IIQYS2YH.js} +0 -1
  16. package/dist/{chunk-ABVI556T.js → chunk-IPN56VLW.js} +83 -58
  17. package/dist/{chunk-LXYLOOST.js → chunk-JE6LSIHE.js} +83 -22
  18. package/dist/{chunk-U4MRIFKL.js → chunk-JU2RHXUB.js} +0 -1
  19. package/dist/{chunk-4VUWTSGM.js → chunk-K6XRMVPW.js} +64 -31
  20. package/dist/{chunk-ODL3SSPT.js → chunk-KXOZMWBS.js} +0 -1
  21. package/dist/chunk-OGS5VCGJ.js +446 -0
  22. package/dist/{chunk-GVS2XXV6.js → chunk-PJXJI2LY.js} +449 -57
  23. package/dist/{chunk-2KPARF2P.js → chunk-PU7REGWV.js} +5 -8
  24. package/dist/{chunk-PN52A5AA.js → chunk-SBUW7NHR.js} +0 -1
  25. package/dist/{chunk-VSYHZECT.js → chunk-TAAENIRB.js} +5 -8
  26. package/dist/{chunk-WC7WULGV.js → chunk-X2DEAXNK.js} +62 -2
  27. package/dist/container/index.js +1 -2
  28. package/dist/csv/index.d.ts +27 -2
  29. package/dist/csv/index.js +1 -2
  30. package/dist/docx/index.d.ts +5 -1
  31. package/dist/docx/index.js +9 -10
  32. package/dist/epub/index.d.ts +2 -0
  33. package/dist/epub/index.js +5 -6
  34. package/dist/{export-D2NkylDT.d.ts → export-D9msROJS.d.ts} +18 -6
  35. package/dist/extract-MN7LA3NL.js +13 -0
  36. package/dist/html/index.d.ts +11 -4
  37. package/dist/html/index.js +3 -4
  38. package/dist/images-ESPQKVTW.js +6 -0
  39. package/dist/{import-K8mfc0fz.d.ts → import-C3htUTss.d.ts} +5 -1
  40. package/dist/{import-DTkDxHmZ.d.ts → import-C8whCC7_.d.ts} +6 -0
  41. package/dist/index.d.ts +7 -7
  42. package/dist/index.js +28 -26
  43. package/dist/infer/index.d.ts +3 -3
  44. package/dist/infer/index.js +7 -9
  45. package/dist/{layouts-BHrgZ5FS.d.ts → layouts-CTdPlB-u.d.ts} +1 -1
  46. package/dist/layouts-DRWZGSPD.js +10 -0
  47. package/dist/{mapTheme-IR27S6IV.js → mapTheme-4TWH25FT.js} +1 -2
  48. package/dist/ooxml/index.d.ts +3 -3
  49. package/dist/ooxml/index.js +14 -13
  50. package/dist/pdf/index.d.ts +18 -0
  51. package/dist/pdf/index.js +2 -3
  52. package/dist/pptx/index.d.ts +4 -4
  53. package/dist/pptx/index.js +11 -13
  54. package/dist/{reader-B9L8Ucbj.d.ts → reader-B_m1aKZC.d.ts} +30 -1
  55. package/dist/registry/index.d.ts +21 -5
  56. package/dist/registry/index.js +9 -6
  57. package/dist/{themeReader-DJKErl_j.d.ts → themeReader-DCtwC83Q.d.ts} +1 -1
  58. package/dist/xlsx/index.d.ts +3 -3
  59. package/dist/xlsx/index.js +6 -7
  60. package/package.json +6 -3
  61. package/dist/chunk-2KPARF2P.js.map +0 -1
  62. package/dist/chunk-4VUWTSGM.js.map +0 -1
  63. package/dist/chunk-6M7Z25LA.js +0 -46
  64. package/dist/chunk-6M7Z25LA.js.map +0 -1
  65. package/dist/chunk-ABVI556T.js.map +0 -1
  66. package/dist/chunk-CRAVSMPZ.js.map +0 -1
  67. package/dist/chunk-FE6OJV6O.js.map +0 -1
  68. package/dist/chunk-GVS2XXV6.js.map +0 -1
  69. package/dist/chunk-HTW2M27H.js.map +0 -1
  70. package/dist/chunk-LXYLOOST.js.map +0 -1
  71. package/dist/chunk-MLX2BOJC.js.map +0 -1
  72. package/dist/chunk-NKAJPJ4G.js.map +0 -1
  73. package/dist/chunk-O3GVVND4.js.map +0 -1
  74. package/dist/chunk-ODL3SSPT.js.map +0 -1
  75. package/dist/chunk-PN52A5AA.js.map +0 -1
  76. package/dist/chunk-QRVN6A6E.js.map +0 -1
  77. package/dist/chunk-RFAPOKHJ.js.map +0 -1
  78. package/dist/chunk-SSUPBUF5.js.map +0 -1
  79. package/dist/chunk-U32AG3G3.js.map +0 -1
  80. package/dist/chunk-U4MRIFKL.js.map +0 -1
  81. package/dist/chunk-VJJM2SSH.js +0 -275
  82. package/dist/chunk-VJJM2SSH.js.map +0 -1
  83. package/dist/chunk-VSYHZECT.js.map +0 -1
  84. package/dist/chunk-WC7WULGV.js.map +0 -1
  85. package/dist/chunk-XKUMNGBW.js.map +0 -1
  86. package/dist/chunk-YRT7GQ5Y.js +0 -28
  87. package/dist/chunk-YRT7GQ5Y.js.map +0 -1
  88. package/dist/container/index.js.map +0 -1
  89. package/dist/csv/index.js.map +0 -1
  90. package/dist/docx/index.js.map +0 -1
  91. package/dist/epub/index.js.map +0 -1
  92. package/dist/extract-H6RXJMHP.js +0 -15
  93. package/dist/extract-H6RXJMHP.js.map +0 -1
  94. package/dist/html/index.js.map +0 -1
  95. package/dist/images-7FBWPKE3.js +0 -7
  96. package/dist/images-7FBWPKE3.js.map +0 -1
  97. package/dist/index.js.map +0 -1
  98. package/dist/infer/index.js.map +0 -1
  99. package/dist/layouts-QVPK3ZCU.js +0 -12
  100. package/dist/layouts-QVPK3ZCU.js.map +0 -1
  101. package/dist/mapTheme-IR27S6IV.js.map +0 -1
  102. package/dist/ooxml/index.js.map +0 -1
  103. package/dist/pdf/index.js.map +0 -1
  104. package/dist/pptx/index.js.map +0 -1
  105. package/dist/registry/index.js.map +0 -1
  106. package/dist/xlsx/index.js.map +0 -1
  107. package/src/__tests__/container.test.ts +0 -230
  108. package/src/__tests__/convert.test.ts +0 -495
  109. package/src/__tests__/csvImport.test.ts +0 -84
  110. package/src/__tests__/docxExport.test.ts +0 -457
  111. package/src/__tests__/docxImport.test.ts +0 -410
  112. package/src/__tests__/epub.test.ts +0 -649
  113. package/src/__tests__/exportThemeReconciliation.test.ts +0 -87
  114. package/src/__tests__/formatRegistry.test.ts +0 -174
  115. package/src/__tests__/html.test.ts +0 -435
  116. package/src/__tests__/htmlImport.test.ts +0 -57
  117. package/src/__tests__/inferTheme.test.ts +0 -135
  118. package/src/__tests__/lossyWarnings.test.ts +0 -146
  119. package/src/__tests__/ooxml.test.ts +0 -271
  120. package/src/__tests__/ooxmlCancellation.test.ts +0 -113
  121. package/src/__tests__/ooxmlThemeReader.test.ts +0 -92
  122. package/src/__tests__/pdfExport.test.ts +0 -322
  123. package/src/__tests__/pdfImport.test.ts +0 -384
  124. package/src/__tests__/plainHtml.test.ts +0 -417
  125. package/src/__tests__/plainHtmlBundle.test.ts +0 -253
  126. package/src/__tests__/pptxExport.test.ts +0 -138
  127. package/src/__tests__/pptxImport.test.ts +0 -145
  128. package/src/__tests__/pptxInferFixtures.ts +0 -314
  129. package/src/__tests__/pptxLayoutInfer.test.ts +0 -395
  130. package/src/__tests__/roundTrip.test.ts +0 -201
  131. package/src/__tests__/roundTripAssets.test.ts +0 -50
  132. package/src/__tests__/roundTripMatrix.fixtures.ts +0 -86
  133. package/src/__tests__/roundTripMatrix.helpers.ts +0 -154
  134. package/src/__tests__/roundTripMatrix.test.ts +0 -142
  135. package/src/__tests__/sharedContainer.test.ts +0 -41
  136. package/src/__tests__/sharedImages.test.ts +0 -61
  137. package/src/__tests__/xlsxExport.test.ts +0 -164
  138. package/src/__tests__/xlsxImport.test.ts +0 -80
  139. package/src/__tests__/zipSafety.test.ts +0 -317
  140. package/src/container/index.ts +0 -94
  141. package/src/csv/index.ts +0 -188
  142. package/src/docx/export.ts +0 -1267
  143. package/src/docx/import.ts +0 -995
  144. package/src/docx/index.ts +0 -26
  145. package/src/docx/styles.ts +0 -145
  146. package/src/epub/export.ts +0 -968
  147. package/src/epub/index.ts +0 -20
  148. package/src/html/docsHtmlBundle.ts +0 -373
  149. package/src/html/htmlTemplate.ts +0 -385
  150. package/src/html/imageUtils.ts +0 -61
  151. package/src/html/import.ts +0 -297
  152. package/src/html/index.ts +0 -212
  153. package/src/html/plainHtml.ts +0 -790
  154. package/src/html/plainHtmlBundle.ts +0 -421
  155. package/src/index.ts +0 -109
  156. package/src/infer/extract.ts +0 -127
  157. package/src/infer/index.ts +0 -199
  158. package/src/infer/mapTheme.ts +0 -176
  159. package/src/infer/types.ts +0 -27
  160. package/src/ooxml/index.ts +0 -111
  161. package/src/ooxml/namespaces.ts +0 -196
  162. package/src/ooxml/readUtils.ts +0 -44
  163. package/src/ooxml/reader.ts +0 -318
  164. package/src/ooxml/themeReader.ts +0 -197
  165. package/src/ooxml/types.ts +0 -103
  166. package/src/ooxml/writer.ts +0 -339
  167. package/src/ooxml/xmlUtils.ts +0 -123
  168. package/src/pdf/export.ts +0 -1084
  169. package/src/pdf/import.ts +0 -1164
  170. package/src/pdf/index.ts +0 -29
  171. package/src/pdf/styles.ts +0 -180
  172. package/src/pptx/export.ts +0 -1184
  173. package/src/pptx/import.ts +0 -455
  174. package/src/pptx/index.ts +0 -52
  175. package/src/pptx/layouts.ts +0 -1222
  176. package/src/pptx/styles.ts +0 -96
  177. package/src/pptx/templates.ts +0 -187
  178. package/src/registry/convert.ts +0 -433
  179. package/src/registry/defaultFormats.ts +0 -413
  180. package/src/registry/errors.ts +0 -46
  181. package/src/registry/index.ts +0 -43
  182. package/src/registry/registry.ts +0 -48
  183. package/src/registry/types.ts +0 -170
  184. package/src/shared/boundedZipArchive.ts +0 -383
  185. package/src/shared/container.ts +0 -28
  186. package/src/shared/fidelity.ts +0 -130
  187. package/src/shared/images.ts +0 -44
  188. package/src/shared/inlineRuns.ts +0 -99
  189. package/src/shared/text.ts +0 -41
  190. package/src/shared/zipEntryCount.ts +0 -151
  191. package/src/shared/zipLimits.ts +0 -296
  192. package/src/shared/zipSafety.ts +0 -19
  193. package/src/xlsx/export.ts +0 -253
  194. package/src/xlsx/import.ts +0 -160
  195. package/src/xlsx/index.ts +0 -35
@@ -1,96 +0,0 @@
1
- /**
2
- * PPTX Constants & Style Definitions
3
- *
4
- * Shared constants for PPTX export: slide dimensions, text box positioning,
5
- * font sizes, and unit conversion helpers. All dimensions are in EMU
6
- * (English Metric Units) unless otherwise noted.
7
- *
8
- * 1 inch = 914400 EMU
9
- * 1 point = 12700 EMU
10
- * Font sizes in PPTX are in hundredths of a point (centi-points).
11
- */
12
-
13
- // ============================================
14
- // Slide Dimensions (EMU)
15
- // ============================================
16
-
17
- /** Widescreen slide width: 10 inches */
18
- export const SLIDE_WIDTH = 9144000;
19
-
20
- /** Widescreen slide height: 7.5 inches */
21
- export const SLIDE_HEIGHT = 6858000;
22
-
23
- // ============================================
24
- // Title Shape Positioning (EMU)
25
- // ============================================
26
-
27
- /** Title shape left offset: 0.5 inches */
28
- export const TITLE_LEFT = 457200;
29
-
30
- /** Title shape top offset: 0.3 inches */
31
- export const TITLE_TOP = 274638;
32
-
33
- /** Title shape width: 9 inches */
34
- export const TITLE_WIDTH = 8229600;
35
-
36
- /** Title shape height: 1.25 inches */
37
- export const TITLE_HEIGHT = 1143000;
38
-
39
- // ============================================
40
- // Body Shape Positioning (EMU)
41
- // ============================================
42
-
43
- /** Body shape left offset: 0.5 inches */
44
- export const BODY_LEFT = 457200;
45
-
46
- /** Body shape top offset: 1.75 inches */
47
- export const BODY_TOP = 1600200;
48
-
49
- /** Body shape width: 9 inches */
50
- export const BODY_WIDTH = 8229600;
51
-
52
- /** Body shape height: 4.95 inches */
53
- export const BODY_HEIGHT = 4525963;
54
-
55
- // ============================================
56
- // Default Fonts & Sizes
57
- // ============================================
58
-
59
- /** Default font for body text */
60
- export const DEFAULT_FONT = 'Calibri';
61
-
62
- /** Default font for titles */
63
- export const DEFAULT_TITLE_FONT = 'Calibri Light';
64
-
65
- /** Default font for code blocks */
66
- export const DEFAULT_CODE_FONT = 'Consolas';
67
-
68
- /** Default title font size in centi-points (44pt) */
69
- export const DEFAULT_TITLE_SIZE = 4400;
70
-
71
- /** Default body font size in centi-points (18pt) */
72
- export const DEFAULT_BODY_SIZE = 1800;
73
-
74
- /** Default code font size in centi-points (14pt) */
75
- export const DEFAULT_CODE_SIZE = 1400;
76
-
77
- /** Hyperlink color (standard blue) */
78
- export const HYPERLINK_COLOR = '0563C1';
79
-
80
- // ============================================
81
- // Unit Helpers
82
- // ============================================
83
-
84
- /**
85
- * Convert inches to EMUs.
86
- */
87
- export function inchesToEmu(inches: number): number {
88
- return Math.round(inches * 914400);
89
- }
90
-
91
- /**
92
- * Convert points to centi-points (PPTX font size unit).
93
- */
94
- export function pointsToCentiPoints(points: number): number {
95
- return Math.round(points * 100);
96
- }
@@ -1,187 +0,0 @@
1
- /**
2
- * PPTX Boilerplate Templates
3
- *
4
- * Minimal but valid XML templates for the required PPTX support parts:
5
- * slide master, slide layout, and theme. These are semi-static — they
6
- * don't change per-document but are required for PowerPoint to open the file.
7
- */
8
-
9
- import { xmlDeclaration } from '../ooxml/xmlUtils.js';
10
- import { NS_PML, NS_DRAWINGML, NS_R } from '../ooxml/namespaces.js';
11
- import {
12
- SLIDE_WIDTH,
13
- SLIDE_HEIGHT,
14
- TITLE_LEFT,
15
- TITLE_TOP,
16
- TITLE_WIDTH,
17
- TITLE_HEIGHT,
18
- BODY_LEFT,
19
- BODY_TOP,
20
- BODY_WIDTH,
21
- BODY_HEIGHT,
22
- } from './styles.js';
23
-
24
- /**
25
- * Build presentation.xml — the root document listing all slides.
26
- */
27
- export function buildPresentationXml(
28
- slideCount: number,
29
- slideRelIds: string[],
30
- slideMasterRelId: string,
31
- _themeRelId: string,
32
- ): string {
33
- const sldIdList: string[] = [];
34
- for (let i = 0; i < slideCount; i++) {
35
- // Slide IDs start at 256 (PowerPoint convention)
36
- sldIdList.push(`<p:sldId id="${256 + i}" r:id="${slideRelIds[i]}"/>`);
37
- }
38
-
39
- return (
40
- xmlDeclaration() +
41
- `<p:presentation xmlns:a="${NS_DRAWINGML}" xmlns:r="${NS_R}" xmlns:p="${NS_PML}"` +
42
- ` saveSubsetFonts="1">` +
43
- `<p:sldMasterIdLst>` +
44
- `<p:sldMasterId id="2147483648" r:id="${slideMasterRelId}"/>` +
45
- `</p:sldMasterIdLst>` +
46
- `<p:sldIdLst>${sldIdList.join('')}</p:sldIdLst>` +
47
- `<p:sldSz cx="${SLIDE_WIDTH}" cy="${SLIDE_HEIGHT}" type="screen4x3"/>` +
48
- `<p:notesSz cx="${SLIDE_HEIGHT}" cy="${SLIDE_WIDTH}"/>` +
49
- `</p:presentation>`
50
- );
51
- }
52
-
53
- /**
54
- * Build a minimal slide master (slideMaster1.xml).
55
- */
56
- export function buildSlideMasterXml(layoutRelId: string): string {
57
- return (
58
- xmlDeclaration() +
59
- `<p:sldMaster xmlns:a="${NS_DRAWINGML}" xmlns:r="${NS_R}" xmlns:p="${NS_PML}">` +
60
- `<p:cSld>` +
61
- `<p:bg>` +
62
- `<p:bgRef idx="1001">` +
63
- `<a:schemeClr val="bg1"/>` +
64
- `</p:bgRef>` +
65
- `</p:bg>` +
66
- `<p:spTree>` +
67
- `<p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr>` +
68
- `<p:grpSpPr/>` +
69
- `</p:spTree>` +
70
- `</p:cSld>` +
71
- `<p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2"` +
72
- ` accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4"` +
73
- ` accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/>` +
74
- `<p:sldLayoutIdLst>` +
75
- `<p:sldLayoutId id="2147483649" r:id="${layoutRelId}"/>` +
76
- `</p:sldLayoutIdLst>` +
77
- `</p:sldMaster>`
78
- );
79
- }
80
-
81
- /**
82
- * Build a minimal slide layout (slideLayout1.xml) — title + content.
83
- */
84
- export function buildSlideLayoutXml(_masterRelId: string): string {
85
- return (
86
- xmlDeclaration() +
87
- `<p:sldLayout xmlns:a="${NS_DRAWINGML}" xmlns:r="${NS_R}" xmlns:p="${NS_PML}"` +
88
- ` type="obj" preserve="1">` +
89
- `<p:cSld name="Title and Content">` +
90
- `<p:spTree>` +
91
- `<p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr>` +
92
- `<p:grpSpPr/>` +
93
- // Title placeholder
94
- `<p:sp>` +
95
- `<p:nvSpPr>` +
96
- `<p:cNvPr id="2" name="Title 1"/>` +
97
- `<p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr>` +
98
- `<p:nvPr><p:ph type="title"/></p:nvPr>` +
99
- `</p:nvSpPr>` +
100
- `<p:spPr>` +
101
- `<a:xfrm><a:off x="${TITLE_LEFT}" y="${TITLE_TOP}"/>` +
102
- `<a:ext cx="${TITLE_WIDTH}" cy="${TITLE_HEIGHT}"/></a:xfrm>` +
103
- `</p:spPr>` +
104
- `<p:txBody><a:bodyPr/><a:lstStyle/><a:p><a:endParaRPr lang="en-US"/></a:p></p:txBody>` +
105
- `</p:sp>` +
106
- // Content placeholder
107
- `<p:sp>` +
108
- `<p:nvSpPr>` +
109
- `<p:cNvPr id="3" name="Content 2"/>` +
110
- `<p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr>` +
111
- `<p:nvPr><p:ph idx="1"/></p:nvPr>` +
112
- `</p:nvSpPr>` +
113
- `<p:spPr>` +
114
- `<a:xfrm><a:off x="${BODY_LEFT}" y="${BODY_TOP}"/>` +
115
- `<a:ext cx="${BODY_WIDTH}" cy="${BODY_HEIGHT}"/></a:xfrm>` +
116
- `</p:spPr>` +
117
- `<p:txBody><a:bodyPr/><a:lstStyle/><a:p><a:endParaRPr lang="en-US"/></a:p></p:txBody>` +
118
- `</p:sp>` +
119
- `</p:spTree>` +
120
- `</p:cSld>` +
121
- `</p:sldLayout>`
122
- );
123
- }
124
-
125
- /**
126
- * Build a minimal DrawingML theme (theme1.xml).
127
- */
128
- export function buildThemeXml(): string {
129
- return (
130
- xmlDeclaration() +
131
- `<a:theme xmlns:a="${NS_DRAWINGML}" name="Office Theme">` +
132
- `<a:themeElements>` +
133
- // Color scheme
134
- `<a:clrScheme name="Office">` +
135
- `<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>` +
136
- `<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>` +
137
- `<a:dk2><a:srgbClr val="44546A"/></a:dk2>` +
138
- `<a:lt2><a:srgbClr val="E7E6E6"/></a:lt2>` +
139
- `<a:accent1><a:srgbClr val="4472C4"/></a:accent1>` +
140
- `<a:accent2><a:srgbClr val="ED7D31"/></a:accent2>` +
141
- `<a:accent3><a:srgbClr val="A5A5A5"/></a:accent3>` +
142
- `<a:accent4><a:srgbClr val="FFC000"/></a:accent4>` +
143
- `<a:accent5><a:srgbClr val="5B9BD5"/></a:accent5>` +
144
- `<a:accent6><a:srgbClr val="70AD47"/></a:accent6>` +
145
- `<a:hlink><a:srgbClr val="0563C1"/></a:hlink>` +
146
- `<a:folHlink><a:srgbClr val="954F72"/></a:folHlink>` +
147
- `</a:clrScheme>` +
148
- // Font scheme
149
- `<a:fontScheme name="Office">` +
150
- `<a:majorFont>` +
151
- `<a:latin typeface="Calibri Light"/>` +
152
- `<a:ea typeface=""/>` +
153
- `<a:cs typeface=""/>` +
154
- `</a:majorFont>` +
155
- `<a:minorFont>` +
156
- `<a:latin typeface="Calibri"/>` +
157
- `<a:ea typeface=""/>` +
158
- `<a:cs typeface=""/>` +
159
- `</a:minorFont>` +
160
- `</a:fontScheme>` +
161
- // Format scheme (minimal)
162
- `<a:fmtScheme name="Office">` +
163
- `<a:fillStyleLst>` +
164
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
165
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
166
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
167
- `</a:fillStyleLst>` +
168
- `<a:lnStyleLst>` +
169
- `<a:ln w="6350"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln>` +
170
- `<a:ln w="6350"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln>` +
171
- `<a:ln w="6350"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln>` +
172
- `</a:lnStyleLst>` +
173
- `<a:effectStyleLst>` +
174
- `<a:effectStyle><a:effectLst/></a:effectStyle>` +
175
- `<a:effectStyle><a:effectLst/></a:effectStyle>` +
176
- `<a:effectStyle><a:effectLst/></a:effectStyle>` +
177
- `</a:effectStyleLst>` +
178
- `<a:bgFillStyleLst>` +
179
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
180
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
181
- `<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>` +
182
- `</a:bgFillStyleLst>` +
183
- `</a:fmtScheme>` +
184
- `</a:themeElements>` +
185
- `</a:theme>`
186
- );
187
- }