@cdklabs/cdk-ssm-documents 0.0.66 → 0.0.67
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/.jsii +13 -13
- package/lib/construct/synth-utils.js +1 -1
- package/lib/document/automation-document.js +1 -1
- package/lib/document/command-document.js +1 -1
- package/lib/document/document-builder.js +2 -2
- package/lib/document/ssm-document.js +1 -1
- package/lib/domain/aws-service.js +1 -1
- package/lib/domain/choice.js +1 -1
- package/lib/domain/data-type.js +1 -1
- package/lib/domain/enum/install-action.js +2 -2
- package/lib/domain/enum/install-uninstall-repair.js +2 -2
- package/lib/domain/enum/installation-type.js +2 -2
- package/lib/domain/enum/package-name.js +2 -2
- package/lib/domain/input.js +1 -1
- package/lib/domain/operation.js +1 -1
- package/lib/domain/platform.js +1 -1
- package/lib/domain/precondition.js +1 -1
- package/lib/incident-response/incident-response.js +3 -3
- package/lib/interface/approve-hook.js +2 -2
- package/lib/interface/auth-method.js +3 -3
- package/lib/interface/aws-invoker.js +2 -2
- package/lib/interface/downloadable-content.js +8 -8
- package/lib/interface/environment.js +3 -3
- package/lib/interface/execute-automation-hook/api-execute-automation-hook.js +1 -1
- package/lib/interface/observer.js +1 -1
- package/lib/interface/on-failure.js +6 -6
- package/lib/interface/pause-hook.js +2 -2
- package/lib/interface/run-command-hook/api-run-command-hook.js +1 -1
- package/lib/interface/run-document-location.js +2 -2
- package/lib/interface/sleep-hook.js +2 -2
- package/lib/interface/step-ref.js +1 -1
- package/lib/interface/variables/boolean-variable.js +2 -2
- package/lib/interface/variables/map-list-variable.js +2 -2
- package/lib/interface/variables/number-variable.js +2 -2
- package/lib/interface/variables/secure-string-variable.js +4 -4
- package/lib/interface/variables/string-list-variable.js +2 -2
- package/lib/interface/variables/string-map-variable.js +2 -2
- package/lib/interface/variables/string-variable.js +4 -4
- package/lib/interface/variables/variable.js +2 -2
- package/lib/interface/webhook.js +1 -1
- package/lib/parent-steps/automation/approve-step.js +1 -1
- package/lib/parent-steps/automation/assert-aws-resource-step.js +1 -1
- package/lib/parent-steps/automation/aws-api-step.js +1 -1
- package/lib/parent-steps/automation/branch-step.js +1 -1
- package/lib/parent-steps/automation/change-instance-state-step.js +3 -3
- package/lib/parent-steps/automation/copy-image-step.js +1 -1
- package/lib/parent-steps/automation/create-image-step.js +1 -1
- package/lib/parent-steps/automation/create-stack-step.js +3 -3
- package/lib/parent-steps/automation/create-tags-step.js +3 -3
- package/lib/parent-steps/automation/delete-image-step.js +1 -1
- package/lib/parent-steps/automation/delete-stack-step.js +1 -1
- package/lib/parent-steps/automation/execute-automation-step.js +1 -1
- package/lib/parent-steps/automation/execute-script-step.js +5 -5
- package/lib/parent-steps/automation/execute-state-machine-step.js +1 -1
- package/lib/parent-steps/automation/invoke-lambda-function-step.js +1 -1
- package/lib/parent-steps/automation/invoke-webhook-step.js +1 -1
- package/lib/parent-steps/automation/pause-step.js +1 -1
- package/lib/parent-steps/automation/run-command-step.js +3 -3
- package/lib/parent-steps/automation/run-instance-step.js +1 -1
- package/lib/parent-steps/automation/sleep-step.js +1 -1
- package/lib/parent-steps/automation/update-variable.js +1 -1
- package/lib/parent-steps/automation/wait-for-resource-step.js +1 -1
- package/lib/parent-steps/automation-step.js +1 -1
- package/lib/parent-steps/command/applications-step.js +1 -1
- package/lib/parent-steps/command/configure-docker-step.js +1 -1
- package/lib/parent-steps/command/configure-package-step.js +1 -1
- package/lib/parent-steps/command/domain-join-step.js +1 -1
- package/lib/parent-steps/command/download-content-step.js +1 -1
- package/lib/parent-steps/command/ps-module-step.js +1 -1
- package/lib/parent-steps/command/run-docker-action-step.js +1 -1
- package/lib/parent-steps/command/run-document-step.js +1 -1
- package/lib/parent-steps/command/run-powershell-script-step.js +1 -1
- package/lib/parent-steps/command/run-shell-script-step.js +1 -1
- package/lib/parent-steps/command/software-inventory-step.js +1 -1
- package/lib/parent-steps/command/update-agent-step.js +1 -1
- package/lib/parent-steps/command/update-ssm-agent-step.js +1 -1
- package/lib/parent-steps/command-step.js +1 -1
- package/lib/parent-steps/step.js +1 -1
- package/lib/patterns/automation/composite-step.js +2 -2
- package/lib/patterns/automation/reboot-instance-and-wait.js +1 -1
- package/lib/patterns/automation/string-step.js +1 -1
- package/lib/patterns/document/string-document.js +1 -1
- package/lib/patterns/document/timed-document.js +1 -1
- package/lib/samples/hello-world.js +1 -1
- package/lib/simulation/automation/approve-simulation.js +1 -1
- package/lib/simulation/automation/assert-aws-resource-simulation.js +1 -1
- package/lib/simulation/automation/automation-simulation-base.js +1 -1
- package/lib/simulation/automation/aws-api-simulation.js +1 -1
- package/lib/simulation/automation/branch-simulation.js +1 -1
- package/lib/simulation/automation/change-instance-state-simulation.js +1 -1
- package/lib/simulation/automation/copy-image-simulation.js +1 -1
- package/lib/simulation/automation/create-image-simulation.js +1 -1
- package/lib/simulation/automation/create-stack-simulation.js +1 -1
- package/lib/simulation/automation/create-tags-simulation.js +1 -1
- package/lib/simulation/automation/delete-image-simulation.js +1 -1
- package/lib/simulation/automation/delete-stack-simulation.js +1 -1
- package/lib/simulation/automation/execute-script-simulation.js +1 -1
- package/lib/simulation/automation/execute-state-machine-simulation.js +1 -1
- package/lib/simulation/automation/invoke-lambda-function-simulation.js +1 -1
- package/lib/simulation/automation/invoke-webhook-simulation.js +1 -1
- package/lib/simulation/automation/pause-simulation.js +1 -1
- package/lib/simulation/automation/run-command-simulation.js +1 -1
- package/lib/simulation/automation/run-instance-simulation.js +1 -1
- package/lib/simulation/automation/sleep-simulation.js +1 -1
- package/lib/simulation/automation/update-variable-simulation.js +1 -1
- package/lib/simulation/automation/wait-for-resource-simulation.js +1 -1
- package/lib/simulation/automation-step-simulation.js +1 -1
- package/lib/simulation/command/command-simulation-base.js +1 -1
- package/lib/simulation/command/ps-module-simulation.js +1 -1
- package/lib/simulation/command/run-powershell-script-simulation.js +1 -1
- package/lib/simulation/command/run-shell-script-simulation.js +1 -1
- package/lib/simulation/command-step-simulation.js +1 -1
- package/lib/simulation/document/automation-simulation.js +1 -1
- package/lib/simulation/document/command-simulation.js +1 -1
- package/lib/simulation/simulation.js +1 -1
- package/node_modules/@aws-sdk/checksums/package.json +2 -2
- package/node_modules/@aws-sdk/client-cloudformation/package.json +3 -3
- package/node_modules/@aws-sdk/client-cloudwatch/package.json +3 -3
- package/node_modules/@aws-sdk/client-ec2/dist-cjs/schemas/schemas_0.js +37 -4
- package/node_modules/@aws-sdk/client-ec2/dist-es/schemas/schemas_0.js +35 -4
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/AttachImageWatermarkCommand.d.ts +2 -3
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CancelCapacityReservationCommand.d.ts +10 -16
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetAllowedImagesSettingsCommand.d.ts +8 -0
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetAwsNetworkPerformanceDataCommand.d.ts +2 -1
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ModifyIpamScopeCommand.d.ts +1 -2
- package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReplaceImageCriteriaInAllowedImagesSettingsCommand.d.ts +15 -0
- package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_5.d.ts +42 -15
- package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_6.d.ts +17 -35
- package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_7.d.ts +86 -1
- package/node_modules/@aws-sdk/client-ec2/dist-types/schemas/schemas_0.d.ts +2 -0
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetAwsNetworkPerformanceDataCommand.d.ts +2 -4
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ModifyIpamScopeCommand.d.ts +4 -2
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_5.d.ts +7 -4
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_6.d.ts +5 -9
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_7.d.ts +15 -0
- package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/schemas/schemas_0.d.ts +2 -0
- package/node_modules/@aws-sdk/client-ec2/package.json +4 -4
- package/node_modules/@aws-sdk/client-iam/package.json +3 -3
- package/node_modules/@aws-sdk/client-lambda/dist-types/commands/GetProvisionedConcurrencyConfigCommand.d.ts +4 -4
- package/node_modules/@aws-sdk/client-lambda/package.json +3 -3
- package/node_modules/@aws-sdk/client-s3/package.json +6 -6
- package/node_modules/@aws-sdk/client-sns/package.json +3 -3
- package/node_modules/@aws-sdk/client-sqs/package.json +3 -3
- package/node_modules/@aws-sdk/client-ssm/package.json +3 -3
- package/node_modules/@aws-sdk/core/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-http/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
- package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
- package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-flexible-checksums/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-sdk-ec2/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/package.json +2 -2
- package/node_modules/@aws-sdk/token-providers/package.json +3 -3
- package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.browser.js +1 -1
- package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.js +233 -43
- package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.browser.js +1 -1
- package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +233 -43
- package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/xml-parser.d.ts +1 -1
- package/node_modules/@aws-sdk/xml-builder/dist-types/xml-parser.d.ts +2 -1
- package/node_modules/@aws-sdk/xml-builder/package.json +4 -4
- package/node_modules/@smithy/core/dist-cjs/submodules/checksum/index.browser.js +355 -145
- package/node_modules/@smithy/core/dist-cjs/submodules/checksum/index.js +456 -142
- package/node_modules/@smithy/core/dist-cjs/submodules/checksum/index.native.js +355 -145
- package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +5 -2
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +30 -36
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +54 -110
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +30 -36
- package/node_modules/@smithy/core/dist-es/submodules/checksum/crc32/Crc32Js.js +27 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/crc32/Crc32Node.js +21 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/index.browser.js +7 -1
- package/node_modules/@smithy/core/dist-es/submodules/checksum/index.js +7 -1
- package/node_modules/@smithy/core/dist-es/submodules/checksum/index.native.js +7 -1
- package/node_modules/@smithy/core/dist-es/submodules/checksum/md5/Md5Js.js +92 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/md5/Md5Node.js +29 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/sha256/Sha256Js.js +179 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/sha256/Sha256Node.js +59 -0
- package/node_modules/@smithy/core/dist-es/submodules/checksum/sha256/Sha256WebCrypto.js +71 -0
- package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +4 -1
- package/node_modules/@smithy/core/dist-es/submodules/serde/concatBytes.js +15 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/index.browser.js +2 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/index.js +2 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/index.native.js +2 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/checksum/ChecksumStream.js +4 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/headStream.js +2 -1
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/stream-collector.browser.js +12 -38
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/stream-collector.js +18 -33
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/toUint8Array.browser.js +3 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/toUint8Array.js +3 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/crc32/Crc32Js.d.ts +13 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/crc32/Crc32Node.d.ts +13 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/index.browser.d.ts +7 -1
- package/node_modules/@smithy/core/dist-types/submodules/checksum/index.d.ts +7 -1
- package/node_modules/@smithy/core/dist-types/submodules/checksum/index.native.d.ts +7 -1
- package/node_modules/@smithy/core/dist-types/submodules/checksum/md5/Md5Js.d.ts +19 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/md5/Md5Node.d.ts +17 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/sha256/Sha256Js.d.ts +28 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/sha256/Sha256Node.d.ts +13 -0
- package/node_modules/@smithy/core/dist-types/submodules/checksum/sha256/Sha256WebCrypto.d.ts +22 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/concatBytes.d.ts +6 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/index.browser.d.ts +2 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/index.d.ts +2 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/index.native.d.ts +2 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/util-stream/checksum/ChecksumStream.d.ts +9 -0
- package/node_modules/@smithy/core/dist-types/submodules/serde/util-stream/stream-collector.browser.d.ts +8 -2
- package/node_modules/@smithy/core/dist-types/submodules/serde/util-stream/stream-collector.d.ts +4 -1
- package/node_modules/@smithy/core/package.json +4 -3
- package/node_modules/@smithy/credential-provider-imds/package.json +2 -2
- package/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js +2 -55
- package/node_modules/@smithy/fetch-http-handler/dist-es/index.js +2 -2
- package/node_modules/@smithy/fetch-http-handler/dist-types/index.d.ts +2 -2
- package/node_modules/@smithy/fetch-http-handler/package.json +2 -2
- package/node_modules/@smithy/middleware-compression/package.json +2 -2
- package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +3 -51
- package/node_modules/@smithy/node-http-handler/dist-es/index.js +3 -3
- package/node_modules/@smithy/node-http-handler/dist-types/index.d.ts +3 -3
- package/node_modules/@smithy/node-http-handler/package.json +2 -2
- package/node_modules/@smithy/signature-v4/package.json +2 -2
- package/node_modules/immutable/dist/immutable.es.js +161 -15
- package/node_modules/immutable/dist/immutable.js +161 -15
- package/node_modules/immutable/dist/immutable.min.js +33 -32
- package/node_modules/immutable/package.json +1 -1
- package/node_modules/js-yaml/README.md +5 -3
- package/node_modules/js-yaml/dist/js-yaml.js +3009 -2402
- package/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
- package/node_modules/js-yaml/dist/js-yaml.min.js +2 -33
- package/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
- package/node_modules/js-yaml/dist/js-yaml.mjs +3073 -2381
- package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
- package/node_modules/js-yaml/lib/loader.js +7 -11
- package/node_modules/js-yaml/lib/type/float.js +1 -1
- package/node_modules/js-yaml/lib/type/int.js +4 -4
- package/node_modules/js-yaml/package.json +10 -4
- package/package.json +12 -12
- package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-external/nodable_entities.js +0 -333
- package/node_modules/@aws-sdk/xml-builder/dist-es/xml-external/nodable_entities.js +0 -332
- package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/xml-external/nodable_entities.d.ts +0 -66
- package/node_modules/@aws-sdk/xml-builder/dist-types/xml-external/nodable_entities.d.ts +0 -65
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/CHANGELOG.md +0 -827
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/LICENSE +0 -21
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/README.md +0 -202
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.cjs +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.d.cts +0 -770
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxvalidator.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxvalidator.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/package.json +0 -93
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/cli/cli.js +0 -97
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/cli/man.js +0 -17
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/cli/read.js +0 -43
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/fxp.d.ts +0 -739
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/fxp.js +0 -14
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/ignoreAttributes.js +0 -18
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/util.js +0 -61
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/CharsSymbol.js +0 -16
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/EntitiesParser.js +0 -106
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OptionsBuilder.js +0 -61
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OutputBuilders/BaseOutputBuilder.js +0 -69
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsArrBuilder.js +0 -103
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsMinArrBuilder.js +0 -100
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsObjBuilder.js +0 -154
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/OutputBuilders/ParserOptionsBuilder.js +0 -94
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/Report.js +0 -0
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/TagPath.js +0 -81
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/TagPathMatcher.js +0 -13
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/XMLParser.js +0 -83
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/Xml2JsParser.js +0 -235
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/XmlPartReader.js +0 -210
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/XmlSpecialTagsReader.js +0 -111
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/inputSource/BufferSource.js +0 -116
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/inputSource/StringSource.js +0 -121
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/EntitiesParser.js +0 -105
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/booleanParser.js +0 -22
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/booleanParserExt.js +0 -19
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/currency.js +0 -38
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/join.js +0 -13
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/number.js +0 -14
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/valueParsers/trim.js +0 -6
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/validator.js +0 -425
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js +0 -6
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +0 -407
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +0 -163
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +0 -840
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +0 -71
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/node2json.js +0 -177
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js +0 -40
- package/node_modules/@aws-sdk/xml-builder/node_modules/strnum/CHANGELOG.md +0 -51
- package/node_modules/@aws-sdk/xml-builder/node_modules/strnum/LICENSE +0 -21
- package/node_modules/@aws-sdk/xml-builder/node_modules/strnum/README.md +0 -113
- package/node_modules/@aws-sdk/xml-builder/node_modules/strnum/package.json +0 -36
- package/node_modules/@aws-sdk/xml-builder/node_modules/strnum/strnum.js +0 -171
- package/node_modules/@nodable/entities/README.md +0 -41
- package/node_modules/@nodable/entities/package.json +0 -57
- package/node_modules/@nodable/entities/src/EntityDecoder.js +0 -644
- package/node_modules/@nodable/entities/src/EntityEncoder.js +0 -194
- package/node_modules/@nodable/entities/src/entities.js +0 -1159
- package/node_modules/@nodable/entities/src/entityTries.js +0 -49
- package/node_modules/@nodable/entities/src/index.d.ts +0 -341
- package/node_modules/@nodable/entities/src/index.js +0 -29
- package/node_modules/@smithy/core/dist-es/submodules/checksum/md5-js/constants.js +0 -3
- package/node_modules/@smithy/core/dist-es/submodules/checksum/md5-js/md5.js +0 -168
- package/node_modules/@smithy/core/dist-types/submodules/checksum/md5-js/constants.d.ts +0 -12
- package/node_modules/@smithy/core/dist-types/submodules/checksum/md5-js/md5.d.ts +0 -16
- package/node_modules/@smithy/fetch-http-handler/dist-es/stream-collector.js +0 -53
- package/node_modules/@smithy/fetch-http-handler/dist-types/stream-collector.d.ts +0 -2
- package/node_modules/@smithy/node-http-handler/dist-es/stream-collector/collector.js +0 -8
- package/node_modules/@smithy/node-http-handler/dist-es/stream-collector/index.js +0 -41
- package/node_modules/@smithy/node-http-handler/dist-types/stream-collector/collector.d.ts +0 -5
- package/node_modules/@smithy/node-http-handler/dist-types/stream-collector/index.d.ts +0 -7
- package/node_modules/anynum/LICENSE +0 -21
- package/node_modules/anynum/README.md +0 -142
- package/node_modules/anynum/anynum.js +0 -135
- package/node_modules/anynum/digitTable.js +0 -116
- package/node_modules/anynum/package.json +0 -42
- package/node_modules/fast-xml-builder/CHANGELOG.md +0 -40
- package/node_modules/fast-xml-builder/LICENSE +0 -21
- package/node_modules/fast-xml-builder/README.md +0 -74
- package/node_modules/fast-xml-builder/lib/fxb.cjs +0 -1
- package/node_modules/fast-xml-builder/lib/fxb.d.cts +0 -270
- package/node_modules/fast-xml-builder/lib/fxb.min.js +0 -2
- package/node_modules/fast-xml-builder/lib/fxb.min.js.map +0 -1
- package/node_modules/fast-xml-builder/package.json +0 -81
- package/node_modules/fast-xml-builder/src/fxb.d.ts +0 -270
- package/node_modules/fast-xml-builder/src/fxb.js +0 -599
- package/node_modules/fast-xml-builder/src/ignoreAttributes.js +0 -18
- package/node_modules/fast-xml-builder/src/orderedJs2Xml.js +0 -359
- package/node_modules/fast-xml-builder/src/prettifyJs2Xml.js +0 -0
- package/node_modules/fast-xml-builder/src/util.js +0 -16
- package/node_modules/path-expression-matcher/LICENSE +0 -21
- package/node_modules/path-expression-matcher/README.md +0 -947
- package/node_modules/path-expression-matcher/lib/pem.cjs +0 -1
- package/node_modules/path-expression-matcher/lib/pem.d.cts +0 -715
- package/node_modules/path-expression-matcher/lib/pem.min.js +0 -2
- package/node_modules/path-expression-matcher/lib/pem.min.js.map +0 -1
- package/node_modules/path-expression-matcher/package.json +0 -79
- package/node_modules/path-expression-matcher/src/Expression.js +0 -232
- package/node_modules/path-expression-matcher/src/ExpressionSet.js +0 -225
- package/node_modules/path-expression-matcher/src/Matcher.js +0 -660
- package/node_modules/path-expression-matcher/src/index.d.ts +0 -589
- package/node_modules/path-expression-matcher/src/index.js +0 -29
- package/node_modules/xml-naming/README.md +0 -189
- package/node_modules/xml-naming/package.json +0 -54
- package/node_modules/xml-naming/src/index.d.ts +0 -74
- package/node_modules/xml-naming/src/index.js +0 -270
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { buildOptions, registerCommonValueParsers } from './ParserOptionsBuilder.js';
|
|
4
|
-
|
|
5
|
-
export default class OutputBuilder {
|
|
6
|
-
constructor(builderOptions) {
|
|
7
|
-
this.options = buildOptions(builderOptions);
|
|
8
|
-
this.registeredParsers = registerCommonValueParsers(this.options);
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
registerValueParser(name, parserInstance) {//existing name will override the parser without warning
|
|
12
|
-
this.registeredParsers[name] = parserInstance;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
getInstance(parserOptions) {
|
|
16
|
-
return new JsObjBuilder(parserOptions, this.options, this.registeredParsers);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
import BaseOutputBuilder from './BaseOutputBuilder.js';
|
|
21
|
-
const rootName = '^';
|
|
22
|
-
|
|
23
|
-
class JsObjBuilder extends BaseOutputBuilder {
|
|
24
|
-
|
|
25
|
-
constructor(parserOptions, builderOptions, registeredParsers) {
|
|
26
|
-
super();
|
|
27
|
-
//hold the raw detail of a tag and sequence with reference to the output
|
|
28
|
-
this.tagsStack = [];
|
|
29
|
-
this.parserOptions = parserOptions;
|
|
30
|
-
this.options = builderOptions;
|
|
31
|
-
this.registeredParsers = registeredParsers;
|
|
32
|
-
|
|
33
|
-
this.root = {};
|
|
34
|
-
this.parent = this.root;
|
|
35
|
-
this.tagName = rootName;
|
|
36
|
-
this.value = {};
|
|
37
|
-
this.textValue = "";
|
|
38
|
-
this.attributes = {};
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
addTag(tag) {
|
|
42
|
-
|
|
43
|
-
let value = "";
|
|
44
|
-
if (!isEmpty(this.attributes)) {
|
|
45
|
-
value = {};
|
|
46
|
-
if (this.options.attributes.groupBy) {
|
|
47
|
-
value[this.options.attributes.groupBy] = this.attributes;
|
|
48
|
-
} else {
|
|
49
|
-
value = this.attributes;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
this.tagsStack.push([this.tagName, this.textValue, this.value]); //parent tag, parent text value, parent tag value (jsobj)
|
|
54
|
-
this.tagName = tag.name;
|
|
55
|
-
this.value = value;
|
|
56
|
-
this.textValue = "";
|
|
57
|
-
this.attributes = {};
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Check if the node should be added by checking user's preference
|
|
62
|
-
* @param {Node} node
|
|
63
|
-
* @returns boolean: true if the node should not be added
|
|
64
|
-
*/
|
|
65
|
-
closeTag() {
|
|
66
|
-
const tagName = this.tagName;
|
|
67
|
-
let value = this.value;
|
|
68
|
-
let textValue = this.textValue;
|
|
69
|
-
|
|
70
|
-
//update tag text value
|
|
71
|
-
if (typeof value !== "object" && !Array.isArray(value)) {
|
|
72
|
-
value = this.parseValue(textValue.trim(), this.options.tags.valueParsers);
|
|
73
|
-
} else if (textValue.length > 0) {
|
|
74
|
-
value[this.options.nameFor.text] = this.parseValue(textValue.trim(), this.options.tags.valueParsers);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
let resultTag = {
|
|
79
|
-
tagName: tagName,
|
|
80
|
-
value: value
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
if (this.options.onTagClose !== undefined) {
|
|
84
|
-
//TODO TagPathMatcher
|
|
85
|
-
resultTag = this.options.onClose(tagName, value, this.textValue, new TagPathMatcher(this.tagsStack, node));
|
|
86
|
-
|
|
87
|
-
if (!resultTag) return;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
//set parent node in scope
|
|
91
|
-
let arr = this.tagsStack.pop();
|
|
92
|
-
let parentTag = arr[2];
|
|
93
|
-
parentTag = this._addChildTo(resultTag.tagName, resultTag.value, parentTag);
|
|
94
|
-
|
|
95
|
-
this.tagName = arr[0];
|
|
96
|
-
this.textValue = arr[1];
|
|
97
|
-
this.value = parentTag;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
_addChild(key, val) {
|
|
101
|
-
if (typeof this.value === "string") {
|
|
102
|
-
this.value = { [this.options.nameFor.text]: this.value };
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
this._addChildTo(key, val, this.value);
|
|
106
|
-
// this.currentNode.leafType = false;
|
|
107
|
-
this.attributes = {};
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
_addChildTo(key, val, node) {
|
|
111
|
-
if (typeof node === 'string') node = {};
|
|
112
|
-
if (!node[key]) {
|
|
113
|
-
node[key] = val;
|
|
114
|
-
} else { //Repeated
|
|
115
|
-
if (!Array.isArray(node[key])) { //but not stored as array
|
|
116
|
-
node[key] = [node[key]];
|
|
117
|
-
}
|
|
118
|
-
node[key].push(val);
|
|
119
|
-
}
|
|
120
|
-
return node;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* Add text value child node
|
|
126
|
-
* @param {string} text
|
|
127
|
-
*/
|
|
128
|
-
addValue(text) {
|
|
129
|
-
//TODO: use bytes join
|
|
130
|
-
if (this.textValue.length > 0) this.textValue += " " + text;
|
|
131
|
-
else this.textValue = text;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
addPi(name) {
|
|
135
|
-
let value = "";
|
|
136
|
-
if (!isEmpty(this.attributes)) {
|
|
137
|
-
value = {};
|
|
138
|
-
if (this.options.attributes.groupBy) {
|
|
139
|
-
value[this.options.attributes.groupBy] = this.attributes;
|
|
140
|
-
} else {
|
|
141
|
-
value = this.attributes;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
this._addChild(name, value);
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
getOutput() {
|
|
148
|
-
return this.value;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
function isEmpty(obj) {
|
|
153
|
-
return Object.keys(obj).length === 0;
|
|
154
|
-
}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import trimParser from "../valueParsers/trim.js";
|
|
2
|
-
import booleanParser from "../valueParsers/booleanParser.js";
|
|
3
|
-
import currencyParser from "../valueParsers/currency.js";
|
|
4
|
-
import numberParser from "../valueParsers/number.js";
|
|
5
|
-
|
|
6
|
-
const defaultOptions = {
|
|
7
|
-
nameFor: {
|
|
8
|
-
text: "#text",
|
|
9
|
-
comment: "",
|
|
10
|
-
cdata: "",
|
|
11
|
-
},
|
|
12
|
-
// onTagClose: () => {},
|
|
13
|
-
// onAttribute: () => {},
|
|
14
|
-
piTag: false,
|
|
15
|
-
declaration: false, //"?xml"
|
|
16
|
-
tags: {
|
|
17
|
-
valueParsers: [
|
|
18
|
-
// "trim",
|
|
19
|
-
// "boolean",
|
|
20
|
-
// "number",
|
|
21
|
-
// "currency",
|
|
22
|
-
// "date",
|
|
23
|
-
]
|
|
24
|
-
},
|
|
25
|
-
attributes: {
|
|
26
|
-
prefix: "@_",
|
|
27
|
-
suffix: "",
|
|
28
|
-
groupBy: "",
|
|
29
|
-
|
|
30
|
-
valueParsers: [
|
|
31
|
-
// "trim",
|
|
32
|
-
// "boolean",
|
|
33
|
-
// "number",
|
|
34
|
-
// "currency",
|
|
35
|
-
// "date",
|
|
36
|
-
]
|
|
37
|
-
},
|
|
38
|
-
dataType: {
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
//TODO
|
|
44
|
-
const withJoin = ["trim", "join", /*"entities",*/"number", "boolean", "currency"/*, "date"*/]
|
|
45
|
-
const withoutJoin = ["trim", /*"entities",*/"number", "boolean", "currency"/*, "date"*/]
|
|
46
|
-
|
|
47
|
-
export function buildOptions(options) {
|
|
48
|
-
//clone
|
|
49
|
-
const finalOptions = { ...defaultOptions };
|
|
50
|
-
|
|
51
|
-
//add config missed in cloning
|
|
52
|
-
finalOptions.tags.valueParsers.push(...withJoin)
|
|
53
|
-
if (!this.preserveOrder)
|
|
54
|
-
finalOptions.tags.valueParsers.push(...withoutJoin);
|
|
55
|
-
|
|
56
|
-
//add config missed in cloning
|
|
57
|
-
finalOptions.attributes.valueParsers.push(...withJoin)
|
|
58
|
-
|
|
59
|
-
//override configuration
|
|
60
|
-
copyProperties(finalOptions, options);
|
|
61
|
-
return finalOptions;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function copyProperties(target, source) {
|
|
65
|
-
for (let key in source) {
|
|
66
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
67
|
-
if (typeof source[key] === 'object' && !Array.isArray(source[key])) {
|
|
68
|
-
// Recursively copy nested properties
|
|
69
|
-
if (typeof target[key] === 'undefined') {
|
|
70
|
-
target[key] = {};
|
|
71
|
-
}
|
|
72
|
-
copyProperties(target[key], source[key]);
|
|
73
|
-
} else {
|
|
74
|
-
// Copy non-nested properties
|
|
75
|
-
target[key] = source[key];
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export function registerCommonValueParsers(options) {
|
|
82
|
-
return {
|
|
83
|
-
"trim": new trimParser(),
|
|
84
|
-
// "join": this.entityParser.parse,
|
|
85
|
-
"boolean": new booleanParser(),
|
|
86
|
-
"number": new numberParser({
|
|
87
|
-
hex: true,
|
|
88
|
-
leadingZeros: true,
|
|
89
|
-
eNotation: true
|
|
90
|
-
}),
|
|
91
|
-
"currency": new currencyParser(),
|
|
92
|
-
// "date": this.entityParser.parse,
|
|
93
|
-
}
|
|
94
|
-
}
|
|
File without changes
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
export default class TagPath{
|
|
2
|
-
constructor(pathStr){
|
|
3
|
-
let text = "";
|
|
4
|
-
let tName = "";
|
|
5
|
-
let pos;
|
|
6
|
-
let aName = "";
|
|
7
|
-
let aVal = "";
|
|
8
|
-
this.stack = []
|
|
9
|
-
|
|
10
|
-
for (let i = 0; i < pathStr.length; i++) {
|
|
11
|
-
let ch = pathStr[i];
|
|
12
|
-
if(ch === " ") {
|
|
13
|
-
if(text.length === 0) continue;
|
|
14
|
-
tName = text; text = "";
|
|
15
|
-
}else if(ch === "["){
|
|
16
|
-
if(tName.length === 0){
|
|
17
|
-
tName = text; text = "";
|
|
18
|
-
}
|
|
19
|
-
i++;
|
|
20
|
-
for (; i < pathStr.length; i++) {
|
|
21
|
-
ch = pathStr[i];
|
|
22
|
-
if(ch=== "=") continue;
|
|
23
|
-
else if(ch=== "]") {aName = text.trim(); text=""; break; i--;}
|
|
24
|
-
else if(ch === "'" || ch === '"'){
|
|
25
|
-
let attrEnd = pathStr.indexOf(ch,i+1);
|
|
26
|
-
aVal = pathStr.substring(i+1, attrEnd);
|
|
27
|
-
i = attrEnd;
|
|
28
|
-
}else{
|
|
29
|
-
text +=ch;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}else if(ch !== " " && text.length === 0 && tName.length > 0){//reading tagName
|
|
33
|
-
//save previous tag
|
|
34
|
-
this.stack.push(new TagPathNode(tName,pos,aName,aVal));
|
|
35
|
-
text = ch; tName = ""; aName = ""; aVal = "";
|
|
36
|
-
}else{
|
|
37
|
-
text+=ch;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
//last tag in the path
|
|
42
|
-
if(tName.length >0 || text.length>0){
|
|
43
|
-
this.stack.push(new TagPathNode(text||tName,pos,aName,aVal));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
match(tagStack,node){
|
|
48
|
-
if(this.stack[0].name !== "*"){
|
|
49
|
-
if(this.stack.length !== tagStack.length +1) return false;
|
|
50
|
-
|
|
51
|
-
//loop through tagPath and tagStack and match
|
|
52
|
-
for (let i = 0; i < this.tagStack.length; i++) {
|
|
53
|
-
if(!this.stack[i].match(tagStack[i])) return false;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
if(!this.stack[this.stack.length - 1].match(node)) return false;
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
class TagPathNode{
|
|
62
|
-
constructor(name,position,attrName,attrVal){
|
|
63
|
-
this.name = name;
|
|
64
|
-
this.position = position;
|
|
65
|
-
this.attrName = attrName,
|
|
66
|
-
this.attrVal = attrVal;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
match(node){
|
|
70
|
-
let matching = true;
|
|
71
|
-
matching = node.name === this.name;
|
|
72
|
-
if(this.position) matching = node.position === this.position;
|
|
73
|
-
if(this.attrName) matching = node.attrs[this.attrName !== undefined];
|
|
74
|
-
if(this.attrVal) matching = node.attrs[this.attrName !== this.attrVal];
|
|
75
|
-
return matching;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
// console.log((new TagPath("* b[b]")).stack);
|
|
80
|
-
// console.log((new TagPath("a[a] b[b] c")).stack);
|
|
81
|
-
// console.log((new TagPath(" b [ b= 'cf sdadwa' ] a ")).stack);
|
package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/TagPathMatcher.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import {TagPath} from './TagPath.js';
|
|
2
|
-
|
|
3
|
-
export default class TagPathMatcher{
|
|
4
|
-
constructor(stack,node){
|
|
5
|
-
this.stack = stack;
|
|
6
|
-
this.node= node;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
match(path){
|
|
10
|
-
const tagPath = new TagPath(path);
|
|
11
|
-
return tagPath.match(this.stack, this.node);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { buildOptions } from './OptionsBuilder.js';
|
|
2
|
-
import Xml2JsParser from './Xml2JsParser.js';
|
|
3
|
-
|
|
4
|
-
export default class XMLParser {
|
|
5
|
-
|
|
6
|
-
constructor(options) {
|
|
7
|
-
this.externalEntities = {};
|
|
8
|
-
this.options = buildOptions(options);
|
|
9
|
-
// console.log(this.options)
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Parse XML data string to JS object
|
|
13
|
-
* @param {string|Buffer} xmlData
|
|
14
|
-
* @param {boolean|Object} validationOption
|
|
15
|
-
*/
|
|
16
|
-
parse(xmlData) {
|
|
17
|
-
if (Array.isArray(xmlData) && xmlData.byteLength !== undefined) {
|
|
18
|
-
return this.parse(xmlData);
|
|
19
|
-
} else if (xmlData.toString) {
|
|
20
|
-
xmlData = xmlData.toString();
|
|
21
|
-
} else {
|
|
22
|
-
throw new Error("XML data is accepted in String or Bytes[] form.")
|
|
23
|
-
}
|
|
24
|
-
// if( validationOption){
|
|
25
|
-
// if(validationOption === true) validationOption = {}; //validate with default options
|
|
26
|
-
|
|
27
|
-
// const result = validator.validate(xmlData, validationOption);
|
|
28
|
-
// if (result !== true) {
|
|
29
|
-
// throw Error( `${result.err.msg}:${result.err.line}:${result.err.col}` )
|
|
30
|
-
// }
|
|
31
|
-
// }
|
|
32
|
-
const parser = new Xml2JsParser(this.options);
|
|
33
|
-
parser.entityParser.addExternalEntities(this.externalEntities);
|
|
34
|
-
return parser.parse(xmlData);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Parse XML data buffer to JS object
|
|
38
|
-
* @param {string|Buffer} xmlData
|
|
39
|
-
* @param {boolean|Object} validationOption
|
|
40
|
-
*/
|
|
41
|
-
parseBytesArr(xmlData) {
|
|
42
|
-
if (Array.isArray(xmlData) && xmlData.byteLength !== undefined) {
|
|
43
|
-
} else {
|
|
44
|
-
throw new Error("XML data is accepted in Bytes[] form.")
|
|
45
|
-
}
|
|
46
|
-
const parser = new Xml2JsParser(this.options);
|
|
47
|
-
parser.entityParser.addExternalEntities(this.externalEntities);
|
|
48
|
-
return parser.parseBytesArr(xmlData);
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Parse XML data stream to JS object
|
|
52
|
-
* @param {fs.ReadableStream} xmlDataStream
|
|
53
|
-
*/
|
|
54
|
-
parseStream(xmlDataStream) {
|
|
55
|
-
if (!isStream(xmlDataStream)) throw new Error("FXP: Invalid stream input");
|
|
56
|
-
|
|
57
|
-
const orderedObjParser = new Xml2JsParser(this.options);
|
|
58
|
-
orderedObjParser.entityParser.addExternalEntities(this.externalEntities);
|
|
59
|
-
return orderedObjParser.parseStream(xmlDataStream);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Add Entity which is not by default supported by this library
|
|
64
|
-
* @param {string} key
|
|
65
|
-
* @param {string} value
|
|
66
|
-
*/
|
|
67
|
-
addEntity(key, value) {
|
|
68
|
-
if (value.indexOf("&") !== -1) {
|
|
69
|
-
throw new Error("Entity value can't have '&'")
|
|
70
|
-
} else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
|
|
71
|
-
throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'")
|
|
72
|
-
} else if (value === "&") {
|
|
73
|
-
throw new Error("An entity with value '&' is not permitted");
|
|
74
|
-
} else {
|
|
75
|
-
this.externalEntities[key] = value;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
function isStream(stream) {
|
|
81
|
-
if (stream && typeof stream.read === "function" && typeof stream.on === "function" && typeof stream.readableEnded === "boolean") return true;
|
|
82
|
-
return false;
|
|
83
|
-
}
|
package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/v6/Xml2JsParser.js
DELETED
|
@@ -1,235 +0,0 @@
|
|
|
1
|
-
import StringSource from './inputSource/StringSource.js';
|
|
2
|
-
import BufferSource from './inputSource/BufferSource.js';
|
|
3
|
-
import {readTagExp,readClosingTagName} from './XmlPartReader.js';
|
|
4
|
-
import {readComment, readCdata,readDocType,readPiTag} from './XmlSpecialTagsReader.js';
|
|
5
|
-
import TagPath from './TagPath.js';
|
|
6
|
-
import TagPathMatcher from './TagPathMatcher.js';
|
|
7
|
-
import EntitiesParser from './EntitiesParser.js';
|
|
8
|
-
|
|
9
|
-
//To hold the data of current tag
|
|
10
|
-
//This is usually used to compare jpath expression against current tag
|
|
11
|
-
class TagDetail{
|
|
12
|
-
constructor(name){
|
|
13
|
-
this.name = name;
|
|
14
|
-
this.position = 0;
|
|
15
|
-
// this.attributes = {};
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export default class Xml2JsParser {
|
|
20
|
-
constructor(options) {
|
|
21
|
-
this.options = options;
|
|
22
|
-
|
|
23
|
-
this.currentTagDetail = null;
|
|
24
|
-
this.tagTextData = "";
|
|
25
|
-
this.tagsStack = [];
|
|
26
|
-
this.entityParser = new EntitiesParser(options.htmlEntities);
|
|
27
|
-
this.stopNodes = [];
|
|
28
|
-
for (let i = 0; i < this.options.stopNodes.length; i++) {
|
|
29
|
-
this.stopNodes.push(new TagPath(this.options.stopNodes[i]));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
parse(strData) {
|
|
34
|
-
this.source = new StringSource(strData);
|
|
35
|
-
this.parseXml();
|
|
36
|
-
return this.outputBuilder.getOutput();
|
|
37
|
-
}
|
|
38
|
-
parseBytesArr(data) {
|
|
39
|
-
this.source = new BufferSource(data );
|
|
40
|
-
this.parseXml();
|
|
41
|
-
return this.outputBuilder.getOutput();
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
parseXml() {
|
|
45
|
-
//TODO: Separate TagValueParser as separate class. So no scope issue in node builder class
|
|
46
|
-
|
|
47
|
-
//OutputBuilder should be set in XML Parser
|
|
48
|
-
this.outputBuilder = this.options.OutputBuilder.getInstance(this.options);
|
|
49
|
-
this.root = { root: true};
|
|
50
|
-
this.currentTagDetail = this.root;
|
|
51
|
-
|
|
52
|
-
while(this.source.canRead()){
|
|
53
|
-
let ch = this.source.readCh();
|
|
54
|
-
if (ch === "") break;
|
|
55
|
-
|
|
56
|
-
if(ch === "<"){//tagStart
|
|
57
|
-
let nextChar = this.source.readChAt(0);
|
|
58
|
-
if (nextChar === "" ) throw new Error("Unexpected end of source");
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if(nextChar === "!" || nextChar === "?"){
|
|
62
|
-
this.source.updateBufferBoundary();
|
|
63
|
-
//previously collected text should be added to current node
|
|
64
|
-
this.addTextNode();
|
|
65
|
-
|
|
66
|
-
this.readSpecialTag(nextChar);// Read DOCTYPE, comment, CDATA, PI tag
|
|
67
|
-
}else if(nextChar === "/"){
|
|
68
|
-
this.source.updateBufferBoundary();
|
|
69
|
-
this.readClosingTag();
|
|
70
|
-
// console.log(this.source.buffer.length, this.source.readable);
|
|
71
|
-
// console.log(this.tagsStack.length);
|
|
72
|
-
}else{//opening tag
|
|
73
|
-
this.readOpeningTag();
|
|
74
|
-
}
|
|
75
|
-
}else{
|
|
76
|
-
this.tagTextData += ch;
|
|
77
|
-
}
|
|
78
|
-
}//End While loop
|
|
79
|
-
if(this.tagsStack.length > 0 || ( this.tagTextData !== "undefined" && this.tagTextData.trimEnd().length > 0) ) throw new Error("Unexpected data in the end of document");
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* read closing paired tag. Set parent tag in scope.
|
|
84
|
-
* skip a node on user's choice
|
|
85
|
-
*/
|
|
86
|
-
readClosingTag(){
|
|
87
|
-
const tagName = this.processTagName(readClosingTagName(this.source));
|
|
88
|
-
// console.log(tagName, this.tagsStack.length);
|
|
89
|
-
this.validateClosingTag(tagName);
|
|
90
|
-
// All the text data collected, belongs to current tag.
|
|
91
|
-
if(!this.currentTagDetail.root) this.addTextNode();
|
|
92
|
-
this.outputBuilder.closeTag();
|
|
93
|
-
// Since the tag is closed now, parent tag comes in scope
|
|
94
|
-
this.currentTagDetail = this.tagsStack.pop();
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
validateClosingTag(tagName){
|
|
98
|
-
// This can't be unpaired tag, or a stop tag.
|
|
99
|
-
if(this.isUnpaired(tagName) || this.isStopNode(tagName)) throw new Error(`Unexpected closing tag '${tagName}'`);
|
|
100
|
-
// This must match with last opening tag
|
|
101
|
-
else if(tagName !== this.currentTagDetail.name)
|
|
102
|
-
throw new Error(`Unexpected closing tag '${tagName}' expecting '${this.currentTagDetail.name}'`)
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Read paired, unpaired, self-closing, stop and special tags.
|
|
107
|
-
* Create a new node
|
|
108
|
-
* Push paired tag in stack.
|
|
109
|
-
*/
|
|
110
|
-
readOpeningTag(){
|
|
111
|
-
//save previously collected text data to current node
|
|
112
|
-
this.addTextNode();
|
|
113
|
-
|
|
114
|
-
//create new tag
|
|
115
|
-
let tagExp = readTagExp(this, ">" );
|
|
116
|
-
|
|
117
|
-
// process and skip from tagsStack For unpaired tag, self closing tag, and stop node
|
|
118
|
-
const tagDetail = new TagDetail(tagExp.tagName);
|
|
119
|
-
if(this.isUnpaired(tagExp.tagName)) {
|
|
120
|
-
//TODO: this will lead 2 extra stack operation
|
|
121
|
-
this.outputBuilder.addTag(tagDetail);
|
|
122
|
-
this.outputBuilder.closeTag();
|
|
123
|
-
} else if(tagExp.selfClosing){
|
|
124
|
-
this.outputBuilder.addTag(tagDetail);
|
|
125
|
-
this.outputBuilder.closeTag();
|
|
126
|
-
} else if(this.isStopNode(this.currentTagDetail)){
|
|
127
|
-
// TODO: let's user set a stop node boundary detector for complex contents like script tag
|
|
128
|
-
//TODO: pass tag name only to avoid string operations
|
|
129
|
-
const content = source.readUptoCloseTag(`</${tagExp.tagName}`);
|
|
130
|
-
this.outputBuilder.addTag(tagDetail);
|
|
131
|
-
this.outputBuilder.addValue(content);
|
|
132
|
-
this.outputBuilder.closeTag();
|
|
133
|
-
}else{//paired tag
|
|
134
|
-
//set new nested tag in scope.
|
|
135
|
-
this.tagsStack.push(this.currentTagDetail);
|
|
136
|
-
this.outputBuilder.addTag(tagDetail);
|
|
137
|
-
this.currentTagDetail = tagDetail;
|
|
138
|
-
}
|
|
139
|
-
// console.log(tagExp.tagName,this.tagsStack.length);
|
|
140
|
-
// this.options.onClose()
|
|
141
|
-
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
readSpecialTag(startCh){
|
|
145
|
-
if(startCh == "!"){
|
|
146
|
-
let nextChar = this.source.readCh();
|
|
147
|
-
if (nextChar === null || nextChar === undefined) throw new Error("Unexpected ending of the source");
|
|
148
|
-
|
|
149
|
-
if(nextChar === "-"){//comment
|
|
150
|
-
readComment(this);
|
|
151
|
-
}else if(nextChar === "["){//CDATA
|
|
152
|
-
readCdata(this);
|
|
153
|
-
}else if(nextChar === "D"){//DOCTYPE
|
|
154
|
-
readDocType(this);
|
|
155
|
-
}
|
|
156
|
-
}else if(startCh === "?"){
|
|
157
|
-
readPiTag(this);
|
|
158
|
-
}else{
|
|
159
|
-
throw new Error(`Invalid tag '<${startCh}' at ${this.source.line}:${this.source.col}`)
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
addTextNode = function() {
|
|
163
|
-
// if(this.currentTagDetail){
|
|
164
|
-
//save text as child node
|
|
165
|
-
// if(this.currentTagDetail.tagname !== '!xml')
|
|
166
|
-
if (this.tagTextData !== undefined && this.tagTextData !== "") { //store previously collected data as textNode
|
|
167
|
-
if(this.tagTextData.trim().length > 0){
|
|
168
|
-
//TODO: shift parsing to output builder
|
|
169
|
-
|
|
170
|
-
this.outputBuilder.addValue(this.replaceEntities(this.tagTextData));
|
|
171
|
-
}
|
|
172
|
-
this.tagTextData = "";
|
|
173
|
-
}
|
|
174
|
-
// }
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
processAttrName(name){
|
|
178
|
-
if(name === "__proto__") name = "#__proto__";
|
|
179
|
-
name = resolveNameSpace(name, this.removeNSPrefix);
|
|
180
|
-
return name;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
processTagName(name){
|
|
184
|
-
if(name === "__proto__") name = "#__proto__";
|
|
185
|
-
name = resolveNameSpace(name, this.removeNSPrefix);
|
|
186
|
-
return name;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Generate tags path from tagsStack
|
|
191
|
-
*/
|
|
192
|
-
tagsPath(tagName){
|
|
193
|
-
//TODO: return TagPath Object. User can call match method with path
|
|
194
|
-
return "";
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
isUnpaired(tagName){
|
|
198
|
-
return this.options.tags.unpaired.indexOf(tagName) !== -1;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* valid expressions are
|
|
203
|
-
* tag nested
|
|
204
|
-
* * nested
|
|
205
|
-
* tag nested[attribute]
|
|
206
|
-
* tag nested[attribute=""]
|
|
207
|
-
* tag nested[attribute!=""]
|
|
208
|
-
* tag nested:0 //for future
|
|
209
|
-
* @param {string} tagName
|
|
210
|
-
* @returns
|
|
211
|
-
*/
|
|
212
|
-
isStopNode(node){
|
|
213
|
-
for (let i = 0; i < this.stopNodes.length; i++) {
|
|
214
|
-
const givenPath = this.stopNodes[i];
|
|
215
|
-
if(givenPath.match(this.tagsStack, node)) return true;
|
|
216
|
-
}
|
|
217
|
-
return false
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
replaceEntities(text){
|
|
221
|
-
//TODO: if option is set then replace entities
|
|
222
|
-
return this.entityParser.parse(text)
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
function resolveNameSpace(name, removeNSPrefix) {
|
|
227
|
-
if (removeNSPrefix) {
|
|
228
|
-
const parts = name.split(':');
|
|
229
|
-
if(parts.length === 2){
|
|
230
|
-
if (parts[0] === 'xmlns') return '';
|
|
231
|
-
else return parts[1];
|
|
232
|
-
}else reportError(`Multiple namespaces ${name}`)
|
|
233
|
-
}
|
|
234
|
-
return name;
|
|
235
|
-
}
|