@zergai/ztc 0.2.5-dev.36050717543 → 0.2.6-dev.36101352252

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 (366) hide show
  1. package/THIRD_PARTY_NOTICES.md +16 -5
  2. package/dist/zlm-embed.mjs +1 -1
  3. package/node_modules/exceljs/LICENSE +0 -1
  4. package/node_modules/exceljs/index.d.ts +6 -6
  5. package/node_modules/exceljs/package.json +1 -46
  6. package/package.json +10 -4
  7. package/{node_modules/exceljs/dist → packages/exceljs}/LICENSE +0 -1
  8. package/packages/exceljs/PROVENANCE.md +18 -0
  9. package/packages/exceljs/excel.js +13 -0
  10. package/packages/exceljs/index.d.ts +2035 -0
  11. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/csv/csv.js +97 -88
  12. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/csv/line-buffer.js +12 -6
  13. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/csv/stream-converter.js +30 -5
  14. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/anchor.js +26 -8
  15. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/cell.js +245 -82
  16. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/column.js +53 -7
  17. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/data-validations.js +5 -4
  18. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/defined-names.js +38 -15
  19. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/enums.js +7 -8
  20. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/image.js +13 -23
  21. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/modelcontainer.js +3 -1
  22. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/note.js +19 -18
  23. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/range.js +91 -63
  24. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/row.js +86 -53
  25. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/table.js +63 -41
  26. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/workbook.js +43 -24
  27. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/doc/worksheet.js +150 -123
  28. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/exceljs.bare.js +3 -4
  29. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/exceljs.browser.js +4 -4
  30. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/exceljs.nodejs.js +5 -6
  31. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/hyperlink-reader.js +16 -23
  32. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/sheet-comments-writer.js +35 -8
  33. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/sheet-rels-writer.js +34 -9
  34. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/workbook-reader.js +52 -77
  35. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/workbook-writer.js +101 -101
  36. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/worksheet-reader.js +52 -70
  37. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/stream/xlsx/worksheet-writer.js +161 -96
  38. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/auto-drain.js +3 -6
  39. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/browser-buffer-decode.js +2 -3
  40. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/browser-buffer-encode.js +3 -6
  41. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/cell-matrix.js +34 -18
  42. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/col-cache.js +62 -33
  43. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/copy-style.js +12 -12
  44. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/encryptor.js +3 -6
  45. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/iterate-stream.js +6 -4
  46. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/parse-sax.js +6 -23
  47. package/packages/exceljs/lib/utils/shared-formula.js +44 -0
  48. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/shared-strings.js +6 -3
  49. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/stream-base64.js +17 -11
  50. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/stream-buf.js +33 -12
  51. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/string-buf.js +14 -5
  52. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/string-builder.js +6 -3
  53. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/stuttered-pipe.js +9 -3
  54. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/typed-stack.js +4 -3
  55. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/under-dash.js +30 -14
  56. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/utils.js +28 -27
  57. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/xml-stream.js +23 -5
  58. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/utils/zip-stream.js +22 -14
  59. package/packages/exceljs/lib/xlsx/.rels +11 -0
  60. package/packages/exceljs/lib/xlsx/calcChain.xml +6 -0
  61. package/packages/exceljs/lib/xlsx/core.xml +7 -0
  62. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/defaultnumformats.js +61 -138
  63. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/rel-type.js +9 -6
  64. package/packages/exceljs/lib/xlsx/styles.xml +41 -0
  65. package/packages/exceljs/lib/xlsx/workbook.xml +16 -0
  66. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/base-xform.js +27 -21
  67. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/defined-name-xform.js +11 -5
  68. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/sheet-xform.js +7 -5
  69. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/workbook-calc-properties-xform.js +6 -4
  70. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/workbook-properties-xform.js +7 -5
  71. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/workbook-view-xform.js +11 -9
  72. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/book/workbook-xform.js +45 -24
  73. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/comment-xform.js +11 -9
  74. package/packages/exceljs/lib/xlsx/xform/comment/comments-xform.js +82 -0
  75. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/style/vml-position-xform.js +7 -3
  76. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/style/vml-protection-xform.js +7 -3
  77. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/vml-anchor-xform.js +11 -4
  78. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/vml-client-data-xform.js +22 -24
  79. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/vml-notes-xform.js +21 -21
  80. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/vml-shape-xform.js +22 -19
  81. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/comment/vml-textbox-xform.js +17 -14
  82. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/composite-xform.js +8 -3
  83. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/app-heading-pairs-xform.js +9 -7
  84. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/app-titles-of-parts-xform.js +8 -7
  85. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/app-xform.js +23 -16
  86. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/content-types-xform.js +36 -28
  87. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/core-xform.js +33 -55
  88. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/relationship-xform.js +5 -3
  89. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/core/relationships-xform.js +13 -5
  90. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/base-cell-anchor-xform.js +6 -5
  91. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/blip-fill-xform.js +14 -4
  92. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/blip-xform.js +7 -5
  93. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/c-nv-pic-pr-xform.js +7 -4
  94. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/c-nv-pr-xform.js +11 -5
  95. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/cell-position-xform.js +15 -20
  96. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/drawing-xform.js +20 -9
  97. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/ext-lst-xform.js +8 -5
  98. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/ext-xform.js +13 -7
  99. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/hlink-click-xform.js +9 -6
  100. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/nv-pic-pr-xform.js +10 -4
  101. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/one-cell-anchor-xform.js +15 -15
  102. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/pic-xform.js +14 -4
  103. package/packages/exceljs/lib/xlsx/xform/drawing/sp-pr.js +17 -0
  104. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/drawing/two-cell-anchor-xform.js +15 -15
  105. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/list-xform.js +18 -14
  106. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/auto-filter-xform.js +8 -10
  107. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cell-xform.js +118 -71
  108. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/cf-rule-xform.js +64 -38
  109. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/cfvo-xform.js +7 -5
  110. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/color-scale-xform.js +13 -6
  111. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/conditional-formatting-xform.js +15 -12
  112. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/conditional-formattings-xform.js +19 -4
  113. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/databar-xform.js +13 -6
  114. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +22 -6
  115. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/formula-xform.js +6 -3
  116. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf/icon-set-xform.js +14 -10
  117. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +8 -9
  118. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +26 -16
  119. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +11 -6
  120. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +17 -7
  121. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +11 -4
  122. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +41 -18
  123. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/f-ext-xform.js +6 -3
  124. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +18 -11
  125. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +6 -3
  126. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/col-xform.js +14 -6
  127. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/data-validations-xform.js +123 -113
  128. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/dimension-xform.js +7 -6
  129. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/drawing-xform.js +8 -7
  130. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/ext-lst-xform.js +23 -6
  131. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/header-footer-xform.js +23 -3
  132. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/hyperlink-xform.js +10 -6
  133. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/merge-cell-xform.js +7 -6
  134. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/merges.js +8 -4
  135. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/outline-properties-xform.js +14 -6
  136. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/page-breaks-xform.js +6 -3
  137. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/page-margins-xform.js +8 -5
  138. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/page-setup-properties-xform.js +8 -5
  139. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/page-setup-xform.js +9 -5
  140. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/picture-xform.js +8 -7
  141. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/print-options-xform.js +9 -5
  142. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/row-breaks-xform.js +7 -5
  143. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/row-xform.js +22 -8
  144. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/sheet-format-properties-xform.js +9 -5
  145. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/sheet-properties-xform.js +11 -4
  146. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/sheet-protection-xform.js +10 -5
  147. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/sheet-view-xform.js +39 -27
  148. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/table-part-xform.js +8 -7
  149. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/sheet/worksheet-xform.js +138 -112
  150. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/simple/boolean-xform.js +7 -3
  151. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/simple/date-xform.js +22 -14
  152. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/simple/float-xform.js +7 -3
  153. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/simple/integer-xform.js +7 -3
  154. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/simple/string-xform.js +7 -3
  155. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/static-xform.js +6 -3
  156. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/strings/phonetic-text-xform.js +20 -20
  157. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/strings/rich-text-xform.js +13 -4
  158. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/strings/shared-string-xform.js +18 -15
  159. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/strings/shared-strings-xform.js +18 -5
  160. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/strings/text-xform.js +9 -4
  161. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/alignment-xform.js +42 -9
  162. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/border-xform.js +52 -30
  163. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/color-xform.js +9 -12
  164. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/dxf-xform.js +14 -9
  165. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/fill-xform.js +86 -30
  166. package/packages/exceljs/lib/xlsx/xform/style/font-xform.js +102 -0
  167. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/numfmt-xform.js +13 -9
  168. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/protection-xform.js +12 -5
  169. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/style-xform.js +13 -6
  170. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/styles-xform.js +123 -208
  171. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/style/underline-xform.js +13 -12
  172. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/auto-filter-xform.js +17 -11
  173. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/custom-filter-xform.js +8 -5
  174. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/filter-column-xform.js +19 -12
  175. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/filter-xform.js +8 -5
  176. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/table-column-xform.js +10 -8
  177. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/table-style-info-xform.js +9 -8
  178. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xform/table/table-xform.js +20 -12
  179. package/{node_modules/exceljs/dist/es5 → packages/exceljs/lib}/xlsx/xlsx.js +197 -200
  180. package/packages/exceljs/lib/xlsx/xml/theme1.js +3 -0
  181. package/packages/exceljs/lib/xlsx/xml/theme1.xml +318 -0
  182. package/packages/exceljs/package.json +104 -0
  183. package/packages/sim-graph/package.json +3 -0
  184. package/node_modules/exceljs/README.md +0 -3023
  185. package/node_modules/exceljs/README_zh.md +0 -2878
  186. package/node_modules/exceljs/dist/es5/csv/csv.js.map +0 -1
  187. package/node_modules/exceljs/dist/es5/csv/line-buffer.js.map +0 -1
  188. package/node_modules/exceljs/dist/es5/csv/stream-converter.js.map +0 -1
  189. package/node_modules/exceljs/dist/es5/doc/anchor.js.map +0 -1
  190. package/node_modules/exceljs/dist/es5/doc/cell.js.map +0 -1
  191. package/node_modules/exceljs/dist/es5/doc/column.js.map +0 -1
  192. package/node_modules/exceljs/dist/es5/doc/data-validations.js.map +0 -1
  193. package/node_modules/exceljs/dist/es5/doc/defined-names.js.map +0 -1
  194. package/node_modules/exceljs/dist/es5/doc/enums.js.map +0 -1
  195. package/node_modules/exceljs/dist/es5/doc/image.js.map +0 -1
  196. package/node_modules/exceljs/dist/es5/doc/modelcontainer.js.map +0 -1
  197. package/node_modules/exceljs/dist/es5/doc/note.js.map +0 -1
  198. package/node_modules/exceljs/dist/es5/doc/range.js.map +0 -1
  199. package/node_modules/exceljs/dist/es5/doc/row.js.map +0 -1
  200. package/node_modules/exceljs/dist/es5/doc/table.js.map +0 -1
  201. package/node_modules/exceljs/dist/es5/doc/workbook.js.map +0 -1
  202. package/node_modules/exceljs/dist/es5/doc/worksheet.js.map +0 -1
  203. package/node_modules/exceljs/dist/es5/exceljs.bare.js.map +0 -1
  204. package/node_modules/exceljs/dist/es5/exceljs.browser.js.map +0 -1
  205. package/node_modules/exceljs/dist/es5/exceljs.nodejs.js.map +0 -1
  206. package/node_modules/exceljs/dist/es5/index.js +0 -15
  207. package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js.map +0 -1
  208. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js.map +0 -1
  209. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js.map +0 -1
  210. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js.map +0 -1
  211. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js.map +0 -1
  212. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js.map +0 -1
  213. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js.map +0 -1
  214. package/node_modules/exceljs/dist/es5/utils/auto-drain.js.map +0 -1
  215. package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js.map +0 -1
  216. package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js.map +0 -1
  217. package/node_modules/exceljs/dist/es5/utils/cell-matrix.js.map +0 -1
  218. package/node_modules/exceljs/dist/es5/utils/col-cache.js.map +0 -1
  219. package/node_modules/exceljs/dist/es5/utils/copy-style.js.map +0 -1
  220. package/node_modules/exceljs/dist/es5/utils/encryptor.js.map +0 -1
  221. package/node_modules/exceljs/dist/es5/utils/iterate-stream.js.map +0 -1
  222. package/node_modules/exceljs/dist/es5/utils/parse-sax.js.map +0 -1
  223. package/node_modules/exceljs/dist/es5/utils/shared-formula.js +0 -42
  224. package/node_modules/exceljs/dist/es5/utils/shared-formula.js.map +0 -1
  225. package/node_modules/exceljs/dist/es5/utils/shared-strings.js.map +0 -1
  226. package/node_modules/exceljs/dist/es5/utils/stream-base64.js.map +0 -1
  227. package/node_modules/exceljs/dist/es5/utils/stream-buf.js.map +0 -1
  228. package/node_modules/exceljs/dist/es5/utils/string-buf.js.map +0 -1
  229. package/node_modules/exceljs/dist/es5/utils/string-builder.js.map +0 -1
  230. package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js.map +0 -1
  231. package/node_modules/exceljs/dist/es5/utils/typed-stack.js.map +0 -1
  232. package/node_modules/exceljs/dist/es5/utils/under-dash.js.map +0 -1
  233. package/node_modules/exceljs/dist/es5/utils/utils.js.map +0 -1
  234. package/node_modules/exceljs/dist/es5/utils/xml-stream.js.map +0 -1
  235. package/node_modules/exceljs/dist/es5/utils/zip-stream.js.map +0 -1
  236. package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js.map +0 -1
  237. package/node_modules/exceljs/dist/es5/xlsx/rel-type.js.map +0 -1
  238. package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js.map +0 -1
  239. package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js.map +0 -1
  240. package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js.map +0 -1
  241. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js.map +0 -1
  242. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js.map +0 -1
  243. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js.map +0 -1
  244. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js.map +0 -1
  245. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js.map +0 -1
  246. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js +0 -76
  247. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js.map +0 -1
  248. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js.map +0 -1
  249. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js.map +0 -1
  250. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js.map +0 -1
  251. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js.map +0 -1
  252. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js.map +0 -1
  253. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +0 -1
  254. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +0 -1
  255. package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js.map +0 -1
  256. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js.map +0 -1
  257. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js.map +0 -1
  258. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js.map +0 -1
  259. package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js.map +0 -1
  260. package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js.map +0 -1
  261. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js.map +0 -1
  262. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js.map +0 -1
  263. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js.map +0 -1
  264. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js.map +0 -1
  265. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js.map +0 -1
  266. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js.map +0 -1
  267. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +0 -1
  268. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js.map +0 -1
  269. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js.map +0 -1
  270. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js.map +0 -1
  271. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js.map +0 -1
  272. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js.map +0 -1
  273. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js.map +0 -1
  274. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js.map +0 -1
  275. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js.map +0 -1
  276. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js +0 -30
  277. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js.map +0 -1
  278. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js.map +0 -1
  279. package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js.map +0 -1
  280. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +0 -1
  281. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js.map +0 -1
  282. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +0 -1
  283. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js.map +0 -1
  284. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js.map +0 -1
  285. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js.map +0 -1
  286. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js.map +0 -1
  287. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js.map +0 -1
  288. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js.map +0 -1
  289. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js.map +0 -1
  290. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js.map +0 -1
  291. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js.map +0 -1
  292. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +0 -1
  293. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js.map +0 -1
  294. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js.map +0 -1
  295. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js.map +0 -1
  296. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js.map +0 -1
  297. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js.map +0 -1
  298. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js.map +0 -1
  299. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js.map +0 -1
  300. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js.map +0 -1
  301. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +0 -1
  302. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js.map +0 -1
  303. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js.map +0 -1
  304. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js.map +0 -1
  305. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js.map +0 -1
  306. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js.map +0 -1
  307. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js.map +0 -1
  308. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js.map +0 -1
  309. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js.map +0 -1
  310. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js.map +0 -1
  311. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js.map +0 -1
  312. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js.map +0 -1
  313. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js.map +0 -1
  314. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js.map +0 -1
  315. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js.map +0 -1
  316. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js.map +0 -1
  317. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js.map +0 -1
  318. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js.map +0 -1
  319. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js.map +0 -1
  320. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js.map +0 -1
  321. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js.map +0 -1
  322. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js.map +0 -1
  323. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +0 -1
  324. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js.map +0 -1
  325. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js.map +0 -1
  326. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js.map +0 -1
  327. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js.map +0 -1
  328. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js.map +0 -1
  329. package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js.map +0 -1
  330. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js.map +0 -1
  331. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js.map +0 -1
  332. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js.map +0 -1
  333. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +0 -1
  334. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js.map +0 -1
  335. package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js.map +0 -1
  336. package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js.map +0 -1
  337. package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js.map +0 -1
  338. package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js.map +0 -1
  339. package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js.map +0 -1
  340. package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js +0 -175
  341. package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js.map +0 -1
  342. package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js.map +0 -1
  343. package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js.map +0 -1
  344. package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js.map +0 -1
  345. package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js.map +0 -1
  346. package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js.map +0 -1
  347. package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +0 -1
  348. package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js.map +0 -1
  349. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js.map +0 -1
  350. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js.map +0 -1
  351. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js.map +0 -1
  352. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js.map +0 -1
  353. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js.map +0 -1
  354. package/node_modules/exceljs/dist/es5/xlsx/xlsx.js.map +0 -1
  355. package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js +0 -5
  356. package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js.map +0 -1
  357. package/node_modules/exceljs/dist/exceljs.bare.js +0 -55253
  358. package/node_modules/exceljs/dist/exceljs.bare.js.map +0 -761
  359. package/node_modules/exceljs/dist/exceljs.bare.min.js +0 -45
  360. package/node_modules/exceljs/dist/exceljs.bare.min.js.map +0 -1
  361. package/node_modules/exceljs/dist/exceljs.js +0 -59900
  362. package/node_modules/exceljs/dist/exceljs.js.map +0 -1083
  363. package/node_modules/exceljs/dist/exceljs.min.js +0 -45
  364. package/node_modules/exceljs/dist/exceljs.min.js.map +0 -1
  365. package/node_modules/exceljs/index.ts +0 -2
  366. package/node_modules/exceljs/lib/doc/data/theme1.json +0 -234
