clearotron 0.2.1 → 0.2.3

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 (676) hide show
  1. package/.env.example +82 -1
  2. package/.nvmrc +1 -1
  3. package/CONTRIBUTING.md +3 -3
  4. package/INSTALL.md +64 -58
  5. package/README.md +11 -16
  6. package/THIRD-PARTY-NOTICES.md +1 -1
  7. package/bin/brandowner.mjs +1 -1
  8. package/bin/clearotron.mjs +26 -4
  9. package/bin/connect.mjs +2 -2
  10. package/bin/example.mjs +31 -11
  11. package/bin/grant.mjs +3 -3
  12. package/bin/key.mjs +1 -1
  13. package/bin/onboard.mjs +252 -136
  14. package/bin/start.mjs +176 -33
  15. package/bin/stop.mjs +65 -3
  16. package/bin/update.mjs +7 -7
  17. package/bin/uspto-sync.mjs +1 -1
  18. package/build-info.json +2 -2
  19. package/demo/full-country-search/run/_driver/framework.json +1 -1
  20. package/demo/global-preliminary-search/run/_driver/framework.json +1 -1
  21. package/demo/knockout-search/run/_driver/framework.json +1 -1
  22. package/demo/multi-country-focus-search/run/_driver/framework.json +1 -1
  23. package/docs/DELIVERY.md +6 -2
  24. package/docs/E2E.md +5 -5
  25. package/docs/PORTAL.md +2 -2
  26. package/docs/README.md +5 -4
  27. package/docs/SECURITY.md +17 -0
  28. package/docs/architecture/01-product-overview.md +2 -2
  29. package/docs/architecture/02-architecture.md +2 -2
  30. package/docs/architecture/04-configuration-reference.md +8 -3
  31. package/docs/architecture/05-config-governance.md +52 -5
  32. package/docs/architecture/05-customer-profiles.md +2 -2
  33. package/docs/architecture/06-operations-runbook.md +13 -1
  34. package/docs/architecture/09-security-and-data.md +1 -1
  35. package/docs/configuration.md +4 -3
  36. package/docs/decisions/0004-documentation-structure.md +1 -1
  37. package/driver/CHANGELOG.md +121 -1
  38. package/driver/README.md +2 -2
  39. package/driver/ask-ledger.mjs +3 -3
  40. package/driver/authority-trees.mjs +1 -1
  41. package/driver/call-capture.mjs +1 -1
  42. package/driver/card-frame.mjs +1 -1
  43. package/driver/case-law-ledger.mjs +1 -1
  44. package/driver/claim-liveness.mjs +1 -1
  45. package/driver/common-law-receipts.mjs +2 -2
  46. package/driver/commonlaw-carry.mjs +1 -1
  47. package/driver/config-inventory.mjs +1 -1
  48. package/driver/config-staleness.mjs +1 -1
  49. package/driver/connotation-search.mjs +12 -12
  50. package/driver/contract-audit.mjs +5 -5
  51. package/driver/contract-dictation-registry.mjs +4 -4
  52. package/driver/contract-dictation.mjs +2 -2
  53. package/driver/contract-e3-backlog.mjs +6 -6
  54. package/driver/contract-vocabulary.mjs +3 -3
  55. package/driver/corrections-feedforward.mjs +1 -1
  56. package/driver/coverage-form-io.mjs +2 -2
  57. package/driver/coverage-form.mjs +4 -4
  58. package/driver/coverage-ledger.mjs +3 -3
  59. package/driver/coverage-union.mjs +1 -1
  60. package/driver/declination-call.mjs +35 -3
  61. package/driver/declination-duty.mjs +1 -1
  62. package/driver/deliver-trigger.sh +3 -3
  63. package/driver/deploy-live-run-guard.mjs +6 -2
  64. package/driver/dev-portal.mjs +3 -3
  65. package/driver/disposition-call.mjs +4 -4
  66. package/driver/disposition-tool.mjs +4 -4
  67. package/driver/disposition-union.mjs +2 -2
  68. package/driver/doc-constants.mjs +1 -1
  69. package/driver/door-gates.mjs +2 -2
  70. package/driver/doubt-selection.mjs +2 -2
  71. package/driver/drainer-identity.mjs +1 -1
  72. package/driver/driver.config.mjs +64 -12
  73. package/driver/e2e-rounds.mjs +2 -2
  74. package/driver/effort-model.mjs +2 -2
  75. package/driver/engine/anthropic-agent.mjs +24 -24
  76. package/driver/engine/auth.mjs +1 -1
  77. package/driver/engine/cli-version.mjs +103 -0
  78. package/driver/engine/common.mjs +1 -1
  79. package/driver/engine/deny-authority-write.mjs +1 -1
  80. package/driver/engine/jx-turn.mjs +1 -1
  81. package/driver/engine/mcp/clarivate-server.mjs +1 -1
  82. package/driver/engine/mcp/corsearch-server.mjs +1 -1
  83. package/driver/engine/mcp/declination-server.mjs +1 -1
  84. package/driver/engine/mcp/dispositions-server.mjs +1 -1
  85. package/driver/engine/mcp/euipo-server.mjs +1 -1
  86. package/driver/engine/mcp/fetch-server.mjs +1 -1
  87. package/driver/engine/mcp/free-tier-server.mjs +2 -2
  88. package/driver/engine/mcp/gather-config.mjs +11 -11
  89. package/driver/engine/mcp/perplexity-server.mjs +1 -1
  90. package/driver/engine/mcp/recording-server.mjs +8 -4
  91. package/driver/engine/mcp/signa-server.mjs +1 -1
  92. package/driver/engine/mcp/uspto-local-server.mjs +1 -1
  93. package/driver/engine/openai-agent.mjs +2 -2
  94. package/driver/engine-build.mjs +2 -2
  95. package/driver/enqueue-schema.mjs +10 -10
  96. package/driver/enqueue.mjs +1 -1
  97. package/driver/envelope-settle.mjs +1 -1
  98. package/driver/evidence-claim-invariant.mjs +2 -2
  99. package/driver/feedback-store.mjs +1 -1
  100. package/driver/findings-model.mjs +60 -10
  101. package/driver/flag-snapshot.mjs +20 -0
  102. package/driver/floor-duty.mjs +1 -1
  103. package/driver/form-neighbourhood.mjs +1 -1
  104. package/driver/framework.mjs +2 -2
  105. package/driver/gateway.mjs +45 -23
  106. package/driver/grounds-grammar.mjs +1 -1
  107. package/driver/hit-list.mjs +1 -1
  108. package/driver/jurisdiction-systems.mjs +1 -1
  109. package/driver/jx-lanes.mjs +1 -1
  110. package/driver/jx-units.mjs +1 -1
  111. package/driver/jx.mjs +3 -3
  112. package/driver/knockout-assess-record.mjs +5 -1
  113. package/driver/narrative-refutation-record.mjs +3 -3
  114. package/driver/numeric-setting.mjs +1 -1
  115. package/driver/owner-use-check.mjs +184 -0
  116. package/driver/package.json +4 -4
  117. package/driver/party-facts.mjs +2 -2
  118. package/driver/phase0.mjs +2 -2
  119. package/driver/pipeline-knockout.mjs +52 -4
  120. package/driver/pipeline.mjs +180 -67
  121. package/driver/placement-diff.mjs +2 -2
  122. package/driver/placement-form.mjs +4 -4
  123. package/driver/placement-union.mjs +1 -1
  124. package/driver/plain-register.mjs +120 -0
  125. package/driver/portal-access.mjs +1 -1
  126. package/driver/portal-acks.mjs +1 -1
  127. package/driver/portal-config-view.mjs +42 -3
  128. package/driver/portal-families.mjs +1 -1
  129. package/driver/portal-local-auth.mjs +1 -1
  130. package/driver/portal-report.mjs +7 -7
  131. package/driver/portal-service.mjs +41 -22
  132. package/driver/portal-upstream.mjs +2 -2
  133. package/driver/predelivery-lint.mjs +149 -11
  134. package/driver/prelim-variants-record.mjs +2 -2
  135. package/driver/profile-page.html +11 -3
  136. package/driver/profile-selection.mjs +1 -1
  137. package/driver/profile-service.mjs +6 -6
  138. package/driver/profiles/README.md +3 -3
  139. package/driver/profiles.mjs +145 -13
  140. package/driver/progress.mjs +6 -6
  141. package/driver/provider-usage.mjs +1 -1
  142. package/driver/publish/demo-marking.mjs +1 -1
  143. package/driver/publish/index.mjs +49 -8
  144. package/driver/publish/knockout.mjs +42 -14
  145. package/driver/publish/parse.mjs +4 -4
  146. package/driver/publish/publish-inputs.mjs +2 -2
  147. package/driver/publish/register-presence.mjs +1 -1
  148. package/driver/publish/render-knockout.mjs +646 -144
  149. package/driver/publish/render.mjs +2 -2
  150. package/driver/publish/report-data.mjs +13 -3
  151. package/driver/queue-watch-probe.mjs +1 -1
  152. package/driver/queue-watch-verdict.mjs +1 -1
  153. package/driver/recall-reconciliation.mjs +1 -1
  154. package/driver/recipe-service.mjs +1 -1
  155. package/driver/record-carry.mjs +5 -5
  156. package/driver/recording-agreement.mjs +3 -3
  157. package/driver/reference-score.mjs +7 -7
  158. package/driver/reference-strip-signatures.mjs +20 -0
  159. package/driver/refusal-bound.mjs +3 -3
  160. package/driver/register-availability.mjs +2 -2
  161. package/driver/register-count.mjs +1 -1
  162. package/driver/register-grant-vocabulary.mjs +2 -2
  163. package/driver/register-plan.mjs +8 -8
  164. package/driver/register-records.mjs +2 -2
  165. package/driver/registry-fidelity.mjs +3 -3
  166. package/driver/remedy-accounting.mjs +1 -1
  167. package/driver/repair-composers.mjs +2 -2
  168. package/driver/repair-digest.mjs +3 -3
  169. package/driver/repairs.mjs +6 -6
  170. package/driver/replay-archive.mjs +2 -0
  171. package/driver/report-card-record.mjs +2 -2
  172. package/driver/result-noun-fields.mjs +10 -3
  173. package/driver/run-economics.mjs +2 -2
  174. package/driver/run-integrity.mjs +1 -1
  175. package/driver/runner.mjs +22 -22
  176. package/driver/scope-rules.mjs +1 -1
  177. package/driver/search-policy.mjs +5 -5
  178. package/driver/skeptic-search.mjs +1 -1
  179. package/driver/skills/blind-frame/SKILL.md +2 -2
  180. package/driver/skills/case-law-citation/SKILL.md +2 -2
  181. package/driver/skills/knockout-assess/SKILL.md +94 -4
  182. package/driver/skills/matter-frame/SKILL.md +6 -6
  183. package/driver/skills/matter-frame/watchlist-reference.md +2 -2
  184. package/driver/skills/prelim-common-law/SKILL.md +1 -1
  185. package/driver/skills/prelim-search/SKILL.md +3 -3
  186. package/driver/skills/prelim-search/report-prose.md +82 -0
  187. package/driver/skills/prelim-search/risk-framework-demo.manifest.json +1 -1
  188. package/driver/skills/prelim-search/risk-framework-triage.manifest.json +1 -1
  189. package/driver/skills/prelim-search/risk-framework.manifest.json +1 -1
  190. package/driver/skills/prelim-search/synthesis-rules.md +1 -1
  191. package/driver/skills/prelim-search/template-formatting.md +1 -1
  192. package/driver/skills/prelim-search/templates/email/generic.md +1 -1
  193. package/driver/skills/prelim-search/worked-examples.md +1 -1
  194. package/driver/skills/prelim-variants/SKILL.md +5 -5
  195. package/driver/stage-context.mjs +1 -1
  196. package/driver/stages-knockout.mjs +55 -4
  197. package/driver/stages.mjs +101 -44
  198. package/driver/stray-artifacts.mjs +2 -2
  199. package/driver/suite-census.json +275 -65
  200. package/driver/synthesis-record.mjs +1 -1
  201. package/driver/systemd/clearotron-client-mcp.service +1 -1
  202. package/driver/systemd/clearotron-portal.service +1 -1
  203. package/driver/systemd/render-units.mjs +1 -1
  204. package/driver/tokens.mjs +1 -1
  205. package/driver/tool-calls.mjs +1 -1
  206. package/driver/turnaround-bands.mjs +1 -1
  207. package/driver/unit-file-drift.mjs +1 -1
  208. package/driver/unit-inventory.mjs +297 -80
  209. package/driver/unit-state-verdict.mjs +20 -12
  210. package/driver/verify-knockout.mjs +10 -2
  211. package/driver/verify.mjs +13 -13
  212. package/driver/whatif-memo-run.mjs +72 -9
  213. package/driver/whatif-memo.mjs +19 -1
  214. package/driver/whatif-queue.mjs +1 -1
  215. package/driver/whatif-worker.mjs +1 -1
  216. package/examples/README.md +2 -2
  217. package/examples/grants.example.json +6 -7
  218. package/mcp-server/CHANGELOG.md +6 -0
  219. package/mcp-server/README.md +3 -3
  220. package/mcp-server/http-server.mjs +44 -1
  221. package/mcp-server/key-socket.mjs +184 -0
  222. package/mcp-server/lib/audit-view.mjs +69 -2
  223. package/mcp-server/lib/brief.mjs +15 -0
  224. package/mcp-server/lib/driver.mjs +7 -1
  225. package/mcp-server/lib/events.mjs +1 -1
  226. package/mcp-server/lib/http-handler.mjs +1 -1
  227. package/mcp-server/lib/knockout.mjs +435 -0
  228. package/mcp-server/lib/ops.mjs +4 -4
  229. package/mcp-server/lib/options.mjs +1 -1
  230. package/mcp-server/lib/plan.mjs +1 -1
  231. package/mcp-server/lib/runs.mjs +1 -1
  232. package/mcp-server/lib/scrub.mjs +2 -2
  233. package/mcp-server/lib/whatif.mjs +5 -5
  234. package/mcp-server/mint-token.mjs +1 -1
  235. package/mcp-server/package.json +2 -2
  236. package/mcp-server/packs/ops/EXAMPLES.md +2 -2
  237. package/mcp-server/server.mjs +77 -12
  238. package/package.json +30 -12
  239. package/portal-ui/dist/assets/{index-Ct3iQtZ2.css → index-1ziUJX1E.css} +43 -2
  240. package/portal-ui/dist/assets/{index-BUGgiYtF.js → index-CEYvXdqH.js} +226 -49
  241. package/portal-ui/dist/index.html +2 -2
  242. package/portal-ui/package.json +1 -1
  243. package/providers/_shared/enumerate.mjs +1 -1
  244. package/providers/_shared/ledger-path.mjs +3 -3
  245. package/providers/_shared/ledger.mjs +1 -1
  246. package/providers/_shared/result-shape.mjs +3 -3
  247. package/providers/_shared/term-shape.mjs +2 -2
  248. package/providers/corsearch/src/core.js +1 -1
  249. package/providers/jx-subclass/BUILDING.md +1 -1
  250. package/providers/oauth-mcp-bridge/CHANGELOG.md +6 -0
  251. package/providers/oauth-mcp-bridge/package.json +1 -1
  252. package/providers/oauth-mcp-bridge/stdin-guard.mjs +2 -2
  253. package/providers/uspto-local/src/index-store.js +2 -2
  254. package/scripts/README.md +1 -1
  255. package/scripts/added-reference-check.mjs +29 -1
  256. package/scripts/authority-boundary-probe.mjs +1 -1
  257. package/scripts/backfill-started-at.mjs +1 -1
  258. package/scripts/citation-line-check.mjs +124 -5
  259. package/scripts/compare.mjs +2 -2
  260. package/scripts/contract-dictation-scan.mjs +2 -2
  261. package/scripts/dead-names.mjs +1 -1
  262. package/scripts/drain-preflight.mjs +5 -5
  263. package/scripts/e2e-unread-terminals.mjs +1 -1
  264. package/scripts/e2e.mjs +8 -8
  265. package/scripts/env-audit.mjs +7 -7
  266. package/scripts/env-classify.mjs +206 -18
  267. package/scripts/freeze-example-run.mjs +3 -3
  268. package/scripts/head-arrived-gated.mjs +1 -1
  269. package/scripts/headless-page.mjs +51 -2
  270. package/scripts/live-surface-check.mjs +129 -19
  271. package/scripts/main-health.mjs +1 -1
  272. package/scripts/merge-presence-check.mjs +3 -3
  273. package/scripts/mint-suite-census.mjs +6 -6
  274. package/scripts/nightly-notice.mjs +1 -3
  275. package/scripts/preinstall-node-check.mjs +24 -0
  276. package/scripts/reconcile-runs.mjs +1 -1
  277. package/scripts/release-await-cut.mjs +6 -4
  278. package/scripts/release-version-pr-checks.mjs +1 -1
  279. package/scripts/release-version.mjs +2 -2
  280. package/scripts/render-check.mjs +66 -7
  281. package/scripts/report-frame-check.mjs +1 -1
  282. package/scripts/report-screenshot.mjs +1 -1
  283. package/scripts/revisit-render-check.mjs +1 -1
  284. package/scripts/score.mjs +4 -4
  285. package/scripts/strip-tracker-citations.mjs +139 -0
  286. package/scripts/test-run.mjs +19 -3
  287. package/scripts/third-party-notices.mjs +3 -3
  288. package/scripts/travelling-predicates.mjs +3 -3
  289. package/scripts/unexecuted-asserts.mjs +2 -2
  290. package/scripts/verify-publishable.mjs +2 -2
  291. package/scripts/write-up-form-census.mjs +1 -1
  292. package/shared/access-audience.mjs +1 -1
  293. package/shared/anon-overlay.mjs +3 -3
  294. package/shared/brand.mjs +13 -13
  295. package/shared/citation-scan.mjs +1 -1
  296. package/shared/client-door.mjs +7 -7
  297. package/shared/customer-store.mjs +1 -1
  298. package/shared/driver-dir.mjs +1 -1
  299. package/shared/env-aliases.mjs +0 -48
  300. package/shared/env-local.mjs +1 -1
  301. package/shared/identifier-scan.mjs +3 -3
  302. package/shared/invocation.mjs +29 -1
  303. package/shared/names-in-force.mjs +4 -0
  304. package/shared/node-floor.mjs +97 -0
  305. package/shared/product-owned-names.mjs +1 -1
  306. package/shared/register-selection.mjs +1 -1
  307. package/shared/scope.mjs +5 -5
  308. package/shared/server-units.mjs +4 -4
  309. package/shared/staff-domain.mjs +154 -0
  310. package/shared/store-in-repo.mjs +25 -4
  311. package/shared/suite-census.mjs +4 -4
  312. package/shared/tty-style.mjs +1 -1
  313. package/shared/uspto-index-size.mjs +1 -1
  314. package/shared/vacuous-pass.mjs +1 -1
  315. package/skills/clearotron-account/SKILL.md +42 -13
  316. package/skills/clearotron-ops/SKILL.md +1 -1
  317. package/driver/recipes/README.md +0 -49
  318. package/driver/skills/prelim-search/risk-framework-aurora.manifest.json +0 -19
  319. package/driver/skills/prelim-search/risk-framework-aurora.md +0 -77
  320. package/driver/skills/prelim-search/risk-framework-zephyr.manifest.json +0 -14
  321. package/driver/skills/prelim-search/risk-framework-zephyr.md +0 -33
  322. package/driver/skills/prelim-search/worked-examples-aurora.md +0 -10
  323. package/driver/skills/prelim-search/worked-examples-zephyr.md +0 -10
  324. package/driver/systemd/prelim-driver.path +0 -69
  325. package/driver/systemd/prelim-driver.service +0 -86
  326. package/driver/systemd/prelim-driver.timer +0 -14
  327. package/driver/systemd/prelim-outbox.path +0 -27
  328. package/driver/systemd/prelim-outbox.service +0 -37
  329. package/driver/systemd/prelim-outbox.timer +0 -21
  330. package/node_modules/exceljs/README_zh.md +0 -2878
  331. package/node_modules/exceljs/dist/LICENSE +0 -22
  332. package/node_modules/exceljs/dist/es5/csv/csv.js +0 -182
  333. package/node_modules/exceljs/dist/es5/csv/csv.js.map +0 -1
  334. package/node_modules/exceljs/dist/es5/csv/line-buffer.js +0 -68
  335. package/node_modules/exceljs/dist/es5/csv/line-buffer.js.map +0 -1
  336. package/node_modules/exceljs/dist/es5/csv/stream-converter.js +0 -110
  337. package/node_modules/exceljs/dist/es5/csv/stream-converter.js.map +0 -1
  338. package/node_modules/exceljs/dist/es5/doc/anchor.js +0 -73
  339. package/node_modules/exceljs/dist/es5/doc/anchor.js.map +0 -1
  340. package/node_modules/exceljs/dist/es5/doc/cell.js +0 -961
  341. package/node_modules/exceljs/dist/es5/doc/cell.js.map +0 -1
  342. package/node_modules/exceljs/dist/es5/doc/column.js +0 -274
  343. package/node_modules/exceljs/dist/es5/doc/column.js.map +0 -1
  344. package/node_modules/exceljs/dist/es5/doc/data-validations.js +0 -18
  345. package/node_modules/exceljs/dist/es5/doc/data-validations.js.map +0 -1
  346. package/node_modules/exceljs/dist/es5/doc/defined-names.js +0 -173
  347. package/node_modules/exceljs/dist/es5/doc/defined-names.js.map +0 -1
  348. package/node_modules/exceljs/dist/es5/doc/enums.js +0 -49
  349. package/node_modules/exceljs/dist/es5/doc/enums.js.map +0 -1
  350. package/node_modules/exceljs/dist/es5/doc/image.js +0 -69
  351. package/node_modules/exceljs/dist/es5/doc/image.js.map +0 -1
  352. package/node_modules/exceljs/dist/es5/doc/modelcontainer.js +0 -16
  353. package/node_modules/exceljs/dist/es5/doc/modelcontainer.js.map +0 -1
  354. package/node_modules/exceljs/dist/es5/doc/note.js +0 -64
  355. package/node_modules/exceljs/dist/es5/doc/note.js.map +0 -1
  356. package/node_modules/exceljs/dist/es5/doc/range.js +0 -229
  357. package/node_modules/exceljs/dist/es5/doc/range.js.map +0 -1
  358. package/node_modules/exceljs/dist/es5/doc/row.js +0 -382
  359. package/node_modules/exceljs/dist/es5/doc/row.js.map +0 -1
  360. package/node_modules/exceljs/dist/es5/doc/table.js +0 -443
  361. package/node_modules/exceljs/dist/es5/doc/table.js.map +0 -1
  362. package/node_modules/exceljs/dist/es5/doc/workbook.js +0 -202
  363. package/node_modules/exceljs/dist/es5/doc/workbook.js.map +0 -1
  364. package/node_modules/exceljs/dist/es5/doc/worksheet.js +0 -900
  365. package/node_modules/exceljs/dist/es5/doc/worksheet.js.map +0 -1
  366. package/node_modules/exceljs/dist/es5/exceljs.bare.js +0 -14
  367. package/node_modules/exceljs/dist/es5/exceljs.bare.js.map +0 -1
  368. package/node_modules/exceljs/dist/es5/exceljs.browser.js +0 -36
  369. package/node_modules/exceljs/dist/es5/exceljs.browser.js.map +0 -1
  370. package/node_modules/exceljs/dist/es5/exceljs.nodejs.js +0 -15
  371. package/node_modules/exceljs/dist/es5/exceljs.nodejs.js.map +0 -1
  372. package/node_modules/exceljs/dist/es5/index.js +0 -15
  373. package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js +0 -90
  374. package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js.map +0 -1
  375. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js +0 -94
  376. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js.map +0 -1
  377. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js +0 -94
  378. package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js.map +0 -1
  379. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js +0 -362
  380. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js.map +0 -1
  381. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js +0 -347
  382. package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js.map +0 -1
  383. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js +0 -392
  384. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js.map +0 -1
  385. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js +0 -652
  386. package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js.map +0 -1
  387. package/node_modules/exceljs/dist/es5/utils/auto-drain.js +0 -18
  388. package/node_modules/exceljs/dist/es5/utils/auto-drain.js.map +0 -1
  389. package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js +0 -15
  390. package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js.map +0 -1
  391. package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js +0 -18
  392. package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js.map +0 -1
  393. package/node_modules/exceljs/dist/es5/utils/cell-matrix.js +0 -149
  394. package/node_modules/exceljs/dist/es5/utils/cell-matrix.js.map +0 -1
  395. package/node_modules/exceljs/dist/es5/utils/col-cache.js +0 -258
  396. package/node_modules/exceljs/dist/es5/utils/col-cache.js.map +0 -1
  397. package/node_modules/exceljs/dist/es5/utils/copy-style.js +0 -43
  398. package/node_modules/exceljs/dist/es5/utils/copy-style.js.map +0 -1
  399. package/node_modules/exceljs/dist/es5/utils/encryptor.js +0 -58
  400. package/node_modules/exceljs/dist/es5/utils/encryptor.js.map +0 -1
  401. package/node_modules/exceljs/dist/es5/utils/iterate-stream.js +0 -46
  402. package/node_modules/exceljs/dist/es5/utils/iterate-stream.js.map +0 -1
  403. package/node_modules/exceljs/dist/es5/utils/parse-sax.js +0 -47
  404. package/node_modules/exceljs/dist/es5/utils/parse-sax.js.map +0 -1
  405. package/node_modules/exceljs/dist/es5/utils/shared-formula.js +0 -42
  406. package/node_modules/exceljs/dist/es5/utils/shared-formula.js.map +0 -1
  407. package/node_modules/exceljs/dist/es5/utils/shared-strings.js +0 -32
  408. package/node_modules/exceljs/dist/es5/utils/shared-strings.js.map +0 -1
  409. package/node_modules/exceljs/dist/es5/utils/stream-base64.js +0 -66
  410. package/node_modules/exceljs/dist/es5/utils/stream-base64.js.map +0 -1
  411. package/node_modules/exceljs/dist/es5/utils/stream-buf.js +0 -343
  412. package/node_modules/exceljs/dist/es5/utils/stream-buf.js.map +0 -1
  413. package/node_modules/exceljs/dist/es5/utils/string-buf.js +0 -73
  414. package/node_modules/exceljs/dist/es5/utils/string-buf.js.map +0 -1
  415. package/node_modules/exceljs/dist/es5/utils/string-builder.js +0 -32
  416. package/node_modules/exceljs/dist/es5/utils/string-builder.js.map +0 -1
  417. package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js +0 -61
  418. package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js.map +0 -1
  419. package/node_modules/exceljs/dist/es5/utils/typed-stack.js +0 -23
  420. package/node_modules/exceljs/dist/es5/utils/typed-stack.js.map +0 -1
  421. package/node_modules/exceljs/dist/es5/utils/under-dash.js +0 -168
  422. package/node_modules/exceljs/dist/es5/utils/under-dash.js.map +0 -1
  423. package/node_modules/exceljs/dist/es5/utils/utils.js +0 -171
  424. package/node_modules/exceljs/dist/es5/utils/utils.js.map +0 -1
  425. package/node_modules/exceljs/dist/es5/utils/xml-stream.js +0 -151
  426. package/node_modules/exceljs/dist/es5/utils/xml-stream.js.map +0 -1
  427. package/node_modules/exceljs/dist/es5/utils/zip-stream.js +0 -79
  428. package/node_modules/exceljs/dist/es5/utils/zip-stream.js.map +0 -1
  429. package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js +0 -230
  430. package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js.map +0 -1
  431. package/node_modules/exceljs/dist/es5/xlsx/rel-type.js +0 -18
  432. package/node_modules/exceljs/dist/es5/xlsx/rel-type.js.map +0 -1
  433. package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js +0 -139
  434. package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js.map +0 -1
  435. package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js +0 -85
  436. package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js.map +0 -1
  437. package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js +0 -32
  438. package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js.map +0 -1
  439. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js +0 -24
  440. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js.map +0 -1
  441. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js +0 -27
  442. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js.map +0 -1
  443. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js +0 -51
  444. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js.map +0 -1
  445. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js +0 -234
  446. package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js.map +0 -1
  447. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js +0 -103
  448. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js.map +0 -1
  449. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js +0 -76
  450. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js.map +0 -1
  451. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js +0 -35
  452. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js.map +0 -1
  453. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js +0 -32
  454. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js.map +0 -1
  455. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js +0 -53
  456. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js.map +0 -1
  457. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js +0 -97
  458. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js.map +0 -1
  459. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js +0 -107
  460. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js.map +0 -1
  461. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js +0 -92
  462. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +0 -1
  463. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js +0 -61
  464. package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +0 -1
  465. package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js +0 -51
  466. package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js.map +0 -1
  467. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js +0 -30
  468. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js.map +0 -1
  469. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js +0 -27
  470. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js.map +0 -1
  471. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js +0 -93
  472. package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js.map +0 -1
  473. package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js +0 -112
  474. package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js.map +0 -1
  475. package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js +0 -158
  476. package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js.map +0 -1
  477. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js +0 -23
  478. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js.map +0 -1
  479. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js +0 -65
  480. package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js.map +0 -1
  481. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js +0 -47
  482. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js.map +0 -1
  483. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js +0 -61
  484. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js.map +0 -1
  485. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js +0 -40
  486. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js.map +0 -1
  487. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js +0 -35
  488. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js.map +0 -1
  489. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js +0 -62
  490. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +0 -1
  491. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js +0 -82
  492. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js.map +0 -1
  493. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js +0 -98
  494. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js.map +0 -1
  495. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js +0 -40
  496. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js.map +0 -1
  497. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js +0 -38
  498. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js.map +0 -1
  499. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js +0 -38
  500. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js.map +0 -1
  501. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js +0 -59
  502. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js.map +0 -1
  503. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js +0 -63
  504. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js.map +0 -1
  505. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js +0 -67
  506. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js.map +0 -1
  507. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js +0 -30
  508. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js.map +0 -1
  509. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js +0 -62
  510. package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js.map +0 -1
  511. package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js +0 -91
  512. package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js.map +0 -1
  513. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js +0 -40
  514. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +0 -1
  515. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js +0 -451
  516. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js.map +0 -1
  517. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js +0 -275
  518. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +0 -1
  519. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js +0 -25
  520. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js.map +0 -1
  521. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js +0 -38
  522. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js.map +0 -1
  523. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js +0 -45
  524. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js.map +0 -1
  525. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js +0 -77
  526. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js.map +0 -1
  527. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js +0 -42
  528. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js.map +0 -1
  529. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +0 -71
  530. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js.map +0 -1
  531. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js +0 -22
  532. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js.map +0 -1
  533. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js +0 -43
  534. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js.map +0 -1
  535. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +0 -28
  536. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js.map +0 -1
  537. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +0 -88
  538. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +0 -1
  539. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +0 -38
  540. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js.map +0 -1
  541. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +0 -52
  542. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js.map +0 -1
  543. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +0 -43
  544. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js.map +0 -1
  545. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +0 -75
  546. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js.map +0 -1
  547. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js +0 -22
  548. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js.map +0 -1
  549. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +0 -66
  550. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js.map +0 -1
  551. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +0 -22
  552. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js.map +0 -1
  553. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js +0 -78
  554. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js.map +0 -1
  555. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js +0 -247
  556. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +0 -1
  557. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js +0 -28
  558. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js.map +0 -1
  559. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js +0 -32
  560. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js.map +0 -1
  561. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js +0 -69
  562. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js.map +0 -1
  563. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js +0 -126
  564. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js.map +0 -1
  565. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js +0 -50
  566. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js.map +0 -1
  567. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js +0 -26
  568. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js.map +0 -1
  569. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js +0 -52
  570. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js.map +0 -1
  571. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js +0 -35
  572. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js.map +0 -1
  573. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js +0 -24
  574. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js.map +0 -1
  575. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js +0 -46
  576. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js.map +0 -1
  577. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js +0 -32
  578. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js.map +0 -1
  579. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js +0 -99
  580. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js.map +0 -1
  581. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js +0 -32
  582. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js.map +0 -1
  583. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js +0 -45
  584. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js.map +0 -1
  585. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js +0 -37
  586. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js.map +0 -1
  587. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js +0 -128
  588. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js.map +0 -1
  589. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js +0 -51
  590. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js.map +0 -1
  591. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js +0 -83
  592. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js.map +0 -1
  593. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js +0 -84
  594. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js.map +0 -1
  595. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js +0 -190
  596. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js.map +0 -1
  597. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js +0 -32
  598. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js.map +0 -1
  599. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js +0 -513
  600. package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +0 -1
  601. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js +0 -27
  602. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js.map +0 -1
  603. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js +0 -58
  604. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js.map +0 -1
  605. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js +0 -47
  606. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js.map +0 -1
  607. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js +0 -53
  608. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js.map +0 -1
  609. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js +0 -47
  610. package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js.map +0 -1
  611. package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js +0 -61
  612. package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js.map +0 -1
  613. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js +0 -98
  614. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js.map +0 -1
  615. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js +0 -92
  616. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js.map +0 -1
  617. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js +0 -99
  618. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js.map +0 -1
  619. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js +0 -114
  620. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +0 -1
  621. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js +0 -39
  622. package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js.map +0 -1
  623. package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js +0 -139
  624. package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js.map +0 -1
  625. package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js +0 -185
  626. package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js.map +0 -1
  627. package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js +0 -66
  628. package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js.map +0 -1
  629. package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js +0 -106
  630. package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js.map +0 -1
  631. package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js +0 -308
  632. package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js.map +0 -1
  633. package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js +0 -175
  634. package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js.map +0 -1
  635. package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js +0 -59
  636. package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js.map +0 -1
  637. package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js +0 -53
  638. package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js.map +0 -1
  639. package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js +0 -118
  640. package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js.map +0 -1
  641. package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js +0 -612
  642. package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js.map +0 -1
  643. package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js +0 -46
  644. package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js.map +0 -1
  645. package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js +0 -75
  646. package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +0 -1
  647. package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js +0 -30
  648. package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js.map +0 -1
  649. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js +0 -89
  650. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js.map +0 -1
  651. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js +0 -28
  652. package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js.map +0 -1
  653. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js +0 -42
  654. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js.map +0 -1
  655. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js +0 -40
  656. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js.map +0 -1
  657. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js +0 -123
  658. package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js.map +0 -1
  659. package/node_modules/exceljs/dist/es5/xlsx/xlsx.js +0 -697
  660. package/node_modules/exceljs/dist/es5/xlsx/xlsx.js.map +0 -1
  661. package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js +0 -5
  662. package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js.map +0 -1
  663. package/node_modules/exceljs/dist/exceljs.bare.js +0 -55253
  664. package/node_modules/exceljs/dist/exceljs.bare.js.map +0 -761
  665. package/node_modules/exceljs/dist/exceljs.bare.min.js +0 -45
  666. package/node_modules/exceljs/dist/exceljs.bare.min.js.map +0 -1
  667. package/node_modules/exceljs/dist/exceljs.js +0 -59900
  668. package/node_modules/exceljs/dist/exceljs.js.map +0 -1083
  669. package/node_modules/exceljs/dist/exceljs.min.js +0 -45
  670. package/node_modules/exceljs/dist/exceljs.min.js.map +0 -1
  671. package/scripts/ai-page-render-check.mjs +0 -532
  672. package/scripts/clearances-render-check.mjs +0 -480
  673. package/scripts/composer-render-check.mjs +0 -1027
  674. package/scripts/deploy-test.sh +0 -309
  675. package/scripts/home-render-check.mjs +0 -526
  676. package/scripts/portal-lifecycle-check.mjs +0 -639
