clearotron 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +105 -0
- package/CONTRIBUTING.md +3 -3
- package/INSTALL.md +57 -52
- package/README.md +2 -1
- package/bin/brandowner.mjs +1 -1
- package/bin/clearotron.mjs +4 -4
- package/bin/connect.mjs +2 -2
- package/bin/example.mjs +114 -37
- package/bin/grant.mjs +3 -3
- package/bin/key.mjs +1 -1
- package/bin/onboard.mjs +97 -119
- package/bin/start.mjs +29 -25
- package/bin/stop.mjs +65 -3
- package/bin/update.mjs +7 -7
- package/bin/uspto-sync.mjs +1 -1
- package/build-info.json +2 -2
- package/docs/DELIVERY.md +6 -2
- package/docs/RELEASES.md +6 -4
- package/docs/architecture/01-product-overview.md +2 -2
- package/docs/architecture/02-architecture.md +2 -2
- package/docs/architecture/04-configuration-reference.md +7 -4
- package/docs/architecture/05-config-governance.md +38 -5
- package/docs/architecture/06-operations-runbook.md +13 -1
- package/docs/architecture/09-security-and-data.md +1 -1
- package/docs/decisions/0004-documentation-structure.md +1 -1
- package/driver/CHANGELOG.md +95 -1
- package/driver/README.md +2 -2
- package/driver/ask-ledger.mjs +72 -4
- package/driver/authority-trees.mjs +1 -1
- package/driver/call-capture.mjs +1 -1
- package/driver/card-frame.mjs +1 -1
- package/driver/case-law-ledger.mjs +1 -1
- package/driver/claim-liveness.mjs +1 -1
- package/driver/common-law-receipts.mjs +1 -1
- package/driver/commonlaw-carry.mjs +1 -1
- package/driver/config-inventory.mjs +1 -1
- package/driver/connotation-search.mjs +12 -12
- package/driver/contract-audit.mjs +5 -5
- package/driver/contract-dictation-registry.mjs +4 -4
- package/driver/contract-dictation.mjs +2 -2
- package/driver/contract-e3-backlog.mjs +6 -6
- package/driver/contract-vocabulary.mjs +3 -3
- package/driver/corrections-feedforward.mjs +1 -1
- package/driver/coverage-form-io.mjs +2 -2
- package/driver/coverage-form.mjs +4 -4
- package/driver/coverage-ledger.mjs +3 -3
- package/driver/coverage-union.mjs +1 -1
- package/driver/declination-call.mjs +35 -3
- package/driver/declination-duty.mjs +1 -1
- package/driver/deliver-trigger.sh +3 -3
- package/driver/deploy-live-run-guard.mjs +6 -2
- package/driver/dev-portal.mjs +1 -1
- package/driver/disposition-call.mjs +4 -4
- package/driver/disposition-tool.mjs +4 -4
- package/driver/disposition-union.mjs +2 -2
- package/driver/doc-constants.mjs +1 -1
- package/driver/door-gates.mjs +2 -2
- package/driver/doubt-selection.mjs +2 -2
- package/driver/drainer-identity.mjs +1 -1
- package/driver/driver.config.mjs +63 -11
- package/driver/e2e-rounds.mjs +2 -2
- package/driver/effort-model.mjs +2 -2
- package/driver/engine/anthropic-agent.mjs +24 -24
- package/driver/engine/auth.mjs +1 -1
- package/driver/engine/common.mjs +1 -1
- package/driver/engine/deny-authority-write.mjs +1 -1
- package/driver/engine/jx-turn.mjs +1 -1
- package/driver/engine/mcp/clarivate-server.mjs +1 -1
- package/driver/engine/mcp/corsearch-server.mjs +1 -1
- package/driver/engine/mcp/declination-server.mjs +1 -1
- package/driver/engine/mcp/dispositions-server.mjs +1 -1
- package/driver/engine/mcp/euipo-server.mjs +1 -1
- package/driver/engine/mcp/fetch-server.mjs +1 -1
- package/driver/engine/mcp/free-tier-server.mjs +2 -2
- package/driver/engine/mcp/gather-config.mjs +11 -11
- package/driver/engine/mcp/perplexity-server.mjs +1 -1
- package/driver/engine/mcp/recording-server.mjs +8 -4
- package/driver/engine/mcp/signa-server.mjs +1 -1
- package/driver/engine/mcp/uspto-local-server.mjs +1 -1
- package/driver/engine/openai-agent.mjs +2 -2
- package/driver/engine-build.mjs +2 -2
- package/driver/enqueue-schema.mjs +2 -2
- package/driver/enqueue.mjs +1 -1
- package/driver/envelope-settle.mjs +1 -1
- package/driver/evidence-claim-invariant.mjs +2 -2
- package/driver/findings-model.mjs +8 -8
- package/driver/floor-duty.mjs +1 -1
- package/driver/form-neighbourhood.mjs +1 -1
- package/driver/framework.mjs +1 -1
- package/driver/gateway.mjs +28 -23
- package/driver/grounds-grammar.mjs +1 -1
- package/driver/hit-list.mjs +1 -1
- package/driver/jurisdiction-systems.mjs +1 -1
- package/driver/jx-lanes.mjs +1 -1
- package/driver/jx-units.mjs +1 -1
- package/driver/jx.mjs +3 -3
- package/driver/knockout-assess-record.mjs +5 -1
- package/driver/narrative-refutation-record.mjs +3 -3
- package/driver/numeric-setting.mjs +1 -1
- package/driver/owner-use-check.mjs +184 -0
- package/driver/package.json +2 -2
- package/driver/phase0.mjs +1 -1
- package/driver/pipeline-knockout.mjs +52 -4
- package/driver/pipeline.mjs +215 -63
- package/driver/placement-diff.mjs +2 -2
- package/driver/placement-form.mjs +4 -4
- package/driver/placement-union.mjs +1 -1
- package/driver/portal-acks.mjs +1 -1
- package/driver/portal-config-view.mjs +2 -2
- package/driver/portal-local-auth.mjs +1 -1
- package/driver/portal-report.mjs +6 -6
- package/driver/portal-service.mjs +15 -15
- package/driver/predelivery-lint.mjs +29 -11
- package/driver/prelim-variants-record.mjs +2 -2
- package/driver/profile-page.html +1 -1
- package/driver/profile-selection.mjs +1 -1
- package/driver/profile-service.mjs +2 -2
- package/driver/profiles.mjs +1 -1
- package/driver/progress.mjs +6 -6
- package/driver/provider-usage.mjs +1 -1
- package/driver/publish/demo-marking.mjs +1 -1
- package/driver/publish/index.mjs +47 -6
- package/driver/publish/knockout.mjs +36 -14
- package/driver/publish/parse.mjs +4 -4
- package/driver/publish/publish-inputs.mjs +2 -2
- package/driver/publish/register-presence.mjs +1 -1
- package/driver/publish/render-knockout.mjs +198 -31
- package/driver/publish/report-data.mjs +13 -3
- package/driver/publish/seed-pool.mjs +24 -9
- package/driver/queue-watch-probe.mjs +1 -1
- package/driver/queue-watch-verdict.mjs +1 -1
- package/driver/recall-reconciliation.mjs +1 -1
- package/driver/recipe-service.mjs +1 -1
- package/driver/record-carry.mjs +141 -2
- package/driver/recording-agreement.mjs +3 -3
- package/driver/reference-score.mjs +59 -9
- package/driver/reference-strip-signatures.mjs +68 -0
- package/driver/refusal-bound.mjs +3 -3
- package/driver/register-availability.mjs +2 -2
- package/driver/register-count.mjs +1 -1
- package/driver/register-digest-record.mjs +31 -1
- package/driver/register-grant-vocabulary.mjs +2 -2
- package/driver/register-plan.mjs +8 -8
- package/driver/register-records.mjs +2 -2
- package/driver/registry-fidelity.mjs +3 -3
- package/driver/remedy-accounting.mjs +1 -1
- package/driver/repair-composers.mjs +2 -2
- package/driver/repair-digest.mjs +3 -3
- package/driver/repairs.mjs +7 -7
- package/driver/replay-archive.mjs +2 -0
- package/driver/report-card-record.mjs +2 -2
- package/driver/result-noun-fields.mjs +10 -3
- package/driver/run-economics.mjs +2 -2
- package/driver/run-integrity.mjs +1 -1
- package/driver/runner.mjs +22 -22
- package/driver/scope-rules.mjs +1 -1
- package/driver/search-policy.mjs +3 -3
- package/driver/skeptic-search.mjs +1 -1
- package/driver/skills/blind-frame/SKILL.md +1 -1
- package/driver/skills/case-law-citation/SKILL.md +2 -2
- package/driver/skills/knockout-assess/SKILL.md +10 -4
- package/driver/skills/prelim-search/SKILL.md +2 -2
- package/driver/skills/prelim-search/template-formatting.md +1 -1
- package/driver/skills/prelim-search/templates/email/generic.md +1 -1
- package/driver/skills/prelim-search/worked-examples.md +1 -1
- package/driver/skills/prelim-variants/SKILL.md +2 -2
- package/driver/stage-context.mjs +1 -1
- package/driver/stages-knockout.mjs +55 -4
- package/driver/stages.mjs +97 -40
- package/driver/stray-artifacts.mjs +2 -2
- package/driver/suite-census.json +188 -44
- package/driver/synthesis-record.mjs +1 -1
- package/driver/systemd/clearotron-client-mcp.service +1 -1
- package/driver/systemd/clearotron-portal.service +1 -1
- package/driver/systemd/render-units.mjs +1 -1
- package/driver/tokens.mjs +1 -1
- package/driver/tool-calls.mjs +1 -1
- package/driver/turnaround-bands.mjs +1 -1
- package/driver/unit-file-drift.mjs +1 -1
- package/driver/unit-inventory.mjs +121 -61
- package/driver/unit-state-verdict.mjs +20 -12
- package/driver/verify-knockout.mjs +10 -2
- package/driver/verify.mjs +14 -14
- package/driver/whatif-memo-run.mjs +46 -5
- package/driver/whatif-queue.mjs +1 -1
- package/driver/whatif-worker.mjs +1 -1
- package/mcp-server/CHANGELOG.md +12 -0
- package/mcp-server/README.md +3 -3
- package/mcp-server/http-server.mjs +44 -1
- package/mcp-server/key-socket.mjs +184 -0
- package/mcp-server/lib/audit-view.mjs +69 -2
- package/mcp-server/lib/brief.mjs +15 -0
- package/mcp-server/lib/driver.mjs +7 -1
- package/mcp-server/lib/events.mjs +1 -1
- package/mcp-server/lib/http-handler.mjs +1 -1
- package/mcp-server/lib/knockout.mjs +435 -0
- package/mcp-server/lib/ops.mjs +4 -4
- package/mcp-server/lib/options.mjs +1 -1
- package/mcp-server/lib/plan.mjs +1 -1
- package/mcp-server/lib/runs.mjs +1 -1
- package/mcp-server/lib/scrub.mjs +1 -1
- package/mcp-server/lib/whatif.mjs +12 -3
- package/mcp-server/mint-token.mjs +1 -1
- package/mcp-server/package.json +2 -2
- package/mcp-server/server.mjs +76 -11
- package/package.json +3 -3
- package/portal-ui/package.json +1 -1
- package/providers/_shared/enumerate.mjs +1 -1
- package/providers/_shared/ledger-path.mjs +3 -3
- package/providers/_shared/ledger.mjs +1 -1
- package/providers/_shared/result-shape.mjs +3 -3
- package/providers/_shared/term-shape.mjs +1 -1
- package/providers/corsearch/src/core.js +1 -1
- package/providers/jx-subclass/BUILDING.md +1 -1
- package/providers/oauth-mcp-bridge/CHANGELOG.md +12 -0
- package/providers/oauth-mcp-bridge/package.json +1 -1
- package/providers/oauth-mcp-bridge/stdin-guard.mjs +2 -2
- package/scripts/README.md +1 -1
- package/scripts/added-reference-check.mjs +29 -1
- package/scripts/ai-page-render-check.mjs +2 -1
- package/scripts/authority-boundary-probe.mjs +1 -1
- package/scripts/backfill-started-at.mjs +1 -1
- package/scripts/citation-line-check.mjs +3 -3
- package/scripts/clearances-render-check.mjs +4 -3
- package/scripts/compare.mjs +2 -2
- package/scripts/composer-render-check.mjs +6 -6
- package/scripts/contract-dictation-scan.mjs +2 -2
- package/scripts/dead-names.mjs +1 -1
- package/scripts/drain-preflight.mjs +5 -5
- package/scripts/e2e-unread-terminals.mjs +1 -1
- package/scripts/e2e.mjs +8 -8
- package/scripts/env-audit.mjs +27 -7
- package/scripts/env-classify.mjs +139 -15
- package/scripts/freeze-example-run.mjs +3 -3
- package/scripts/head-arrived-gated.mjs +1 -1
- package/scripts/headless-page.mjs +274 -0
- package/scripts/home-render-check.mjs +3 -2
- package/scripts/live-surface-check.mjs +92 -19
- package/scripts/main-health.mjs +1 -1
- package/scripts/merge-presence-check.mjs +3 -3
- package/scripts/mint-reference-strip-backlog.mjs +41 -0
- package/scripts/mint-suite-census.mjs +6 -6
- package/scripts/nightly-notice.mjs +1 -1
- package/scripts/portal-lifecycle-check.mjs +3 -3
- package/scripts/reconcile-runs.mjs +1 -1
- package/scripts/release-await-cut.mjs +101 -11
- package/scripts/release-version-pr-checks.mjs +26 -2
- package/scripts/release-version.mjs +2 -2
- package/scripts/render-check.mjs +66 -7
- package/scripts/report-frame-check.mjs +12 -0
- package/scripts/report-screenshot.mjs +62 -2
- package/scripts/revisit-render-check.mjs +3 -2
- package/scripts/score.mjs +18 -4
- package/scripts/strip-tracker-citations.mjs +116 -0
- package/scripts/test-run.mjs +3 -3
- package/scripts/third-party-notices.mjs +3 -3
- package/scripts/travelling-predicates.mjs +3 -3
- package/scripts/unexecuted-asserts.mjs +2 -2
- package/scripts/verify-publishable.mjs +2 -2
- package/scripts/write-up-form-census.mjs +1 -1
- package/shared/access-audience.mjs +215 -0
- package/shared/brand.mjs +13 -13
- package/shared/citation-scan.mjs +1 -1
- package/shared/client-door.mjs +7 -7
- package/shared/driver-dir.mjs +1 -1
- package/shared/env-aliases.mjs +0 -48
- package/shared/env-local.mjs +1 -1
- package/shared/identifier-scan.mjs +3 -3
- package/shared/invocation.mjs +1 -1
- package/shared/names-in-force.mjs +2 -0
- package/shared/product-owned-names.mjs +1 -1
- package/shared/register-selection.mjs +1 -1
- package/shared/scope.mjs +5 -5
- package/shared/server-units.mjs +4 -4
- package/shared/store-in-repo.mjs +2 -2
- package/shared/suite-census.mjs +4 -4
- package/shared/tracked-files.mjs +31 -0
- package/shared/tty-style.mjs +1 -1
- package/shared/uspto-index-size.mjs +1 -1
- package/shared/vacuous-pass.mjs +1 -1
- package/skills/clearotron-account/SKILL.md +42 -13
- package/driver/systemd/prelim-driver.path +0 -69
- package/driver/systemd/prelim-driver.service +0 -86
- package/driver/systemd/prelim-driver.timer +0 -14
- package/driver/systemd/prelim-outbox.path +0 -27
- package/driver/systemd/prelim-outbox.service +0 -37
- package/driver/systemd/prelim-outbox.timer +0 -21
- package/node_modules/exceljs/README_zh.md +0 -2878
- package/node_modules/exceljs/dist/LICENSE +0 -22
- package/node_modules/exceljs/dist/es5/csv/csv.js +0 -182
- package/node_modules/exceljs/dist/es5/csv/csv.js.map +0 -1
- package/node_modules/exceljs/dist/es5/csv/line-buffer.js +0 -68
- package/node_modules/exceljs/dist/es5/csv/line-buffer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/csv/stream-converter.js +0 -110
- package/node_modules/exceljs/dist/es5/csv/stream-converter.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/anchor.js +0 -73
- package/node_modules/exceljs/dist/es5/doc/anchor.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/cell.js +0 -961
- package/node_modules/exceljs/dist/es5/doc/cell.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/column.js +0 -274
- package/node_modules/exceljs/dist/es5/doc/column.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/data-validations.js +0 -18
- package/node_modules/exceljs/dist/es5/doc/data-validations.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/defined-names.js +0 -173
- package/node_modules/exceljs/dist/es5/doc/defined-names.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/enums.js +0 -49
- package/node_modules/exceljs/dist/es5/doc/enums.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/image.js +0 -69
- package/node_modules/exceljs/dist/es5/doc/image.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/modelcontainer.js +0 -16
- package/node_modules/exceljs/dist/es5/doc/modelcontainer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/note.js +0 -64
- package/node_modules/exceljs/dist/es5/doc/note.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/range.js +0 -229
- package/node_modules/exceljs/dist/es5/doc/range.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/row.js +0 -382
- package/node_modules/exceljs/dist/es5/doc/row.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/table.js +0 -443
- package/node_modules/exceljs/dist/es5/doc/table.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/workbook.js +0 -202
- package/node_modules/exceljs/dist/es5/doc/workbook.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/worksheet.js +0 -900
- package/node_modules/exceljs/dist/es5/doc/worksheet.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.bare.js +0 -14
- package/node_modules/exceljs/dist/es5/exceljs.bare.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.browser.js +0 -36
- package/node_modules/exceljs/dist/es5/exceljs.browser.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.nodejs.js +0 -15
- package/node_modules/exceljs/dist/es5/exceljs.nodejs.js.map +0 -1
- package/node_modules/exceljs/dist/es5/index.js +0 -15
- package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js +0 -90
- package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js +0 -94
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js +0 -94
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js +0 -362
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js +0 -347
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js +0 -392
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js +0 -652
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/auto-drain.js +0 -18
- package/node_modules/exceljs/dist/es5/utils/auto-drain.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js +0 -15
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js +0 -18
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/cell-matrix.js +0 -149
- package/node_modules/exceljs/dist/es5/utils/cell-matrix.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/col-cache.js +0 -258
- package/node_modules/exceljs/dist/es5/utils/col-cache.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/copy-style.js +0 -43
- package/node_modules/exceljs/dist/es5/utils/copy-style.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/encryptor.js +0 -58
- package/node_modules/exceljs/dist/es5/utils/encryptor.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/iterate-stream.js +0 -46
- package/node_modules/exceljs/dist/es5/utils/iterate-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/parse-sax.js +0 -47
- package/node_modules/exceljs/dist/es5/utils/parse-sax.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/shared-formula.js +0 -42
- package/node_modules/exceljs/dist/es5/utils/shared-formula.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/shared-strings.js +0 -32
- package/node_modules/exceljs/dist/es5/utils/shared-strings.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stream-base64.js +0 -66
- package/node_modules/exceljs/dist/es5/utils/stream-base64.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stream-buf.js +0 -343
- package/node_modules/exceljs/dist/es5/utils/stream-buf.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/string-buf.js +0 -73
- package/node_modules/exceljs/dist/es5/utils/string-buf.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/string-builder.js +0 -32
- package/node_modules/exceljs/dist/es5/utils/string-builder.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js +0 -61
- package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/typed-stack.js +0 -23
- package/node_modules/exceljs/dist/es5/utils/typed-stack.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/under-dash.js +0 -168
- package/node_modules/exceljs/dist/es5/utils/under-dash.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/utils.js +0 -171
- package/node_modules/exceljs/dist/es5/utils/utils.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/xml-stream.js +0 -151
- package/node_modules/exceljs/dist/es5/utils/xml-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/zip-stream.js +0 -79
- package/node_modules/exceljs/dist/es5/utils/zip-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js +0 -230
- package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/rel-type.js +0 -18
- package/node_modules/exceljs/dist/es5/xlsx/rel-type.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js +0 -139
- package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js +0 -85
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js +0 -24
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js +0 -234
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js +0 -103
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js +0 -76
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js +0 -97
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js +0 -107
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js +0 -92
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js +0 -93
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js +0 -112
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js +0 -158
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js +0 -23
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js +0 -65
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js +0 -62
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js +0 -82
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js +0 -98
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js +0 -59
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js +0 -63
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js +0 -67
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js +0 -62
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js +0 -91
- package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js +0 -451
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js +0 -275
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js +0 -25
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js +0 -45
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js +0 -77
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js +0 -42
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +0 -71
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js +0 -43
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +0 -88
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +0 -52
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +0 -43
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +0 -75
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +0 -66
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js +0 -78
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js +0 -247
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js +0 -69
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js +0 -126
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js +0 -50
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js +0 -26
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js +0 -52
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js +0 -24
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js +0 -46
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js +0 -99
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js +0 -45
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js +0 -37
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js +0 -128
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js +0 -83
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js +0 -84
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js +0 -190
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js +0 -513
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js +0 -58
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js +0 -98
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js +0 -92
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js +0 -99
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js +0 -114
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js +0 -39
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js +0 -139
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js +0 -185
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js +0 -66
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js +0 -106
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js +0 -308
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js +0 -175
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js +0 -59
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js +0 -118
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js +0 -612
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js +0 -46
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js +0 -75
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js +0 -89
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js +0 -42
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js +0 -123
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xlsx.js +0 -697
- package/node_modules/exceljs/dist/es5/xlsx/xlsx.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js +0 -5
- package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js.map +0 -1
- package/node_modules/exceljs/dist/exceljs.bare.js +0 -55253
- package/node_modules/exceljs/dist/exceljs.bare.js.map +0 -761
- package/node_modules/exceljs/dist/exceljs.bare.min.js +0 -45
- package/node_modules/exceljs/dist/exceljs.bare.min.js.map +0 -1
- package/node_modules/exceljs/dist/exceljs.js +0 -59900
- package/node_modules/exceljs/dist/exceljs.js.map +0 -1083
- package/node_modules/exceljs/dist/exceljs.min.js +0 -45
- package/node_modules/exceljs/dist/exceljs.min.js.map +0 -1
- package/scripts/deploy-test.sh +0 -309
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
const BaseXform = require('../base-xform');
|
|
4
|
-
class TablePartXform extends BaseXform {
|
|
5
|
-
get tag() {
|
|
6
|
-
return 'tablePart';
|
|
7
|
-
}
|
|
8
|
-
render(xmlStream, model) {
|
|
9
|
-
if (model) {
|
|
10
|
-
xmlStream.leafNode(this.tag, {
|
|
11
|
-
'r:id': model.rId
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
parseOpen(node) {
|
|
16
|
-
switch (node.name) {
|
|
17
|
-
case this.tag:
|
|
18
|
-
this.model = {
|
|
19
|
-
rId: node.attributes['r:id']
|
|
20
|
-
};
|
|
21
|
-
return true;
|
|
22
|
-
default:
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
parseText() {}
|
|
27
|
-
parseClose() {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
module.exports = TablePartXform;
|
|
32
|
-
//# sourceMappingURL=table-part-xform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table-part-xform.js","names":["BaseXform","require","TablePartXform","tag","render","xmlStream","model","leafNode","rId","parseOpen","node","name","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/sheet/table-part-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\n\nclass TablePartXform extends BaseXform {\n get tag() {\n return 'tablePart';\n }\n\n render(xmlStream, model) {\n if (model) {\n xmlStream.leafNode(this.tag, {'r:id': model.rId});\n }\n }\n\n parseOpen(node) {\n switch (node.name) {\n case this.tag:\n this.model = {\n rId: node.attributes['r:id'],\n };\n return true;\n default:\n return false;\n }\n }\n\n parseText() {}\n\n parseClose() {\n return false;\n }\n}\n\nmodule.exports = TablePartXform;\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,cAAc,SAASF,SAAS,CAAC;EACrC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,WAAW;EACpB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvB,IAAIA,KAAK,EAAE;MACTD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;QAAC,MAAM,EAAEG,KAAK,CAACE;MAAG,CAAC,CAAC;IACnD;EACF;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,QAAQA,IAAI,CAACC,IAAI;MACf,KAAK,IAAI,CAACR,GAAG;QACX,IAAI,CAACG,KAAK,GAAG;UACXE,GAAG,EAAEE,IAAI,CAACE,UAAU,CAAC,MAAM;QAC7B,CAAC;QACD,OAAO,IAAI;MACb;QACE,OAAO,KAAK;IAChB;EACF;EAEAC,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGd,cAAc"}
|
|
@@ -1,513 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
const _ = require('../../../utils/under-dash');
|
|
4
|
-
const colCache = require('../../../utils/col-cache');
|
|
5
|
-
const XmlStream = require('../../../utils/xml-stream');
|
|
6
|
-
const RelType = require('../../rel-type');
|
|
7
|
-
const Merges = require('./merges');
|
|
8
|
-
const BaseXform = require('../base-xform');
|
|
9
|
-
const ListXform = require('../list-xform');
|
|
10
|
-
const RowXform = require('./row-xform');
|
|
11
|
-
const ColXform = require('./col-xform');
|
|
12
|
-
const DimensionXform = require('./dimension-xform');
|
|
13
|
-
const HyperlinkXform = require('./hyperlink-xform');
|
|
14
|
-
const MergeCellXform = require('./merge-cell-xform');
|
|
15
|
-
const DataValidationsXform = require('./data-validations-xform');
|
|
16
|
-
const SheetPropertiesXform = require('./sheet-properties-xform');
|
|
17
|
-
const SheetFormatPropertiesXform = require('./sheet-format-properties-xform');
|
|
18
|
-
const SheetViewXform = require('./sheet-view-xform');
|
|
19
|
-
const SheetProtectionXform = require('./sheet-protection-xform');
|
|
20
|
-
const PageMarginsXform = require('./page-margins-xform');
|
|
21
|
-
const PageSetupXform = require('./page-setup-xform');
|
|
22
|
-
const PrintOptionsXform = require('./print-options-xform');
|
|
23
|
-
const AutoFilterXform = require('./auto-filter-xform');
|
|
24
|
-
const PictureXform = require('./picture-xform');
|
|
25
|
-
const DrawingXform = require('./drawing-xform');
|
|
26
|
-
const TablePartXform = require('./table-part-xform');
|
|
27
|
-
const RowBreaksXform = require('./row-breaks-xform');
|
|
28
|
-
const HeaderFooterXform = require('./header-footer-xform');
|
|
29
|
-
const ConditionalFormattingsXform = require('./cf/conditional-formattings-xform');
|
|
30
|
-
const ExtListXform = require('./ext-lst-xform');
|
|
31
|
-
const mergeRule = (rule, extRule) => {
|
|
32
|
-
Object.keys(extRule).forEach(key => {
|
|
33
|
-
const value = rule[key];
|
|
34
|
-
const extValue = extRule[key];
|
|
35
|
-
if (value === undefined && extValue !== undefined) {
|
|
36
|
-
rule[key] = extValue;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
const mergeConditionalFormattings = (model, extModel) => {
|
|
41
|
-
// conditional formattings are rendered in worksheet.conditionalFormatting and also in
|
|
42
|
-
// worksheet.extLst.ext.x14:conditionalFormattings
|
|
43
|
-
// some (e.g. dataBar) are even spread across both!
|
|
44
|
-
if (!extModel || !extModel.length) {
|
|
45
|
-
return model;
|
|
46
|
-
}
|
|
47
|
-
if (!model || !model.length) {
|
|
48
|
-
return extModel;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// index model rules by x14Id
|
|
52
|
-
const cfMap = {};
|
|
53
|
-
const ruleMap = {};
|
|
54
|
-
model.forEach(cf => {
|
|
55
|
-
cfMap[cf.ref] = cf;
|
|
56
|
-
cf.rules.forEach(rule => {
|
|
57
|
-
const {
|
|
58
|
-
x14Id
|
|
59
|
-
} = rule;
|
|
60
|
-
if (x14Id) {
|
|
61
|
-
ruleMap[x14Id] = rule;
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
extModel.forEach(extCf => {
|
|
66
|
-
extCf.rules.forEach(extRule => {
|
|
67
|
-
const rule = ruleMap[extRule.x14Id];
|
|
68
|
-
if (rule) {
|
|
69
|
-
// merge with matching rule
|
|
70
|
-
mergeRule(rule, extRule);
|
|
71
|
-
} else if (cfMap[extCf.ref]) {
|
|
72
|
-
// reuse existing cf ref
|
|
73
|
-
cfMap[extCf.ref].rules.push(extRule);
|
|
74
|
-
} else {
|
|
75
|
-
// create new cf
|
|
76
|
-
model.push({
|
|
77
|
-
ref: extCf.ref,
|
|
78
|
-
rules: [extRule]
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
// need to cope with rules in extModel that don't exist in model
|
|
85
|
-
return model;
|
|
86
|
-
};
|
|
87
|
-
class WorkSheetXform extends BaseXform {
|
|
88
|
-
constructor(options) {
|
|
89
|
-
super();
|
|
90
|
-
const {
|
|
91
|
-
maxRows,
|
|
92
|
-
maxCols,
|
|
93
|
-
ignoreNodes
|
|
94
|
-
} = options || {};
|
|
95
|
-
this.ignoreNodes = ignoreNodes || [];
|
|
96
|
-
this.map = {
|
|
97
|
-
sheetPr: new SheetPropertiesXform(),
|
|
98
|
-
dimension: new DimensionXform(),
|
|
99
|
-
sheetViews: new ListXform({
|
|
100
|
-
tag: 'sheetViews',
|
|
101
|
-
count: false,
|
|
102
|
-
childXform: new SheetViewXform()
|
|
103
|
-
}),
|
|
104
|
-
sheetFormatPr: new SheetFormatPropertiesXform(),
|
|
105
|
-
cols: new ListXform({
|
|
106
|
-
tag: 'cols',
|
|
107
|
-
count: false,
|
|
108
|
-
childXform: new ColXform()
|
|
109
|
-
}),
|
|
110
|
-
sheetData: new ListXform({
|
|
111
|
-
tag: 'sheetData',
|
|
112
|
-
count: false,
|
|
113
|
-
empty: true,
|
|
114
|
-
childXform: new RowXform({
|
|
115
|
-
maxItems: maxCols
|
|
116
|
-
}),
|
|
117
|
-
maxItems: maxRows
|
|
118
|
-
}),
|
|
119
|
-
autoFilter: new AutoFilterXform(),
|
|
120
|
-
mergeCells: new ListXform({
|
|
121
|
-
tag: 'mergeCells',
|
|
122
|
-
count: true,
|
|
123
|
-
childXform: new MergeCellXform()
|
|
124
|
-
}),
|
|
125
|
-
rowBreaks: new RowBreaksXform(),
|
|
126
|
-
hyperlinks: new ListXform({
|
|
127
|
-
tag: 'hyperlinks',
|
|
128
|
-
count: false,
|
|
129
|
-
childXform: new HyperlinkXform()
|
|
130
|
-
}),
|
|
131
|
-
pageMargins: new PageMarginsXform(),
|
|
132
|
-
dataValidations: new DataValidationsXform(),
|
|
133
|
-
pageSetup: new PageSetupXform(),
|
|
134
|
-
headerFooter: new HeaderFooterXform(),
|
|
135
|
-
printOptions: new PrintOptionsXform(),
|
|
136
|
-
picture: new PictureXform(),
|
|
137
|
-
drawing: new DrawingXform(),
|
|
138
|
-
sheetProtection: new SheetProtectionXform(),
|
|
139
|
-
tableParts: new ListXform({
|
|
140
|
-
tag: 'tableParts',
|
|
141
|
-
count: true,
|
|
142
|
-
childXform: new TablePartXform()
|
|
143
|
-
}),
|
|
144
|
-
conditionalFormatting: new ConditionalFormattingsXform(),
|
|
145
|
-
extLst: new ExtListXform()
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
prepare(model, options) {
|
|
149
|
-
options.merges = new Merges();
|
|
150
|
-
model.hyperlinks = options.hyperlinks = [];
|
|
151
|
-
model.comments = options.comments = [];
|
|
152
|
-
options.formulae = {};
|
|
153
|
-
options.siFormulae = 0;
|
|
154
|
-
this.map.cols.prepare(model.cols, options);
|
|
155
|
-
this.map.sheetData.prepare(model.rows, options);
|
|
156
|
-
this.map.conditionalFormatting.prepare(model.conditionalFormattings, options);
|
|
157
|
-
model.mergeCells = options.merges.mergeCells;
|
|
158
|
-
|
|
159
|
-
// prepare relationships
|
|
160
|
-
const rels = model.rels = [];
|
|
161
|
-
function nextRid(r) {
|
|
162
|
-
return `rId${r.length + 1}`;
|
|
163
|
-
}
|
|
164
|
-
model.hyperlinks.forEach(hyperlink => {
|
|
165
|
-
const rId = nextRid(rels);
|
|
166
|
-
hyperlink.rId = rId;
|
|
167
|
-
rels.push({
|
|
168
|
-
Id: rId,
|
|
169
|
-
Type: RelType.Hyperlink,
|
|
170
|
-
Target: hyperlink.target,
|
|
171
|
-
TargetMode: 'External'
|
|
172
|
-
});
|
|
173
|
-
});
|
|
174
|
-
|
|
175
|
-
// prepare comment relationships
|
|
176
|
-
if (model.comments.length > 0) {
|
|
177
|
-
const comment = {
|
|
178
|
-
Id: nextRid(rels),
|
|
179
|
-
Type: RelType.Comments,
|
|
180
|
-
Target: `../comments${model.id}.xml`
|
|
181
|
-
};
|
|
182
|
-
rels.push(comment);
|
|
183
|
-
const vmlDrawing = {
|
|
184
|
-
Id: nextRid(rels),
|
|
185
|
-
Type: RelType.VmlDrawing,
|
|
186
|
-
Target: `../drawings/vmlDrawing${model.id}.vml`
|
|
187
|
-
};
|
|
188
|
-
rels.push(vmlDrawing);
|
|
189
|
-
model.comments.forEach(item => {
|
|
190
|
-
item.refAddress = colCache.decodeAddress(item.ref);
|
|
191
|
-
});
|
|
192
|
-
options.commentRefs.push({
|
|
193
|
-
commentName: `comments${model.id}`,
|
|
194
|
-
vmlDrawing: `vmlDrawing${model.id}`
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
const drawingRelsHash = [];
|
|
198
|
-
let bookImage;
|
|
199
|
-
model.media.forEach(medium => {
|
|
200
|
-
if (medium.type === 'background') {
|
|
201
|
-
const rId = nextRid(rels);
|
|
202
|
-
bookImage = options.media[medium.imageId];
|
|
203
|
-
rels.push({
|
|
204
|
-
Id: rId,
|
|
205
|
-
Type: RelType.Image,
|
|
206
|
-
Target: `../media/${bookImage.name}.${bookImage.extension}`
|
|
207
|
-
});
|
|
208
|
-
model.background = {
|
|
209
|
-
rId
|
|
210
|
-
};
|
|
211
|
-
model.image = options.media[medium.imageId];
|
|
212
|
-
} else if (medium.type === 'image') {
|
|
213
|
-
let {
|
|
214
|
-
drawing
|
|
215
|
-
} = model;
|
|
216
|
-
bookImage = options.media[medium.imageId];
|
|
217
|
-
if (!drawing) {
|
|
218
|
-
drawing = model.drawing = {
|
|
219
|
-
rId: nextRid(rels),
|
|
220
|
-
name: `drawing${++options.drawingsCount}`,
|
|
221
|
-
anchors: [],
|
|
222
|
-
rels: []
|
|
223
|
-
};
|
|
224
|
-
options.drawings.push(drawing);
|
|
225
|
-
rels.push({
|
|
226
|
-
Id: drawing.rId,
|
|
227
|
-
Type: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing',
|
|
228
|
-
Target: `../drawings/${drawing.name}.xml`
|
|
229
|
-
});
|
|
230
|
-
}
|
|
231
|
-
let rIdImage = this.preImageId === medium.imageId ? drawingRelsHash[medium.imageId] : drawingRelsHash[drawing.rels.length];
|
|
232
|
-
if (!rIdImage) {
|
|
233
|
-
rIdImage = nextRid(drawing.rels);
|
|
234
|
-
drawingRelsHash[drawing.rels.length] = rIdImage;
|
|
235
|
-
drawing.rels.push({
|
|
236
|
-
Id: rIdImage,
|
|
237
|
-
Type: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image',
|
|
238
|
-
Target: `../media/${bookImage.name}.${bookImage.extension}`
|
|
239
|
-
});
|
|
240
|
-
}
|
|
241
|
-
const anchor = {
|
|
242
|
-
picture: {
|
|
243
|
-
rId: rIdImage
|
|
244
|
-
},
|
|
245
|
-
range: medium.range
|
|
246
|
-
};
|
|
247
|
-
if (medium.hyperlinks && medium.hyperlinks.hyperlink) {
|
|
248
|
-
const rIdHyperLink = nextRid(drawing.rels);
|
|
249
|
-
drawingRelsHash[drawing.rels.length] = rIdHyperLink;
|
|
250
|
-
anchor.picture.hyperlinks = {
|
|
251
|
-
tooltip: medium.hyperlinks.tooltip,
|
|
252
|
-
rId: rIdHyperLink
|
|
253
|
-
};
|
|
254
|
-
drawing.rels.push({
|
|
255
|
-
Id: rIdHyperLink,
|
|
256
|
-
Type: RelType.Hyperlink,
|
|
257
|
-
Target: medium.hyperlinks.hyperlink,
|
|
258
|
-
TargetMode: 'External'
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
this.preImageId = medium.imageId;
|
|
262
|
-
drawing.anchors.push(anchor);
|
|
263
|
-
}
|
|
264
|
-
});
|
|
265
|
-
|
|
266
|
-
// prepare tables
|
|
267
|
-
model.tables.forEach(table => {
|
|
268
|
-
// relationships
|
|
269
|
-
const rId = nextRid(rels);
|
|
270
|
-
table.rId = rId;
|
|
271
|
-
rels.push({
|
|
272
|
-
Id: rId,
|
|
273
|
-
Type: RelType.Table,
|
|
274
|
-
Target: `../tables/${table.target}`
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
// dynamic styles
|
|
278
|
-
table.columns.forEach(column => {
|
|
279
|
-
const {
|
|
280
|
-
style
|
|
281
|
-
} = column;
|
|
282
|
-
if (style) {
|
|
283
|
-
column.dxfId = options.styles.addDxfStyle(style);
|
|
284
|
-
}
|
|
285
|
-
});
|
|
286
|
-
});
|
|
287
|
-
|
|
288
|
-
// prepare ext items
|
|
289
|
-
this.map.extLst.prepare(model, options);
|
|
290
|
-
}
|
|
291
|
-
render(xmlStream, model) {
|
|
292
|
-
xmlStream.openXml(XmlStream.StdDocAttributes);
|
|
293
|
-
xmlStream.openNode('worksheet', WorkSheetXform.WORKSHEET_ATTRIBUTES);
|
|
294
|
-
const sheetFormatPropertiesModel = model.properties ? {
|
|
295
|
-
defaultRowHeight: model.properties.defaultRowHeight,
|
|
296
|
-
dyDescent: model.properties.dyDescent,
|
|
297
|
-
outlineLevelCol: model.properties.outlineLevelCol,
|
|
298
|
-
outlineLevelRow: model.properties.outlineLevelRow
|
|
299
|
-
} : undefined;
|
|
300
|
-
if (model.properties && model.properties.defaultColWidth) {
|
|
301
|
-
sheetFormatPropertiesModel.defaultColWidth = model.properties.defaultColWidth;
|
|
302
|
-
}
|
|
303
|
-
const sheetPropertiesModel = {
|
|
304
|
-
outlineProperties: model.properties && model.properties.outlineProperties,
|
|
305
|
-
tabColor: model.properties && model.properties.tabColor,
|
|
306
|
-
pageSetup: model.pageSetup && model.pageSetup.fitToPage ? {
|
|
307
|
-
fitToPage: model.pageSetup.fitToPage
|
|
308
|
-
} : undefined
|
|
309
|
-
};
|
|
310
|
-
const pageMarginsModel = model.pageSetup && model.pageSetup.margins;
|
|
311
|
-
const printOptionsModel = {
|
|
312
|
-
showRowColHeaders: model.pageSetup && model.pageSetup.showRowColHeaders,
|
|
313
|
-
showGridLines: model.pageSetup && model.pageSetup.showGridLines,
|
|
314
|
-
horizontalCentered: model.pageSetup && model.pageSetup.horizontalCentered,
|
|
315
|
-
verticalCentered: model.pageSetup && model.pageSetup.verticalCentered
|
|
316
|
-
};
|
|
317
|
-
const sheetProtectionModel = model.sheetProtection;
|
|
318
|
-
this.map.sheetPr.render(xmlStream, sheetPropertiesModel);
|
|
319
|
-
this.map.dimension.render(xmlStream, model.dimensions);
|
|
320
|
-
this.map.sheetViews.render(xmlStream, model.views);
|
|
321
|
-
this.map.sheetFormatPr.render(xmlStream, sheetFormatPropertiesModel);
|
|
322
|
-
this.map.cols.render(xmlStream, model.cols);
|
|
323
|
-
this.map.sheetData.render(xmlStream, model.rows);
|
|
324
|
-
this.map.sheetProtection.render(xmlStream, sheetProtectionModel); // Note: must be after sheetData and before autoFilter
|
|
325
|
-
this.map.autoFilter.render(xmlStream, model.autoFilter);
|
|
326
|
-
this.map.mergeCells.render(xmlStream, model.mergeCells);
|
|
327
|
-
this.map.conditionalFormatting.render(xmlStream, model.conditionalFormattings); // Note: must be before dataValidations
|
|
328
|
-
this.map.dataValidations.render(xmlStream, model.dataValidations);
|
|
329
|
-
|
|
330
|
-
// For some reason hyperlinks have to be after the data validations
|
|
331
|
-
this.map.hyperlinks.render(xmlStream, model.hyperlinks);
|
|
332
|
-
this.map.printOptions.render(xmlStream, printOptionsModel); // Note: must be before pageMargins
|
|
333
|
-
this.map.pageMargins.render(xmlStream, pageMarginsModel);
|
|
334
|
-
this.map.pageSetup.render(xmlStream, model.pageSetup);
|
|
335
|
-
this.map.headerFooter.render(xmlStream, model.headerFooter);
|
|
336
|
-
this.map.rowBreaks.render(xmlStream, model.rowBreaks);
|
|
337
|
-
this.map.drawing.render(xmlStream, model.drawing); // Note: must be after rowBreaks
|
|
338
|
-
this.map.picture.render(xmlStream, model.background); // Note: must be after drawing
|
|
339
|
-
this.map.tableParts.render(xmlStream, model.tables);
|
|
340
|
-
this.map.extLst.render(xmlStream, model);
|
|
341
|
-
if (model.rels) {
|
|
342
|
-
// add a <legacyDrawing /> node for each comment
|
|
343
|
-
model.rels.forEach(rel => {
|
|
344
|
-
if (rel.Type === RelType.VmlDrawing) {
|
|
345
|
-
xmlStream.leafNode('legacyDrawing', {
|
|
346
|
-
'r:id': rel.Id
|
|
347
|
-
});
|
|
348
|
-
}
|
|
349
|
-
});
|
|
350
|
-
}
|
|
351
|
-
xmlStream.closeNode();
|
|
352
|
-
}
|
|
353
|
-
parseOpen(node) {
|
|
354
|
-
if (this.parser) {
|
|
355
|
-
this.parser.parseOpen(node);
|
|
356
|
-
return true;
|
|
357
|
-
}
|
|
358
|
-
if (node.name === 'worksheet') {
|
|
359
|
-
_.each(this.map, xform => {
|
|
360
|
-
xform.reset();
|
|
361
|
-
});
|
|
362
|
-
return true;
|
|
363
|
-
}
|
|
364
|
-
if (this.map[node.name] && !this.ignoreNodes.includes(node.name)) {
|
|
365
|
-
this.parser = this.map[node.name];
|
|
366
|
-
this.parser.parseOpen(node);
|
|
367
|
-
}
|
|
368
|
-
return true;
|
|
369
|
-
}
|
|
370
|
-
parseText(text) {
|
|
371
|
-
if (this.parser) {
|
|
372
|
-
this.parser.parseText(text);
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
parseClose(name) {
|
|
376
|
-
if (this.parser) {
|
|
377
|
-
if (!this.parser.parseClose(name)) {
|
|
378
|
-
this.parser = undefined;
|
|
379
|
-
}
|
|
380
|
-
return true;
|
|
381
|
-
}
|
|
382
|
-
switch (name) {
|
|
383
|
-
case 'worksheet':
|
|
384
|
-
{
|
|
385
|
-
const properties = this.map.sheetFormatPr.model || {};
|
|
386
|
-
if (this.map.sheetPr.model && this.map.sheetPr.model.tabColor) {
|
|
387
|
-
properties.tabColor = this.map.sheetPr.model.tabColor;
|
|
388
|
-
}
|
|
389
|
-
if (this.map.sheetPr.model && this.map.sheetPr.model.outlineProperties) {
|
|
390
|
-
properties.outlineProperties = this.map.sheetPr.model.outlineProperties;
|
|
391
|
-
}
|
|
392
|
-
const sheetProperties = {
|
|
393
|
-
fitToPage: this.map.sheetPr.model && this.map.sheetPr.model.pageSetup && this.map.sheetPr.model.pageSetup.fitToPage || false,
|
|
394
|
-
margins: this.map.pageMargins.model
|
|
395
|
-
};
|
|
396
|
-
const pageSetup = Object.assign(sheetProperties, this.map.pageSetup.model, this.map.printOptions.model);
|
|
397
|
-
const conditionalFormattings = mergeConditionalFormattings(this.map.conditionalFormatting.model, this.map.extLst.model && this.map.extLst.model['x14:conditionalFormattings']);
|
|
398
|
-
this.model = {
|
|
399
|
-
dimensions: this.map.dimension.model,
|
|
400
|
-
cols: this.map.cols.model,
|
|
401
|
-
rows: this.map.sheetData.model,
|
|
402
|
-
mergeCells: this.map.mergeCells.model,
|
|
403
|
-
hyperlinks: this.map.hyperlinks.model,
|
|
404
|
-
dataValidations: this.map.dataValidations.model,
|
|
405
|
-
properties,
|
|
406
|
-
views: this.map.sheetViews.model,
|
|
407
|
-
pageSetup,
|
|
408
|
-
headerFooter: this.map.headerFooter.model,
|
|
409
|
-
background: this.map.picture.model,
|
|
410
|
-
drawing: this.map.drawing.model,
|
|
411
|
-
tables: this.map.tableParts.model,
|
|
412
|
-
conditionalFormattings
|
|
413
|
-
};
|
|
414
|
-
if (this.map.autoFilter.model) {
|
|
415
|
-
this.model.autoFilter = this.map.autoFilter.model;
|
|
416
|
-
}
|
|
417
|
-
if (this.map.sheetProtection.model) {
|
|
418
|
-
this.model.sheetProtection = this.map.sheetProtection.model;
|
|
419
|
-
}
|
|
420
|
-
return false;
|
|
421
|
-
}
|
|
422
|
-
default:
|
|
423
|
-
// not quite sure how we get here!
|
|
424
|
-
return true;
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
reconcile(model, options) {
|
|
428
|
-
// options.merges = new Merges();
|
|
429
|
-
// options.merges.reconcile(model.mergeCells, model.rows);
|
|
430
|
-
const rels = (model.relationships || []).reduce((h, rel) => {
|
|
431
|
-
h[rel.Id] = rel;
|
|
432
|
-
if (rel.Type === RelType.Comments) {
|
|
433
|
-
model.comments = options.comments[rel.Target].comments;
|
|
434
|
-
}
|
|
435
|
-
if (rel.Type === RelType.VmlDrawing && model.comments && model.comments.length) {
|
|
436
|
-
const vmlComment = options.vmlDrawings[rel.Target].comments;
|
|
437
|
-
model.comments.forEach((comment, index) => {
|
|
438
|
-
comment.note = Object.assign({}, comment.note, vmlComment[index]);
|
|
439
|
-
});
|
|
440
|
-
}
|
|
441
|
-
return h;
|
|
442
|
-
}, {});
|
|
443
|
-
options.commentsMap = (model.comments || []).reduce((h, comment) => {
|
|
444
|
-
if (comment.ref) {
|
|
445
|
-
h[comment.ref] = comment;
|
|
446
|
-
}
|
|
447
|
-
return h;
|
|
448
|
-
}, {});
|
|
449
|
-
options.hyperlinkMap = (model.hyperlinks || []).reduce((h, hyperlink) => {
|
|
450
|
-
if (hyperlink.rId) {
|
|
451
|
-
h[hyperlink.address] = rels[hyperlink.rId].Target;
|
|
452
|
-
}
|
|
453
|
-
return h;
|
|
454
|
-
}, {});
|
|
455
|
-
options.formulae = {};
|
|
456
|
-
|
|
457
|
-
// compact the rows and cells
|
|
458
|
-
model.rows = model.rows && model.rows.filter(Boolean) || [];
|
|
459
|
-
model.rows.forEach(row => {
|
|
460
|
-
row.cells = row.cells && row.cells.filter(Boolean) || [];
|
|
461
|
-
});
|
|
462
|
-
this.map.cols.reconcile(model.cols, options);
|
|
463
|
-
this.map.sheetData.reconcile(model.rows, options);
|
|
464
|
-
this.map.conditionalFormatting.reconcile(model.conditionalFormattings, options);
|
|
465
|
-
model.media = [];
|
|
466
|
-
if (model.drawing) {
|
|
467
|
-
const drawingRel = rels[model.drawing.rId];
|
|
468
|
-
const match = drawingRel.Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);
|
|
469
|
-
if (match) {
|
|
470
|
-
const drawingName = match[1];
|
|
471
|
-
const drawing = options.drawings[drawingName];
|
|
472
|
-
drawing.anchors.forEach(anchor => {
|
|
473
|
-
if (anchor.medium) {
|
|
474
|
-
const image = {
|
|
475
|
-
type: 'image',
|
|
476
|
-
imageId: anchor.medium.index,
|
|
477
|
-
range: anchor.range,
|
|
478
|
-
hyperlinks: anchor.picture.hyperlinks
|
|
479
|
-
};
|
|
480
|
-
model.media.push(image);
|
|
481
|
-
}
|
|
482
|
-
});
|
|
483
|
-
}
|
|
484
|
-
}
|
|
485
|
-
const backgroundRel = model.background && rels[model.background.rId];
|
|
486
|
-
if (backgroundRel) {
|
|
487
|
-
const target = backgroundRel.Target.split('/media/')[1];
|
|
488
|
-
const imageId = options.mediaIndex && options.mediaIndex[target];
|
|
489
|
-
if (imageId !== undefined) {
|
|
490
|
-
model.media.push({
|
|
491
|
-
type: 'background',
|
|
492
|
-
imageId
|
|
493
|
-
});
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
model.tables = (model.tables || []).map(tablePart => {
|
|
497
|
-
const rel = rels[tablePart.rId];
|
|
498
|
-
return options.tables[rel.Target];
|
|
499
|
-
});
|
|
500
|
-
delete model.relationships;
|
|
501
|
-
delete model.hyperlinks;
|
|
502
|
-
delete model.comments;
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
WorkSheetXform.WORKSHEET_ATTRIBUTES = {
|
|
506
|
-
xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',
|
|
507
|
-
'xmlns:r': 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
|
|
508
|
-
'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',
|
|
509
|
-
'mc:Ignorable': 'x14ac',
|
|
510
|
-
'xmlns:x14ac': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac'
|
|
511
|
-
};
|
|
512
|
-
module.exports = WorkSheetXform;
|
|
513
|
-
//# sourceMappingURL=worksheet-xform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worksheet-xform.js","names":["_","require","colCache","XmlStream","RelType","Merges","BaseXform","ListXform","RowXform","ColXform","DimensionXform","HyperlinkXform","MergeCellXform","DataValidationsXform","SheetPropertiesXform","SheetFormatPropertiesXform","SheetViewXform","SheetProtectionXform","PageMarginsXform","PageSetupXform","PrintOptionsXform","AutoFilterXform","PictureXform","DrawingXform","TablePartXform","RowBreaksXform","HeaderFooterXform","ConditionalFormattingsXform","ExtListXform","mergeRule","rule","extRule","Object","keys","forEach","key","value","extValue","undefined","mergeConditionalFormattings","model","extModel","length","cfMap","ruleMap","cf","ref","rules","x14Id","extCf","push","WorkSheetXform","constructor","options","maxRows","maxCols","ignoreNodes","map","sheetPr","dimension","sheetViews","tag","count","childXform","sheetFormatPr","cols","sheetData","empty","maxItems","autoFilter","mergeCells","rowBreaks","hyperlinks","pageMargins","dataValidations","pageSetup","headerFooter","printOptions","picture","drawing","sheetProtection","tableParts","conditionalFormatting","extLst","prepare","merges","comments","formulae","siFormulae","rows","conditionalFormattings","rels","nextRid","r","hyperlink","rId","Id","Type","Hyperlink","Target","target","TargetMode","comment","Comments","id","vmlDrawing","VmlDrawing","item","refAddress","decodeAddress","commentRefs","commentName","drawingRelsHash","bookImage","media","medium","type","imageId","Image","name","extension","background","image","drawingsCount","anchors","drawings","rIdImage","preImageId","anchor","range","rIdHyperLink","tooltip","tables","table","Table","columns","column","style","dxfId","styles","addDxfStyle","render","xmlStream","openXml","StdDocAttributes","openNode","WORKSHEET_ATTRIBUTES","sheetFormatPropertiesModel","properties","defaultRowHeight","dyDescent","outlineLevelCol","outlineLevelRow","defaultColWidth","sheetPropertiesModel","outlineProperties","tabColor","fitToPage","pageMarginsModel","margins","printOptionsModel","showRowColHeaders","showGridLines","horizontalCentered","verticalCentered","sheetProtectionModel","dimensions","views","rel","leafNode","closeNode","parseOpen","node","parser","each","xform","reset","includes","parseText","text","parseClose","sheetProperties","assign","reconcile","relationships","reduce","h","vmlComment","vmlDrawings","index","note","commentsMap","hyperlinkMap","address","filter","Boolean","row","cells","drawingRel","match","drawingName","backgroundRel","split","mediaIndex","tablePart","xmlns","module","exports"],"sources":["../../../../../lib/xlsx/xform/sheet/worksheet-xform.js"],"sourcesContent":["const _ = require('../../../utils/under-dash');\n\nconst colCache = require('../../../utils/col-cache');\nconst XmlStream = require('../../../utils/xml-stream');\n\nconst RelType = require('../../rel-type');\n\nconst Merges = require('./merges');\n\nconst BaseXform = require('../base-xform');\nconst ListXform = require('../list-xform');\nconst RowXform = require('./row-xform');\nconst ColXform = require('./col-xform');\nconst DimensionXform = require('./dimension-xform');\nconst HyperlinkXform = require('./hyperlink-xform');\nconst MergeCellXform = require('./merge-cell-xform');\nconst DataValidationsXform = require('./data-validations-xform');\nconst SheetPropertiesXform = require('./sheet-properties-xform');\nconst SheetFormatPropertiesXform = require('./sheet-format-properties-xform');\nconst SheetViewXform = require('./sheet-view-xform');\nconst SheetProtectionXform = require('./sheet-protection-xform');\nconst PageMarginsXform = require('./page-margins-xform');\nconst PageSetupXform = require('./page-setup-xform');\nconst PrintOptionsXform = require('./print-options-xform');\nconst AutoFilterXform = require('./auto-filter-xform');\nconst PictureXform = require('./picture-xform');\nconst DrawingXform = require('./drawing-xform');\nconst TablePartXform = require('./table-part-xform');\nconst RowBreaksXform = require('./row-breaks-xform');\nconst HeaderFooterXform = require('./header-footer-xform');\nconst ConditionalFormattingsXform = require('./cf/conditional-formattings-xform');\nconst ExtListXform = require('./ext-lst-xform');\n\nconst mergeRule = (rule, extRule) => {\n Object.keys(extRule).forEach(key => {\n const value = rule[key];\n const extValue = extRule[key];\n if (value === undefined && extValue !== undefined) {\n rule[key] = extValue;\n }\n });\n};\n\nconst mergeConditionalFormattings = (model, extModel) => {\n // conditional formattings are rendered in worksheet.conditionalFormatting and also in\n // worksheet.extLst.ext.x14:conditionalFormattings\n // some (e.g. dataBar) are even spread across both!\n if (!extModel || !extModel.length) {\n return model;\n }\n if (!model || !model.length) {\n return extModel;\n }\n\n // index model rules by x14Id\n const cfMap = {};\n const ruleMap = {};\n model.forEach(cf => {\n cfMap[cf.ref] = cf;\n cf.rules.forEach(rule => {\n const {x14Id} = rule;\n if (x14Id) {\n ruleMap[x14Id] = rule;\n }\n });\n });\n\n extModel.forEach(extCf => {\n extCf.rules.forEach(extRule => {\n const rule = ruleMap[extRule.x14Id];\n if (rule) {\n // merge with matching rule\n mergeRule(rule, extRule);\n } else if (cfMap[extCf.ref]) {\n // reuse existing cf ref\n cfMap[extCf.ref].rules.push(extRule);\n } else {\n // create new cf\n model.push({\n ref: extCf.ref,\n rules: [extRule],\n });\n }\n });\n });\n\n // need to cope with rules in extModel that don't exist in model\n return model;\n};\n\nclass WorkSheetXform extends BaseXform {\n constructor(options) {\n super();\n\n const {maxRows, maxCols, ignoreNodes} = options || {};\n\n this.ignoreNodes = ignoreNodes || [];\n\n this.map = {\n sheetPr: new SheetPropertiesXform(),\n dimension: new DimensionXform(),\n sheetViews: new ListXform({\n tag: 'sheetViews',\n count: false,\n childXform: new SheetViewXform(),\n }),\n sheetFormatPr: new SheetFormatPropertiesXform(),\n cols: new ListXform({tag: 'cols', count: false, childXform: new ColXform()}),\n sheetData: new ListXform({\n tag: 'sheetData',\n count: false,\n empty: true,\n childXform: new RowXform({maxItems: maxCols}),\n maxItems: maxRows,\n }),\n autoFilter: new AutoFilterXform(),\n mergeCells: new ListXform({tag: 'mergeCells', count: true, childXform: new MergeCellXform()}),\n rowBreaks: new RowBreaksXform(),\n hyperlinks: new ListXform({\n tag: 'hyperlinks',\n count: false,\n childXform: new HyperlinkXform(),\n }),\n pageMargins: new PageMarginsXform(),\n dataValidations: new DataValidationsXform(),\n pageSetup: new PageSetupXform(),\n headerFooter: new HeaderFooterXform(),\n printOptions: new PrintOptionsXform(),\n picture: new PictureXform(),\n drawing: new DrawingXform(),\n sheetProtection: new SheetProtectionXform(),\n tableParts: new ListXform({tag: 'tableParts', count: true, childXform: new TablePartXform()}),\n conditionalFormatting: new ConditionalFormattingsXform(),\n extLst: new ExtListXform(),\n };\n }\n\n prepare(model, options) {\n options.merges = new Merges();\n model.hyperlinks = options.hyperlinks = [];\n model.comments = options.comments = [];\n\n options.formulae = {};\n options.siFormulae = 0;\n this.map.cols.prepare(model.cols, options);\n this.map.sheetData.prepare(model.rows, options);\n this.map.conditionalFormatting.prepare(model.conditionalFormattings, options);\n\n model.mergeCells = options.merges.mergeCells;\n\n // prepare relationships\n const rels = (model.rels = []);\n\n function nextRid(r) {\n return `rId${r.length + 1}`;\n }\n\n model.hyperlinks.forEach(hyperlink => {\n const rId = nextRid(rels);\n hyperlink.rId = rId;\n rels.push({\n Id: rId,\n Type: RelType.Hyperlink,\n Target: hyperlink.target,\n TargetMode: 'External',\n });\n });\n\n // prepare comment relationships\n if (model.comments.length > 0) {\n const comment = {\n Id: nextRid(rels),\n Type: RelType.Comments,\n Target: `../comments${model.id}.xml`,\n };\n rels.push(comment);\n const vmlDrawing = {\n Id: nextRid(rels),\n Type: RelType.VmlDrawing,\n Target: `../drawings/vmlDrawing${model.id}.vml`,\n };\n rels.push(vmlDrawing);\n\n model.comments.forEach(item => {\n item.refAddress = colCache.decodeAddress(item.ref);\n });\n\n options.commentRefs.push({\n commentName: `comments${model.id}`,\n vmlDrawing: `vmlDrawing${model.id}`,\n });\n }\n\n const drawingRelsHash = [];\n let bookImage;\n model.media.forEach(medium => {\n if (medium.type === 'background') {\n const rId = nextRid(rels);\n bookImage = options.media[medium.imageId];\n rels.push({\n Id: rId,\n Type: RelType.Image,\n Target: `../media/${bookImage.name}.${bookImage.extension}`,\n });\n model.background = {\n rId,\n };\n model.image = options.media[medium.imageId];\n } else if (medium.type === 'image') {\n let {drawing} = model;\n bookImage = options.media[medium.imageId];\n if (!drawing) {\n drawing = model.drawing = {\n rId: nextRid(rels),\n name: `drawing${++options.drawingsCount}`,\n anchors: [],\n rels: [],\n };\n options.drawings.push(drawing);\n rels.push({\n Id: drawing.rId,\n Type: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing',\n Target: `../drawings/${drawing.name}.xml`,\n });\n }\n let rIdImage =\n this.preImageId === medium.imageId ? drawingRelsHash[medium.imageId] : drawingRelsHash[drawing.rels.length];\n if (!rIdImage) {\n rIdImage = nextRid(drawing.rels);\n drawingRelsHash[drawing.rels.length] = rIdImage;\n drawing.rels.push({\n Id: rIdImage,\n Type: 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image',\n Target: `../media/${bookImage.name}.${bookImage.extension}`,\n });\n }\n\n const anchor = {\n picture: {\n rId: rIdImage,\n },\n range: medium.range,\n };\n if (medium.hyperlinks && medium.hyperlinks.hyperlink) {\n const rIdHyperLink = nextRid(drawing.rels);\n drawingRelsHash[drawing.rels.length] = rIdHyperLink;\n anchor.picture.hyperlinks = {\n tooltip: medium.hyperlinks.tooltip,\n rId: rIdHyperLink,\n };\n drawing.rels.push({\n Id: rIdHyperLink,\n Type: RelType.Hyperlink,\n Target: medium.hyperlinks.hyperlink,\n TargetMode: 'External',\n });\n }\n this.preImageId = medium.imageId;\n drawing.anchors.push(anchor);\n }\n });\n\n // prepare tables\n model.tables.forEach(table => {\n // relationships\n const rId = nextRid(rels);\n table.rId = rId;\n rels.push({\n Id: rId,\n Type: RelType.Table,\n Target: `../tables/${table.target}`,\n });\n\n // dynamic styles\n table.columns.forEach(column => {\n const {style} = column;\n if (style) {\n column.dxfId = options.styles.addDxfStyle(style);\n }\n });\n });\n\n // prepare ext items\n this.map.extLst.prepare(model, options);\n }\n\n render(xmlStream, model) {\n xmlStream.openXml(XmlStream.StdDocAttributes);\n xmlStream.openNode('worksheet', WorkSheetXform.WORKSHEET_ATTRIBUTES);\n\n const sheetFormatPropertiesModel = model.properties\n ? {\n defaultRowHeight: model.properties.defaultRowHeight,\n dyDescent: model.properties.dyDescent,\n outlineLevelCol: model.properties.outlineLevelCol,\n outlineLevelRow: model.properties.outlineLevelRow,\n }\n : undefined;\n if (model.properties && model.properties.defaultColWidth) {\n sheetFormatPropertiesModel.defaultColWidth = model.properties.defaultColWidth;\n }\n const sheetPropertiesModel = {\n outlineProperties: model.properties && model.properties.outlineProperties,\n tabColor: model.properties && model.properties.tabColor,\n pageSetup:\n model.pageSetup && model.pageSetup.fitToPage\n ? {\n fitToPage: model.pageSetup.fitToPage,\n }\n : undefined,\n };\n const pageMarginsModel = model.pageSetup && model.pageSetup.margins;\n const printOptionsModel = {\n showRowColHeaders: model.pageSetup && model.pageSetup.showRowColHeaders,\n showGridLines: model.pageSetup && model.pageSetup.showGridLines,\n horizontalCentered: model.pageSetup && model.pageSetup.horizontalCentered,\n verticalCentered: model.pageSetup && model.pageSetup.verticalCentered,\n };\n const sheetProtectionModel = model.sheetProtection;\n\n this.map.sheetPr.render(xmlStream, sheetPropertiesModel);\n this.map.dimension.render(xmlStream, model.dimensions);\n this.map.sheetViews.render(xmlStream, model.views);\n this.map.sheetFormatPr.render(xmlStream, sheetFormatPropertiesModel);\n this.map.cols.render(xmlStream, model.cols);\n this.map.sheetData.render(xmlStream, model.rows);\n this.map.sheetProtection.render(xmlStream, sheetProtectionModel); // Note: must be after sheetData and before autoFilter\n this.map.autoFilter.render(xmlStream, model.autoFilter);\n this.map.mergeCells.render(xmlStream, model.mergeCells);\n this.map.conditionalFormatting.render(xmlStream, model.conditionalFormattings); // Note: must be before dataValidations\n this.map.dataValidations.render(xmlStream, model.dataValidations);\n\n // For some reason hyperlinks have to be after the data validations\n this.map.hyperlinks.render(xmlStream, model.hyperlinks);\n\n this.map.printOptions.render(xmlStream, printOptionsModel); // Note: must be before pageMargins\n this.map.pageMargins.render(xmlStream, pageMarginsModel);\n this.map.pageSetup.render(xmlStream, model.pageSetup);\n this.map.headerFooter.render(xmlStream, model.headerFooter);\n this.map.rowBreaks.render(xmlStream, model.rowBreaks);\n this.map.drawing.render(xmlStream, model.drawing); // Note: must be after rowBreaks\n this.map.picture.render(xmlStream, model.background); // Note: must be after drawing\n this.map.tableParts.render(xmlStream, model.tables);\n\n this.map.extLst.render(xmlStream, model);\n\n if (model.rels) {\n // add a <legacyDrawing /> node for each comment\n model.rels.forEach(rel => {\n if (rel.Type === RelType.VmlDrawing) {\n xmlStream.leafNode('legacyDrawing', {'r:id': rel.Id});\n }\n });\n }\n\n xmlStream.closeNode();\n }\n\n parseOpen(node) {\n if (this.parser) {\n this.parser.parseOpen(node);\n return true;\n }\n\n if (node.name === 'worksheet') {\n _.each(this.map, xform => {\n xform.reset();\n });\n return true;\n }\n\n if (this.map[node.name] && !this.ignoreNodes.includes(node.name)) {\n this.parser = this.map[node.name];\n this.parser.parseOpen(node);\n }\n return true;\n }\n\n parseText(text) {\n if (this.parser) {\n this.parser.parseText(text);\n }\n }\n\n parseClose(name) {\n if (this.parser) {\n if (!this.parser.parseClose(name)) {\n this.parser = undefined;\n }\n return true;\n }\n switch (name) {\n case 'worksheet': {\n const properties = this.map.sheetFormatPr.model || {};\n if (this.map.sheetPr.model && this.map.sheetPr.model.tabColor) {\n properties.tabColor = this.map.sheetPr.model.tabColor;\n }\n if (this.map.sheetPr.model && this.map.sheetPr.model.outlineProperties) {\n properties.outlineProperties = this.map.sheetPr.model.outlineProperties;\n }\n const sheetProperties = {\n fitToPage:\n (this.map.sheetPr.model &&\n this.map.sheetPr.model.pageSetup &&\n this.map.sheetPr.model.pageSetup.fitToPage) ||\n false,\n margins: this.map.pageMargins.model,\n };\n const pageSetup = Object.assign(sheetProperties, this.map.pageSetup.model, this.map.printOptions.model);\n const conditionalFormattings = mergeConditionalFormattings(\n this.map.conditionalFormatting.model,\n this.map.extLst.model && this.map.extLst.model['x14:conditionalFormattings']\n );\n this.model = {\n dimensions: this.map.dimension.model,\n cols: this.map.cols.model,\n rows: this.map.sheetData.model,\n mergeCells: this.map.mergeCells.model,\n hyperlinks: this.map.hyperlinks.model,\n dataValidations: this.map.dataValidations.model,\n properties,\n views: this.map.sheetViews.model,\n pageSetup,\n headerFooter: this.map.headerFooter.model,\n background: this.map.picture.model,\n drawing: this.map.drawing.model,\n tables: this.map.tableParts.model,\n conditionalFormattings,\n };\n\n if (this.map.autoFilter.model) {\n this.model.autoFilter = this.map.autoFilter.model;\n }\n if (this.map.sheetProtection.model) {\n this.model.sheetProtection = this.map.sheetProtection.model;\n }\n\n return false;\n }\n\n default:\n // not quite sure how we get here!\n return true;\n }\n }\n\n reconcile(model, options) {\n // options.merges = new Merges();\n // options.merges.reconcile(model.mergeCells, model.rows);\n const rels = (model.relationships || []).reduce((h, rel) => {\n h[rel.Id] = rel;\n if (rel.Type === RelType.Comments) {\n model.comments = options.comments[rel.Target].comments;\n }\n if (rel.Type === RelType.VmlDrawing && model.comments && model.comments.length) {\n const vmlComment = options.vmlDrawings[rel.Target].comments;\n model.comments.forEach((comment, index) => {\n comment.note = Object.assign({}, comment.note, vmlComment[index]);\n });\n }\n return h;\n }, {});\n options.commentsMap = (model.comments || []).reduce((h, comment) => {\n if (comment.ref) {\n h[comment.ref] = comment;\n }\n return h;\n }, {});\n options.hyperlinkMap = (model.hyperlinks || []).reduce((h, hyperlink) => {\n if (hyperlink.rId) {\n h[hyperlink.address] = rels[hyperlink.rId].Target;\n }\n return h;\n }, {});\n options.formulae = {};\n\n // compact the rows and cells\n model.rows = (model.rows && model.rows.filter(Boolean)) || [];\n model.rows.forEach(row => {\n row.cells = (row.cells && row.cells.filter(Boolean)) || [];\n });\n\n this.map.cols.reconcile(model.cols, options);\n this.map.sheetData.reconcile(model.rows, options);\n this.map.conditionalFormatting.reconcile(model.conditionalFormattings, options);\n\n model.media = [];\n if (model.drawing) {\n const drawingRel = rels[model.drawing.rId];\n const match = drawingRel.Target.match(/\\/drawings\\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);\n if (match) {\n const drawingName = match[1];\n const drawing = options.drawings[drawingName];\n drawing.anchors.forEach(anchor => {\n if (anchor.medium) {\n const image = {\n type: 'image',\n imageId: anchor.medium.index,\n range: anchor.range,\n hyperlinks: anchor.picture.hyperlinks,\n };\n model.media.push(image);\n }\n });\n }\n }\n\n const backgroundRel = model.background && rels[model.background.rId];\n if (backgroundRel) {\n const target = backgroundRel.Target.split('/media/')[1];\n const imageId = options.mediaIndex && options.mediaIndex[target];\n if (imageId !== undefined) {\n model.media.push({\n type: 'background',\n imageId,\n });\n }\n }\n\n model.tables = (model.tables || []).map(tablePart => {\n const rel = rels[tablePart.rId];\n return options.tables[rel.Target];\n });\n\n delete model.relationships;\n delete model.hyperlinks;\n delete model.comments;\n }\n}\n\nWorkSheetXform.WORKSHEET_ATTRIBUTES = {\n xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',\n 'xmlns:r': 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',\n 'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',\n 'mc:Ignorable': 'x14ac',\n 'xmlns:x14ac': 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac',\n};\n\nmodule.exports = WorkSheetXform;\n"],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
const BaseXform = require('../base-xform');
|
|
4
|
-
class BooleanXform extends BaseXform {
|
|
5
|
-
constructor(options) {
|
|
6
|
-
super();
|
|
7
|
-
this.tag = options.tag;
|
|
8
|
-
this.attr = options.attr;
|
|
9
|
-
}
|
|
10
|
-
render(xmlStream, model) {
|
|
11
|
-
if (model) {
|
|
12
|
-
xmlStream.openNode(this.tag);
|
|
13
|
-
xmlStream.closeNode();
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
parseOpen(node) {
|
|
17
|
-
if (node.name === this.tag) {
|
|
18
|
-
this.model = true;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
parseText() {}
|
|
22
|
-
parseClose() {
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
module.exports = BooleanXform;
|
|
27
|
-
//# sourceMappingURL=boolean-xform.js.map
|