@@ -1,175 +0,0 @@
1
- 'use strict';
2
-
3
- const ColorXform = require('./color-xform');
4
- const BooleanXform = require('../simple/boolean-xform');
5
- const IntegerXform = require('../simple/integer-xform');
6
- const StringXform = require('../simple/string-xform');
7
- const UnderlineXform = require('./underline-xform');
8
- const _ = require('../../../utils/under-dash');
9
- const BaseXform = require('../base-xform');
10
-
11
- // Font encapsulates translation from font model to xlsx
12
- class FontXform extends BaseXform {
13
- constructor(options) {
14
- super();
15
- this.options = options || FontXform.OPTIONS;
16
- this.map = {
17
- b: {
18
- prop: 'bold',
19
- xform: new BooleanXform({
20
- tag: 'b',
21
- attr: 'val'
22
- })
23
- },
24
- i: {
25
- prop: 'italic',
26
- xform: new BooleanXform({
27
- tag: 'i',
28
- attr: 'val'
29
- })
30
- },
31
- u: {
32
- prop: 'underline',
33
- xform: new UnderlineXform()
34
- },
35
- charset: {
36
- prop: 'charset',
37
- xform: new IntegerXform({
38
- tag: 'charset',
39
- attr: 'val'
40
- })
41
- },
42
- color: {
43
- prop: 'color',
44
- xform: new ColorXform()
45
- },
46
- condense: {
47
- prop: 'condense',
48
- xform: new BooleanXform({
49
- tag: 'condense',
50
- attr: 'val'
51
- })
52
- },
53
- extend: {
54
- prop: 'extend',
55
- xform: new BooleanXform({
56
- tag: 'extend',
57
- attr: 'val'
58
- })
59
- },
60
- family: {
61
- prop: 'family',
62
- xform: new IntegerXform({
63
- tag: 'family',
64
- attr: 'val'
65
- })
66
- },
67
- outline: {
68
- prop: 'outline',
69
- xform: new BooleanXform({
70
- tag: 'outline',
71
- attr: 'val'
72
- })
73
- },
74
- vertAlign: {
75
- prop: 'vertAlign',
76
- xform: new StringXform({
77
- tag: 'vertAlign',
78
- attr: 'val'
79
- })
80
- },
81
- scheme: {
82
- prop: 'scheme',
83
- xform: new StringXform({
84
- tag: 'scheme',
85
- attr: 'val'
86
- })
87
- },
88
- shadow: {
89
- prop: 'shadow',
90
- xform: new BooleanXform({
91
- tag: 'shadow',
92
- attr: 'val'
93
- })
94
- },
95
- strike: {
96
- prop: 'strike',
97
- xform: new BooleanXform({
98
- tag: 'strike',
99
- attr: 'val'
100
- })
101
- },
102
- sz: {
103
- prop: 'size',
104
- xform: new IntegerXform({
105
- tag: 'sz',
106
- attr: 'val'
107
- })
108
- }
109
- };
110
- this.map[this.options.fontNameTag] = {
111
- prop: 'name',
112
- xform: new StringXform({
113
- tag: this.options.fontNameTag,
114
- attr: 'val'
115
- })
116
- };
117
- }
118
- get tag() {
119
- return this.options.tagName;
120
- }
121
- render(xmlStream, model) {
122
- const {
123
- map
124
- } = this;
125
- xmlStream.openNode(this.options.tagName);
126
- _.each(this.map, (defn, tag) => {
127
- map[tag].xform.render(xmlStream, model[defn.prop]);
128
- });
129
- xmlStream.closeNode();
130
- }
131
- parseOpen(node) {
132
- if (this.parser) {
133
- this.parser.parseOpen(node);
134
- return true;
135
- }
136
- if (this.map[node.name]) {
137
- this.parser = this.map[node.name].xform;
138
- return this.parser.parseOpen(node);
139
- }
140
- switch (node.name) {
141
- case this.options.tagName:
142
- this.model = {};
143
- return true;
144
- default:
145
- return false;
146
- }
147
- }
148
- parseText(text) {
149
- if (this.parser) {
150
- this.parser.parseText(text);
151
- }
152
- }
153
- parseClose(name) {
154
- if (this.parser && !this.parser.parseClose(name)) {
155
- const item = this.map[name];
156
- if (this.parser.model) {
157
- this.model[item.prop] = this.parser.model;
158
- }
159
- this.parser = undefined;
160
- return true;
161
- }
162
- switch (name) {
163
- case this.options.tagName:
164
- return false;
165
- default:
166
- return true;
167
- }
168
- }
169
- }
170
- FontXform.OPTIONS = {
171
- tagName: 'font',
172
- fontNameTag: 'name'
173
- };
174
- module.exports = FontXform;
175
- //# sourceMappingURL=font-xform.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"font-xform.js","names":["ColorXform","require","BooleanXform","IntegerXform","StringXform","UnderlineXform","_","BaseXform","FontXform","constructor","options","OPTIONS","map","b","prop","xform","tag","attr","i","u","charset","color","condense","extend","family","outline","vertAlign","scheme","shadow","strike","sz","fontNameTag","tagName","render","xmlStream","model","openNode","each","defn","closeNode","parseOpen","node","parser","name","parseText","text","parseClose","item","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/font-xform.js"],"sourcesContent":["'use strict';\n\nconst ColorXform = require('./color-xform');\nconst BooleanXform = require('../simple/boolean-xform');\nconst IntegerXform = require('../simple/integer-xform');\nconst StringXform = require('../simple/string-xform');\nconst UnderlineXform = require('./underline-xform');\n\nconst _ = require('../../../utils/under-dash');\nconst BaseXform = require('../base-xform');\n\n// Font encapsulates translation from font model to xlsx\nclass FontXform extends BaseXform {\n constructor(options) {\n super();\n\n this.options = options || FontXform.OPTIONS;\n\n this.map = {\n b: {prop: 'bold', xform: new BooleanXform({tag: 'b', attr: 'val'})},\n i: {prop: 'italic', xform: new BooleanXform({tag: 'i', attr: 'val'})},\n u: {prop: 'underline', xform: new UnderlineXform()},\n charset: {prop: 'charset', xform: new IntegerXform({tag: 'charset', attr: 'val'})},\n color: {prop: 'color', xform: new ColorXform()},\n condense: {prop: 'condense', xform: new BooleanXform({tag: 'condense', attr: 'val'})},\n extend: {prop: 'extend', xform: new BooleanXform({tag: 'extend', attr: 'val'})},\n family: {prop: 'family', xform: new IntegerXform({tag: 'family', attr: 'val'})},\n outline: {prop: 'outline', xform: new BooleanXform({tag: 'outline', attr: 'val'})},\n vertAlign: {prop: 'vertAlign', xform: new StringXform({tag: 'vertAlign', attr: 'val'})},\n scheme: {prop: 'scheme', xform: new StringXform({tag: 'scheme', attr: 'val'})},\n shadow: {prop: 'shadow', xform: new BooleanXform({tag: 'shadow', attr: 'val'})},\n strike: {prop: 'strike', xform: new BooleanXform({tag: 'strike', attr: 'val'})},\n sz: {prop: 'size', xform: new IntegerXform({tag: 'sz', attr: 'val'})},\n };\n this.map[this.options.fontNameTag] = {\n prop: 'name',\n xform: new StringXform({tag: this.options.fontNameTag, attr: 'val'}),\n };\n }\n\n get tag() {\n return this.options.tagName;\n }\n\n render(xmlStream, model) {\n const {map} = this;\n\n xmlStream.openNode(this.options.tagName);\n _.each(this.map, (defn, tag) => {\n map[tag].xform.render(xmlStream, model[defn.prop]);\n });\n xmlStream.closeNode();\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n if (this.map[node.name]) {\n this.parser = this.map[node.name].xform;\n return this.parser.parseOpen(node);\n }\n switch (node.name) {\n case this.options.tagName:\n this.model = {};\n return true;\n default:\n return false;\n }\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser && !this.parser.parseClose(name)) {\n const item = this.map[name];\n if (this.parser.model) {\n this.model[item.prop] = this.parser.model;\n }\n this.parser = undefined;\n return true;\n }\n switch (name) {\n case this.options.tagName:\n return false;\n default:\n return true;\n }\n }\n}\n\nFontXform.OPTIONS = {\n tagName: 'font',\n fontNameTag: 'name',\n};\n\nmodule.exports = FontXform;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"numfmt-xform.js","names":["_","require","defaultNumFormats","BaseXform","hashDefaultFormats","hash","each","dnf","id","f","parseInt","defaultFmtHash","NumFmtXform","constructor","formatCode","tag","render","xmlStream","model","leafNode","numFmtId","parseOpen","node","name","attributes","replace","parseText","parseClose","getDefaultFmtId","getDefaultFmtCode","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/numfmt-xform.js"],"sourcesContent":["const _ = require('../../../utils/under-dash');\nconst defaultNumFormats = require('../../defaultnumformats');\n\nconst BaseXform = require('../base-xform');\n\nfunction hashDefaultFormats() {\n const hash = {};\n _.each(defaultNumFormats, (dnf, id) => {\n if (dnf.f) {\n hash[dnf.f] = parseInt(id, 10);\n }\n // at some point, add the other cultures here...\n });\n return hash;\n}\nconst defaultFmtHash = hashDefaultFormats();\n\n// NumFmt encapsulates translation between number format and xlsx\nclass NumFmtXform extends BaseXform {\n constructor(id, formatCode) {\n super();\n\n this.id = id;\n this.formatCode = formatCode;\n }\n\n get tag() {\n return 'numFmt';\n }\n\n render(xmlStream, model) {\n xmlStream.leafNode('numFmt', {numFmtId: model.id, formatCode: model.formatCode});\n }\n\n parseOpen(node) {\n switch (node.name) {\n case 'numFmt':\n this.model = {\n id: parseInt(node.attributes.numFmtId, 10),\n formatCode: node.attributes.formatCode.replace(/[\\\\](.)/g, '$1'),\n };\n return true;\n default:\n return false;\n }\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nNumFmtXform.getDefaultFmtId = function getDefaultFmtId(formatCode) {\n return defaultFmtHash[formatCode];\n};\n\nNumFmtXform.getDefaultFmtCode = function getDefaultFmtCode(numFmtId) {\n return defaultNumFormats[numFmtId] && defaultNumFormats[numFmtId].f;\n};\n\nmodule.exports = NumFmtXform;\n"],"mappings":";;AAAA,MAAMA,CAAC,GAAGC,OAAO,CAAC,2BAA2B,CAAC;AAC9C,MAAMC,iBAAiB,GAAGD,OAAO,CAAC,yBAAyB,CAAC;AAE5D,MAAME,SAAS,GAAGF,OAAO,CAAC,eAAe,CAAC;AAE1C,SAASG,kBAAkBA,CAAA,EAAG;EAC5B,MAAMC,IAAI,GAAG,CAAC,CAAC;EACfL,CAAC,CAACM,IAAI,CAACJ,iBAAiB,EAAE,CAACK,GAAG,EAAEC,EAAE,KAAK;IACrC,IAAID,GAAG,CAACE,CAAC,EAAE;MACTJ,IAAI,CAACE,GAAG,CAACE,CAAC,CAAC,GAAGC,QAAQ,CAACF,EAAE,EAAE,EAAE,CAAC;IAChC;IACA;EACF,CAAC,CAAC;;EACF,OAAOH,IAAI;AACb;AACA,MAAMM,cAAc,GAAGP,kBAAkB,CAAC,CAAC;;AAE3C;AACA,MAAMQ,WAAW,SAAST,SAAS,CAAC;EAClCU,WAAWA,CAACL,EAAE,EAAEM,UAAU,EAAE;IAC1B,KAAK,CAAC,CAAC;IAEP,IAAI,CAACN,EAAE,GAAGA,EAAE;IACZ,IAAI,CAACM,UAAU,GAAGA,UAAU;EAC9B;EAEA,IAAIC,GAAGA,CAAA,EAAG;IACR,OAAO,QAAQ;EACjB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,QAAQ,EAAE;MAACC,QAAQ,EAAEF,KAAK,CAACV,EAAE;MAAEM,UAAU,EAAEI,KAAK,CAACJ;IAAU,CAAC,CAAC;EAClF;EAEAO,SAASA,CAACC,IAAI,EAAE;IACd,QAAQA,IAAI,CAACC,IAAI;MACf,KAAK,QAAQ;QACX,IAAI,CAACL,KAAK,GAAG;UACXV,EAAE,EAAEE,QAAQ,CAACY,IAAI,CAACE,UAAU,CAACJ,QAAQ,EAAE,EAAE,CAAC;UAC1CN,UAAU,EAAEQ,IAAI,CAACE,UAAU,CAACV,UAAU,CAACW,OAAO,CAAC,UAAU,EAAE,IAAI;QACjE,CAAC;QACD,OAAO,IAAI;MACb;QACE,OAAO,KAAK;IAChB;EACF;EAEAC,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAf,WAAW,CAACgB,eAAe,GAAG,SAASA,eAAeA,CAACd,UAAU,EAAE;EACjE,OAAOH,cAAc,CAACG,UAAU,CAAC;AACnC,CAAC;AAEDF,WAAW,CAACiB,iBAAiB,GAAG,SAASA,iBAAiBA,CAACT,QAAQ,EAAE;EACnE,OAAOlB,iBAAiB,CAACkB,QAAQ,CAAC,IAAIlB,iBAAiB,CAACkB,QAAQ,CAAC,CAACX,CAAC;AACrE,CAAC;AAEDqB,MAAM,CAACC,OAAO,GAAGnB,WAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"protection-xform.js","names":["BaseXform","require","validation","boolean","value","dflt","undefined","ProtectionXform","tag","render","xmlStream","model","addRollback","openNode","isValid","add","name","addAttribute","locked","hidden","closeNode","commit","rollback","parseOpen","node","attributes","isSignificant","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/protection-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nconst validation = {\n boolean(value, dflt) {\n if (value === undefined) {\n return dflt;\n }\n return value;\n },\n};\n\n// Protection encapsulates translation from style.protection model to/from xlsx\nclass ProtectionXform extends BaseXform {\n get tag() {\n return 'protection';\n }\n\n render(xmlStream, model) {\n xmlStream.addRollback();\n xmlStream.openNode('protection');\n\n let isValid = false;\n function add(name, value) {\n if (value !== undefined) {\n xmlStream.addAttribute(name, value);\n isValid = true;\n }\n }\n add('locked', validation.boolean(model.locked, true) ? undefined : '0');\n add('hidden', validation.boolean(model.hidden, false) ? '1' : undefined);\n\n xmlStream.closeNode();\n\n if (isValid) {\n xmlStream.commit();\n } else {\n xmlStream.rollback();\n }\n }\n\n parseOpen(node) {\n const model = {\n locked: !(node.attributes.locked === '0'),\n hidden: node.attributes.hidden === '1',\n };\n\n // only want to record models that differ from defaults\n const isSignificant = !model.locked || model.hidden;\n\n this.model = isSignificant ? model : null;\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = ProtectionXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,UAAU,GAAG;EACjBC,OAAOA,CAACC,KAAK,EAAEC,IAAI,EAAE;IACnB,IAAID,KAAK,KAAKE,SAAS,EAAE;MACvB,OAAOD,IAAI;IACb;IACA,OAAOD,KAAK;EACd;AACF,CAAC;;AAED;AACA,MAAMG,eAAe,SAASP,SAAS,CAAC;EACtC,IAAIQ,GAAGA,CAAA,EAAG;IACR,OAAO,YAAY;EACrB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,WAAW,CAAC,CAAC;IACvBF,SAAS,CAACG,QAAQ,CAAC,YAAY,CAAC;IAEhC,IAAIC,OAAO,GAAG,KAAK;IACnB,SAASC,GAAGA,CAACC,IAAI,EAAEZ,KAAK,EAAE;MACxB,IAAIA,KAAK,KAAKE,SAAS,EAAE;QACvBI,SAAS,CAACO,YAAY,CAACD,IAAI,EAAEZ,KAAK,CAAC;QACnCU,OAAO,GAAG,IAAI;MAChB;IACF;IACAC,GAAG,CAAC,QAAQ,EAAEb,UAAU,CAACC,OAAO,CAACQ,KAAK,CAACO,MAAM,EAAE,IAAI,CAAC,GAAGZ,SAAS,GAAG,GAAG,CAAC;IACvES,GAAG,CAAC,QAAQ,EAAEb,UAAU,CAACC,OAAO,CAACQ,KAAK,CAACQ,MAAM,EAAE,KAAK,CAAC,GAAG,GAAG,GAAGb,SAAS,CAAC;IAExEI,SAAS,CAACU,SAAS,CAAC,CAAC;IAErB,IAAIN,OAAO,EAAE;MACXJ,SAAS,CAACW,MAAM,CAAC,CAAC;IACpB,CAAC,MAAM;MACLX,SAAS,CAACY,QAAQ,CAAC,CAAC;IACtB;EACF;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,MAAMb,KAAK,GAAG;MACZO,MAAM,EAAE,EAAEM,IAAI,CAACC,UAAU,CAACP,MAAM,KAAK,GAAG,CAAC;MACzCC,MAAM,EAAEK,IAAI,CAACC,UAAU,CAACN,MAAM,KAAK;IACrC,CAAC;;IAED;IACA,MAAMO,aAAa,GAAG,CAACf,KAAK,CAACO,MAAM,IAAIP,KAAK,CAACQ,MAAM;IAEnD,IAAI,CAACR,KAAK,GAAGe,aAAa,GAAGf,KAAK,GAAG,IAAI;EAC3C;EAEAgB,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGvB,eAAe"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"style-xform.js","names":["BaseXform","require","AlignmentXform","ProtectionXform","StyleXform","constructor","options","xfId","map","alignment","protection","tag","render","xmlStream","model","openNode","numFmtId","fontId","fillId","borderId","addAttribute","closeNode","parseOpen","node","parser","name","parseInt","attributes","parseText","text","parseClose","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/style-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nconst AlignmentXform = require('./alignment-xform');\nconst ProtectionXform = require('./protection-xform');\n\n// <xf numFmtId=\"[numFmtId]\" fontId=\"[fontId]\" fillId=\"[fillId]\" borderId=\"[xf.borderId]\" xfId=\"[xfId]\">\n// Optional <alignment>\n// Optional <protection>\n// </xf>\n\n// Style assists translation from style model to/from xlsx\nclass StyleXform extends BaseXform {\n constructor(options) {\n super();\n\n this.xfId = !!(options && options.xfId);\n this.map = {\n alignment: new AlignmentXform(),\n protection: new ProtectionXform(),\n };\n }\n\n get tag() {\n return 'xf';\n }\n\n render(xmlStream, model) {\n xmlStream.openNode('xf', {\n numFmtId: model.numFmtId || 0,\n fontId: model.fontId || 0,\n fillId: model.fillId || 0,\n borderId: model.borderId || 0,\n });\n if (this.xfId) {\n xmlStream.addAttribute('xfId', model.xfId || 0);\n }\n\n if (model.numFmtId) {\n xmlStream.addAttribute('applyNumberFormat', '1');\n }\n if (model.fontId) {\n xmlStream.addAttribute('applyFont', '1');\n }\n if (model.fillId) {\n xmlStream.addAttribute('applyFill', '1');\n }\n if (model.borderId) {\n xmlStream.addAttribute('applyBorder', '1');\n }\n if (model.alignment) {\n xmlStream.addAttribute('applyAlignment', '1');\n }\n if (model.protection) {\n xmlStream.addAttribute('applyProtection', '1');\n }\n\n /**\n * Rendering tags causes close of XML stream.\n * Therefore adding attributes must be done before rendering tags.\n */\n\n if (model.alignment) {\n this.map.alignment.render(xmlStream, model.alignment);\n }\n if (model.protection) {\n this.map.protection.render(xmlStream, model.protection);\n }\n\n xmlStream.closeNode();\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n // used during sax parsing of xml to build font object\n switch (node.name) {\n case 'xf':\n this.model = {\n numFmtId: parseInt(node.attributes.numFmtId, 10),\n fontId: parseInt(node.attributes.fontId, 10),\n fillId: parseInt(node.attributes.fillId, 10),\n borderId: parseInt(node.attributes.borderId, 10),\n };\n if (this.xfId) {\n this.model.xfId = parseInt(node.attributes.xfId, 10);\n }\n return true;\n case 'alignment':\n this.parser = this.map.alignment;\n this.parser.parseOpen(node);\n return true;\n case 'protection':\n this.parser = this.map.protection;\n this.parser.parseOpen(node);\n return true;\n default:\n return false;\n }\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n if (this.map.protection === this.parser) {\n this.model.protection = this.parser.model;\n } else {\n this.model.alignment = this.parser.model;\n }\n this.parser = undefined;\n }\n return true;\n }\n return name !== 'xf';\n }\n}\n\nmodule.exports = StyleXform;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles-xform.js","names":["Enums","require","XmlStream","BaseXform","StaticXform","ListXform","FontXform","FillXform","BorderXform","NumFmtXform","StyleXform","DxfXform","NUMFMT_BASE","StylesXform","constructor","initialise","map","numFmts","tag","count","childXform","fonts","$","fills","borders","cellStyleXfs","cellXfs","xfId","dxfs","always","numFmt","font","fill","border","style","cellStyles","STATIC_XFORMS","tableStyles","extLst","init","initIndex","index","numFmtNextId","model","styles","_addBorder","_addStyle","numFmtId","fontId","fillId","borderId","_addFill","type","pattern","weakMap","WeakMap","render","xmlStream","openXml","StdDocAttributes","openNode","STYLESHEET_ATTRIBUTES","length","forEach","numFmtXml","writeXml","closeNode","_addFont","size","color","theme","name","family","scheme","fontXml","fillXml","borderXml","styleXml","parseOpen","node","parser","parseText","text","parseClose","undefined","add","propName","xform","numFmtIndex","id","formatCode","addStyleModel","cellType","has","get","ValueType","Number","_addNumFmtStr","Date","alignment","protection","styleId","set","getStyleModel","getDefaultFmtCode","addStyle","group","part","addDxfStyle","push","getDxfStyle","xml","toXml","getDefaultFmtId","xmlns","c","builtinId","defaultTableStyle","defaultPivotStyle","uri","defaultSlicerStyle","defaultTimelineStyle","StylesXformMock","parseStream","stream","autodrain","Promise","resolve","dateStyleId","_dateStyleId","dateStyle","Mock","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/styles-xform.js"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nconst Enums = require('../../../doc/enums');\nconst XmlStream = require('../../../utils/xml-stream');\n\nconst BaseXform = require('../base-xform');\nconst StaticXform = require('../static-xform');\nconst ListXform = require('../list-xform');\nconst FontXform = require('./font-xform');\nconst FillXform = require('./fill-xform');\nconst BorderXform = require('./border-xform');\nconst NumFmtXform = require('./numfmt-xform');\nconst StyleXform = require('./style-xform');\nconst DxfXform = require('./dxf-xform');\n\n// custom numfmt ids start here\nconst NUMFMT_BASE = 164;\n\n// =============================================================================\n// StylesXform is used to generate and parse the styles.xml file\n// it manages the collections of fonts, number formats, alignments, etc\nclass StylesXform extends BaseXform {\n constructor(initialise) {\n super();\n\n this.map = {\n numFmts: new ListXform({tag: 'numFmts', count: true, childXform: new NumFmtXform()}),\n fonts: new ListXform({\n tag: 'fonts',\n count: true,\n childXform: new FontXform(),\n $: {'x14ac:knownFonts': 1},\n }),\n fills: new ListXform({tag: 'fills', count: true, childXform: new FillXform()}),\n borders: new ListXform({tag: 'borders', count: true, childXform: new BorderXform()}),\n cellStyleXfs: new ListXform({tag: 'cellStyleXfs', count: true, childXform: new StyleXform()}),\n cellXfs: new ListXform({\n tag: 'cellXfs',\n count: true,\n childXform: new StyleXform({xfId: true}),\n }),\n dxfs: new ListXform({tag: 'dxfs', always: true, count: true, childXform: new DxfXform()}),\n\n // for style manager\n numFmt: new NumFmtXform(),\n font: new FontXform(),\n fill: new FillXform(),\n border: new BorderXform(),\n style: new StyleXform({xfId: true}),\n\n cellStyles: StylesXform.STATIC_XFORMS.cellStyles,\n tableStyles: StylesXform.STATIC_XFORMS.tableStyles,\n extLst: StylesXform.STATIC_XFORMS.extLst,\n };\n\n if (initialise) {\n // StylesXform also acts as style manager and is used to build up styles-model during worksheet processing\n this.init();\n }\n }\n\n initIndex() {\n this.index = {\n style: {},\n numFmt: {},\n numFmtNextId: 164, // start custom format ids here\n font: {},\n border: {},\n fill: {},\n };\n }\n\n init() {\n // Prepare for Style Manager role\n this.model = {\n styles: [],\n numFmts: [],\n fonts: [],\n borders: [],\n fills: [],\n dxfs: [],\n };\n\n this.initIndex();\n\n // default (zero) border\n this._addBorder({});\n\n // add default (all zero) style\n this._addStyle({numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0});\n\n // add default fills\n this._addFill({type: 'pattern', pattern: 'none'});\n this._addFill({type: 'pattern', pattern: 'gray125'});\n\n this.weakMap = new WeakMap();\n }\n\n render(xmlStream, model) {\n model = model || this.model;\n //\n // <fonts count=\"2\" x14ac:knownFonts=\"1\">\n xmlStream.openXml(XmlStream.StdDocAttributes);\n\n xmlStream.openNode('styleSheet', StylesXform.STYLESHEET_ATTRIBUTES);\n\n if (this.index) {\n // model has been built by style manager role (contains xml)\n if (model.numFmts && model.numFmts.length) {\n xmlStream.openNode('numFmts', {count: model.numFmts.length});\n model.numFmts.forEach(numFmtXml => {\n xmlStream.writeXml(numFmtXml);\n });\n xmlStream.closeNode();\n }\n\n if (!model.fonts.length) {\n // default (zero) font\n this._addFont({size: 11, color: {theme: 1}, name: 'Calibri', family: 2, scheme: 'minor'});\n }\n xmlStream.openNode('fonts', {count: model.fonts.length, 'x14ac:knownFonts': 1});\n model.fonts.forEach(fontXml => {\n xmlStream.writeXml(fontXml);\n });\n xmlStream.closeNode();\n\n xmlStream.openNode('fills', {count: model.fills.length});\n model.fills.forEach(fillXml => {\n xmlStream.writeXml(fillXml);\n });\n xmlStream.closeNode();\n\n xmlStream.openNode('borders', {count: model.borders.length});\n model.borders.forEach(borderXml => {\n xmlStream.writeXml(borderXml);\n });\n xmlStream.closeNode();\n\n this.map.cellStyleXfs.render(xmlStream, [{numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0}]);\n\n xmlStream.openNode('cellXfs', {count: model.styles.length});\n model.styles.forEach(styleXml => {\n xmlStream.writeXml(styleXml);\n });\n xmlStream.closeNode();\n } else {\n // model is plain JSON and needs to be xformed\n this.map.numFmts.render(xmlStream, model.numFmts);\n this.map.fonts.render(xmlStream, model.fonts);\n this.map.fills.render(xmlStream, model.fills);\n this.map.borders.render(xmlStream, model.borders);\n this.map.cellStyleXfs.render(xmlStream, [{numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0}]);\n this.map.cellXfs.render(xmlStream, model.styles);\n }\n\n StylesXform.STATIC_XFORMS.cellStyles.render(xmlStream);\n\n this.map.dxfs.render(xmlStream, model.dxfs);\n\n StylesXform.STATIC_XFORMS.tableStyles.render(xmlStream);\n StylesXform.STATIC_XFORMS.extLst.render(xmlStream);\n\n xmlStream.closeNode();\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n switch (node.name) {\n case 'styleSheet':\n this.initIndex();\n return true;\n default:\n this.parser = this.map[node.name];\n if (this.parser) {\n this.parser.parseOpen(node);\n }\n return true;\n }\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n this.parser = undefined;\n }\n return true;\n }\n switch (name) {\n case 'styleSheet': {\n this.model = {};\n const add = (propName, xform) => {\n if (xform.model && xform.model.length) {\n this.model[propName] = xform.model;\n }\n };\n add('numFmts', this.map.numFmts);\n add('fonts', this.map.fonts);\n add('fills', this.map.fills);\n add('borders', this.map.borders);\n add('styles', this.map.cellXfs);\n add('dxfs', this.map.dxfs);\n\n // index numFmts\n this.index = {\n model: [],\n numFmt: [],\n };\n if (this.model.numFmts) {\n const numFmtIndex = this.index.numFmt;\n this.model.numFmts.forEach(numFmt => {\n numFmtIndex[numFmt.id] = numFmt.formatCode;\n });\n }\n\n return false;\n }\n default:\n // not quite sure how we get here!\n return true;\n }\n }\n\n // add a cell's style model to the collection\n // each style property is processed and cross-referenced, etc.\n // the styleId is returned. Note: cellType is used when numFmt not defined\n addStyleModel(model, cellType) {\n if (!model) {\n return 0;\n }\n\n // if we have no default font, add it here now\n if (!this.model.fonts.length) {\n // default (zero) font\n this._addFont({size: 11, color: {theme: 1}, name: 'Calibri', family: 2, scheme: 'minor'});\n }\n\n // if we have seen this style object before, assume it has the same styleId\n if (this.weakMap && this.weakMap.has(model)) {\n return this.weakMap.get(model);\n }\n\n const style = {};\n cellType = cellType || Enums.ValueType.Number;\n\n if (model.numFmt) {\n style.numFmtId = this._addNumFmtStr(model.numFmt);\n } else {\n switch (cellType) {\n case Enums.ValueType.Number:\n style.numFmtId = this._addNumFmtStr('General');\n break;\n case Enums.ValueType.Date:\n style.numFmtId = this._addNumFmtStr('mm-dd-yy');\n break;\n default:\n break;\n }\n }\n\n if (model.font) {\n style.fontId = this._addFont(model.font);\n }\n\n if (model.border) {\n style.borderId = this._addBorder(model.border);\n }\n\n if (model.fill) {\n style.fillId = this._addFill(model.fill);\n }\n\n if (model.alignment) {\n style.alignment = model.alignment;\n }\n\n if (model.protection) {\n style.protection = model.protection;\n }\n\n const styleId = this._addStyle(style);\n if (this.weakMap) {\n this.weakMap.set(model, styleId);\n }\n return styleId;\n }\n\n // given a styleId (i.e. s=\"n\"), get the cell's style model\n // objects are shared where possible.\n getStyleModel(id) {\n // if the style doesn't exist return null\n const style = this.model.styles[id];\n if (!style) return null;\n\n // have we built this model before?\n let model = this.index.model[id];\n if (model) return model;\n\n // build a new model\n model = this.index.model[id] = {};\n\n // -------------------------------------------------------\n // number format\n if (style.numFmtId) {\n const numFmt = this.index.numFmt[style.numFmtId] || NumFmtXform.getDefaultFmtCode(style.numFmtId);\n if (numFmt) {\n model.numFmt = numFmt;\n }\n }\n\n function addStyle(name, group, styleId) {\n if (styleId || styleId === 0) {\n const part = group[styleId];\n if (part) {\n model[name] = part;\n }\n }\n }\n\n addStyle('font', this.model.fonts, style.fontId);\n addStyle('border', this.model.borders, style.borderId);\n addStyle('fill', this.model.fills, style.fillId);\n\n // -------------------------------------------------------\n // alignment\n if (style.alignment) {\n model.alignment = style.alignment;\n }\n\n // -------------------------------------------------------\n // protection\n if (style.protection) {\n model.protection = style.protection;\n }\n\n return model;\n }\n\n addDxfStyle(style) {\n if (style.numFmt) {\n // register numFmtId to use it during dxf-xform rendering\n style.numFmtId = this._addNumFmtStr(style.numFmt);\n }\n\n this.model.dxfs.push(style);\n return this.model.dxfs.length - 1;\n }\n\n getDxfStyle(id) {\n return this.model.dxfs[id];\n }\n\n // =========================================================================\n // Private Interface\n _addStyle(style) {\n const xml = this.map.style.toXml(style);\n let index = this.index.style[xml];\n if (index === undefined) {\n index = this.index.style[xml] = this.model.styles.length;\n this.model.styles.push(xml);\n }\n return index;\n }\n\n // =========================================================================\n // Number Formats\n _addNumFmtStr(formatCode) {\n // check if default format\n let index = NumFmtXform.getDefaultFmtId(formatCode);\n if (index !== undefined) return index;\n\n // check if already in\n index = this.index.numFmt[formatCode];\n if (index !== undefined) return index;\n\n index = this.index.numFmt[formatCode] = NUMFMT_BASE + this.model.numFmts.length;\n const xml = this.map.numFmt.toXml({id: index, formatCode});\n this.model.numFmts.push(xml);\n return index;\n }\n\n // =========================================================================\n // Fonts\n _addFont(font) {\n const xml = this.map.font.toXml(font);\n let index = this.index.font[xml];\n if (index === undefined) {\n index = this.index.font[xml] = this.model.fonts.length;\n this.model.fonts.push(xml);\n }\n return index;\n }\n\n // =========================================================================\n // Borders\n _addBorder(border) {\n const xml = this.map.border.toXml(border);\n let index = this.index.border[xml];\n if (index === undefined) {\n index = this.index.border[xml] = this.model.borders.length;\n this.model.borders.push(xml);\n }\n return index;\n }\n\n // =========================================================================\n // Fills\n _addFill(fill) {\n const xml = this.map.fill.toXml(fill);\n let index = this.index.fill[xml];\n if (index === undefined) {\n index = this.index.fill[xml] = this.model.fills.length;\n this.model.fills.push(xml);\n }\n return index;\n }\n\n // =========================================================================\n}\n\nStylesXform.STYLESHEET_ATTRIBUTES = {\n xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',\n 'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',\n 'mc:Ignorable': 'x14ac x16r2',\n 'xmlns:x14ac': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac',\n 'xmlns:x16r2': 'http://schemas.microsoft.com/office/spreadsheetml/2015/02/main',\n};\nStylesXform.STATIC_XFORMS = {\n cellStyles: new StaticXform({\n tag: 'cellStyles',\n $: {count: 1},\n c: [{tag: 'cellStyle', $: {name: 'Normal', xfId: 0, builtinId: 0}}],\n }),\n dxfs: new StaticXform({tag: 'dxfs', $: {count: 0}}),\n tableStyles: new StaticXform({\n tag: 'tableStyles',\n $: {count: 0, defaultTableStyle: 'TableStyleMedium2', defaultPivotStyle: 'PivotStyleLight16'},\n }),\n extLst: new StaticXform({\n tag: 'extLst',\n c: [\n {\n tag: 'ext',\n $: {\n uri: '{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}',\n 'xmlns:x14': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/main',\n },\n c: [{tag: 'x14:slicerStyles', $: {defaultSlicerStyle: 'SlicerStyleLight1'}}],\n },\n {\n tag: 'ext',\n $: {\n uri: '{9260A510-F301-46a8-8635-F512D64BE5F5}',\n 'xmlns:x15': 'http://schemas.microsoft.com/office/spreadsheetml/2010/11/main',\n },\n c: [{tag: 'x15:timelineStyles', $: {defaultTimelineStyle: 'TimeSlicerStyleLight1'}}],\n },\n ],\n }),\n};\n\n// the stylemanager mock acts like StyleManager except that it always returns 0 or {}\nclass StylesXformMock extends StylesXform {\n constructor() {\n super();\n\n this.model = {\n styles: [{numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0}],\n numFmts: [],\n fonts: [{size: 11, color: {theme: 1}, name: 'Calibri', family: 2, scheme: 'minor'}],\n borders: [{}],\n fills: [\n {type: 'pattern', pattern: 'none'},\n {type: 'pattern', pattern: 'gray125'},\n ],\n };\n }\n\n // =========================================================================\n // Style Manager Interface\n\n // override normal behaviour - consume and dispose\n parseStream(stream) {\n stream.autodrain();\n return Promise.resolve();\n }\n\n // add a cell's style model to the collection\n // each style property is processed and cross-referenced, etc.\n // the styleId is returned. Note: cellType is used when numFmt not defined\n addStyleModel(model, cellType) {\n switch (cellType) {\n case Enums.ValueType.Date:\n return this.dateStyleId;\n default:\n return 0;\n }\n }\n\n get dateStyleId() {\n if (!this._dateStyleId) {\n const dateStyle = {\n numFmtId: NumFmtXform.getDefaultFmtId('mm-dd-yy'),\n };\n this._dateStyleId = this.model.styles.length;\n this.model.styles.push(dateStyle);\n }\n return this._dateStyleId;\n }\n\n // given a styleId (i.e. s=\"n\"), get the cell's style model\n // objects are shared where possible.\n getStyleModel(/* id */) {\n return {};\n }\n}\n\nStylesXform.Mock = StylesXformMock;\n\nmodule.exports = StylesXform;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"underline-xform.js","names":["BaseXform","require","UnderlineXform","constructor","model","tag","render","xmlStream","leafNode","attr","Attributes","parseOpen","node","name","attributes","val","parseText","parseClose","single","double","singleAccounting","doubleAccounting","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/underline-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass UnderlineXform extends BaseXform {\n constructor(model) {\n super();\n\n this.model = model;\n }\n\n get tag() {\n return 'u';\n }\n\n render(xmlStream, model) {\n model = model || this.model;\n\n if (model === true) {\n xmlStream.leafNode('u');\n } else {\n const attr = UnderlineXform.Attributes[model];\n if (attr) {\n xmlStream.leafNode('u', attr);\n }\n }\n }\n\n parseOpen(node) {\n if (node.name === 'u') {\n this.model = node.attributes.val || true;\n }\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nUnderlineXform.Attributes = {\n single: {},\n double: {val: 'double'},\n singleAccounting: {val: 'singleAccounting'},\n doubleAccounting: {val: 'doubleAccounting'},\n};\n\nmodule.exports = UnderlineXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,cAAc,SAASF,SAAS,CAAC;EACrCG,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAAC,CAAC;IAEP,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;EAEA,IAAIC,GAAGA,CAAA,EAAG;IACR,OAAO,GAAG;EACZ;EAEAC,MAAMA,CAACC,SAAS,EAAEH,KAAK,EAAE;IACvBA,KAAK,GAAGA,KAAK,IAAI,IAAI,CAACA,KAAK;IAE3B,IAAIA,KAAK,KAAK,IAAI,EAAE;MAClBG,SAAS,CAACC,QAAQ,CAAC,GAAG,CAAC;IACzB,CAAC,MAAM;MACL,MAAMC,IAAI,GAAGP,cAAc,CAACQ,UAAU,CAACN,KAAK,CAAC;MAC7C,IAAIK,IAAI,EAAE;QACRF,SAAS,CAACC,QAAQ,CAAC,GAAG,EAAEC,IAAI,CAAC;MAC/B;IACF;EACF;EAEAE,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,GAAG,EAAE;MACrB,IAAI,CAACT,KAAK,GAAGQ,IAAI,CAACE,UAAU,CAACC,GAAG,IAAI,IAAI;IAC1C;EACF;EAEAC,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAf,cAAc,CAACQ,UAAU,GAAG;EAC1BQ,MAAM,EAAE,CAAC,CAAC;EACVC,MAAM,EAAE;IAACJ,GAAG,EAAE;EAAQ,CAAC;EACvBK,gBAAgB,EAAE;IAACL,GAAG,EAAE;EAAkB,CAAC;EAC3CM,gBAAgB,EAAE;IAACN,GAAG,EAAE;EAAkB;AAC5C,CAAC;AAEDO,MAAM,CAACC,OAAO,GAAGrB,cAAc"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-filter-xform.js","names":["BaseXform","require","FilterColumnXform","AutoFilterXform","constructor","map","filterColumn","tag","prepare","model","columns","forEach","column","index","render","xmlStream","openNode","ref","autoFilterRef","closeNode","parseOpen","node","parser","name","attributes","Error","JSON","stringify","parseText","text","parseClose","push","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/auto-filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nconst FilterColumnXform = require('./filter-column-xform');\n\nclass AutoFilterXform extends BaseXform {\n constructor() {\n super();\n\n this.map = {\n filterColumn: new FilterColumnXform(),\n };\n }\n\n get tag() {\n return 'autoFilter';\n }\n\n prepare(model) {\n model.columns.forEach((column, index) => {\n this.map.filterColumn.prepare(column, {index});\n });\n }\n\n render(xmlStream, model) {\n xmlStream.openNode(this.tag, {ref: model.autoFilterRef});\n\n model.columns.forEach(column => {\n this.map.filterColumn.render(xmlStream, column);\n });\n\n xmlStream.closeNode();\n return true;\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n switch (node.name) {\n case this.tag:\n this.model = {\n autoFilterRef: node.attributes.ref,\n columns: [],\n };\n return true;\n\n default:\n this.parser = this.map[node.name];\n if (this.parser) {\n this.parseOpen(node);\n return true;\n }\n throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);\n }\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n this.model.columns.push(this.parser.model);\n this.parser = undefined;\n }\n return true;\n }\n switch (name) {\n case this.tag:\n return false;\n default:\n throw new Error(`Unexpected xml node in parseClose: ${name}`);\n }\n }\n}\n\nmodule.exports = AutoFilterXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,iBAAiB,GAAGD,OAAO,CAAC,uBAAuB,CAAC;AAE1D,MAAME,eAAe,SAASH,SAAS,CAAC;EACtCI,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,CAAC;IAEP,IAAI,CAACC,GAAG,GAAG;MACTC,YAAY,EAAE,IAAIJ,iBAAiB,CAAC;IACtC,CAAC;EACH;EAEA,IAAIK,GAAGA,CAAA,EAAG;IACR,OAAO,YAAY;EACrB;EAEAC,OAAOA,CAACC,KAAK,EAAE;IACbA,KAAK,CAACC,OAAO,CAACC,OAAO,CAAC,CAACC,MAAM,EAAEC,KAAK,KAAK;MACvC,IAAI,CAACR,GAAG,CAACC,YAAY,CAACE,OAAO,CAACI,MAAM,EAAE;QAACC;MAAK,CAAC,CAAC;IAChD,CAAC,CAAC;EACJ;EAEAC,MAAMA,CAACC,SAAS,EAAEN,KAAK,EAAE;IACvBM,SAAS,CAACC,QAAQ,CAAC,IAAI,CAACT,GAAG,EAAE;MAACU,GAAG,EAAER,KAAK,CAACS;IAAa,CAAC,CAAC;IAExDT,KAAK,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,IAAI;MAC9B,IAAI,CAACP,GAAG,CAACC,YAAY,CAACQ,MAAM,CAACC,SAAS,EAAEH,MAAM,CAAC;IACjD,CAAC,CAAC;IAEFG,SAAS,CAACI,SAAS,CAAC,CAAC;IACrB,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAI,IAAI,CAACC,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACF,SAAS,CAACC,IAAI,CAAC;MAC3B,OAAO,IAAI;IACb;IACA,QAAQA,IAAI,CAACE,IAAI;MACf,KAAK,IAAI,CAAChB,GAAG;QACX,IAAI,CAACE,KAAK,GAAG;UACXS,aAAa,EAAEG,IAAI,CAACG,UAAU,CAACP,GAAG;UAClCP,OAAO,EAAE;QACX,CAAC;QACD,OAAO,IAAI;MAEb;QACE,IAAI,CAACY,MAAM,GAAG,IAAI,CAACjB,GAAG,CAACgB,IAAI,CAACE,IAAI,CAAC;QACjC,IAAI,IAAI,CAACD,MAAM,EAAE;UACf,IAAI,CAACF,SAAS,CAACC,IAAI,CAAC;UACpB,OAAO,IAAI;QACb;QACA,MAAM,IAAII,KAAK,CAAE,qCAAoCC,IAAI,CAACC,SAAS,CAACN,IAAI,CAAE,EAAC,CAAC;IAChF;EACF;EAEAO,SAASA,CAACC,IAAI,EAAE;IACd,IAAI,IAAI,CAACP,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACM,SAAS,CAACC,IAAI,CAAC;IAC7B;EACF;EAEAC,UAAUA,CAACP,IAAI,EAAE;IACf,IAAI,IAAI,CAACD,MAAM,EAAE;MACf,IAAI,CAAC,IAAI,CAACA,MAAM,CAACQ,UAAU,CAACP,IAAI,CAAC,EAAE;QACjC,IAAI,CAACd,KAAK,CAACC,OAAO,CAACqB,IAAI,CAAC,IAAI,CAACT,MAAM,CAACb,KAAK,CAAC;QAC1C,IAAI,CAACa,MAAM,GAAGU,SAAS;MACzB;MACA,OAAO,IAAI;IACb;IACA,QAAQT,IAAI;MACV,KAAK,IAAI,CAAChB,GAAG;QACX,OAAO,KAAK;MACd;QACE,MAAM,IAAIkB,KAAK,CAAE,sCAAqCF,IAAK,EAAC,CAAC;IACjE;EACF;AACF;AAEAU,MAAM,CAACC,OAAO,GAAG/B,eAAe"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"custom-filter-xform.js","names":["BaseXform","require","CustomFilterXform","tag","render","xmlStream","model","leafNode","val","operator","parseOpen","node","name","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/custom-filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass CustomFilterXform extends BaseXform {\n get tag() {\n return 'customFilter';\n }\n\n render(xmlStream, model) {\n xmlStream.leafNode(this.tag, {\n val: model.val,\n operator: model.operator,\n });\n }\n\n parseOpen(node) {\n if (node.name === this.tag) {\n this.model = {\n val: node.attributes.val,\n operator: node.attributes.operator,\n };\n return true;\n }\n return false;\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = CustomFilterXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,iBAAiB,SAASF,SAAS,CAAC;EACxC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,cAAc;EACvB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,GAAG,EAAEF,KAAK,CAACE,GAAG;MACdC,QAAQ,EAAEH,KAAK,CAACG;IAClB,CAAC,CAAC;EACJ;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,IAAI,CAACT,GAAG,EAAE;MAC1B,IAAI,CAACG,KAAK,GAAG;QACXE,GAAG,EAAEG,IAAI,CAACE,UAAU,CAACL,GAAG;QACxBC,QAAQ,EAAEE,IAAI,CAACE,UAAU,CAACJ;MAC5B,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAK,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGf,iBAAiB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"filter-column-xform.js","names":["BaseXform","require","ListXform","CustomFilterXform","FilterXform","FilterColumnXform","constructor","map","customFilters","tag","count","empty","childXform","filters","prepare","model","options","colId","index","toString","render","xmlStream","openNode","hiddenButton","filterButton","closeNode","leafNode","parseOpen","node","parser","attributes","name","Error","JSON","stringify","parseText","parseClose","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/filter-column-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\nconst ListXform = require('../list-xform');\n\nconst CustomFilterXform = require('./custom-filter-xform');\nconst FilterXform = require('./filter-xform');\n\nclass FilterColumnXform extends BaseXform {\n constructor() {\n super();\n\n this.map = {\n customFilters: new ListXform({\n tag: 'customFilters',\n count: false,\n empty: true,\n childXform: new CustomFilterXform(),\n }),\n filters: new ListXform({\n tag: 'filters',\n count: false,\n empty: true,\n childXform: new FilterXform(),\n }),\n };\n }\n\n get tag() {\n return 'filterColumn';\n }\n\n prepare(model, options) {\n model.colId = options.index.toString();\n }\n\n render(xmlStream, model) {\n if (model.customFilters) {\n xmlStream.openNode(this.tag, {\n colId: model.colId,\n hiddenButton: model.filterButton ? '0' : '1',\n });\n\n this.map.customFilters.render(xmlStream, model.customFilters);\n\n xmlStream.closeNode();\n return true;\n }\n xmlStream.leafNode(this.tag, {\n colId: model.colId,\n hiddenButton: model.filterButton ? '0' : '1',\n });\n return true;\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n const {attributes} = node;\n switch (node.name) {\n case this.tag:\n this.model = {\n filterButton: attributes.hiddenButton === '0',\n };\n return true;\n default:\n this.parser = this.map[node.name];\n if (this.parser) {\n this.parseOpen(node);\n return true;\n }\n throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);\n }\n }\n\n parseText() {}\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n this.parser = undefined;\n }\n return true;\n }\n switch (name) {\n case this.tag:\n this.model.customFilters = this.map.customFilters.model;\n return false;\n default:\n // could be some unrecognised tags\n return true;\n }\n }\n}\n\nmodule.exports = FilterColumnXform;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"filter-xform.js","names":["BaseXform","require","FilterXform","tag","render","xmlStream","model","leafNode","val","parseOpen","node","name","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass FilterXform extends BaseXform {\n get tag() {\n return 'filter';\n }\n\n render(xmlStream, model) {\n xmlStream.leafNode(this.tag, {\n val: model.val,\n });\n }\n\n parseOpen(node) {\n if (node.name === this.tag) {\n this.model = {\n val: node.attributes.val,\n };\n return true;\n }\n return false;\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = FilterXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,WAAW,SAASF,SAAS,CAAC;EAClC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,QAAQ;EACjB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,GAAG,EAAEF,KAAK,CAACE;IACb,CAAC,CAAC;EACJ;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,IAAI,CAACR,GAAG,EAAE;MAC1B,IAAI,CAACG,KAAK,GAAG;QACXE,GAAG,EAAEE,IAAI,CAACE,UAAU,CAACJ;MACvB,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAK,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGd,WAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-column-xform.js","names":["BaseXform","require","TableColumnXform","tag","prepare","model","options","id","index","render","xmlStream","leafNode","toString","name","totalsRowLabel","totalsRowFunction","dxfId","parseOpen","node","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-column-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass TableColumnXform extends BaseXform {\n get tag() {\n return 'tableColumn';\n }\n\n prepare(model, options) {\n model.id = options.index + 1;\n }\n\n render(xmlStream, model) {\n xmlStream.leafNode(this.tag, {\n id: model.id.toString(),\n name: model.name,\n totalsRowLabel: model.totalsRowLabel,\n totalsRowFunction: model.totalsRowFunction,\n dxfId: model.dxfId,\n });\n return true;\n }\n\n parseOpen(node) {\n if (node.name === this.tag) {\n const {attributes} = node;\n this.model = {\n name: attributes.name,\n totalsRowLabel: attributes.totalsRowLabel,\n totalsRowFunction: attributes.totalsRowFunction,\n dxfId: attributes.dxfId,\n };\n return true;\n }\n return false;\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = TableColumnXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,gBAAgB,SAASF,SAAS,CAAC;EACvC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,aAAa;EACtB;EAEAC,OAAOA,CAACC,KAAK,EAAEC,OAAO,EAAE;IACtBD,KAAK,CAACE,EAAE,GAAGD,OAAO,CAACE,KAAK,GAAG,CAAC;EAC9B;EAEAC,MAAMA,CAACC,SAAS,EAAEL,KAAK,EAAE;IACvBK,SAAS,CAACC,QAAQ,CAAC,IAAI,CAACR,GAAG,EAAE;MAC3BI,EAAE,EAAEF,KAAK,CAACE,EAAE,CAACK,QAAQ,CAAC,CAAC;MACvBC,IAAI,EAAER,KAAK,CAACQ,IAAI;MAChBC,cAAc,EAAET,KAAK,CAACS,cAAc;MACpCC,iBAAiB,EAAEV,KAAK,CAACU,iBAAiB;MAC1CC,KAAK,EAAEX,KAAK,CAACW;IACf,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACL,IAAI,KAAK,IAAI,CAACV,GAAG,EAAE;MAC1B,MAAM;QAACgB;MAAU,CAAC,GAAGD,IAAI;MACzB,IAAI,CAACb,KAAK,GAAG;QACXQ,IAAI,EAAEM,UAAU,CAACN,IAAI;QACrBC,cAAc,EAAEK,UAAU,CAACL,cAAc;QACzCC,iBAAiB,EAAEI,UAAU,CAACJ,iBAAiB;QAC/CC,KAAK,EAAEG,UAAU,CAACH;MACpB,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGrB,gBAAgB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-style-info-xform.js","names":["BaseXform","require","TableStyleInfoXform","tag","render","xmlStream","model","leafNode","name","theme","undefined","showFirstColumn","showLastColumn","showRowStripes","showColumnStripes","parseOpen","node","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-style-info-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass TableStyleInfoXform extends BaseXform {\n get tag() {\n return 'tableStyleInfo';\n }\n\n render(xmlStream, model) {\n xmlStream.leafNode(this.tag, {\n name: model.theme ? model.theme : undefined,\n showFirstColumn: model.showFirstColumn ? '1' : '0',\n showLastColumn: model.showLastColumn ? '1' : '0',\n showRowStripes: model.showRowStripes ? '1' : '0',\n showColumnStripes: model.showColumnStripes ? '1' : '0',\n });\n return true;\n }\n\n parseOpen(node) {\n if (node.name === this.tag) {\n const {attributes} = node;\n this.model = {\n theme: attributes.name ? attributes.name : null,\n showFirstColumn: attributes.showFirstColumn === '1',\n showLastColumn: attributes.showLastColumn === '1',\n showRowStripes: attributes.showRowStripes === '1',\n showColumnStripes: attributes.showColumnStripes === '1',\n };\n return true;\n }\n return false;\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = TableStyleInfoXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,mBAAmB,SAASF,SAAS,CAAC;EAC1C,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,gBAAgB;EACzB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,IAAI,EAAEF,KAAK,CAACG,KAAK,GAAGH,KAAK,CAACG,KAAK,GAAGC,SAAS;MAC3CC,eAAe,EAAEL,KAAK,CAACK,eAAe,GAAG,GAAG,GAAG,GAAG;MAClDC,cAAc,EAAEN,KAAK,CAACM,cAAc,GAAG,GAAG,GAAG,GAAG;MAChDC,cAAc,EAAEP,KAAK,CAACO,cAAc,GAAG,GAAG,GAAG,GAAG;MAChDC,iBAAiB,EAAER,KAAK,CAACQ,iBAAiB,GAAG,GAAG,GAAG;IACrD,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACR,IAAI,KAAK,IAAI,CAACL,GAAG,EAAE;MAC1B,MAAM;QAACc;MAAU,CAAC,GAAGD,IAAI;MACzB,IAAI,CAACV,KAAK,GAAG;QACXG,KAAK,EAAEQ,UAAU,CAACT,IAAI,GAAGS,UAAU,CAACT,IAAI,GAAG,IAAI;QAC/CG,eAAe,EAAEM,UAAU,CAACN,eAAe,KAAK,GAAG;QACnDC,cAAc,EAAEK,UAAU,CAACL,cAAc,KAAK,GAAG;QACjDC,cAAc,EAAEI,UAAU,CAACJ,cAAc,KAAK,GAAG;QACjDC,iBAAiB,EAAEG,UAAU,CAACH,iBAAiB,KAAK;MACtD,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGnB,mBAAmB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-xform.js","names":["XmlStream","require","BaseXform","ListXform","AutoFilterXform","TableColumnXform","TableStyleInfoXform","TableXform","constructor","map","autoFilter","tableColumns","tag","count","empty","childXform","tableStyleInfo","prepare","model","options","columns","render","xmlStream","openXml","StdDocAttributes","openNode","TABLE_ATTRIBUTES","id","name","displayName","ref","tableRef","totalsRowCount","totalsRow","undefined","totalsRowShown","headerRowCount","headerRow","style","closeNode","parseOpen","node","parser","attributes","reset","parseText","text","parseClose","autoFilterRef","forEach","column","index","filterButton","reconcile","dxfId","styles","getDxfStyle","xmlns","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-xform.js"],"sourcesContent":["const XmlStream = require('../../../utils/xml-stream');\n\nconst BaseXform = require('../base-xform');\nconst ListXform = require('../list-xform');\n\nconst AutoFilterXform = require('./auto-filter-xform');\nconst TableColumnXform = require('./table-column-xform');\nconst TableStyleInfoXform = require('./table-style-info-xform');\n\nclass TableXform extends BaseXform {\n constructor() {\n super();\n\n this.map = {\n autoFilter: new AutoFilterXform(),\n tableColumns: new ListXform({\n tag: 'tableColumns',\n count: true,\n empty: true,\n childXform: new TableColumnXform(),\n }),\n tableStyleInfo: new TableStyleInfoXform(),\n };\n }\n\n prepare(model, options) {\n this.map.autoFilter.prepare(model);\n this.map.tableColumns.prepare(model.columns, options);\n }\n\n get tag() {\n return 'table';\n }\n\n render(xmlStream, model) {\n xmlStream.openXml(XmlStream.StdDocAttributes);\n xmlStream.openNode(this.tag, {\n ...TableXform.TABLE_ATTRIBUTES,\n id: model.id,\n name: model.name,\n displayName: model.displayName || model.name,\n ref: model.tableRef,\n totalsRowCount: model.totalsRow ? '1' : undefined,\n totalsRowShown: model.totalsRow ? undefined : '1',\n headerRowCount: model.headerRow ? '1' : '0',\n });\n\n this.map.autoFilter.render(xmlStream, model);\n this.map.tableColumns.render(xmlStream, model.columns);\n this.map.tableStyleInfo.render(xmlStream, model.style);\n\n xmlStream.closeNode();\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n const {name, attributes} = node;\n switch (name) {\n case this.tag:\n this.reset();\n this.model = {\n name: attributes.name,\n displayName: attributes.displayName || attributes.name,\n tableRef: attributes.ref,\n totalsRow: attributes.totalsRowCount === '1',\n headerRow: attributes.headerRowCount === '1',\n };\n break;\n default:\n this.parser = this.map[node.name];\n if (this.parser) {\n this.parser.parseOpen(node);\n }\n break;\n }\n return true;\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n this.parser = undefined;\n }\n return true;\n }\n switch (name) {\n case this.tag:\n this.model.columns = this.map.tableColumns.model;\n if (this.map.autoFilter.model) {\n this.model.autoFilterRef = this.map.autoFilter.model.autoFilterRef;\n this.map.autoFilter.model.columns.forEach((column, index) => {\n this.model.columns[index].filterButton = column.filterButton;\n });\n }\n this.model.style = this.map.tableStyleInfo.model;\n return false;\n default:\n // could be some unrecognised tags\n return true;\n }\n }\n\n reconcile(model, options) {\n // fetch the dfxs from styles\n model.columns.forEach(column => {\n if (column.dxfId !== undefined) {\n column.style = options.styles.getDxfStyle(column.dxfId);\n }\n });\n }\n}\n\nTableXform.TABLE_ATTRIBUTES = {\n xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',\n 'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',\n 'mc:Ignorable': 'xr xr3',\n 'xmlns:xr': 'http://schemas.microsoft.com/office/spreadsheetml/2014/revision',\n 'xmlns:xr3': 'http://schemas.microsoft.com/office/spreadsheetml/2016/revision3',\n // 'xr:uid': '{00000000-000C-0000-FFFF-FFFF00000000}',\n};\n\nmodule.exports = TableXform;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"xlsx.js","names":["fs","require","JSZip","PassThrough","ZipStream","StreamBuf","utils","XmlStream","bufferToString","StylesXform","CoreXform","SharedStringsXform","RelationshipsXform","ContentTypesXform","AppXform","WorkbookXform","WorksheetXform","DrawingXform","TableXform","CommentsXform","VmlNotesXform","theme1Xml","fsReadFileAsync","filename","options","Promise","resolve","reject","readFile","error","data","XLSX","constructor","workbook","exists","Error","stream","createReadStream","read","close","parseRels","xform","parseStream","parseWorkbook","parseSharedStrings","reconcile","model","workbookXform","worksheetXform","drawingXform","tableXform","drawingOptions","media","mediaIndex","Object","keys","drawings","forEach","name","drawing","drawingRel","drawingRels","rels","reduce","o","rel","Id","anchors","anchor","hyperlinks","picture","rId","hyperlink","Target","tableOptions","styles","values","tables","table","sheetOptions","sharedStrings","date1904","properties","comments","vmlDrawings","worksheets","worksheet","relationships","worksheetRels","sheetNo","worksheetHash","globalRels","workbookRels","sheetDefs","_processWorksheetEntry","path","push","_processCommentEntry","_processTableEntry","_processWorksheetRelsEntry","_processMediaEntry","entry","lastDot","lastIndexOf","extension","substr","streamBuf","on","length","medium","type","buffer","toBuffer","pipe","_processDrawingEntry","_processDrawingRelsEntry","_processVmlDrawingEntry","vmlDrawing","_processThemeEntry","themes","toString","createInputStream","Symbol","asyncIterator","chunks","chunk","load","Buffer","concat","base64","from","zip","loadAsync","files","dir","entryName","match","write","async","writableObjectMode","readableObjectMode","content","process","browser","chunkSize","i","substring","end","sheets","definedNames","views","calcProperties","appXform","appProperties","company","manager","coreXform","coreProperties","assign","addMedia","all","map","append","dataimg64","indexOf","addDrawings","relsXform","prepare","xml","toXml","addTables","tableXml","target","addContentTypes","addApp","addCore","addThemes","theme1","addOfficeRels","Type","RelType","OfficeDocument","CoreProperties","ExtenderProperties","addWorkbookRels","count","Styles","Theme","SharedStrings","Worksheet","id","addSharedStrings","addStyles","addWorkbook","addWorksheets","relationshipsXform","commentsXform","vmlNotesXform","xmlStream","render","_finalize","finalize","prepareModel","creator","lastModifiedBy","created","Date","modified","useSharedStrings","undefined","useStyles","Mock","worksheetOptions","drawingsCount","commentRefs","tableCount","ZipWriter","writeFile","createWriteStream","then","catch","err","writeBuffer","module","exports"],"sources":["../../../lib/xlsx/xlsx.js"],"sourcesContent":["const fs = require('fs');\nconst JSZip = require('jszip');\nconst {PassThrough} = require('readable-stream');\nconst ZipStream = require('../utils/zip-stream');\nconst StreamBuf = require('../utils/stream-buf');\n\nconst utils = require('../utils/utils');\nconst XmlStream = require('../utils/xml-stream');\nconst {bufferToString} = require('../utils/browser-buffer-decode');\n\nconst StylesXform = require('./xform/style/styles-xform');\n\nconst CoreXform = require('./xform/core/core-xform');\nconst SharedStringsXform = require('./xform/strings/shared-strings-xform');\nconst RelationshipsXform = require('./xform/core/relationships-xform');\nconst ContentTypesXform = require('./xform/core/content-types-xform');\nconst AppXform = require('./xform/core/app-xform');\nconst WorkbookXform = require('./xform/book/workbook-xform');\nconst WorksheetXform = require('./xform/sheet/worksheet-xform');\nconst DrawingXform = require('./xform/drawing/drawing-xform');\nconst TableXform = require('./xform/table/table-xform');\nconst CommentsXform = require('./xform/comment/comments-xform');\nconst VmlNotesXform = require('./xform/comment/vml-notes-xform');\n\nconst theme1Xml = require('./xml/theme1');\n\nfunction fsReadFileAsync(filename, options) {\n return new Promise((resolve, reject) => {\n fs.readFile(filename, options, (error, data) => {\n if (error) {\n reject(error);\n } else {\n resolve(data);\n }\n });\n });\n}\n\nclass XLSX {\n constructor(workbook) {\n this.workbook = workbook;\n }\n\n // ===============================================================================\n // Workbook\n // =========================================================================\n // Read\n\n async readFile(filename, options) {\n if (!(await utils.fs.exists(filename))) {\n throw new Error(`File not found: ${filename}`);\n }\n const stream = fs.createReadStream(filename);\n try {\n const workbook = await this.read(stream, options);\n stream.close();\n return workbook;\n } catch (error) {\n stream.close();\n throw error;\n }\n }\n\n parseRels(stream) {\n const xform = new RelationshipsXform();\n return xform.parseStream(stream);\n }\n\n parseWorkbook(stream) {\n const xform = new WorkbookXform();\n return xform.parseStream(stream);\n }\n\n parseSharedStrings(stream) {\n const xform = new SharedStringsXform();\n return xform.parseStream(stream);\n }\n\n reconcile(model, options) {\n const workbookXform = new WorkbookXform();\n const worksheetXform = new WorksheetXform(options);\n const drawingXform = new DrawingXform();\n const tableXform = new TableXform();\n\n workbookXform.reconcile(model);\n\n // reconcile drawings with their rels\n const drawingOptions = {\n media: model.media,\n mediaIndex: model.mediaIndex,\n };\n Object.keys(model.drawings).forEach(name => {\n const drawing = model.drawings[name];\n const drawingRel = model.drawingRels[name];\n if (drawingRel) {\n drawingOptions.rels = drawingRel.reduce((o, rel) => {\n o[rel.Id] = rel;\n return o;\n }, {});\n (drawing.anchors || []).forEach(anchor => {\n const hyperlinks = anchor.picture && anchor.picture.hyperlinks;\n if (hyperlinks && drawingOptions.rels[hyperlinks.rId]) {\n hyperlinks.hyperlink = drawingOptions.rels[hyperlinks.rId].Target;\n delete hyperlinks.rId;\n }\n });\n drawingXform.reconcile(drawing, drawingOptions);\n }\n });\n\n // reconcile tables with the default styles\n const tableOptions = {\n styles: model.styles,\n };\n Object.values(model.tables).forEach(table => {\n tableXform.reconcile(table, tableOptions);\n });\n\n const sheetOptions = {\n styles: model.styles,\n sharedStrings: model.sharedStrings,\n media: model.media,\n mediaIndex: model.mediaIndex,\n date1904: model.properties && model.properties.date1904,\n drawings: model.drawings,\n comments: model.comments,\n tables: model.tables,\n vmlDrawings: model.vmlDrawings,\n };\n model.worksheets.forEach(worksheet => {\n worksheet.relationships = model.worksheetRels[worksheet.sheetNo];\n worksheetXform.reconcile(worksheet, sheetOptions);\n });\n\n // delete unnecessary parts\n delete model.worksheetHash;\n delete model.worksheetRels;\n delete model.globalRels;\n delete model.sharedStrings;\n delete model.workbookRels;\n delete model.sheetDefs;\n delete model.styles;\n delete model.mediaIndex;\n delete model.drawings;\n delete model.drawingRels;\n delete model.vmlDrawings;\n }\n\n async _processWorksheetEntry(stream, model, sheetNo, options, path) {\n const xform = new WorksheetXform(options);\n const worksheet = await xform.parseStream(stream);\n worksheet.sheetNo = sheetNo;\n model.worksheetHash[path] = worksheet;\n model.worksheets.push(worksheet);\n }\n\n async _processCommentEntry(stream, model, name) {\n const xform = new CommentsXform();\n const comments = await xform.parseStream(stream);\n model.comments[`../${name}.xml`] = comments;\n }\n\n async _processTableEntry(stream, model, name) {\n const xform = new TableXform();\n const table = await xform.parseStream(stream);\n model.tables[`../tables/${name}.xml`] = table;\n }\n\n async _processWorksheetRelsEntry(stream, model, sheetNo) {\n const xform = new RelationshipsXform();\n const relationships = await xform.parseStream(stream);\n model.worksheetRels[sheetNo] = relationships;\n }\n\n async _processMediaEntry(entry, model, filename) {\n const lastDot = filename.lastIndexOf('.');\n // if we can't determine extension, ignore it\n if (lastDot >= 1) {\n const extension = filename.substr(lastDot + 1);\n const name = filename.substr(0, lastDot);\n await new Promise((resolve, reject) => {\n const streamBuf = new StreamBuf();\n streamBuf.on('finish', () => {\n model.mediaIndex[filename] = model.media.length;\n model.mediaIndex[name] = model.media.length;\n const medium = {\n type: 'image',\n name,\n extension,\n buffer: streamBuf.toBuffer(),\n };\n model.media.push(medium);\n resolve();\n });\n entry.on('error', error => {\n reject(error);\n });\n entry.pipe(streamBuf);\n });\n }\n }\n\n async _processDrawingEntry(entry, model, name) {\n const xform = new DrawingXform();\n const drawing = await xform.parseStream(entry);\n model.drawings[name] = drawing;\n }\n\n async _processDrawingRelsEntry(entry, model, name) {\n const xform = new RelationshipsXform();\n const relationships = await xform.parseStream(entry);\n model.drawingRels[name] = relationships;\n }\n\n async _processVmlDrawingEntry(entry, model, name) {\n const xform = new VmlNotesXform();\n const vmlDrawing = await xform.parseStream(entry);\n model.vmlDrawings[`../drawings/${name}.vml`] = vmlDrawing;\n }\n\n async _processThemeEntry(entry, model, name) {\n await new Promise((resolve, reject) => {\n // TODO: stream entry into buffer and store the xml in the model.themes[]\n const stream = new StreamBuf();\n entry.on('error', reject);\n stream.on('error', reject);\n stream.on('finish', () => {\n model.themes[name] = stream.read().toString();\n resolve();\n });\n entry.pipe(stream);\n });\n }\n\n /**\n * @deprecated since version 4.0. You should use `#read` instead. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md\n */\n createInputStream() {\n throw new Error(\n '`XLSX#createInputStream` is deprecated. You should use `XLSX#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md'\n );\n }\n\n async read(stream, options) {\n // TODO: Remove once node v8 is deprecated\n // Detect and upgrade old streams\n if (!stream[Symbol.asyncIterator] && stream.pipe) {\n stream = stream.pipe(new PassThrough());\n }\n const chunks = [];\n for await (const chunk of stream) {\n chunks.push(chunk);\n }\n return this.load(Buffer.concat(chunks), options);\n }\n\n async load(data, options) {\n let buffer;\n if (options && options.base64) {\n buffer = Buffer.from(data.toString(), 'base64');\n } else {\n buffer = data;\n }\n\n const model = {\n worksheets: [],\n worksheetHash: {},\n worksheetRels: [],\n themes: {},\n media: [],\n mediaIndex: {},\n drawings: {},\n drawingRels: {},\n comments: {},\n tables: {},\n vmlDrawings: {},\n };\n\n const zip = await JSZip.loadAsync(buffer);\n for (const entry of Object.values(zip.files)) {\n /* eslint-disable no-await-in-loop */\n if (!entry.dir) {\n let entryName = entry.name;\n if (entryName[0] === '/') {\n entryName = entryName.substr(1);\n }\n let stream;\n if (\n entryName.match(/xl\\/media\\//) ||\n // themes are not parsed as stream\n entryName.match(/xl\\/theme\\/([a-zA-Z0-9]+)[.]xml/)\n ) {\n stream = new PassThrough();\n stream.write(await entry.async('nodebuffer'));\n } else {\n // use object mode to avoid buffer-string convention\n stream = new PassThrough({\n writableObjectMode: true,\n readableObjectMode: true,\n });\n let content;\n // https://www.npmjs.com/package/process\n if (process.browser) {\n // running in browser, use TextDecoder if possible\n content = bufferToString(await entry.async('nodebuffer'));\n } else {\n // running in node.js\n content = await entry.async('string');\n }\n const chunkSize = 16 * 1024;\n for (let i = 0; i < content.length; i += chunkSize) {\n stream.write(content.substring(i, i + chunkSize));\n }\n }\n stream.end();\n switch (entryName) {\n case '_rels/.rels':\n model.globalRels = await this.parseRels(stream);\n break;\n\n case 'xl/workbook.xml': {\n const workbook = await this.parseWorkbook(stream);\n model.sheets = workbook.sheets;\n model.definedNames = workbook.definedNames;\n model.views = workbook.views;\n model.properties = workbook.properties;\n model.calcProperties = workbook.calcProperties;\n break;\n }\n\n case 'xl/_rels/workbook.xml.rels':\n model.workbookRels = await this.parseRels(stream);\n break;\n\n case 'xl/sharedStrings.xml':\n model.sharedStrings = new SharedStringsXform();\n await model.sharedStrings.parseStream(stream);\n break;\n\n case 'xl/styles.xml':\n model.styles = new StylesXform();\n await model.styles.parseStream(stream);\n break;\n\n case 'docProps/app.xml': {\n const appXform = new AppXform();\n const appProperties = await appXform.parseStream(stream);\n model.company = appProperties.company;\n model.manager = appProperties.manager;\n break;\n }\n\n case 'docProps/core.xml': {\n const coreXform = new CoreXform();\n const coreProperties = await coreXform.parseStream(stream);\n Object.assign(model, coreProperties);\n break;\n }\n\n default: {\n let match = entryName.match(/xl\\/worksheets\\/sheet(\\d+)[.]xml/);\n if (match) {\n await this._processWorksheetEntry(stream, model, match[1], options, entryName);\n break;\n }\n match = entryName.match(/xl\\/worksheets\\/_rels\\/sheet(\\d+)[.]xml.rels/);\n if (match) {\n await this._processWorksheetRelsEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/theme\\/([a-zA-Z0-9]+)[.]xml/);\n if (match) {\n await this._processThemeEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/media\\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/);\n if (match) {\n await this._processMediaEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/drawings\\/([a-zA-Z0-9]+)[.]xml/);\n if (match) {\n await this._processDrawingEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/(comments\\d+)[.]xml/);\n if (match) {\n await this._processCommentEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/tables\\/(table\\d+)[.]xml/);\n if (match) {\n await this._processTableEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/drawings\\/_rels\\/([a-zA-Z0-9]+)[.]xml[.]rels/);\n if (match) {\n await this._processDrawingRelsEntry(stream, model, match[1]);\n break;\n }\n match = entryName.match(/xl\\/drawings\\/(vmlDrawing\\d+)[.]vml/);\n if (match) {\n await this._processVmlDrawingEntry(stream, model, match[1]);\n break;\n }\n }\n }\n }\n }\n\n this.reconcile(model, options);\n\n // apply model\n this.workbook.model = model;\n return this.workbook;\n }\n\n // =========================================================================\n // Write\n\n async addMedia(zip, model) {\n await Promise.all(\n model.media.map(async medium => {\n if (medium.type === 'image') {\n const filename = `xl/media/${medium.name}.${medium.extension}`;\n if (medium.filename) {\n const data = await fsReadFileAsync(medium.filename);\n return zip.append(data, {name: filename});\n }\n if (medium.buffer) {\n return zip.append(medium.buffer, {name: filename});\n }\n if (medium.base64) {\n const dataimg64 = medium.base64;\n const content = dataimg64.substring(dataimg64.indexOf(',') + 1);\n return zip.append(content, {name: filename, base64: true});\n }\n }\n throw new Error('Unsupported media');\n })\n );\n }\n\n addDrawings(zip, model) {\n const drawingXform = new DrawingXform();\n const relsXform = new RelationshipsXform();\n\n model.worksheets.forEach(worksheet => {\n const {drawing} = worksheet;\n if (drawing) {\n drawingXform.prepare(drawing, {});\n let xml = drawingXform.toXml(drawing);\n zip.append(xml, {name: `xl/drawings/${drawing.name}.xml`});\n\n xml = relsXform.toXml(drawing.rels);\n zip.append(xml, {name: `xl/drawings/_rels/${drawing.name}.xml.rels`});\n }\n });\n }\n\n addTables(zip, model) {\n const tableXform = new TableXform();\n\n model.worksheets.forEach(worksheet => {\n const {tables} = worksheet;\n tables.forEach(table => {\n tableXform.prepare(table, {});\n const tableXml = tableXform.toXml(table);\n zip.append(tableXml, {name: `xl/tables/${table.target}`});\n });\n });\n }\n\n async addContentTypes(zip, model) {\n const xform = new ContentTypesXform();\n const xml = xform.toXml(model);\n zip.append(xml, {name: '[Content_Types].xml'});\n }\n\n async addApp(zip, model) {\n const xform = new AppXform();\n const xml = xform.toXml(model);\n zip.append(xml, {name: 'docProps/app.xml'});\n }\n\n async addCore(zip, model) {\n const coreXform = new CoreXform();\n zip.append(coreXform.toXml(model), {name: 'docProps/core.xml'});\n }\n\n async addThemes(zip, model) {\n const themes = model.themes || {theme1: theme1Xml};\n Object.keys(themes).forEach(name => {\n const xml = themes[name];\n const path = `xl/theme/${name}.xml`;\n zip.append(xml, {name: path});\n });\n }\n\n async addOfficeRels(zip) {\n const xform = new RelationshipsXform();\n const xml = xform.toXml([\n {Id: 'rId1', Type: XLSX.RelType.OfficeDocument, Target: 'xl/workbook.xml'},\n {Id: 'rId2', Type: XLSX.RelType.CoreProperties, Target: 'docProps/core.xml'},\n {Id: 'rId3', Type: XLSX.RelType.ExtenderProperties, Target: 'docProps/app.xml'},\n ]);\n zip.append(xml, {name: '_rels/.rels'});\n }\n\n async addWorkbookRels(zip, model) {\n let count = 1;\n const relationships = [\n {Id: `rId${count++}`, Type: XLSX.RelType.Styles, Target: 'styles.xml'},\n {Id: `rId${count++}`, Type: XLSX.RelType.Theme, Target: 'theme/theme1.xml'},\n ];\n if (model.sharedStrings.count) {\n relationships.push({\n Id: `rId${count++}`,\n Type: XLSX.RelType.SharedStrings,\n Target: 'sharedStrings.xml',\n });\n }\n model.worksheets.forEach(worksheet => {\n worksheet.rId = `rId${count++}`;\n relationships.push({\n Id: worksheet.rId,\n Type: XLSX.RelType.Worksheet,\n Target: `worksheets/sheet${worksheet.id}.xml`,\n });\n });\n const xform = new RelationshipsXform();\n const xml = xform.toXml(relationships);\n zip.append(xml, {name: 'xl/_rels/workbook.xml.rels'});\n }\n\n async addSharedStrings(zip, model) {\n if (model.sharedStrings && model.sharedStrings.count) {\n zip.append(model.sharedStrings.xml, {name: 'xl/sharedStrings.xml'});\n }\n }\n\n async addStyles(zip, model) {\n const {xml} = model.styles;\n if (xml) {\n zip.append(xml, {name: 'xl/styles.xml'});\n }\n }\n\n async addWorkbook(zip, model) {\n const xform = new WorkbookXform();\n zip.append(xform.toXml(model), {name: 'xl/workbook.xml'});\n }\n\n async addWorksheets(zip, model) {\n // preparation phase\n const worksheetXform = new WorksheetXform();\n const relationshipsXform = new RelationshipsXform();\n const commentsXform = new CommentsXform();\n const vmlNotesXform = new VmlNotesXform();\n\n // write sheets\n model.worksheets.forEach(worksheet => {\n let xmlStream = new XmlStream();\n worksheetXform.render(xmlStream, worksheet);\n zip.append(xmlStream.xml, {name: `xl/worksheets/sheet${worksheet.id}.xml`});\n\n if (worksheet.rels && worksheet.rels.length) {\n xmlStream = new XmlStream();\n relationshipsXform.render(xmlStream, worksheet.rels);\n zip.append(xmlStream.xml, {name: `xl/worksheets/_rels/sheet${worksheet.id}.xml.rels`});\n }\n\n if (worksheet.comments.length > 0) {\n xmlStream = new XmlStream();\n commentsXform.render(xmlStream, worksheet);\n zip.append(xmlStream.xml, {name: `xl/comments${worksheet.id}.xml`});\n\n xmlStream = new XmlStream();\n vmlNotesXform.render(xmlStream, worksheet);\n zip.append(xmlStream.xml, {name: `xl/drawings/vmlDrawing${worksheet.id}.vml`});\n }\n });\n }\n\n _finalize(zip) {\n return new Promise((resolve, reject) => {\n zip.on('finish', () => {\n resolve(this);\n });\n zip.on('error', reject);\n zip.finalize();\n });\n }\n\n prepareModel(model, options) {\n // ensure following properties have sane values\n model.creator = model.creator || 'ExcelJS';\n model.lastModifiedBy = model.lastModifiedBy || 'ExcelJS';\n model.created = model.created || new Date();\n model.modified = model.modified || new Date();\n\n model.useSharedStrings = options.useSharedStrings !== undefined ? options.useSharedStrings : true;\n model.useStyles = options.useStyles !== undefined ? options.useStyles : true;\n\n // Manage the shared strings\n model.sharedStrings = new SharedStringsXform();\n\n // add a style manager to handle cell formats, fonts, etc.\n model.styles = model.useStyles ? new StylesXform(true) : new StylesXform.Mock();\n\n // prepare all of the things before the render\n const workbookXform = new WorkbookXform();\n const worksheetXform = new WorksheetXform();\n\n workbookXform.prepare(model);\n\n const worksheetOptions = {\n sharedStrings: model.sharedStrings,\n styles: model.styles,\n date1904: model.properties.date1904,\n drawingsCount: 0,\n media: model.media,\n };\n worksheetOptions.drawings = model.drawings = [];\n worksheetOptions.commentRefs = model.commentRefs = [];\n let tableCount = 0;\n model.tables = [];\n model.worksheets.forEach(worksheet => {\n // assign unique filenames to tables\n worksheet.tables.forEach(table => {\n tableCount++;\n table.target = `table${tableCount}.xml`;\n table.id = tableCount;\n model.tables.push(table);\n });\n\n worksheetXform.prepare(worksheet, worksheetOptions);\n });\n\n // TODO: workbook drawing list\n }\n\n async write(stream, options) {\n options = options || {};\n const {model} = this.workbook;\n const zip = new ZipStream.ZipWriter(options.zip);\n zip.pipe(stream);\n\n this.prepareModel(model, options);\n\n // render\n await this.addContentTypes(zip, model);\n await this.addOfficeRels(zip, model);\n await this.addWorkbookRels(zip, model);\n await this.addWorksheets(zip, model);\n await this.addSharedStrings(zip, model); // always after worksheets\n await this.addDrawings(zip, model);\n await this.addTables(zip, model);\n await Promise.all([this.addThemes(zip, model), this.addStyles(zip, model)]);\n await this.addMedia(zip, model);\n await Promise.all([this.addApp(zip, model), this.addCore(zip, model)]);\n await this.addWorkbook(zip, model);\n return this._finalize(zip);\n }\n\n writeFile(filename, options) {\n const stream = fs.createWriteStream(filename);\n\n return new Promise((resolve, reject) => {\n stream.on('finish', () => {\n resolve();\n });\n stream.on('error', error => {\n reject(error);\n });\n\n this.write(stream, options).then(() => {\n stream.end();\n }).catch(err=>{\n reject(err);\n });\n });\n }\n\n async writeBuffer(options) {\n const stream = new StreamBuf();\n await this.write(stream, options);\n return stream.read();\n }\n}\n\nXLSX.RelType = require('./rel-type');\n\nmodule.exports = XLSX;\n"],"mappings":";;AAAA,MAAMA,EAAE,GAAGC,OAAO,CAAC,IAAI,CAAC;AACxB,MAAMC,KAAK,GAAGD,OAAO,CAAC,OAAO,CAAC;AAC9B,MAAM;EAACE;AAAW,CAAC,GAAGF,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAMG,SAAS,GAAGH,OAAO,CAAC,qBAAqB,CAAC;AAChD,MAAMI,SAAS,GAAGJ,OAAO,CAAC,qBAAqB,CAAC;AAEhD,MAAMK,KAAK,GAAGL,OAAO,CAAC,gBAAgB,CAAC;AACvC,MAAMM,SAAS,GAAGN,OAAO,CAAC,qBAAqB,CAAC;AAChD,MAAM;EAACO;AAAc,CAAC,GAAGP,OAAO,CAAC,gCAAgC,CAAC;AAElE,MAAMQ,WAAW,GAAGR,OAAO,CAAC,4BAA4B,CAAC;AAEzD,MAAMS,SAAS,GAAGT,OAAO,CAAC,yBAAyB,CAAC;AACpD,MAAMU,kBAAkB,GAAGV,OAAO,CAAC,sCAAsC,CAAC;AAC1E,MAAMW,kBAAkB,GAAGX,OAAO,CAAC,kCAAkC,CAAC;AACtE,MAAMY,iBAAiB,GAAGZ,OAAO,CAAC,kCAAkC,CAAC;AACrE,MAAMa,QAAQ,GAAGb,OAAO,CAAC,wBAAwB,CAAC;AAClD,MAAMc,aAAa,GAAGd,OAAO,CAAC,6BAA6B,CAAC;AAC5D,MAAMe,cAAc,GAAGf,OAAO,CAAC,+BAA+B,CAAC;AAC/D,MAAMgB,YAAY,GAAGhB,OAAO,CAAC,+BAA+B,CAAC;AAC7D,MAAMiB,UAAU,GAAGjB,OAAO,CAAC,2BAA2B,CAAC;AACvD,MAAMkB,aAAa,GAAGlB,OAAO,CAAC,gCAAgC,CAAC;AAC/D,MAAMmB,aAAa,GAAGnB,OAAO,CAAC,iCAAiC,CAAC;AAEhE,MAAMoB,SAAS,GAAGpB,OAAO,CAAC,cAAc,CAAC;AAEzC,SAASqB,eAAeA,CAACC,QAAQ,EAAEC,OAAO,EAAE;EAC1C,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC3B,EAAE,CAAC4B,QAAQ,CAACL,QAAQ,EAAEC,OAAO,EAAE,CAACK,KAAK,EAAEC,IAAI,KAAK;MAC9C,IAAID,KAAK,EAAE;QACTF,MAAM,CAACE,KAAK,CAAC;MACf,CAAC,MAAM;QACLH,OAAO,CAACI,IAAI,CAAC;MACf;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ;AAEA,MAAMC,IAAI,CAAC;EACTC,WAAWA,CAACC,QAAQ,EAAE;IACpB,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC1B;;EAEA;EACA;EACA;EACA;;EAEA,MAAML,QAAQA,CAACL,QAAQ,EAAEC,OAAO,EAAE;IAChC,IAAI,EAAE,MAAMlB,KAAK,CAACN,EAAE,CAACkC,MAAM,CAACX,QAAQ,CAAC,CAAC,EAAE;MACtC,MAAM,IAAIY,KAAK,CAAE,mBAAkBZ,QAAS,EAAC,CAAC;IAChD;IACA,MAAMa,MAAM,GAAGpC,EAAE,CAACqC,gBAAgB,CAACd,QAAQ,CAAC;IAC5C,IAAI;MACF,MAAMU,QAAQ,GAAG,MAAM,IAAI,CAACK,IAAI,CAACF,MAAM,EAAEZ,OAAO,CAAC;MACjDY,MAAM,CAACG,KAAK,CAAC,CAAC;MACd,OAAON,QAAQ;IACjB,CAAC,CAAC,OAAOJ,KAAK,EAAE;MACdO,MAAM,CAACG,KAAK,CAAC,CAAC;MACd,MAAMV,KAAK;IACb;EACF;EAEAW,SAASA,CAACJ,MAAM,EAAE;IAChB,MAAMK,KAAK,GAAG,IAAI7B,kBAAkB,CAAC,CAAC;IACtC,OAAO6B,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;EAClC;EAEAO,aAAaA,CAACP,MAAM,EAAE;IACpB,MAAMK,KAAK,GAAG,IAAI1B,aAAa,CAAC,CAAC;IACjC,OAAO0B,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;EAClC;EAEAQ,kBAAkBA,CAACR,MAAM,EAAE;IACzB,MAAMK,KAAK,GAAG,IAAI9B,kBAAkB,CAAC,CAAC;IACtC,OAAO8B,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;EAClC;EAEAS,SAASA,CAACC,KAAK,EAAEtB,OAAO,EAAE;IACxB,MAAMuB,aAAa,GAAG,IAAIhC,aAAa,CAAC,CAAC;IACzC,MAAMiC,cAAc,GAAG,IAAIhC,cAAc,CAACQ,OAAO,CAAC;IAClD,MAAMyB,YAAY,GAAG,IAAIhC,YAAY,CAAC,CAAC;IACvC,MAAMiC,UAAU,GAAG,IAAIhC,UAAU,CAAC,CAAC;IAEnC6B,aAAa,CAACF,SAAS,CAACC,KAAK,CAAC;;IAE9B;IACA,MAAMK,cAAc,GAAG;MACrBC,KAAK,EAAEN,KAAK,CAACM,KAAK;MAClBC,UAAU,EAAEP,KAAK,CAACO;IACpB,CAAC;IACDC,MAAM,CAACC,IAAI,CAACT,KAAK,CAACU,QAAQ,CAAC,CAACC,OAAO,CAACC,IAAI,IAAI;MAC1C,MAAMC,OAAO,GAAGb,KAAK,CAACU,QAAQ,CAACE,IAAI,CAAC;MACpC,MAAME,UAAU,GAAGd,KAAK,CAACe,WAAW,CAACH,IAAI,CAAC;MAC1C,IAAIE,UAAU,EAAE;QACdT,cAAc,CAACW,IAAI,GAAGF,UAAU,CAACG,MAAM,CAAC,CAACC,CAAC,EAAEC,GAAG,KAAK;UAClDD,CAAC,CAACC,GAAG,CAACC,EAAE,CAAC,GAAGD,GAAG;UACf,OAAOD,CAAC;QACV,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,CAACL,OAAO,CAACQ,OAAO,IAAI,EAAE,EAAEV,OAAO,CAACW,MAAM,IAAI;UACxC,MAAMC,UAAU,GAAGD,MAAM,CAACE,OAAO,IAAIF,MAAM,CAACE,OAAO,CAACD,UAAU;UAC9D,IAAIA,UAAU,IAAIlB,cAAc,CAACW,IAAI,CAACO,UAAU,CAACE,GAAG,CAAC,EAAE;YACrDF,UAAU,CAACG,SAAS,GAAGrB,cAAc,CAACW,IAAI,CAACO,UAAU,CAACE,GAAG,CAAC,CAACE,MAAM;YACjE,OAAOJ,UAAU,CAACE,GAAG;UACvB;QACF,CAAC,CAAC;QACFtB,YAAY,CAACJ,SAAS,CAACc,OAAO,EAAER,cAAc,CAAC;MACjD;IACF,CAAC,CAAC;;IAEF;IACA,MAAMuB,YAAY,GAAG;MACnBC,MAAM,EAAE7B,KAAK,CAAC6B;IAChB,CAAC;IACDrB,MAAM,CAACsB,MAAM,CAAC9B,KAAK,CAAC+B,MAAM,CAAC,CAACpB,OAAO,CAACqB,KAAK,IAAI;MAC3C5B,UAAU,CAACL,SAAS,CAACiC,KAAK,EAAEJ,YAAY,CAAC;IAC3C,CAAC,CAAC;IAEF,MAAMK,YAAY,GAAG;MACnBJ,MAAM,EAAE7B,KAAK,CAAC6B,MAAM;MACpBK,aAAa,EAAElC,KAAK,CAACkC,aAAa;MAClC5B,KAAK,EAAEN,KAAK,CAACM,KAAK;MAClBC,UAAU,EAAEP,KAAK,CAACO,UAAU;MAC5B4B,QAAQ,EAAEnC,KAAK,CAACoC,UAAU,IAAIpC,KAAK,CAACoC,UAAU,CAACD,QAAQ;MACvDzB,QAAQ,EAAEV,KAAK,CAACU,QAAQ;MACxB2B,QAAQ,EAAErC,KAAK,CAACqC,QAAQ;MACxBN,MAAM,EAAE/B,KAAK,CAAC+B,MAAM;MACpBO,WAAW,EAAEtC,KAAK,CAACsC;IACrB,CAAC;IACDtC,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpCA,SAAS,CAACC,aAAa,GAAGzC,KAAK,CAAC0C,aAAa,CAACF,SAAS,CAACG,OAAO,CAAC;MAChEzC,cAAc,CAACH,SAAS,CAACyC,SAAS,EAAEP,YAAY,CAAC;IACnD,CAAC,CAAC;;IAEF;IACA,OAAOjC,KAAK,CAAC4C,aAAa;IAC1B,OAAO5C,KAAK,CAAC0C,aAAa;IAC1B,OAAO1C,KAAK,CAAC6C,UAAU;IACvB,OAAO7C,KAAK,CAACkC,aAAa;IAC1B,OAAOlC,KAAK,CAAC8C,YAAY;IACzB,OAAO9C,KAAK,CAAC+C,SAAS;IACtB,OAAO/C,KAAK,CAAC6B,MAAM;IACnB,OAAO7B,KAAK,CAACO,UAAU;IACvB,OAAOP,KAAK,CAACU,QAAQ;IACrB,OAAOV,KAAK,CAACe,WAAW;IACxB,OAAOf,KAAK,CAACsC,WAAW;EAC1B;EAEA,MAAMU,sBAAsBA,CAAC1D,MAAM,EAAEU,KAAK,EAAE2C,OAAO,EAAEjE,OAAO,EAAEuE,IAAI,EAAE;IAClE,MAAMtD,KAAK,GAAG,IAAIzB,cAAc,CAACQ,OAAO,CAAC;IACzC,MAAM8D,SAAS,GAAG,MAAM7C,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;IACjDkD,SAAS,CAACG,OAAO,GAAGA,OAAO;IAC3B3C,KAAK,CAAC4C,aAAa,CAACK,IAAI,CAAC,GAAGT,SAAS;IACrCxC,KAAK,CAACuC,UAAU,CAACW,IAAI,CAACV,SAAS,CAAC;EAClC;EAEA,MAAMW,oBAAoBA,CAAC7D,MAAM,EAAEU,KAAK,EAAEY,IAAI,EAAE;IAC9C,MAAMjB,KAAK,GAAG,IAAItB,aAAa,CAAC,CAAC;IACjC,MAAMgE,QAAQ,GAAG,MAAM1C,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;IAChDU,KAAK,CAACqC,QAAQ,CAAE,MAAKzB,IAAK,MAAK,CAAC,GAAGyB,QAAQ;EAC7C;EAEA,MAAMe,kBAAkBA,CAAC9D,MAAM,EAAEU,KAAK,EAAEY,IAAI,EAAE;IAC5C,MAAMjB,KAAK,GAAG,IAAIvB,UAAU,CAAC,CAAC;IAC9B,MAAM4D,KAAK,GAAG,MAAMrC,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;IAC7CU,KAAK,CAAC+B,MAAM,CAAE,aAAYnB,IAAK,MAAK,CAAC,GAAGoB,KAAK;EAC/C;EAEA,MAAMqB,0BAA0BA,CAAC/D,MAAM,EAAEU,KAAK,EAAE2C,OAAO,EAAE;IACvD,MAAMhD,KAAK,GAAG,IAAI7B,kBAAkB,CAAC,CAAC;IACtC,MAAM2E,aAAa,GAAG,MAAM9C,KAAK,CAACC,WAAW,CAACN,MAAM,CAAC;IACrDU,KAAK,CAAC0C,aAAa,CAACC,OAAO,CAAC,GAAGF,aAAa;EAC9C;EAEA,MAAMa,kBAAkBA,CAACC,KAAK,EAAEvD,KAAK,EAAEvB,QAAQ,EAAE;IAC/C,MAAM+E,OAAO,GAAG/E,QAAQ,CAACgF,WAAW,CAAC,GAAG,CAAC;IACzC;IACA,IAAID,OAAO,IAAI,CAAC,EAAE;MAChB,MAAME,SAAS,GAAGjF,QAAQ,CAACkF,MAAM,CAACH,OAAO,GAAG,CAAC,CAAC;MAC9C,MAAM5C,IAAI,GAAGnC,QAAQ,CAACkF,MAAM,CAAC,CAAC,EAAEH,OAAO,CAAC;MACxC,MAAM,IAAI7E,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;QACrC,MAAM+E,SAAS,GAAG,IAAIrG,SAAS,CAAC,CAAC;QACjCqG,SAAS,CAACC,EAAE,CAAC,QAAQ,EAAE,MAAM;UAC3B7D,KAAK,CAACO,UAAU,CAAC9B,QAAQ,CAAC,GAAGuB,KAAK,CAACM,KAAK,CAACwD,MAAM;UAC/C9D,KAAK,CAACO,UAAU,CAACK,IAAI,CAAC,GAAGZ,KAAK,CAACM,KAAK,CAACwD,MAAM;UAC3C,MAAMC,MAAM,GAAG;YACbC,IAAI,EAAE,OAAO;YACbpD,IAAI;YACJ8C,SAAS;YACTO,MAAM,EAAEL,SAAS,CAACM,QAAQ,CAAC;UAC7B,CAAC;UACDlE,KAAK,CAACM,KAAK,CAAC4C,IAAI,CAACa,MAAM,CAAC;UACxBnF,OAAO,CAAC,CAAC;QACX,CAAC,CAAC;QACF2E,KAAK,CAACM,EAAE,CAAC,OAAO,EAAE9E,KAAK,IAAI;UACzBF,MAAM,CAACE,KAAK,CAAC;QACf,CAAC,CAAC;QACFwE,KAAK,CAACY,IAAI,CAACP,SAAS,CAAC;MACvB,CAAC,CAAC;IACJ;EACF;EAEA,MAAMQ,oBAAoBA,CAACb,KAAK,EAAEvD,KAAK,EAAEY,IAAI,EAAE;IAC7C,MAAMjB,KAAK,GAAG,IAAIxB,YAAY,CAAC,CAAC;IAChC,MAAM0C,OAAO,GAAG,MAAMlB,KAAK,CAACC,WAAW,CAAC2D,KAAK,CAAC;IAC9CvD,KAAK,CAACU,QAAQ,CAACE,IAAI,CAAC,GAAGC,OAAO;EAChC;EAEA,MAAMwD,wBAAwBA,CAACd,KAAK,EAAEvD,KAAK,EAAEY,IAAI,EAAE;IACjD,MAAMjB,KAAK,GAAG,IAAI7B,kBAAkB,CAAC,CAAC;IACtC,MAAM2E,aAAa,GAAG,MAAM9C,KAAK,CAACC,WAAW,CAAC2D,KAAK,CAAC;IACpDvD,KAAK,CAACe,WAAW,CAACH,IAAI,CAAC,GAAG6B,aAAa;EACzC;EAEA,MAAM6B,uBAAuBA,CAACf,KAAK,EAAEvD,KAAK,EAAEY,IAAI,EAAE;IAChD,MAAMjB,KAAK,GAAG,IAAIrB,aAAa,CAAC,CAAC;IACjC,MAAMiG,UAAU,GAAG,MAAM5E,KAAK,CAACC,WAAW,CAAC2D,KAAK,CAAC;IACjDvD,KAAK,CAACsC,WAAW,CAAE,eAAc1B,IAAK,MAAK,CAAC,GAAG2D,UAAU;EAC3D;EAEA,MAAMC,kBAAkBA,CAACjB,KAAK,EAAEvD,KAAK,EAAEY,IAAI,EAAE;IAC3C,MAAM,IAAIjC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACrC;MACA,MAAMS,MAAM,GAAG,IAAI/B,SAAS,CAAC,CAAC;MAC9BgG,KAAK,CAACM,EAAE,CAAC,OAAO,EAAEhF,MAAM,CAAC;MACzBS,MAAM,CAACuE,EAAE,CAAC,OAAO,EAAEhF,MAAM,CAAC;MAC1BS,MAAM,CAACuE,EAAE,CAAC,QAAQ,EAAE,MAAM;QACxB7D,KAAK,CAACyE,MAAM,CAAC7D,IAAI,CAAC,GAAGtB,MAAM,CAACE,IAAI,CAAC,CAAC,CAACkF,QAAQ,CAAC,CAAC;QAC7C9F,OAAO,CAAC,CAAC;MACX,CAAC,CAAC;MACF2E,KAAK,CAACY,IAAI,CAAC7E,MAAM,CAAC;IACpB,CAAC,CAAC;EACJ;;EAEA;AACF;AACA;EACEqF,iBAAiBA,CAAA,EAAG;IAClB,MAAM,IAAItF,KAAK,CACb,0NACF,CAAC;EACH;EAEA,MAAMG,IAAIA,CAACF,MAAM,EAAEZ,OAAO,EAAE;IAC1B;IACA;IACA,IAAI,CAACY,MAAM,CAACsF,MAAM,CAACC,aAAa,CAAC,IAAIvF,MAAM,CAAC6E,IAAI,EAAE;MAChD7E,MAAM,GAAGA,MAAM,CAAC6E,IAAI,CAAC,IAAI9G,WAAW,CAAC,CAAC,CAAC;IACzC;IACA,MAAMyH,MAAM,GAAG,EAAE;IACjB,WAAW,MAAMC,KAAK,IAAIzF,MAAM,EAAE;MAChCwF,MAAM,CAAC5B,IAAI,CAAC6B,KAAK,CAAC;IACpB;IACA,OAAO,IAAI,CAACC,IAAI,CAACC,MAAM,CAACC,MAAM,CAACJ,MAAM,CAAC,EAAEpG,OAAO,CAAC;EAClD;EAEA,MAAMsG,IAAIA,CAAChG,IAAI,EAAEN,OAAO,EAAE;IACxB,IAAIuF,MAAM;IACV,IAAIvF,OAAO,IAAIA,OAAO,CAACyG,MAAM,EAAE;MAC7BlB,MAAM,GAAGgB,MAAM,CAACG,IAAI,CAACpG,IAAI,CAAC0F,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC;IACjD,CAAC,MAAM;MACLT,MAAM,GAAGjF,IAAI;IACf;IAEA,MAAMgB,KAAK,GAAG;MACZuC,UAAU,EAAE,EAAE;MACdK,aAAa,EAAE,CAAC,CAAC;MACjBF,aAAa,EAAE,EAAE;MACjB+B,MAAM,EAAE,CAAC,CAAC;MACVnE,KAAK,EAAE,EAAE;MACTC,UAAU,EAAE,CAAC,CAAC;MACdG,QAAQ,EAAE,CAAC,CAAC;MACZK,WAAW,EAAE,CAAC,CAAC;MACfsB,QAAQ,EAAE,CAAC,CAAC;MACZN,MAAM,EAAE,CAAC,CAAC;MACVO,WAAW,EAAE,CAAC;IAChB,CAAC;IAED,MAAM+C,GAAG,GAAG,MAAMjI,KAAK,CAACkI,SAAS,CAACrB,MAAM,CAAC;IACzC,KAAK,MAAMV,KAAK,IAAI/C,MAAM,CAACsB,MAAM,CAACuD,GAAG,CAACE,KAAK,CAAC,EAAE;MAC5C;MACA,IAAI,CAAChC,KAAK,CAACiC,GAAG,EAAE;QACd,IAAIC,SAAS,GAAGlC,KAAK,CAAC3C,IAAI;QAC1B,IAAI6E,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;UACxBA,SAAS,GAAGA,SAAS,CAAC9B,MAAM,CAAC,CAAC,CAAC;QACjC;QACA,IAAIrE,MAAM;QACV,IACEmG,SAAS,CAACC,KAAK,CAAC,aAAa,CAAC;QAC9B;QACAD,SAAS,CAACC,KAAK,CAAC,iCAAiC,CAAC,EAClD;UACApG,MAAM,GAAG,IAAIjC,WAAW,CAAC,CAAC;UAC1BiC,MAAM,CAACqG,KAAK,CAAC,MAAMpC,KAAK,CAACqC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC/C,CAAC,MAAM;UACL;UACAtG,MAAM,GAAG,IAAIjC,WAAW,CAAC;YACvBwI,kBAAkB,EAAE,IAAI;YACxBC,kBAAkB,EAAE;UACtB,CAAC,CAAC;UACF,IAAIC,OAAO;UACX;UACA,IAAIC,OAAO,CAACC,OAAO,EAAE;YACnB;YACAF,OAAO,GAAGrI,cAAc,CAAC,MAAM6F,KAAK,CAACqC,KAAK,CAAC,YAAY,CAAC,CAAC;UAC3D,CAAC,MAAM;YACL;YACAG,OAAO,GAAG,MAAMxC,KAAK,CAACqC,KAAK,CAAC,QAAQ,CAAC;UACvC;UACA,MAAMM,SAAS,GAAG,EAAE,GAAG,IAAI;UAC3B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,OAAO,CAACjC,MAAM,EAAEqC,CAAC,IAAID,SAAS,EAAE;YAClD5G,MAAM,CAACqG,KAAK,CAACI,OAAO,CAACK,SAAS,CAACD,CAAC,EAAEA,CAAC,GAAGD,SAAS,CAAC,CAAC;UACnD;QACF;QACA5G,MAAM,CAAC+G,GAAG,CAAC,CAAC;QACZ,QAAQZ,SAAS;UACf,KAAK,aAAa;YAChBzF,KAAK,CAAC6C,UAAU,GAAG,MAAM,IAAI,CAACnD,SAAS,CAACJ,MAAM,CAAC;YAC/C;UAEF,KAAK,iBAAiB;YAAE;cACtB,MAAMH,QAAQ,GAAG,MAAM,IAAI,CAACU,aAAa,CAACP,MAAM,CAAC;cACjDU,KAAK,CAACsG,MAAM,GAAGnH,QAAQ,CAACmH,MAAM;cAC9BtG,KAAK,CAACuG,YAAY,GAAGpH,QAAQ,CAACoH,YAAY;cAC1CvG,KAAK,CAACwG,KAAK,GAAGrH,QAAQ,CAACqH,KAAK;cAC5BxG,KAAK,CAACoC,UAAU,GAAGjD,QAAQ,CAACiD,UAAU;cACtCpC,KAAK,CAACyG,cAAc,GAAGtH,QAAQ,CAACsH,cAAc;cAC9C;YACF;UAEA,KAAK,4BAA4B;YAC/BzG,KAAK,CAAC8C,YAAY,GAAG,MAAM,IAAI,CAACpD,SAAS,CAACJ,MAAM,CAAC;YACjD;UAEF,KAAK,sBAAsB;YACzBU,KAAK,CAACkC,aAAa,GAAG,IAAIrE,kBAAkB,CAAC,CAAC;YAC9C,MAAMmC,KAAK,CAACkC,aAAa,CAACtC,WAAW,CAACN,MAAM,CAAC;YAC7C;UAEF,KAAK,eAAe;YAClBU,KAAK,CAAC6B,MAAM,GAAG,IAAIlE,WAAW,CAAC,CAAC;YAChC,MAAMqC,KAAK,CAAC6B,MAAM,CAACjC,WAAW,CAACN,MAAM,CAAC;YACtC;UAEF,KAAK,kBAAkB;YAAE;cACvB,MAAMoH,QAAQ,GAAG,IAAI1I,QAAQ,CAAC,CAAC;cAC/B,MAAM2I,aAAa,GAAG,MAAMD,QAAQ,CAAC9G,WAAW,CAACN,MAAM,CAAC;cACxDU,KAAK,CAAC4G,OAAO,GAAGD,aAAa,CAACC,OAAO;cACrC5G,KAAK,CAAC6G,OAAO,GAAGF,aAAa,CAACE,OAAO;cACrC;YACF;UAEA,KAAK,mBAAmB;YAAE;cACxB,MAAMC,SAAS,GAAG,IAAIlJ,SAAS,CAAC,CAAC;cACjC,MAAMmJ,cAAc,GAAG,MAAMD,SAAS,CAAClH,WAAW,CAACN,MAAM,CAAC;cAC1DkB,MAAM,CAACwG,MAAM,CAAChH,KAAK,EAAE+G,cAAc,CAAC;cACpC;YACF;UAEA;YAAS;cACP,IAAIrB,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,kCAAkC,CAAC;cAC/D,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAAC1C,sBAAsB,CAAC1D,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,EAAEhH,OAAO,EAAE+G,SAAS,CAAC;gBAC9E;cACF;cACAC,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,8CAA8C,CAAC;cACvE,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACrC,0BAA0B,CAAC/D,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9D;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,iCAAiC,CAAC;cAC1D,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAAClB,kBAAkB,CAAClF,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtD;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,+CAA+C,CAAC;cACxE,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACpC,kBAAkB,CAAChE,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtD;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,oCAAoC,CAAC;cAC7D,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACtB,oBAAoB,CAAC9E,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxD;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,yBAAyB,CAAC;cAClD,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACvC,oBAAoB,CAAC7D,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxD;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,8BAA8B,CAAC;cACvD,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACtC,kBAAkB,CAAC9D,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtD;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,kDAAkD,CAAC;cAC3E,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACrB,wBAAwB,CAAC/E,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC5D;cACF;cACAA,KAAK,GAAGD,SAAS,CAACC,KAAK,CAAC,qCAAqC,CAAC;cAC9D,IAAIA,KAAK,EAAE;gBACT,MAAM,IAAI,CAACpB,uBAAuB,CAAChF,MAAM,EAAEU,KAAK,EAAE0F,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC3D;cACF;YACF;QACF;MACF;IACF;IAEA,IAAI,CAAC3F,SAAS,CAACC,KAAK,EAAEtB,OAAO,CAAC;;IAE9B;IACA,IAAI,CAACS,QAAQ,CAACa,KAAK,GAAGA,KAAK;IAC3B,OAAO,IAAI,CAACb,QAAQ;EACtB;;EAEA;EACA;;EAEA,MAAM8H,QAAQA,CAAC5B,GAAG,EAAErF,KAAK,EAAE;IACzB,MAAMrB,OAAO,CAACuI,GAAG,CACflH,KAAK,CAACM,KAAK,CAAC6G,GAAG,CAAC,MAAMpD,MAAM,IAAI;MAC9B,IAAIA,MAAM,CAACC,IAAI,KAAK,OAAO,EAAE;QAC3B,MAAMvF,QAAQ,GAAI,YAAWsF,MAAM,CAACnD,IAAK,IAAGmD,MAAM,CAACL,SAAU,EAAC;QAC9D,IAAIK,MAAM,CAACtF,QAAQ,EAAE;UACnB,MAAMO,IAAI,GAAG,MAAMR,eAAe,CAACuF,MAAM,CAACtF,QAAQ,CAAC;UACnD,OAAO4G,GAAG,CAAC+B,MAAM,CAACpI,IAAI,EAAE;YAAC4B,IAAI,EAAEnC;UAAQ,CAAC,CAAC;QAC3C;QACA,IAAIsF,MAAM,CAACE,MAAM,EAAE;UACjB,OAAOoB,GAAG,CAAC+B,MAAM,CAACrD,MAAM,CAACE,MAAM,EAAE;YAACrD,IAAI,EAAEnC;UAAQ,CAAC,CAAC;QACpD;QACA,IAAIsF,MAAM,CAACoB,MAAM,EAAE;UACjB,MAAMkC,SAAS,GAAGtD,MAAM,CAACoB,MAAM;UAC/B,MAAMY,OAAO,GAAGsB,SAAS,CAACjB,SAAS,CAACiB,SAAS,CAACC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;UAC/D,OAAOjC,GAAG,CAAC+B,MAAM,CAACrB,OAAO,EAAE;YAACnF,IAAI,EAAEnC,QAAQ;YAAE0G,MAAM,EAAE;UAAI,CAAC,CAAC;QAC5D;MACF;MACA,MAAM,IAAI9F,KAAK,CAAC,mBAAmB,CAAC;IACtC,CAAC,CACH,CAAC;EACH;EAEAkI,WAAWA,CAAClC,GAAG,EAAErF,KAAK,EAAE;IACtB,MAAMG,YAAY,GAAG,IAAIhC,YAAY,CAAC,CAAC;IACvC,MAAMqJ,SAAS,GAAG,IAAI1J,kBAAkB,CAAC,CAAC;IAE1CkC,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpC,MAAM;QAAC3B;MAAO,CAAC,GAAG2B,SAAS;MAC3B,IAAI3B,OAAO,EAAE;QACXV,YAAY,CAACsH,OAAO,CAAC5G,OAAO,EAAE,CAAC,CAAC,CAAC;QACjC,IAAI6G,GAAG,GAAGvH,YAAY,CAACwH,KAAK,CAAC9G,OAAO,CAAC;QACrCwE,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;UAAC9G,IAAI,EAAG,eAAcC,OAAO,CAACD,IAAK;QAAK,CAAC,CAAC;QAE1D8G,GAAG,GAAGF,SAAS,CAACG,KAAK,CAAC9G,OAAO,CAACG,IAAI,CAAC;QACnCqE,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;UAAC9G,IAAI,EAAG,qBAAoBC,OAAO,CAACD,IAAK;QAAU,CAAC,CAAC;MACvE;IACF,CAAC,CAAC;EACJ;EAEAgH,SAASA,CAACvC,GAAG,EAAErF,KAAK,EAAE;IACpB,MAAMI,UAAU,GAAG,IAAIhC,UAAU,CAAC,CAAC;IAEnC4B,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpC,MAAM;QAACT;MAAM,CAAC,GAAGS,SAAS;MAC1BT,MAAM,CAACpB,OAAO,CAACqB,KAAK,IAAI;QACtB5B,UAAU,CAACqH,OAAO,CAACzF,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM6F,QAAQ,GAAGzH,UAAU,CAACuH,KAAK,CAAC3F,KAAK,CAAC;QACxCqD,GAAG,CAAC+B,MAAM,CAACS,QAAQ,EAAE;UAACjH,IAAI,EAAG,aAAYoB,KAAK,CAAC8F,MAAO;QAAC,CAAC,CAAC;MAC3D,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA,MAAMC,eAAeA,CAAC1C,GAAG,EAAErF,KAAK,EAAE;IAChC,MAAML,KAAK,GAAG,IAAI5B,iBAAiB,CAAC,CAAC;IACrC,MAAM2J,GAAG,GAAG/H,KAAK,CAACgI,KAAK,CAAC3H,KAAK,CAAC;IAC9BqF,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;MAAC9G,IAAI,EAAE;IAAqB,CAAC,CAAC;EAChD;EAEA,MAAMoH,MAAMA,CAAC3C,GAAG,EAAErF,KAAK,EAAE;IACvB,MAAML,KAAK,GAAG,IAAI3B,QAAQ,CAAC,CAAC;IAC5B,MAAM0J,GAAG,GAAG/H,KAAK,CAACgI,KAAK,CAAC3H,KAAK,CAAC;IAC9BqF,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;MAAC9G,IAAI,EAAE;IAAkB,CAAC,CAAC;EAC7C;EAEA,MAAMqH,OAAOA,CAAC5C,GAAG,EAAErF,KAAK,EAAE;IACxB,MAAM8G,SAAS,GAAG,IAAIlJ,SAAS,CAAC,CAAC;IACjCyH,GAAG,CAAC+B,MAAM,CAACN,SAAS,CAACa,KAAK,CAAC3H,KAAK,CAAC,EAAE;MAACY,IAAI,EAAE;IAAmB,CAAC,CAAC;EACjE;EAEA,MAAMsH,SAASA,CAAC7C,GAAG,EAAErF,KAAK,EAAE;IAC1B,MAAMyE,MAAM,GAAGzE,KAAK,CAACyE,MAAM,IAAI;MAAC0D,MAAM,EAAE5J;IAAS,CAAC;IAClDiC,MAAM,CAACC,IAAI,CAACgE,MAAM,CAAC,CAAC9D,OAAO,CAACC,IAAI,IAAI;MAClC,MAAM8G,GAAG,GAAGjD,MAAM,CAAC7D,IAAI,CAAC;MACxB,MAAMqC,IAAI,GAAI,YAAWrC,IAAK,MAAK;MACnCyE,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;QAAC9G,IAAI,EAAEqC;MAAI,CAAC,CAAC;IAC/B,CAAC,CAAC;EACJ;EAEA,MAAMmF,aAAaA,CAAC/C,GAAG,EAAE;IACvB,MAAM1F,KAAK,GAAG,IAAI7B,kBAAkB,CAAC,CAAC;IACtC,MAAM4J,GAAG,GAAG/H,KAAK,CAACgI,KAAK,CAAC,CACtB;MAACvG,EAAE,EAAE,MAAM;MAAEiH,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACC,cAAc;MAAE5G,MAAM,EAAE;IAAiB,CAAC,EAC1E;MAACP,EAAE,EAAE,MAAM;MAAEiH,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACE,cAAc;MAAE7G,MAAM,EAAE;IAAmB,CAAC,EAC5E;MAACP,EAAE,EAAE,MAAM;MAAEiH,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACG,kBAAkB;MAAE9G,MAAM,EAAE;IAAkB,CAAC,CAChF,CAAC;IACF0D,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;MAAC9G,IAAI,EAAE;IAAa,CAAC,CAAC;EACxC;EAEA,MAAM8H,eAAeA,CAACrD,GAAG,EAAErF,KAAK,EAAE;IAChC,IAAI2I,KAAK,GAAG,CAAC;IACb,MAAMlG,aAAa,GAAG,CACpB;MAACrB,EAAE,EAAG,MAAKuH,KAAK,EAAG,EAAC;MAAEN,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACM,MAAM;MAAEjH,MAAM,EAAE;IAAY,CAAC,EACtE;MAACP,EAAE,EAAG,MAAKuH,KAAK,EAAG,EAAC;MAAEN,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACO,KAAK;MAAElH,MAAM,EAAE;IAAkB,CAAC,CAC5E;IACD,IAAI3B,KAAK,CAACkC,aAAa,CAACyG,KAAK,EAAE;MAC7BlG,aAAa,CAACS,IAAI,CAAC;QACjB9B,EAAE,EAAG,MAAKuH,KAAK,EAAG,EAAC;QACnBN,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACQ,aAAa;QAChCnH,MAAM,EAAE;MACV,CAAC,CAAC;IACJ;IACA3B,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpCA,SAAS,CAACf,GAAG,GAAI,MAAKkH,KAAK,EAAG,EAAC;MAC/BlG,aAAa,CAACS,IAAI,CAAC;QACjB9B,EAAE,EAAEoB,SAAS,CAACf,GAAG;QACjB4G,IAAI,EAAEpJ,IAAI,CAACqJ,OAAO,CAACS,SAAS;QAC5BpH,MAAM,EAAG,mBAAkBa,SAAS,CAACwG,EAAG;MAC1C,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAMrJ,KAAK,GAAG,IAAI7B,kBAAkB,CAAC,CAAC;IACtC,MAAM4J,GAAG,GAAG/H,KAAK,CAACgI,KAAK,CAAClF,aAAa,CAAC;IACtC4C,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;MAAC9G,IAAI,EAAE;IAA4B,CAAC,CAAC;EACvD;EAEA,MAAMqI,gBAAgBA,CAAC5D,GAAG,EAAErF,KAAK,EAAE;IACjC,IAAIA,KAAK,CAACkC,aAAa,IAAIlC,KAAK,CAACkC,aAAa,CAACyG,KAAK,EAAE;MACpDtD,GAAG,CAAC+B,MAAM,CAACpH,KAAK,CAACkC,aAAa,CAACwF,GAAG,EAAE;QAAC9G,IAAI,EAAE;MAAsB,CAAC,CAAC;IACrE;EACF;EAEA,MAAMsI,SAASA,CAAC7D,GAAG,EAAErF,KAAK,EAAE;IAC1B,MAAM;MAAC0H;IAAG,CAAC,GAAG1H,KAAK,CAAC6B,MAAM;IAC1B,IAAI6F,GAAG,EAAE;MACPrC,GAAG,CAAC+B,MAAM,CAACM,GAAG,EAAE;QAAC9G,IAAI,EAAE;MAAe,CAAC,CAAC;IAC1C;EACF;EAEA,MAAMuI,WAAWA,CAAC9D,GAAG,EAAErF,KAAK,EAAE;IAC5B,MAAML,KAAK,GAAG,IAAI1B,aAAa,CAAC,CAAC;IACjCoH,GAAG,CAAC+B,MAAM,CAACzH,KAAK,CAACgI,KAAK,CAAC3H,KAAK,CAAC,EAAE;MAACY,IAAI,EAAE;IAAiB,CAAC,CAAC;EAC3D;EAEA,MAAMwI,aAAaA,CAAC/D,GAAG,EAAErF,KAAK,EAAE;IAC9B;IACA,MAAME,cAAc,GAAG,IAAIhC,cAAc,CAAC,CAAC;IAC3C,MAAMmL,kBAAkB,GAAG,IAAIvL,kBAAkB,CAAC,CAAC;IACnD,MAAMwL,aAAa,GAAG,IAAIjL,aAAa,CAAC,CAAC;IACzC,MAAMkL,aAAa,GAAG,IAAIjL,aAAa,CAAC,CAAC;;IAEzC;IACA0B,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpC,IAAIgH,SAAS,GAAG,IAAI/L,SAAS,CAAC,CAAC;MAC/ByC,cAAc,CAACuJ,MAAM,CAACD,SAAS,EAAEhH,SAAS,CAAC;MAC3C6C,GAAG,CAAC+B,MAAM,CAACoC,SAAS,CAAC9B,GAAG,EAAE;QAAC9G,IAAI,EAAG,sBAAqB4B,SAAS,CAACwG,EAAG;MAAK,CAAC,CAAC;MAE3E,IAAIxG,SAAS,CAACxB,IAAI,IAAIwB,SAAS,CAACxB,IAAI,CAAC8C,MAAM,EAAE;QAC3C0F,SAAS,GAAG,IAAI/L,SAAS,CAAC,CAAC;QAC3B4L,kBAAkB,CAACI,MAAM,CAACD,SAAS,EAAEhH,SAAS,CAACxB,IAAI,CAAC;QACpDqE,GAAG,CAAC+B,MAAM,CAACoC,SAAS,CAAC9B,GAAG,EAAE;UAAC9G,IAAI,EAAG,4BAA2B4B,SAAS,CAACwG,EAAG;QAAU,CAAC,CAAC;MACxF;MAEA,IAAIxG,SAAS,CAACH,QAAQ,CAACyB,MAAM,GAAG,CAAC,EAAE;QACjC0F,SAAS,GAAG,IAAI/L,SAAS,CAAC,CAAC;QAC3B6L,aAAa,CAACG,MAAM,CAACD,SAAS,EAAEhH,SAAS,CAAC;QAC1C6C,GAAG,CAAC+B,MAAM,CAACoC,SAAS,CAAC9B,GAAG,EAAE;UAAC9G,IAAI,EAAG,cAAa4B,SAAS,CAACwG,EAAG;QAAK,CAAC,CAAC;QAEnEQ,SAAS,GAAG,IAAI/L,SAAS,CAAC,CAAC;QAC3B8L,aAAa,CAACE,MAAM,CAACD,SAAS,EAAEhH,SAAS,CAAC;QAC1C6C,GAAG,CAAC+B,MAAM,CAACoC,SAAS,CAAC9B,GAAG,EAAE;UAAC9G,IAAI,EAAG,yBAAwB4B,SAAS,CAACwG,EAAG;QAAK,CAAC,CAAC;MAChF;IACF,CAAC,CAAC;EACJ;EAEAU,SAASA,CAACrE,GAAG,EAAE;IACb,OAAO,IAAI1G,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtCwG,GAAG,CAACxB,EAAE,CAAC,QAAQ,EAAE,MAAM;QACrBjF,OAAO,CAAC,IAAI,CAAC;MACf,CAAC,CAAC;MACFyG,GAAG,CAACxB,EAAE,CAAC,OAAO,EAAEhF,MAAM,CAAC;MACvBwG,GAAG,CAACsE,QAAQ,CAAC,CAAC;IAChB,CAAC,CAAC;EACJ;EAEAC,YAAYA,CAAC5J,KAAK,EAAEtB,OAAO,EAAE;IAC3B;IACAsB,KAAK,CAAC6J,OAAO,GAAG7J,KAAK,CAAC6J,OAAO,IAAI,SAAS;IAC1C7J,KAAK,CAAC8J,cAAc,GAAG9J,KAAK,CAAC8J,cAAc,IAAI,SAAS;IACxD9J,KAAK,CAAC+J,OAAO,GAAG/J,KAAK,CAAC+J,OAAO,IAAI,IAAIC,IAAI,CAAC,CAAC;IAC3ChK,KAAK,CAACiK,QAAQ,GAAGjK,KAAK,CAACiK,QAAQ,IAAI,IAAID,IAAI,CAAC,CAAC;IAE7ChK,KAAK,CAACkK,gBAAgB,GAAGxL,OAAO,CAACwL,gBAAgB,KAAKC,SAAS,GAAGzL,OAAO,CAACwL,gBAAgB,GAAG,IAAI;IACjGlK,KAAK,CAACoK,SAAS,GAAG1L,OAAO,CAAC0L,SAAS,KAAKD,SAAS,GAAGzL,OAAO,CAAC0L,SAAS,GAAG,IAAI;;IAE5E;IACApK,KAAK,CAACkC,aAAa,GAAG,IAAIrE,kBAAkB,CAAC,CAAC;;IAE9C;IACAmC,KAAK,CAAC6B,MAAM,GAAG7B,KAAK,CAACoK,SAAS,GAAG,IAAIzM,WAAW,CAAC,IAAI,CAAC,GAAG,IAAIA,WAAW,CAAC0M,IAAI,CAAC,CAAC;;IAE/E;IACA,MAAMpK,aAAa,GAAG,IAAIhC,aAAa,CAAC,CAAC;IACzC,MAAMiC,cAAc,GAAG,IAAIhC,cAAc,CAAC,CAAC;IAE3C+B,aAAa,CAACwH,OAAO,CAACzH,KAAK,CAAC;IAE5B,MAAMsK,gBAAgB,GAAG;MACvBpI,aAAa,EAAElC,KAAK,CAACkC,aAAa;MAClCL,MAAM,EAAE7B,KAAK,CAAC6B,MAAM;MACpBM,QAAQ,EAAEnC,KAAK,CAACoC,UAAU,CAACD,QAAQ;MACnCoI,aAAa,EAAE,CAAC;MAChBjK,KAAK,EAAEN,KAAK,CAACM;IACf,CAAC;IACDgK,gBAAgB,CAAC5J,QAAQ,GAAGV,KAAK,CAACU,QAAQ,GAAG,EAAE;IAC/C4J,gBAAgB,CAACE,WAAW,GAAGxK,KAAK,CAACwK,WAAW,GAAG,EAAE;IACrD,IAAIC,UAAU,GAAG,CAAC;IAClBzK,KAAK,CAAC+B,MAAM,GAAG,EAAE;IACjB/B,KAAK,CAACuC,UAAU,CAAC5B,OAAO,CAAC6B,SAAS,IAAI;MACpC;MACAA,SAAS,CAACT,MAAM,CAACpB,OAAO,CAACqB,KAAK,IAAI;QAChCyI,UAAU,EAAE;QACZzI,KAAK,CAAC8F,MAAM,GAAI,QAAO2C,UAAW,MAAK;QACvCzI,KAAK,CAACgH,EAAE,GAAGyB,UAAU;QACrBzK,KAAK,CAAC+B,MAAM,CAACmB,IAAI,CAAClB,KAAK,CAAC;MAC1B,CAAC,CAAC;MAEF9B,cAAc,CAACuH,OAAO,CAACjF,SAAS,EAAE8H,gBAAgB,CAAC;IACrD,CAAC,CAAC;;IAEF;EACF;;EAEA,MAAM3E,KAAKA,CAACrG,MAAM,EAAEZ,OAAO,EAAE;IAC3BA,OAAO,GAAGA,OAAO,IAAI,CAAC,CAAC;IACvB,MAAM;MAACsB;IAAK,CAAC,GAAG,IAAI,CAACb,QAAQ;IAC7B,MAAMkG,GAAG,GAAG,IAAI/H,SAAS,CAACoN,SAAS,CAAChM,OAAO,CAAC2G,GAAG,CAAC;IAChDA,GAAG,CAAClB,IAAI,CAAC7E,MAAM,CAAC;IAEhB,IAAI,CAACsK,YAAY,CAAC5J,KAAK,EAAEtB,OAAO,CAAC;;IAEjC;IACA,MAAM,IAAI,CAACqJ,eAAe,CAAC1C,GAAG,EAAErF,KAAK,CAAC;IACtC,MAAM,IAAI,CAACoI,aAAa,CAAC/C,GAAG,EAAErF,KAAK,CAAC;IACpC,MAAM,IAAI,CAAC0I,eAAe,CAACrD,GAAG,EAAErF,KAAK,CAAC;IACtC,MAAM,IAAI,CAACoJ,aAAa,CAAC/D,GAAG,EAAErF,KAAK,CAAC;IACpC,MAAM,IAAI,CAACiJ,gBAAgB,CAAC5D,GAAG,EAAErF,KAAK,CAAC,CAAC,CAAC;IACzC,MAAM,IAAI,CAACuH,WAAW,CAAClC,GAAG,EAAErF,KAAK,CAAC;IAClC,MAAM,IAAI,CAAC4H,SAAS,CAACvC,GAAG,EAAErF,KAAK,CAAC;IAChC,MAAMrB,OAAO,CAACuI,GAAG,CAAC,CAAC,IAAI,CAACgB,SAAS,CAAC7C,GAAG,EAAErF,KAAK,CAAC,EAAE,IAAI,CAACkJ,SAAS,CAAC7D,GAAG,EAAErF,KAAK,CAAC,CAAC,CAAC;IAC3E,MAAM,IAAI,CAACiH,QAAQ,CAAC5B,GAAG,EAAErF,KAAK,CAAC;IAC/B,MAAMrB,OAAO,CAACuI,GAAG,CAAC,CAAC,IAAI,CAACc,MAAM,CAAC3C,GAAG,EAAErF,KAAK,CAAC,EAAE,IAAI,CAACiI,OAAO,CAAC5C,GAAG,EAAErF,KAAK,CAAC,CAAC,CAAC;IACtE,MAAM,IAAI,CAACmJ,WAAW,CAAC9D,GAAG,EAAErF,KAAK,CAAC;IAClC,OAAO,IAAI,CAAC0J,SAAS,CAACrE,GAAG,CAAC;EAC5B;EAEAsF,SAASA,CAAClM,QAAQ,EAAEC,OAAO,EAAE;IAC3B,MAAMY,MAAM,GAAGpC,EAAE,CAAC0N,iBAAiB,CAACnM,QAAQ,CAAC;IAE7C,OAAO,IAAIE,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtCS,MAAM,CAACuE,EAAE,CAAC,QAAQ,EAAE,MAAM;QACxBjF,OAAO,CAAC,CAAC;MACX,CAAC,CAAC;MACFU,MAAM,CAACuE,EAAE,CAAC,OAAO,EAAE9E,KAAK,IAAI;QAC1BF,MAAM,CAACE,KAAK,CAAC;MACf,CAAC,CAAC;MAEF,IAAI,CAAC4G,KAAK,CAACrG,MAAM,EAAEZ,OAAO,CAAC,CAACmM,IAAI,CAAC,MAAM;QACrCvL,MAAM,CAAC+G,GAAG,CAAC,CAAC;MACd,CAAC,CAAC,CAACyE,KAAK,CAACC,GAAG,IAAE;QACZlM,MAAM,CAACkM,GAAG,CAAC;MACb,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA,MAAMC,WAAWA,CAACtM,OAAO,EAAE;IACzB,MAAMY,MAAM,GAAG,IAAI/B,SAAS,CAAC,CAAC;IAC9B,MAAM,IAAI,CAACoI,KAAK,CAACrG,MAAM,EAAEZ,OAAO,CAAC;IACjC,OAAOY,MAAM,CAACE,IAAI,CAAC,CAAC;EACtB;AACF;AAEAP,IAAI,CAACqJ,OAAO,GAAGnL,OAAO,CAAC,YAAY,CAAC;AAEpC8N,MAAM,CAACC,OAAO,GAAGjM,IAAI"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- /* eslint-disable */
4
- module.exports = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>';
5
- //# sourceMappingURL=theme1.js.map