@@ -1,443 +0,0 @@
1
- "use strict";
2
-
3
- /* eslint-disable max-classes-per-file */
4
- const colCache = require('../utils/col-cache');
5
- class Column {
6
- // wrapper around column model, allowing access and manipulation
7
- constructor(table, column, index) {
8
- this.table = table;
9
- this.column = column;
10
- this.index = index;
11
- }
12
- _set(name, value) {
13
- this.table.cacheState();
14
- this.column[name] = value;
15
- }
16
-
17
- /* eslint-disable lines-between-class-members */
18
- get name() {
19
- return this.column.name;
20
- }
21
- set name(value) {
22
- this._set('name', value);
23
- }
24
- get filterButton() {
25
- return this.column.filterButton;
26
- }
27
- set filterButton(value) {
28
- this.column.filterButton = value;
29
- }
30
- get style() {
31
- return this.column.style;
32
- }
33
- set style(value) {
34
- this.column.style = value;
35
- }
36
- get totalsRowLabel() {
37
- return this.column.totalsRowLabel;
38
- }
39
- set totalsRowLabel(value) {
40
- this._set('totalsRowLabel', value);
41
- }
42
- get totalsRowFunction() {
43
- return this.column.totalsRowFunction;
44
- }
45
- set totalsRowFunction(value) {
46
- this._set('totalsRowFunction', value);
47
- }
48
- get totalsRowResult() {
49
- return this.column.totalsRowResult;
50
- }
51
- set totalsRowResult(value) {
52
- this._set('totalsRowResult', value);
53
- }
54
- get totalsRowFormula() {
55
- return this.column.totalsRowFormula;
56
- }
57
- set totalsRowFormula(value) {
58
- this._set('totalsRowFormula', value);
59
- }
60
- /* eslint-enable lines-between-class-members */
61
- }
62
-
63
- class Table {
64
- constructor(worksheet, table) {
65
- this.worksheet = worksheet;
66
- if (table) {
67
- this.table = table;
68
- // check things are ok first
69
- this.validate();
70
- this.store();
71
- }
72
- }
73
- getFormula(column) {
74
- // get the correct formula to apply to the totals row
75
- switch (column.totalsRowFunction) {
76
- case 'none':
77
- return null;
78
- case 'average':
79
- return `SUBTOTAL(101,${this.table.name}[${column.name}])`;
80
- case 'countNums':
81
- return `SUBTOTAL(102,${this.table.name}[${column.name}])`;
82
- case 'count':
83
- return `SUBTOTAL(103,${this.table.name}[${column.name}])`;
84
- case 'max':
85
- return `SUBTOTAL(104,${this.table.name}[${column.name}])`;
86
- case 'min':
87
- return `SUBTOTAL(105,${this.table.name}[${column.name}])`;
88
- case 'stdDev':
89
- return `SUBTOTAL(106,${this.table.name}[${column.name}])`;
90
- case 'var':
91
- return `SUBTOTAL(107,${this.table.name}[${column.name}])`;
92
- case 'sum':
93
- return `SUBTOTAL(109,${this.table.name}[${column.name}])`;
94
- case 'custom':
95
- return column.totalsRowFormula;
96
- default:
97
- throw new Error(`Invalid Totals Row Function: ${column.totalsRowFunction}`);
98
- }
99
- }
100
- get width() {
101
- // width of the table
102
- return this.table.columns.length;
103
- }
104
- get height() {
105
- // height of the table data
106
- return this.table.rows.length;
107
- }
108
- get filterHeight() {
109
- // height of the table data plus optional header row
110
- return this.height + (this.table.headerRow ? 1 : 0);
111
- }
112
- get tableHeight() {
113
- // full height of the table on the sheet
114
- return this.filterHeight + (this.table.totalsRow ? 1 : 0);
115
- }
116
- validate() {
117
- const {
118
- table
119
- } = this;
120
- // set defaults and check is valid
121
- const assign = (o, name, dflt) => {
122
- if (o[name] === undefined) {
123
- o[name] = dflt;
124
- }
125
- };
126
- assign(table, 'headerRow', true);
127
- assign(table, 'totalsRow', false);
128
- assign(table, 'style', {});
129
- assign(table.style, 'theme', 'TableStyleMedium2');
130
- assign(table.style, 'showFirstColumn', false);
131
- assign(table.style, 'showLastColumn', false);
132
- assign(table.style, 'showRowStripes', false);
133
- assign(table.style, 'showColumnStripes', false);
134
- const assert = (test, message) => {
135
- if (!test) {
136
- throw new Error(message);
137
- }
138
- };
139
- assert(table.ref, 'Table must have ref');
140
- assert(table.columns, 'Table must have column definitions');
141
- assert(table.rows, 'Table must have row definitions');
142
- table.tl = colCache.decodeAddress(table.ref);
143
- const {
144
- row,
145
- col
146
- } = table.tl;
147
- assert(row > 0, 'Table must be on valid row');
148
- assert(col > 0, 'Table must be on valid col');
149
- const {
150
- width,
151
- filterHeight,
152
- tableHeight
153
- } = this;
154
-
155
- // autoFilterRef is a range that includes optional headers only
156
- table.autoFilterRef = colCache.encode(row, col, row + filterHeight - 1, col + width - 1);
157
-
158
- // tableRef is a range that includes optional headers and totals
159
- table.tableRef = colCache.encode(row, col, row + tableHeight - 1, col + width - 1);
160
- table.columns.forEach((column, i) => {
161
- assert(column.name, `Column ${i} must have a name`);
162
- if (i === 0) {
163
- assign(column, 'totalsRowLabel', 'Total');
164
- } else {
165
- assign(column, 'totalsRowFunction', 'none');
166
- column.totalsRowFormula = this.getFormula(column);
167
- }
168
- });
169
- }
170
- store() {
171
- // where the table needs to store table data, headers, footers in
172
- // the sheet...
173
- const assignStyle = (cell, style) => {
174
- if (style) {
175
- Object.keys(style).forEach(key => {
176
- cell[key] = style[key];
177
- });
178
- }
179
- };
180
- const {
181
- worksheet,
182
- table
183
- } = this;
184
- const {
185
- row,
186
- col
187
- } = table.tl;
188
- let count = 0;
189
- if (table.headerRow) {
190
- const r = worksheet.getRow(row + count++);
191
- table.columns.forEach((column, j) => {
192
- const {
193
- style,
194
- name
195
- } = column;
196
- const cell = r.getCell(col + j);
197
- cell.value = name;
198
- assignStyle(cell, style);
199
- });
200
- }
201
- table.rows.forEach(data => {
202
- const r = worksheet.getRow(row + count++);
203
- data.forEach((value, j) => {
204
- const cell = r.getCell(col + j);
205
- cell.value = value;
206
- assignStyle(cell, table.columns[j].style);
207
- });
208
- });
209
- if (table.totalsRow) {
210
- const r = worksheet.getRow(row + count++);
211
- table.columns.forEach((column, j) => {
212
- const cell = r.getCell(col + j);
213
- if (j === 0) {
214
- cell.value = column.totalsRowLabel;
215
- } else {
216
- const formula = this.getFormula(column);
217
- if (formula) {
218
- cell.value = {
219
- formula: column.totalsRowFormula,
220
- result: column.totalsRowResult
221
- };
222
- } else {
223
- cell.value = null;
224
- }
225
- }
226
- assignStyle(cell, column.style);
227
- });
228
- }
229
- }
230
- load(worksheet) {
231
- // where the table will read necessary features from a loaded sheet
232
- const {
233
- table
234
- } = this;
235
- const {
236
- row,
237
- col
238
- } = table.tl;
239
- let count = 0;
240
- if (table.headerRow) {
241
- const r = worksheet.getRow(row + count++);
242
- table.columns.forEach((column, j) => {
243
- const cell = r.getCell(col + j);
244
- cell.value = column.name;
245
- });
246
- }
247
- table.rows.forEach(data => {
248
- const r = worksheet.getRow(row + count++);
249
- data.forEach((value, j) => {
250
- const cell = r.getCell(col + j);
251
- cell.value = value;
252
- });
253
- });
254
- if (table.totalsRow) {
255
- const r = worksheet.getRow(row + count++);
256
- table.columns.forEach((column, j) => {
257
- const cell = r.getCell(col + j);
258
- if (j === 0) {
259
- cell.value = column.totalsRowLabel;
260
- } else {
261
- const formula = this.getFormula(column);
262
- if (formula) {
263
- cell.value = {
264
- formula: column.totalsRowFormula,
265
- result: column.totalsRowResult
266
- };
267
- }
268
- }
269
- });
270
- }
271
- }
272
- get model() {
273
- return this.table;
274
- }
275
- set model(value) {
276
- this.table = value;
277
- }
278
-
279
- // ================================================================
280
- // TODO: Mutating methods
281
- cacheState() {
282
- if (!this._cache) {
283
- this._cache = {
284
- ref: this.ref,
285
- width: this.width,
286
- tableHeight: this.tableHeight
287
- };
288
- }
289
- }
290
- commit() {
291
- // changes may have been made that might have on-sheet effects
292
- if (!this._cache) {
293
- return;
294
- }
295
-
296
- // check things are ok first
297
- this.validate();
298
- const ref = colCache.decodeAddress(this._cache.ref);
299
- if (this.ref !== this._cache.ref) {
300
- // wipe out whole table footprint at previous location
301
- for (let i = 0; i < this._cache.tableHeight; i++) {
302
- const row = this.worksheet.getRow(ref.row + i);
303
- for (let j = 0; j < this._cache.width; j++) {
304
- const cell = row.getCell(ref.col + j);
305
- cell.value = null;
306
- }
307
- }
308
- } else {
309
- // clear out below table if it has shrunk
310
- for (let i = this.tableHeight; i < this._cache.tableHeight; i++) {
311
- const row = this.worksheet.getRow(ref.row + i);
312
- for (let j = 0; j < this._cache.width; j++) {
313
- const cell = row.getCell(ref.col + j);
314
- cell.value = null;
315
- }
316
- }
317
-
318
- // clear out to right of table if it has lost columns
319
- for (let i = 0; i < this.tableHeight; i++) {
320
- const row = this.worksheet.getRow(ref.row + i);
321
- for (let j = this.width; j < this._cache.width; j++) {
322
- const cell = row.getCell(ref.col + j);
323
- cell.value = null;
324
- }
325
- }
326
- }
327
- this.store();
328
- }
329
- addRow(values, rowNumber) {
330
- // Add a row of data, either insert at rowNumber or append
331
- this.cacheState();
332
- if (rowNumber === undefined) {
333
- this.table.rows.push(values);
334
- } else {
335
- this.table.rows.splice(rowNumber, 0, values);
336
- }
337
- }
338
- removeRows(rowIndex) {
339
- let count = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
340
- // Remove a rows of data
341
- this.cacheState();
342
- this.table.rows.splice(rowIndex, count);
343
- }
344
- getColumn(colIndex) {
345
- const column = this.table.columns[colIndex];
346
- return new Column(this, column, colIndex);
347
- }
348
- addColumn(column, values, colIndex) {
349
- // Add a new column, including column defn and values
350
- // Inserts at colNumber or adds to the right
351
- this.cacheState();
352
- if (colIndex === undefined) {
353
- this.table.columns.push(column);
354
- this.table.rows.forEach((row, i) => {
355
- row.push(values[i]);
356
- });
357
- } else {
358
- this.table.columns.splice(colIndex, 0, column);
359
- this.table.rows.forEach((row, i) => {
360
- row.splice(colIndex, 0, values[i]);
361
- });
362
- }
363
- }
364
- removeColumns(colIndex) {
365
- let count = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
366
- // Remove a column with data
367
- this.cacheState();
368
- this.table.columns.splice(colIndex, count);
369
- this.table.rows.forEach(row => {
370
- row.splice(colIndex, count);
371
- });
372
- }
373
- _assign(target, prop, value) {
374
- this.cacheState();
375
- target[prop] = value;
376
- }
377
-
378
- /* eslint-disable lines-between-class-members */
379
- get ref() {
380
- return this.table.ref;
381
- }
382
- set ref(value) {
383
- this._assign(this.table, 'ref', value);
384
- }
385
- get name() {
386
- return this.table.name;
387
- }
388
- set name(value) {
389
- this.table.name = value;
390
- }
391
- get displayName() {
392
- return this.table.displyName || this.table.name;
393
- }
394
- set displayNamename(value) {
395
- this.table.displayName = value;
396
- }
397
- get headerRow() {
398
- return this.table.headerRow;
399
- }
400
- set headerRow(value) {
401
- this._assign(this.table, 'headerRow', value);
402
- }
403
- get totalsRow() {
404
- return this.table.totalsRow;
405
- }
406
- set totalsRow(value) {
407
- this._assign(this.table, 'totalsRow', value);
408
- }
409
- get theme() {
410
- return this.table.style.name;
411
- }
412
- set theme(value) {
413
- this.table.style.name = value;
414
- }
415
- get showFirstColumn() {
416
- return this.table.style.showFirstColumn;
417
- }
418
- set showFirstColumn(value) {
419
- this.table.style.showFirstColumn = value;
420
- }
421
- get showLastColumn() {
422
- return this.table.style.showLastColumn;
423
- }
424
- set showLastColumn(value) {
425
- this.table.style.showLastColumn = value;
426
- }
427
- get showRowStripes() {
428
- return this.table.style.showRowStripes;
429
- }
430
- set showRowStripes(value) {
431
- this.table.style.showRowStripes = value;
432
- }
433
- get showColumnStripes() {
434
- return this.table.style.showColumnStripes;
435
- }
436
- set showColumnStripes(value) {
437
- this.table.style.showColumnStripes = value;
438
- }
439
- /* eslint-enable lines-between-class-members */
440
- }
441
-
442
- module.exports = Table;
443
- //# sourceMappingURL=table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.js","names":["colCache","require","Column","constructor","table","column","index","_set","name","value","cacheState","filterButton","style","totalsRowLabel","totalsRowFunction","totalsRowResult","totalsRowFormula","Table","worksheet","validate","store","getFormula","Error","width","columns","length","height","rows","filterHeight","headerRow","tableHeight","totalsRow","assign","o","dflt","undefined","assert","test","message","ref","tl","decodeAddress","row","col","autoFilterRef","encode","tableRef","forEach","i","assignStyle","cell","Object","keys","key","count","r","getRow","j","getCell","data","formula","result","load","model","_cache","commit","addRow","values","rowNumber","push","splice","removeRows","rowIndex","arguments","getColumn","colIndex","addColumn","removeColumns","_assign","target","prop","displayName","displyName","displayNamename","theme","showFirstColumn","showLastColumn","showRowStripes","showColumnStripes","module","exports"],"sources":["../../../lib/doc/table.js"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nconst colCache = require('../utils/col-cache');\n\nclass Column {\n // wrapper around column model, allowing access and manipulation\n constructor(table, column, index) {\n this.table = table;\n this.column = column;\n this.index = index;\n }\n\n _set(name, value) {\n this.table.cacheState();\n this.column[name] = value;\n }\n\n /* eslint-disable lines-between-class-members */\n get name() {\n return this.column.name;\n }\n set name(value) {\n this._set('name', value);\n }\n\n get filterButton() {\n return this.column.filterButton;\n }\n set filterButton(value) {\n this.column.filterButton = value;\n }\n\n get style() {\n return this.column.style;\n }\n set style(value) {\n this.column.style = value;\n }\n\n get totalsRowLabel() {\n return this.column.totalsRowLabel;\n }\n set totalsRowLabel(value) {\n this._set('totalsRowLabel', value);\n }\n\n get totalsRowFunction() {\n return this.column.totalsRowFunction;\n }\n set totalsRowFunction(value) {\n this._set('totalsRowFunction', value);\n }\n\n get totalsRowResult() {\n return this.column.totalsRowResult;\n }\n set totalsRowResult(value) {\n this._set('totalsRowResult', value);\n }\n\n get totalsRowFormula() {\n return this.column.totalsRowFormula;\n }\n set totalsRowFormula(value) {\n this._set('totalsRowFormula', value);\n }\n /* eslint-enable lines-between-class-members */\n}\n\nclass Table {\n constructor(worksheet, table) {\n this.worksheet = worksheet;\n if (table) {\n this.table = table;\n // check things are ok first\n this.validate();\n\n this.store();\n }\n }\n\n getFormula(column) {\n // get the correct formula to apply to the totals row\n switch (column.totalsRowFunction) {\n case 'none':\n return null;\n case 'average':\n return `SUBTOTAL(101,${this.table.name}[${column.name}])`;\n case 'countNums':\n return `SUBTOTAL(102,${this.table.name}[${column.name}])`;\n case 'count':\n return `SUBTOTAL(103,${this.table.name}[${column.name}])`;\n case 'max':\n return `SUBTOTAL(104,${this.table.name}[${column.name}])`;\n case 'min':\n return `SUBTOTAL(105,${this.table.name}[${column.name}])`;\n case 'stdDev':\n return `SUBTOTAL(106,${this.table.name}[${column.name}])`;\n case 'var':\n return `SUBTOTAL(107,${this.table.name}[${column.name}])`;\n case 'sum':\n return `SUBTOTAL(109,${this.table.name}[${column.name}])`;\n case 'custom':\n return column.totalsRowFormula;\n default:\n throw new Error(`Invalid Totals Row Function: ${column.totalsRowFunction}`);\n }\n }\n\n get width() {\n // width of the table\n return this.table.columns.length;\n }\n\n get height() {\n // height of the table data\n return this.table.rows.length;\n }\n\n get filterHeight() {\n // height of the table data plus optional header row\n return this.height + (this.table.headerRow ? 1 : 0);\n }\n\n get tableHeight() {\n // full height of the table on the sheet\n return this.filterHeight + (this.table.totalsRow ? 1 : 0);\n }\n\n validate() {\n const {table} = this;\n // set defaults and check is valid\n const assign = (o, name, dflt) => {\n if (o[name] === undefined) {\n o[name] = dflt;\n }\n };\n assign(table, 'headerRow', true);\n assign(table, 'totalsRow', false);\n\n assign(table, 'style', {});\n assign(table.style, 'theme', 'TableStyleMedium2');\n assign(table.style, 'showFirstColumn', false);\n assign(table.style, 'showLastColumn', false);\n assign(table.style, 'showRowStripes', false);\n assign(table.style, 'showColumnStripes', false);\n\n const assert = (test, message) => {\n if (!test) {\n throw new Error(message);\n }\n };\n assert(table.ref, 'Table must have ref');\n assert(table.columns, 'Table must have column definitions');\n assert(table.rows, 'Table must have row definitions');\n\n table.tl = colCache.decodeAddress(table.ref);\n const {row, col} = table.tl;\n assert(row > 0, 'Table must be on valid row');\n assert(col > 0, 'Table must be on valid col');\n\n const {width, filterHeight, tableHeight} = this;\n\n // autoFilterRef is a range that includes optional headers only\n table.autoFilterRef = colCache.encode(row, col, row + filterHeight - 1, col + width - 1);\n\n // tableRef is a range that includes optional headers and totals\n table.tableRef = colCache.encode(row, col, row + tableHeight - 1, col + width - 1);\n\n table.columns.forEach((column, i) => {\n assert(column.name, `Column ${i} must have a name`);\n if (i === 0) {\n assign(column, 'totalsRowLabel', 'Total');\n } else {\n assign(column, 'totalsRowFunction', 'none');\n column.totalsRowFormula = this.getFormula(column);\n }\n });\n }\n\n store() {\n // where the table needs to store table data, headers, footers in\n // the sheet...\n const assignStyle = (cell, style) => {\n if (style) {\n Object.keys(style).forEach(key => {\n cell[key] = style[key];\n });\n }\n };\n\n const {worksheet, table} = this;\n const {row, col} = table.tl;\n let count = 0;\n if (table.headerRow) {\n const r = worksheet.getRow(row + count++);\n table.columns.forEach((column, j) => {\n const {style, name} = column;\n const cell = r.getCell(col + j);\n cell.value = name;\n assignStyle(cell, style);\n });\n }\n table.rows.forEach(data => {\n const r = worksheet.getRow(row + count++);\n data.forEach((value, j) => {\n const cell = r.getCell(col + j);\n cell.value = value;\n\n assignStyle(cell, table.columns[j].style);\n });\n });\n\n if (table.totalsRow) {\n const r = worksheet.getRow(row + count++);\n table.columns.forEach((column, j) => {\n const cell = r.getCell(col + j);\n if (j === 0) {\n cell.value = column.totalsRowLabel;\n } else {\n const formula = this.getFormula(column);\n if (formula) {\n cell.value = {\n formula: column.totalsRowFormula,\n result: column.totalsRowResult,\n };\n } else {\n cell.value = null;\n }\n }\n\n assignStyle(cell, column.style);\n });\n }\n }\n\n load(worksheet) {\n // where the table will read necessary features from a loaded sheet\n const {table} = this;\n const {row, col} = table.tl;\n let count = 0;\n if (table.headerRow) {\n const r = worksheet.getRow(row + count++);\n table.columns.forEach((column, j) => {\n const cell = r.getCell(col + j);\n cell.value = column.name;\n });\n }\n table.rows.forEach(data => {\n const r = worksheet.getRow(row + count++);\n data.forEach((value, j) => {\n const cell = r.getCell(col + j);\n cell.value = value;\n });\n });\n\n if (table.totalsRow) {\n const r = worksheet.getRow(row + count++);\n table.columns.forEach((column, j) => {\n const cell = r.getCell(col + j);\n if (j === 0) {\n cell.value = column.totalsRowLabel;\n } else {\n const formula = this.getFormula(column);\n if (formula) {\n cell.value = {\n formula: column.totalsRowFormula,\n result: column.totalsRowResult,\n };\n }\n }\n });\n }\n }\n\n get model() {\n return this.table;\n }\n\n set model(value) {\n this.table = value;\n }\n\n // ================================================================\n // TODO: Mutating methods\n cacheState() {\n if (!this._cache) {\n this._cache = {\n ref: this.ref,\n width: this.width,\n tableHeight: this.tableHeight,\n };\n }\n }\n\n commit() {\n // changes may have been made that might have on-sheet effects\n if (!this._cache) {\n return;\n }\n\n // check things are ok first\n this.validate();\n\n const ref = colCache.decodeAddress(this._cache.ref);\n if (this.ref !== this._cache.ref) {\n // wipe out whole table footprint at previous location\n for (let i = 0; i < this._cache.tableHeight; i++) {\n const row = this.worksheet.getRow(ref.row + i);\n for (let j = 0; j < this._cache.width; j++) {\n const cell = row.getCell(ref.col + j);\n cell.value = null;\n }\n }\n } else {\n // clear out below table if it has shrunk\n for (let i = this.tableHeight; i < this._cache.tableHeight; i++) {\n const row = this.worksheet.getRow(ref.row + i);\n for (let j = 0; j < this._cache.width; j++) {\n const cell = row.getCell(ref.col + j);\n cell.value = null;\n }\n }\n\n // clear out to right of table if it has lost columns\n for (let i = 0; i < this.tableHeight; i++) {\n const row = this.worksheet.getRow(ref.row + i);\n for (let j = this.width; j < this._cache.width; j++) {\n const cell = row.getCell(ref.col + j);\n cell.value = null;\n }\n }\n }\n\n this.store();\n }\n\n addRow(values, rowNumber) {\n // Add a row of data, either insert at rowNumber or append\n this.cacheState();\n\n if (rowNumber === undefined) {\n this.table.rows.push(values);\n } else {\n this.table.rows.splice(rowNumber, 0, values);\n }\n }\n\n removeRows(rowIndex, count = 1) {\n // Remove a rows of data\n this.cacheState();\n this.table.rows.splice(rowIndex, count);\n }\n\n getColumn(colIndex) {\n const column = this.table.columns[colIndex];\n return new Column(this, column, colIndex);\n }\n\n addColumn(column, values, colIndex) {\n // Add a new column, including column defn and values\n // Inserts at colNumber or adds to the right\n this.cacheState();\n\n if (colIndex === undefined) {\n this.table.columns.push(column);\n this.table.rows.forEach((row, i) => {\n row.push(values[i]);\n });\n } else {\n this.table.columns.splice(colIndex, 0, column);\n this.table.rows.forEach((row, i) => {\n row.splice(colIndex, 0, values[i]);\n });\n }\n }\n\n removeColumns(colIndex, count = 1) {\n // Remove a column with data\n this.cacheState();\n\n this.table.columns.splice(colIndex, count);\n this.table.rows.forEach(row => {\n row.splice(colIndex, count);\n });\n }\n\n _assign(target, prop, value) {\n this.cacheState();\n target[prop] = value;\n }\n\n /* eslint-disable lines-between-class-members */\n get ref() {\n return this.table.ref;\n }\n set ref(value) {\n this._assign(this.table, 'ref', value);\n }\n\n get name() {\n return this.table.name;\n }\n set name(value) {\n this.table.name = value;\n }\n\n get displayName() {\n return this.table.displyName || this.table.name;\n }\n set displayNamename(value) {\n this.table.displayName = value;\n }\n\n get headerRow() {\n return this.table.headerRow;\n }\n set headerRow(value) {\n this._assign(this.table, 'headerRow', value);\n }\n\n get totalsRow() {\n return this.table.totalsRow;\n }\n set totalsRow(value) {\n this._assign(this.table, 'totalsRow', value);\n }\n\n get theme() {\n return this.table.style.name;\n }\n set theme(value) {\n this.table.style.name = value;\n }\n\n get showFirstColumn() {\n return this.table.style.showFirstColumn;\n }\n set showFirstColumn(value) {\n this.table.style.showFirstColumn = value;\n }\n\n get showLastColumn() {\n return this.table.style.showLastColumn;\n }\n set showLastColumn(value) {\n this.table.style.showLastColumn = value;\n }\n\n get showRowStripes() {\n return this.table.style.showRowStripes;\n }\n set showRowStripes(value) {\n this.table.style.showRowStripes = value;\n }\n\n get showColumnStripes() {\n return this.table.style.showColumnStripes;\n }\n set showColumnStripes(value) {\n this.table.style.showColumnStripes = value;\n }\n /* eslint-enable lines-between-class-members */\n}\n\nmodule.exports = Table;\n"],"mappings":"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"}