@zergai/ztc 0.2.5-dev.36050816660 → 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,17 +1,18 @@
1
- "use strict";
2
-
3
1
  const utils = require('../../../utils/utils');
4
2
  const BaseXform = require('../base-xform');
3
+
5
4
  class ColXform extends BaseXform {
6
5
  get tag() {
7
6
  return 'col';
8
7
  }
8
+
9
9
  prepare(model, options) {
10
10
  const styleId = options.styles.addStyleModel(model.style || {});
11
11
  if (styleId) {
12
12
  model.styleId = styleId;
13
13
  }
14
14
  }
15
+
15
16
  render(xmlStream, model) {
16
17
  xmlStream.openNode('col');
17
18
  xmlStream.addAttribute('min', model.min);
@@ -37,13 +38,17 @@ class ColXform extends BaseXform {
37
38
  xmlStream.addAttribute('customWidth', '1');
38
39
  xmlStream.closeNode();
39
40
  }
41
+
40
42
  parseOpen(node) {
41
43
  if (node.name === 'col') {
42
- const model = this.model = {
44
+ const model = (this.model = {
43
45
  min: parseInt(node.attributes.min || '0', 10),
44
46
  max: parseInt(node.attributes.max || '0', 10),
45
- width: node.attributes.width === undefined ? undefined : parseFloat(node.attributes.width || '0')
46
- };
47
+ width:
48
+ node.attributes.width === undefined
49
+ ? undefined
50
+ : parseFloat(node.attributes.width || '0'),
51
+ });
47
52
  if (node.attributes.style) {
48
53
  model.styleId = parseInt(node.attributes.style, 10);
49
54
  }
@@ -63,10 +68,13 @@ class ColXform extends BaseXform {
63
68
  }
64
69
  return false;
65
70
  }
71
+
66
72
  parseText() {}
73
+
67
74
  parseClose() {
68
75
  return false;
69
76
  }
77
+
70
78
  reconcile(model, options) {
71
79
  // reconcile column styles
72
80
  if (model.styleId) {
@@ -74,5 +82,5 @@ class ColXform extends BaseXform {
74
82
  }
75
83
  }
76
84
  }
85
+
77
86
  module.exports = ColXform;
78
- //# sourceMappingURL=col-xform.js.map
@@ -1,10 +1,9 @@
1
- "use strict";
2
-
3
1
  const _ = require('../../../utils/under-dash');
4
2
  const utils = require('../../../utils/utils');
5
3
  const colCache = require('../../../utils/col-cache');
6
4
  const BaseXform = require('../base-xform');
7
5
  const Range = require('../../../doc/range');
6
+
8
7
  function assign(definedName, attributes, name, defaultValue) {
9
8
  const value = attributes[name];
10
9
  if (value !== undefined) {
@@ -13,6 +12,7 @@ function assign(definedName, attributes, name, defaultValue) {
13
12
  definedName[name] = defaultValue;
14
13
  }
15
14
  }
15
+
16
16
  function assignBool(definedName, attributes, name, defaultValue) {
17
17
  const value = attributes[name];
18
18
  if (value !== undefined) {
@@ -21,13 +21,14 @@ function assignBool(definedName, attributes, name, defaultValue) {
21
21
  definedName[name] = defaultValue;
22
22
  }
23
23
  }
24
+
24
25
  function optimiseDataValidations(model) {
25
26
  // Squeeze alike data validations together into rectangular ranges
26
27
  // to reduce file size and speed up Excel load time
27
28
  const dvList = _.map(model, (dataValidation, address) => ({
28
29
  address,
29
30
  dataValidation,
30
- marked: false
31
+ marked: false,
31
32
  })).sort((a, b) => _.strcmp(a.address, b.address));
32
33
  const dvMap = _.keyBy(dvList, 'address');
33
34
  const matchCol = (addr, height, col) => {
@@ -39,69 +40,75 @@ function optimiseDataValidations(model) {
39
40
  }
40
41
  return true;
41
42
  };
42
- return dvList.map(dv => {
43
- if (!dv.marked) {
44
- const addr = colCache.decodeEx(dv.address);
45
- if (addr.dimensions) {
46
- dvMap[addr.dimensions].marked = true;
47
- return {
48
- ...dv.dataValidation,
49
- sqref: dv.address
50
- };
51
- }
43
+ return dvList
44
+ .map(dv => {
45
+ if (!dv.marked) {
46
+ const addr = colCache.decodeEx(dv.address);
47
+ if (addr.dimensions) {
48
+ dvMap[addr.dimensions].marked = true;
49
+ return {
50
+ ...dv.dataValidation,
51
+ sqref: dv.address,
52
+ };
53
+ }
52
54
 
53
- // iterate downwards - finding matching cells
54
- let height = 1;
55
- let otherAddress = colCache.encodeAddress(addr.row + height, addr.col);
56
- while (model[otherAddress] && _.isEqual(dv.dataValidation, model[otherAddress])) {
57
- height++;
58
- otherAddress = colCache.encodeAddress(addr.row + height, addr.col);
59
- }
55
+ // iterate downwards - finding matching cells
56
+ let height = 1;
57
+ let otherAddress = colCache.encodeAddress(addr.row + height, addr.col);
58
+ while (model[otherAddress] && _.isEqual(dv.dataValidation, model[otherAddress])) {
59
+ height++;
60
+ otherAddress = colCache.encodeAddress(addr.row + height, addr.col);
61
+ }
60
62
 
61
- // iterate rightwards...
63
+ // iterate rightwards...
62
64
 
63
- let width = 1;
64
- while (matchCol(addr, height, addr.col + width)) {
65
- width++;
66
- }
65
+ let width = 1;
66
+ while (matchCol(addr, height, addr.col + width)) {
67
+ width++;
68
+ }
67
69
 
68
- // mark all included addresses
69
- for (let i = 0; i < height; i++) {
70
- for (let j = 0; j < width; j++) {
71
- otherAddress = colCache.encodeAddress(addr.row + i, addr.col + j);
72
- dvMap[otherAddress].marked = true;
70
+ // mark all included addresses
71
+ for (let i = 0; i < height; i++) {
72
+ for (let j = 0; j < width; j++) {
73
+ otherAddress = colCache.encodeAddress(addr.row + i, addr.col + j);
74
+ dvMap[otherAddress].marked = true;
75
+ }
76
+ }
77
+
78
+ if (height > 1 || width > 1) {
79
+ const bottom = addr.row + (height - 1);
80
+ const right = addr.col + (width - 1);
81
+ return {
82
+ ...dv.dataValidation,
83
+ sqref: `${dv.address}:${colCache.encodeAddress(bottom, right)}`,
84
+ };
73
85
  }
74
- }
75
- if (height > 1 || width > 1) {
76
- const bottom = addr.row + (height - 1);
77
- const right = addr.col + (width - 1);
78
86
  return {
79
87
  ...dv.dataValidation,
80
- sqref: `${dv.address}:${colCache.encodeAddress(bottom, right)}`
88
+ sqref: dv.address,
81
89
  };
82
90
  }
83
- return {
84
- ...dv.dataValidation,
85
- sqref: dv.address
86
- };
87
- }
88
- return null;
89
- }).filter(Boolean);
91
+ return null;
92
+ })
93
+ .filter(Boolean);
90
94
  }
95
+
91
96
  class DataValidationsXform extends BaseXform {
92
97
  get tag() {
93
98
  return 'dataValidations';
94
99
  }
100
+
95
101
  render(xmlStream, model) {
96
102
  const optimizedModel = optimiseDataValidations(model);
97
103
  if (optimizedModel.length) {
98
- xmlStream.openNode('dataValidations', {
99
- count: optimizedModel.length
100
- });
104
+ xmlStream.openNode('dataValidations', {count: optimizedModel.length});
105
+
101
106
  optimizedModel.forEach(value => {
102
107
  xmlStream.openNode('dataValidation');
108
+
103
109
  if (value.type !== 'any') {
104
110
  xmlStream.addAttribute('type', value.type);
111
+
105
112
  if (value.operator && value.type !== 'list' && value.operator !== 'between') {
106
113
  xmlStream.addAttribute('operator', value.operator);
107
114
  }
@@ -145,103 +152,106 @@ class DataValidationsXform extends BaseXform {
145
152
  xmlStream.closeNode();
146
153
  }
147
154
  }
155
+
148
156
  parseOpen(node) {
149
157
  switch (node.name) {
150
158
  case 'dataValidations':
151
159
  this.model = {};
152
160
  return true;
153
- case 'dataValidation':
154
- {
155
- this._address = node.attributes.sqref;
156
- const dataValidation = {
157
- type: node.attributes.type || 'any',
158
- formulae: []
159
- };
160
- if (node.attributes.type) {
161
- assignBool(dataValidation, node.attributes, 'allowBlank');
162
- }
163
- assignBool(dataValidation, node.attributes, 'showInputMessage');
164
- assignBool(dataValidation, node.attributes, 'showErrorMessage');
165
- switch (dataValidation.type) {
166
- case 'any':
167
- case 'list':
168
- case 'custom':
169
- break;
170
- default:
171
- assign(dataValidation, node.attributes, 'operator', 'between');
172
- break;
173
- }
174
- assign(dataValidation, node.attributes, 'promptTitle');
175
- assign(dataValidation, node.attributes, 'prompt');
176
- assign(dataValidation, node.attributes, 'errorStyle');
177
- assign(dataValidation, node.attributes, 'errorTitle');
178
- assign(dataValidation, node.attributes, 'error');
179
- this._dataValidation = dataValidation;
180
- return true;
161
+
162
+ case 'dataValidation': {
163
+ this._address = node.attributes.sqref;
164
+ const dataValidation = {type: node.attributes.type || 'any', formulae: []};
165
+
166
+ if (node.attributes.type) {
167
+ assignBool(dataValidation, node.attributes, 'allowBlank');
181
168
  }
169
+ assignBool(dataValidation, node.attributes, 'showInputMessage');
170
+ assignBool(dataValidation, node.attributes, 'showErrorMessage');
171
+
172
+ switch (dataValidation.type) {
173
+ case 'any':
174
+ case 'list':
175
+ case 'custom':
176
+ break;
177
+ default:
178
+ assign(dataValidation, node.attributes, 'operator', 'between');
179
+ break;
180
+ }
181
+ assign(dataValidation, node.attributes, 'promptTitle');
182
+ assign(dataValidation, node.attributes, 'prompt');
183
+ assign(dataValidation, node.attributes, 'errorStyle');
184
+ assign(dataValidation, node.attributes, 'errorTitle');
185
+ assign(dataValidation, node.attributes, 'error');
186
+
187
+ this._dataValidation = dataValidation;
188
+ return true;
189
+ }
190
+
182
191
  case 'formula1':
183
192
  case 'formula2':
184
193
  this._formula = [];
185
194
  return true;
195
+
186
196
  default:
187
197
  return false;
188
198
  }
189
199
  }
200
+
190
201
  parseText(text) {
191
202
  if (this._formula) {
192
203
  this._formula.push(text);
193
204
  }
194
205
  }
206
+
195
207
  parseClose(name) {
196
208
  switch (name) {
197
209
  case 'dataValidations':
198
210
  return false;
199
- case 'dataValidation':
200
- {
201
- if (!this._dataValidation.formulae || !this._dataValidation.formulae.length) {
202
- delete this._dataValidation.formulae;
203
- delete this._dataValidation.operator;
204
- }
205
- // The four known cases: 1. E4:L9 N4:U9 2.E4 L9 3. N4:U9 4. E4
206
- const list = this._address.split(/\s+/g) || [];
207
- list.forEach(addr => {
208
- if (addr.includes(':')) {
209
- const range = new Range(addr);
210
- range.forEachAddress(address => {
211
- this.model[address] = this._dataValidation;
212
- });
213
- } else {
214
- this.model[addr] = this._dataValidation;
215
- }
216
- });
217
- return true;
211
+ case 'dataValidation': {
212
+ if (!this._dataValidation.formulae || !this._dataValidation.formulae.length) {
213
+ delete this._dataValidation.formulae;
214
+ delete this._dataValidation.operator;
218
215
  }
219
- case 'formula1':
220
- case 'formula2':
221
- {
222
- let formula = this._formula.join('');
223
- switch (this._dataValidation.type) {
224
- case 'whole':
225
- case 'textLength':
226
- formula = parseInt(formula, 10);
227
- break;
228
- case 'decimal':
229
- formula = parseFloat(formula);
230
- break;
231
- case 'date':
232
- formula = utils.excelToDate(parseFloat(formula));
233
- break;
234
- default:
235
- break;
216
+ // The four known cases: 1. E4:L9 N4:U9 2.E4 L9 3. N4:U9 4. E4
217
+ const list = this._address.split(/\s+/g) || [];
218
+ list.forEach(addr => {
219
+ if (addr.includes(':')) {
220
+ const range = new Range(addr);
221
+ range.forEachAddress(address => {
222
+ this.model[address] = this._dataValidation;
223
+ });
224
+ } else {
225
+ this.model[addr] = this._dataValidation;
236
226
  }
237
- this._dataValidation.formulae.push(formula);
238
- this._formula = undefined;
239
- return true;
227
+ });
228
+ return true;
229
+ }
230
+ case 'formula1':
231
+ case 'formula2': {
232
+ let formula = this._formula.join('');
233
+ switch (this._dataValidation.type) {
234
+ case 'whole':
235
+ case 'textLength':
236
+ formula = parseInt(formula, 10);
237
+ break;
238
+ case 'decimal':
239
+ formula = parseFloat(formula);
240
+ break;
241
+ case 'date':
242
+ formula = utils.excelToDate(parseFloat(formula));
243
+ break;
244
+ default:
245
+ break;
240
246
  }
247
+ this._dataValidation.formulae.push(formula);
248
+ this._formula = undefined;
249
+ return true;
250
+ }
241
251
  default:
242
252
  return true;
243
253
  }
244
254
  }
245
255
  }
256
+
246
257
  module.exports = DataValidationsXform;
247
- //# sourceMappingURL=data-validations-xform.js.map
@@ -1,17 +1,16 @@
1
- "use strict";
2
-
3
1
  const BaseXform = require('../base-xform');
2
+
4
3
  class DimensionXform extends BaseXform {
5
4
  get tag() {
6
5
  return 'dimension';
7
6
  }
7
+
8
8
  render(xmlStream, model) {
9
9
  if (model) {
10
- xmlStream.leafNode('dimension', {
11
- ref: model
12
- });
10
+ xmlStream.leafNode('dimension', {ref: model});
13
11
  }
14
12
  }
13
+
15
14
  parseOpen(node) {
16
15
  if (node.name === 'dimension') {
17
16
  this.model = node.attributes.ref;
@@ -19,10 +18,12 @@ class DimensionXform extends BaseXform {
19
18
  }
20
19
  return false;
21
20
  }
21
+
22
22
  parseText() {}
23
+
23
24
  parseClose() {
24
25
  return false;
25
26
  }
26
27
  }
28
+
27
29
  module.exports = DimensionXform;
28
- //# sourceMappingURL=dimension-xform.js.map
@@ -1,32 +1,33 @@
1
- "use strict";
2
-
3
1
  const BaseXform = require('../base-xform');
2
+
4
3
  class DrawingXform extends BaseXform {
5
4
  get tag() {
6
5
  return 'drawing';
7
6
  }
7
+
8
8
  render(xmlStream, model) {
9
9
  if (model) {
10
- xmlStream.leafNode(this.tag, {
11
- 'r:id': model.rId
12
- });
10
+ xmlStream.leafNode(this.tag, {'r:id': model.rId});
13
11
  }
14
12
  }
13
+
15
14
  parseOpen(node) {
16
15
  switch (node.name) {
17
16
  case this.tag:
18
17
  this.model = {
19
- rId: node.attributes['r:id']
18
+ rId: node.attributes['r:id'],
20
19
  };
21
20
  return true;
22
21
  default:
23
22
  return false;
24
23
  }
25
24
  }
25
+
26
26
  parseText() {}
27
+
27
28
  parseClose() {
28
29
  return false;
29
30
  }
30
31
  }
32
+
31
33
  module.exports = DrawingXform;
32
- //# sourceMappingURL=drawing-xform.js.map
@@ -1,69 +1,86 @@
1
- "use strict";
2
-
3
1
  /* eslint-disable max-classes-per-file */
4
2
  const CompositeXform = require('../composite-xform');
3
+
5
4
  const ConditionalFormattingsExt = require('./cf-ext/conditional-formattings-ext-xform');
5
+
6
6
  class ExtXform extends CompositeXform {
7
7
  constructor() {
8
8
  super();
9
9
  this.map = {
10
- 'x14:conditionalFormattings': this.conditionalFormattings = new ConditionalFormattingsExt()
10
+ 'x14:conditionalFormattings': (this.conditionalFormattings = new ConditionalFormattingsExt()),
11
11
  };
12
12
  }
13
+
13
14
  get tag() {
14
15
  return 'ext';
15
16
  }
17
+
16
18
  hasContent(model) {
17
19
  return this.conditionalFormattings.hasContent(model.conditionalFormattings);
18
20
  }
21
+
19
22
  prepare(model, options) {
20
23
  this.conditionalFormattings.prepare(model.conditionalFormattings, options);
21
24
  }
25
+
22
26
  render(xmlStream, model) {
23
27
  xmlStream.openNode('ext', {
24
28
  uri: '{78C0D931-6437-407d-A8EE-F0AAD7539E65}',
25
- 'xmlns:x14': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/main'
29
+ 'xmlns:x14': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/main',
26
30
  });
31
+
27
32
  this.conditionalFormattings.render(xmlStream, model.conditionalFormattings);
33
+
28
34
  xmlStream.closeNode();
29
35
  }
36
+
30
37
  createNewModel() {
31
38
  return {};
32
39
  }
40
+
33
41
  onParserClose(name, parser) {
34
42
  this.model[name] = parser.model;
35
43
  }
36
44
  }
45
+
37
46
  class ExtLstXform extends CompositeXform {
38
47
  constructor() {
39
48
  super();
49
+
40
50
  this.map = {
41
- ext: this.ext = new ExtXform()
51
+ ext: (this.ext = new ExtXform()),
42
52
  };
43
53
  }
54
+
44
55
  get tag() {
45
56
  return 'extLst';
46
57
  }
58
+
47
59
  prepare(model, options) {
48
60
  this.ext.prepare(model, options);
49
61
  }
62
+
50
63
  hasContent(model) {
51
64
  return this.ext.hasContent(model);
52
65
  }
66
+
53
67
  render(xmlStream, model) {
54
68
  if (!this.hasContent(model)) {
55
69
  return;
56
70
  }
71
+
57
72
  xmlStream.openNode('extLst');
58
73
  this.ext.render(xmlStream, model);
59
74
  xmlStream.closeNode();
60
75
  }
76
+
61
77
  createNewModel() {
62
78
  return {};
63
79
  }
80
+
64
81
  onParserClose(name, parser) {
65
82
  Object.assign(this.model, parser.model);
66
83
  }
67
84
  }
85
+
68
86
  module.exports = ExtLstXform;
69
- //# sourceMappingURL=ext-lst-xform.js.map
@@ -1,14 +1,16 @@
1
- "use strict";
2
-
3
1
  const BaseXform = require('../base-xform');
2
+
4
3
  class HeaderFooterXform extends BaseXform {
5
4
  get tag() {
6
5
  return 'headerFooter';
7
6
  }
7
+
8
8
  render(xmlStream, model) {
9
9
  if (model) {
10
10
  xmlStream.addRollback();
11
+
11
12
  let createTag = false;
13
+
12
14
  xmlStream.openNode('headerFooter');
13
15
  if (model.differentFirst) {
14
16
  xmlStream.addAttribute('differentFirst', '1');
@@ -42,6 +44,7 @@ class HeaderFooterXform extends BaseXform {
42
44
  xmlStream.leafNode('firstFooter', null, model.firstFooter);
43
45
  createTag = true;
44
46
  }
47
+
45
48
  if (createTag) {
46
49
  xmlStream.closeNode();
47
50
  xmlStream.commit();
@@ -50,6 +53,7 @@ class HeaderFooterXform extends BaseXform {
50
53
  }
51
54
  }
52
55
  }
56
+
53
57
  parseOpen(node) {
54
58
  switch (node.name) {
55
59
  case 'headerFooter':
@@ -61,52 +65,67 @@ class HeaderFooterXform extends BaseXform {
61
65
  this.model.differentOddEven = parseInt(node.attributes.differentOddEven, 0) === 1;
62
66
  }
63
67
  return true;
68
+
64
69
  case 'oddHeader':
65
70
  this.currentNode = 'oddHeader';
66
71
  return true;
72
+
67
73
  case 'oddFooter':
68
74
  this.currentNode = 'oddFooter';
69
75
  return true;
76
+
70
77
  case 'evenHeader':
71
78
  this.currentNode = 'evenHeader';
72
79
  return true;
80
+
73
81
  case 'evenFooter':
74
82
  this.currentNode = 'evenFooter';
75
83
  return true;
84
+
76
85
  case 'firstHeader':
77
86
  this.currentNode = 'firstHeader';
78
87
  return true;
88
+
79
89
  case 'firstFooter':
80
90
  this.currentNode = 'firstFooter';
81
91
  return true;
92
+
82
93
  default:
83
94
  return false;
84
95
  }
85
96
  }
97
+
86
98
  parseText(text) {
87
99
  switch (this.currentNode) {
88
100
  case 'oddHeader':
89
101
  this.model.oddHeader = text;
90
102
  break;
103
+
91
104
  case 'oddFooter':
92
105
  this.model.oddFooter = text;
93
106
  break;
107
+
94
108
  case 'evenHeader':
95
109
  this.model.evenHeader = text;
96
110
  break;
111
+
97
112
  case 'evenFooter':
98
113
  this.model.evenFooter = text;
99
114
  break;
115
+
100
116
  case 'firstHeader':
101
117
  this.model.firstHeader = text;
102
118
  break;
119
+
103
120
  case 'firstFooter':
104
121
  this.model.firstFooter = text;
105
122
  break;
123
+
106
124
  default:
107
125
  break;
108
126
  }
109
127
  }
128
+
110
129
  parseClose() {
111
130
  switch (this.currentNode) {
112
131
  case 'oddHeader':
@@ -117,10 +136,11 @@ class HeaderFooterXform extends BaseXform {
117
136
  case 'firstFooter':
118
137
  this.currentNode = undefined;
119
138
  return true;
139
+
120
140
  default:
121
141
  return false;
122
142
  }
123
143
  }
124
144
  }
145
+
125
146
  module.exports = HeaderFooterXform;
126
- //# sourceMappingURL=header-footer-xform.js.map