Compare commits

...
Author SHA1 Message Date
dependabot[bot] eac2aa2bba build(deps): bump docker/bake-action/subaction/matrix
Bumps [docker/bake-action/subaction/matrix](https://github.com/docker/bake-action) from 7.3.0 to 7.5.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b...59cb1203cd42bcefd40a1b6d73b589e48c86040e)

---
updated-dependencies:
- dependency-name: docker/bake-action/subaction/matrix
  dependency-version: 7.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 15:01:00 +00:00
CrazyMax 8a2735a79e Merge pull request #1082 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.3.0
build(deps): bump aws-actions/configure-aws-credentials from 6.2.3 to 6.3.0
2026-10-23 16:56:59 +02:00
CrazyMax e040eb9d1e Merge pull request #1091 from docker/dependabot/npm_and_yarn/handlebars-4.7.10
build(deps): bump handlebars from 4.7.9 to 4.7.10
2026-10-23 16:56:31 +02:00
github-actions[bot] 13f533fe85 [dependabot skip] chore: update generated content 2026-10-23 14:47:57 +00:00
dependabot[bot] e40f22430b build(deps): bump handlebars from 4.7.9 to 4.7.10
Bumps [handlebars](https://github.com/handlebars-lang/handlebars.js) from 4.7.9 to 4.7.10.
- [Release notes](https://github.com/handlebars-lang/handlebars.js/releases)
- [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/v4.7.10/release-notes.md)
- [Commits](https://github.com/handlebars-lang/handlebars.js/compare/v4.7.9...v4.7.10)

---
updated-dependencies:
- dependency-name: handlebars
  dependency-version: 4.7.10
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 14:47:03 +00:00
CrazyMax 97538692f6 Merge pull request #1085 from docker/dependabot/npm_and_yarn/undici-6.29.0
build(deps): bump undici from 6.27.0 to 6.29.1
2026-10-23 16:44:52 +02:00
github-actions[bot] cf0eabde3d [dependabot skip] chore: update generated content 2026-10-23 14:34:09 +00:00
dependabot[bot] 4c7d088f4b build(deps): bump undici from 6.27.0 to 6.29.1
Bumps [undici](https://github.com/nodejs/undici) from 6.27.0 to 6.29.1.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v6.27.0...v6.29.1)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 6.29.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 14:33:15 +00:00
CrazyMax 98a3fb834a Merge pull request #1078 from docker/dependabot/npm_and_yarn/csv-parse-7.0.2
build(deps): bump csv-parse from 7.0.1 to 7.0.3
2026-10-23 16:31:00 +02:00
github-actions[bot] f101fa5d88 [dependabot skip] chore: update generated content 2026-10-23 14:28:03 +00:00
dependabot[bot] f2aae0c0ee build(deps): bump csv-parse from 7.0.1 to 7.0.3
Bumps [csv-parse](https://github.com/adaltas/node-csv/tree/HEAD/packages/csv-parse) from 7.0.1 to 7.0.3.
- [Changelog](https://github.com/adaltas/node-csv/blob/master/packages/csv-parse/CHANGELOG.md)
- [Commits](https://github.com/adaltas/node-csv/commits/csv-parse@7.0.3/packages/csv-parse)

---
updated-dependencies:
- dependency-name: csv-parse
  dependency-version: 7.0.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 14:26:38 +00:00
CrazyMax 133c6ab6fa Merge pull request #1066 from docker/dependabot/npm_and_yarn/js-yaml-5.2.3
build(deps): bump js-yaml from 5.2.2 to 5.5.0
2026-10-23 16:24:28 +02:00
github-actions[bot] 0a3084cdc5 [dependabot skip] chore: update generated content 2026-10-23 14:14:52 +00:00
dependabot[bot] 1e7c55a39d build(deps): bump js-yaml from 5.2.2 to 5.5.0
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 5.2.2 to 5.5.0.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/5.2.2...5.5.0)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 5.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 14:13:53 +00:00
CrazyMax a358cc1e42 Merge pull request #1092 from docker/dependabot/npm_and_yarn/postcss-selector-parser-7.1.6
build(deps): bump postcss-selector-parser from 7.1.1 to 7.1.6
2026-10-23 16:11:34 +02:00
CrazyMax 5ad95e8c58 Merge pull request #1090 from docker/dependabot/npm_and_yarn/source-map-js-1.2.2
build(deps): bump source-map-js from 1.2.1 to 1.2.2
2026-10-23 16:11:08 +02:00
CrazyMax a5f1c9995c Merge pull request #1081 from docker/dependabot/github_actions/docker/bake-action-7.4.0
build(deps): bump docker/bake-action from 7.3.0 to 7.4.0
2026-10-23 16:10:15 +02:00
CrazyMax b098de5f1b Merge pull request #1079 from docker/dependabot/github_actions/codecov/codecov-action-7.1.0
build(deps): bump codecov/codecov-action from 7.0.0 to 7.1.0
2026-10-23 16:10:04 +02:00
CrazyMax 50d805b48a Merge pull request #1080 from docker/dependabot/github_actions/codeql-actions-03ad6eec6c
build(deps): bump the codeql-actions group across 1 directory with 2 updates
2026-10-23 16:09:53 +02:00
CrazyMax 834ffb646a Merge pull request #1071 from docker/dependabot/npm_and_yarn/postcss-8.5.26
build(deps): bump postcss from 8.5.22 to 8.5.26
2026-10-23 16:09:28 +02:00
CrazyMax 2fea3b2c5c Merge pull request #1072 from docker/dependabot/github_actions/crazy-max-dot-github-6f52f8ed50
build(deps): bump the crazy-max-dot-github group across 1 directory with 2 updates
2026-10-23 16:09:15 +02:00
CrazyMax f3f25ba560 Merge pull request #1077 from docker/dependabot/npm_and_yarn/humanfs/node-0.16.8
build(deps): bump @humanfs/node from 0.16.7 to 0.16.8
2026-10-23 16:09:02 +02:00
CrazyMax 0b08f36d38 Merge pull request #1088 from crazy-max/fix-scoped-registry-url
use registry hosts for scoped credentials
2026-10-23 16:08:12 +02:00
dependabot[bot] 8fa2c064e3 build(deps): bump postcss-selector-parser from 7.1.1 to 7.1.6
Bumps [postcss-selector-parser](https://github.com/postcss/postcss-selector-parser) from 7.1.1 to 7.1.6.
- [Release notes](https://github.com/postcss/postcss-selector-parser/releases)
- [Changelog](https://github.com/postcss/postcss-selector-parser/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss-selector-parser/compare/v7.1.1...7.1.6)

---
updated-dependencies:
- dependency-name: postcss-selector-parser
  dependency-version: 7.1.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-19 20:06:24 +00:00
dependabot[bot] 375309eeb7 build(deps): bump the codeql-actions group across 1 directory with 2 updates
Bumps the codeql-actions group with 2 updates in the / directory: [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.37.8 to 4.39.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28...6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee)

Updates `github/codeql-action/analyze` from 4.37.8 to 4.39.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28...6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee)

---
updated-dependencies:
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.38.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-actions
- dependency-name: github/codeql-action/init
  dependency-version: 4.38.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-19 05:54:19 +00:00
dependabot[bot] 5d33b362eb build(deps): bump the crazy-max-dot-github group across 1 directory with 2 updates
Bumps the crazy-max-dot-github group with 2 updates in the / directory: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.10.1 to 1.11.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/46267a6e61cd56aac2fc79943df180152f4c89d6...f91220cba053bd54299ba645a599ee8ed436f222)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.10.1 to 1.11.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/46267a6e61cd56aac2fc79943df180152f4c89d6...f91220cba053bd54299ba645a599ee8ed436f222)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-19 05:52:13 +00:00
CrazyMax 0feb529243 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-17 12:25:27 +02:00
CrazyMax 4e12eabf92 use registry hosts for scoped credentials
Parse registry URLs so scoped ECR credentials use the same config directory
for login, logout, and Buildx lookup. Preserve explicit default ports.

Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-17 12:24:46 +02:00
CrazyMax d3b9cdfa58 Merge pull request #1089 from crazy-max/fix-registry-auth-ecr-false
preserve explicit ECR settings in registry-auth
2026-10-16 20:24:38 +02:00
dependabot[bot] b773301bab build(deps): bump source-map-js from 1.2.1 to 1.2.2
Bumps [source-map-js](https://github.com/7rulnik/source-map-js) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/7rulnik/source-map-js/releases)
- [Changelog](https://github.com/7rulnik/source-map-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/7rulnik/source-map-js/compare/v1.2.1...v1.2.2)

---
updated-dependencies:
- dependency-name: source-map-js
  dependency-version: 1.2.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 13:44:31 +00:00
CrazyMax a27b71b09c chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-05 14:23:04 +02:00
CrazyMax 2c873c3656 test: simplify registry-auth ECR regression coverage
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-05 14:23:04 +02:00
breken-ai b4bb2a4ec0 keep registry-auth ecr: false instead of falling back to auto
registry-auth is parsed as YAML, so `ecr: false` (unquoted) is the
boolean false, and `auth.ecr || 'auto'` turned it into 'auto'. For an
ECR registry this runs the AWS SDK login with the given username and
password as AWS access keys, instead of the plain docker login the user
asked for. Only the quoted string "false" worked.

Convert the value to a string and only default to 'auto' when it is
missing or empty.

Assisted-By: Claude
Signed-off-by: breken-ai <312387581+breken-ai@users.noreply.github.com>
2026-10-05 14:21:32 +02:00
dependabot[bot] 1f3cb3efe9 build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.2.3 to 6.3.0.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/e6de054238d6b7531b4efff3b6587d9aade6a06c...e1253824e5c10ff9df46874f81ed3ec929e19cfd)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-17 05:54:51 +00:00
dependabot[bot] e800f1e754 build(deps): bump docker/bake-action from 7.3.0 to 7.4.0
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 7.3.0 to 7.4.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b...018cb6412ab401ebaa809aa5f85966b74628600f)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-version: 7.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-17 05:54:36 +00:00
CrazyMax 783ae9cac5 Merge pull request #1064 from docker/dependabot/github_actions/codeql-actions-ce612e0709
build(deps): bump the codeql-actions group across 1 directory with 2 updates
2026-09-16 10:57:53 +02:00
dependabot[bot] 67ccbdd142 build(deps): bump codecov/codecov-action from 7.0.0 to 7.1.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 7.0.0 to 7.1.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/fb8b3582c8e4def4969c97caa2f19720cb33a72f...0b35c9ecc4f0529d0eb674914510c22f85b196b4)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 7.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-16 05:52:38 +00:00
dependabot[bot] 96df24572b build(deps): bump @humanfs/node from 0.16.7 to 0.16.8
Bumps [@humanfs/node](https://github.com/humanwhocodes/humanfs/tree/HEAD/packages/node) from 0.16.7 to 0.16.8.
- [Release notes](https://github.com/humanwhocodes/humanfs/releases)
- [Changelog](https://github.com/humanwhocodes/humanfs/blob/main/packages/node/CHANGELOG.md)
- [Commits](https://github.com/humanwhocodes/humanfs/commits/node-v0.16.8/packages/node)

---
updated-dependencies:
- dependency-name: "@humanfs/node"
  dependency-version: 0.16.8
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-03 12:23:51 +00:00
dependabot[bot] b1725c2c93 build(deps): bump the codeql-actions group across 1 directory with 2 updates
Bumps the codeql-actions group with 2 updates in the / directory: [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.37.3 to 4.37.8
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81...db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28)

Updates `github/codeql-action/analyze` from 4.37.3 to 4.37.8
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81...db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28)

---
updated-dependencies:
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.37.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
- dependency-name: github/codeql-action/init
  dependency-version: 4.37.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-25 05:54:40 +00:00
CrazyMax 0a596b2e7a Merge pull request #1073 from quentin-laplanche-docker/ci/remove-docker-notation
ci: replace registry container action reference
2026-08-24 15:27:36 +02:00
Quentin LaplancheandCodex 5d1ee94869 ci: replace registry container action reference
Use a local Docker container action so the runner still exercises its container-action mounts and environment without a docker:// workflow reference.

Signed-off-by: Quentin Laplanche <quentin.laplanche@docker.com>

Co-authored-by: Codex <noreply@openai.com>
2026-08-24 15:15:07 +02:00
dependabot[bot] 8febd2275e build(deps): bump postcss from 8.5.22 to 8.5.26
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.22 to 8.5.26.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.22...8.5.26)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.26
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-12 05:02:09 +00:00
Tõnis Tiigi af63523ba5 Merge pull request #1061 from docker/dockerhub-oidc-logs
log Docker Hub OIDC token exchange progress
2026-08-11 11:56:25 +03:00
CrazyMax 72edfa6c2e chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-08-06 16:52:13 +02:00
CrazyMax 2b7517a3b4 log Docker Hub OIDC token exchange progress
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-08-06 16:51:47 +02:00
CrazyMax eed2509203 Merge pull request #1068 from crazy-max/dockerhub-oidc-increase-expire-in
raise Docker Hub OIDC max expiry to 6 hours
2026-08-06 12:07:08 +02:00
CrazyMax 07573e7c18 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-08-06 11:54:13 +02:00
CrazyMax 99ffd0f38a raise Docker Hub OIDC max expiry to 6 hours
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-08-06 11:53:57 +02:00
CrazyMax dbcb813823 Merge pull request #1051 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-46cc3261cb
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-07-29 13:33:29 +02:00
github-actions[bot] 5bcb015ee6 [dependabot skip] chore: update generated content 2026-07-29 10:44:53 +00:00
dependabot[bot] b30b2f2d31 build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1091.0 to 3.1095.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1095.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1091.0 to 3.1095.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1095.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1092.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1092.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-29 10:43:57 +00:00
CrazyMax 9087f1e6d6 Merge pull request #1057 from docker/dependabot/npm_and_yarn/js-yaml-5.2.2
build(deps): bump js-yaml from 5.2.1 to 5.2.2
2026-07-29 12:40:51 +02:00
github-actions[bot] 0009830ea1 [dependabot skip] chore: update generated content 2026-07-29 10:32:28 +00:00
dependabot[bot] 23255232d3 build(deps): bump js-yaml from 5.2.1 to 5.2.2
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 5.2.1 to 5.2.2.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/5.2.1...5.2.2)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 5.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-29 10:31:34 +00:00
CrazyMax 4ec1d4a769 Merge pull request #1056 from docker/dependabot/npm_and_yarn/postcss-8.5.22
build(deps): bump postcss from 8.5.10 to 8.5.22
2026-07-29 12:28:53 +02:00
CrazyMax 5fc99ba47b Merge pull request #1053 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.2.3
build(deps): bump aws-actions/configure-aws-credentials from 6.2.2 to 6.2.3
2026-07-29 12:28:12 +02:00
CrazyMax e512bd59d1 Merge pull request #1052 from docker/dependabot/github_actions/codeql-actions-73adf09e94
build(deps): bump the codeql-actions group across 1 directory with 2 updates
2026-07-29 12:26:59 +02:00
CrazyMax a146c91b8f Merge pull request #1059 from crazy-max/harden-buildx-scope-paths
harden buildx scoped config path handling
2026-07-29 10:50:27 +02:00
CrazyMax 8ffd80ffa5 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-29 09:57:41 +02:00
CrazyMax 8305724bcf harden buildx scoped config path handling
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-29 09:57:00 +02:00
dependabot[bot] 91264757e1 build(deps): bump the codeql-actions group across 1 directory with 2 updates
Bumps the codeql-actions group with 2 updates in the / directory: [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.37.2 to 4.37.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/e0647621c2984b5ed2f768cb892365bf2a616ad1...e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81)

Updates `github/codeql-action/analyze` from 4.37.2 to 4.37.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/e0647621c2984b5ed2f768cb892365bf2a616ad1...e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81)

---
updated-dependencies:
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.37.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
- dependency-name: github/codeql-action/init
  dependency-version: 4.37.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-28 05:54:42 +00:00
CrazyMax 371161bbe7 Merge pull request #1058 from crazy-max/fix-dockerhub-oidc-error-handling
surface Docker Hub OIDC error responses
2026-07-27 18:30:08 +02:00
CrazyMax 5dc73df38e chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-27 17:15:04 +02:00
CrazyMax 2aa1edee0b surface Docker Hub OIDC error responses
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-27 17:14:54 +02:00
dependabot[bot] b472f5b276 build(deps): bump postcss from 8.5.10 to 8.5.22
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.10 to 8.5.22.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.10...8.5.22)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.22
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-24 12:24:30 +00:00
CrazyMax abd2ef45e7 Merge pull request #1055 from crazy-max/test-registry-auth-oidc
test: cover Docker Hub OIDC with registry-auth
2026-07-24 14:22:47 +02:00
CrazyMax d49d3a9839 Merge pull request #1054 from crazy-max/oidc-missing-dhi
support dhi.io as Docker Hub OIDC registry
2026-07-24 14:22:20 +02:00
CrazyMax b58b17c30b test: cover Docker Hub OIDC with registry-auth
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-24 10:37:01 +02:00
CrazyMax be646c21ce chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-24 10:33:14 +02:00
CrazyMax d77c059cb9 support dhi.io as Docker Hub OIDC registry
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-24 10:26:38 +02:00
dependabot[bot] 9d876d6c33 build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.2.2 to 6.2.3.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/517a711dbcd0e402f90c77e7e2f81e849156e31d...e6de054238d6b7531b4efff3b6587d9aade6a06c)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-24 05:54:30 +00:00
CrazyMax 06fb636fac Merge pull request #1037 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-001763bcc2
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-07-23 13:48:53 +02:00
github-actions[bot] a8bc953911 [dependabot skip] chore: update generated content 2026-07-23 11:45:23 +00:00
dependabot[bot] f54b9019bf build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1077.0 to 3.1091.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1091.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1077.0 to 3.1091.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1091.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1079.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1079.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-23 11:44:24 +00:00
CrazyMax 77f18f6713 Merge pull request #1049 from docker/dependabot/github_actions/codeql-actions-6a53124c02
build(deps): bump the codeql-actions group with 2 updates
2026-07-23 13:41:05 +02:00
CrazyMax ec0bf287fb Merge pull request #1050 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.94.0
build(deps): bump @docker/actions-toolkit from 0.93.0 to 0.94.0
2026-07-23 13:40:40 +02:00
github-actions[bot] e37171e542 [dependabot skip] chore: update generated content 2026-07-23 11:36:42 +00:00
dependabot[bot] 1d3a7174ca build(deps): bump @docker/actions-toolkit from 0.93.0 to 0.94.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.93.0 to 0.94.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.93.0...v0.94.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.94.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-23 11:35:46 +00:00
CrazyMax a5e9150fe2 Merge pull request #1048 from docker/dockerhub-oidc-support
Docker Hub OIDC login support
2026-07-23 13:24:10 +02:00
dependabot[bot] a482ba4366 build(deps): bump the codeql-actions group with 2 updates
Bumps the codeql-actions group with 2 updates: [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.36.3 to 4.37.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/54f647b7e1bb85c95cddabcd46b0c578ec92bc1a...e0647621c2984b5ed2f768cb892365bf2a616ad1)

Updates `github/codeql-action/analyze` from 4.36.3 to 4.37.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/54f647b7e1bb85c95cddabcd46b0c578ec92bc1a...e0647621c2984b5ed2f768cb892365bf2a616ad1)

---
updated-dependencies:
- dependency-name: github/codeql-action/init
  dependency-version: 4.37.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-actions
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.37.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-23 05:54:58 +00:00
CrazyMax 9e3d36ea10 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-22 13:01:47 +02:00
CrazyMax 14d6a7934e docker hub oidc support
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-22 13:01:46 +02:00
CrazyMax 03c851098f Merge pull request #1044 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.93.0
build(deps): bump @docker/actions-toolkit from 0.92.0 to 0.93.0
2026-07-22 08:53:04 +02:00
CrazyMax ad8a81f098 Merge pull request #1046 from docker/dependabot/npm_and_yarn/brace-expansion-1.1.16
build(deps): bump brace-expansion from 1.1.13 to 1.1.16
2026-07-22 08:51:57 +02:00
github-actions[bot] 6d219a4928 [dependabot skip] chore: update generated content 2026-07-22 06:51:44 +00:00
dependabot[bot] b3200694f4 build(deps): bump @docker/actions-toolkit from 0.92.0 to 0.93.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.92.0 to 0.93.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.92.0...v0.93.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.93.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-22 06:50:49 +00:00
github-actions[bot] 08d3680aa8 [dependabot skip] chore: update generated content 2026-07-22 06:50:38 +00:00
CrazyMax 381f5a4f5e Merge pull request #1042 from docker/dependabot/github_actions/codeql-actions-af2beed448
build(deps): bump the codeql-actions group with 2 updates
2026-07-22 08:49:44 +02:00
dependabot[bot] 4bc69ce4fd build(deps): bump brace-expansion from 1.1.13 to 1.1.16
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.13 to 1.1.16.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v1.1.13...v1.1.16)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.16
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-22 06:49:44 +00:00
CrazyMax ddf94996dc Merge pull request #1043 from docker/dependabot/github_actions/actions/setup-node-7.0.0
build(deps): bump actions/setup-node from 6.4.0 to 7.0.0
2026-07-22 08:49:18 +02:00
CrazyMax d870eb57d3 Merge pull request #1045 from docker/dependabot/github_actions/actions/checkout-7.0.1
build(deps): bump actions/checkout from 7.0.0 to 7.0.1
2026-07-22 08:48:31 +02:00
CrazyMax 4d7b1348c8 Merge pull request #1038 from docker/dependabot/npm_and_yarn/js-yaml-5.2.1
build(deps): bump js-yaml from 5.2.0 to 5.2.1
2026-07-22 08:47:43 +02:00
dependabot[bot] 608836776e build(deps): bump actions/checkout from 7.0.0 to 7.0.1
Bumps [actions/checkout](https://github.com/actions/checkout) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0...3d3c42e5aac5ba805825da76410c181273ba90b1)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-21 05:52:59 +00:00
dependabot[bot] 3bab31f360 build(deps): bump actions/setup-node from 6.4.0 to 7.0.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.4.0 to 7.0.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e...820762786026740c76f36085b0efc47a31fe5020)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-15 05:52:18 +00:00
dependabot[bot] dc654b7be1 build(deps): bump the codeql-actions group with 2 updates
Bumps the codeql-actions group with 2 updates: [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.36.2 to 4.36.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/8aad20d150bbac5944a9f9d289da16a4b0d87c1e...54f647b7e1bb85c95cddabcd46b0c578ec92bc1a)

Updates `github/codeql-action/analyze` from 4.36.2 to 4.36.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/8aad20d150bbac5944a9f9d289da16a4b0d87c1e...54f647b7e1bb85c95cddabcd46b0c578ec92bc1a)

---
updated-dependencies:
- dependency-name: github/codeql-action/init
  dependency-version: 4.36.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.36.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: codeql-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-09 12:01:00 +00:00
CrazyMax c66a8fcb24 Merge pull request #1041 from crazy-max/group-codeql-dependabot-updates
chore: group codeql dependabot updates
2026-07-09 13:57:49 +02:00
CrazyMax 6d7f9d458a chore: group codeql dependabot updates
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-09 12:43:17 +02:00
CrazyMax 13169716da Merge pull request #1040 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.2.2
build(deps): bump aws-actions/configure-aws-credentials from 6.2.1 to 6.2.2
2026-07-09 10:17:14 +02:00
dependabot[bot] c1aa9e5f45 build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/254c19bd240aabef8777f48595e9d2d7b972184b...517a711dbcd0e402f90c77e7e2f81e849156e31d)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-09 05:53:39 +00:00
github-actions[bot] 026f3975fd [dependabot skip] chore: update generated content 2026-07-06 05:55:36 +00:00
dependabot[bot] 3dbb99fd00 build(deps): bump js-yaml from 5.2.0 to 5.2.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 5.2.0 to 5.2.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/5.2.0...5.2.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 5.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-06 05:54:34 +00:00
CrazyMax af1e73f918 Merge pull request #1034 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-853218ef63
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-07-03 15:02:31 +02:00
github-actions[bot] da722bde43 [dependabot skip] chore: update generated content 2026-07-03 13:00:13 +00:00
dependabot[bot] 2916ad60bd build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1076.0 to 3.1077.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1077.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1076.0 to 3.1077.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1077.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1077.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1077.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-03 12:59:24 +00:00
CrazyMax ca0a662f78 Merge pull request #1035 from crazy-max/fix-registry-auth-empty-mask
skip empty registry-auth secret mask
2026-07-03 14:56:11 +02:00
CrazyMax c455755a57 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-03 14:12:13 +02:00
CrazyMax 48351901f8 skip empty registry-auth secret mask
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-03 14:12:12 +02:00
CrazyMax 992421c6e6 Merge pull request #1033 from docker/dependabot/github_actions/docker/bake-action-7.3.0
build(deps): bump docker/bake-action from 7.2.0 to 7.3.0
2026-07-03 11:10:14 +02:00
CrazyMax b249b43765 Merge pull request #1032 from docker/dependabot/github_actions/docker/bake-action/subaction/matrix-7.3.0
build(deps): bump docker/bake-action/subaction/matrix from 7.2.0 to 7.3.0
2026-07-03 11:09:46 +02:00
dependabot[bot] 1b67977736 build(deps): bump docker/bake-action from 7.2.0 to 7.3.0
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 7.2.0 to 7.3.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/6614cfa25eff9a0b2b2697efb0b6159e7680d584...d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-03 05:53:41 +00:00
dependabot[bot] 9d49d6a323 build(deps): bump docker/bake-action/subaction/matrix
Bumps [docker/bake-action/subaction/matrix](https://github.com/docker/bake-action) from 7.2.0 to 7.3.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/6614cfa25eff9a0b2b2697efb0b6159e7680d584...d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b)

---
updated-dependencies:
- dependency-name: docker/bake-action/subaction/matrix
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-03 05:53:34 +00:00
CrazyMax c99871dec2 Merge pull request #1030 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-7bb15b6937
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-07-02 09:45:29 +02:00
github-actions[bot] b43355553d [dependabot skip] chore: update generated content 2026-07-02 07:41:45 +00:00
dependabot[bot] 678a46a45e build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1075.0 to 3.1076.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1076.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1075.0 to 3.1076.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1076.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1076.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1076.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-02 07:40:49 +00:00
CrazyMax f9a0aea0f2 Merge pull request #1031 from docker/dependabot/npm_and_yarn/sigstore-4.1.1
build(deps): bump sigstore from 4.1.0 to 4.1.1
2026-07-02 09:37:57 +02:00
dependabot[bot] cc1e4cb459 build(deps): bump sigstore from 4.1.0 to 4.1.1
Bumps [sigstore](https://github.com/sigstore/sigstore-js) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/sigstore/sigstore-js/releases)
- [Commits](https://github.com/sigstore/sigstore-js/compare/sigstore@4.1.0...sigstore@4.1.1)

---
updated-dependencies:
- dependency-name: sigstore
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-02 07:36:15 +00:00
CrazyMax 02e1730369 Merge pull request #1029 from docker/dependabot/npm_and_yarn/sigstore/verify-3.1.1
build(deps): bump @sigstore/verify from 3.1.0 to 3.1.1
2026-07-02 09:34:34 +02:00
dependabot[bot] b548518374 build(deps): bump @sigstore/verify from 3.1.0 to 3.1.1
Bumps [@sigstore/verify](https://github.com/sigstore/sigstore-js) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/sigstore/sigstore-js/releases)
- [Commits](https://github.com/sigstore/sigstore-js/compare/sigstore@3.1.0...@sigstore/verify@3.1.1)

---
updated-dependencies:
- dependency-name: "@sigstore/verify"
  dependency-version: 3.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-02 04:47:55 +00:00
CrazyMax a244be3944 Merge pull request #1027 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.92.0
build(deps): bump @docker/actions-toolkit from 0.91.0 to 0.92.0
2026-07-01 18:21:39 +02:00
github-actions[bot] ee0d698156 [dependabot skip] chore: update generated content 2026-07-01 15:53:52 +00:00
dependabot[bot] 127dc2c62e build(deps): bump @docker/actions-toolkit from 0.91.0 to 0.92.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.91.0 to 0.92.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.91.0...v0.92.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.92.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:52:52 +00:00
CrazyMax 28d93c8e86 Merge pull request #999 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-b2b0f464cc
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-07-01 17:50:44 +02:00
github-actions[bot] bb4abc2b4e [dependabot skip] chore: update generated content 2026-07-01 15:49:15 +00:00
dependabot[bot] 46b0f7f7db build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1052.0 to 3.1075.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1075.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1052.0 to 3.1075.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1075.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1053.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1053.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:48:13 +00:00
CrazyMax 02ce84ffb2 Merge pull request #1017 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-c4582b8cb5
build(deps): bump the proxy-agent-dependencies group across 1 directory with 2 updates
2026-07-01 17:34:10 +02:00
github-actions[bot] aac44b8023 [dependabot skip] chore: update generated content 2026-07-01 15:31:48 +00:00
dependabot[bot] e6a67367bb build(deps): bump the proxy-agent-dependencies group across 1 directory with 2 updates
Bumps the proxy-agent-dependencies group with 2 updates in the / directory: [http-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/http-proxy-agent) and [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent).


Updates `http-proxy-agent` from 9.0.0 to 9.1.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/http-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/http-proxy-agent@9.1.0/packages/http-proxy-agent)

Updates `https-proxy-agent` from 9.0.0 to 9.1.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/https-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/https-proxy-agent@9.1.0/packages/https-proxy-agent)

---
updated-dependencies:
- dependency-name: http-proxy-agent
  dependency-version: 9.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: proxy-agent-dependencies
- dependency-name: https-proxy-agent
  dependency-version: 9.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: proxy-agent-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:30:48 +00:00
CrazyMax e12cbe383a Merge pull request #1026 from docker/dependabot/github_actions/actions/checkout-7.0.0
build(deps): bump actions/checkout from 6.0.3 to 7.0.0
2026-07-01 17:28:18 +02:00
CrazyMax 9ef03105cf Merge pull request #1028 from docker/dependabot/npm_and_yarn/js-yaml-5.2.0
build(deps): bump js-yaml from 4.1.1 to 5.2.0
2026-07-01 17:27:51 +02:00
github-actions[bot] cca864db18 [dependabot skip] chore: update generated content 2026-07-01 15:24:52 +00:00
dependabot[bot] ecd3da5c9a build(deps): bump js-yaml from 4.1.1 to 5.2.0
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.1 to 5.2.0.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.1...5.2.0)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 5.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:23:59 +00:00
dependabot[bot] 9f1db17ebe build(deps): bump actions/checkout from 6.0.3 to 7.0.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.3 to 7.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/df4cb1c069e1874edd31b4311f1884172cec0e10...9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:22:55 +00:00
CrazyMax c52380340b Merge pull request #1020 from docker/dependabot/npm_and_yarn/undici-6.27.0
build(deps): bump undici from 6.24.1 to 6.27.0
2026-07-01 17:19:54 +02:00
github-actions[bot] f941705c01 [dependabot skip] chore: update generated content 2026-07-01 15:16:40 +00:00
dependabot[bot] 1a44f13eda build(deps): bump undici from 6.24.1 to 6.27.0
Bumps [undici](https://github.com/nodejs/undici) from 6.24.1 to 6.27.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v6.24.1...v6.27.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 6.27.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:15:42 +00:00
CrazyMax 4691d54c76 Merge pull request #1023 from docker/dependabot/npm_and_yarn/sigstore/core-3.2.1
build(deps): bump @sigstore/core from 3.1.0 to 3.2.1
2026-07-01 17:13:37 +02:00
CrazyMax 2564fa2273 Merge pull request #1019 from docker/dependabot/npm_and_yarn/vite-7.3.5
build(deps): bump vite from 7.3.3 to 7.3.6
2026-07-01 17:13:08 +02:00
CrazyMax 1d117b3de6 Merge pull request #1009 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.2.0
build(deps): bump aws-actions/configure-aws-credentials from 6.1.2 to 6.2.1
2026-07-01 17:12:12 +02:00
CrazyMax 54354cec26 Merge pull request #1014 from docker/dependabot/github_actions/github/codeql-action-4.36.2
build(deps): bump github/codeql-action from 4.36.0 to 4.36.2
2026-07-01 17:11:38 +02:00
CrazyMax 291ce15746 Merge pull request #1015 from docker/dependabot/github_actions/codecov/codecov-action-7.0.0
build(deps): bump codecov/codecov-action from 6.0.1 to 7.0.0
2026-07-01 17:10:49 +02:00
dependabot[bot] d144cc9aaf build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.1.2 to 6.2.1.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/acca2b1b2070338fb9fd1ca27ecee81d687e58e5...254c19bd240aabef8777f48595e9d2d7b972184b)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 15:10:47 +00:00
CrazyMax 9bc29939f1 Merge pull request #1013 from docker/dependabot/github_actions/crazy-max-dot-github-a6a0ecf511
build(deps): bump the crazy-max-dot-github group across 1 directory with 2 updates
2026-07-01 17:10:25 +02:00
CrazyMax 42702f7ab5 Merge pull request #1012 from docker/dependabot/github_actions/actions/checkout-6.0.3
build(deps): bump actions/checkout from 6.0.2 to 6.0.3
2026-07-01 17:08:58 +02:00
CrazyMax c5a66b573f Merge pull request #1025 from crazy-max/fix-yarn-preapprove-actions-toolkit
chore: allow actions-toolkit to bypass yarn age gate
2026-07-01 14:00:00 +02:00
CrazyMax f356dc0f57 Merge pull request #1024 from crazy-max/dependabot-skip-update-dist
dependabot: skip for update-dist commits
2026-07-01 13:59:57 +02:00
CrazyMax 82c046b85a chore: allow actions-toolkit to bypass yarn age gate
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-07-01 11:43:31 +02:00
CrazyMax f482210217 dependabot: skip for update-dist commits
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-30 11:08:58 +02:00
dependabot[bot] 528895cbd3 build(deps): bump the crazy-max-dot-github group across 1 directory with 2 updates
Bumps the crazy-max-dot-github group with 2 updates in the / directory: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.8.0 to 1.10.1
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/9ba6e6f9450baf3b1237f8035c1fdc45932510bd...46267a6e61cd56aac2fc79943df180152f4c89d6)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.8.0 to 1.10.1
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/9ba6e6f9450baf3b1237f8035c1fdc45932510bd...46267a6e61cd56aac2fc79943df180152f4c89d6)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-30 05:52:19 +00:00
dependabot[bot] 3be61c42c8 build(deps): bump vite from 7.3.3 to 7.3.6
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.3.3 to 7.3.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v7.3.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.3.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 7.3.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-29 14:17:42 +00:00
github-actions[bot] 3d128cd17b chore: update generated content 2026-06-29 14:17:09 +00:00
dependabot[bot] 4755f4fe4d build(deps): bump @sigstore/core from 3.1.0 to 3.2.1
Bumps [@sigstore/core](https://github.com/sigstore/sigstore-js) from 3.1.0 to 3.2.1.
- [Release notes](https://github.com/sigstore/sigstore-js/releases)
- [Commits](https://github.com/sigstore/sigstore-js/compare/sigstore@3.1.0...@sigstore/core@3.2.1)

---
updated-dependencies:
- dependency-name: "@sigstore/core"
  dependency-version: 3.2.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-29 14:16:11 +00:00
CrazyMax 17f7c1809f Merge pull request #1022 from crazy-max/fix-esbuild
preserve names in esbuild bundle
2026-06-29 16:14:30 +02:00
CrazyMax a2447fe0f6 preserve names in esbuild bundle
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-29 14:56:24 +02:00
temenuzhka-thede 3864d6aed8 Merge pull request #1018 from docker/sec-cli/npm-ci-20260612-182458
fix: replace npm install with npm ci (20260612-182458)
2026-06-12 14:10:03 -05:00
securityeng-bot[bot] 64b25388de fix: use lockfile-aware install commands 2026-06-12 18:24:59 +00:00
dependabot[bot] 17162ab65f build(deps): bump actions/checkout from 6.0.2 to 6.0.3
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-11 21:24:12 +00:00
CrazyMax 37a9a4b333 Merge pull request #1016 from docker/ci-ecr-oidc
ci: test AWS ECR with OIDC
2026-06-11 23:22:05 +02:00
CrazyMax eb1946f59c ci: test AWS ECR with OIDC
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-10 14:32:23 +02:00
CrazyMax 946f94de75 Merge pull request #1007 from crazy-max/ci-creds-update
ci: update registry auth credentials
2026-06-09 10:45:03 +02:00
dependabot[bot] c07548e8a6 build(deps): bump codecov/codecov-action from 6.0.1 to 7.0.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 6.0.1 to 7.0.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/e79a6962e0d4c0c17b229090214935d2e33f8354...fb8b3582c8e4def4969c97caa2f19720cb33a72f)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-09 05:53:38 +00:00
dependabot[bot] 20036e466f build(deps): bump github/codeql-action from 4.36.0 to 4.36.2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.36.0 to 4.36.2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/7211b7c8077ea37d8641b6271f6a365a22a5fbfa...8aad20d150bbac5944a9f9d289da16a4b0d87c1e)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.36.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-08 05:53:38 +00:00
CrazyMax f50e5f80f8 ci: update registry to auth to gar
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-04 16:19:19 +02:00
CrazyMax c5e5fd0017 ci: update registry to auth to acr
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-04 16:19:18 +02:00
CrazyMax 60e5331f1c ci: update registry to auth to ecr
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-04 16:19:18 +02:00
CrazyMax 6a848e5a16 ci: update secrets to auth to docker hub
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-04 16:19:18 +02:00
CrazyMax 0267638d8a Merge pull request #1008 from crazy-max/ci-ghcr-dind-test-image
ci: replace GHCR PAT in DinD test
2026-06-04 16:12:23 +02:00
CrazyMax 250c56f969 ci: replace GHCR PAT in DinD test
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-06-02 14:16:24 +02:00
CrazyMax 3999a1f436 Merge pull request #1005 from crazy-max/yarn-update
update yarn to 4.15.0
2026-05-28 18:43:24 +02:00
CrazyMax 0c083d7a7a update yarn to 4.15.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-05-28 15:13:23 +02:00
CrazyMax d74126fafb Merge pull request #1004 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.91.0
build(deps): bump @docker/actions-toolkit from 0.90.0 to 0.91.0
2026-05-28 12:15:32 +02:00
github-actions[bot] 008abcd773 chore: update generated content 2026-05-28 08:20:36 +00:00
dependabot[bot] b3d0cb50ae build(deps): bump @docker/actions-toolkit from 0.90.0 to 0.91.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.90.0 to 0.91.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.90.0...v0.91.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.91.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-28 08:19:41 +00:00
CrazyMax d1f19df6c2 Merge pull request #1003 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.1.2
build(deps): bump aws-actions/configure-aws-credentials from 6.1.1 to 6.1.2
2026-05-28 10:18:22 +02:00
CrazyMax f9a14677ff Merge pull request #1002 from docker/dependabot/npm_and_yarn/tmp-0.2.7
build(deps): bump tmp from 0.2.5 to 0.2.7
2026-05-28 10:17:21 +02:00
CrazyMax 72b845d964 Merge pull request #1001 from docker/sec-cli/ignore-scripts-fix-20260527-193038
ci: add ignore-scripts to Node package manager config (20260527-193038)
2026-05-28 09:53:26 +02:00
dependabot[bot] 22319e3a05 build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.1.1 to 6.1.2.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/d979d5b3a71173a29b74b5b88418bfda9437d885...acca2b1b2070338fb9fd1ca27ecee81d687e58e5)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-28 05:52:36 +00:00
github-actions[bot] 9ff664c6c9 chore: update generated content 2026-05-28 03:24:42 +00:00
dependabot[bot] 394f625bb6 build(deps): bump tmp from 0.2.5 to 0.2.7
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.5 to 0.2.7.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.5...v0.2.7)

---
updated-dependencies:
- dependency-name: tmp
  dependency-version: 0.2.7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-28 03:23:48 +00:00
securityeng-bot[bot] 42471eb9ff ci: enforce ignore-scripts policy for Node package managers 2026-05-27 20:04:14 +00:00
CrazyMax 04bf81902c Merge pull request #996 from crazy-max/azure-oidc
document ACR OIDC login with Azure Login
2026-05-27 13:37:45 +02:00
CrazyMax 5dbe09f08d Merge pull request #997 from docker/dependabot/github_actions/github/codeql-action-4.36.0
build(deps): bump github/codeql-action from 4.35.5 to 4.36.0
2026-05-26 17:24:21 +02:00
dependabot[bot] 652059025f build(deps): bump github/codeql-action from 4.35.5 to 4.36.0
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.35.5 to 4.36.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/9e0d7b8d25671d64c341c19c0152d693099fb5ba...7211b7c8077ea37d8641b6271f6a365a22a5fbfa)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.36.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-26 07:53:28 +00:00
CrazyMax 2ff7bc63ff Merge pull request #998 from docker/dependabot/github_actions/docker/bake-action-7.2.0
build(deps): bump docker/bake-action from 7.1.0 to 7.2.0
2026-05-26 09:50:52 +02:00
dependabot[bot] 8f60ab8910 build(deps): bump docker/bake-action from 7.1.0 to 7.2.0
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 7.1.0 to 7.2.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/a66e1c87e2eca0503c343edf1d208c716d54b8a8...6614cfa25eff9a0b2b2697efb0b6159e7680d584)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 07:44:22 +00:00
CrazyMax 401fdfb10a update action versions in README examples
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-05-22 16:20:00 +02:00
CrazyMax 9720944471 use GitHub alerts for README notes
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-05-22 16:20:00 +02:00
CrazyMax b04cd7ece0 document ACR OIDC login with Azure Login
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-05-22 16:19:59 +02:00
CrazyMax 650006c6eb Merge pull request #960 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-6bb1d9fb1e
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2026-05-22 12:25:59 +02:00
github-actions[bot] 99df1a3f6d chore: update generated content 2026-05-22 09:49:50 +00:00
dependabot[bot] 3ab375f324 build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates in the / directory: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1022.0 to 3.1050.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1050.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1022.0 to 3.1050.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1050.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1024.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1024.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 09:48:59 +00:00
CrazyMax 39d85804ae Merge pull request #970 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.88.0
build(deps): bump @docker/actions-toolkit from 0.86.0 to 0.90.0
2026-05-22 11:45:39 +02:00
github-actions[bot] 4eefcd33ca chore: update generated content 2026-05-22 09:41:22 +00:00
dependabot[bot] 56d092c8b3 build(deps): bump @docker/actions-toolkit from 0.86.0 to 0.90.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.86.0 to 0.90.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.86.0...v0.90.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.88.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 09:40:31 +00:00
CrazyMax e2e31ca870 Merge pull request #976 from docker/dependabot/npm_and_yarn/actions/core-3.0.1
build(deps): bump @actions/core from 3.0.0 to 3.0.1
2026-05-22 11:38:00 +02:00
github-actions[bot] 0bced941e8 chore: update generated content 2026-05-22 09:35:14 +00:00
dependabot[bot] 3e75a0f266 build(deps): bump @actions/core from 3.0.0 to 3.0.1
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 3.0.0 to 3.0.1.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-version: 3.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 09:34:21 +00:00
CrazyMax 365bebd9d6 Merge pull request #984 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.1.1
build(deps): bump aws-actions/configure-aws-credentials from 6.1.0 to 6.1.1
2026-05-22 09:46:36 +02:00
CrazyMax e7f6f8a91a Merge pull request #963 from docker/dependabot/npm_and_yarn/fast-xml-parser-5.5.8
build(deps): bump fast-xml-parser from 5.3.6 to 5.8.0
2026-05-22 09:46:01 +02:00
github-actions[bot] 05480f2a7d chore: update generated content 2026-05-21 17:23:50 +00:00
dependabot[bot] 31f21c3443 build(deps): bump fast-xml-parser from 5.3.6 to 5.8.0
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 5.3.6 to 5.8.0.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v5.3.6...v5.8.0)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-version: 5.5.8
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-21 17:22:57 +00:00
CrazyMax 4f5a161ff1 Merge pull request #979 from docker/dependabot/npm_and_yarn/postcss-8.5.10
build(deps): bump postcss from 8.5.6 to 8.5.10
2026-05-21 19:20:51 +02:00
CrazyMax e15d361870 Merge pull request #985 from docker/dependabot/npm_and_yarn/fast-xml-builder-1.2.0
build(deps): bump fast-xml-builder from 1.1.4 to 1.2.0
2026-05-21 18:30:33 +02:00
github-actions[bot] 9baec518af chore: update generated content 2026-05-21 16:07:40 +00:00
dependabot[bot] 66b5047e43 build(deps): bump fast-xml-builder from 1.1.4 to 1.2.0
Bumps [fast-xml-builder](https://github.com/NaturalIntelligence/fast-xml-builder) from 1.1.4 to 1.2.0.
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-builder/blob/main/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-builder/compare/v1.1.4...v1.2.0)

---
updated-dependencies:
- dependency-name: fast-xml-builder
  dependency-version: 1.2.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-21 16:06:38 +00:00
CrazyMax dae8e21ce2 Merge pull request #986 from docker/dependabot/npm_and_yarn/vite-7.3.3
build(deps): bump vite from 7.3.1 to 7.3.3
2026-05-21 18:04:19 +02:00
CrazyMax 0045eaa7a1 Merge pull request #988 from docker/dependabot/github_actions/crazy-max-dot-github-6667ecc476
build(deps): bump the crazy-max-dot-github group with 2 updates
2026-05-21 18:03:53 +02:00
CrazyMax 450ca8c2a5 Merge pull request #990 from docker/dependabot/github_actions/actions/create-github-app-token-3.2.0
build(deps): bump actions/create-github-app-token from 3.1.1 to 3.2.0
2026-05-21 18:03:27 +02:00
CrazyMax d6726b3526 Merge pull request #991 from docker/dependabot/npm_and_yarn/tar-7.5.15
build(deps): bump tar from 6.2.1 to 7.5.15
2026-05-21 18:03:06 +02:00
CrazyMax a2ea2dd0f1 Merge pull request #992 from docker/dependabot/github_actions/github/codeql-action-4.35.5
build(deps): bump github/codeql-action from 4.35.2 to 4.35.5
2026-05-21 18:02:36 +02:00
CrazyMax bd659cc69e Merge pull request #993 from docker/dependabot/npm_and_yarn/brace-expansion-5.0.6
build(deps): bump brace-expansion from 2.0.1 to 5.0.6
2026-05-21 18:02:14 +02:00
CrazyMax 43261b75b0 Merge pull request #994 from docker/dependabot/github_actions/codecov/codecov-action-6.0.1
build(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1
2026-05-21 18:01:48 +02:00
CrazyMax 745e12c13f Merge pull request #995 from crazy-max/zizmor-fixes
ci: restrict update-dist GitHub App token scope
2026-05-21 14:57:35 +02:00
CrazyMax 5244cbf81d ci: restrict update-dist GitHub App token scope
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-05-21 14:24:59 +02:00
dependabot[bot] 6778676cba build(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/57e3a136b779b570ffcdbf80b3bdc90e7fab3de2...e79a6962e0d4c0c17b229090214935d2e33f8354)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-20 10:36:25 +00:00
github-actions[bot] 24be3e65e6 chore: update generated content 2026-05-18 16:49:16 +00:00
dependabot[bot] 9abe73fe0b build(deps): bump brace-expansion from 2.0.1 to 5.0.6
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 2.0.1 to 5.0.6.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v2.0.1...v5.0.6)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 5.0.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 16:48:17 +00:00
dependabot[bot] b45b323e05 build(deps): bump github/codeql-action from 4.35.2 to 4.35.5
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.35.2 to 4.35.5.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/95e58e9a2cdfd71adc6e0353d5c52f41a045d225...9e0d7b8d25671d64c341c19c0152d693099fb5ba)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.35.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 08:04:15 +00:00
dependabot[bot] 963c6a6d1b build(deps): bump tar from 6.2.1 to 7.5.15
Bumps [tar](https://github.com/isaacs/node-tar) from 6.2.1 to 7.5.15.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.2.1...v7.5.15)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.15
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-15 00:39:58 +00:00
dependabot[bot] 2254f031f7 build(deps): bump actions/create-github-app-token from 3.1.1 to 3.2.0
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Changelog](https://github.com/actions/create-github-app-token/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/create-github-app-token/compare/1b10c78c7865c340bc4f6099eb2f838309f1e8c3...bcd2ba49218906704ab6c1aa796996da409d3eb1)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: 3.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-14 05:52:44 +00:00
dependabot[bot] d85f62f7d4 build(deps): bump the crazy-max-dot-github group with 2 updates
Bumps the crazy-max-dot-github group with 2 updates: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.7.1 to 1.8.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/64a0bfaf6e6bb1c448d6e4c42b11034ee7094f16...9ba6e6f9450baf3b1237f8035c1fdc45932510bd)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.7.1 to 1.8.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/64a0bfaf6e6bb1c448d6e4c42b11034ee7094f16...9ba6e6f9450baf3b1237f8035c1fdc45932510bd)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-12 10:55:20 +00:00
dependabot[bot] 604e8e9cf4 build(deps): bump vite from 7.3.1 to 7.3.3
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.3.1 to 7.3.3.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v7.3.3/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.3.3/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 7.3.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-10 00:38:13 +00:00
dependabot[bot] 482acf1aaf build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/ec61189d14ec14c8efccab744f656cffd0e33f37...d979d5b3a71173a29b74b5b88418bfda9437d885)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-07 05:52:52 +00:00
CrazyMax 9f4a8ea54e Merge pull request #980 from docker/dependabot/github_actions/crazy-max-dot-github-a3893cf95f
build(deps): bump the crazy-max-dot-github group with 2 updates
2026-04-27 09:36:56 +02:00
dependabot[bot] 6831c7566c build(deps): bump the crazy-max-dot-github group with 2 updates
Bumps the crazy-max-dot-github group with 2 updates: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.7.0 to 1.7.1
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/4a17dbaa9ce13920fc5bb8824eb89c16301e5ab2...64a0bfaf6e6bb1c448d6e4c42b11034ee7094f16)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.7.0 to 1.7.1
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/4a17dbaa9ce13920fc5bb8824eb89c16301e5ab2...64a0bfaf6e6bb1c448d6e4c42b11034ee7094f16)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 06:08:23 +00:00
dependabot[bot] 599ec30da7 build(deps): bump postcss from 8.5.6 to 8.5.10
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.6 to 8.5.10.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.6...8.5.10)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.10
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-24 17:40:44 +00:00
Tõnis Tiigi 174f89633e Merge pull request #978 from docker/esbuild
replace ncc with esbuild for action bundling
2026-04-24 10:39:01 -07:00
CrazyMax 6986616b80 replace ncc with esbuild for action bundling
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-04-24 11:06:05 +02:00
CrazyMax e33c55ff04 Merge pull request #965 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6.1.0
build(deps): bump aws-actions/configure-aws-credentials from 6.0.0 to 6.1.0
2026-04-24 09:53:48 +02:00
CrazyMax c318662ea5 Merge pull request #967 from docker/dependabot/github_actions/actions/create-github-app-token-3.1.1
build(deps): bump actions/create-github-app-token from 3.0.0 to 3.1.1
2026-04-24 09:49:05 +02:00
CrazyMax ae469901b0 Merge pull request #971 from docker/dependabot/github_actions/github/codeql-action-4.35.2
build(deps): bump github/codeql-action from 4.35.1 to 4.35.2
2026-04-24 09:48:54 +02:00
CrazyMax a1b00d1f67 Merge pull request #973 from docker/dependabot/github_actions/actions/setup-node-6.4.0
build(deps): bump actions/setup-node from 6.3.0 to 6.4.0
2026-04-24 09:48:31 +02:00
CrazyMax 60b37403f5 Merge pull request #974 from docker/dependabot/github_actions/crazy-max-dot-github-6f136b1f9e
build(deps): bump the crazy-max-dot-github group with 2 updates
2026-04-24 09:46:17 +02:00
dependabot[bot] 1307053441 build(deps): bump the crazy-max-dot-github group with 2 updates
Bumps the crazy-max-dot-github group with 2 updates: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/d89fe92d808a15e2b2ed5cdb62db7c172c31410d...4a17dbaa9ce13920fc5bb8824eb89c16301e5ab2)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/d89fe92d808a15e2b2ed5cdb62db7c172c31410d...4a17dbaa9ce13920fc5bb8824eb89c16301e5ab2)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-22 05:52:24 +00:00
dependabot[bot] 1ed1634702 build(deps): bump actions/setup-node from 6.3.0 to 6.4.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/53b83947a5a98c8d113130e565377fae1a50d02f...48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 6.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-21 05:53:38 +00:00
dependabot[bot] 5565f3ba0d build(deps): bump github/codeql-action from 4.35.1 to 4.35.2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.35.1 to 4.35.2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/c10b8064de6f491fea524254123dbe5e09572f13...95e58e9a2cdfd71adc6e0353d5c52f41a045d225)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.35.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-17 05:53:52 +00:00
Tõnis Tiigi 4a8376e001 Merge pull request #969 from crazy-max/fix-zizmor
ci(zizmor): update rules
2026-04-15 14:25:37 -07:00
CrazyMax d0fa2cf570 ci(zizmor): update rules
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-04-15 16:01:48 +02:00
CrazyMax d43e1c853e Merge pull request #968 from docker/dependabot/github_actions/docker/bake-action-7.1.0
build(deps): bump docker/bake-action from 7.0.0 to 7.1.0
2026-04-13 13:22:36 +02:00
dependabot[bot] 2f6998335c build(deps): bump docker/bake-action from 7.0.0 to 7.1.0
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 7.0.0 to 7.1.0.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/82490499d2e5613fcead7e128237ef0b0ea210f7...a66e1c87e2eca0503c343edf1d208c716d54b8a8)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-version: 7.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 05:56:43 +00:00
dependabot[bot] d65286840f build(deps): bump actions/create-github-app-token from 3.0.0 to 3.1.1
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 3.0.0 to 3.1.1.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/f8d387b68d61c58ab83c6c016672934102569859...1b10c78c7865c340bc4f6099eb2f838309f1e8c3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: 3.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 05:56:34 +00:00
CrazyMax 36864503dc Merge pull request #964 from docker/dependabot/github_actions/crazy-max-dot-github-f0991e81fd
build(deps): bump the crazy-max-dot-github group with 2 updates
2026-04-09 10:21:51 +02:00
dependabot[bot] ada68c7d01 build(deps): bump aws-actions/configure-aws-credentials
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/8df5847569e6427dd6c4fb1cf565c83acfa8afa7...ec61189d14ec14c8efccab744f656cffd0e33f37)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 05:53:57 +00:00
dependabot[bot] 55e1ea5a9a build(deps): bump the crazy-max-dot-github group with 2 updates
Bumps the crazy-max-dot-github group with 2 updates: [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) and [crazy-max/.github/.github/workflows/zizmor.yml](https://github.com/crazy-max/.github).


Updates `crazy-max/.github/.github/workflows/pr-assign-author.yml` from 1.3.0 to 1.6.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/bb328ea508cd6a89d0865555ddbeb148e5724aed...d89fe92d808a15e2b2ed5cdb62db7c172c31410d)

Updates `crazy-max/.github/.github/workflows/zizmor.yml` from 1.3.0 to 1.6.0
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/bb328ea508cd6a89d0865555ddbeb148e5724aed...d89fe92d808a15e2b2ed5cdb62db7c172c31410d)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
- dependency-name: crazy-max/.github/.github/workflows/zizmor.yml
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: crazy-max-dot-github
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 05:52:26 +00:00
CrazyMax ba754150c9 Merge pull request #961 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-0e4ea62516
build(deps): bump the proxy-agent-dependencies group with 2 updates
2026-04-07 10:00:22 +02:00
github-actions[bot] d8fcc4b9cc chore: update generated content 2026-04-06 05:54:33 +00:00
dependabot[bot] 149496aaf3 build(deps): bump the proxy-agent-dependencies group with 2 updates
Bumps the proxy-agent-dependencies group with 2 updates: [http-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/http-proxy-agent) and [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent).


Updates `http-proxy-agent` from 8.0.0 to 9.0.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/http-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/http-proxy-agent@9.0.0/packages/http-proxy-agent)

Updates `https-proxy-agent` from 8.0.0 to 9.0.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/https-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/https-proxy-agent@9.0.0/packages/https-proxy-agent)

---
updated-dependencies:
- dependency-name: http-proxy-agent
  dependency-version: 9.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: proxy-agent-dependencies
- dependency-name: https-proxy-agent
  dependency-version: 9.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: proxy-agent-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 05:53:29 +00:00
CrazyMax 4907a6ddec Merge pull request #930 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-35041e3d3e
build(deps): bump the aws-sdk-dependencies group with 2 updates
2026-04-02 18:54:56 +02:00
github-actions[bot] 1e233e691a chore: update generated content 2026-04-02 16:52:13 +00:00
dependabot[bot] 6c24ead680 build(deps): bump the aws-sdk-dependencies group with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.1000.0 to 3.1001.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1001.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.1000.0 to 3.1001.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.1001.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.1001.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.1001.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 16:51:06 +00:00
CrazyMax ee034d7094 Merge pull request #958 from docker/dependabot/npm_and_yarn/lodash-4.18.1
build(deps): bump lodash from 4.17.23 to 4.18.1
2026-04-02 18:48:15 +02:00
CrazyMax 1527209db9 Merge pull request #937 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-cf2536734f
build(deps): bump the proxy-agent-dependencies group across 1 directory with 2 updates
2026-04-02 18:47:38 +02:00
dependabot[bot] d39362aba4 build(deps): bump lodash from 4.17.23 to 4.18.1
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 16:45:25 +00:00
github-actions[bot] a6f092b568 chore: update generated content 2026-04-02 15:51:13 +00:00
dependabot[bot] 60953f0bed build(deps): bump the proxy-agent-dependencies group with 2 updates
Bumps the proxy-agent-dependencies group with 2 updates: [http-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/http-proxy-agent) and [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent).


Updates `http-proxy-agent` from 7.0.2 to 8.0.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/http-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/http-proxy-agent@8.0.0/packages/http-proxy-agent)

Updates `https-proxy-agent` from 7.0.6 to 8.0.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/https-proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/https-proxy-agent@8.0.0/packages/https-proxy-agent)

---
updated-dependencies:
- dependency-name: http-proxy-agent
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: proxy-agent-dependencies
- dependency-name: https-proxy-agent
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: proxy-agent-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 15:50:09 +00:00
CrazyMax 62c688590f Merge pull request #936 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.81.0
build(deps): bump @docker/actions-toolkit from 0.79.0 to 0.86.0
2026-04-02 17:47:39 +02:00
github-actions[bot] 102c0e6729 chore: update generated content 2026-04-02 15:44:24 +00:00
dependabot[bot] 72e5ceb81f build(deps): bump @docker/actions-toolkit from 0.79.0 to 0.81.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.79.0 to 0.81.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.79.0...v0.81.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.81.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 15:43:17 +00:00
CrazyMax e7e12d441a Merge pull request #938 from docker/dependabot/npm_and_yarn/undici-6.24.0
build(deps): bump undici from 6.23.0 to 6.24.1
2026-04-02 17:41:09 +02:00
github-actions[bot] 20103df299 chore: update generated content 2026-04-02 15:31:08 +00:00
dependabot[bot] 5be8034354 build(deps): bump undici from 6.23.0 to 6.24.0
Bumps [undici](https://github.com/nodejs/undici) from 6.23.0 to 6.24.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v6.23.0...v6.24.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 6.24.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 15:30:00 +00:00
CrazyMax 4fddf4fef5 Merge pull request #940 from docker/dependabot/npm_and_yarn/glob-10.5.0
build(deps): bump glob from 10.3.12 to 10.5.0
2026-04-02 17:28:05 +02:00
dependabot[bot] eb50903c80 build(deps): bump glob from 10.3.12 to 10.5.0
Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.12 to 10.5.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.3.12...v10.5.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 15:25:02 +00:00
CrazyMax b434872b94 Merge pull request #941 from docker/dependabot/npm_and_yarn/minimatch-3.1.5
build(deps): bump minimatch from 3.1.2 to 3.1.5
2026-04-02 17:23:13 +02:00
github-actions[bot] 2d420a4f14 chore: update generated content 2026-04-02 15:10:57 +00:00
dependabot[bot] ccb26d9283 build(deps): bump minimatch from 3.1.2 to 3.1.5
Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.1.2 to 3.1.5.
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 15:09:53 +00:00
CrazyMax e48e882fee Merge pull request #942 from docker/dependabot/npm_and_yarn/fast-xml-parser-5.3.6
build(deps): bump fast-xml-parser from 5.3.4 to 5.3.6
2026-04-02 17:08:02 +02:00
github-actions[bot] b0186b9cf5 chore: update generated content 2026-04-02 15:00:57 +00:00
dependabot[bot] 034c220d94 build(deps): bump fast-xml-parser from 5.3.4 to 5.3.6
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 5.3.4 to 5.3.6.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v5.3.4...v5.3.6)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-version: 5.3.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 14:59:49 +00:00
CrazyMax 3fdf3f727d Merge pull request #948 from docker/dependabot/npm_and_yarn/picomatch-4.0.4
build(deps): bump picomatch from 4.0.3 to 4.0.4
2026-04-02 16:57:46 +02:00
CrazyMax 6f14fdf8a4 Merge pull request #949 from docker/dependabot/npm_and_yarn/handlebars-4.7.9
build(deps): bump handlebars from 4.7.8 to 4.7.9
2026-04-02 16:57:31 +02:00
CrazyMax 6290052128 Merge pull request #952 from docker/dependabot/npm_and_yarn/brace-expansion-1.1.13
build(deps): bump brace-expansion from 1.1.12 to 1.1.13
2026-04-02 16:57:04 +02:00
CrazyMax bb555fc48d Merge pull request #957 from crazy-max/fix-update-dist
ci: stop update-dist reruns after generated dist pushes
2026-04-01 15:07:43 +02:00
CrazyMax 6de6c60d10 ci: stop update-dist reruns after generated dist pushes
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-04-01 13:10:02 +02:00
CrazyMax de05a6d3a2 Merge pull request #956 from docker/dependabot/github_actions/codecov/codecov-action-6.0.0
build(deps): bump codecov/codecov-action from 5.5.4 to 6.0.0
2026-03-31 09:31:16 +02:00
dependabot[bot] 5ac140e711 build(deps): bump codecov/codecov-action from 5.5.4 to 6.0.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.4 to 6.0.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/75cd11691c0faa626561e295848008c8a7dddffe...57e3a136b779b570ffcdbf80b3bdc90e7fab3de2)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-31 01:51:57 +00:00
Tõnis Tiigi bb9683dca2 Merge pull request #955 from crazy-max/zizmor
ci: zizmor workflow
2026-03-30 18:49:37 -07:00
CrazyMax abb6787042 fix zizmor findings
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-30 13:44:09 +02:00
CrazyMax a40c6a7122 ci: zizmor workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-30 13:37:19 +02:00
CrazyMax 5c42dd293b Merge pull request #954 from docker/dependabot/github_actions/crazy-max/dot-github/dot-github/workflows/pr-assign-author.yml-1.3.0
build(deps): bump crazy-max/.github/.github/workflows/pr-assign-author.yml from 1.1.0 to 1.3.0
2026-03-30 09:58:21 +02:00
dependabot[bot] 1615afe9d3 build(deps): bump crazy-max/.github/.github/workflows/pr-assign-author.yml
Bumps [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) from 1.1.0 to 1.3.0.
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](https://github.com/crazy-max/.github/compare/20ef82212dc54bab5749f5e05576ca6d3c8a5773...bb328ea508cd6a89d0865555ddbeb148e5724aed)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 05:52:17 +00:00
github-actions[bot] c376ab6818 chore: update generated content 2026-03-27 16:14:23 +00:00
dependabot[bot] ed2fd52341 build(deps): bump brace-expansion from 1.1.12 to 1.1.13
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.12 to 1.1.13.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v1.1.12...v1.1.13)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.13
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-27 16:13:20 +00:00
dependabot[bot] 8ff08ec562 build(deps): bump handlebars from 4.7.8 to 4.7.9
Bumps [handlebars](https://github.com/handlebars-lang/handlebars.js) from 4.7.8 to 4.7.9.
- [Release notes](https://github.com/handlebars-lang/handlebars.js/releases)
- [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/v4.7.9/release-notes.md)
- [Commits](https://github.com/handlebars-lang/handlebars.js/compare/v4.7.8...v4.7.9)

---
updated-dependencies:
- dependency-name: handlebars
  dependency-version: 4.7.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-27 00:30:18 +00:00
dependabot[bot] b24684bb3c build(deps): bump picomatch from 4.0.3 to 4.0.4
Bumps [picomatch](https://github.com/micromatch/picomatch) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/picomatch/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-26 07:22:19 +00:00
Tõnis Tiigi a0d57b8e43 Merge pull request #947 from crazy-max/update-crazy-max-actions
ci: bump crazy-max/.github to 1.1.0
2026-03-25 10:43:18 -07:00
CrazyMax 6eab1c84d2 ci: bump crazy-max/.github to 1.1.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-25 12:36:10 +01:00
CrazyMax 292fe2d7ee Merge pull request #944 from docker/dependabot/npm_and_yarn/flatted-3.4.2
build(deps): bump flatted from 3.3.3 to 3.4.2
2026-03-24 17:19:58 +01:00
CrazyMax 717e062c09 Merge pull request #945 from crazy-max/fix-scope-dir-dockerhub
fix scoped Docker Hub cleanup path when registry is omitted
2026-03-24 17:19:19 +01:00
CrazyMax b9381571b7 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-24 10:29:02 +01:00
CrazyMax 7277d4d442 fix scoped Docker Hub cleanup path when registry is omitted
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-24 10:28:31 +01:00
dependabot[bot] 955b3c705f build(deps): bump flatted from 3.3.3 to 3.4.2
Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.3 to 3.4.2.
- [Commits](https://github.com/WebReflection/flatted/compare/v3.3.3...v3.4.2)

---
updated-dependencies:
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 15:58:55 +00:00
CrazyMax da5b89b92c Merge pull request #943 from crazy-max/codeql
ci: update codeql workflow
2026-03-20 16:57:15 +01:00
CrazyMax b78dc2c156 ci: update codeql workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-20 11:48:51 +01:00
CrazyMax c144859092 Merge pull request #939 from docker/dependabot/github_actions/actions/create-github-app-token-3
build(deps): bump actions/create-github-app-token from 2 to 3
2026-03-16 12:45:34 +01:00
dependabot[bot] cf45a603d2 build(deps): bump actions/create-github-app-token from 2 to 3
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2 to 3.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 05:52:18 +00:00
Tõnis Tiigi 9fe7774c8f Merge pull request #934 from docker/dependabot/github_actions/docker/bake-action-7
build(deps): bump docker/bake-action from 6 to 7
2026-03-09 12:35:04 -07:00
CrazyMax 2b784c0f37 ci: switch to matrix subaction
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-06 09:53:04 +01:00
dependabot[bot] 89452f99ba build(deps): bump docker/bake-action from 6 to 7
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 6 to 7.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/v6...v7)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-06 05:52:22 +00:00
Tõnis Tiigi db14339dbc Merge pull request #931 from crazy-max/update-readme
readme: update to v4
2026-03-05 08:01:04 -08:00
CrazyMax e46b7e3300 Merge pull request #932 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.79.0
build(deps): bump @docker/actions-toolkit from 0.77.0 to 0.79.0
2026-03-05 08:32:54 +01:00
github-actions[bot] 126accdd0b chore: update generated content 2026-03-05 05:53:59 +00:00
dependabot[bot] 5c5e504cc6 build(deps): bump @docker/actions-toolkit from 0.77.0 to 0.79.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.77.0 to 0.79.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.77.0...v0.79.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.79.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-05 05:52:56 +00:00
CrazyMax bb0e4e1bb1 readme: update to v4
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-04 10:04:21 +01:00
CrazyMax b45d80f862 Merge pull request #929 from crazy-max/node24
node 24 as default runtime
2026-03-03 21:18:09 +01:00
CrazyMax 176cb9c12a node 24 as default runtime
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-03 18:19:04 +01:00
CrazyMax cad8984310 Merge pull request #920 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-6d5e1793b5
build(deps): bump the aws-sdk-dependencies group with 2 updates
2026-03-03 18:17:02 +01:00
github-actions[bot] 92cbcb231e chore: update generated content 2026-03-03 17:11:57 +00:00
dependabot[bot] 5a2d6a71bd build(deps): bump the aws-sdk-dependencies group with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.978.0 to 3.981.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.981.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.978.0 to 3.981.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.981.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.981.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.981.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 17:10:41 +00:00
CrazyMax 44512b6b2e Merge pull request #928 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.77.0
build(deps): bump @docker/actions-toolkit from 0.76.0 to 0.77.0
2026-03-03 18:07:57 +01:00
github-actions[bot] 28737a5e46 chore: update generated content 2026-03-03 17:05:14 +00:00
dependabot[bot] dac079354a build(deps): bump @docker/actions-toolkit from 0.76.0 to 0.77.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.76.0 to 0.77.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.76.0...v0.77.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.77.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 17:03:11 +00:00
CrazyMax 62029f315d Merge pull request #919 from docker/dependabot/npm_and_yarn/actions/core-3.0.0
build(deps): bump @actions/core from 1.11.1 to 3.0.0
2026-03-03 18:00:56 +01:00
github-actions[bot] 08c8f064bf chore: update generated content 2026-03-03 15:37:26 +00:00
dependabot[bot] 30619c31e4 build(deps): bump @actions/core from 1.11.1 to 3.0.0
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.11.1 to 3.0.0.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 15:36:10 +00:00
CrazyMax c4a8904a93 Merge pull request #901 from docker/dependabot/npm_and_yarn/js-yaml-4.1.1
build(deps): bump js-yaml from 4.1.0 to 4.1.1
2026-03-03 16:33:46 +01:00
github-actions[bot] 7e7b532c5e chore: update generated content 2026-03-03 15:32:07 +00:00
dependabot[bot] 5dae9a6c13 build(deps): bump js-yaml from 4.1.0 to 4.1.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 15:30:52 +00:00
CrazyMax 4109968190 Merge pull request #921 from docker/dependabot/npm_and_yarn/isaacs/brace-expansion-5.0.1
build(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1
2026-03-03 16:28:06 +01:00
CrazyMax a93df38ecb Merge pull request #922 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-6
build(deps): bump aws-actions/configure-aws-credentials from 5 to 6
2026-03-03 16:25:58 +01:00
CrazyMax 305d099b3c Merge pull request #927 from crazy-max/esm
switch to ESM and update config/test wiring
2026-03-03 16:25:25 +01:00
CrazyMax 4693242509 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-02 09:43:48 +01:00
CrazyMax 14fe2ea9e2 dockerfile: fix vendoring
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-02 09:43:48 +01:00
CrazyMax 23e908783e update dev dependencies
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:29:31 +01:00
CrazyMax fdfb31da7c switch to ESM and update config/test wiring
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:29:31 +01:00
CrazyMax 6585fe535d switch from jest to vitest
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:22:24 +01:00
CrazyMax c859298dc3 update jest config since 30.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:16:48 +01:00
CrazyMax c3e61d16d7 migrate eslint config to new format required since 9.0.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:15:53 +01:00
CrazyMax 21f7481f00 update dev dependencies
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-01 11:14:59 +01:00
dependabot[bot] c38ec43af1 build(deps): bump aws-actions/configure-aws-credentials from 5 to 6
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 5 to 6.
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/v5...v6)

---
updated-dependencies:
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-05 05:52:22 +00:00
dependabot[bot] a68c413f92 build(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1
Bumps @isaacs/brace-expansion from 5.0.0 to 5.0.1.

---
updated-dependencies:
- dependency-name: "@isaacs/brace-expansion"
  dependency-version: 5.0.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 19:55:49 +00:00
CrazyMax 3227f5311c Merge pull request #909 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-57e60fb842
build(deps): bump the aws-sdk-dependencies group with 2 updates
2026-01-30 18:14:13 +01:00
github-actions[bot] 1e0f9435cc chore: update generated content 2026-01-30 14:42:57 +00:00
dependabot[bot] 0d33dcdeed build(deps): bump the aws-sdk-dependencies group with 2 updates
Bumps the aws-sdk-dependencies group with 2 updates: [@aws-sdk/client-ecr](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr) and [@aws-sdk/client-ecr-public](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-ecr-public).


Updates `@aws-sdk/client-ecr` from 3.890.0 to 3.958.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.958.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.890.0 to 3.958.0
- [Release notes](https://github.com/aws/aws-sdk-js-v3/releases)
- [Changelog](https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-ecr-public/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js-v3/commits/v3.958.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.958.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
- dependency-name: "@aws-sdk/client-ecr-public"
  dependency-version: 3.958.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-30 14:41:38 +00:00
CrazyMax 8e2a0b642a Merge pull request #910 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.72.0
build(deps): bump @docker/actions-toolkit from 0.63.0 to 0.72.0
2026-01-30 14:28:48 +01:00
github-actions[bot] da755dd47d chore: update generated content 2026-01-30 13:19:20 +00:00
dependabot[bot] 3b958849f4 build(deps): bump @docker/actions-toolkit from 0.63.0 to 0.72.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.63.0 to 0.72.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.63.0...v0.72.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-version: 0.72.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-30 13:17:58 +00:00
CrazyMax 2e1345c05f Merge pull request #916 from crazy-max/update-dist-workflow
ci: update-dist workflow
2026-01-29 20:33:15 +01:00
CrazyMax 82f62b3035 ci: update-dist workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-29 16:24:33 +01:00
39 changed files with 10319 additions and 19748 deletions

No files matched your search

-3
View File
@@ -1,3 +0,0 @@
/dist/**
/coverage/**
/node_modules/**
-24
View File
@@ -1,24 +0,0 @@
{
"env": {
"node": true,
"es6": true,
"jest": true
},
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended",
"plugin:jest/recommended",
"plugin:prettier/recommended"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"plugins": [
"@typescript-eslint",
"jest",
"prettier"
]
}
+3
View File
@@ -0,0 +1,3 @@
FROM docker:29.3@sha256:4d90f1f6c400315c2dba96d3ec93c01e64198395cbba04f79d12adce4f737029
ENTRYPOINT ["docker"]
+15
View File
@@ -0,0 +1,15 @@
name: Pull Docker image
description: Pull an image from a Docker container action
inputs:
image:
description: Image reference to pull
required: true
runs:
using: docker
image: Dockerfile
args:
- pull
- ${{ inputs.image }}
+13
View File
@@ -4,6 +4,15 @@ updates:
directory: "/"
schedule:
interval: "daily"
cooldown:
default-days: 2
groups:
crazy-max-dot-github:
patterns:
- "crazy-max/.github/*"
codeql-actions:
patterns:
- "github/codeql-action/*"
labels:
- "dependencies"
- "bot"
@@ -11,6 +20,10 @@ updates:
directory: "/"
schedule:
interval: "daily"
cooldown:
default-days: 2
exclude:
- "@docker/actions-toolkit"
versioning-strategy: "increase"
groups:
aws-sdk-dependencies:
+182 -47
View File
@@ -1,9 +1,15 @@
name: ci
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
GHCR_TEST_IMAGE: ghcr.io/docker/login-action-test:ci-${{ github.sha }}
on:
workflow_dispatch:
schedule:
@@ -19,7 +25,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Stop docker
run: |
@@ -43,7 +49,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
@@ -53,44 +59,74 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
logout: ${{ matrix.logout }}
dind:
push-ghcr:
runs-on: ubuntu-latest
env:
DOCKER_CONFIG: $HOME/.docker
permissions:
contents: read
packages: write
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
with:
registry: ghcr.io
username: ${{ secrets.GHCR_USERNAME }}
password: ${{ secrets.GHCR_PAT }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: DinD
uses: docker://docker
name: Build and push test image
run: |
docker buildx build --push -t "${GHCR_TEST_IMAGE}" - <<EOF
FROM scratch
LABEL org.opencontainers.image.title="docker/login-action CI test image"
LABEL org.opencontainers.image.description="Empty image used by CI to verify GHCR authentication."
LABEL org.opencontainers.image.source="https://github.com/${GITHUB_REPOSITORY}"
EOF
dind:
runs-on: ubuntu-latest
needs:
- push-ghcr
permissions:
contents: read
packages: read
env:
DOCKER_CONFIG: $HOME/.docker
steps:
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
with:
entrypoint: docker
args: pull ghcr.io/docker-ghactiontest/test
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: Pull private image
name: Pull test image from Docker CLI container action
uses: ./.github/actions/docker-pull
with:
image: ${{ env.GHCR_TEST_IMAGE }}
-
name: Pull test image
run: |
docker image prune -a -f >/dev/null 2>&1
docker pull ghcr.io/docker-ghactiontest/test
docker pull "${GHCR_TEST_IMAGE}"
acr:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to ACR
uses: ./
with:
registry: ${{ secrets.AZURE_REGISTRY_NAME }}.azurecr.io
registry: officialgithubactions.azurecr.io
username: ${{ secrets.AZURE_CLIENT_ID }}
password: ${{ secrets.AZURE_CLIENT_SECRET }}
@@ -105,13 +141,57 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
dockerhub-oidc:
permissions:
contents: read
id-token: write
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Docker Hub with OIDC
uses: ./
env:
DOCKERHUB_OIDC_CONNECTIONID: ${{ vars.DOCKERHUB_OIDC_CONNECTIONID }}
with:
username: ${{ vars.DOCKERHUB_OIDC_USERNAME }}
registry-auth-oidc:
permissions:
contents: read
id-token: write
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to registries
uses: ./
env:
DOCKERHUB_OIDC_CONNECTIONID: ${{ vars.DOCKERHUB_OIDC_CONNECTIONID }}
with:
registry-auth: |
- username: ${{ vars.DOCKERHUB_OIDC_USERNAME }}
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
ecr:
runs-on: ${{ matrix.os }}
@@ -124,12 +204,12 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to ECR
uses: ./
with:
registry: ${{ secrets.AWS_ACCOUNT_NUMBER }}.dkr.ecr.us-east-1.amazonaws.com
registry: 175142243308.dkr.ecr.us-east-1.amazonaws.com
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -144,10 +224,10 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v5
uses: aws-actions/configure-aws-credentials@e1253824e5c10ff9df46874f81ed3ec929e19cfd # v6.3.0
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -156,7 +236,34 @@ jobs:
name: Login to ECR
uses: ./
with:
registry: ${{ secrets.AWS_ACCOUNT_NUMBER }}.dkr.ecr.us-east-1.amazonaws.com
registry: 175142243308.dkr.ecr.us-east-1.amazonaws.com
ecr-oidc:
permissions:
contents: read
id-token: write
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@e1253824e5c10ff9df46874f81ed3ec929e19cfd # v6.3.0
with:
role-to-assume: arn:aws:iam::175142243308:role/official_gha_cicd_login_action
aws-region: us-east-1
-
name: Login to ECR
uses: ./
with:
registry: 175142243308.dkr.ecr.us-east-1.amazonaws.com
ecr-public:
runs-on: ${{ matrix.os }}
@@ -169,7 +276,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Public ECR
continue-on-error: ${{ matrix.os == 'windows-latest' }}
@@ -192,10 +299,10 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v5
uses: aws-actions/configure-aws-credentials@e1253824e5c10ff9df46874f81ed3ec929e19cfd # v6.3.0
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -207,6 +314,34 @@ jobs:
with:
registry: public.ecr.aws
ecr-public-oidc:
permissions:
contents: read
id-token: write
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@e1253824e5c10ff9df46874f81ed3ec929e19cfd # v6.3.0
with:
role-to-assume: arn:aws:iam::175142243308:role/official_gha_cicd_login_action
aws-region: us-east-1
-
name: Login to Public ECR
continue-on-error: ${{ matrix.os == 'windows-latest' }}
uses: ./
with:
registry: public.ecr.aws
ghcr:
runs-on: ${{ matrix.os }}
strategy:
@@ -218,7 +353,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
@@ -238,7 +373,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitLab
uses: ./
@@ -258,12 +393,12 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Google Artifact Registry
uses: ./
with:
registry: ${{ secrets.GAR_LOCATION }}-docker.pkg.dev
registry: us-east4-docker.pkg.dev
username: _json_key
password: ${{ secrets.GAR_JSON_KEY }}
@@ -278,7 +413,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Google Container Registry
uses: ./
@@ -292,14 +427,14 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to registries
uses: ./
with:
registry-auth: |
- username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
@@ -315,7 +450,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to registries
uses: ./
@@ -336,7 +471,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to registries
id: login
@@ -347,8 +482,8 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry-auth: |
- username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
-
name: Check
run: |
@@ -368,13 +503,13 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
scope: '@push'
-
name: Print config.json files
@@ -398,13 +533,13 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
scope: 'docker/buildx-bin@push'
-
name: Print config.json files
@@ -428,7 +563,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
@@ -459,7 +594,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Login to GitHub Container Registry
uses: ./
+24 -28
View File
@@ -1,50 +1,46 @@
name: codeql
permissions:
contents: read
on:
push:
branches:
- 'master'
- 'releases/v*'
paths:
- '.github/workflows/codeql.yml'
- 'dist/**'
- 'src/**'
pull_request:
paths:
- '.github/workflows/codeql.yml'
- 'dist/**'
- 'src/**'
permissions:
actions: read
contents: read
security-events: write
env:
NODE_VERSION: "24"
jobs:
analyze:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
language:
- javascript-typescript
permissions:
contents: read
security-events: write
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Enable corepack
run: |
corepack enable
yarn --version
-
name: Set up Node
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ env.NODE_VERSION }}
-
name: Initialize CodeQL
uses: github/codeql-action/init@v4
uses: github/codeql-action/init@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
languages: ${{ matrix.language }}
config: |
paths:
- src
-
name: Autobuild
uses: github/codeql-action/autobuild@v4
languages: javascript-typescript
build-mode: none
-
name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
uses: github/codeql-action/analyze@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
category: "/language:${{matrix.language}}"
category: "/language:javascript-typescript"
+2 -2
View File
@@ -4,14 +4,14 @@ permissions:
contents: read
on:
pull_request_target:
pull_request_target: # zizmor: ignore[dangerous-triggers] safe to use without checkout
types:
- opened
- reopened
jobs:
run:
uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@1b673f36fad86812f538c1df9794904038a23cbf
uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@f91220cba053bd54299ba645a599ee8ed436f222 # v1.11.0
permissions:
contents: read
pull-requests: write
+9 -2
View File
@@ -1,5 +1,12 @@
name: publish
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
release:
types:
@@ -15,7 +22,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Publish
uses: actions/publish-immutable-action@v0.0.4
uses: actions/publish-immutable-action@4bc8754ffc40f27910afb20287dbbbb675a4e978 # v0.0.4
+6 -3
View File
@@ -1,5 +1,8 @@
name: test
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
@@ -17,16 +20,16 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: Test
uses: docker/bake-action@v6
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0
with:
source: .
targets: test
-
name: Upload coverage
uses: codecov/codecov-action@v5
uses: codecov/codecov-action@0b35c9ecc4f0529d0eb674914510c22f85b196b4 # v7.1.0
with:
files: ./coverage/clover.xml
token: ${{ secrets.CODECOV_TOKEN }}
+58
View File
@@ -0,0 +1,58 @@
name: update-dist
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
pull_request:
types:
- opened
- synchronize
jobs:
update-dist:
if: github.actor == 'dependabot[bot]' && github.event.pull_request.user.login == 'dependabot[bot]' && github.repository == github.event.pull_request.head.repo.full_name
runs-on: ubuntu-latest
steps:
-
name: GitHub auth token from GitHub App
id: docker-read-app
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
with:
app-id: ${{ secrets.GHACTIONS_REPO_WRITE_APP_ID }}
private-key: ${{ secrets.GHACTIONS_REPO_WRITE_APP_PRIVATE_KEY }}
owner: docker
repositories: login-action
permission-contents: write
-
name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0
token: ${{ steps.docker-read-app.outputs.token }}
-
name: Build
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0
with:
source: .
targets: build
-
name: Commit and push dist
run: |
if [ -n "$(git status --porcelain -- dist)" ]; then
(
set -x
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add dist
git commit -m "[dependabot skip] chore: update generated content"
git push
)
else
echo "No changes in dist"
fi
+9 -6
View File
@@ -1,5 +1,8 @@
name: validate
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
@@ -15,15 +18,15 @@ jobs:
prepare:
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.generate.outputs.targets }}
matrix: ${{ steps.generate.outputs.matrix }}
steps:
-
name: Checkout
uses: actions/checkout@v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
-
name: List targets
name: Generate matrix
id: generate
uses: docker/bake-action/subaction/list-targets@v6
uses: docker/bake-action/subaction/matrix@59cb1203cd42bcefd40a1b6d73b589e48c86040e # v7.5.0
with:
target: validate
@@ -34,10 +37,10 @@ jobs:
strategy:
fail-fast: false
matrix:
target: ${{ fromJson(needs.prepare.outputs.targets) }}
include: ${{ fromJson(needs.prepare.outputs.matrix) }}
steps:
-
name: Validate
uses: docker/bake-action@v6
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0
with:
targets: ${{ matrix.target }}
+29
View File
@@ -0,0 +1,29 @@
name: zizmor
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
workflow_dispatch:
push:
branches:
- 'master'
- 'releases/v*'
tags:
- 'v*'
pull_request:
jobs:
zizmor:
uses: crazy-max/.github/.github/workflows/zizmor.yml@f91220cba053bd54299ba645a599ee8ed436f222 # v1.11.0
permissions:
contents: read
security-events: write
with:
min-severity: medium
min-confidence: medium
persona: pedantic
+1 -2
View File
@@ -6,6 +6,5 @@
"singleQuote": true,
"trailingComma": "none",
"bracketSpacing": false,
"arrowParens": "avoid",
"parser": "typescript"
"arrowParens": "avoid"
}
+11 -4
View File
@@ -1,10 +1,10 @@
# https://yarnpkg.com/configuration/yarnrc
compressionLevel: mixed
enableGlobalCache: false
enableHardenedMode: true
nodeLinker: node-modules
logFilters:
- code: YN0004
level: discard
- code: YN0013
level: discard
- code: YN0019
@@ -14,4 +14,11 @@ logFilters:
- code: YN0086
level: discard
nodeLinker: node-modules
npmPreapprovedPackages:
- "@docker/actions-toolkit"
compressionLevel: mixed
enableGlobalCache: false
enableHardenedMode: true
enableScripts: false
npmMinimalAgeGate: 2d
+157 -26
View File
@@ -28,6 +28,7 @@ ___
* [Set scopes for the authentication token](#set-scopes-for-the-authentication-token)
* [Customizing](#customizing)
* [inputs](#inputs)
* [environment variables](#environment-variables)
* [Contributing](#contributing)
## Usage
@@ -51,12 +52,42 @@ jobs:
steps:
-
name: Login to Docker Hub
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
```
You can also [authenticate to Docker Hub with OpenID Connect](https://docs.docker.com/enterprise/security/oidc-connections/)
when your Docker Hub organization has an OIDC connection configured. The
workflow must grant the `id-token: write` permission, pass the Docker Hub
organization name as `username`, omit `password`, and set the OIDC connection
ID in `DOCKERHUB_OIDC_CONNECTIONID` environment variable.
```yaml
name: ci
on:
push:
branches: main
permissions:
contents: read
id-token: write
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to Docker Hub
uses: docker/login-action@v4
env:
DOCKERHUB_OIDC_CONNECTIONID: ${{ vars.DOCKERHUB_OIDC_CONNECTIONID }}
with:
username: ${{ vars.DOCKERHUB_ORGANIZATION }}
```
### GitHub Container Registry
To authenticate to the [GitHub Container Registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry),
@@ -76,7 +107,7 @@ jobs:
steps:
-
name: Login to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -104,7 +135,7 @@ jobs:
steps:
-
name: Login to GitLab
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: registry.gitlab.com
username: ${{ vars.GITLAB_USERNAME }}
@@ -117,6 +148,8 @@ instead of a password.
### Azure Container Registry (ACR)
#### Service principal
[Create a service principal](https://docs.microsoft.com/en-us/azure/container-registry/container-registry-auth-service-principal#create-a-service-principal)
with access to your container registry through the [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
and take note of the generated service principal's ID (also called _client ID_)
@@ -135,17 +168,67 @@ jobs:
steps:
-
name: Login to ACR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <registry-name>.azurecr.io
username: ${{ vars.AZURE_CLIENT_ID }}
password: ${{ secrets.AZURE_CLIENT_SECRET }}
```
> [!NOTE]
> Replace `<registry-name>` with the name of your registry.
#### OpenID Connect (OIDC)
To authenticate with OpenID Connect, configure a federated identity credential
for GitHub Actions and use the [Azure Login](https://github.com/Azure/login)
action to sign in to Azure. Then expose an ACR access token and pass it to this
action as the password.
```yaml
name: ci
on:
push:
branches: main
permissions:
contents: read
id-token: write
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to Azure
uses: azure/login@v3
with:
client-id: ${{ vars.AZURE_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
subscription-id: ${{ vars.AZURE_SUBSCRIPTION_ID }}
-
name: Get ACR access token
id: acr-token
run: |
ACR_TOKEN=$(az acr login --name <registry-name> --expose-token --output tsv --query accessToken)
echo "::add-mask::$ACR_TOKEN" # mask the token in workflow logs
echo "token=$ACR_TOKEN" >> "$GITHUB_OUTPUT"
-
name: Login to ACR
uses: docker/login-action@v4
with:
registry: <registry-name>.azurecr.io
username: 00000000-0000-0000-0000-000000000000
password: ${{ steps.acr-token.outputs.token }}
```
> [!NOTE]
> Replace `<registry-name>` with the name of your registry.
### Google Container Registry (GCR)
> [!NOTE]
> [Google Artifact Registry](#google-artifact-registry-gar) is the evolution of
> Google Container Registry. As a fully-managed service with support for both
> container images and non-container artifacts. If you currently use Google
@@ -176,23 +259,24 @@ jobs:
-
name: Authenticate to Google Cloud
id: auth
uses: google-github-actions/auth@v1
uses: google-github-actions/auth@v3
with:
token_format: access_token
workload_identity_provider: <workload_identity_provider>
service_account: <service_account>
-
name: Login to GCR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: gcr.io
username: oauth2accesstoken
password: ${{ steps.auth.outputs.access_token }}
```
> [!NOTE]
> Replace `<workload_identity_provider>` with configured workload identity
> provider. For steps to configure, [see here](https://github.com/google-github-actions/auth#setting-up-workload-identity-federation).
>
> Replace `<service_account>` with configured service account in workload
> identity provider which has access to push to GCR
@@ -216,7 +300,7 @@ jobs:
steps:
-
name: Login to GCR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: gcr.io
username: _json_key
@@ -247,26 +331,27 @@ jobs:
-
name: Authenticate to Google Cloud
id: auth
uses: google-github-actions/auth@v1
uses: google-github-actions/auth@v3
with:
token_format: access_token
workload_identity_provider: <workload_identity_provider>
service_account: <service_account>
-
name: Login to GAR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <location>-docker.pkg.dev
username: oauth2accesstoken
password: ${{ steps.auth.outputs.access_token }}
```
> [!NOTE]
> Replace `<workload_identity_provider>` with configured workload identity
> provider
>
> Replace `<service_account>` with configured service account in workload
> identity provider which has access to push to GCR
>
> Replace `<location>` with the regional or multi-regional [location](https://cloud.google.com/artifact-registry/docs/repo-organize#locations)
> of the repository where the image is stored.
@@ -291,13 +376,14 @@ jobs:
steps:
-
name: Login to GAR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <location>-docker.pkg.dev
username: _json_key
password: ${{ secrets.GAR_JSON_KEY }}
```
> [!NOTE]
> Replace `<location>` with the regional or multi-regional [location](https://cloud.google.com/artifact-registry/docs/repo-organize#locations)
> of the repository where the image is stored.
@@ -320,7 +406,7 @@ jobs:
steps:
-
name: Login to ECR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <aws-account-number>.dkr.ecr.<region>.amazonaws.com
username: ${{ vars.AWS_ACCESS_KEY_ID }}
@@ -343,7 +429,7 @@ jobs:
steps:
-
name: Login to ECR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <aws-account-number>.dkr.ecr.<region>.amazonaws.com
username: ${{ vars.AWS_ACCESS_KEY_ID }}
@@ -352,6 +438,7 @@ jobs:
AWS_ACCOUNT_IDS: 012345678910,023456789012
```
> [!NOTE]
> Only available with [AWS CLI version 1](https://docs.aws.amazon.com/cli/latest/reference/ecr/get-login.html)
You can also use the [Configure AWS Credentials](https://github.com/aws-actions/configure-aws-credentials)
@@ -370,18 +457,19 @@ jobs:
steps:
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@v6
with:
aws-access-key-id: ${{ vars.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: <region>
-
name: Login to ECR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <aws-account-number>.dkr.ecr.<region>.amazonaws.com
```
> [!NOTE]
> Replace `<aws-account-number>` and `<region>` with their respective values.
### AWS Public Elastic Container Registry (ECR)
@@ -404,7 +492,7 @@ jobs:
steps:
-
name: Login to Public ECR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: public.ecr.aws
username: ${{ vars.AWS_ACCESS_KEY_ID }}
@@ -413,6 +501,7 @@ jobs:
AWS_REGION: <region>
```
> [!NOTE]
> Replace `<region>` with its respective value (default `us-east-1`).
### OCI Oracle Cloud Infrastructure Registry (OCIR)
@@ -438,13 +527,14 @@ jobs:
steps:
-
name: Login to OCIR
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: <region>.ocir.io
username: ${{ vars.OCI_USERNAME }}
password: ${{ secrets.OCI_TOKEN }}
```
> [!NOTE]
> Replace `<region>` with their respective values from [availability regions](https://docs.cloud.oracle.com/iaas/Content/Registry/Concepts/registryprerequisites.htm#Availab)
### Quay.io
@@ -465,7 +555,7 @@ jobs:
steps:
-
name: Login to Quay.io
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: quay.io
username: ${{ vars.QUAY_USERNAME }}
@@ -489,7 +579,7 @@ jobs:
steps:
-
name: Login to DigitalOcean Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: registry.digitalocean.com
username: ${{ vars.DIGITALOCEAN_USERNAME }}
@@ -514,13 +604,13 @@ jobs:
steps:
-
name: Login to Docker Hub
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Login to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -548,7 +638,7 @@ jobs:
steps:
-
name: Login to registries
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry-auth: |
- username: ${{ vars.DOCKERHUB_USERNAME }}
@@ -558,6 +648,38 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
```
Docker Hub OIDC can also be used with `registry-auth`. Grant `id-token: write`,
set `DOCKERHUB_OIDC_CONNECTIONID`, pass the Docker Hub organization name as
`username`, and omit `password` for the Docker Hub object:
```yaml
name: ci
on:
push:
branches: main
permissions:
contents: read
id-token: write
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to registries
uses: docker/login-action@v4
env:
DOCKERHUB_OIDC_CONNECTIONID: ${{ vars.DOCKERHUB_OIDC_CONNECTIONID }}
with:
registry-auth: |
- username: ${{ vars.DOCKERHUB_ORGANIZATION }}
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
```
### Set scopes for the authentication token
The `scope` input allows limiting registry credentials to a specific repository
@@ -596,14 +718,14 @@ jobs:
steps:
-
name: Login to Docker Hub (scoped)
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
scope: 'myorg/myimage@push'
-
name: Build and push
uses: docker/build-push-action@v6
uses: docker/build-push-action@v7
with:
push: true
tags: myorg/myimage:latest
@@ -631,6 +753,15 @@ The following inputs can be used as `step.with` keys:
> [!NOTE]
> The `registry-auth` input cannot be used with other inputs except `logout`.
### environment variables
The following environment variables can be set as `step.env` keys:
| Name | Type | Default | Description |
|-------------------------------|--------|---------|----------------------------------------------------------------------------------------------------|
| `DOCKERHUB_OIDC_CONNECTIONID` | String | | Docker Hub OIDC connection ID. Required for Docker Hub OIDC login |
| `DOCKERHUB_OIDC_EXPIREIN` | Number | `300` | Docker Hub OIDC token lifetime in seconds. Must be between `300` (5 minutes) and `21600` (6 hours) |
## Contributing
Want to contribute? Awesome! You can find information about contributing to
+15 -13
View File
@@ -1,7 +1,7 @@
import {beforeEach, describe, expect, jest, test} from '@jest/globals';
import {beforeEach, describe, expect, test, vi} from 'vitest';
import {AuthorizationData} from '@aws-sdk/client-ecr';
import * as aws from '../src/aws';
import * as aws from '../src/aws.js';
describe('isECR', () => {
test.each([
@@ -65,26 +65,28 @@ describe('getAccountIDs', () => {
});
});
const mockEcrGetAuthToken = jest.fn();
const mockEcrPublicGetAuthToken = jest.fn();
jest.mock('@aws-sdk/client-ecr', () => {
const mockEcrGetAuthToken = vi.fn();
const mockEcrPublicGetAuthToken = vi.fn();
vi.mock('@aws-sdk/client-ecr', () => {
class ECR {
getAuthorizationToken = mockEcrGetAuthToken;
}
return {
ECR: jest.fn(() => ({
getAuthorizationToken: mockEcrGetAuthToken
}))
ECR
};
});
jest.mock('@aws-sdk/client-ecr-public', () => {
vi.mock('@aws-sdk/client-ecr-public', () => {
class ECRPUBLIC {
getAuthorizationToken = mockEcrPublicGetAuthToken;
}
return {
ECRPUBLIC: jest.fn(() => ({
getAuthorizationToken: mockEcrPublicGetAuthToken
}))
ECRPUBLIC
};
});
describe('getRegistriesData', () => {
beforeEach(() => {
jest.clearAllMocks();
vi.clearAllMocks();
delete process.env.AWS_ACCOUNT_IDS;
});
// prettier-ignore
+200 -2
View File
@@ -1,6 +1,18 @@
import {expect, test} from '@jest/globals';
import {afterEach, expect, test, vi} from 'vitest';
import * as path from 'path';
import {getInputs} from '../src/context';
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx.js';
import {getAuthList, getInputs, scopeToConfigDir} from '../src/context.js';
afterEach(() => {
vi.restoreAllMocks();
for (const key of Object.keys(process.env)) {
if (key.startsWith('INPUT_')) {
delete process.env[key];
}
}
});
test('with password and username getInputs does not throw error', async () => {
process.env['INPUT_USERNAME'] = 'dbowie';
@@ -10,3 +22,189 @@ test('with password and username getInputs does not throw error', async () => {
getInputs();
}).not.toThrow();
});
test('getAuthList uses the default Docker Hub registry when computing scoped config dir', async () => {
process.env['INPUT_USERNAME'] = 'dbowie';
process.env['INPUT_PASSWORD'] = 'groundcontrol';
process.env['INPUT_SCOPE'] = 'myscope';
process.env['INPUT_LOGOUT'] = 'false';
const [auth] = getAuthList(getInputs());
expect(auth).toMatchObject({
registry: 'docker.io',
configDir: path.join(Buildx.configDir, 'config', 'registry-1.docker.io', 'myscope')
});
});
test('getAuthList supports @ scopes appended to the registry config dir', async () => {
process.env['INPUT_USERNAME'] = 'dbowie';
process.env['INPUT_PASSWORD'] = 'groundcontrol';
process.env['INPUT_SCOPE'] = '@push';
process.env['INPUT_LOGOUT'] = 'false';
const [auth] = getAuthList(getInputs());
expect(auth).toMatchObject({
configDir: path.join(Buildx.configDir, 'config', 'registry-1.docker.io') + '@push'
});
});
test('getAuthList supports repository scopes with appended actions', async () => {
process.env['INPUT_USERNAME'] = 'dbowie';
process.env['INPUT_PASSWORD'] = 'groundcontrol';
process.env['INPUT_SCOPE'] = 'docker/buildx-bin@push';
process.env['INPUT_LOGOUT'] = 'false';
const [auth] = getAuthList(getInputs());
expect(auth).toMatchObject({
configDir: path.join(Buildx.configDir, 'config', 'registry-1.docker.io', 'docker', 'buildx-bin@push')
});
});
test('getAuthList supports comma-separated scope actions', async () => {
process.env['INPUT_USERNAME'] = 'dbowie';
process.env['INPUT_PASSWORD'] = 'groundcontrol';
process.env['INPUT_SCOPE'] = 'docker/buildx-bin@pull,push';
process.env['INPUT_LOGOUT'] = 'false';
const [auth] = getAuthList(getInputs());
expect(auth).toMatchObject({
configDir: path.join(Buildx.configDir, 'config', 'registry-1.docker.io', 'docker', 'buildx-bin@pull,push')
});
});
// prettier-ignore
test.each([
'../../../../work/leaked',
'..',
'foo/../../../../etc',
'@../../../leaked',
'foo/bar@../../../leaked',
'@push@pull',
'foo/bar@push@pull',
'@push,',
'@,push',
'@pull,,push',
'@Push',
path.join(path.parse(Buildx.configDir).root, 'work', 'leaked')
])('getAuthList rejects unsafe or unsupported scope path: %s', async scope => {
expect(() => {
getAuthList({
registry: '',
username: 'dbowie',
password: 'groundcontrol',
scope,
ecr: '',
logout: false,
registryAuth: ''
});
}).toThrow(/Invalid scope/);
});
// prettier-ignore
test.each([
'../../../../work/leaked',
'..',
'foo/../../../../etc',
path.join(path.parse(Buildx.configDir).root, 'work', 'leaked')
])('getAuthList rejects unsafe registry path: %s', async registry => {
expect(() => {
getAuthList({
registry,
username: 'dbowie',
password: 'groundcontrol',
scope: '@push',
ecr: '',
logout: false,
registryAuth: ''
});
}).toThrow(/Invalid registry/);
});
test('getAuthList skips secret masking when registry-auth password is absent', async () => {
const stdoutWriteSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
const [auth] = getAuthList({
registry: '',
username: '',
password: '',
scope: '',
ecr: '',
logout: true,
registryAuth: '- registry: public.ecr.aws\n'
});
expect(stdoutWriteSpy.mock.calls.map(call => call[0]).join('')).not.toContain('::add-mask::');
expect(auth).toMatchObject({
registry: 'public.ecr.aws',
ecr: 'auto'
});
});
test('getAuthList supports password-less Docker Hub registry-auth for OIDC', async () => {
const [auth] = getAuthList({
registry: '',
username: '',
password: '',
scope: '',
ecr: '',
logout: true,
registryAuth: '- username: docker-org\n'
});
expect(auth).toMatchObject({
registry: 'docker.io',
username: 'docker-org',
password: undefined,
ecr: 'auto'
});
});
test('getAuthList masks registry-auth password when present', async () => {
const stdoutWriteSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
getAuthList({
registry: '',
username: '',
password: '',
scope: '',
ecr: '',
logout: true,
registryAuth: '- registry: ghcr.io\n username: dbowie\n password: groundcontrol\n'
});
expect(stdoutWriteSpy.mock.calls.map(call => call[0]).join('')).toContain('::add-mask::groundcontrol');
});
// prettier-ignore
test.each([
['false', 'false'],
['"false"', 'false'],
['true', 'true'],
['auto', 'auto'],
['""', 'auto']
])('getAuthList normalizes registry-auth ecr: %s', (ecr, expected) => {
const [auth] = getAuthList({
registry: '',
username: '',
password: '',
scope: '',
ecr: '',
logout: true,
registryAuth: `- registry: 012345678910.dkr.ecr.eu-west-3.amazonaws.com\n username: AWS\n password: token\n ecr: ${ecr}\n`
});
expect(auth.ecr).toBe(expected);
});
// prettier-ignore
test.each([
['ghcr.io', 'ghcr.io'],
['ghcr.io/', 'ghcr.io'],
['https://ghcr.io', 'ghcr.io'],
['https://ghcr.io/', 'ghcr.io'],
['https://ghcr.io/v2/', 'ghcr.io'],
['http://localhost:5000', 'localhost:5000'],
['http://localhost:80', 'localhost:80'],
['https://ghcr.io:443', 'ghcr.io:443'],
['https://012345678910.dkr.ecr.eu-west-3.amazonaws.com', '012345678910.dkr.ecr.eu-west-3.amazonaws.com'],
['https://docker.io', 'registry-1.docker.io']
])('scopeToConfigDir uses the registry host for %s', (registry, host) => {
expect(scopeToConfigDir(registry, 'myorg/myimage@push')).toBe(path.join(Buildx.configDir, 'config', host, 'myorg', 'myimage') + '@push');
});
test('scopeToConfigDir rejects a URL whose host escapes the config directory', () => {
expect(() => scopeToConfigDir('https://../', '@push')).toThrow(/Invalid registry/);
});
+70 -10
View File
@@ -1,16 +1,21 @@
import {expect, jest, test} from '@jest/globals';
import {afterEach, expect, test, vi} from 'vitest';
import * as path from 'path';
import {loginStandard, logout} from '../src/docker';
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx.js';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker.js';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker';
import * as aws from '../src/aws.js';
import {getAuthList} from '../src/context.js';
import {login, loginECR, loginStandard, logout} from '../src/docker.js';
import * as dockerhub from '../src/dockerhub.js';
process.env['RUNNER_TEMP'] = path.join(__dirname, 'runner');
afterEach(() => {
vi.restoreAllMocks();
delete process.env.DOCKERHUB_OIDC_CONNECTIONID;
});
test('loginStandard calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
@@ -37,10 +42,39 @@ test('loginStandard calls exec', async () => {
});
});
test('login exchanges Docker Hub OIDC token for password-less auth', async () => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = '123e4567-e89b-42d3-a456-426614174000';
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: 0,
stdout: '',
stderr: ''
};
});
const oidcSpy = vi.spyOn(dockerhub, 'getOIDCToken').mockResolvedValue({
username: 'docker-org',
token: 'hub-token'
});
await login({
registry: 'docker.io',
username: 'docker-org',
password: '',
scope: '',
ecr: 'auto',
configDir: ''
});
expect(oidcSpy).toHaveBeenCalledWith('docker.io', 'docker-org');
expect(execSpy).toHaveBeenCalledWith(['login', '--password-stdin', '--username', 'docker-org', 'docker.io'], {
input: Buffer.from('hub-token'),
silent: true,
ignoreReturnCode: true
});
});
test('logout calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
@@ -62,3 +96,29 @@ test('logout calls exec', async () => {
ignoreReturnCode: true
});
});
test('loginECR and logout use the config dir of the registry host', async () => {
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockResolvedValue({
exitCode: 0,
stdout: '',
stderr: ''
});
const registry = '012345678910.dkr.ecr.eu-west-3.amazonaws.com';
vi.spyOn(aws, 'getRegistriesData').mockResolvedValue([
{
registry: `https://${registry}`,
username: 'AWS',
password: 'world'
}
]);
const scope = 'myapp@push';
const [auth] = getAuthList({registry, username: 'CAFEBABE', password: 'DEADBEEF', scope, ecr: 'auto', logout: true, registryAuth: ''});
await loginECR(auth.registry, auth.username, auth.password, auth.scope);
await logout(auth.registry, auth.configDir);
const expectedConfigDir = path.join(Buildx.configDir, 'config', registry, 'myapp@push');
expect(execSpy).toHaveBeenCalledTimes(2);
expect(execSpy.mock.calls[0][1]?.env?.DOCKER_CONFIG).toBe(expectedConfigDir);
expect(execSpy.mock.calls[1][1]?.env?.DOCKER_CONFIG).toBe(expectedConfigDir);
});
+149
View File
@@ -0,0 +1,149 @@
import * as core from '@actions/core';
import * as httpm from '@actions/http-client';
import {beforeEach, describe, expect, test, vi} from 'vitest';
import * as dockerhub from '../src/dockerhub.js';
vi.mock('@actions/core', () => ({
debug: vi.fn(),
getIDToken: vi.fn(),
info: vi.fn(),
setSecret: vi.fn()
}));
const validConnectionID = '123e4567-e89b-42d3-a456-426614174000';
const httpResponse = (statusCode: number, body: string, headers: Record<string, string> = {}): httpm.HttpClientResponse => {
return {
message: {
statusCode,
headers
},
readBody: vi.fn(async () => body)
} as unknown as httpm.HttpClientResponse;
};
describe('isDockerHubOIDC', () => {
beforeEach(() => {
delete process.env.DOCKERHUB_OIDC_CONNECTIONID;
});
test.each(['', 'docker.io', 'registry-1.docker.io', 'registry-1-stage.docker.io'])('detects Docker Hub registry %p with empty password', registry => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = validConnectionID;
expect(dockerhub.isDockerHubOIDC(registry, '')).toBe(true);
});
test('requires connection ID env var', () => {
expect(dockerhub.isDockerHubOIDC('docker.io', '')).toBe(false);
});
test('requires empty password', () => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = validConnectionID;
expect(dockerhub.isDockerHubOIDC('docker.io', 'groundcontrol')).toBe(false);
});
test('ignores non-Docker Hub registries', () => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = validConnectionID;
expect(dockerhub.isDockerHubOIDC('ghcr.io', '')).toBe(false);
});
});
describe('getOIDCToken', () => {
const getIDTokenMock = vi.mocked(core.getIDToken);
const setSecretMock = vi.mocked(core.setSecret);
let postSpy: ReturnType<typeof vi.spyOn>;
beforeEach(() => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = validConnectionID;
delete process.env.DOCKERHUB_OIDC_EXPIREIN;
getIDTokenMock.mockResolvedValue('github-id-token');
postSpy = vi.spyOn(httpm.HttpClient.prototype, 'post').mockResolvedValue(httpResponse(200, JSON.stringify({access_token: 'hub-token'})));
});
test('exchanges GitHub OIDC token for Docker Hub token', async () => {
const credentials = await dockerhub.getOIDCToken('docker.io', 'dbowie');
expect(credentials).toEqual({
username: 'dbowie',
token: 'hub-token'
});
expect(getIDTokenMock).toHaveBeenCalledWith('https://identity.docker.com');
expect(postSpy).toHaveBeenCalledTimes(1);
expect(postSpy.mock.calls[0][0]).toBe('https://identity.docker.com/oauth/token');
const http = postSpy.mock.contexts[0] as httpm.HttpClient;
expect(http.userAgent).toBe('github.com/docker/login-action');
expect(http.requestOptions?.headers).toEqual({
'Content-Type': 'application/x-www-form-urlencoded'
});
const body = new URLSearchParams(postSpy.mock.calls[0][1]);
expect(body.get('grant_type')).toBe('urn:ietf:params:oauth:grant-type:token-exchange');
expect(body.get('subject_token_type')).toBe('urn:ietf:params:oauth:token-type:id_token');
expect(body.get('subject_token')).toBe('github-id-token');
expect(body.get('connection_id')).toBe(validConnectionID);
expect(body.get('expires_in')).toBe('300');
expect(setSecretMock).toHaveBeenCalledWith('hub-token');
expect(core.info).toHaveBeenCalledWith('Docker Hub OIDC detected for docker.io');
expect(core.info).toHaveBeenCalledWith('Retrieving GitHub OIDC token for Docker Hub');
expect(core.info).toHaveBeenCalledWith('Exchanging GitHub OIDC token for Docker Hub token');
expect(core.info).toHaveBeenCalledWith('Docker Hub OIDC token exchange succeeded');
expect(core.debug).toHaveBeenCalledWith('Docker Hub OIDC token audience: https://identity.docker.com');
expect(core.debug).toHaveBeenCalledWith('Docker Hub OIDC token expiration: 300s');
expect(core.debug).toHaveBeenCalledWith('Sending Docker Hub OIDC token request to https://identity.docker.com/oauth/token');
expect(core.debug).toHaveBeenCalledWith('Docker Hub OIDC token request returned status code 200');
expect(core.debug).toHaveBeenCalledWith('Docker Hub OIDC token response status code: 200');
});
test('uses custom token expiration', async () => {
process.env.DOCKERHUB_OIDC_EXPIREIN = '21600';
await dockerhub.getOIDCToken('docker.io', 'dbowie');
const body = new URLSearchParams(postSpy.mock.calls[0][1]);
expect(body.get('expires_in')).toBe('21600');
});
test('uses stage identity host for stage registry', async () => {
await dockerhub.getOIDCToken('registry-1-stage.docker.io', 'dbowie');
expect(getIDTokenMock).toHaveBeenCalledWith('https://identity-stage.docker.com');
expect(postSpy.mock.calls[0][0]).toBe('https://identity-stage.docker.com/oauth/token');
});
test('requires connection ID env var', async () => {
delete process.env.DOCKERHUB_OIDC_CONNECTIONID;
await expect(dockerhub.getOIDCToken('docker.io', 'dbowie')).rejects.toThrow('DOCKERHUB_OIDC_CONNECTIONID is required for Docker Hub OIDC login');
expect(getIDTokenMock).not.toHaveBeenCalled();
expect(postSpy).not.toHaveBeenCalled();
});
test('validates connection ID', async () => {
process.env.DOCKERHUB_OIDC_CONNECTIONID = 'not-a-uuid';
await expect(dockerhub.getOIDCToken('docker.io', 'dbowie')).rejects.toThrow('Invalid DOCKERHUB_OIDC_CONNECTIONID. Must be a valid UUID.');
expect(getIDTokenMock).not.toHaveBeenCalled();
expect(postSpy).not.toHaveBeenCalled();
});
test.each(['not-a-number', '299', '21601'])('validates token expiration %p', async expiresIn => {
process.env.DOCKERHUB_OIDC_EXPIREIN = expiresIn;
await expect(dockerhub.getOIDCToken('docker.io', 'dbowie')).rejects.toThrow(`Invalid DOCKERHUB_OIDC_EXPIREIN: ${expiresIn}. Must be between 300 and 21600`);
expect(getIDTokenMock).not.toHaveBeenCalled();
expect(postSpy).not.toHaveBeenCalled();
});
test('retries rate limited token requests with Retry-After', async () => {
postSpy.mockResolvedValueOnce(httpResponse(429, '', {'retry-after': '0'})).mockResolvedValueOnce(httpResponse(200, JSON.stringify({access_token: 'hub-token'})));
await dockerhub.getOIDCToken('docker.io', 'dbowie');
expect(postSpy).toHaveBeenCalledTimes(2);
expect(core.info).toHaveBeenCalledWith('Docker Hub OIDC token request rate limited, retrying in 0ms (attempt 1/5)');
});
test('throws Docker Hub OIDC error responses', async () => {
postSpy.mockResolvedValue(httpResponse(400, JSON.stringify({error: 'invalid_request', error_description: 'bad connection', error_uri: 'https://docs.docker.com'})));
await expect(dockerhub.getOIDCToken('docker.io', 'dbowie')).rejects.toThrow('Docker Hub API: bad status code 400: {"error":"invalid_request","error_description":"bad connection","error_uri":"https://docs.docker.com"}');
});
test('throws rate limited Docker Hub OIDC error response after retries', async () => {
postSpy.mockResolvedValue(httpResponse(429, JSON.stringify({error: 'rate_limited', error_description: 'slow down'}), {'retry-after': '0'}));
await expect(dockerhub.getOIDCToken('docker.io', 'dbowie')).rejects.toThrow('Docker Hub API: bad status code 429: {"error":"rate_limited","error_description":"slow down"}');
expect(postSpy).toHaveBeenCalledTimes(6);
});
});
+12
View File
@@ -0,0 +1,12 @@
import fs from 'node:fs';
import os from 'node:os';
import path from 'node:path';
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'docker-login-action-'));
process.env = Object.assign({}, process.env, {
TEMP: tmpDir,
GITHUB_REPOSITORY: 'docker/login-action',
RUNNER_TEMP: path.join(tmpDir, 'runner-temp'),
RUNNER_TOOL_CACHE: path.join(tmpDir, 'runner-tool-cache')
});
+3 -3
View File
@@ -31,6 +31,6 @@ inputs:
required: false
runs:
using: 'node20'
main: 'dist/index.js'
post: 'dist/index.js'
using: 'node24'
main: 'dist/index.cjs'
post: 'dist/index.cjs'
+19 -10
View File
@@ -1,12 +1,13 @@
# syntax=docker/dockerfile:1
ARG NODE_VERSION=20
ARG NODE_VERSION=24
FROM node:${NODE_VERSION}-alpine AS base
RUN apk add --no-cache cpio findutils git
RUN apk add --no-cache cpio findutils git rsync
WORKDIR /src
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache <<EOT
set -e
corepack enable
yarn --version
yarn config set --home enableTelemetry 0
@@ -16,7 +17,7 @@ FROM base AS deps
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \
yarn install && mkdir /vendor && cp yarn.lock /vendor
yarn install --immutable && mkdir /vendor && cp yarn.lock /vendor
FROM scratch AS vendor-update
COPY --from=deps /vendor /
@@ -34,18 +35,27 @@ RUN --mount=type=bind,target=.,rw <<EOT
EOT
FROM deps AS build
RUN --mount=type=bind,target=.,rw \
RUN --mount=target=/context \
--mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \
yarn run build && mkdir /out && cp -Rf dist /out/
--mount=type=cache,target=/src/node_modules <<EOT
set -e
rsync -a /context/. .
rm -rf dist
yarn run build
mkdir /out
cp -r dist /out
EOT
FROM scratch AS build-update
COPY --from=build /out /
FROM build AS build-validate
RUN --mount=type=bind,target=.,rw <<EOT
RUN --mount=target=/context \
--mount=target=.,type=tmpfs <<EOT
set -e
rsync -a /context/. .
git add -A
rm -rf dist
cp -rf /out/* .
if [ -n "$(git status --porcelain -- dist)" ]; then
echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"'
@@ -58,8 +68,7 @@ FROM deps AS format
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \
yarn run format \
&& mkdir /out && find . -name '*.ts' -not -path './node_modules/*' -not -path './.yarn/*' | cpio -pdm /out
yarn run format && mkdir /out && find . -name '*.ts' -not -path './node_modules/*' -not -path './.yarn/*' | cpio -pdm /out
FROM scratch AS format-update
COPY --from=format /out /
@@ -76,7 +85,7 @@ ENV RUNNER_TOOL_CACHE=/tmp/github_tool_cache
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \
yarn run test --coverage --coverageDirectory=/tmp/coverage
yarn run test --coverage --coverage.reportsDirectory=/tmp/coverage
FROM scratch AS test-coverage
COPY --from=test /tmp/coverage /
Generated Vendored
+254
View File
@@ -0,0 +1,254 @@
var lHe=Object.create;var zy=Object.defineProperty;var uHe=Object.getOwnPropertyDescriptor;var dHe=Object.getOwnPropertyNames;var pHe=Object.getPrototypeOf,mHe=Object.prototype.hasOwnProperty;var i=(t,e)=>zy(t,"name",{value:e,configurable:!0});var g=(t,e)=>()=>(t&&(e=t(t=0)),e);var I=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Or=(t,e)=>{for(var r in e)zy(t,r,{get:e[r],enumerable:!0})},xK=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of dHe(e))!mHe.call(t,s)&&s!==r&&zy(t,s,{get:()=>e[s],enumerable:!(n=uHe(e,s))||n.enumerable});return t};var R=(t,e,r)=>(r=t!=null?lHe(pHe(t)):{},xK(e||!t||!t.__esModule?zy(r,"default",{value:t,enumerable:!0}):r,t)),re=t=>xK(zy({},"__esModule",{value:!0}),t);var QK=I(Mf=>{"use strict";var rzt=require("net"),EHe=require("tls"),QM=require("http"),vK=require("https"),CHe=require("events"),nzt=require("assert"),IHe=require("util");Mf.httpOverHttp=wHe;Mf.httpsOverHttp=SHe;Mf.httpOverHttps=xHe;Mf.httpsOverHttps=bHe;function wHe(t){var e=new fl(t);return e.request=QM.request,e}i(wHe,"httpOverHttp");function SHe(t){var e=new fl(t);return e.request=QM.request,e.createSocket=PK,e.defaultPort=443,e}i(SHe,"httpsOverHttp");function xHe(t){var e=new fl(t);return e.request=vK.request,e}i(xHe,"httpOverHttps");function bHe(t){var e=new fl(t);return e.request=vK.request,e.createSocket=PK,e.defaultPort=443,e}i(bHe,"httpsOverHttps");function fl(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||QM.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",i(function(n,s,o,a){for(var c=_K(s,o,a),l=0,u=e.requests.length;l<u;++l){var d=e.requests[l];if(d.host===c.host&&d.port===c.port){e.requests.splice(l,1),d.request.onSocket(n);return}}n.destroy(),e.removeSocket(n)},"onFree"))}i(fl,"TunnelingAgent");IHe.inherits(fl,CHe.EventEmitter);fl.prototype.addRequest=i(function(e,r,n,s){var o=this,a=DM({request:e},o.options,_K(r,n,s));if(o.sockets.length>=this.maxSockets){o.requests.push(a);return}o.createSocket(a,function(c){c.on("free",l),c.on("close",u),c.on("agentRemove",u),e.onSocket(c);function l(){o.emit("free",c,a)}i(l,"onFree");function u(d){o.removeSocket(c),c.removeListener("free",l),c.removeListener("close",u),c.removeListener("agentRemove",u)}i(u,"onCloseOrRemove")})},"addRequest");fl.prototype.createSocket=i(function(e,r){var n=this,s={};n.sockets.push(s);var o=DM({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(o.localAddress=e.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Eu("making CONNECT request");var a=n.request(o);a.useChunkedEncodingByDefault=!1,a.once("response",c),a.once("upgrade",l),a.once("connect",u),a.once("error",d),a.end();function c(p){p.upgrade=!0}i(c,"onResponse");function l(p,m,f){process.nextTick(function(){u(p,m,f)})}i(l,"onUpgrade");function u(p,m,f){if(a.removeAllListeners(),m.removeAllListeners(),p.statusCode!==200){Eu("tunneling socket could not be established, statusCode=%d",p.statusCode),m.destroy();var A=new Error("tunneling socket could not be established, statusCode="+p.statusCode);A.code="ECONNRESET",e.request.emit("error",A),n.removeSocket(s);return}if(f.length>0){Eu("got illegal response body from proxy"),m.destroy();var A=new Error("got illegal response body from proxy");A.code="ECONNRESET",e.request.emit("error",A),n.removeSocket(s);return}return Eu("tunneling connection has established"),n.sockets[n.sockets.indexOf(s)]=m,r(m)}i(u,"onConnect");function d(p){a.removeAllListeners(),Eu(`tunneling socket could not be established, cause=%s
`,p.message,p.stack);var m=new Error("tunneling socket could not be established, cause="+p.message);m.code="ECONNRESET",e.request.emit("error",m),n.removeSocket(s)}i(d,"onError")},"createSocket");fl.prototype.removeSocket=i(function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(s){n.request.onSocket(s)})}},"removeSocket");function PK(t,e){var r=this;fl.prototype.createSocket.call(r,t,function(n){var s=t.request.getHeader("host"),o=DM({},r.options,{socket:n,servername:s?s.replace(/:.*$/,""):t.host}),a=EHe.connect(0,o);r.sockets[r.sockets.indexOf(n)]=a,e(a)})}i(PK,"createSecureSocket");function _K(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}i(_K,"toOptions");function DM(t){for(var e=1,r=arguments.length;e<r;++e){var n=arguments[e];if(typeof n=="object")for(var s=Object.keys(n),o=0,a=s.length;o<a;++o){var c=s[o];n[c]!==void 0&&(t[c]=n[c])}}return t}i(DM,"mergeOptions");var Eu;process.env.NODE_DEBUG&&/\btunnel\b/.test(process.env.NODE_DEBUG)?Eu=i(function(){var t=Array.prototype.slice.call(arguments);typeof t[0]=="string"?t[0]="TUNNEL: "+t[0]:t.unshift("TUNNEL:"),console.error.apply(console,t)},"debug"):Eu=i(function(){},"debug");Mf.debug=Eu});var Ff=I((izt,DK)=>{DK.exports=QK()});var Mt=I((azt,kK)=>{kK.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var nt=I((czt,iX)=>{"use strict";var LK=Symbol.for("undici.error.UND_ERR"),Ft=class extends Error{static{i(this,"UndiciError")}constructor(e){super(e),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](e){return e&&e[LK]===!0}[LK]=!0},OK=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),kM=class extends Ft{static{i(this,"ConnectTimeoutError")}constructor(e){super(e),this.name="ConnectTimeoutError",this.message=e||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](e){return e&&e[OK]===!0}[OK]=!0},MK=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),LM=class extends Ft{static{i(this,"HeadersTimeoutError")}constructor(e){super(e),this.name="HeadersTimeoutError",this.message=e||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](e){return e&&e[MK]===!0}[MK]=!0},FK=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),OM=class extends Ft{static{i(this,"HeadersOverflowError")}constructor(e){super(e),this.name="HeadersOverflowError",this.message=e||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](e){return e&&e[FK]===!0}[FK]=!0},UK=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),MM=class extends Ft{static{i(this,"BodyTimeoutError")}constructor(e){super(e),this.name="BodyTimeoutError",this.message=e||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT" Line truncated
`)||t.includes("\r")||t.includes("\0"))===!1}i(C7,"isValidHeaderValue");function Gze(t,e){let{headersList:r}=e,n=(r.get("referrer-policy",!0)??"").split(","),s="";if(n.length>0)for(let o=n.length;o!==0;o--){let a=n[o-1].trim();if(Bze.has(a)){s=a;break}}s!==""&&(t.referrerPolicy=s)}i(Gze,"setRequestReferrerPolicyOnRedirect");function Hze(){return"allowed"}i(Hze,"crossOriginResourcePolicyCheck");function $ze(){return"success"}i($ze,"corsCheck");function zze(){return"success"}i(zze,"TAOCheck");function Vze(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}i(Vze,"appendFetchMetadata");function Wze(t){let e=t.origin;if(!(e==="client"||e===void 0)){if(t.responseTainting==="cors"||t.mode==="websocket")t.headersList.append("origin",e,!0);else if(t.method!=="GET"&&t.method!=="HEAD"){switch(t.referrerPolicy){case"no-referrer":e=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":t.origin&&vF(t.origin)&&!vF(tE(t))&&(e=null);break;case"same-origin":mb(t,tE(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}i(Wze,"appendRequestOriginHeader");function Jf(t,e){return t}i(Jf,"coarsenTime");function Yze(t,e,r){return!t?.startTime||t.startTime<e?{domainLookupStartTime:e,domainLookupEndTime:e,connectionStartTime:e,connectionEndTime:e,secureConnectionStartTime:e,ALPNNegotiatedProtocol:t?.ALPNNegotiatedProtocol}:{domainLookupStartTime:Jf(t.domainLookupStartTime,r),domainLookupEndTime:Jf(t.domainLookupEndTime,r),connectionStartTime:Jf(t.connectionStartTime,r),connectionEndTime:Jf(t.connectionEndTime,r),secureConnectionStartTime:Jf(t.secureConnectionStartTime,r),ALPNNegotiatedProtocol:t.ALPNNegotiatedProtocol}}i(Yze,"clampAndCoarsenConnectionTimingInfo");function Jze(t){return Jf(Pze.now(),t)}i(Jze,"coarsenedSharedCurrentTime");function jze(t){return{startTime:t.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:t.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}i(jze,"createOpaqueTimingInfo");function I7(){return{referrerPolicy:"strict-origin-when-cross-origin"}}i(I7,"makePolicyContainer");function Kze(t){return{referrerPolicy:t.referrerPolicy}}i(Kze,"clonePolicyContainer");function Xze(t){let e=t.referrerPolicy;gp(e);let r=null;if(t.referrer==="client"){let c=A7();if(!c||c.origin==="null")return"no-referrer";r=new URL(c)}else t.referrer instanceof URL&&(r=t.referrer);let n=TF(r),s=TF(r,!0);n.toString().length>4096&&(n=s);let o=mb(t,n),a=eE(n)&&!eE(t.url);switch(e){case"origin":return s??TF(r,!0);case"unsafe-url":return n;case"same-origin":return o?s:"no-referrer";case"origin-when-cross-origin":return o?n:s;case"strict-origin-when-cross-origin":{let c=tE(t);return mb(n,c)?n:eE(n)&&!eE(c)?"no-referrer":s}default:return a?"no-referrer":s}}i(Xze,"determineRequestsReferrer");function TF(t,e){return gp(t instanceof URL),t=new URL(t),t.protocol==="file:"||t.protocol==="about:"||t.protocol==="blank:"?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}i(TF,"stripURLForReferrer");function eE(t){if(!(t instanceof URL))return!1;if(t.href==="about:blank"||t.href==="about:srcdoc"||t.protocol==="data:"||t.protocol==="file:")return!0;return e(t.origin);function e(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}i(eE,"isURLPotentiallyTrustworthy");function Zze(t,e){if(pb===void 0)return!0;let r=w7(e);if(r==="no metadata"||r.length===0)return!0;let n=t3e(r),s=r3e(r,n);for(let o of s){let a=o.algo,c=o.hash,l=pb.createHash(a).update(t).digest("base64");if(l[l.length-1]==="="&&(l[l.length-2]==="="?l=l.slice(0,-2):l=l.slice(0,-1)),n3e(l,c))return!0}return!1}i(Zze,"bytesMatch");var e3e=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function w7(t){let e=[],r=!0;for(let n of t.split(" ")){r=!1;let s=e3e.exec(n);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let o=s.groups.algo.toLowerCase();g7.includes(o)&&e.push(s.groups)}return r===!0?"no metadata":e}i(w7,"parseMetadata");function t3e(t){let e=t[0].algo;if(e[3]==="5")return e;for(let r=1;r<t.length;++r){let n=t[r];if(n.algo[3]==="5"){e="sha512";break}else{if(e[3]==="3")continue;n.algo[3]==="3"&&(e="sha384")}}return e}i(t3e,"getStrongestMetadata");function r3e(t,e){if(t.length===1)return t;let r=0;for(let n=0;n<t.length;++n)t[n].algo===e&&(t[r++]=t[n]);return t.length=r,t}i(r3e,"filterMetadataListByAlgorithm");function n3e(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;++r)if(t[r]!==e[r]){if(t[r]==="+"&&e[r]==="-"||t[r]==="/"&&e[r]==="_")continue;return!1}return!0}i(n3e,"compareBase64Mixed");function s3e(t){}i(s3e,"tryUpgradeReque Line truncated
`);function U3e(t){for(let e=0;e<t.length;++e)if((t.charCodeAt(e)&-128)!==0)return!1;return!0}i(U3e,"isAsciiString");function q3e(t){let e=t.length;if(e<27||e>70)return!1;for(let r=0;r<e;++r){let n=t.charCodeAt(r);if(!(n>=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}i(q3e,"validateBoundary");function G3e(t,e){Ab(e!=="failure"&&e.essence==="multipart/form-data");let r=e.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),s=[],o={position:0};for(;t[o.position]===13&&t[o.position+1]===10;)o.position+=2;let a=t.length;for(;t[a-1]===10&&t[a-2]===13;)a-=2;for(a!==t.length&&(t=t.subarray(0,a));;){if(t.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===t.length-2&&hb(t,M3e,o)||o.position===t.length-4&&hb(t,F3e,o))return s;if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let c=H3e(t,o);if(c==="failure")return"failure";let{name:l,filename:u,contentType:d,encoding:p}=c;o.position+=2;let m;{let A=t.indexOf(n.subarray(2),o.position);if(A===-1)return"failure";m=t.subarray(o.position,A-4),o.position+=m.length,p==="base64"&&(m=Buffer.from(m.toString(),"base64"))}if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let f;u!==null?(d??="text/plain",U3e(d)||(d=""),f=new L3e([m],u,{type:d})):f=P3e(Buffer.from(m)),Ab(k7(l)),Ab(typeof f=="string"&&k7(f)||Q3e(f)),s.push(D3e(l,f,u))}}i(G3e,"multipartFormDataParser");function H3e(t,e){let r=null,n=null,s=null,o=null;for(;;){if(t[e.position]===13&&t[e.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:s,encoding:o};let a=Kf(c=>c!==10&&c!==13&&c!==58,t,e);if(a=OF(a,!0,!0,c=>c===9||c===32),!_3e.test(a.toString())||t[e.position]!==58)return"failure";switch(e.position++,Kf(c=>c===32||c===9,t,e),v3e(a)){case"content-disposition":{if(r=n=null,!hb(t,O3e,e)||(e.position+=17,r=M7(t,e),r===null))return"failure";if(hb(t,O7,e)){let c=e.position+O7.length;if(t[c]===42&&(e.position+=1,c+=1),t[c]!==61||t[c+1]!==34||(e.position+=12,n=M7(t,e),n===null))return"failure"}break}case"content-type":{let c=Kf(l=>l!==10&&l!==13,t,e);c=OF(c,!1,!0,l=>l===9||l===32),s=L7(c);break}case"content-transfer-encoding":{let c=Kf(l=>l!==10&&l!==13,t,e);c=OF(c,!1,!0,l=>l===9||l===32),o=L7(c);break}default:Kf(c=>c!==10&&c!==13,t,e)}if(t[e.position]!==13&&t[e.position+1]!==10)return"failure";e.position+=2}}i(H3e,"parseMultipartFormDataHeaders");function M7(t,e){Ab(t[e.position-1]===34);let r=Kf(n=>n!==10&&n!==13&&n!==34,t,e);return t[e.position]!==34?null:(e.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,`
`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}i(M7,"parseMultipartFormDataName");function Kf(t,e,r){let n=r.position;for(;n<e.length&&t(e[n]);)++n;return e.subarray(r.position,r.position=n)}i(Kf,"collectASequenceOfBytes");function OF(t,e,r,n){let s=0,o=t.length-1;if(e)for(;s<t.length&&n(t[s]);)s++;if(r)for(;o>0&&n(t[o]);)o--;return s===0&&o===t.length-1?t:t.subarray(s,o+1)}i(OF,"removeChars");function hb(t,e,r){if(t.length<e.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[r.position+n])return!1;return!0}i(hb,"bufferStartsWith");F7.exports={multipartFormDataParser:G3e,validateBoundary:q3e}});var eA=I((Yzt,j7)=>{"use strict";var sE=He(),{ReadableStreamFrom:$3e,isBlobLike:q7,isReadableStreamLike:z3e,readableStreamClose:V3e,createDeferredPromise:W3e,fullyReadBody:Y3e,extractMimeType:J3e,utf8DecodeBytes:$7}=Ys(),{FormData:G7}=nE(),{kState:Zf}=Cu(),{webidl:j3e}=dn(),{Blob:K3e}=require("node:buffer"),MF=require("node:assert"),{isErrored:z7,isDisturbed:X3e}=require("node:stream"),{isArrayBuffer:Z3e}=require("node:util/types"),{serializeAMimeType:eVe}=gs(),{multipartFormDataParser:tVe}=U7(),FF;try{let t=require("node:crypto");FF=i(e=>t.randomInt(0,e),"random")}catch{FF=i(t=>Math.floor(Math.random(t)),"random")}var gb=new TextEncoder;function rVe(){}i(rVe,"noop");var V7=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,W7;V7&&(W7=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!X3e(e)&&!z7(e)&&e.cancel("Response object has been garbage collected").catch(rVe)}));function Y7(t,e=!1){let r=null;t instanceof ReadableStream?r=t:q7(t)?r=t.stream():r=new ReadableStream({async pull(l){let u=typeof s=="string"?gb.encode(s):s;u.byteLength&&l.enqueue(u),queueMicrotask(()=>V3e(l))},start(){},type:"bytes"}),MF(z3e(r));let n=null,s=null,o=null,a=null;if(typeof t=="string")s=t,a="text/plain;charset=UTF-8";else if(t instanceof URLSearchParams)s=t.toString(),a="application/x-www-form-urlencoded;charset=UTF-8";else if(Z3e(t))s=new Uint8Array(t.slice());else if(ArrayBuffer.isView(t))s=new Uint8Array(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength));else if(sE.isFormDataLike(t)){let l=`----formdata-undici-0${`${FF(1e11)}`.padStart(11,"0")}`,u=`--${l}\r
Content-Disposition: form-data`;let d=i(E=>E.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),"escape"),p=i(E=>E.replace(/\r?\n|\r/g,`\r
`),"normalizeLinefeeds"),m=[],f=new Uint8Array([13,10]);o=0;let A=!1;for(let[E,C]of t)if(typeof C=="string"){let w=gb.encode(u+`; name="${d(p(E))}"\r
\r
${p(C)}\r
`);m.push(w),o+=w.byteLength}else{let w=gb.encode(`${u}; name="${d(p(E))}"`+(C.name?`; filename="${d(C.name)}"`:"")+`\r
Content-Type: ${C.type||"application/octet-stream"}\r
\r
`);m.push(w,C,f),typeof C.size=="number"?o+=w.byteLength+C.size+f.byteLength:A=!0}let h=gb.encode(`--${l}--\r
`);m.push(h),o+=h.byteLength,A&&(o=null),s=t,n=i(async function*(){for(let E of m)E.stream?yield*E.stream():yield E},"action"),a=`multipart/form-data; boundary=${l}`}else if(q7(t))s=t,o=t.size,t.type&&(a=t.type);else if(typeof t[Symbol.asyncIterator]=="function"){if(e)throw new TypeError("keepalive");if(sE.isDisturbed(t)||t.locked)throw new TypeError("Response body object should not be disturbed or locked");r=t instanceof ReadableStream?t:$3e(t)}if((typeof s=="string"||sE.isBuffer(s))&&(o=Buffer.byteLength(s)),n!=null){let l;r=new ReadableStream({async start(){l=n(t)[Symbol.asyncIterator]()},async pull(u){let{value:d,done:p}=await l.next();if(p)queueMicrotask(()=>{u.close(),u.byobRequest?.respond(0)});else if(!z7(r)){let m=new Uint8Array(d);m.byteLength&&u.enqueue(m)}return u.desiredSize>0},async cancel(u){await l.return()},type:"bytes"})}return[{stream:r,source:s,length:o},a]}i(Y7,"extractBody");function nVe(t,e=!1){return t instanceof ReadableStream&&(MF(!sE.isDisturbed(t),"The body has already been consumed."),MF(!t.locked,"The stream is locked.")),Y7(t,e)}i(nVe,"safelyExtractBody");function sVe(t,e){let[r,n]=e.stream.tee();return e.stream=r,{stream:n,length:e.length,source:e.source}}i(sVe,"cloneBody");function oVe(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}i(oVe,"throwIfAborted");function iVe(t){return{blob(){return Xf(this,r=>{let n=H7(this);return n===null?n="":n&&(n=eVe(n)),new K3e([r],{type:n})},t)},arrayBuffer(){return Xf(this,r=>new Uint8Array(r).buffer,t)},text(){return Xf(this,$7,t)},json(){return Xf(this,cVe,t)},formData(){return Xf(this,r=>{let n=H7(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let s=tVe(r,n);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new G7;return o[Zf]=s,o}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(r.toString()),o=new G7;for(let[a,c]of s)o.append(a,c);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},t)},bytes(){return Xf(this,r=>new Uint8Array(r),t)}}}i(iVe,"bodyMixinMethods");function aVe(t){Object.assign(t.prototype,iVe(t))}i(aVe,"mixinBody");async function Xf(t,e,r){if(j3e.brandCheck(t,r),J7(t))throw new TypeError("Body is unusable: Body has already been read");oVe(t[Zf]);let n=W3e(),s=i(a=>n.reject(a),"errorSteps"),o=i(a=>{try{n.resolve(e(a))}catch(c){s(c)}},"successSteps");return t[Zf].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Y3e(t[Zf].body,o,s),n.promise)}i(Xf,"consumeBody");function J7(t){let e=t[Zf].body;return e!=null&&(e.stream.locked||sE.isDisturbed(e.stream))}i(J7,"bodyUnusable");function cVe(t){return JSON.parse($7(t))}i(cVe,"parseJSONFromBytes");function H7(t){let e=t[Zf].headersList,r=J3e(e);return r==="failure"?null:r}i(H7,"bodyMimeType");j7.exports={extractBody:Y7,safelyExtractBody:nVe,cloneBody:sVe,mixinBody:aVe,streamRegistry:W7,hasFinalizationRegistry:V7,bodyUnusable:J7}});var pZ=I((jzt,dZ)=>{"use strict";var Ae=require("node:assert"),le=He(),{channels:K7}=qf(),UF=IF(),{RequestContentLengthMismatchError:yp,ResponseContentLengthMismatchError:X7,RequestAbortedError:iZ,InvalidArgumentError:lVe,HeadersTimeoutError:uVe,HeadersOverflowError:dVe,SocketError:tA,InformationalError:Ep,BodyTimeoutError:pVe,HTTPParserError:mVe,ResponseExceededMaxSizeError:fVe}=nt(),{kUrl:aZ,kReset:ys,kClient:Ib,kParser:vt,kBlocking:aE,kRunning:Nr,kPending:cZ,kSize:Z7,kWriting:Iu,kQueue:Bi,kNoRef:oE,kKeepAliveDefaultTimeout:AVe,kHostHeader:hVe,kPendingIdx:gVe,kRunningIdx:Do,kError:Yn,kPipelining:wb,kSocket:Cp,kKeepAliveTimeoutValue:xb,kMaxHeadersSize:qF,kKeepAliveMaxTimeout:yVe,kKeepAliveTimeoutThreshold:EVe,kHeadersTimeout:CVe,kBodyTimeout:IVe,kStrictContentLength:$F,kMaxRequests:eZ,kCounter:wVe,kMaxResponseSize:SVe,kOnError:tZ,kResume:El,kHTTPContext:lZ}=Mt(),Js=WX(),rZ=Buffer.alloc(0),yb=Buffer[Symbol.species],Eb=le.addListener,xVe=le.removeAllListeners,Ip=Symbol("kIdleSocketValidation"),rA=Symbol("kIdleSocketValidationTimeout"),YF=Symbol("kSocketUsed"),GF;async function bVe(){let t=process.env.JEST_WORKER_ID?xF():void 0,e;try{e=await WebAssembly.compile(jX())}catch{e=await WebAssembly.compile(t||xF())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:i((r,n,s)=>0,"wasm_on_url"),wasm_on_status:i((r,n,s)=>{Ae(nr.ptr===r);let o=n-Na+Ra.byteOffset;return nr.onStatus(new yb(Ra.buffer,o,s))||0},"wasm_on_status"),wasm_on_message_begin:i(r=>(Ae(nr.ptr===r),nr.onMessageBegin()||0),"wasm_on_message_begin"),wasm_on_header_field:i((r,n,s)=>{Ae(nr.ptr===r);let o=n-Na+Ra.byteOffset;return nr.onHeaderField(new yb(Ra.buffer,o,s))||0},"wasm_on_header_field"),wasm_on_header_value:i((r,n,s)=>{Ae(nr.ptr===r);let o=n-Na+Ra.byteOffset;return nr.onHeaderValue(new yb(Ra.buffer,o,s))||0},"wasm_on_header_value"),wasm_on_headers_complete:i((r,n,s,o)=>(Ae(nr.ptr===r),nr.onHeadersComplete(n,!!s,!!o)||0),"wasm_on_headers_complete"),wasm_on_body:i((r,n,s)=>{Ae(nr.ptr===r);let o=n-Na+Ra.byteOffset;retu Line truncated
`;if(typeof s=="string"?h+=`host: ${s}\r
`:h+=t[hVe],o?h+=`connection: upgrade\r
upgrade: ${o}\r
`:t[wb]&&!f[ys]?h+=`connection: keep-alive\r
`:h+=`connection: close\r
`,Array.isArray(u))for(let E=0;E<u.length;E+=2){let C=u[E+0],w=u[E+1];if(Array.isArray(w))for(let x=0;x<w.length;x++)h+=`${C}: ${w[x]}\r
`;else h+=`${C}: ${w}\r
`}return K7.sendHeaders.hasSubscribers&&K7.sendHeaders.publish({request:e,headers:h,socket:f}),!l||m===0?sZ(A,null,t,e,f,d,h,p):le.isBuffer(l)?sZ(A,l,t,e,f,d,h,p):le.isBlobLike(l)?typeof l.stream=="function"?oZ(A,l.stream(),t,e,f,d,h,p):QVe(A,l,t,e,f,d,h,p):le.isStream(l)?_Ve(A,l,t,e,f,d,h,p):le.isIterable(l)?oZ(A,l,t,e,f,d,h,p):Ae(!1),!0}i(PVe,"writeH1");function _Ve(t,e,r,n,s,o,a,c){Ae(o!==0||r[Nr]===0,"stream body cannot be pipelined");let l=!1,u=new bb({abort:t,socket:s,request:n,contentLength:o,client:r,expectsPayload:c,header:a}),d=i(function(A){if(!l)try{!u.write(A)&&this.pause&&this.pause()}catch(h){le.destroy(this,h)}},"onData"),p=i(function(){l||e.resume&&e.resume()},"onDrain"),m=i(function(){if(queueMicrotask(()=>{e.removeListener("error",f)}),!l){let A=new iZ;queueMicrotask(()=>f(A))}},"onClose"),f=i(function(A){if(!l){if(l=!0,Ae(s.destroyed||s[Iu]&&r[Nr]<=1),s.off("drain",p).off("error",f),e.removeListener("data",d).removeListener("end",f).removeListener("close",m),!A)try{u.end()}catch(h){A=h}u.destroy(A),A&&(A.code!=="UND_ERR_INFO"||A.message!=="reset")?le.destroy(e,A):le.destroy(e)}},"onFinished");e.on("data",d).on("end",f).on("error",f).on("close",m),e.resume&&e.resume(),s.on("drain",p).on("error",f),e.errorEmitted??e.errored?setImmediate(()=>f(e.errored)):(e.endEmitted??e.readableEnded)&&setImmediate(()=>f(null)),(e.closeEmitted??e.closed)&&setImmediate(m)}i(_Ve,"writeStream");function sZ(t,e,r,n,s,o,a,c){try{e?le.isBuffer(e)&&(Ae(o===e.byteLength,"buffer body must have content length"),s.cork(),s.write(`${a}content-length: ${o}\r
\r
`,"latin1"),s.write(e),s.uncork(),n.onBodySent(e),!c&&n.reset!==!1&&(s[ys]=!0)):o===0?s.write(`${a}content-length: 0\r
\r
`,"latin1"):(Ae(o===null,"no body must not have content length"),s.write(`${a}\r
`,"latin1")),n.onRequestSent(),r[El]()}catch(l){t(l)}}i(sZ,"writeBuffer");async function QVe(t,e,r,n,s,o,a,c){Ae(o===e.size,"blob body must have content length");try{if(o!=null&&o!==e.size)throw new yp;let l=Buffer.from(await e.arrayBuffer());s.cork(),s.write(`${a}content-length: ${o}\r
\r
`,"latin1"),s.write(l),s.uncork(),n.onBodySent(l),n.onRequestSent(),!c&&n.reset!==!1&&(s[ys]=!0),r[El]()}catch(l){t(l)}}i(QVe,"writeBlob");async function oZ(t,e,r,n,s,o,a,c){Ae(o!==0||r[Nr]===0,"iterator body cannot be pipelined");let l=null;function u(){if(l){let m=l;l=null,m()}}i(u,"onDrain");let d=i(()=>new Promise((m,f)=>{Ae(l===null),s[Yn]?f(s[Yn]):l=m}),"waitForDrain");s.on("close",u).on("drain",u);let p=new bb({abort:t,socket:s,request:n,contentLength:o,client:r,expectsPayload:c,header:a});try{for await(let m of e){if(s[Yn])throw s[Yn];p.write(m)||await d()}p.end()}catch(m){p.destroy(m)}finally{s.off("close",u).off("drain",u)}}i(oZ,"writeIterable");var bb=class{static{i(this,"AsyncWriter")}constructor({abort:e,socket:r,request:n,contentLength:s,client:o,expectsPayload:a,header:c}){this.socket=r,this.request=n,this.contentLength=s,this.client=o,this.bytesWritten=0,this.expectsPayload=a,this.header=c,this.abort=e,r[Iu]=!0}write(e){let{socket:r,request:n,contentLength:s,client:o,bytesWritten:a,expectsPayload:c,header:l}=this;if(r[Yn])throw r[Yn];if(r.destroyed)return!1;let u=Buffer.byteLength(e);if(!u)return!0;if(s!==null&&a+u>s){if(o[$F])throw new yp;process.emitWarning(new yp)}r.cork(),a===0&&(!c&&n.reset!==!1&&(r[ys]=!0),s===null?r.write(`${l}transfer-encoding: chunked\r
`,"latin1"):r.write(`${l}content-length: ${s}\r
\r
`,"latin1")),s===null&&r.write(`\r
${u.toString(16)}\r
`,"latin1"),this.bytesWritten+=u;let d=r.write(e);return r.uncork(),n.onBodySent(e),d||r[vt].timeout&&r[vt].timeoutType===nA&&r[vt].timeout.refresh&&r[vt].timeout.refresh(),d}end(){let{socket:e,contentLength:r,client:n,bytesWritten:s,expectsPayload:o,header:a,request:c}=this;if(c.onRequestSent(),e[Iu]=!1,e[Yn])throw e[Yn];if(!e.destroyed){if(s===0?o?e.write(`${a}content-length: 0\r
\r
`,"latin1"):e.write(`${a}\r
`,"latin1"):r===null&&e.write(`\r
0\r
\r
`,"latin1"),r!==null&&s!==r){if(n[$F])throw new yp;process.emitWarning(new yp)}e[vt].timeout&&e[vt].timeoutType===nA&&e[vt].timeout.refresh&&e[vt].timeout.refresh(),n[El]()}}destroy(e){let{socket:r,client:n,abort:s}=this;r[Iu]=!1,e&&(Ae(n[Nr]<=1,"pipeline should only contain this request"),s(e))}};dZ.exports=RVe});var CZ=I((Xzt,EZ)=>{"use strict";var va=require("node:assert"),{errorMonitor:JF}=require("node:events"),{pipeline:DVe}=require("node:stream"),ze=He(),{RequestContentLengthMismatchError:KF,RequestAbortedError:jF,SocketError:cE,InformationalError:Bb}=nt(),{kUrl:Rb,kReset:Tb,kClient:sA,kRunning:vb,kPending:kVe,kQueue:wp,kPendingIdx:ZF,kRunningIdx:Ta,kError:Ni,kSocket:Jr,kStrictContentLength:LVe,kOnError:eU,kMaxConcurrentStreams:gZ,kHTTP2Session:Ri,kResume:Su,kSize:OVe,kHTTPContext:MVe}=Mt(),wu=Symbol("open streams"),mZ,fZ=!1,Nb;try{Nb=require("node:http2")}catch{Nb={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:FVe,HTTP2_HEADER_METHOD:UVe,HTTP2_HEADER_PATH:qVe,HTTP2_HEADER_SCHEME:GVe,HTTP2_HEADER_CONTENT_LENGTH:HVe,HTTP2_HEADER_EXPECT:$Ve,HTTP2_HEADER_STATUS:XF}}=Nb;function yZ(t){let e=[];for(let[r,n]of Object.entries(t))if(Array.isArray(n))for(let s of n)e.push(Buffer.from(r),Buffer.from(s));else e.push(Buffer.from(r),Buffer.from(n));return e}i(yZ,"parseH2Headers");function zVe(t){let{[XF]:e,...r}=t;return yZ(r)}i(zVe,"parseH2ResponseHeaders");async function VVe(t,e){t[Jr]=e,fZ||(fZ=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=Nb.connect(t[Rb],{createConnection:i(()=>e,"createConnection"),peerMaxConcurrentStreams:t[gZ]});r[wu]=0,r[sA]=t,r[Jr]=e,ze.addListener(r,"error",YVe),ze.addListener(r,"frameError",JVe),ze.addListener(r,"end",jVe),ze.addListener(r,"goaway",KVe),ze.addListener(r,"close",function(){let{[sA]:s}=this,{[Jr]:o}=s,a=this[Jr][Ni]||this[Ni]||new cE("closed",ze.getSocketInfo(o));if(s[Ri]=null,s.destroyed){va(s[kVe]===0);let c=s[wp].splice(s[Ta]);for(let l=0;l<c.length;l++){let u=c[l];ze.errorRequest(s,u,a)}}}),r.unref(),t[Ri]=r,e[Ri]=r,ze.addListener(e,"error",function(s){this[Ni]=s,this[sA][eU](s)}),ze.addListener(e,"end",function(){ze.destroy(this,new cE("other side closed",ze.getSocketInfo(this)))}),ze.addListener(e,"close",function(){let s=this[Ni]||new cE("closed",ze.getSocketInfo(this));t[Jr]=null,this[Ri]!=null&&this[Ri].destroy(s),t[ZF]=t[Ta],va(t[vb]===0),t.emit("disconnect",t[Rb],[t],s),t[Su]()});let n=!1;return e.on("close",()=>{n=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return ZVe(t,...s)},resume(){WVe(t)},destroy(s,o){n?queueMicrotask(o):e.destroy(s).on("close",o)},get destroyed(){return e.destroyed},busy(){return!1}}}i(VVe,"connectH2");function WVe(t){let e=t[Jr];e?.destroyed===!1&&(t[OVe]===0&&t[gZ]===0?(e.unref(),t[Ri].unref()):(e.ref(),t[Ri].ref()))}i(WVe,"resumeH2");function YVe(t){this[Jr][Ni]=t,this[sA][eU](t)}i(YVe,"onHttp2SessionError");function JVe(t,e,r){if(r===0){let n=new Bb(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[Jr][Ni]=n,this[sA][eU](n)}}i(JVe,"onHttp2FrameError");function jVe(){let t=new cE("other side closed",ze.getSocketInfo(this[Jr]));this.destroy(t),ze.destroy(this[Jr],t)}i(jVe,"onHttp2SessionEnd");function KVe(t){let e=this[Ni]||new cE(`HTTP/2: "GOAWAY" frame received with code ${t}`,ze.getSocketInfo(this)),r=this[sA];if(r[Jr]=null,r[MVe]=null,this[Ri]!=null&&(this[Ri].destroy(e),this[Ri]=null),ze.destroy(this[Jr],e),r[Ta]<r[wp].length){let n=r[wp][r[Ta]];r[wp][r[Ta]++]=null,ze.errorRequest(r,n,e),r[ZF]=r[Ta]}va(r[vb]===0),r.emit("disconnect",r[Rb],[r],e),r[Su]()}i(KVe,"onHTTP2GoAway");function XVe(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}i(XVe,"shouldSendContentLength");function ZVe(t,e){let r=t[Ri],{method:n,path:s,host:o,upgrade:a,expectContinue:c,signal:l,headers:u}=e,{body:d}=e;if(a)return ze.errorRequest(t,e,new Error("Upgrade not supported for H2")),!1;let p={};for(let b=0;b<u.length;b+=2){let N=u[b+0],P=u[b+1];if(Array.isArray(P))for(let _=0;_<P.length;_++)p[N]?p[N]+=`,${P[_]}`:p[N]=P[_];else p[N]=P}let m,{hostname:f,port:A}=t[Rb];p[FVe]=o||`${f}${A?`:${A}`:""}`,p[UVe]=n;let h=i(b=>{if(!e.aborted){if(e.completed){n==="CONNECT"&&m!=null&&ze.destroy(m,b||new jF);return}b=b||new jF,ze.errorRequest(t,e,b),m!=null&&ze.destroy(m,b),ze.destroy(d,b),t[wp][t[Ta]++]=null,t[Su]()}},"abort");try{e.onConnect(h)}catch(b){ze.errorRequest(t,e,b)}if(e.aborted)return!1;if(n==="CONNECT"){r.ref(),m=r.request(p,{endStream:!1,signal:l});let b=!1,N=i(J=>{b=!0,m.off(JF,P),e.onUpgradeResponse(Number(J[XF]),J,zVe)},"onResponse"),P=i(J=>{b=!0,m.off("response",N),e.onUpgradeError(J)},"onUpgradeError"),_=i(()=>{try{e.onUpgrade(null,null,m)}catch(J){m.off("response",N),h(J);return}e.aborted||(m.off("error",h),m.once(JF,P),t[wp][t[Ta]++]=null)},"onReady");return m.once("response",N),m.once("error",h),++r[wu],_(),m.once("close",()=>{!b&&e.completed&&(m.off("response",N),m.off(JF,P),e.onUpgradeError(new Bb(`HTTP/2: "stream error" receiLine truncated
`,this[b4e]=l??3e5,this[x4e]=s??3e5,this[B4e]=w??!0,this[R4e]=b,this[sU]=P,this[bu]=null,this[_4e]=J>-1?J:-1,this[D4e]=qe??100,this[Ar]=null,this[Ti]=[],this[Il]=0,this[vi]=0,this[pE]=ut=>iU(this,ut),this[Q4e]=ut=>_Z(this,ut)}get pipelining(){return this[Db]}set pipelining(e){this[Db]=e,this[pE](!0)}get[AE](){return this[Ti].length-this[vi]}get[fE](){return this[vi]-this[Il]}get[mE](){return this[Ti].length-this[Il]}get[g4e](){return!!this[Ar]&&!this[iA]&&!this[Ar].destroyed}get[nU](){return!!(this[Ar]?.busy(null)||this[mE]>=(PZ(this)||1)||this[AE]>0)}[h4e](e){QZ(this),this.once("connect",e)}[P4e](e,r){let n=e.origin||this[_a].origin,s=new u4e(n,e,r);return this[Ti].push(s),this[xp]||(Sp.bodyLength(s.body)==null&&Sp.isIterable(s.body)?(this[xp]=1,queueMicrotask(()=>iU(this))):this[pE](!0)),this[xp]&&this[Bu]!==2&&this[nU]&&(this[Bu]=2),this[Bu]<2}async[T4e](){return new Promise(e=>{this[mE]?this[bu]=e:e(null)})}async[v4e](e){return new Promise(r=>{let n=this[Ti].splice(this[vi]);for(let o=0;o<n.length;o++){let a=n[o];Sp.errorRequest(this,a,e)}let s=i(()=>{this[bu]&&(this[bu](),this[bu]=null),r(null)},"callback");this[Ar]?(this[Ar].destroy(e,s),this[Ar]=null):queueMicrotask(s),this[pE]()})}},O4e=Qb();function _Z(t,e){if(t[fE]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){Cl(t[vi]===t[Il]);let r=t[Ti].splice(t[Il]);for(let n=0;n<r.length;n++){let s=r[n];Sp.errorRequest(t,s,e)}Cl(t[mE]===0)}}i(_Z,"onError");async function QZ(t){Cl(!t[iA]),Cl(!t[Ar]);let{host:e,hostname:r,protocol:n,port:s}=t[_a];if(r[0]==="["){let o=r.indexOf("]");Cl(o!==-1);let a=r.substring(1,o);Cl(vZ.isIP(a)),r=a}t[iA]=!0,oA.beforeConnect.hasSubscribers&&oA.beforeConnect.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[Ar]?.version,servername:t[xu],localAddress:t[dE]},connector:t[uE]});try{let o=await new Promise((a,c)=>{t[uE]({host:e,hostname:r,protocol:n,port:s,servername:t[xu],localAddress:t[dE]},(l,u)=>{l?c(l):a(u)})});if(t.destroyed){Sp.destroy(o.on("error",NZ),new m4e);return}Cl(o);try{t[Ar]=o.alpnProtocol==="h2"?await L4e(t,o):await k4e(t,o)}catch(a){throw o.destroy().on("error",NZ),a}t[iA]=!1,o[N4e]=0,o[sU]=t[sU],o[A4e]=t,o[E4e]=null,oA.connected.hasSubscribers&&oA.connected.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[Ar]?.version,servername:t[xu],localAddress:t[dE]},connector:t[uE],socket:o}),t.emit("connect",t[_a],[t])}catch(o){if(t.destroyed)return;if(t[iA]=!1,oA.connectError.hasSubscribers&&oA.connectError.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[Ar]?.version,servername:t[xu],localAddress:t[dE]},connector:t[uE],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(Cl(t[fE]===0);t[AE]>0&&t[Ti][t[vi]].servername===t[xu];){let a=t[Ti][t[vi]++];Sp.errorRequest(t,a,o)}else _Z(t,o);t.emit("connectionError",t[_a],[t],o)}t[pE]()}i(QZ,"connect");function TZ(t){t[Bu]=0,t.emit("drain",t[_a],[t])}i(TZ,"emitDrain");function iU(t,e){t[xp]!==2&&(t[xp]=2,M4e(t,e),t[xp]=0,t[Il]>256&&(t[Ti].splice(0,t[Il]),t[vi]-=t[Il],t[Il]=0))}i(iU,"resume");function M4e(t,e){for(;;){if(t.destroyed){Cl(t[AE]===0);return}if(t[bu]&&!t[mE]){t[bu](),t[bu]=null;return}if(t[Ar]&&t[Ar].resume(),t[nU])t[Bu]=2;else if(t[Bu]===2){e?(t[Bu]=1,queueMicrotask(()=>TZ(t))):TZ(t);continue}if(t[AE]===0||t[fE]>=(PZ(t)||1))return;let r=t[Ti][t[vi]];if(t[_a].protocol==="https:"&&t[xu]!==r.servername){if(t[fE]>0)return;t[xu]=r.servername,t[Ar]?.destroy(new p4e("servername changed"),()=>{t[Ar]=null,iU(t)})}if(t[iA])return;if(!t[Ar]){QZ(t);return}if(t[Ar].destroyed||t[Ar].busy(r))return;!r.aborted&&t[Ar].write(r)?t[vi]++:t[Ti].splice(t[vi],1)}}i(M4e,"_resume");DZ.exports=oU});var aU=I((a3t,kZ)=>{"use strict";var kb=class{static{i(this,"FixedCircularBuffer")}constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&2047}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,e)}};kZ.exports=class{static{i(this,"FixedQueue")}constructor(){this.head=this.tail=new kb}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new kb),this.head.push(e)}shift(){let e=this.tail,r=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),r}}});var OZ=I((l3t,LZ)=>{var{kFree:F4e,kConnected:U4e,kPending:q4e,kQueued:G4e,kRunning:H4e,kSize:$4e}=Mt(),bp=Symbol("pool"),cU=class{static{i(this,"PoolStats")}constructor(e){this[bp]=e}get connected(){return this[bp][U4e]}get free(){return this[bp][F4e]}get pending(){return this[bp][q4e]}get queued(){return this[bp][G4e]}get running(){return this[bp][H4e]}get size(){return this[bp][$4e]}};LZ.exports=cU});var fU=I((d3t,WZ)=>{"use strict";var z4e=zf(),V4e=aU(),{kConnected:lU,kSize:MZ,kRunning:FZ,kPending:UZ,kQueued:hE,kBusy:W4e,kFree:Y4e,kUrl:J4e,kClose:j4e,kDestroy:K4e,kDispatch:X4e}=Mt(),Z4e=OZ(),Es=Symbol("clie Line truncated
${n.count} ${n.noun} ${n.is} pending:
${e.format(r)}
`.trim())}};ere.exports=f1});var BE=I((lVt,ore)=>{"use strict";var rre=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:b8e}=nt(),B8e=lA();sre()===void 0&&nre(new B8e);function nre(t){if(!t||typeof t.dispatch!="function")throw new b8e("Argument agent must implement Agent");Object.defineProperty(globalThis,rre,{value:t,writable:!0,enumerable:!1,configurable:!1})}i(nre,"setGlobalDispatcher");function sre(){return globalThis[rre]}i(sre,"getGlobalDispatcher");ore.exports={setGlobalDispatcher:nre,getGlobalDispatcher:sre}});var Zb=I((pVt,ire)=>{"use strict";ire.exports=class{static{i(this,"DecoratorHandler")}#e;constructor(e){if(typeof e!="object"||e===null)throw new TypeError("handler must be an object");this.#e=e}onConnect(...e){return this.#e.onConnect?.(...e)}onError(...e){return this.#e.onError?.(...e)}onUpgrade(...e){return this.#e.onUpgrade?.(...e)}onResponseStarted(...e){return this.#e.onResponseStarted?.(...e)}onHeaders(...e){return this.#e.onHeaders?.(...e)}onData(...e){return this.#e.onData?.(...e)}onComplete(...e){return this.#e.onComplete?.(...e)}onBodySent(...e){return this.#e.onBodySent?.(...e)}}});var cre=I((fVt,are)=>{"use strict";var R8e=_b();are.exports=t=>{let e=t?.maxRedirections;return r=>i(function(s,o){let{maxRedirections:a=e,...c}=s;if(!a)return r(s,o);let l=new R8e(r,a,s,o);return r(c,l)},"redirectInterceptor")}});var ure=I((hVt,lre)=>{"use strict";var N8e=Hb();lre.exports=t=>e=>i(function(n,s){return e(n,new N8e({...n,retryOptions:{...t,...n.retryOptions}},{handler:s,dispatch:e}))},"retryInterceptor")});var pre=I((yVt,dre)=>{"use strict";var T8e=He(),{InvalidArgumentError:v8e,RequestAbortedError:P8e}=nt(),_8e=Zb(),A1=class extends _8e{static{i(this,"DumpHandler")}#e=1024*1024;#t=null;#r=!1;#s=!1;#o=0;#n=null;#i=null;constructor({maxSize:e},r){if(super(r),e!=null&&(!Number.isFinite(e)||e<1))throw new v8e("maxSize must be a number greater than 0");this.#e=e??this.#e,this.#i=r}onConnect(e){this.#t=e,this.#i.onConnect(this.#a.bind(this))}#a(e){this.#s=!0,this.#n=e}onHeaders(e,r,n,s){let a=T8e.parseHeaders(r)["content-length"];if(a!=null&&a>this.#e)throw new P8e(`Response size (${a}) larger than maxSize (${this.#e})`);return this.#s?!0:this.#i.onHeaders(e,r,n,s)}onError(e){this.#r||(e=this.#n??e,this.#i.onError(e))}onData(e){return this.#o=this.#o+e.length,this.#o>=this.#e&&(this.#r=!0,this.#s?this.#i.onError(this.#n):this.#i.onComplete([])),!0}onComplete(e){if(!this.#r){if(this.#s){this.#i.onError(this.reason);return}this.#i.onComplete(e)}}};function Q8e({maxSize:t}={maxSize:1024*1024}){return e=>i(function(n,s){let{dumpMaxSize:o=t}=n,a=new A1({maxSize:o},s);return e(n,a)},"Intercept")}i(Q8e,"createDumpInterceptor");dre.exports=Q8e});var Are=I((CVt,fre)=>{"use strict";var{isIP:D8e}=require("node:net"),{lookup:k8e}=require("node:dns"),L8e=Zb(),{InvalidArgumentError:yA,InformationalError:O8e}=nt(),mre=Math.pow(2,31)-1,h1=class{static{i(this,"DNSInstance")}#e=0;#t=0;#r=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#s,this.pick=e.pick??this.#o}get full(){return this.#r.size===this.#t}runLookup(e,r,n){let s=this.#r.get(e.hostname);if(s==null&&this.full){n(null,e.origin);return}let o={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...r.dns,maxTTL:this.#e,maxItems:this.#t};if(s==null)this.lookup(e,o,(a,c)=>{if(a||c==null||c.length===0){n(a??new O8e("No DNS entries found"));return}this.setRecords(e,c);let l=this.#r.get(e.hostname),u=this.pick(e,l,o.affinity),d;typeof u.port=="number"?d=`:${u.port}`:e.port!==""?d=`:${e.port}`:d="",n(null,`${e.protocol}//${u.family===6?`[${u.address}]`:u.address}${d}`)});else{let a=this.pick(e,s,o.affinity);if(a==null){this.#r.delete(e.hostname),this.runLookup(e,r,n);return}let c;typeof a.port=="number"?c=`:${a.port}`:e.port!==""?c=`:${e.port}`:c="",n(null,`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${c}`)}}#s(e,r,n){k8e(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(s,o)=>{if(s)return n(s);let a=new Map;for(let c of o)a.set(`${c.address}:${c.family}`,c);n(null,a.values())})}#o(e,r,n){let s=null,{records:o,offset:a}=r,c;if(this.dualStack?(n==null&&(a==null||a===mre?(r.offset=0,n=4):(r.offset++,n=(r.offset&1)===1?6:4)),o[n]!=null&&o[n].ips.length>0?c=o[n]:c=o[n===4?6:4]):c=o[n],c==null||c.ips.length===0)return s;c.offset==null||c.offset===mre?c.offset=0:c.offset++;let l=c.offset%c.ips.length;return s=c.ips[l]??null,s==null?s:Date.now()-s.timestamp>s.ttl?(c.ips.splice(l,1),this.pick(e,r,n)):s}setRecords(e,r){let n=Date.now(),s={records:{4:null,6:null}};for(let o of r){o.timestamp=n,typeof o.ttl=="number"?o.ttl=Math.min(o.ttl,this.#e):o.ttl=this.#e;let a=s.records[o.family]??{ips:[]};a.ips.push(o),s.records[o.family]=a}this.#r.set(e.hostname,s)}getHandler(e,r){return new g1(this,e,r)}},g1=class extends L8e{static{i(this,"DNSDispatchHan Line truncated
${l}`,this.dataLineCount++;return}if(F0(e,s,X6e)){r9e(e,o)&&(this.setEventFieldSize("retry",e.length-o),r.retry=e.toString("utf8",o));return}if(F0(e,s,K6e)){n9e(e,o)&&(this.setEventFieldSize("id",e.length-o),r.id=e.toString("utf8",o));return}F0(e,s,j6e)&&o<e.length&&(this.setEventFieldSize("event",e.length-o),r.event=e.toString("utf8",o))}setEventFieldSize(e,r){let n=this.eventSize-this.eventFieldSizes[e]+r;if(this.maxEventSize>0&&n>this.maxEventSize)throw U0();this.eventSize=n,this.eventFieldSizes[e]=r}processEvent(e){e.retry&&$6e(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&z6e(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||"message",options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0,this.eventSize=0,this.dataLineCount=0,this.eventFieldSizes.data=0,this.eventFieldSizes.event=0,this.eventFieldSizes.id=0,this.eventFieldSizes.retry=0}hasPendingEvent(){return this.event.data!==void 0||this.event.event!==void 0||this.event.id!==void 0||this.event.retry!==void 0}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.lineLength=0,this.dropConsumedChunks()}dropConsumedChunks(){if(this.lineChunkIndex>0){let e=this.lineChunkIndex;this.chunks.splice(0,e),this.lineChunkIndex=0,this.chunkIndex-=e}this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let e=[],r=0;for(let n=this.lineChunkIndex;n<=this.chunkIndex;n++){let s=this.chunks[n],o=n===this.lineChunkIndex?this.linePos:0,a=n===this.chunkIndex?this.pos:s.length,c=s.subarray(o,a);r+=c.length,e.push(c)}return Buffer.concat(e,r)}peekBufferedByte(e){let r=this.lineChunkIndex,n=this.linePos;for(;r<this.chunks.length;){let s=this.chunks[r],o=s.length-n;if(e<o)return s[n+e];e-=o,r++,n=0}}discardLeadingBytes(e){for(;e>0&&this.lineChunkIndex<this.chunks.length;){let n=this.chunks[this.lineChunkIndex].length-this.linePos;e<n?(this.linePos+=e,e=0):(e-=n,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let e=this.peekBufferedByte(0),r=this.peekBufferedByte(1),n=this.peekBufferedByte(2);return r===void 0?(e===_A[0]||(this.checkBOM=!1),!0):n===void 0?e===_A[0]&&r===_A[1]?!0:(this.checkBOM=!1,!1):(e===_A[0]&&r===_A[1]&&n===_A[2]&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}};Vse.exports={EventSourceStream:i2}});var toe=I((S4t,eoe)=>{"use strict";var{pipeline:s9e}=require("node:stream"),{fetching:o9e}=PE(),{makeRequest:i9e}=IA(),{webidl:bl}=dn(),{EventSourceStream:a9e}=Wse(),{parseMIMEType:c9e}=gs(),{createFastMessageEvent:l9e}=RA(),{isNetworkError:Yse}=TE(),{delay:u9e}=o2(),{kEnumerableProperty:qp}=He(),{environmentSettingsObject:Jse}=Ys(),{getGlobalDispatcher:d9e}=BE(),jse=!1,Kse=3e3,VE=0,Xse=1,WE=2,p9e="anonymous",m9e="use-credentials",QA=class t extends EventTarget{static{i(this,"EventSource")}#e={open:null,error:null,message:null};#t=null;#r=!1;#s=VE;#o=null;#n=null;#i;#a;constructor(e,r={}){super(),bl.util.markAsUncloneable(this);let n="EventSource constructor";bl.argumentLengthCheck(arguments,1,n),jse||(jse=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=bl.converters.USVString(e,n,"url"),r=bl.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#i=r.dispatcher,this.#a={lastEventId:"",reconnectionTime:Kse};let s=Jse,o;try{o=new URL(e,s.settingsObject.baseUrl),this.#a.origin=o.origin}catch(l){throw new DOMException(l,"SyntaxError")}this.#t=o.href;let a=p9e;r.withCredentials&&(a=m9e,this.#r=!0);let c={redirect:"follow",keepalive:!0,mode:"cors",credentials:a==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};c.client=Jse.settingsObject,c.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],c.cache="no-store",c.initiator="other",c.urlList=[new URL(this.#t)],this.#o=i9e(c),this.#l()}get readyState(){return this.#s}get url(){return this.#t}get withCredentials(){return this.#r}#l(){if(this.#s===WE)return;this.#s=VE;let e={request:this.#o,dispatcher:this.#i},r=i(n=>{Yse(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#c()},"processEventSourceEndOfBody");e.processResponseEndOfBody=r,e.processResponse=n=>{if(Yse(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));retu Line truncated
%s`,N,N,w,n);var P=w.type==="*"?oq:w.type==="?"?sq:"\\"+w.type;s=!0,n=n.slice(0,w.reStart)+P+"\\("+N}A(),o&&(n+="\\\\");var _=!1;switch(n.charAt(0)){case"[":case".":case"(":_=!0}for(var J=c.length-1;J>-1;J--){var Ce=c[J],ae=n.slice(0,Ce.reStart),qe=n.slice(Ce.reStart,Ce.reEnd-8),ne=n.slice(Ce.reEnd-8,Ce.reEnd),Z=n.slice(Ce.reEnd);ne+=Z;var U=ae.split("(").length-1,ut=Z;for(h=0;h<U;h++)ut=ut.replace(/\)[+*?]?/,"");Z=ut;var ee="";Z===""&&e!==mB&&(ee="$");var dt=ae+qe+Z+ee+ne;n=dt}if(n!==""&&s&&(n="(?=.)"+n),_&&(n=m+n),e===mB)return[n,s];if(!s)return jZe(t);var Sa=r.nocase?"i":"";try{var gu=new RegExp("^"+n+"$",Sa)}catch{return new RegExp("$.")}return gu._glob=t,gu._src=n,gu}i(YZe,"parse");oo.makeRe=function(t,e){return new _r(t,e||{}).makeRe()};_r.prototype.makeRe=JZe;function JZe(){if(this.regexp||this.regexp===!1)return this.regexp;var t=this.set;if(!t.length)return this.regexp=!1,this.regexp;var e=this.options,r=e.noglobstar?oq:e.dot?qZe:GZe,n=e.nocase?"i":"",s=t.map(function(o){return o.map(function(a){return a===Jp?r:typeof a=="string"?KZe(a):a._src}).join("\\/")}).join("|");s="^(?:"+s+")$",this.negate&&(s="^(?!"+s+").*$");try{this.regexp=new RegExp(s,n)}catch{this.regexp=!1}return this.regexp}i(JZe,"makeRe");oo.match=function(t,e,r){r=r||{};var n=new _r(e,r);return t=t.filter(function(s){return n.match(s)}),n.options.nonull&&!t.length&&t.push(e),t};_r.prototype.match=i(function(e,r){if(typeof r>"u"&&(r=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;var n=this.options;gC.sep!=="/"&&(e=e.split(gC.sep).join("/")),e=e.split(ace),this.debug(this.pattern,"split",e);var s=this.set;this.debug(this.pattern,"set",s);var o,a;for(a=e.length-1;a>=0&&(o=e[a],!o);a--);for(a=0;a<s.length;a++){var c=s[a],l=e;n.matchBase&&c.length===1&&(l=[o]);var u=this.matchOne(l,c,r);if(u)return n.flipNegate?!0:!this.negate}return n.flipNegate?!1:this.negate},"match");_r.prototype.matchOne=function(t,e,r){return e.indexOf(Jp)!==-1?this._matchGlobstar(t,e,r,0,0):this._matchOne(t,e,r,0,0)};_r.prototype._matchGlobstar=function(t,e,r,n,s){var o,a=-1;for(o=s;o<e.length;o++)if(e[o]===Jp){a=o;break}var c=-1;for(o=e.length-1;o>=0;o--)if(e[o]===Jp){c=o;break}var l=e.slice(s,a),u=r?e.slice(a+1):e.slice(a+1,c),d=r?[]:e.slice(c+1);if(l.length){var p=t.slice(n,n+l.length);if(!this._matchOne(p,l,r,0,0))return!1;n+=l.length}var m=0;if(d.length){if(d.length+n>t.length)return!1;var f=t.length-d.length;if(this._matchOne(t,d,r,f,0))m=d.length;else{if(t[t.length-1]!==""||n+d.length===t.length||(f--,!this._matchOne(t,d,r,f,0)))return!1;m=d.length+1}}if(!u.length){var A=!!m;for(o=n;o<t.length-m;o++){var h=String(t[o]);if(A=!0,h==="."||h===".."||!this.options.dot&&h.charAt(0)===".")return!1}return r||A}for(var E=[[[],0]],C=E[0],w=0,x=[0],b=0;b<u.length;b++){var N=u[b];N===Jp?(x.push(w),C=[[],0],E.push(C)):(C[0].push(N),w++)}for(var P=E.length-1,_=t.length-m,J=0;J<E.length;J++)E[J][1]=_-(x[P--]+E[J][0].length);return!!this._matchGlobStarBodySections(t,E,n,0,r,0,!!m)};_r.prototype._matchGlobStarBodySections=function(t,e,r,n,s,o,a){var c=e[n];if(!c){for(var l=r;l<t.length;l++){a=!0;var u=t[l];if(u==="."||u===".."||!this.options.dot&&u.charAt(0)===".")return!1}return a}for(var d=c[0],p=c[1];r<=p;){var m=this._matchOne(t.slice(0,r+d.length),d,s,r,0);if(m&&o<this.maxGlobstarRecursion){var f=this._matchGlobStarBodySections(t,e,r+d.length,n+1,s,o+1,a);if(f!==!1)return f}var u=t[r];if(u==="."||u===".."||!this.options.dot&&u.charAt(0)===".")return!1;r++}return s||null};_r.prototype._matchOne=function(t,e,r,n,s){var o,a,c,l;for(o=n,a=s,c=t.length,l=e.length;o<c&&a<l;o++,a++){this.debug("matchOne loop");var u=e[a],d=t[o];if(this.debug(e,u,d),u===!1||u===Jp)return!1;var p;if(typeof u=="string"?(p=d===u,this.debug("string match",u,d,p)):(p=d.match(u),this.debug("pattern match",u,d,p)),!p)return!1}if(o===c&&a===l)return!0;if(o===c)return r;if(a===l)return o===c-1&&t[o]==="";throw new Error("wtf?")};function jZe(t){return t.replace(/\\(.)/g,"$1")}i(jZe,"globUnescape");function KZe(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}i(KZe,"regExpEscape")});var HA=I((S5t,fce)=>{"use strict";var oet="2.0.0",iet=Number.MAX_SAFE_INTEGER||9007199254740991,aet=16,cet=250,uet=["major","premajor","minor","preminor","patch","prepatch","prerelease"];fce.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:aet,MAX_SAFE_BUILD_LENGTH:cet,MAX_SAFE_INTEGER:iet,RELEASE_TYPES:uet,SEMVER_SPEC_VERSION:oet,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var CC=I((x5t,Ace)=>{"use strict";var det=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Ace.exports=det});var $A=I((Ua,hce)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:aq,MAX_SAFE_BUILD_LENGTH:pet,MAX_LENGTH:met}=HA(),fet=CC();Ua=hce.exports={};var Aet=Ua.re=[],het=Ua.safeRe=[],z=Ua.src=[],get=Ua.safeSrc=[],V=Ua.t={},yet=0,cq="[a-zA-Z0-9-]",Eet=[["\\s",1],["\\d",met],[c Line truncated
`).join(`
`+o),t.push(s+"m+"+nR.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=ust()+e+" "+t[0]}i(lst,"formatArgs");function ust(){return fn.inspectOpts.hideDate?"":new Date().toISOString()+" "}i(ust,"getDate");function dst(...t){return process.stderr.write(rR.format(...t)+`
`)}i(dst,"log");function pst(t){t?process.env.DEBUG=t:delete process.env.DEBUG}i(pst,"save");function mst(){return process.env.DEBUG}i(mst,"load");function fst(t){t.inspectOpts={};let e=Object.keys(fn.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=fn.inspectOpts[e[r]]}i(fst,"init");nR.exports=Kq()(fn);var{formatters:tde}=nR.exports;tde.o=function(t){return this.inspectOpts.colors=this.useColors,rR.inspect(t,this.inspectOpts).split(`
`).map(e=>e.trim()).join(" ")};tde.O=function(t){return this.inspectOpts.colors=this.useColors,rR.inspect(t,this.inspectOpts)}});var om=I((fKt,eG)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?eG.exports=Jue():eG.exports=rde()});var ode=I(Bs=>{"use strict";var Ast=Bs&&Bs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),hst=Bs&&Bs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),nde=Bs&&Bs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ast(e,t,r);return hst(e,t),e};Object.defineProperty(Bs,"__esModule",{value:!0});Bs.req=Bs.json=Bs.toBuffer=void 0;var gst=nde(require("http")),yst=nde(require("https"));async function sde(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(sde,"toBuffer");Bs.toBuffer=sde;async function Est(t){let r=(await sde(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(Est,"json");Bs.json=Est;function Cst(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?yst:gst).request(t,e),s=new Promise((o,a)=>{n.once("response",o).once("error",a).end()});return n.then=s.then.bind(s),n}i(Cst,"req");Bs.req=Cst});var lde=I(uo=>{"use strict";var ade=uo&&uo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Ist=uo&&uo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),cde=uo&&uo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ade(e,t,r);return Ist(e,t),e},wst=uo&&uo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&ade(e,t,r)};Object.defineProperty(uo,"__esModule",{value:!0});uo.Agent=void 0;var Sst=cde(require("net")),ide=cde(require("http")),xst=require("https");wst(ode(),uo);var $a=Symbol("AgentBaseInternalState"),tG=class extends ide.Agent{static{i(this,"Agent")}constructor(e){super(e),this[$a]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(`
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new Sst.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return(typeof e.secureEndpoint=="boolean"?e.secureEndpoint:this.isSecureEndpoint(e))?xst.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),c instanceof ide.Agent)try{return c.addRequest(e,s)}catch(l){return n(l)}this[$a].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[$a].currentSocket;if(this[$a].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[$a].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[$a]&&(this[$a].defaultPort=e)}get protocol(){return this[$a].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[$a]&&(this[$a].protocol=e)}};uo.Agent=tG});var ude=I(eh=>{"use strict";var bst=eh&&eh.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(eh,"__esModule",{value:!0});eh.parseProxyResponse=void 0;var Bst=bst(om()),sR=(0,Bst.default)("https-proxy-agent:parse-proxy-response");function Rst(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let d=t.read();d?u(d):t.once("readable",o)}i(o,"read");function a(){t.removeListener("end",c),t.removeListener("error",l),t.removeListener("readable",o)}i(a,"cleanup");function c(){a(),sR("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),sR("onerror %o",d),r(d)}i(l,"onerror");function u(d){s.push(d),n+=d.length;let p=Buffer.concat(s,n),m=p.indexOf(`\r
\r
`);if(m===-1){sR("have not received end of HTTP headers yet..."),o();return}let f=p.slice(0,m).toString("ascii").split(`\r
`),A=f.shift();if(!A)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let h=A.split(" "),E=+h[1],C=h.slice(2).join(" "),w={};for(let x of f){if(!x)continue;let b=x.indexOf(":");if(b===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${x}"`));let N=x.slice(0,b).toLowerCase(),P=x.slice(b+1).trimStart(),_=w[N];typeof _=="string"?w[N]=[_,P]:Array.isArray(_)?_.push(P):w[N]=P}sR("got proxy server response: %o %o",A,w),a(),e({connect:{statusCode:E,statusText:C,headers:w},buffered:p})}i(u,"ondata"),t.on("error",l),t.on("end",c),o()})}i(Rst,"parseProxyResponse");eh.parseProxyResponse=Rst});var hde=I(Wo=>{"use strict";var Nst=Wo&&Wo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Tst=Wo&&Wo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),fde=Wo&&Wo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nst(e,t,r);return Tst(e,t),e},Ade=Wo&&Wo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Wo,"__esModule",{value:!0});Wo.HttpsProxyAgent=void 0;var oR=fde(require("net")),dde=fde(require("tls")),vst=Ade(require("assert")),Pst=Ade(om()),_st=lde(),Qst=require("url"),Dst=ude(),kC=(0,Pst.default)("https-proxy-agent"),pde=i(t=>t.servername===void 0&&t.host&&!oR.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),iR=class extends _st.Agent{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new Qst.URL(e):e,this.proxyHeaders=r?.headers??{},kC("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?mde(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(kC("Creating `tls.Socket`: %o",this.connectOpts),s=dde.connect(pde(this.connectOpts))):(kC("Creating `net.Socket`: %o",this.connectOpts),s=oR.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=oR.isIPv6(r.host)?`[${r.host}]`:r.host,c=`CONNECT ${a}:${r.port} HTTP/1.1\r
`;if(n.username||n.password){let m=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(m).toString("base64")}`}o.Host=`${a}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let m of Object.keys(o))c+=`${m}: ${o[m]}\r
`;let l=(0,Dst.parseProxyResponse)(s);s.write(`${c}\r
`);let{connect:u,buffered:d}=await l;if(e.emit("proxyConnect",u),this.emit("proxyConnect",u,e),u.statusCode===200)return e.once("socket",kst),r.secureEndpoint?(kC("Upgrading socket connection to TLS"),dde.connect({...mde(pde(r),"host","path","port"),socket:s})):s;s.destroy();let p=new oR.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{kC("Replaying proxy buffer for failed request"),(0,vst.default)(m.listenerCount("data")>0),m.push(d),m.push(null)}),p}};iR.protocols=["http","https"];Wo.HttpsProxyAgent=iR;function kst(t){t.resume()}i(kst,"resume");function mde(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(mde,"omit")});var Ede=I(Rs=>{"use strict";var Lst=Rs&&Rs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Ost=Rs&&Rs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),gde=Rs&&Rs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lst(e,t,r);return Ost(e,t),e};Object.defineProperty(Rs,"__esModule",{value:!0});Rs.req=Rs.json=Rs.toBuffer=void 0;var Mst=gde(require("http")),Fst=gde(require("https"));async function yde(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(yde,"toBuffer");Rs.toBuffer=yde;async function Ust(t){let r=(await yde(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(Ust,"json");Rs.json=Ust;function qst(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?Fst:Mst).request(t,e),s=new Promise((o,a)=>{n.once("response",o).once("error",a).end()});return n.then=s.then.bind(s),n}i(qst,"req");Rs.req=qst});var wde=I(po=>{"use strict";var Ide=po&&po.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Gst=po&&po.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Hst=po&&po.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ide(e,t,r);return Gst(e,t),e},$st=po&&po.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Ide(e,t,r)};Object.defineProperty(po,"__esModule",{value:!0});po.Agent=void 0;var Cde=Hst(require("http"));$st(Ede(),po);var za=Symbol("AgentBaseInternalState"),rG=class extends Cde.Agent{static{i(this,"Agent")}constructor(e){super(e),this[za]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(`
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)};Promise.resolve().then(()=>this.connect(e,s)).then(o=>{if(o instanceof Cde.Agent)return o.addRequest(e,s);this[za].currentSocket=o,super.createSocket(e,r,n)},n)}createConnection(){let e=this[za].currentSocket;if(this[za].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[za].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[za]&&(this[za].defaultPort=e)}get protocol(){return this[za].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[za]&&(this[za].protocol=e)}};po.Agent=rG});var bde=I(Yo=>{"use strict";var zst=Yo&&Yo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Vst=Yo&&Yo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),xde=Yo&&Yo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zst(e,t,r);return Vst(e,t),e},Wst=Yo&&Yo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Yo,"__esModule",{value:!0});Yo.HttpProxyAgent=void 0;var Yst=xde(require("net")),Jst=xde(require("tls")),jst=Wst(om()),Kst=require("events"),Xst=wde(),Sde=require("url"),th=(0,jst.default)("http-proxy-agent"),aR=class extends Xst.Agent{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new Sde.URL(e):e,this.proxyHeaders=r?.headers??{},th("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?Zst(r,"headers"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",a=`${s}//${o}`,c=new Sde.URL(e.path,a);r.port!==80&&(c.port=String(r.port)),e.path=String(c);let l=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let u=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;l["Proxy-Authorization"]=`Basic ${Buffer.from(u).toString("base64")}`}l["Proxy-Connection"]||(l["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let u of Object.keys(l)){let d=l[u];d&&e.setHeader(u,d)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;th("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(th("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r
\r
`)+4,e.outputData[0].data=e._header+n.substring(s),th("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(th("Creating `tls.Socket`: %o",this.connectOpts),o=Jst.connect(this.connectOpts)):(th("Creating `net.Socket`: %o",this.connectOpts),o=Yst.connect(this.connectOpts)),await(0,Kst.once)(o,"connect"),o}};aR.protocols=["http","https"];Yo.HttpProxyAgent=aR;function Zst(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(Zst,"omit")});var Wde=I(IR=>{"use strict";Object.defineProperty(IR,"__esModule",{value:!0});IR.state=void 0;IR.state={instrumenterImplementation:void 0}});var upe=I(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.state=void 0;BR.state={operationRequestMap:new WeakMap}});var Gfe=I(Eh=>{"use strict";Object.defineProperty(Eh,"__esModule",{value:!0});var Eut=require("os"),Cut=require("util");function Iut(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}i(Iut,"_interopDefaultLegacy");var wut=Iut(Cut);function Sut(t,...e){process.stderr.write(`${wut.default.format(t,...e)}${Eut.EOL}`)}i(Sut,"log");var _fe=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,Dfe,D3=[],k3=[],zN=[];_fe&&L3(_fe);var kfe=Object.assign(t=>Lfe(t),{enable:L3,enabled:O3,disable:xut,log:Sut});function L3(t){Dfe=t,D3=[],k3=[];let e=/\*/g,r=t.split(",").map(n=>n.trim().replace(e,".*?"));for(let n of r)n.startsWith("-")?k3.push(new RegExp(`^${n.substr(1)}$`)):D3.push(new RegExp(`^${n}$`));for(let n of zN)n.enabled=O3(n.namespace)}i(L3,"enable");function O3(t){if(t.endsWith("*"))return!0;for(let e of k3)if(e.test(t))return!1;for(let e of D3)if(e.test(t))return!0;return!1}i(O3,"enabled");function xut(){let t=Dfe||"";return L3(""),t}i(xut,"disable");function Lfe(t){let e=Object.assign(r,{enabled:O3(t),destroy:but,log:kfe.log,namespace:t,extend:But});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return i(r,"debug"),zN.push(e),e}i(Lfe,"createDebugger");function but(){let t=zN.indexOf(this);return t>=0?(zN.splice(t,1),!0):!1}i(but,"destroy");function But(t){let e=Lfe(`${this.namespace}:${t}`);return e.log=this.log,e}i(But,"extend");var wI=kfe,Ofe=new Set,HN=typeof process<"u"&&process.env&&process.env.AZURE_LOG_LEVEL||void 0,VN,WN=wI("azure");WN.log=(...t)=>{wI.log(...t)};var M3=["verbose","info","warning","error"];HN&&(qfe(HN)?Mfe(HN):console.error(`AZURE_LOG_LEVEL set to unknown log level '${HN}'; logging is not enabled. Acceptable values: ${M3.join(", ")}.`));function Mfe(t){if(t&&!qfe(t))throw new Error(`Unknown log level '${t}'. Acceptable values: ${M3.join(",")}`);VN=t;let e=[];for(let r of Ofe)Ufe(r)&&e.push(r.namespace);wI.enable(e.join(","))}i(Mfe,"setLogLevel");function Rut(){return VN}i(Rut,"getLogLevel");var Qfe={verbose:400,info:300,warning:200,error:100};function Nut(t){let e=WN.extend(t);return Ffe(WN,e),{error:$N(e,"error"),warning:$N(e,"warning"),info:$N(e,"info"),verbose:$N(e,"verbose")}}i(Nut,"createClientLogger");function Ffe(t,e){e.log=(...r)=>{t.log(...r)}}i(Ffe,"patchLogMethod");function $N(t,e){let r=Object.assign(t.extend(e),{level:e});if(Ffe(t,r),Ufe(r)){let n=wI.disable();wI.enable(n+","+r.namespace)}return Ofe.add(r),r}i($N,"createLogger");function Ufe(t){return!!(VN&&Qfe[t.level]<=Qfe[VN])}i(Ufe,"shouldEnable");function qfe(t){return M3.includes(t)}i(qfe,"isAzureLogLevel");Eh.AzureLogger=WN;Eh.createClientLogger=Nut;Eh.getLogLevel=Rut;Eh.setLogLevel=Mfe});var q3=I(xI=>{"use strict";Object.defineProperty(xI,"__esModule",{value:!0});var Ch=new WeakMap,YN=new WeakMap,SI=class t{static{i(this,"AbortSignal")}constructor(){this.onabort=null,Ch.set(this,[]),YN.set(this,!1)}get aborted(){if(!YN.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");return YN.get(this)}static get none(){return new t}addEventListener(e,r){if(!Ch.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");Ch.get(this).push(r)}removeEventListener(e,r){if(!Ch.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");let n=Ch.get(this),s=n.indexOf(r);s>-1&&n.splice(s,1)}dispatchEvent(e){throw new Error("This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.")}};function Hfe(t){if(t.aborted)return;t.onabort&&t.onabort.call(t);let e=Ch.get(t);e&&e.slice().forEach(r=>{r.call(t,{type:"abort"})}),YN.set(t,!0)}i(Hfe,"abortSignal");var F3=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}},U3=class{static{i(this,"AbortController")}constructor(e){if(this._signal=new SI,!!e){Array.isArray(e)||(e=arguments);for(let r of e)r.aborted?this.abort():r.addEventListener("abort",()=>{this.abort()})}}get signal(){return this._signal}abort(){Hfe(this._signal)}static timeout(e){let r=new SI,n=setTimeout(Hfe,e,r);return typeof n.unref=="function"&&n.unref(),r}};xI.AbortController=U3;xI.AbortError=F3;xI.AbortSignal=SI});var Yfe=I(as=>{"use strict";Object.defineP Line truncated
Polling from: ${r.config.operationLocation}
Operation status: ${d}
Polling status: ${Xfe.includes(d)?"Stopped":"Running"}`),d==="succeeded"){let p=a(u,r);if(p!==void 0)return{response:await e(p).catch(jfe({state:r,stateProxy:n,isOperationError:c})),status:d}}return{response:u,status:d}}i(zut,"pollOperationHelper");async function rAe(t){let{poll:e,state:r,stateProxy:n,options:s,getOperationStatus:o,getResourceLocation:a,getOperationLocation:c,isOperationError:l,withOperationLocation:u,getPollingInterval:d,processResult:p,getError:m,updateState:f,setDelay:A,isDone:h,setErrorAsResult:E}=t,{operationLocation:C}=r.config;if(C!==void 0){let{response:w,status:x}=await zut({poll:e,getOperationStatus:o,state:r,stateProxy:n,operationLocation:C,getResourceLocation:a,isOperationError:l,options:s});if(eAe({status:x,response:w,state:r,stateProxy:n,isDone:h,processResult:p,getError:m,setErrorAsResult:E}),!Xfe.includes(x)){let b=d?.(w);b&&A(b);let N=c?.(w,r);if(N!==void 0){let P=C!==N;r.config.operationLocation=N,u?.(N,P)}else u?.(C,!1)}f?.(r,w)}}i(rAe,"pollOperation");function nAe(t){let{azureAsyncOperation:e,operationLocation:r}=t;return r??e}i(nAe,"getOperationLocationPollingUrl");function sAe(t){return t.headers.location}i(sAe,"getLocationHeader");function oAe(t){return t.headers["operation-location"]}i(oAe,"getOperationLocationHeader");function iAe(t){return t.headers["azure-asyncoperation"]}i(iAe,"getAzureAsyncOperationHeader");function Vut(t){let{location:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t;switch(r){case"PUT":return n;case"DELETE":return;default:switch(s){case"azure-async-operation":return;case"original-uri":return n;default:return e}}}i(Vut,"findResourceLocation");function aAe(t){let{rawResponse:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t,o=oAe(e),a=iAe(e),c=nAe({operationLocation:o,azureAsyncOperation:a}),l=sAe(e),u=r?.toLocaleUpperCase();return c!==void 0?{mode:"OperationLocation",operationLocation:c,resourceLocation:Vut({requestMethod:u,location:l,requestPath:n,resourceLocationConfig:s})}:l!==void 0?{mode:"ResourceLocation",operationLocation:l}:u==="PUT"&&n?{mode:"Body",operationLocation:n}:void 0}i(aAe,"inferLroMode");function cAe(t){let{status:e,statusCode:r}=t;if(typeof e!="string"&&e!==void 0)throw new Error(`Polling was unsuccessful. Expected status to have a string value or no value but it has instead: ${e}. This doesn't necessarily indicate the operation has failed. Check your Azure subscription or resource status for more information.`);switch(e?.toLocaleLowerCase()){case void 0:return J3(r);case"succeeded":return"succeeded";case"failed":return"failed";case"running":case"accepted":case"started":case"canceling":case"cancelling":return"running";case"canceled":case"cancelled":return"canceled";default:return Sm.verbose(`LRO: unrecognized operation status: ${e}`),e}}i(cAe,"transformStatus");function Wut(t){var e;let{status:r}=(e=t.body)!==null&&e!==void 0?e:{};return cAe({status:r,statusCode:t.statusCode})}i(Wut,"getStatus");function Yut(t){var e,r;let{properties:n,provisioningState:s}=(e=t.body)!==null&&e!==void 0?e:{},o=(r=n?.provisioningState)!==null&&r!==void 0?r:s;return cAe({status:o,statusCode:t.statusCode})}i(Yut,"getProvisioningState");function J3(t){return t===202?"running":t<300?"succeeded":"failed"}i(J3,"toOperationStatus");function lAe({rawResponse:t}){let e=t.headers["retry-after"];if(e!==void 0){let r=parseInt(e);return isNaN(r)?Jut(new Date(e)):r*1e3}}i(lAe,"parseRetryAfter");function uAe(t){let e=t.flatResponse.error;if(!e){Sm.warning("The long-running operation failed but there is no error property in the response's body");return}if(!e.code||!e.message){Sm.warning("The long-running operation failed but the error property in the response's body doesn't contain code or message");return}return e}i(uAe,"getErrorFromResponse");function Jut(t){let e=Math.floor(new Date().getTime()),r=t.getTime();if(e<r)return r-e}i(Jut,"calculatePollingIntervalFromDate");function dAe(t){let{response:e,state:r,operationLocation:n}=t;function s(){var a;switch((a=r.config.metadata)===null||a===void 0?void 0:a.mode){case void 0:return J3(e.rawResponse.statusCode);case"Body":return j3(e,r);default:return"running"}}i(s,"helper");let o=s();return o==="running"&&n===void 0?"succeeded":o}i(dAe,"getStatusFromInitialResponse");async function jut(t){let{stateProxy:e,resourceLocationConfig:r,processResult:n,lro:s,setErrorAsResult:o}=t;return tAe({init:i(async()=>{let a=await s.sendInitialRequest(),c=aAe({rawResponse:a.rawResponse,requestPath:s.requestPath,requestMethod:s.requestMethod,resourceLocationConfig:r});return Object.assign({response:a,operationLocation:c?.operationLocation,resourceLocation:c?.resourceLocation},c?.mode?{metadata:{mode:c.mode}}:{})},"init"),stateProxy:e,processResult:n?({flatResponse:a},c)=>n(a,c):({flatResponse:a})=>a,getOperationStatus:dAe,setErrorAsResult:o})}i(jut,"initHttpOperation");function pAe({rawResponse:t},e){var r;switch((r=e.config.metadata)===null||r===void 0?void 0:r.mode){case"OperationLocation":return nAe({opeLine truncated
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(s){case 0:a=o,s=1;break;case 1:r[n++]=a<<2|(o&48)>>4,a=o,s=2;break;case 2:r[n++]=(a&15)<<4|(o&60)>>2,a=o,s=3;break;case 3:r[n++]=(a&3)<<6|o,s=0;break}}if(s==1)throw Error("invalid base64 string.");return r.subarray(0,n)}i(Qdt,"base64decode");Bh.base64decode=Qdt;function Ddt(t){let e="",r=0,n,s=0;for(let o=0;o<t.length;o++)switch(n=t[o],r){case 0:e+=$l[n>>2],s=(n&3)<<4,r=1;break;case 1:e+=$l[s|n>>4],s=(n&15)<<2,r=2;break;case 2:e+=$l[s|n>>6],e+=$l[n&63],r=0;break}return r&&(e+=$l[s],e+="=",r==1&&(e+="=")),e}i(Ddt,"base64encode");Bh.base64encode=Ddt});var zAe=I(mT=>{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.utf8read=void 0;var aV=i(t=>String.fromCharCode.apply(String,t),"fromCharCodes");function kdt(t){if(t.length<1)return"";let e=0,r=[],n=[],s=0,o,a=t.length;for(;e<a;)o=t[e++],o<128?n[s++]=o:o>191&&o<224?n[s++]=(o&31)<<6|t[e++]&63:o>239&&o<365?(o=((o&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,n[s++]=55296+(o>>10),n[s++]=56320+(o&1023)):n[s++]=(o&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&(r.push(aV(n)),s=0);return r.length?(s&&r.push(aV(n.slice(0,s))),r.join("")):aV(n.slice(0,s))}i(kdt,"utf8read");mT.utf8read=kdt});var _I=I(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.WireType=gc.mergeBinaryOptions=gc.UnknownFieldHandler=void 0;var Ldt;(function(t){t.symbol=Symbol.for("protobuf-ts/unknown"),t.onRead=(r,n,s,o,a)=>{(e(n)?n[t.symbol]:n[t.symbol]=[]).push({no:s,wireType:o,data:a})},t.onWrite=(r,n,s)=>{for(let{no:o,wireType:a,data:c}of t.list(n))s.tag(o,a).raw(c)},t.list=(r,n)=>{if(e(r)){let s=r[t.symbol];return n?s.filter(o=>o.no==n):s}return[]},t.last=(r,n)=>t.list(r,n).slice(-1)[0];let e=i(r=>r&&Array.isArray(r[t.symbol]),"is")})(Ldt=gc.UnknownFieldHandler||(gc.UnknownFieldHandler={}));function Odt(t,e){return Object.assign(Object.assign({},t),e)}i(Odt,"mergeBinaryOptions");gc.mergeBinaryOptions=Odt;var Mdt;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(Mdt=gc.WireType||(gc.WireType={}))});var AT=I(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.varint32read=Ds.varint32write=Ds.int64toString=Ds.int64fromString=Ds.varint64write=Ds.varint64read=void 0;function Fdt(){let t=0,e=0;for(let n=0;n<28;n+=7){let s=this.buf[this.pos++];if(t|=(s&127)<<n,(s&128)==0)return this.assertBounds(),[t,e]}let r=this.buf[this.pos++];if(t|=(r&15)<<28,e=(r&112)>>4,(r&128)==0)return this.assertBounds(),[t,e];for(let n=3;n<=31;n+=7){let s=this.buf[this.pos++];if(e|=(s&127)<<n,(s&128)==0)return this.assertBounds(),[t,e]}throw new Error("invalid varint")}i(Fdt,"varint64read");Ds.varint64read=Fdt;function Udt(t,e,r){for(let o=0;o<28;o=o+7){let a=t>>>o,c=!(!(a>>>7)&&e==0),l=(c?a|128:a)&255;if(r.push(l),!c)return}let n=t>>>28&15|(e&7)<<4,s=e>>3!=0;if(r.push((s?n|128:n)&255),!!s){for(let o=3;o<31;o=o+7){let a=e>>>o,c=!!(a>>>7),l=(c?a|128:a)&255;if(r.push(l),!c)return}r.push(e>>>31&1)}}i(Udt,"varint64write");Ds.varint64write=Udt;var fT=65536*65536;function qdt(t){let e=t[0]=="-";e&&(t=t.slice(1));let r=1e6,n=0,s=0;function o(a,c){let l=Number(t.slice(a,c));s*=r,n=n*r+l,n>=fT&&(s=s+(n/fT|0),n=n%fT)}return i(o,"add1e6digit"),o(-24,-18),o(-18,-12),o(-12,-6),o(-6),[e,n,s]}i(qdt,"int64fromString");Ds.int64fromString=qdt;function Gdt(t,e){if(e>>>0<=2097151)return""+(fT*e+(t>>>0));let r=t&16777215,n=(t>>>24|e<<8)>>>0&16777215,s=e>>16&65535,o=r+n*6777216+s*6710656,a=n+s*8147497,c=s*2,l=1e7;o>=l&&(a+=Math.floor(o/l),o%=l),a>=l&&(c+=Math.floor(a/l),a%=l);function u(d,p){let m=d?String(d):"";return p?"0000000".slice(m.length)+m:m}return i(u,"decimalFrom1e7"),u(c,0)+u(a,c)+u(o,1)}i(Gdt,"int64toString");Ds.int64toString=Gdt;function Hdt(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t=t>>>7;e.push(t)}else{for(let r=0;r<9;r++)e.push(t&127|128),t=t>>7;e.push(1)}}i(Hdt,"varint32write");Ds.varint32write=Hdt;function $dt(){let t=this.buf[this.pos++],e=t&127;if((t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<7,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<14,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<21,(t&128)==0)return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let r=5;(t&128)!==0&&r<10;r++)t=this.buf[this.pos++];if((t&128)!=0)throw new Error("invalid varint");return this.assertBounds(),e>>>0}i($dt,"varint32read");Ds.varint32read=$dt});var cd=I(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});ad.PbLong=ad.PbULong=ad.detectBi=void 0;var QI=AT(),wt;function VAe(){let t=new DataView(new ArrayBuffer(8));wt=globalThis.BigInt!==void 0&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"?{MIN:BigInt("-9223372036854775808"),MAX:BigInt("922337203685477580 Line truncated
`)}};GT.RpcError=DV});var LV=I($T=>{"use strict";Object.defineProperty($T,"__esModule",{value:!0});$T.mergeRpcOptions=void 0;var xhe=wr();function pmt(t,e){if(!e)return t;let r={};HT(t,r),HT(e,r);for(let n of Object.keys(e)){let s=e[n];switch(n){case"jsonOptions":r.jsonOptions=xhe.mergeJsonOptions(t.jsonOptions,r.jsonOptions);break;case"binaryOptions":r.binaryOptions=xhe.mergeBinaryOptions(t.binaryOptions,r.binaryOptions);break;case"meta":r.meta={},HT(t.meta,r.meta),HT(e.meta,r.meta);break;case"interceptors":r.interceptors=t.interceptors?t.interceptors.concat(s):s.concat();break}}return r}i(pmt,"mergeRpcOptions");$T.mergeRpcOptions=pmt;function HT(t,e){if(!t)return;let r=e;for(let[n,s]of Object.entries(t))s instanceof Date?r[n]=new Date(s.getTime()):Array.isArray(s)?r[n]=s.concat():r[n]=s}i(HT,"copy")});var MV=I(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.Deferred=Nm.DeferredState=void 0;var Cc;(function(t){t[t.PENDING=0]="PENDING",t[t.REJECTED=1]="REJECTED",t[t.RESOLVED=2]="RESOLVED"})(Cc=Nm.DeferredState||(Nm.DeferredState={}));var OV=class{static{i(this,"Deferred")}constructor(e=!0){this._state=Cc.PENDING,this._promise=new Promise((r,n)=>{this._resolve=r,this._reject=n}),e&&this._promise.catch(r=>{})}get state(){return this._state}get promise(){return this._promise}resolve(e){if(this.state!==Cc.PENDING)throw new Error(`cannot resolve ${Cc[this.state].toLowerCase()}`);this._resolve(e),this._state=Cc.RESOLVED}reject(e){if(this.state!==Cc.PENDING)throw new Error(`cannot reject ${Cc[this.state].toLowerCase()}`);this._reject(e),this._state=Cc.REJECTED}resolvePending(e){this._state===Cc.PENDING&&this.resolve(e)}rejectPending(e){this._state===Cc.PENDING&&this.reject(e)}};Nm.Deferred=OV});var UV=I(zT=>{"use strict";Object.defineProperty(zT,"__esModule",{value:!0});zT.RpcOutputStreamController=void 0;var bhe=MV(),Tm=wr(),FV=class{static{i(this,"RpcOutputStreamController")}constructor(){this._lis={nxt:[],msg:[],err:[],cmp:[]},this._closed=!1,this._itState={q:[]}}onNext(e){return this.addLis(e,this._lis.nxt)}onMessage(e){return this.addLis(e,this._lis.msg)}onError(e){return this.addLis(e,this._lis.err)}onComplete(e){return this.addLis(e,this._lis.cmp)}addLis(e,r){return r.push(e),()=>{let n=r.indexOf(e);n>=0&&r.splice(n,1)}}clearLis(){for(let e of Object.values(this._lis))e.splice(0,e.length)}get closed(){return this._closed!==!1}notifyNext(e,r,n){Tm.assert((e?1:0)+(r?1:0)+(n?1:0)<=1,"only one emission at a time"),e&&this.notifyMessage(e),r&&this.notifyError(r),n&&this.notifyComplete()}notifyMessage(e){Tm.assert(!this.closed,"stream is closed"),this.pushIt({value:e,done:!1}),this._lis.msg.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(e,void 0,!1))}notifyError(e){Tm.assert(!this.closed,"stream is closed"),this._closed=e,this.pushIt(e),this._lis.err.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(void 0,e,!1)),this.clearLis()}notifyComplete(){Tm.assert(!this.closed,"stream is closed"),this._closed=!0,this.pushIt({value:null,done:!0}),this._lis.cmp.forEach(e=>e()),this._lis.nxt.forEach(e=>e(void 0,void 0,!0)),this.clearLis()}[Symbol.asyncIterator](){return this._closed===!0?this.pushIt({value:null,done:!0}):this._closed!==!1&&this.pushIt(this._closed),{next:i(()=>{let e=this._itState;Tm.assert(e,"bad state"),Tm.assert(!e.p,"iterator contract broken");let r=e.q.shift();return r?"value"in r?Promise.resolve(r):Promise.reject(r):(e.p=new bhe.Deferred,e.p.promise)},"next")}}pushIt(e){let r=this._itState;if(r.p){let n=r.p;Tm.assert(n.state==bhe.DeferredState.PENDING,"iterator contract broken"),"value"in e?n.resolve(e):n.reject(e),delete r.p}else r.q.push(e)}};zT.RpcOutputStreamController=FV});var GV=I(Qh=>{"use strict";var mmt=Qh&&Qh.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(Qh,"__esModule",{value:!0});Qh.UnaryCall=void 0;var qV=class{static{i(this,"UnaryCall")}constructor(e,r,n,s,o,a,c){this.method=e,this.requestHeaders=r,this.request=n,this.headers=s,this.response=o,this.status=a,this.trailers=c}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return mmt(this,void 0,void 0,function*(){let[e,r,n,s]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,response:r,status:n,trailers:s}})}};Qh.UnaryCall=qV});var $V=I(Dh=>{"use strict";var fmt=Dh&&Dh.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function Line truncated
You can add a runtime option to disable the check or this warning:
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}i(DCt,"logUnexpecedPropertyAccessOnce");function kCt(){Object.keys(Ov).forEach(function(t){delete Ov[t]})}i(kCt,"resetLoggedProperties")});var Fv=I(xc=>{"use strict";xc.__esModule=!0;xc.HandlebarsEnvironment=TW;function CCe(t){return t&&t.__esModule?t:{default:t}}i(CCe,"_interopRequireDefault");var Om=Ln(),LCt=ii(),RW=CCe(LCt),OCt=SW(),MCt=hCe(),FCt=bW(),Mv=CCe(FCt),UCt=BW(),qCt="4.7.10";xc.VERSION=qCt;var GCt=8;xc.COMPILER_REVISION=GCt;var HCt=7;xc.LAST_COMPATIBLE_COMPILER_REVISION=HCt;var $Ct={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};xc.REVISION_CHANGES=$Ct;var NW="[object Object]";function TW(t,e,r){this.helpers=t||{},this.partials=e||{},this.decorators=r||{},OCt.registerDefaultHelpers(this),MCt.registerDefaultDecorators(this)}i(TW,"HandlebarsEnvironment");TW.prototype={constructor:TW,logger:Mv.default,log:Mv.default.log,registerHelper:i(function(e,r){if(Om.toString.call(e)===NW){if(r)throw new RW.default("Arg not supported with multiple helpers");Om.extend(this.helpers,e)}else this.helpers[e]=r},"registerHelper"),unregisterHelper:i(function(e){delete this.helpers[e]},"unregisterHelper"),registerPartial:i(function(e,r){if(Om.toString.call(e)===NW)Om.extend(this.partials,e);else{if(typeof r>"u")throw new RW.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=r}},"registerPartial"),unregisterPartial:i(function(e){delete this.partials[e]},"unregisterPartial"),registerDecorator:i(function(e,r){if(Om.toString.call(e)===NW){if(r)throw new RW.default("Arg not supported with multiple decorators");Om.extend(this.decorators,e)}else this.decorators[e]=r},"registerDecorator"),unregisterDecorator:i(function(e){delete this.decorators[e]},"unregisterDecorator"),resetLoggedPropertyAccesses:i(function(){UCt.resetLoggedProperties()},"resetLoggedPropertyAccesses")};var zCt=Mv.default.log;xc.log=zCt;xc.createFrame=Om.createFrame;xc.logger=Mv.default});var wCe=I((Uv,ICe)=>{"use strict";Uv.__esModule=!0;function vW(t){this.string=t}i(vW,"SafeString");vW.prototype.toString=vW.prototype.toHTML=function(){return""+this.string};Uv.default=vW;ICe.exports=Uv.default});var SCe=I(PW=>{"use strict";PW.__esModule=!0;PW.wrapHelper=VCt;function VCt(t,e){if(typeof t!="function")return t;var r=i(function(){var s=arguments[arguments.length-1];return arguments[arguments.length-1]=e(s),t.apply(this,arguments)},"wrapper");return r}i(VCt,"wrapHelper")});var NCe=I(md=>{"use strict";md.__esModule=!0;md.checkRevision=XCt;md.template=ZCt;md.wrapProgram=qv;md.resolvePartial=eIt;md.invokePartial=tIt;md.noop=BCe;function WCt(t){return t&&t.__esModule?t:{default:t}}i(WCt,"_interopRequireDefault");function YCt(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}i(YCt,"_interopRequireWildcard");var JCt=Ln(),Mm=YCt(JCt),jCt=ii(),Ji=WCt(jCt),Jl=Fv(),xCe=SW(),KCt=SCe(),_W=BW();function XCt(t){var e=t&&t[0]||1,r=Jl.COMPILER_REVISION;if(!(e>=Jl.LAST_COMPATIBLE_COMPILER_REVISION&&e<=Jl.COMPILER_REVISION))if(e<Jl.LAST_COMPATIBLE_COMPILER_REVISION){var n=Jl.REVISION_CHANGES[r],s=Jl.REVISION_CHANGES[e];throw new Ji.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+n+") or downgrade your runtime to an older version ("+s+").")}else throw new Ji.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+t[1]+").")}i(XCt,"checkRevision");function ZCt(t,e){if(!e)throw new Ji.default("No environment passed to template");if(!t||!t.main)throw new Ji.default("Unknown template object: "+typeof t);t.main.decorator=t.main_d,e.VM.checkRevision(t.compiler);var r=t.compiler&&t.compiler[0]===7;function n(a,c,l){l.hash&&(c=Mm.extend({},c,l.hash),l.ids&&(l.ids[0]=!0)),a=e.VM.resolvePartial.call(this,a,c,l),l.hooks=this.hooks,l.protoAccessControl=this.protoAccessControl;var u=e.VM.invokePartial.call(this,a,c,l);if(u==null&&Mm.isFunction(a))throw new Ji.default("The partial "+l.name+" returned no output: partials must return a string");if(u==null&&e.compile){if(typeof a!="string")throw new Ji.default("The partial "+l.name+" could not be compiled: partials must be strings or functions returning strings");l.partials[l.name]=e.compile(a,t.compilerOptions,e),u=l.partials[l.name](c,l)}if(u!=null){if(l.indent){for(var d=u.split(`
`),p=0,m=d.length;p<m&&!(!d[p]&&p+1===m);p++)d[p]=l.indent+d[p];u=d.join(`
`)}return u}else throw new Ji.default("The partial "+l.name+" could not be compiled when running in runtime-only mode")}i(n,"invokePartialWrapper");var s={strict:i(function(c,l,u){if(!c||!(l in c))throw new Ji.default('"'+l+'" not defined in '+c,{loc:u});return s.lookupProperty(c,l)},"strict"),lookupProperty:i(function(c,l){var u=c[l];if(u==null||Object.prototype.hasOwnProperty.call(c,l)&&!_W.isPrototypeConstructor(c,l,u)||_W.resultIsAllowed(u,s.protoAccessControl,l))return u},"lookupProperty"),lookup:i(function(c,l){for(var u=c.length,d=0;d<u;d++){var p=c[d]&&s.lookupProperty(c[d],l);if(p!=null)return p}},"lookup"),lambda:i(function(c,l){return typeof c=="function"?c.call(l):c},"lambda"),escapeExpression:Mm.escapeExpression,invokePartial:n,fn:i(function(c){var l=t[c];return l.decorator=t[c+"_d"],l},"fn"),programs:[],program:i(function(c,l,u,d,p){var m=this.programs[c],f=this.fn(c);return l||p||d||u?m=qv(this,c,f,l,u,d,p):m||(m=this.programs[c]=qv(this,c,f)),m},"program"),data:i(function(c,l){for(;c&&l--;)c=c._parent;return c},"data"),mergeIfNeeded:i(function(c,l){var u=c||l;return c&&l&&c!==l&&(u=Mm.extend({},l,c)),u},"mergeIfNeeded"),nullContext:Object.seal({}),noop:e.VM.noop,compilerInfo:t.compiler};function o(a){var c=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],l=c.data;o._setup(c),!c.partial&&t.useData&&(l=rIt(a,l));var u=void 0,d=t.useBlockParams?[]:void 0;t.useDepths&&(c.depths?u=a!=c.depths[0]?[a].concat(c.depths):c.depths:u=[a]);function p(m){return""+t.main(s,m,s.helpers,s.partials,l,d,u)}return i(p,"main"),p=RCe(t.main,p,s,c.depths||[],l,d),p(a,c)}return i(o,"ret"),o.isTop=!0,o._setup=function(a){if(a.partial)s.protoAccessControl=a.protoAccessControl,s.helpers=a.helpers,s.partials=a.partials,s.decorators=a.decorators,s.hooks=a.hooks;else{var c={};bCe(c,e.helpers,s),bCe(c,a.helpers,s),s.helpers=c,t.usePartial&&(s.partials=s.mergeIfNeeded(a.partials,e.partials)),(t.usePartial||t.useDecorators)&&(s.decorators=Mm.extend({},e.decorators,a.decorators)),s.hooks={},s.protoAccessControl=_W.createProtoAccessControl(a);var l=a.allowCallsToHelperMissing||r;xCe.moveHelperToHooks(s,"helperMissing",l),xCe.moveHelperToHooks(s,"blockHelperMissing",l)}},o._child=function(a,c,l,u){if(t.useBlockParams&&!l)throw new Ji.default("must pass block params");if(t.useDepths&&!u)throw new Ji.default("must pass parent depths");return qv(s,a,t[a],c,0,l,u)},o}i(ZCt,"template");function qv(t,e,r,n,s,o,a){function c(l){var u=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],d=a;return a&&l!=a[0]&&!(l===t.nullContext&&a[0]===null)&&(d=[l].concat(a)),r(t,l,t.helpers,t.partials,u.data||n,o&&[u.blockParams].concat(o),d)}return i(c,"prog"),c=RCe(r,c,t,a,n,o),c.program=e,c.depth=a?a.length:0,c.blockParams=s||0,c}i(qv,"wrapProgram");function eIt(t,e,r){return t?typeof t!="function"&&!r.name&&(r.name=t,t=Gv(r.partials,t)):r.name==="@partial-block"?t=Gv(r.data,"partial-block"):t=Gv(r.partials,r.name),t}i(eIt,"resolvePartial");function tIt(t,e,r){var n=Gv(r.data,"partial-block");r.partial=!0,r.ids&&(r.data.contextPath=r.ids[0]||r.data.contextPath);var s=void 0;if(r.fn&&r.fn!==BCe&&(function(){r.data=Jl.createFrame(r.data);var o=r.fn;s=r.data["partial-block"]=i(function(c){var l=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return l.data=Jl.createFrame(l.data),l.data["partial-block"]=n,o(c,l)},"partialBlockWrapper"),o.partials&&(r.partials=Mm.extend({},r.partials,o.partials))})(),t===void 0&&s&&(t=s),t===void 0)throw new Ji.default("The partial "+r.name+" could not be found");if(t instanceof Function)return t(e,r)}i(tIt,"invokePartial");function BCe(){return""}i(BCe,"noop");function Gv(t,e){if(t&&Object.prototype.hasOwnProperty.call(t,e))return t[e]}i(Gv,"lookupOwnProperty");function rIt(t,e){return(!e||!("root"in e))&&(e=e?Jl.createFrame(e):{},e.root=t),e}i(rIt,"initData");function RCe(t,e,r,n,s,o){if(t.decorator){var a={};e=t.decorator(e,a,r,n&&n[0],s,o,n),Mm.extend(e,a)}return e}i(RCe,"executeDecorators");function bCe(t,e,r){e&&Object.keys(e).forEach(function(n){var s=e[n];t[n]=nIt(s,r)})}i(bCe,"addHelpers");function nIt(t,e){var r=e.lookupProperty;return KCt.wrapHelper(t,function(n){return n.lookupProperty=r,n})}i(nIt,"passLookupPropertyOption")});var QW=I((Hv,TCe)=>{"use strict";Hv.__esModule=!0;Hv.default=function(t){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var e=globalThis.Handlebars;t.noConflict=function(){return globalThis.Handlebars===t&&(globalThis.Handlebars=e),t}};TCe.exports=Hv.default});var DCe=I(($v,QCe)=>{"use strict";$v.__esModule=!0;function kW(t){return t&&t.__esModule?t:{default:t}}i(kW,"_interopRequireDefault");function LW(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}i(LW,"_interopRequireWildcard");var sIt=Fv(),vCe=LW(sIt),oIt=wCe(),iIt=kW(oIt),aI Line truncated
`+this.lexer.showPosition()+`
Expecting `+U.join(", ")+", got '"+(this.terminals_[b]||b)+"'":ut="Parse error on line "+(p+1)+": Unexpected "+(b==1?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(ut,{text:this.lexer.match,token:this.terminals_[b]||b,line:this.lexer.yylineno,loc:E,expected:U})}}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+P+", token: "+b);switch(_[0]){case 1:a.push(b),c.push(this.lexer.yytext),l.push(this.lexer.yylloc),a.push(_[1]),b=null,N?(b=N,N=null):(m=this.lexer.yyleng,d=this.lexer.yytext,p=this.lexer.yylineno,E=this.lexer.yylloc,f>0&&f--);break;case 2:if(ne=this.productions_[_[1]][1],ae.$=c[c.length-ne],ae._$={first_line:l[l.length-(ne||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(ne||1)].first_column,last_column:l[l.length-1].last_column},C&&(ae._$.range=[l[l.length-(ne||1)].range[0],l[l.length-1].range[1]]),Ce=this.performAction.call(ae,d,m,p,this.yy,_[1],c,l),typeof Ce<"u")return Ce;ne&&(a=a.slice(0,-1*ne*2),c=c.slice(0,-1*ne),l=l.slice(0,-1*ne)),a.push(this.productions_[_[1]][0]),c.push(ae.$),l.push(ae._$),Z=u[a[a.length-2]][a[a.length-1]],a.push(Z);break;case 3:return!0}}return!0},"parse")},e=(function(){var n={EOF:1,parseError:i(function(o,a){if(this.yy.parser)this.yy.parser.parseError(o,a);else throw new Error(o)},"parseError"),setInput:i(function(o){return this._input=o,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:i(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var a=o.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:i(function(o){var a=o.length,c=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a-1),this.offset-=a;var l=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===l.length?this.yylloc.first_column:0)+l[l.length-c.length].length-c[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-a]),this},"unput"),more:i(function(){return this._more=!0,this},"more"),less:i(function(o){this.unput(this.match.slice(o))},"less"),pastInput:i(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:i(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:i(function(){var o=this.pastInput(),a=new Array(o.length+1).join("-");return o+this.upcomingInput()+`
`+a+"^"},"showPosition"),next:i(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,a,c,l,u,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;m<p.length&&(c=this._input.match(this.rules[p[m]]),!(c&&(!a||c[0].length>a[0].length)&&(a=c,l=m,!this.options.flex)));m++);return a?(d=a[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],o=this.performAction.call(this,this.yy,this,p[l],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:i(function(){var o=this.next();return typeof o<"u"?o:this.lex()},"lex"),begin:i(function(o){this.conditionStack.push(o)},"begin"),popState:i(function(){return this.conditionStack.pop()},"popState"),_currentRules:i(function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},"_currentRules"),topState:i(function(){return this.conditionStack[this.conditionStack.length-2]},"topState"),pushState:i(function(o){this.begin(o)},"begin")};return n.options={},n.performAction=i(function(o,a,c,l){function u(p,m){return a.yytext=a.yytext.substring(p,a.yyleng-m+p)}i(u,"strip");var d=l;switch(c){case 0:if(a.yytext.slice(-2)==="\\\\"?(u(0,1),this.begin("mu")):a.yytext.slice(-1)==="\\"?(u(0,1),this.begin("emu")):this.begin("mu"),a.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(u(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(a.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return a.yytext=u(1,2).replace(/\\"/g,'"'),80;break;case 32:return a.yytext=u(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return a.yytext=a.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},"anonymous"),n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n})();t.lexer=e;function r(){this.yy={}}return i(r,"Parser"),r.prototype=t,t.Parser=r,new r})();Vv.default=mIt;OCe.exports=Vv.default});var FW=I(MW=>{"use strict";MW.__esModule=!0;var fIt=["Program","BlockStatement","DecoratorBlock","PartialStatement","PartialBlockStatement","Decorator","MustacheStatement","ContentStatement","CommentStatement","SubExpression","PathExpression","StringLiteral","NumberLiteral","BooleanLiteral","UndefinedLiteral","NullLiteral","Hash","HashPair"];MW.NODE_TYPES=fIt});var jv=I((Jv,GCe)=>{"use strict";Jv.__esModule=!0;function AIt(t){return t&&t.__esModule?t:{default:t}}i(AIt,"_interopRequireDefault");var hIt=ii(),UW=AIt(hIt),gIt=Ln(),yIt=FW();function Yv(){this.parents=[]}i(Yv,"Visitor");function FCe(t,e){return gIt.indexOf(yIt.NODE_TYPES,e)!==-1||!(e in Yv.prototype)&&typeof t[e]=="function"}i(FCe,"isDispatchable");Yv.prototype={constructor:Yv,mutating:!1,acceptKey:i(function(e,r){var n=this.accept(e[r]);if(this.mutating){if(n&&!FCe(this,n.type))throw new UW.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+e.type);e[r]=n}},"acceptKey"),acceptRequired:i(function(e,r){if(this.acceptKey(e,r),!e[r])throw new UW.default(e.type+" requires "+r)},"acceptRequired"),acceptArray:i(function(e){for(var r=0,n=e.length;r<n;r++)this.acceptKey(e,r),e[r]||(e.splice(r,1),r--,n--)},"acceptArray"),accept:i(function(e){if(e){if(!FCe(this,e.type)||!this[e.type])throw new UW.default("Unknown type: "+e.type,e);this.current&&this.parents.unshift(this.current),this.current=e;var r=this[e.tLine truncated
`])}),e},"merge"),each:i(function(e){for(var r=0,n=this.source.length;r<n;r++)e(this.source[r])},"each"),empty:i(function(){var e=this.currentLocation||{start:{}};return new Gm(e.start.line,e.start.column,this.srcFile)},"empty"),wrap:i(function(e){var r=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];return e instanceof Gm?e:(e=cY(e,this,r),new Gm(r.start.line,r.start.column,this.srcFile,e))},"wrap"),functionCall:i(function(e,r,n){return n=this.generateList(n),this.wrap([e,r?"."+r+"(":"(",n,")"])},"functionCall"),quotedString:i(function(e){return e=e+"",fwt.test(e)?bIe(e):'"'+e+'"'},"quotedString"),objectLiteral:i(function(e){var r=this,n=[];Object.keys(e).forEach(function(o){var a=cY(e[o],r);a!=="undefined"&&n.push([r.quotedString(o),":",a])});var s=this.generateList(n);return s.prepend("{"),s.add("}"),s},"objectLiteral"),generateList:i(function(e){for(var r=this.empty(),n=0,s=e.length;n<s;n++)n&&r.add(","),r.add(cY(e[n],this));return r},"generateList"),generateArray:i(function(e){var r=this.generateList(e);return r.prepend("["),r.add("]"),r},"generateArray")};oP.default=BIe});var DIe=I((iP,QIe)=>{"use strict";iP.__esModule=!0;function vIe(t){return t&&t.__esModule?t:{default:t}}i(vIe,"_interopRequireDefault");var NIe=Fv(),ywt=ii(),uY=vIe(ywt),Ewt=Ln(),PIe=RIe(),TIe=vIe(PIe);function ug(t){this.value=t}i(ug,"Literal");function dg(){}i(dg,"JavaScriptCompiler");dg.prototype={nameLookup:i(function(e,r){return this.internalNameLookup(e,r)},"nameLookup"),depthedLookup:i(function(e){return[this.aliasable("container.lookup"),"(depths, ",this.quotedString(e),")"]},"depthedLookup"),compilerInfo:i(function(){var e=NIe.COMPILER_REVISION,r=NIe.REVISION_CHANGES[e];return[e,r]},"compilerInfo"),appendToBuffer:i(function(e,r,n){return Ewt.isArray(e)||(e=[e]),e=this.source.wrap(e,r),this.environment.isSimple?["return ",e,";"]:n?["buffer += ",e,";"]:(e.appendToBuffer=!0,e)},"appendToBuffer"),initializeBuffer:i(function(){return this.quotedString("")},"initializeBuffer"),internalNameLookup:i(function(e,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",e,",",this.quotedString(r),")"]},"internalNameLookup"),lookupPropertyFunctionIsUsed:!1,compile:i(function(e,r,n,s){this.environment=e,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!s,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,r),this.useDepths=this.useDepths||e.useDepths||e.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var o=e.opcodes,a=void 0,c=void 0,l=void 0,u=void 0;for(l=0,u=o.length;l<u;l++)a=o[l],this.source.currentLocation=a.loc,c=c||a.loc,this[a.opcode].apply(this,a.args);if(this.source.currentLocation=c,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new uY.default("Compile completed with content left on stack");this.decorators.isEmpty()?this.decorators=void 0:(this.useDecorators=!0,this.decorators.prepend(["var decorators = container.decorators, ",this.lookupPropertyFunctionVarDeclaration(),`;
`]),this.decorators.push("return fn;"),s?this.decorators=Function.apply(this,["fn","props","container","depth0","data","blockParams","depths",this.decorators.merge()]):(this.decorators.prepend(`function(fn, props, container, depth0, data, blockParams, depths) {
`),this.decorators.push(`}
`),this.decorators=this.decorators.merge()));var d=this.createFunctionContext(s);if(this.isChild)return d;var p={compiler:this.compilerInfo(),main:d};this.decorators&&(p.main_d=this.decorators,p.useDecorators=!0);var m=this.context,f=m.programs,A=m.decorators;for(l=0,u=f.length;l<u;l++)p[l]=f[l],A[l]&&(p[l+"_d"]=A[l],p.useDecorators=!0);return this.environment.usePartial&&(p.usePartial=!0),this.options.data&&(p.useData=!0),this.useDepths&&(p.useDepths=!0),this.useBlockParams&&(p.useBlockParams=!0),this.options.compat&&(p.compat=!0),s?p.compilerOptions=this.options:(p.compiler=JSON.stringify(p.compiler),this.source.currentLocation={start:{line:1,column:0}},p=this.objectLiteral(p),r.srcName?(p=p.toStringWithSourceMap({file:r.destName}),p.map=p.map&&p.map.toString()):p=p.toString()),p},"compile"),preamble:i(function(){this.lastContext=0,this.source=new TIe.default(this.options.srcName),this.decorators=new TIe.default(this.options.srcName)},"preamble"),createFunctionContext:i(function(e){var r=this,n="",s=this.stackVars.concat(this.registers.list);s.length>0&&(n+=", "+s.join(", "));var o=0;Object.keys(this.aliases).forEach(function(l){var u=r.aliases[l];u.children&&u.referenceCount>1&&(n+=", alias"+ ++o+"="+l,u.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var a=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&a.push("blockParams"),this.useDepths&&a.push("depths");var c=this.mergeSource(n);return e?(a.push(c),Function.apply(this,a)):this.source.wrap(["function(",a.join(","),`) {
`,c,"}"])},"createFunctionContext"),mergeSource:i(function(e){var r=this.environment.isSimple,n=!this.forceBuffer,s=void 0,o=void 0,a=void 0,c=void 0;return this.source.each(function(l){l.appendToBuffer?(a?l.prepend(" + "):a=l,c=l):(a&&(o?a.prepend("buffer += "):s=!0,c.add(";"),a=c=void 0),o=!0,r||(n=!1))}),n?a?(a.prepend("return "),c.add(";")):o||this.source.push('return "";'):(e+=", buffer = "+(s?"":this.initializeBuffer()),a?(a.prepend("return buffer + "),c.add(";")):this.source.push("return buffer;")),e&&this.source.prepend("var "+e.substring(2)+(s?"":`;
`)),this.source.merge()},"mergeSource"),lookupPropertyFunctionVarDeclaration:i(function(){return`
lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName];
}
return undefined
}
`.trim()},"lookupPropertyFunctionVarDeclaration"),blockValue:i(function(e){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(e,0,n);var s=this.popStack();n.splice(1,0,s),this.push(this.source.functionCall(r,"call",n))},"blockValue"),ambiguousBlockValue:i(function(){var e=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(e,"call",r),"}"])},"ambiguousBlockValue"),appendContent:i(function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},"appendContent"),append:i(function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource(["if (",e," != null) { ",this.appendToBuffer(e,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},"append"),appendEscaped:i(function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},"appendEscaped"),getContext:i(function(e){this.lastContext=e},"getContext"),pushContext:i(function(){this.pushStackLiteral(this.contextName(this.lastContext))},"pushContext"),lookupOnContext:i(function(e,r,n,s){var o=0;!s&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(e[o++])):this.pushContext(),this.resolvePath("context",e,o,r,n)},"lookupOnContext"),lookupBlockParam:i(function(e,r){this.useBlockParams=!0,this.push(["blockParams[",e[0],"][",e[1],"]"]),this.resolvePath("context",r,1)},"lookupBlockParam"),lookupData:i(function(e,r,n){e?this.pushStackLiteral("container.data(data, "+e+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},"lookupData"),resolvePath:i(function(e,r,n,s,o){var a=this;if(this.options.strict||this.options.assumeObjects){this.push(Cwt(this.options.strict&&o,this,r,n,e));return}for(var c=r.length,l=i(function(d){a.replaceStack(function(p){var m=a.nameLookup(p,r[d],e);return s?[" && ",m]:[" != null ? ",m," : ",p]})},"_loop"),u=n;u<c;u++)l(u)},"resolvePath"),resolvePossibleLambda:i(function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},"resolvePossibleLambda"),pushStringParam:i(function(e,r){this.pushContext(),this.pushString(r),r!=="SubExpression"&&(typeof e=="string"?this.pushString(e):this.pushStackLiteral(e))},"pushStringParam"),emptyHash:i(function(e){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(e?"undefined":"{}")},"emptyHash"),pushHash:i(function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},"pushHash"),popHash:i(function(){var e=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(e.ids)),this.stringParams&&(this.push(this.objectLiteral(e.contexts)),this.push(this.objectLiteral(e.types))),this.push(this.objectLiteral(e.values))},"popHash"),pushString:i(function(e){this.pushStackLiteral(this.quotedString(e))},"pushString"),pushLiteral:i(function(e){this.pushStackLiteral(e)},"pushLiteral"),pushProgram:i(function(e){e!=null?this.pushStackLiteral(this.programExpression(e)):this.pushStackLiteral(null)},"pushProgram"),registerDecorator:i(function(e,r){var n=this.nameLookup("decorators",r,"decorator"),s=this.setupHelperArgs(r,e);this.decorators.push(["var decorator = ",n,";"]),this.decorators.push(['if (typeof decorator !== "function") { throw new Error(',this.quotedString('Missing decorator: "'+r+'"'),"); }"]),this.decorators.push(["fn = ",this.decorators.functionCall("decorator","",["fn","props","container",s])," || fn;"])},"registerDecorator"),invokeHelper:i(function(e,r,n){var s=this.popStack(),o=this.setupHelper(e,r),a=[];n&&a.push(o.name),a.push(s),this.options.strict||a.push(this.aliasable("container.hooks.helperMissing"));var c=["(",this.itemsSeparatedBy(a,"||"),")"],l=this.source.functionCall(c,"call",o.callParams);this.push(l)},"invokeHelper"),itemsSeparatedBy:i(function(e,r){var n=[];n.push(e[0]);for(var s=1;s<e.length;s++)n.push(r,e[s]);return n},"itemsSeparatedBy"),invokeKnownHelper:i(function(e,r){var n=this.setupHelper(e,r);this.push(this.source.functionCall(n.name,"call",n.callParams))},"invokeKnownHelper"),invokeAmbiguous:i(function(e,r){this.useRegister("helper");var n=this.popStack();this.emptyHash();var s=this.setupHelper(0,e,r),o=this.lastHelper=this.nameLookup("helpers",e,"helper"),a=["(","(helper = ",o," || ",n,")"];this.options.strict||(a[0]="(helper = ",a.push(" != null ? helper : ",this.aliasable("container.hooks.helperMissing"))),this.push(["(",a,s.paramsInit?["),(",s.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("h Line truncated
`,e};ur.prototype.Program=function(t){var e="",r=t.body,n=void 0,s=void 0;if(t.blockParams){var o="BLOCK PARAMS: [";for(n=0,s=t.blockParams.length;n<s;n++)o+=" "+t.blockParams[n];o+=" ]",e+=this.pad(o)}for(n=0,s=r.length;n<s;n++)e+=this.accept(r[n]);return this.padding--,e};ur.prototype.MustacheStatement=function(t){return this.pad("{{ "+this.SubExpression(t)+" }}")};ur.prototype.Decorator=function(t){return this.pad("{{ DIRECTIVE "+this.SubExpression(t)+" }}")};ur.prototype.BlockStatement=ur.prototype.DecoratorBlock=function(t){var e="";return e+=this.pad((t.type==="DecoratorBlock"?"DIRECTIVE ":"")+"BLOCK:"),this.padding++,e+=this.pad(this.SubExpression(t)),t.program&&(e+=this.pad("PROGRAM:"),this.padding++,e+=this.accept(t.program),this.padding--),t.inverse&&(t.program&&this.padding++,e+=this.pad("{{^}}"),this.padding++,e+=this.accept(t.inverse),this.padding--,t.program&&this.padding--),this.padding--,e};ur.prototype.PartialStatement=function(t){var e="PARTIAL:"+t.name.original;return t.params[0]&&(e+=" "+this.accept(t.params[0])),t.hash&&(e+=" "+this.accept(t.hash)),this.pad("{{> "+e+" }}")};ur.prototype.PartialBlockStatement=function(t){var e="PARTIAL BLOCK:"+t.name.original;return t.params[0]&&(e+=" "+this.accept(t.params[0])),t.hash&&(e+=" "+this.accept(t.hash)),e+=" "+this.pad("PROGRAM:"),this.padding++,e+=this.accept(t.program),this.padding--,this.pad("{{> "+e+" }}")};ur.prototype.ContentStatement=function(t){return this.pad("CONTENT[ '"+t.value+"' ]")};ur.prototype.CommentStatement=function(t){return this.pad("{{! '"+t.value+"' }}")};ur.prototype.SubExpression=function(t){for(var e=t.params,r=[],n=void 0,s=0,o=e.length;s<o;s++)r.push(this.accept(e[s]));return e="["+r.join(", ")+"]",n=t.hash?" "+this.accept(t.hash):"",this.accept(t.path)+" "+e+n};ur.prototype.PathExpression=function(t){var e=t.parts.join("/");return(t.data?"@":"")+"PATH:"+e};ur.prototype.StringLiteral=function(t){return'"'+t.value+'"'};ur.prototype.NumberLiteral=function(t){return"NUMBER{"+t.value+"}"};ur.prototype.BooleanLiteral=function(t){return"BOOLEAN{"+t.value+"}"};ur.prototype.UndefinedLiteral=function(){return"UNDEFINED"};ur.prototype.NullLiteral=function(){return"NULL"};ur.prototype.Hash=function(t){for(var e=t.pairs,r=[],n=0,s=e.length;n<s;n++)r.push(this.accept(e[n]));return"HASH{"+r.join(", ")+"}"};ur.prototype.HashPair=function(t){return t.key+"="+this.accept(t.value)}});var GIe=I((IIr,qIe)=>{var lP=OIe().default,UIe=MIe();lP.PrintVisitor=UIe.PrintVisitor;lP.print=UIe.print;qIe.exports=lP;function FIe(t,e){var r=require("fs"),n=r.readFileSync(e,"utf8");t.exports=lP.compile(n)}i(FIe,"extension");typeof require<"u"&&require.extensions&&(require.extensions[".handlebars"]=FIe,require.extensions[".hbs"]=FIe)});var ewe=I(fP=>{"use strict";Object.defineProperty(fP,"__esModule",{value:!0});fP.getProxyUrl=Fwt;fP.checkBypass=ZIe;function Fwt(t){let e=t.protocol==="https:";if(ZIe(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new mP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new mP(`http://${r}`)}else return}i(Fwt,"getProxyUrl");function ZIe(t){if(!t.hostname)return!1;let e=t.hostname;if(Uwt(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(o==="*"||s.some(a=>a===o||a.endsWith(`.${o}`)||o.startsWith(".")&&a.endsWith(`${o}`)))return!0;return!1}i(ZIe,"checkBypass");function Uwt(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}i(Uwt,"isLoopbackAddress");var mP=class extends URL{static{i(this,"DecodedURL")}constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var rwe=I($t=>{"use strict";var qwt=$t&&$t.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Gwt=$t&&$t.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),yP=$t&&$t.__importStar||(function(){var t=i(function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;s<n.length;s++)n[s]!=="default"&&qwt(r,e,n[s]);return Gwt(r,e), Line truncated
versions published after the first week of January 2027
will require node >=${r}. You are running node ${t}.
To continue receiving updates to AWS services, bug fixes,
and security updates please upgrade to node >=${r}.
More information can be found at: https://a.co/c895JFp`))}},"emitWarningIfUnsupportedVersion")});var ZSt,ext,eSe,tSe=g(()=>{ZSt=i(()=>(t,e)=>async r=>(e.__retryLongPoll=!0,t(r)),"longPollMiddleware"),ext={name:"longPollMiddleware",tags:["RETRY"],step:"initialize",override:!0},eSe=i(t=>({applyToStack:i(e=>{e.add(ZSt(),ext)},"applyToStack")}),"getLongPollPlugin")});function Ed(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var rSe=g(()=>{i(Ed,"setCredentialFeature")});var nSe,LY,sSe=g(()=>{nSe=require("node:stream"),LY=i(t=>t?.body instanceof nSe.Readable||typeof ReadableStream<"u"&&t?.body instanceof ReadableStream,"isStreamingPayload")});var Ym,Cd,Id,oSe,iSe,BP=g(()=>{Ym=i((t,e)=>{let r=[];if(t&&r.push(t),e)for(let n of e)r.push(n);return r},"getAllAliases"),Cd=i((t,e)=>`${t||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,"getMiddlewareNameWithAliases"),Id=i(()=>{let t=[],e=[],r=!1,n=new Set,s=i(p=>p.sort((m,f)=>oSe[f.step]-oSe[m.step]||iSe[f.priority||"normal"]-iSe[m.priority||"normal"]),"sort"),o=i(p=>{let m=!1,f=i(A=>{let h=Ym(A.name,A.aliases);if(h.includes(p)){m=!0;for(let E of h)n.delete(E);return!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByName"),a=i(p=>{let m=!1,f=i(A=>{if(A.middleware===p){m=!0;for(let h of Ym(A.name,A.aliases))n.delete(h);return!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByReference"),c=i(p=>(t.forEach(m=>{p.add(m.middleware,{...m})}),e.forEach(m=>{p.addRelativeTo(m.middleware,{...m})}),p.identifyOnResolve?.(d.identifyOnResolve()),p),"cloneTo"),l=i(p=>{let m=[];return p.before.forEach(f=>{f.before.length===0&&f.after.length===0?m.push(f):m.push(...l(f))}),m.push(p),p.after.reverse().forEach(f=>{f.before.length===0&&f.after.length===0?m.push(f):m.push(...l(f))}),m},"expandRelativeMiddlewareList"),u=i((p=!1)=>{let m=[],f=[],A={};return t.forEach(E=>{let C={...E,before:[],after:[]};for(let w of Ym(C.name,C.aliases))A[w]=C;m.push(C)}),e.forEach(E=>{let C={...E,before:[],after:[]};for(let w of Ym(C.name,C.aliases))A[w]=C;f.push(C)}),f.forEach(E=>{if(E.toMiddleware){let C=A[E.toMiddleware];if(C===void 0){if(p)return;throw new Error(`${E.toMiddleware} is not found when adding ${Cd(E.name,E.aliases)} middleware ${E.relation} ${E.toMiddleware}`)}E.relation==="after"&&C.after.push(E),E.relation==="before"&&C.before.push(E)}}),s(m).map(l).reduce((E,C)=>(E.push(...C),E),[])},"getMiddlewareList"),d={add:i((p,m={})=>{let{name:f,override:A,aliases:h}=m,E={step:"initialize",priority:"normal",middleware:p,...m},C=Ym(f,h);if(C.length>0){if(C.some(w=>n.has(w))){if(!A)throw new Error(`Duplicate middleware name '${Cd(f,h)}'`);for(let w of C){let x=t.findIndex(N=>N.name===w||N.aliases?.some(P=>P===w));if(x===-1)continue;let b=t[x];if(b.step!==E.step||E.priority!==b.priority)throw new Error(`"${Cd(b.name,b.aliases)}" middleware with ${b.priority} priority in ${b.step} step cannot be overridden by "${Cd(f,h)}" middleware with ${E.priority} priority in ${E.step} step.`);t.splice(x,1)}}for(let w of C)n.add(w)}t.push(E)},"add"),addRelativeTo:i((p,m)=>{let{name:f,override:A,aliases:h}=m,E={middleware:p,...m},C=Ym(f,h);if(C.length>0){if(C.some(w=>n.has(w))){if(!A)throw new Error(`Duplicate middleware name '${Cd(f,h)}'`);for(let w of C){let x=e.findIndex(N=>N.name===w||N.aliases?.some(P=>P===w));if(x===-1)continue;let b=e[x];if(b.toMiddleware!==E.toMiddleware||b.relation!==E.relation)throw new Error(`"${Cd(b.name,b.aliases)}" middleware ${b.relation} "${b.toMiddleware}" middleware cannot be overridden by "${Cd(f,h)}" middleware ${E.relation} "${E.toMiddleware}" middleware.`);e.splice(x,1)}}for(let w of C)n.add(w)}e.push(E)},"addRelativeTo"),clone:i(()=>c(Id()),"clone"),use:i(p=>{p.applyToStack(d)},"use"),remove:i(p=>typeof p=="string"?o(p):a(p),"remove"),removeByTag:i(p=>{let m=!1,f=i(A=>{let{tags:h,name:E,aliases:C}=A;if(h&&h.includes(p)){let w=Ym(E,C);for(let x of w)n.delete(x);return m=!0,!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByTag"),concat:i(p=>{let m=c(Id());return m.use(p),m.identifyOnResolve(r||m.identifyOnResolve()||(p.identifyOnResolve?.()??!1)),m},"concat"),applyToStack:c,identify:i(()=>u(!0).map(p=>{let m=p.step??p.relation+" "+p.toMiddleware;return Cd(p.name,p.aliases)+" - "+m}),"identify"),identifyOnResolve(p){return typeof p=="boolean"&&(r=p),r},resolve:i((p,m)=>{for(let f of u().map(A=>A.middleware).reverse())p=f(p,m);return r&&console.log(d.identify()),p},"resolve")};return d},"constructStack"),oSe={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},iSe={high:3,normal:2,low:1}});var Rc=I(Ki=>{var OY;(function(t){t.HEADER="header",t.QUERY="query"})(OY||(OY={}));var MY;(function(t){t.HEADER="header",t.QUERY="query"})(MY||(MY={}));var FY;(function(t){t.HTTP="http",t.HTTPS="https"})(FY||(FY={}));var gw;(function(t){t.MD5="md5",t.CRC32="crc32",t.CRC32C="crc32c",t.SHA1="sha1",t.SHA256="sha256"})(gw||(gw={}));var txt=i(t=>{let e=[];return t.sha256!==void 0&&e.push({algorithmId:i( Line truncated
`+m}catch{!r.logger||r.logger?.constructor?.name==="NoOpLogger"?console.warn(m):r.logger?.warn?.(m)}typeof p.$responseBodyText<"u"&&p.$response&&(p.$response.body=p.$responseBodyText);try{if(nn.isInstance(s)){let{headers:f={},statusCode:A}=s,h=Object.entries(f);p.$metadata={httpStatusCode:A,requestId:YY(/^x-[\w-]+-request-?id$/,h),extendedRequestId:YY(/^x-[\w-]+-id-2$/,h),cfId:YY(/^x-[\w-]+-cf-id$/,h)}}}catch{}}throw p}},"schemaDeserializationMiddleware"),YY=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var PSe,_Se=g(()=>{St();TP();PSe=i(t=>(e,r)=>async n=>{let{operationSchema:s}=Rt(r),[,o,a,c,l,u]=s??[],d=r.endpointV2?async()=>xo(r.endpointV2):t.endpoint,p=await t.protocol.serializeRequest(Ig(o,a,c,l,u),n.input,{...t,...r,endpoint:d});return e({...n,request:p})},"schemaSerializationMiddleware")});function Nc(t){return{applyToStack:i(e=>{e.add(PSe(t),jY),e.add(TSe(t),JY),t.protocol.setSerdeContext(t)},"applyToStack")}}var JY,jY,QSe=g(()=>{vSe();_Se();JY={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},jY={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};i(Nc,"getSchemaSerdePlugin")});var dr,wd=g(()=>{dr=class{static{i(this,"Schema")}name;namespace;traits;static assign(e,r){return Object.assign(e,r)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}getName(){return this.namespace+"#"+this.name}}});var Cw,DSe,kSe=g(()=>{wd();Cw=class t extends dr{static{i(this,"ListSchema")}static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=t.symbol},DSe=i((t,e,r,n)=>dr.assign(new Cw,{name:e,namespace:t,traits:r,valueSchema:n}),"list")});var Iw,LSe,OSe=g(()=>{wd();Iw=class t extends dr{static{i(this,"MapSchema")}static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=t.symbol},LSe=i((t,e,r,n,s)=>dr.assign(new Iw,{name:e,namespace:t,traits:r,keySchema:n,valueSchema:s}),"map")});var ww,MSe,FSe=g(()=>{wd();ww=class t extends dr{static{i(this,"OperationSchema")}static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=t.symbol},MSe=i((t,e,r,n,s)=>dr.assign(new ww,{name:e,namespace:t,traits:r,input:n,output:s}),"op")});var Jm,USe,KY=g(()=>{wd();Jm=class t extends dr{static{i(this,"StructureSchema")}static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=t.symbol},USe=i((t,e,r,n,s)=>dr.assign(new Jm,{name:e,namespace:t,traits:r,memberNames:n,memberList:s}),"struct")});var Sw,qSe,GSe=g(()=>{wd();KY();Sw=class t extends Jm{static{i(this,"ErrorSchema")}static symbol=Symbol.for("@smithy/err");ctor;symbol=t.symbol},qSe=i((t,e,r,n,s,o)=>dr.assign(new Sw,{name:e,namespace:t,traits:r,memberNames:n,memberList:s,ctor:null}),"error")});function Zi(t){if(typeof t=="object")return t;if(t=t|0,xw[t])return xw[t];let e={},r=0;for(let n of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])(t>>r++&1)===1&&(e[n]=1);return xw[t]=e}var xw,XY=g(()=>{xw=[];i(Zi,"translateTraits")});function Bw(t,e){if(t instanceof X)return Object.assign(t,{memberName:e,_isMemberSchema:!0});let r=X;return new r(t,e)}var bw,Rw,Nw,X,ZY,e8,HSe=g(()=>{WY();XY();bw={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},Rw=[],Nw={},X=class t{static{i(this,"NormalizedSchema")}ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=t.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor(e,r){this.ref=e,this.memberName=r;let n=[],s=e,o=e;for(this._isMemberSchema=!1;ZY(s);)n.push(s[1]),s=s[0],o=di(s),this._isMemberSchema=!0;if(n.length>0){this.memberTraits={};for(let a=n.length-1;a>=0;--a){let c=n[a];Object.assign(this.memberTraits,Zi(c))}}else this.memberTraits=0;if(o instanceof t){let a=this.memberTraits;Object.assign(this,o),this.memberTraits=Object.assign({},a,o.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=r??o.memberName;return}if(this.schema=di(o),e8(this.schema)?(this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3]):(this.name=this.memberName??String(o),this.traits=0),this._isMemberSchema&&!r)throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}static of(e){let r=typeof e=="function"||typeof e=="object"&&e!==null;if(typeof e=="number"){if(Rw[e])return Rw[e]}else if(typeof e=="string"){if(Nw[e])return Nw[e]}else if(r&&e[bw.ns])return e[bw.ns];let n=di(e);if(n instanceof t)return n;if(ZY(n)){let[o,a]=n;if(o instanceof t)return Object.assign(o.getMergedTraits(),Zi(a)),o;throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(e,null,2)}.`)}let s=new t(n);return r?e[bw.ns]=s:typeof n=="string"?Nw[n]=s:typeof n=="number"?Rw[n]=s:s}g Line truncated
`).slice(0,5).filter(e=>!e.includes("stackTraceWarning")).join(`
`),"stackTraceWarning"),Ng={warn:console.warn}});function ra(t){let e=t.getUTCFullYear(),r=t.getUTCMonth(),n=t.getUTCDay(),s=t.getUTCDate(),o=t.getUTCHours(),a=t.getUTCMinutes(),c=t.getUTCSeconds(),l=s<10?`0${s}`:`${s}`,u=o<10?`0${o}`:`${o}`,d=a<10?`0${a}`:`${a}`,p=c<10?`0${c}`:`${c}`;return`${Cxt[n]}, ${l} ${y8[r]} ${e} ${u}:${d}:${p} GMT`}var Cxt,y8,Ixt,Hxe,wxt,VP,Sxt,xxt,bxt,Pg,WP,Pw,Bxt,Rxt,Nxt,g8,Txt,vxt,Pxt,Dc,_xt,Qxt,vg,$xe=g(()=>{h8();Cxt=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],y8=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];i(ra,"dateToUtcString");Ixt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),Hxe=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=Ixt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,a,c,l,u]=e,d=bd(vg(n)),p=Dc(s,"month",1,12),m=Dc(o,"day",1,31);return Pw(d,p,m,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})},"parseRfc3339DateTime"),wxt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}:\d{2})|[zZ])$/),VP=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=wxt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,a,c,l,u,d]=e,p=bd(vg(n)),m=Dc(s,"month",1,12),f=Dc(o,"day",1,31),A=Pw(p,m,f,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u});return d.toUpperCase()!="Z"&&A.setTime(A.getTime()-Qxt(d)),A},"parseRfc3339DateTimeWithOffset"),Sxt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),xxt=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),bxt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),Pg=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let e=Sxt.exec(t);if(e){let[r,n,s,o,a,c,l,u]=e;return Pw(bd(vg(o)),g8(s),Dc(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})}if(e=xxt.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return Nxt(Pw(Bxt(o),g8(s),Dc(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u}))}if(e=bxt.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return Pw(bd(vg(u)),g8(n),Dc(s.trimLeft(),"day",1,31),{hours:o,minutes:a,seconds:c,fractionalMilliseconds:l})}throw new TypeError("Invalid RFC-7231 date-time value")},"parseRfc7231DateTime"),WP=i(t=>{if(t==null)return;let e;if(typeof t=="number")e=t;else if(typeof t=="string")e=vw(t);else if(typeof t=="object"&&t.tag===1)e=t.value;else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(e)||e===1/0||e===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(e*1e3))},"parseEpochTimestamp"),Pw=i((t,e,r,n)=>{let s=e-1;return vxt(t,s,r),new Date(Date.UTC(t,s,r,Dc(n.hours,"hour",0,23),Dc(n.minutes,"minute",0,59),Dc(n.seconds,"seconds",0,60),_xt(n.fractionalMilliseconds)))},"buildDate"),Bxt=i(t=>{let e=new Date().getUTCFullYear(),r=Math.floor(e/100)*100+bd(vg(t));return r<e?r+100:r},"parseTwoDigitYear"),Rxt=50*365*24*60*60*1e3,Nxt=i(t=>t.getTime()-new Date().getTime()>Rxt?new Date(Date.UTC(t.getUTCFullYear()-100,t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds())):t,"adjustRfc850Year"),g8=i(t=>{let e=y8.indexOf(t);if(e<0)throw new TypeError(`Invalid month: ${t}`);return e+1},"parseMonthByShortName"),Txt=[31,28,31,30,31,30,31,31,30,31,30,31],vxt=i((t,e,r)=>{let n=Txt[e];if(e===1&&Pxt(t)&&(n=29),r>n)throw new TypeError(`Invalid day for ${y8[e]} in ${t}: ${r}`)},"validateDayOfMonth"),Pxt=i(t=>t%4===0&&(t%100!==0||t%400===0),"isLeapYear"),Dc=i((t,e,r,n)=>{let s=zP(vg(t));if(s<r||s>n)throw new TypeError(`${e} must be between ${r} and ${n}, inclusive`);return s},"parseDateValue"),_xt=i(t=>t==null?0:HP("0."+t)*1e3,"parseMilliseconds"),Qxt=i(t=>{let e=t[0],r=1;if(e=="+")r=1;else if(e=="-")r=-1;else throw new TypeError(`Offset direction, ${e}, must be "+" or "-"`);let n=Number(t.substring(1,3)),s=Number(t.substring(4,6));return r*(n*60+s)*60*1e3},"parseOffsetToMilliseconds"),vg=i(t=>{let e=0;for(;e<t.length-1&&t.charAt(e)==="0";)e++;return e===0?t:t.slice(e)},"stripLeadingZeroes")});var Un,zxe=g(()=>{Un=i(function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})},"LazyJsonString");Un.from=t=>t&&typeof t=="object"&&(t instanceof Un||"deserializeJSON"in t)?t:typeof t=="string"||Object.getPrototypeOf(t)===String.p Line truncated
`+c}catch{!n.logger||n.logger?.constructor?.name==="NoOpLogger"?console.warn(c):n.logger?.warn?.(c)}typeof a.$responseBodyText<"u"&&a.$response&&(a.$response.body=a.$responseBodyText);try{if(nn.isInstance(o)){let{headers:l={}}=o,u=Object.entries(l);a.$metadata={httpStatusCode:o.statusCode,requestId:b8(/^x-[\w-]+-request-?id$/,u),extendedRequestId:b8(/^x-[\w-]+-id-2$/,u),cfId:b8(/^x-[\w-]+-cf-id$/,u)}}}catch{}}throw a}},"deserializerMiddleware"),b8=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var Bo,Qw=g(()=>{Bo=class t extends Error{static{i(this,"ProviderError")}name="ProviderError";tryNextLink;constructor(e,r=!0){let n,s=!0;typeof r=="boolean"?(n=void 0,s=r):r!=null&&typeof r=="object"&&(n=r.logger,s=r.tryNextLink??!0),super(e),this.tryNextLink=s,Object.setPrototypeOf(this,t.prototype),n?.debug?.(`@smithy/property-provider ${s?"->":"(!)"} ${e}`)}static from(e,r=!0){return Object.assign(new this(e.message,r),e)}}});var Bd,t_=g(()=>{Qw();Bd=class t extends Bo{static{i(this,"CredentialsProviderError")}name="CredentialsProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var r_,rbe=g(()=>{Qw();r_=class t extends Bo{static{i(this,"TokenProviderError")}name="TokenProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var n_,R8=g(()=>{Qw();n_=i((...t)=>async()=>{if(t.length===0)throw new Bo("No providers in chain");let e;for(let r of t)try{return await r()}catch(n){if(e=n,n?.tryNextLink)continue;throw n}throw e},"chain")});var s_,N8=g(()=>{s_=i(t=>()=>Promise.resolve(t),"fromValue")});var Dg,o_=g(()=>{Dg=i((t,e,r)=>{let n,s,o,a=!1,c=i(async()=>{s||(s=t());try{n=await s,o=!0,a=!1}finally{s=void 0}return n},"coalesceProvider");return e===void 0?async l=>((!o||l?.forceRefresh)&&(n=await c()),n):async l=>((!o||l?.forceRefresh)&&(n=await c()),a?n:r&&!r(n)?(a=!0,n):(e(n)&&await c(),n))},"memoize")});var sn,i_=g(()=>{sn=i((t,e,r)=>{if(e in t){if(t[e]==="true")return!0;if(t[e]==="false")return!1;throw new Error(`Cannot load ${r} "${e}". Expected "true" or "false", got ${t[e]}.`)}},"booleanSelector")});var nbe,sbe=g(()=>{nbe=i((t,e,r)=>{if(!(e in t))return;let n=parseInt(t[e],10);if(Number.isNaN(n))throw new TypeError(`Cannot load ${r} '${e}'. Expected number, got '${t[e]}'.`);return n},"numberSelector")});var kr,a_=g(()=>{(function(t){t.ENV="env",t.CONFIG="shared config entry"})(kr||(kr={}))});var obe,ibe,T8,Fxt,Oc,kg=g(()=>{obe=require("node:os"),ibe=require("node:path"),T8={},Fxt=i(()=>process&&process.geteuid?`${process.geteuid()}`:"DEFAULT","getHomeDirCacheKey"),Oc=i(()=>{let{HOME:t,USERPROFILE:e,HOMEPATH:r,HOMEDRIVE:n=`C:${ibe.sep}`}=process.env;if(t)return t;if(e)return e;if(r)return`${n}${r}`;let s=Fxt();return T8[s]||(T8[s]=(0,obe.homedir)()),T8[s]},"getHomeDir")});var v8,P8,c_,_8=g(()=>{v8="AWS_PROFILE",P8="default",c_=i(t=>t.profile||process.env[v8]||P8,"getProfileName")});var abe,cbe,l_,Q8=g(()=>{abe=require("node:crypto"),cbe=require("node:path");kg();l_=i(t=>{let r=(0,abe.createHash)("sha1").update(t).digest("hex");return(0,cbe.join)(Oc(),".aws","sso","cache",`${r}.json`)},"getSSOTokenFilepath")});var lbe,Dw,ube,D8=g(()=>{lbe=require("node:fs/promises");Q8();Dw={},ube=i(async t=>{if(Dw[t])return Dw[t];let e=l_(t),r=await(0,lbe.readFile)(e,"utf8");return JSON.parse(r)},"getSSOTokenFromFile")});var Mc,dbe=g(()=>{Mc="."});var k8,pbe,mbe=g(()=>{k8=R(Rc()),pbe=i(t=>Object.entries(t).filter(([e])=>{let r=e.indexOf(".");return r===-1?!1:Object.values(k8.IniSectionType).includes(e.substring(0,r))}).reduce((e,[r,n])=>{let s=r.indexOf("."),o=r.substring(0,s)===k8.IniSectionType.PROFILE?r.substring(s+1):r;return e[o]=n,e},{...t.default&&{default:t.default}}),"getConfigData")});var fbe,Uxt,u_,L8=g(()=>{fbe=require("node:path");kg();Uxt="AWS_CONFIG_FILE",u_=i(()=>process.env[Uxt]||(0,fbe.join)(Oc(),".aws","config"),"getConfigFilepath")});var Abe,qxt,hbe,gbe=g(()=>{Abe=require("node:path");kg();qxt="AWS_SHARED_CREDENTIALS_FILE",hbe=i(()=>process.env[qxt]||(0,Abe.join)(Oc(),".aws","credentials"),"getCredentialsFilepath")});var ybe,Gxt,Hxt,kw,O8=g(()=>{ybe=R(Rc()),Gxt=/^([\w-]+)\s(["'])?([\w-@+.%:/]+)\2$/,Hxt=["__proto__","profile __proto__"],kw=i(t=>{let e={},r,n;for(let s of t.split(/\r?\n/)){let o=s.split(/(^|\s)[;#]/)[0].trim();if(o[0]==="["&&o[o.length-1]==="]"){r=void 0,n=void 0;let c=o.substring(1,o.length-1),l=Gxt.exec(c);if(l){let[,u,,d]=l;Object.values(ybe.IniSectionType).includes(u)&&(r=[u,d].join("."))}else r=c;if(Hxt.includes(c))throw new Error(`Found invalid profile name "${c}"`)}else if(r){let c=o.indexOf("=");if(![0,-1].includes(c)){let[l,u]=[o.substring(0,c).trim(),o.substring(c+1).trim()];if(u==="")n=l;else{n&&s.trimStart()===s&&(n=void 0),e[r]=e[r]||{};let d=n?[n,l].join("."):l;e[r][d]=u}}}}return e},"parseIni")});var Ebe,M8,Lw,Zm,Ow=g(()=>{Ebe=require("node:fs/promises"),M8={},Lw={},Zm=i((t,e)=>Lw[t]!==void 0?Lw[t]:((!M8[t]||e?.ignoreCache)&&(M8[t]=(0,Ebe.readFile)(t,"utf8")),M8[t]),"readFile")});var F Line truncated
`),c){let f=r(await l);d.enqueue(`${o}:${f}\r
`),d.enqueue(`\r
`)}d.close()}else d.enqueue(`${(n(p)||0).toString(16)}\r
${p}\r
`)}})},"getAwsChunkedEncodingStream")});function VBe(t,e){let r=t,n=t;if(Wr(n))return HBe(n,e);let{base64Encoder:s,bodyLengthChecker:o,checksumAlgorithmFn:a,checksumLocationName:c,streamHasher:l}=e,u=s!==void 0&&a!==void 0&&c!==void 0&&l!==void 0,d=u?l(a,r):void 0,p=new zBe.Readable({read:i(()=>{},"read")});return r.on("data",m=>{let f=o(m)||0;f!==0&&(p.push(`${f.toString(16)}\r
`),p.push(m),p.push(`\r
`))}),r.on("end",async()=>{if(p.push(`0\r
`),u){let m=s(await d);p.push(`${c}:${m}\r
`),p.push(`\r
`)}p.push(null)}),p}var zBe,WBe=g(()=>{zBe=require("node:stream");$Be();na();i(VBe,"getAwsChunkedEncodingStream")});async function YBe(t,e){let r=0,n=[],s=t.getReader(),o=!1;for(;!o;){let{done:l,value:u}=await s.read();if(u&&(n.push(u),r+=u?.byteLength??0),r>=e)break;o=l}s.releaseLock();let a=new Uint8Array(Math.min(e,r)),c=0;for(let l of n){if(l.byteLength>a.byteLength-c){a.set(l.subarray(0,a.byteLength-c),c);break}else a.set(l,c);c+=l.length}return a}var JBe=g(()=>{i(YBe,"headStream")});var jBe,KBe,PJ,XBe=g(()=>{jBe=require("node:stream");_w();JBe();na();KBe=i((t,e)=>Wr(t)?YBe(t,e):new Promise((r,n)=>{let s=new PJ;s.limit=e,t.pipe(s),t.on("error",o=>{s.end(),n(o)}),s.on("error",n),s.on("finish",function(){let o=Lc(this.buffers);r(o)})}),"headStream"),PJ=class extends jBe.Writable{static{i(this,"Collector")}buffers=[];limit=1/0;bytesBuffered=0;_write(e,r,n){if(this.buffers.push(e),this.bytesBuffered+=e.byteLength??0,this.bytesBuffered>=this.limit){let s=this.bytesBuffered-this.limit,o=this.buffers[this.buffers.length-1];this.buffers[this.buffers.length-1]=o.subarray(0,o.byteLength-s),this.emit("finish")}n()}}});var ZBe,eRe=g(()=>{ZBe=i(t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return new TextDecoder("utf-8").decode(t)},"toUtf8")});async function _J(t){return t.arrayBuffer().then(e=>new Uint8Array(e))}async function QJ(t){let e=[],r=t.getReader(),n=0;for(;;){let{done:s,value:o}=await r.read();if(o&&(e.push(o),n+=o.length),s)break}return Lc(e,n)}var tRe,DJ=g(()=>{_w();na();tRe=i(async t=>Rd(t)?_J(t):QJ(t),"streamCollector");i(_J,"collectBlob");i(QJ,"collectReadableStream")});var rRe,sRe,nRe,oRe=g(()=>{RJ();S8();eRe();DJ();na();rRe="The stream has already been transformed.",sRe=i(t=>{if(!nRe(t)&&!Wr(t)){let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${s}`)}let e=!1,r=i(async()=>{if(e)throw new Error(rRe);return e=!0,await tRe(t)},"transformToByteArray"),n=i(s=>{if(typeof s.stream!="function")throw new Error(`Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.
If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body`);return s.stream()},"blobToWebStream");return Object.assign(t,{transformToByteArray:r,transformToString:i(async s=>{let o=await r();if(s==="base64")return L_(o);if(s==="hex")return mi(o);if(s===void 0||s==="utf8"||s==="utf-8")return ZBe(o);if(typeof TextDecoder=="function")return new TextDecoder(s).decode(o);throw new Error("TextDecoder is not available, please make sure polyfill is provided.")},"transformToString"),transformToWebStream:i(()=>{if(e)throw new Error(rRe);if(e=!0,nRe(t))return n(t);if(Wr(t))return t;throw new Error(`Cannot transform payload to web stream, got ${t}`)},"transformToWebStream")})},"sdkStreamMixin"),nRe=i(t=>typeof Blob=="function"&&t instanceof Blob,"isBlobInstance")});var iRe,M_,kJ,LJ=g(()=>{iRe=require("node:stream");_w();DJ();na();M_=i(t=>Rd(t)?_J(t):Wr(t)?QJ(t):new Promise((e,r)=>{let n=new kJ,s=t;s.pipe(n),s.on("error",o=>{n.end(),r(o)}),n.on("error",r),n.on("finish",function(){let o=Lc(this.bufferedBytes);e(o)})}),"streamCollector"),kJ=class extends iRe.Writable{static{i(this,"Collector")}bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}}});var F_,aRe,U_,cRe=g(()=>{F_=require("node:stream");xd();oRe();LJ();aRe="The stream has already been transformed.",U_=i(t=>{if(!(t instanceof F_.Readable))try{return sRe(t)}catch{let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${s}`)}let e=!1,r=i(async()=>{if(e)throw new Error(aRe);return e=!0,await M_(t)},"transformToByteArray");return Object.assign(t,{transformToByteArray:r,transformToString:i(async n=>{let s=await r();return n===void 0||Buffer.isEncoding(n)?ta(s.buffer,s.byteOffset,s.byteLength).toString(n):new TextDecoder(n).decode(s)},"transformToString"),transformToWebStream:i(()=>{if(e)throw new Error(aRe);if(t.readableFlowing!==null)throw new Error("The stream has been consumed by other callbacks.");if(typeof F_.Readable.toWeb!="function")throw new Error("Readable.toWeb() is not supported. Please ensure a polyfill is available.");return e=!0,F_.Readable.toWeb(t)},"transformToWebStream")})},"sdkStreamMixin")});async function lRe(t){return typeof t.stream=="function"&&(t=t.stream()),t.tee()}var uRe=g(()=>{i(lRe,"splitStream")});async function dRe(t){if(Wr(t)||Rd(t))return lRe(t);let e=new OJ.PassThrough,r=new OJ.PassThrough;return t.pipe(e),t.pipe(r),[e,r]}var OJ,pRe=g(()=>{OJ=require("node:stream");uRe();na();i(dRe,"splitStream")});var Hg={};Or(Hg,{ChecksumStream:()=>qg,Hash:()=>Q_,LazyJsonString:()=>Un,NumericValue:()=>xt,Uint8ArrayBlobAdapter:()=>rf,_parseEpochTimestamp:()=>Xm,_parseRfc3339DateTimeWithOffset:()=>JP,_parseRfc7231DateTime:()=>jP,calculateBodyLength:()=>kc,concatBytes:()=>Lc,copyDocumentWithTransform:()=>Txe,createBufferedReadable:()=>qBe,createChecksumStream:()=>LBe,dateToUtcString:()=>ra,deserializerMiddleware:()=>e_,deserializerMiddlewareOption:()=>SJ,expectBoolean:()=>_xe,expectByte:()=>UP,expectFloat32:()=>Tw,expectInt:()=>Qxe,expectInt32:()=>MP,expectLong:()=>Rg,expectNonNull:()=>Dxe,expectNumber:()=>Bg,expectObject:()=>f8,expectShort:()=>FP,expectString:()=>kxe,expectUnion:()=>GP,fromArrayBuffer:()=>ta,fromBase64:()=>br,fromHex:()=>ZP,fromString:()=>Sd,fromUtf8:()=>Vr,generateIdempotencyToken:()=>sa,getAwsChunkedEncodingStream:()=>VBe,getSerdePlugin:()=>wBe,handleFloat:()=>Oxe,headStream:()=>KBe,isArrayBuffer:()=>kP,isBlob:()=>Rd,isReadableStream:()=>Wr,limitedParseDouble:()=>$P,limitedParseFloat:()=>Mxe,limitedParseFloat32:()=>Fxe,logger:()=>Ng,nv:()=>XP,parseBoolean:()=>Pxe,parseEpochTimestamp:()=>WP,parseRfc3339DateTime:()=>Hxe,parseRfc3339DateTimeWithOffset:()=>VP,parseRfc7231DateTime:()=>Pg,quoteHeader:()=>YP,sdkStreamMixin:()=>U_,serializerMiddleware:()=>__,serializerMiddlewareOption:()=>xJ,splitEvery:()=>KP,splitHeader:()=>_g,splitStream:()=>dRe,streamCollector:()=>M_,strictParseByte:()=>zP,strictParseDouble:()=>vw,strictParseFloat:()=>Lxe,strictParseFloat32:()=>HP,strictParseInt:()=>qxe,strictParseInt32:()=>Gxe,strictParseLong:()=>A8,strictParseShort:()=>bd,toBase64:()=>Kt,toHex:()=>mi,toUint8Array:()=>ms,toUtf8:()=>Br,v4:()=>Gg});var mRe,rf,lbt,Gg,sa,_e=g(()=>{mRe=require("node:crypto");Sxe();p8();bxe();LP();Bxe();Nxe();vxe();$xe();zxe();h8();Vxe();Jxe();jxe();Kxe();Zxe();S8();tbe();x8();_w();xd();d8();B8();SBe();wJ();bBe();bJ();OBe();GBe();WBe();XBe();cRe();pRe();na();LJ();rf=class extends xxe(Br,Vr,Kt,br){static{i(this,"Uint8ArrayBlobAdapter")}},lbt=mRe.getRandomValues,Gg=Rxe(lbt),sa=Gg});var In,q_=g(()=>{_e();In=i(async(t=new Uint8Array,e)=>{if(t instanceof Uint8Array)return rf.mutate(t);if(!t)return rf.mutate(new Uint8Array);let r=e.streamCollector(t);return rf.mutate(await r)},"collectBody")});function oa(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}var G_=g(()=>{i(oa,"extendedEncodeURIComponent" Line truncated
`));return r(s)},"httpAuthSchemeMiddleware")});var wQ,la,MNe=g(()=>{IQ();wQ={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"endpointV2Middleware"},la=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(cf(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),wQ)},"applyToStack")}),"getHttpAuthSchemeEndpointRuleSetPlugin")});var SQ,U5,FNe=g(()=>{IQ();SQ={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"serializerMiddleware"},U5=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(cf(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),SQ)},"applyToStack")}),"getHttpAuthSchemePlugin")});var UNe=g(()=>{IQ();MNe();FNe()});var Wbt,Ybt,eS,q5=g(()=>{xe();St();Wbt=i(t=>e=>{throw e},"defaultErrorHandler"),Ybt=i((t,e)=>{},"defaultSuccessHandler"),eS=i(t=>(e,r)=>async n=>{if(!$e.isInstance(n.request))return e(n);let o=Rt(r).selectedHttpAuthScheme;if(!o)throw new Error("No HttpAuthScheme was selected: unable to sign request");let{httpAuthOption:{signingProperties:a={}},identity:c,signer:l}=o,u=await e({...n,request:await l.sign(n.request,c,a)}).catch((l.errorHandler||Wbt)(a));return(l.successHandler||Ybt)(u.response,a),u},"httpSigningMiddleware")});var xQ,ua,qNe=g(()=>{q5();xQ={step:"finalizeRequest",tags:["HTTP_SIGNING"],name:"httpSigningMiddleware",aliases:["apiKeyMiddleware","tokenMiddleware","awsAuthMiddleware"],override:!0,relation:"after",toMiddleware:"retryMiddleware"},ua=i(t=>({applyToStack:i(e=>{e.addRelativeTo(eS(t),xQ)},"applyToStack")}),"getHttpSigningPlugin")});var GNe=g(()=>{q5();qNe()});var yi,HNe=g(()=>{yi=i(t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e},"normalizeProvider")});function $Ne(t,e,r,n,s){return i(async function*(a,c,...l){let u=c,d=a.startingToken??u[r],p=!0,m;for(;p;){if(u[r]=d,s&&(u[s]=u[s]??a.pageSize),a.client instanceof t)m=await Jbt(e,a.client,c,a.withCommand,...l);else throw new Error(`Invalid client, expected instance of ${t.name}`);yield m;let f=d;d=jbt(m,n),p=!!(d&&(!a.stopOnSameToken||d!==f))}return void 0},"paginateOperation")}var Jbt,jbt,zNe=g(()=>{Jbt=i(async(t,e,r,n=o=>o,...s)=>{let o=new t(r);return o=n(o)??o,await e.send(o,...s)},"makePagedClientRequest");i($Ne,"createPaginator");jbt=i((t,e)=>{let r=t,n=e.split(".");for(let s of n){if(!r||typeof r!="object")return;r=r[s]}return r},"get")});function VNe(t,e,r){t.__smithy_context?t.__smithy_context.features||(t.__smithy_context.features={}):t.__smithy_context={features:{}},t.__smithy_context.features[e]=r}var WNe=g(()=>{i(VNe,"setFeature")});var _o,YNe=g(()=>{_o=class{static{i(this,"DefaultIdentityProviderConfig")}authSchemes=new Map;constructor(e){for(let r in e){let n=e[r];n!==void 0&&this.authSchemes.set(r,n)}}getIdentityProvider(e){return this.authSchemes.get(e)}}});var G5,ay,JNe=g(()=>{xe();G5=R(Rc()),ay=class{static{i(this,"HttpApiKeyAuthSigner")}async sign(e,r,n){if(!n)throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");if(!n.name)throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");if(!n.in)throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");if(!r.apiKey)throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");let s=$e.clone(e);if(n.in===G5.HttpApiKeyAuthLocation.QUERY)s.query[n.name]=r.apiKey;else if(n.in===G5.HttpApiKeyAuthLocation.HEADER)s.headers[n.name]=n.scheme?`${n.scheme} ${r.apiKey}`:r.apiKey;else throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `"+n.in+"`");return s}}});var cy,jNe=g(()=>{xe();cy=class{static{i(this,"HttpBearerAuthSigner")}async sign(e,r,n){let s=$e.clone(e);if(!r.token)throw new Error("request could not be signed with `token` since the `token` is not defined");return s.headers.Authorization=`Bearer ${r.token}`,s}}});var Gn,KNe=g(()=>{Gn=class{static{i(this,"NoAuthSigner")}async sign(e,r,n){return e}}});var XNe=g(()=>{JNe();jNe();KNe()});var bQ,BQ,tS,ly,rS,ZNe=g(()=>{bQ=i(t=>i(function(r){return ly(r)&&r.expiration.getTime()-Date.now()<t},"isIdentityExpired"),"createIsIdentityExpiredFunction"),BQ=3e5,tS=bQ(BQ),ly=i(t=>t.expiration!==void 0,"doesIdentityRequireRefresh"),rS=i((t,e,r)=>{if(t===void 0)return;let n=typeof t!="function"?async()=>Promise.resolve(t):t,s,o,a,c=!1,l=i(async u=>{o||(o=n(u));try{s=await o,a=!0,c=!1}finally{o=void 0}return s},"coalesceProvider");return e===void 0?async u=>((!a||u?.forceRefresh)&&(s=await l(u)),s):async u=>((!a||u?.forceRefresh)&&(s=await l(u)),c?s:r(s)?(e(s)&&await l(u),s):(c=!0,s))},"memoizeIdentityProvider")});var eTe=g(()=>{YNe();XNe();ZNe()});var H5={};Or(H5,{DefaultIdenti Line truncated
${this.getCanonicalPath(e)}
${uve(e)}
${s.map(o=>`${o}:${r[o]}`).join(`
`)}
${s.join(";")}
${n}`}async createStringToSign(e,r,n,s){let o=new this.sha256;o.update(dS(n));let a=await o.digest();return`${s}
${e}
${r}
${lf(a)}`}getCanonicalPath({path:e}){if(this.uriEscapePath){let r=[];for(let o of e.split("/"))o?.length!==0&&o!=="."&&(o===".."?r.pop():r.push(o));let n=`${e?.startsWith("/")?"/":""}${r.join("/")}${r.length>0&&e?.endsWith("/")?"/":""}`;return UQ(n).replace(/%2F/g,"/")}return e}validateResolvedCredentials(e){if(typeof e!="object"||typeof e.accessKeyId!="string"||typeof e.secretAccessKey!="string")throw new Error("Resolved credential object is not valid")}formatDate(e){let r=a0t(e).replace(/[-:]/g,"");return{longDate:r,shortDate:r.slice(0,8)}}getCanonicalHeaderList(e){return Object.keys(e).sort().join(";")}},dy={},GQ=[],HQ=i((t,e,r)=>`${t}/${e}/${r}/${wj}`,"createScope"),dve=i(async(t,e,r,n,s)=>{let o=await WTe(t,e.secretAccessKey,e.accessKeyId),a=`${r}:${n}:${s}:${lf(o)}:${e.sessionToken}`;if(a in dy)return dy[a];for(GQ.push(a);GQ.length>cve;)delete dy[GQ.shift()];let c=`AWS4${e.secretAccessKey}`;for(let l of[r,n,s,wj])c=await WTe(t,c,l);return dy[a]=c},"getSigningKey"),l0t=i(()=>{GQ.length=0,Object.keys(dy).forEach(t=>{delete dy[t]})},"clearCredentialCache"),WTe=i((t,e,r)=>{let n=new t(e);return n.update(dS(r)),n.digest()},"hmac"),fj=i(({headers:t},e,r)=>{let n={};for(let s of Object.keys(t).sort()){if(t[s]==null)continue;let o=s.toLowerCase();(o in nve||e?.has(o)||sve.test(o)||ove.test(o))&&(!r||r&&!r.has(o))||(n[o]=t[s].trim().replace(/\s+/g," "))}return n},"getCanonicalHeaders"),$Q=i(async({headers:t,body:e},r)=>{for(let n of Object.keys(t))if(n.toLowerCase()===zQ)return t[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||t0t(e)){let n=new r;return n.update(dS(e)),lf(await n.digest())}return ave},"getPayloadHash"),pve=i((t,e)=>{t=t.toLowerCase();for(let r of Object.keys(e))if(t===r.toLowerCase())return!0;return!1},"hasHeader"),mve=i((t,e={})=>{let{headers:r,query:n={}}=YTe.clone(t);for(let s of Object.keys(r)){let o=s.toLowerCase();(o.slice(0,6)==="x-amz-"&&!e.unhoistableHeaders?.has(o)||e.hoistableHeaders?.has(o))&&(n[s]=r[s],delete r[s])}return{...t,headers:r,query:n}},"moveHeadersToQuery"),Aj=i(t=>{t=YTe.clone(t);for(let e of Object.keys(t.headers))eve.indexOf(e.toLowerCase())>-1&&delete t.headers[e];return t},"prepareRequest"),hj=class extends VQ{static{i(this,"SignatureV4")}headerFormatter=new pj;constructor({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:a=!0}){super({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:a})}async presign(e,r={}){let{signingDate:n=new Date,expiresIn:s=3600,unsignableHeaders:o,unhoistableHeaders:a,signableHeaders:c,hoistableHeaders:l,signingRegion:u,signingService:d}=r,p=await this.credentialProvider();this.validateResolvedCredentials(p);let m=u??await this.regionProvider(),{longDate:f,shortDate:A}=this.formatDate(n);if(s>lve)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");let h=HQ(A,m,d??this.service),E=mve(Aj(e),{unhoistableHeaders:a,hoistableHeaders:l});p.sessionToken&&(E.query[Ej]=p.sessionToken),E.query[JTe]=qQ,E.query[jTe]=`${p.accessKeyId}/${h}`,E.query[gj]=f,E.query[XTe]=s.toString(10);let C=fj(E,o,c);return E.query[KTe]=this.getCanonicalHeaderList(C),E.query[yj]=await this.getSignature(f,h,this.getSigningKey(p,m,A,d),this.createCanonicalRequest(E,C,await $Q(e,this.sha256))),E}async sign(e,r){return typeof e=="string"?this.signString(e,r):e.headers&&e.payload?this.signEvent(e,r):e.message?this.signMessage(e,r):this.signRequest(e,r)}async signEvent({headers:e,payload:r},{signingDate:n=new Date,priorSignature:s,signingRegion:o,signingService:a,eventStreamCredentials:c}){let l=o??await this.regionProvider(),{shortDate:u,longDate:d}=this.formatDate(n),p=HQ(u,l,a??this.service),m=await $Q({headers:{},body:r},this.sha256),f=new this.sha256;f.update(e);let A=lf(await f.digest()),h=[ive,d,p,s,A,m].join(`
`);return this.signString(h,{signingDate:n,signingRegion:l,signingService:a,eventStreamCredentials:c})}async signMessage(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}){return this.signEvent({headers:this.headerFormatter.format(e.message.headers),payload:e.message.body},{signingDate:r,signingRegion:n,signingService:s,priorSignature:e.priorSignature,eventStreamCredentials:o}).then(c=>({message:e.message,signature:c}))}async signString(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}={}){let a=o??await this.credentialProvider();this.validateResolvedCredentials(a);let c=n??await this.regionProvider(),{shortDate:l}=this.formatDate(r),u=new this.sha256(await this.getSigningKey(a,c,l,s));return u.update(dS(e)),lf(await u.digest())}async signRequest(e,{signingDate:r=new Date,signableHeaders:n,unsignableHeaders:s,signingRegion:o,signingService:a}={}){let c=await this.credentialProvider();this.validateResolvedCredentials(c);let l=o??await this.regionProvider(),u=Aj(e),{longDate:d,shortDate:p}=this.formatDate(r),m=HQ(p,l,a??this.service);u.headers[Ij]=d,c.sessionToken&&(u.headers[rve]=c.sessionToken);let f=await $Q(u,this.sha256);!pve(zQ,u.headers)&&this.applyChecksum&&(u.headers[zQ]=f);let A=fj(u,s,n),h=await this.getSignature(d,m,this.getSigningKey(c,l,p,a),this.createCanonicalRequest(u,A,f));return u.headers[Cj]=`${qQ} Credential=${c.accessKeyId}/${m}, SignedHeaders=${this.getCanonicalHeaderList(A)}, Signature=${h}`,u}async getSignature(e,r,n,s){let o=await this.createStringToSign(e,r,s,qQ),a=new this.sha256(await n);return a.update(dS(o)),lf(await a.digest())}getSigningKey(e,r,n,s){return dve(this.sha256,e,n,r,s||this.service)}},u0t={SignatureV4a:null};Ge.ALGORITHM_IDENTIFIER=qQ;Ge.ALGORITHM_IDENTIFIER_V4A=i0t;Ge.ALGORITHM_QUERY_PARAM=JTe;Ge.ALWAYS_UNSIGNABLE_HEADERS=nve;Ge.AMZ_DATE_HEADER=Ij;Ge.AMZ_DATE_QUERY_PARAM=gj;Ge.AUTH_HEADER=Cj;Ge.CREDENTIAL_QUERY_PARAM=jTe;Ge.DATE_HEADER=ZTe;Ge.EVENT_ALGORITHM_IDENTIFIER=ive;Ge.EXPIRES_QUERY_PARAM=XTe;Ge.GENERATED_HEADERS=eve;Ge.HOST_HEADER=s0t;Ge.KEY_TYPE_IDENTIFIER=wj;Ge.MAX_CACHE_SIZE=cve;Ge.MAX_PRESIGNED_TTL=lve;Ge.PROXY_HEADER_PATTERN=sve;Ge.REGION_SET_PARAM=n0t;Ge.SEC_HEADER_PATTERN=ove;Ge.SHA256_HEADER=zQ;Ge.SIGNATURE_HEADER=tve;Ge.SIGNATURE_QUERY_PARAM=yj;Ge.SIGNED_HEADERS_QUERY_PARAM=KTe;Ge.SignatureV4=hj;Ge.SignatureV4Base=VQ;Ge.TOKEN_HEADER=rve;Ge.TOKEN_QUERY_PARAM=Ej;Ge.UNSIGNABLE_PATTERNS=o0t;Ge.UNSIGNED_PAYLOAD=ave;Ge.clearCredentialCache=l0t;Ge.createScope=HQ;Ge.getCanonicalHeaders=fj;Ge.getCanonicalQuery=uve;Ge.getPayloadHash=$Q;Ge.getSigningKey=dve;Ge.hasHeader=pve;Ge.moveHeadersToQuery=mve;Ge.prepareRequest=Aj;Ge.signatureV4aContainer=u0t});function d0t(t,{credentials:e,credentialDefaultProvider:r}){let n;return e?e?.memoized?n=e:n=rS(e,tS,ly):r?n=yi(r(Object.assign({},t,{parentClientConfig:t}))):n=i(async()=>{throw new Error("@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.")},"credentialsProvider"),n.memoized=!0,n}function p0t(t,e){if(e.configBound)return e;let r=i(async n=>e({...n,callerClientConfig:t}),"fn");return r.memoized=e.memoized,r.configBound=!0,r}var xj,bj,fve=g(()=>{ht();As();xj=R(Sj()),bj=i(t=>e=>{let r=e.credentials,n=!!e.credentials,s;Object.defineProperty(e,"credentials",{set(d){d&&d!==r&&d!==s&&(n=!0),r=d;let p=d0t(e,{credentials:r,credentialDefaultProvider:e.credentialDefaultProvider}),m=p0t(e,p);if(n&&!m.attributed){let f=typeof r=="object"&&r!==null;s=i(async A=>{let E=await m(A);return f&&(!E.$source||Object.keys(E.$source).length===0)?Ed(E,"CREDENTIALS_CODE","e"):E},"resolvedCredentials"),s.memoized=m.memoized,s.configBound=m.configBound,s.attributed=!0}else s=m},get(){return s},enumerable:!0,configurable:!0}),e.credentials=r;let{signingEscapePath:o=!0,systemClockOffset:a=e.systemClockOffset||0,sha256:c}=e,l;return e.signer?l=yi(e.signer):e.regionInfoProvider?l=i(()=>yi(e.region)().then(async d=>[await e.regionInfoProvider(d,{useFipsEndpoint:await e.useFipsEndpoint(),useDualstackEndpoint:await e.useDualstackEndpoint()})||{},d]).then(([d,p])=>{let{signingRegion:m,signingService:f}=d;e.signingRegion=e.signingRegion||m||p,e.signingName=e.signingName||f||e.serviceId;let A={...e,credentials:e.credentials,region:e.signingRegion,service:e.signingName,sha256:c,uriEscapePath:o},h=e.signerConstructor||xj.SignatureV4;return new h(A)}),"signer"):l=i(async d=>{d=Object.assign({},{name:"sigv4",signingName:e.signingName||e.defaultSigningName,signingRegion:await yi(e.region)(),properties:{}},d);let p=d.signingRegion,m=d.signingName;e.signingRegion=e.signingRegion||p,e.signingName=e.signingName||m||e.serviceId;let f={...e,credentials:e.credentials,region:e.signingRegion,service:e.signingName,sha256:c,uriEscapePath:o},A=e.signerConstructor||xj.SignatureV4;return new A(f)},"signer"),Object.assign(e,{systemClockOffset:a,signingEscapePath:o,signer:l,disableClockSkewCorrection:yi(e.disableClockSkewCorrection? Line truncated
For more information, please visit: `+O0t);let s=t.originalExpiration??t.expiration;return{...t,...s?{originalExpiration:s}:{},expiration:n}},"getExtendedInstanceMetadataCredentials"),M0t=i((t,e={})=>{let r=e?.logger||console,n;return async()=>{let s;try{s=await t(),s.expiration&&s.expiration.getTime()<Date.now()&&(s=bve(s,r))}catch(o){if(n)r.warn("Credential renew failed: ",o),s=bve(n,r);else throw o}return n=s,s}},"staticStabilityProvider"),Qve="/latest/meta-data/iam/security-credentials/",F0t="/latest/api/token",Tj="AWS_EC2_METADATA_V1_DISABLED",Bve="ec2_metadata_v1_disabled",Rve="x-aws-ec2-metadata-token",U0t=i((t={})=>M0t(q0t(t),{logger:t.logger}),"fromInstanceMetadata"),q0t=i((t={})=>{let e=!1,{logger:r,profile:n}=t,{timeout:s,maxRetries:o}=Dj(t),a=i(async(c,l)=>{if(e||l.headers?.[Rve]==null){let p=!1,m=!1,f=await Qj({environmentVariableSelector:i(A=>{let h=A[Tj];if(m=!!h&&h!=="false",h===void 0)throw new $d(`${Tj} not set in env, checking config file next.`,{logger:t.logger});return m},"environmentVariableSelector"),configFileSelector:i(A=>{let h=A[Bve];return p=!!h&&h!=="false",p},"configFileSelector"),default:!1},{profile:n})();if(t.ec2MetadataV1Disabled||f){let A=[];throw t.ec2MetadataV1Disabled&&A.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"),p&&A.push(`config file profile (${Bve})`),m&&A.push(`process environment variable (${Tj})`),new _j(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${A.join(", ")}].`)}}let d=(await vj(async()=>{let p;try{p=await H0t(l)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)).trim();return vj(async()=>{let p;try{p=await $0t(d,l,t)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)},"getCredentials");return async()=>{let c=await _ve();if(e)return r?.debug("AWS SDK Instance Metadata","using v1 fallback (no token fetch)"),a(o,{...c,timeout:s});{let l;try{l=(await G0t({...c,timeout:s})).toString()}catch(u){if(u?.statusCode===400)throw Object.assign(u,{message:"EC2 Metadata token request returned error"});return(u.message==="TimeoutError"||[403,404,405].includes(u.statusCode))&&(e=!0),r?.debug("AWS SDK Instance Metadata","using v1 fallback (initial)"),a(o,{...c,timeout:s})}return a(o,{...c,headers:{[Rve]:l},timeout:s})}}},"getInstanceMetadataProvider"),G0t=i(async t=>fS({...t,path:F0t,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),"getMetadataToken"),H0t=i(async t=>(await fS({...t,path:Qve})).toString(),"getProfile"),$0t=i(async(t,e,r)=>{let n=JSON.parse((await fS({...e,path:Qve+t})).toString());if(!Nve(n))throw new $d("Invalid response received from instance metadata service.",{logger:r.logger});return Tve(n)},"getCredentialsFromProfile");Ci.DEFAULT_MAX_RETRIES=Pve;Ci.DEFAULT_TIMEOUT=vve;Ci.ENV_CMDS_AUTH_TOKEN=Pj;Ci.ENV_CMDS_FULL_URI=pS;Ci.ENV_CMDS_RELATIVE_URI=YQ;Ci.Endpoint=mS;Ci.fromContainerMetadata=I0t;Ci.fromInstanceMetadata=U0t;Ci.getInstanceMetadataEndpoint=_ve;Ci.httpRequest=fS;Ci.providerConfigFromInit=Dj});var lu=I(hS=>{var{buildQueryString:Fve,HttpResponse:Uve}=(xe(),re(Od)),jQ=require("node:https"),{Readable:z0t}=require("node:stream"),kj=require("node:http2"),{streamCollector:V0t}=(_e(),re(Hg));hS.streamCollector=V0t;function XQ(t){let e=t&&typeof t=="object"&&"reason"in t?t.reason:void 0;if(e){if(e instanceof Error){let s=new Error("Request aborted");return s.name="AbortError",s.cause=e,s}let n=new Error(String(e));return n.name="AbortError",n}let r=new Error("Request aborted");return r.name="AbortError",r}i(XQ,"buildAbortError");var W0t=["ECONNRESET","EPIPE","ETIMEDOUT"],qve=i(t=>{let e={};for(let r in t){let n=t[r];e[r]=Array.isArray(n)?n.join(","):n}return e},"getTransformedHeaders"),Sn={setTimeout:i((t,e)=>setTimeout(t,e),"setTimeout"),clearTimeout:i(t=>clearTimeout(t),"clearTimeout")},Dve=1e3,Y0t=i((t,e,r=0)=>{if(!r)return-1;let n=i(s=>{let o=Sn.setTimeout(()=>{t.destroy(),e(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${r} ms.`),{name:"TimeoutError"}))},r-s),a=i(c=>{c?.connecting?c.on("connect",()=>{Sn.clearTimeout(o)}):Sn.clearTimeout(o)},"doWithSocket");t.socket?a(t.socket):t.on("socket",a)},"registerTimeout");return r<2e3?(n(0),0):Sn.setTimeout(n.bind(null,Dve),Dve)},"setConnectionTimeout"),J0t=i((t,e,r=0,n,s)=>r?Sn.setTimeout(()=>{let o=`@smithy/node-http-handler - [${n?"ERROR":"WARN"}] a request has exceeded the configured ${r} ms requestTimeout.`;if(n){let a=Object.assign(new Error(o),{name:"TimeoutError",code:"ETIMEDOUT"});t.destroy(a),e(a)}else o+=" Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.",s?.warn?.(o)},r):-1,"setRequestTimeout"),j0t=3e3,K0t=i((t,{keepAlive:e,keepAliveMsecs:r},n=j0t)=>{if(e!==!0)return-1;let s=i(()=>{t.socket?t.socket.setKeepAlive(e,r||0):t.on("socket",o=>{o.setKeepAlive(e,r||0)})},"registerListener");return n===0?(s(),0):Sn.setTimeout(s,n)},"setSocketKeepA Line truncated
See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return r}constructor(e){this.configProvider=new Promise((r,n)=>{typeof e=="function"?e().then(s=>{r(this.resolveDefaultConfig(s))}).catch(n):r(this.resolveDefaultConfig(e))})}destroy(){this.config?.httpAgent?.destroy(),this.config?.httpsAgent?.destroy()}async handle(e,{abortSignal:r,requestTimeout:n}={}){this.config||(this.config=await this.configProvider);let s=this.config,o=e.protocol==="https:";return!o&&!this.config.httpAgent&&(this.config.httpAgent=await this.config.httpAgentProvider()),new Promise((a,c)=>{let l,u=-1,d=-1,p=-1,m=-1,f=-1,A=i(()=>{Sn.clearTimeout(u),Sn.clearTimeout(d),Sn.clearTimeout(p),Sn.clearTimeout(m),Sn.clearTimeout(f)},"clearTimeouts"),h=i(async Z=>{await l,A(),a(Z)},"resolve"),E=i(async Z=>{await l,A(),c(Z)},"reject");if(r?.aborted){let Z=XQ(r);E(Z);return}let C=e.headers,w=C?(C.Expect??C.expect)==="100-continue":!1,x=o?s.httpsAgent:s.httpAgent;w&&!this.externalAgent&&(x=new(o?jQ.Agent:KQ)({keepAlive:!1,maxSockets:1/0})),u=Sn.setTimeout(()=>{this.socketWarningTimestamp=t.checkSocketUsage(x,this.socketWarningTimestamp,s.logger)},s.socketAcquisitionWarningTimeout??(s.requestTimeout??2e3)+(s.connectionTimeout??1e3));let b=e.query?Fve(e.query):"",N;if(e.username!=null||e.password!=null){let Z=e.username??"",U=e.password??"";N=`${Z}:${U}`}let P=e.path;b&&(P+=`?${b}`),e.fragment&&(P+=`#${e.fragment}`);let _=e.hostname??"";_[0]==="["&&_.endsWith("]")?_=e.hostname.slice(1,-1):_=e.hostname;let J={headers:e.headers,host:_,method:e.method,path:P,port:e.port,agent:x,auth:N},ae=(o?jQ.request:Ove)(J,Z=>{let U=new Uve({statusCode:Z.statusCode||-1,reason:Z.statusMessage,headers:qve(Z.headers),body:Z});h({response:U})});if(ae.on("error",Z=>{W0t.includes(Z.code)?E(Object.assign(Z,{name:"TimeoutError"})):E(Z)}),r){let Z=i(()=>{ae.destroy();let U=XQ(r);E(U)},"onAbort");if(typeof r.addEventListener=="function"){let U=r;U.addEventListener("abort",Z,{once:!0}),ae.once("close",()=>U.removeEventListener("abort",Z))}else r.onabort=Z}let qe=n??s.requestTimeout;d=Y0t(ae,E,s.connectionTimeout),p=J0t(ae,E,qe,s.throwOnRequestTimeout,s.logger??console),m=X0t(ae,E,s.socketTimeout);let ne=J.agent;typeof ne=="object"&&"keepAlive"in ne&&(f=K0t(ae,{keepAlive:ne.keepAlive,keepAliveMsecs:ne.keepAliveMsecs})),l=Gve(ae,e,qe,this.externalAgent).catch(Z=>(A(),c(Z)))})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(n=>({...n,[e]:r}))}httpHandlerConfigs(){return this.config??{}}resolveDefaultConfig(e){let{requestTimeout:r,connectionTimeout:n,socketTimeout:s,socketAcquisitionWarningTimeout:o,httpAgent:a,httpsAgent:c,throwOnRequestTimeout:l,logger:u}=e||{},d=!0,p=50;return{connectionTimeout:n,requestTimeout:r,socketTimeout:s,socketAcquisitionWarningTimeout:o,throwOnRequestTimeout:l,httpAgentProvider:i(async()=>{let m=require("node:http"),{Agent:f,request:A}=m.default??m;return Ove=A,KQ=f,a instanceof KQ||typeof a?.destroy=="function"?(this.externalAgent=!0,a):new KQ({keepAlive:d,maxSockets:p,...a})},"httpAgentProvider"),httpsAgent:c instanceof jQ.Agent||typeof c?.destroy=="function"?(this.externalAgent=!0,c):new jQ.Agent({keepAlive:d,maxSockets:p,...c}),logger:u}}},tBt=new Uint16Array(1),AS=class{static{i(this,"ClientHttp2SessionRef")}id=tBt[0]++;total=0;max=0;session;refs=0;constructor(e){e.unref(),this.session=e}retain(){if(this.session.destroyed)throw new Error("@smithy/node-http-handler - cannot acquire reference to destroyed session.");this.refs+=1,this.total+=1,this.max=Math.max(this.refs,this.max),this.session.ref()}free(){if(!this.session.destroyed&&(this.refs-=1,this.refs===0&&this.session.unref(),this.refs<0))throw new Error("@smithy/node-http-handler - ClientHttp2Session refcount at zero, cannot decrement.")}deref(){return this.session}close(){this.session.closed||this.session.close()}destroy(){this.refs=0,this.session.destroyed||this.session.destroy()}useCount(){return this.refs}},Oj=class{static{i(this,"NodeHttp2ConnectionPool")}sessions=[];maxConcurrency=0;constructor(e){this.sessions=(e??[]).map(r=>new AS(r))}poll(){let e=!1;for(let r of this.sessions){if(r.deref().destroyed){e=!0;continue}if(!this.maxConcurrency||r.useCount()<this.maxConcurrency)return r}if(e)for(let r of this.sessions)r.deref().destroyed&&this.remove(r)}offerLast(e){this.sessions.push(e)}remove(e){let r=this.sessions.indexOf(e);r>-1&&this.sessions.splice(r,1)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}setMaxConcurrency(e){this.maxConcurrency=e}destroy(e){this.remove(e),e.destroy()}},Mj=class{static{i(this,"NodeHttp2ConnectionManager")}config;connectOptions;connectionPools=new Map;constructor(e){if(this.config=e,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrency must be greater than zero.")}lease(e,r){let n=this.getUrlString(e),s=this.getPool(n);if(!this.config.disableConcurrency&&!r.isEventStream){let u=s.poll();if(u)return u.retain(),u}let o= Line truncated
- loopback CIDR 127.0.0.0/8 or [::1/128]
- ECS container host 169.254.170.2
- EKS container host 169.254.170.23 or [fd00:ec2::23]`,{logger:e})}},"checkUrl");function pBt(t){return new oBt({protocol:t.protocol,hostname:t.hostname,port:Number(t.port),path:t.pathname,query:Array.from(t.searchParams.entries()).reduce((e,[r,n])=>(e[r]=n,e),{}),fragment:t.hash})}i(pBt,"createGetRequest");async function mBt(t,e){let n=await iBt(t.body).transformToString();if(t.statusCode===200){let s=JSON.parse(n);if(typeof s.AccessKeyId!="string"||typeof s.SecretAccessKey!="string"||typeof s.Token!="string"||typeof s.Expiration!="string")throw new uf("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }",{logger:e});return{accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,sessionToken:s.Token,expiration:aBt(s.Expiration)}}if(t.statusCode>=400&&t.statusCode<500){let s={};try{s=JSON.parse(n)}catch{}throw Object.assign(new uf(`Server responded with status: ${t.statusCode}`,{logger:e}),{Code:s.Code,Message:s.Message})}throw new uf(`Server responded with status: ${t.statusCode}`,{logger:e})}i(mBt,"getCredentials");var fBt=i((t,e,r)=>async()=>{for(let n=0;n<e;++n)try{return await t()}catch{await new Promise(o=>setTimeout(o,r))}return await t()},"retryWrapper"),ABt="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",hBt="http://169.254.170.2",gBt="AWS_CONTAINER_CREDENTIALS_FULL_URI",yBt="AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE",EBt="AWS_CONTAINER_AUTHORIZATION_TOKEN",CBt=i((t={})=>{t.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");let e,r=t.awsContainerCredentialsRelativeUri??process.env[ABt],n=t.awsContainerCredentialsFullUri??process.env[gBt],s=t.awsContainerAuthorizationToken??process.env[EBt],o=t.awsContainerAuthorizationTokenFile??process.env[yBt],a=t.logger?.constructor?.name==="NoOpLogger"||!t.logger?.warn?console.warn:t.logger.warn.bind(t.logger);if(r&&n&&(a("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri."),a("awsContainerCredentialsRelativeUri will take precedence.")),s&&o&&(a("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),a("awsContainerAuthorizationTokenFile will take precedence.")),r)e=`${hBt}${r}`;else if(n)e=n;else throw new uf(`No HTTP credential provider host provided.
Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`,{logger:t.logger});let c=new URL(e);dBt(c,t.logger);let l=nBt.create({connectionTimeout:t.timeout??1e3}),u=t.timeout??1e3,d=fBt(async()=>{let p=pBt(c);o?p.headers.Authorization=Hve((await sBt.readFile(o)).toString()):s&&(p.headers.Authorization=Hve(s));try{let m=await l.handle(p,{requestTimeout:u});return mBt(m.response).then(f=>rBt(f,"CREDENTIALS_HTTP","z"))}catch(m){throw new uf(String(m),{logger:t.logger})}},t.maxRetries??3,t.timeout??1e3);return async()=>{try{return await d()}finally{l.destroy?.()}}},"fromHttp"),Hve=i(t=>{if(t.includes(`\r
`))throw new uf("Authorization token contains invalid \\r\\n sequence.");return t},"validateToken");$ve.fromHttp=CBt});function IBt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sso-oauth",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function wBt(t){return{schemeId:"smithy.api#noAuth"}}var zve,Vve,Wve,qj=g(()=>{Hn();Se();zve=i(async(t,e,r)=>({operation:Rt(e).operation,region:await Ct(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSSOOIDCHttpAuthSchemeParametersProvider");i(IBt,"createAwsAuthSigv4HttpAuthOption");i(wBt,"createSmithyApiNoAuthHttpAuthOption");Vve=i(t=>{let e=[];return t.operation==="CreateToken"?e.push(wBt(t)):e.push(IBt(t)),e},"defaultSSOOIDCHttpAuthSchemeProvider"),Wve=i(t=>{let e=il(t);return Object.assign(e,{authSchemePreference:Ct(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var Yve,Jve,Gj=g(()=>{Yve=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"sso-oauth"}),"resolveClientEndpointParameters"),Jve={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var zd,gS=g(()=>{zd={name:"@aws-sdk/nested-clients",version:"3.997.35",description:"Nested clients for AWS SDK packages.",homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",license:"Apache-2.0",author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/sdk-for-javascript/"},repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},files:["./cognito-identity.d.ts","./cognito-identity.js","./signin.d.ts","./signin.js","./sso-oidc.d.ts","./sso-oidc.js","./sso.d.ts","./sso.js","./sts.d.ts","./sts.js","dist-*/**"],sideEffects:!1,main:"./dist-cjs/index.js",module:"./dist-es/index.js",browser:{"./dist-es/submodules/cognito-identity/runtimeConfig":"./dist-es/submodules/cognito-identity/runtimeConfig.browser","./dist-es/submodules/signin/runtimeConfig":"./dist-es/submodules/signin/runtimeConfig.browser","./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sso/runtimeConfig":"./dist-es/submodules/sso/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},types:"./dist-types/index.d.ts",typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"],"*":["dist-types/ts3.4/submodules/*/index.d.ts"]}},"react-native":{},exports:{"./package.json":"./package.json","./sso-oidc":{types:"./dist-types/submodules/sso-oidc/index.d.ts",module:"./dist-es/submodules/sso-oidc/index.js",node:"./dist-cjs/submodules/sso-oidc/index.js",import:"./dist-es/submodules/sso-oidc/index.js",require:"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{types:"./dist-types/submodules/sts/index.d.ts",module:"./dist-es/submodules/sts/index.js",node:"./dist-cjs/submodules/sts/index.js",import:"./dist-es/submodules/sts/index.js",require:"./dist-cjs/submodules/sts/index.js"},"./signin":{types:"./dist-types/submodules/signin/index.d.ts",module:"./dist-es/submodules/signin/index.js",node:"./dist-cjs/submodules/signin/index.js",import:"./dist-es/submodules/signin/index.js",require:"./dist-cjs/submodules/signin/index.js"},"./cognito-identity":{types:"./dist-types/submodules/cognito-identity/index.d.ts",module:"./dist-es/submodules/cognito-identity/index.js",node:"./dist-cjs/submodules/cognito-identity/index.js",import:"./dist-es/submodules/cognito-identity/index.js",require:"./dist-cjs/submodules/cognito-identity/index.js"},"./sso":{types:"./dist-types/submodules/sso/index.d.ts",module:"./dist-es/submodules/sso/index.js",node:"./dist-cjs/submodules/sso/index.js",import:"./dist-es/submodules/sso/index.js",require:"./dist-cjs/submodules/sso/index.js"}},scripts:{build:"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline","build:es":"premove dist-es && tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"premove dist-types && tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types",lint:"node ../../scripts/validation/submodules-linter.js",prebuild:"yarn lint",test:"yarn g:vitest run","test:watch":"yarn g:vitest watch"},dependencies:{"@aws-sdk/core":"^3.977.0","@aws-sdk/signature-v4-multi-region":"^3.996.42","@aws-sdk/types":"^3.974.2","@smithy/core":"^3.29.8","@smithy/fetch-http-handler":"^5.6.10","@smithy/node-http-handler":"^4.9.10","@smithy/types":"^4.16.1",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},engines:{no Line truncated
`),this.z=this.x.length}parse(){let e=this,{z:r}=e;for(;e.i<r&&(e.trim(),!(e.i>=r));)if(e.isNext("<?"))e.readTo("?>"),e.trim();else if(e.isNext("<!--"))e.readTo("-->"),e.trim();else if(e.isNext("<!DOCTYPE",!1))e.skipDoctype(),e.trim();else if(e.x[e.i]==="<"){let n=e.parseTag();return{[n.tag]:n.value}}else throw new Error("@aws-sdk XML parse error: unexpected content.");throw new Error("@aws-sdk XML parse error: no root element.")}isNext(e,r=!0){let n=this;return r?n.x.startsWith(e,n.i):n.x.toLowerCase().startsWith(e.toLowerCase(),n.i)}readTo(e){let r=this,n=r.x.indexOf(e,r.i);if(n===-1)throw new Error(`@aws-sdk XML parse error: expected "${e}" not found.`);let s=r.x.slice(r.i,n);return r.i=n+e.length,s}trim(){let e=this;for(;e.i<e.z&&` \r
`.includes(e.x[e.i]);)++e.i}readAttrValue(){let e=this,r=e.x[e.i];++e.i;let n="";for(;e.i<e.z&&e.x[e.i]!==r;)n+=e.x[e.i++];return++e.i,e.decodeEntities(n)}parseTag(){let e=this;++e.i;let r="";for(;e.i<e.z&&!` \r
>/`.includes(e.x[e.i]);)r+=e.x[e.i++];let n=!1,s={};for(;e.i<e.z&&(e.trim(),!">/".includes(e.x[e.i]));){let d="";for(;e.i<e.z&&!`= \r
>/?`.includes(e.x[e.i]);)d+=e.x[e.i++];if(e.trim(),e.x[e.i]!=="=")break;++e.i,e.trim(),d==="__proto__"&&f6(s),s[d]=e.readAttrValue(),n=!0}if(e.i>=e.z)throw new Error("@aws-sdk XML parse error: unexpected end of input.");if(e.x[e.i]==="/"){if(++e.i,e.i>=e.z||e.x[e.i]!==">")throw new Error("@aws-sdk XML parse error: expected > at the end of self-closing tag.");return++e.i,{tag:r,value:n?s:""}}if(e.x[e.i]!==">")throw new Error("@aws-sdk XML parse error: expected > at the end of opening tag.");++e.i;let o=[],a=[],c=!1;for(;e.i<e.z&&!e.isNext("</");)if(e.x[e.i]==="<")e.isNext("<!--")?e.readTo("-->"):e.isNext("<![CDATA[")?(e.i+=9,o.push(e.readTo("]]>"))):e.isNext("<?")?e.readTo("?>"):(c=!0,a.push(e.parseTag()));else{let d="";for(;e.i<e.z&&e.x[e.i]!=="<";)d+=e.x[e.i++];o.push(e.decodeEntities(d))}if(!e.isNext("</"))throw new Error(`@aws-sdk XML parse error: missing closing tag </${r}>.`);e.i+=2;let l=e.readTo(">").trim();if(l!==r)throw new Error(`@aws-sdk XML parse error: mismatched tags <${r}> and </${l}>.`);if(!n&&o.length===0&&!c)return{tag:r,value:""};if(!n&&!c){let d=o.length===1?o[0]:o.join("");return d.trim()===""&&d.includes(`
`)?{tag:r,value:""}:{tag:r,value:d}}let u={};for(let d of o)d.trim()===""&&d.includes(`
`)||(u["#text"]="#text"in u?u["#text"]+d:d);for(let d of a)d.tag==="__proto__"&&f6(u),d.tag in u?Array.isArray(u[d.tag])?u[d.tag].push(d.value):u[d.tag]=[u[d.tag],d.value]:u[d.tag]=d.value;for(let[d,p]of Object.entries(s))d==="__proto__"&&f6(u),u[d]=p;return{tag:r,value:u}}static ENTITIES={amp:"&",lt:"<",gt:">",quot:'"',apos:"'"};skipDoctype(){let e=this;e.i+=9;let r=0;for(;e.i<e.z;){let n=e.x[e.i];if(n==="[")++r;else if(n==="]")--r;else if(n===">"&&r===0){++e.i;return}++e.i}throw new Error("@aws-sdk XML parse error: unclosed DOCTYPE.")}decodeEntities(e){return e.replace(/&(?:#x([0-9a-fA-F]{1,6})|#(\d{1,7})|([a-zA-Z][a-zA-Z0-9]{0,30}));/g,(r,n,s,o)=>n?String.fromCharCode(parseInt(n,16)):s?String.fromCharCode(parseInt(s,10)):t.ENTITIES[o]??"")}};ID.XmlNode=A6;ID.XmlText=CD;ID.parseXML=JBt});var RPe,Kd,SD=g(()=>{RPe=R(wD());Se();xe();tt();_e();Yd();i6();fD();Kd=class extends $n{static{i(this,"XmlShapeDeserializer")}settings;stringDeserializer;constructor(e){super(),this.settings=e,this.stringDeserializer=new Qd(e)}setSerdeContext(e){this.serdeContext=e,this.stringDeserializer.setSerdeContext(e)}read(e,r,n){let s=X.of(e),o=s.getMemberSchemas();if(s.isStructSchema()&&s.isMemberSchema()&&!!Object.values(o).find(u=>!!u.getMemberTraits().eventPayload)){let u={},d=Object.keys(o)[0];return o[d].isBlobSchema()?u[d]=r:u[d]=this.read(o[d],r),u}let c=(this.serdeContext?.utf8Encoder??Br)(r),l=this.parseXml(c);return this.readSchema(e,n?l[n]:l)}readSchema(e,r){let n=X.of(e);if(n.isUnitSchema())return;let s=n.getMergedTraits();if(n.isListSchema()&&!Array.isArray(r))return this.readSchema(n,[r]);if(r==null)return r;if(typeof r=="object"){let o=!!s.xmlFlattened;if(n.isListSchema()){let c=n.getValueSchema(),l=[],u=c.getMergedTraits().xmlName??"member",d=o?r:(r[0]??r)[u];if(d==null)return l;let p=Array.isArray(d)?d:[d];for(let m of p)l.push(this.readSchema(c,m));return l}let a={};if(n.isMapSchema()){let c=n.getKeySchema(),l=n.getValueSchema(),u;o?u=Array.isArray(r)?r:[r]:u=Array.isArray(r.entry)?r.entry:[r.entry];let d=c.getMergedTraits().xmlName??"key",p=l.getMergedTraits().xmlName??"value";for(let m of u){let f=m[d],A=m[p];f==="__proto__"&&pu(a),a[f]=this.readSchema(l,A)}return a}if(n.isStructSchema()){let c=n.isUnionSchema(),l;c&&(l=new gy(r,a));for(let[u,d]of n.structIterator()){let p=d.getMergedTraits(),m=p.httpPayload?p.xmlName??d.getName():d.getMemberTraits().xmlName??u;c&&l.mark(m),r[m]!=null&&(a[u]=this.readSchema(d,r[m]))}return c&&l.writeUnknown(),a}if(n.isDocumentSchema())return r;throw new Error(`@aws-sdk/core/protocols - xml deserializer unhandled schema type for ${n.getName(!0)}`)}return n.isListSchema()?[]:n.isMapSchema()||n.isStructSchema()?{}:this.stringDeserializer.read(n,r)}parseXml(e){if(e.length){let r;try{r=(0,RPe.parseXML)(e)}catch(a){throw a&&typeof a=="object"&&Object.defineProperty(a,"$responseBodyText",{value:e}),a}let n="#text",s=Object.keys(r)[0],o=r[s];return o[n]&&(o[s]=o[n],delete o[n]),Km(o)}return{}}}});var Cy,g6=g(()=>{xe();tt();_e();_e();Yd();Cy=class extends $n{static{i(this,"QueryShapeSerializer")}settings;buffer;constructor(e){super(),this.settings=e}write(e,r,n=""){this.buffer===void 0&&(this.buffer="");let s=X.of(e);if(n&&!n.endsWith(".")&&(n+="."),s.isBlobSchema())(typeof r=="string"||r instanceof Uint8Array)&&(this.writeKey(n),this.writeValue((this.serdeContext?.base64Encoder??Kt)(r)));else if(s.isBooleanSchema()||s.isNumericSchema()||s.isStringSchema())r!=null?(this.writeKey(n),this.writeValue(String(r))):s.isIdempotencyToken()&&(this.writeKey(n),this.writeValue(sa()));else if(s.isBigIntegerSchema())r!=null&&(this.writeKey(n),this.writeValue(String(r)));else if(s.isBigDecimalSchema())r!=null&&(this.writeKey(n),this.writeValue(r instanceof xt?r.string:String(r)));else if(s.isTimestampSchema()){if(r instanceof Date)switch(this.writeKey(n),Us(s,this.settings)){case 5:this.writeValue(r.toISOString().replace(".000Z","Z"));break;case 6:this.writeValue(ra(r));break;case 7:this.writeValue(String(r.getTime()/1e3));break}}else if(s.isDocumentSchema())Array.isArray(r)?this.write(79,r,n):r instanceof Date?this.write(4,r,n):r instanceof Uint8Array?this.write(21,r,n):r&&typeof r=="object"?this.write(143,r,n):(this.writeKey(n),this.writeValue(String(r)));else if(s.isListSchema()){if(Array.isArray(r))if(r.length===0)this.settings.serializeEmptyLists&&(this.writeKey(n),this.writeValue(""));else{let o=s.getValueSchema(),a=this.settings.flattenLists||s.getMergedTraits().xmlFlattened,c=1;for(let l of r){if(l==null)continue;let u=o.getMergedTraits(),d=this.getKey("member",u.xmlName,u.ec2QueryName),p=a?`${n}${c}`:`${n}${d}.${c}`;this.write(o,l,p),++c}}}else if(s.isMapSchema()){if(r&&typeof r=="object"){let o=s.getKeySchema(),a=s.getValueSchema(),c=s.getMergedTraits().xmlFlattened,l=1;for(let u in r){let d=r[u];if(d==null)continue;let p=o.getMergedTraits(),m=this.getKey("key",p.xmlName,p.ec2QueryName),f=c?`${n}${l}.${m}`:`${n}entry.${l}.${m}`,A=a.getMergedTraits(),h=this.getKey("value",A.xmlName,A.ec2Que Line truncated
Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:e});return t},"validateSsoProfile"),HNt=i((t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:a}=t,{ssoClient:c}=t,l=FNt({profile:t.profile??e?.profile});if(!r&&!n&&!s&&!o&&!a){let d=(await UNt(t))[l];if(!d)throw new Ca(`Profile ${l} was not found.`,{logger:t.logger});if(!EQe(d))throw new Ca(`Profile ${l} is not configured with SSO credentials.`,{logger:t.logger});if(d?.sso_session){let C=(await qNt(t))[d.sso_session],w=` configurations in profile ${l} and sso-session ${d.sso_session}`;if(s&&s!==C.sso_region)throw new Ca("Conflicting SSO region"+w,{tryNextLink:!1,logger:t.logger});if(r&&r!==C.sso_start_url)throw new Ca("Conflicting SSO start_url"+w,{tryNextLink:!1,logger:t.logger});d.sso_region=C.sso_region,d.sso_start_url=C.sso_start_url}let{sso_start_url:p,sso_account_id:m,sso_region:f,sso_role_name:A,sso_session:h}=CQe(d,t.logger);return yQe({ssoStartUrl:p,ssoSession:h,ssoAccountId:m,ssoRegion:f,ssoRoleName:A,ssoClient:c,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:l,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}else{if(!r||!n||!s||!o)throw new Ca('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:t.logger});return yQe({ssoStartUrl:r,ssoSession:a,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoClient:c,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:l,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}},"fromSSO");HD.fromSSO=HNt;HD.isSsoProfile=EQe;HD.validateSsoProfile=CQe});var W6=I(zD=>{var{SignatureV4:$Nt,signatureV4aContainer:IQe}=Sj(),tx={CrtSignerV4:null},z6="X-Amz-S3session-Token",wQe=z6.toLowerCase(),$D=class extends $Nt{static{i(this,"SignatureV4SignWithCredentials")}async signWithCredentials(e,r,n){let s=SQe(r);e.headers[wQe]=r.sessionToken;let o=this;return xQe(o,s),o.signRequest(e,n??{})}async presignWithCredentials(e,r,n){let s=SQe(r);return delete e.headers[wQe],e.headers[z6]=r.sessionToken,e.query=e.query??{},e.query[z6]=r.sessionToken,xQe(this,s),this.presign(e,n)}};function SQe(t){return{accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,expiration:t.expiration}}i(SQe,"getCredentialsWithoutSessionToken");function xQe(t,e){let r=t.credentialProvider;t.credentialProvider=()=>(t.credentialProvider=r,Promise.resolve(e))}i(xQe,"setSingleOverride");var V6=class{static{i(this,"SignatureV4MultiRegion")}sigv4aSigner;sigv4Signer;signerOptions;static sigv4aDependency(){return typeof tx.CrtSignerV4=="function"?"crt":typeof IQe.SignatureV4a=="function"?"js":"none"}constructor(e){this.sigv4Signer=new $D(e),this.signerOptions=e}async sign(e,r={}){return r.signingRegion==="*"?this.getSigv4aSigner().sign(e,r):this.sigv4Signer.sign(e,r)}async signWithCredentials(e,r,n={}){if(n.signingRegion==="*"){let s=this.getSigv4aSigner(),o=tx.CrtSignerV4;if(o&&s instanceof o)return s.signWithCredentials(e,r,n);throw new Error(`signWithCredentials with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.signWithCredentials(e,r,n)}async presign(e,r={}){if(r.signingRegion==="*"){let n=this.getSigv4aSigner(),s=tx.CrtSignerV4;if(s&&n instanceof s)return n.presign(e,r);throw new Error(`presign with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.presign(e,r)}async presignWithCredentials(e,r,n={}){if(n.signingRegion==="*")throw new Error("Method presignWithCredentials is not supported for [signingRegion=*].");return this.sigv4Signer.presignWithCredentials(e,r,n)}getSigv4aSigner(){if(!this.sigv4aSigner){let e=tx.CrtSignerV4,r=IQe.SignatureV4a;if(this.signerOptions.runtime==="node"){if(!e&&!r)throw new Error("Neither CRT nor JS SigV4a implementation is available. Please load either @aws-sdk/signature-v4-crt or @aws-sd Line truncated
Multiple credential sources detected:
Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
This SDK will proceed with the AWS_PROFILE value.
However, a future version may change this behavior to prefer the ENV static credentials.
Please ensure that your environment only sets either the AWS_PROFILE or the
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
`),tLe=!0)),new dk("AWS_PROFILE is set, skipping fromEnv provider.",{logger:t.logger,tryNextLink:!0});return t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),gPt(t)()},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:a}=t;if(!r&&!n&&!s&&!o&&!a)throw new dk("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:t.logger});let{fromSSO:c}=$6();return c(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:r}=Zke();return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:r}=Q9();return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:r}=k9();return r(t)(e)},async()=>(t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await CPt(t))()),async()=>{throw new dk("Could not load credentials from any providers",{tryNextLink:!1,logger:t.logger})}],rLe),"defaultProvider"),xPt=i(t=>t?.expiration!==void 0,"credentialsWillNeedRefresh"),rLe=i(t=>t?.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5,"credentialsTreatedAsExpired");pk.credentialsTreatedAsExpired=rLe;pk.credentialsWillNeedRefresh=xPt;pk.defaultProvider=SPt});var X1e=I(y=>{var{awsEndpointFunctions:bPt,emitWarningIfUnsupportedVersion:BPt,createDefaultUserAgentProvider:RPt,NODE_APP_ID_CONFIG_OPTIONS:NPt,getAwsRegionExtensionConfiguration:TPt,resolveAwsRegionExtensionConfiguration:vPt,resolveUserAgentConfig:PPt,resolveHostHeaderConfig:_Pt,getUserAgentPlugin:QPt,getHostHeaderPlugin:DPt,getLoggerPlugin:kPt,getRecursionDetectionPlugin:LPt}=(ht(),re(ma)),{getHttpAuthSchemeEndpointRuleSetPlugin:OPt,DefaultIdentityProviderConfig:MPt,getHttpSigningPlugin:FPt,createPaginator:Tf}=(As(),re(H5)),{normalizeProvider:cLe,getSmithyContext:UPt,ServiceException:qPt,NoOpLogger:GPt,emitWarningIfUnsupportedVersion:HPt,loadConfigsForDefaultMode:$Pt,getDefaultExtensionConfiguration:zPt,resolveDefaultRuntimeConfig:VPt,Client:lLe,makeBuilder:WPt,createWaiter:iO,checkExceptions:uLe,WaiterState:Ty,createAggregatedClient:YPt}=(Se(),re(bg)),{Command:JPt}=(Se(),re(bg));y.$Command=JPt;y.__Client=lLe;var{resolveDefaultsModeConfig:jPt,loadConfig:Bf,NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS:KPt,NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS:XPt,NODE_REGION_CONFIG_OPTIONS:ZPt,NODE_REGION_CONFIG_FILE_OPTIONS:e_t,resolveRegionConfig:t_t}=(At(),re(No)),{BinaryDecisionDiagram:r_t,EndpointCache:n_t,decideEndpoint:s_t,customEndpointFunctions:o_t,resolveEndpointConfig:i_t,getEndpointPlugin:a_t}=(Tt(),re(IJ)),{parseUrl:c_t,getHttpHandlerExtensionConfiguration:l_t,resolveHttpHandlerRuntimeConfig:u_t,getContentLengthPlugin:d_t}=(xe(),re(Od)),{DEFAULT_RETRY_MODE:p_t,NODE_RETRY_MODE_CONFIG_OPTIONS:m_t,NODE_MAX_ATTEMPT_CONFIG_OPTIONS:f_t,resolveRetryConfig:A_t,getRetryPlugin:h_t}=(Po(),re(R5)),{TypeRegistry:dLe,getSchemaSerdePlugin:g_t}=(tt(),re(t8)),{resolveAwsSdkSigV4Config:y_t,AwsSdkSigV4Signer:E_t,NODE_AUTH_SCHEME_PREFERENCE_OPTIONS:C_t}=(Hn(),re(WQ)),{defaultProvider:I_t}=O9(),{toUtf8:w_t,fromUtf8:S_t,toBase64:x_t,fromBase64:b_t,calculateBodyLength:B_t}=(_e(),re(Hg)),{streamCollector:R_t,NodeHttpHandler:N_t}=lu(),{AwsJson1_1Protocol:T_t}=(ff(),re(S6)),{Sha256:v_t}=(iu(),re(VJ)),P_t=i(async(t,e,r)=>({operation:UPt(e).operation,region:await cLe(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultECRHttpAuthSchemeParametersProvider");function __t(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}i(__t,"createAwsAuthSigv4HttpAuthOption");var Q_t=i(t=>{let e=[];switch(t.operation){default:e.push(__t(t))}return e},"defaultECRHttpAuthSchemeProvider"),D_t=i(t=>{let e=y_t(t);return Object.assign(e,{authSchemePreference:cLe(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig"),k_t=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr"}),"resolveClientEndpointParameters"),L_t={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},O_t="3.1094.0",M_t={version:O_t},vy="ref",Rf=-1,mk=!0,nLe="isSet",F9="PartitionResult",ip="stringEquals",fk="booleanEquals",M9="getAttr",sLe={[vy]:"Endpoint"},ap={fn:M9,argv:[{[vy]:F9},"name"]},oLe={[vy]:F9},Nf={},iLe=[{[vy]:"Region"}],aLe={conditions:[[nLe,[sLe]],[nLe,iLe],["aws.partition",iLe,F9],[ip,[ap,"aws-eusc"]],[ip,[ap,"aws-iso-f"]],[ip,[ap,"aws-iso-e"]],[ip,[ap,"aws-iso-b"]],[ip,[ap,"aws-iso"]],[ip,[ap,"aws-cn"]],[ip,[ap,"aws-us-gov"]],[ip,[ap,"aws"]],[fk,[{[vy]:" Line truncated
Error Code : ${a.statusCode}
Error Message: ${a.message}`)})).result)===null||r===void 0?void 0:r.value;if(!o)throw new Error("Response json body do not have ID Token field");return o})}static getIDToken(e){return ioe(this,void 0,void 0,function*(){try{let r=t.getIDTokenUrl();if(e){let s=encodeURIComponent(e);r=`${r}&audience=${s}`}T(`ID token url is ${r}`);let n=yield t.getCall(r);return vn(n),n}catch(r){throw new Error(`Error message: ${r.message}`)}})}};var coe=require("os"),KE=require("fs");var u2=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{access:X9e,appendFile:Z9e,writeFile:eKe}=KE.promises,aoe="GITHUB_STEP_SUMMARY";var d2=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return u2(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[aoe];if(!e)throw new Error(`Unable to find environment variable for $${aoe}. Check if your runtime environment supports job summaries.`);try{yield X9e(e,KE.constants.R_OK|KE.constants.W_OK)}catch{throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}return this._filePath=e,this._filePath})}wrap(e,r,n={}){let s=Object.entries(n).map(([o,a])=>` ${o}="${a}"`).join("");return r?`<${e}${s}>${r}</${e}>`:`<${e}${s}>`}write(e){return u2(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?eKe:Z9e)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return u2(this,void 0,void 0,function*(){return this.emptyBuffer().write({overwrite:!0})})}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){return this._buffer="",this}addRaw(e,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(coe.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(a=>this.wrap("li",a)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(a=>{if(typeof a=="string")return this.wrap("td",a);let{header:c,data:l,colspan:u,rowspan:d}=a,p=c?"th":"td",m=Object.assign(Object.assign({},u&&{colspan:u}),d&&{rowspan:d});return this.wrap(p,l,m)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},a=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),c=this.wrap("img",null,Object.assign({src:e,alt:r},a));return this.addRaw(c).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).addEOL()}addSeparator(){let e=this.wrap("hr",null);return this.addRaw(e).addEOL()}addBreak(){let e=this.wrap("br",null);return this.addRaw(e).addEOL()}addQuote(e,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},L4t=new d2;var I2=R(require("os"),1);var C2=require("string_decoder");var ZE=R(require("os"),1),E2=R(require("events"),1),Ioe=R(require("child_process"),1),woe=R(require("path"),1);var hoe=require("assert"),so=R(require("path"),1);var XE=R(require("fs"),1),Mu=R(require("path"),1);var p2=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{chmod:m2,copyFile:uoe,lstat:V0,mkdir:doe,open:q4t,readdir:f2,rename:tKe,rm:poe,rmdir:G4t,stat:Hp,symlink:moe,unlink:A2}=XE.promises,La=process.platform==="win32";function foe(t){return p2(this,void 0,void 0,function*(){let e=yield XE.promises.readlink(t);return La&&!e.endsWith("\\")?`${e}\\`:e})}i(foe,"readlink");var H4t=XE.constants.O_RDONLY;function kA(t){return p2(this,void 0,void 0,function*(){try{yield Hp(t)}catch(e){if(e.code==="ENOENT")return!1;throw e}return!0})}i(kA,"exists");function W0(t){if(t=rKe(t),!t)throw new Error('isRooted() parameter "p" cannot be empty');return La?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")}i(W0,"isRooted");function h2(t,e){return p2(this,void 0,void 0,function*(){let r;try{r=yield Hp(t)}catch(s){s.code!=="ENOENT"&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${s}`)}if(r&&r.isFile()){if(La){let s=Mu.extname(t).toUpperCase();if(e.some(o=>o.toULine truncated
Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}i(Noe,"getBooleanInput");function Toe(t){process.exitCode=w2.Failure,OA(t)}i(Toe,"setFailed");function Vp(){return process.env.RUNNER_DEBUG==="1"}i(Vp,"isDebug");function T(t){mp("debug",{},t)}i(T,"debug");function OA(t,e={}){mp("error",TM(e),t instanceof Error?t.toString():t)}i(OA,"error");function gr(t,e={}){mp("warning",TM(e),t instanceof Error?t.toString():t)}i(gr,"warning");function ye(t){process.stdout.write(t+Roe.EOL)}i(ye,"info");function aKe(t){PM("group",t)}i(aKe,"startGroup");function cKe(){PM("endgroup")}i(cKe,"endGroup");function rC(t,e){return Boe(this,void 0,void 0,function*(){aKe(t);let r;try{r=yield e()}finally{cKe()}return r})}i(rC,"group");function Wp(t,e){if(process.env.GITHUB_STATE||"")return NK("STATE",TK(t,e));mp("save-state",{name:t},yu(e))}i(Wp,"saveState");function voe(t){return process.env[`STATE_${t}`]||""}i(voe,"getState");function Poe(t){return Boe(this,void 0,void 0,function*(){return yield z0.getIDToken(t)})}i(Poe,"getIDToken");var tv=R(require("fs"),1),b4=R(require("os"),1),B4=R(require("path"),1);var Qoe=R(require("os"),1);function nC(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}i(nC,"toCommandValue");function Doe(t,e,r){let n=new S2(t,e,r);process.stdout.write(n.toString()+Qoe.EOL)}i(Doe,"issueCommand");var _oe="::",S2=class{static{i(this,"Command")}constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=_oe+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${uKe(s)}`)}}return e+=`${_oe}${lKe(this.message)}`,e}};function lKe(t){return nC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}i(lKe,"escapeData");function uKe(t){return nC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}i(uKe,"escapeProperty");var j0=R(Ff(),1),pKe=R(Gp(),1);var Oa;(function(t){t[t.OK=200]="OK",t[t.MultipleChoices=300]="MultipleChoices",t[t.MovedPermanently=301]="MovedPermanently",t[t.ResourceMoved=302]="ResourceMoved",t[t.SeeOther=303]="SeeOther",t[t.NotModified=304]="NotModified",t[t.UseProxy=305]="UseProxy",t[t.SwitchProxy=306]="SwitchProxy",t[t.TemporaryRedirect=307]="TemporaryRedirect",t[t.PermanentRedirect=308]="PermanentRedirect",t[t.BadRequest=400]="BadRequest",t[t.Unauthorized=401]="Unauthorized",t[t.PaymentRequired=402]="PaymentRequired",t[t.Forbidden=403]="Forbidden",t[t.NotFound=404]="NotFound",t[t.MethodNotAllowed=405]="MethodNotAllowed",t[t.NotAcceptable=406]="NotAcceptable",t[t.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",t[t.RequestTimeout=408]="RequestTimeout",t[t.Conflict=409]="Conflict",t[t.Gone=410]="Gone",t[t.TooManyRequests=429]="TooManyRequests",t[t.InternalServerError=500]="InternalServerError",t[t.NotImplemented=501]="NotImplemented",t[t.BadGateway=502]="BadGateway",t[t.ServiceUnavailable=503]="ServiceUnavailable",t[t.GatewayTimeout=504]="GatewayTimeout"})(Oa||(Oa={}));var koe;(function(t){t.Accept="accept",t.ContentType="content-type"})(koe||(koe={}));var Loe;(function(t){t.ApplicationJson="application/json"})(Loe||(Loe={}));var IWt=[Oa.MovedPermanently,Oa.ResourceMoved,Oa.SeeOther,Oa.TemporaryRedirect,Oa.PermanentRedirect],wWt=[Oa.BadGateway,Oa.ServiceUnavailable,Oa.GatewayTimeout];var Moe=require("os"),sC=require("fs");var x2=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{access:AKe,appendFile:hKe,writeFile:gKe}=sC.promises,Ooe="GITHUB_STEP_SUMMARY";var b2=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return x2(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[Ooe];if(!e)throw new Error(`Unable to find environment variable for $${Ooe}. Check if your runtime environment supports job summaries.`);try{yield AKe(e,sC.constants.R_OK|sC.constants.W_OK)}catch{throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}return this._filePath=e,this._filePath})}wrap(e,r,n={}){let s=Object.entries(n).map(([o,a])=>` ${o}="${a}"`).join("");return r?`<${e}${s}>${r}</${e}>`:`<${e}${s}>`}write(e){return x2(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?gKe:hKe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return x2(this,void 0,void 0,function*(){return this.emptyBuffer().write({overwrite:!0})})}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){return thisLine truncated
`),e=e.replace(/\r/g,`
`));let s=e.split(`
`).map(o=>o.trim());for(let o of s)!o||o.startsWith("#")||n.patterns.push(new yC(o));return n.searchPaths.push(...tq(n.patterns)),n})}static stat(e,r,n){return iq(this,void 0,void 0,function*(){let s;if(r.followSymbolicLinks)try{s=yield GA.promises.stat(e.path)}catch(o){if(o.code==="ENOENT"){if(r.omitBrokenSymbolicLinks){Go(`Broken symlink '${e.path}'`);return}throw new Error(`No information found for the path '${e.path}'. This may indicate a broken symbolic link.`)}throw o}else s=yield GA.promises.lstat(e.path);if(s.isDirectory()&&r.followSymbolicLinks){let o=yield GA.promises.realpath(e.path);for(;n.length>=e.level;)n.pop();if(n.some(a=>a===o)){Go(`Symlink cycle detected for path '${e.path}' and realpath '${o}'`);return}n.push(o)}return s})}};var net=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function mce(t,e){return net(this,void 0,void 0,function*(){return yield AB.create(t,e)})}i(mce,"create");var _B=R(require("crypto"),1),VA=R(require("fs"),1),Xp=R(require("path"),1),iue=R(sue(),1),aue=R(require("util"),1);var bC;(function(t){t.Gzip="cache.tgz",t.Zstd="cache.tzst"})(bC||(bC={}));var rs;(function(t){t.Gzip="gzip",t.ZstdWithoutLong="zstd-without-long",t.Zstd="zstd"})(rs||(rs={}));var io;(function(t){t.GNU="gnu",t.BSD="bsd"})(io||(io={}));var TB=2,vB=5e3,Rq=5e3,Nq=`${process.env.PROGRAMFILES}\\Git\\usr\\bin\\tar.exe`,oue=`${process.env.SYSTEMDRIVE}\\Windows\\System32\\tar.exe`,BC="cache.tar",Tq="manifest.txt",r6t=10*Math.pow(1024,3),PB="cache read denied:";var zA=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},pnt=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(a){return new Promise(function(c,l){a=t[o](a),s(c,l,a.done,a.value)})}}function s(o,a,c,l){Promise.resolve(l).then(function(u){o({value:u,done:c})},a)}},mnt="1.0";function RC(){return zA(this,void 0,void 0,function*(){let t=process.platform==="win32",e=process.env.RUNNER_TEMP||"";if(!e){let n;t?n=process.env.USERPROFILE||"C:\\":process.platform==="darwin"?n="/Users":n="/home",e=Xp.join(n,"actions","temp")}let r=Xp.join(e,_B.randomUUID());return yield zp(r),r})}i(RC,"createTempDirectory");function qa(t){return VA.statSync(t).size}i(qa,"getArchiveFileSizeInBytes");function vq(t){return zA(this,void 0,void 0,function*(){var e,r,n,s,o;let a=[],c=(o=process.env.GITHUB_WORKSPACE)!==null&&o!==void 0?o:process.cwd(),l=yield mce(t.join(`
`),{implicitDescendants:!1});try{for(var u=!0,d=pnt(l.globGenerator()),p;p=yield d.next(),e=p.done,!e;u=!0){s=p.value,u=!1;let f=Xp.relative(c,s).replace(new RegExp(`\\${Xp.sep}`,"g"),"/");T(`Matched: ${f}`),f===""?a.push("."):a.push(`${f}`)}}catch(m){r={error:m}}finally{try{!u&&!e&&(n=d.return)&&(yield n.call(d))}finally{if(r)throw r.error}}return a})}i(vq,"resolvePaths");function NC(t){return zA(this,void 0,void 0,function*(){return aue.promisify(VA.unlink)(t)})}i(NC,"unlinkFile");function cue(t){return zA(this,arguments,void 0,function*(e,r=[]){let n="";r.push("--version"),T(`Checking ${e} ${r.join(" ")}`);try{yield Fu(`${e}`,r,{ignoreReturnCode:!0,silent:!0,listeners:{stdout:i(s=>n+=s.toString(),"stdout"),stderr:i(s=>n+=s.toString(),"stderr")}})}catch(s){T(s.message)}return n=n.trim(),T(n),n})}i(cue,"getVersion");function TC(){return zA(this,void 0,void 0,function*(){let t=yield cue("zstd",["--quiet"]),e=iue.clean(t);return T(`zstd version: ${e}`),t===""?rs.Gzip:rs.ZstdWithoutLong})}i(TC,"getCompressionMethod");function Wu(t){return t===rs.Gzip?bC.Gzip:bC.Zstd}i(Wu,"getCacheFileName");function lue(){return zA(this,void 0,void 0,function*(){return VA.existsSync(Nq)?Nq:(yield cue("tar")).toLowerCase().includes("gnu tar")?Ss("tar"):""})}i(lue,"getGnuTarPathOnWindows");function Pq(t,e){if(e===void 0)throw Error(`Expected ${t} but value was undefiend`);return e}i(Pq,"assertDefined");function WA(t,e,r=!1){let n=t.slice();return e&&n.push(e),process.platform==="win32"&&!r&&n.push("windows-only"),n.push(mnt),_B.createHash("sha256").update(n.join("|")).digest("hex")}i(WA,"getCacheVersion");function uue(){let t=process.env.ACTIONS_RUNTIME_TOKEN;if(!t)throw new Error("Unable to get the ACTIONS_RUNTIME_TOKEN env variable");return t}i(uue,"getRuntimeToken");var PC=R(require("http"),1),Dq=R(require("https"),1);function _q(t){let e=t.protocol==="https:";if(fnt(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new DB(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new DB(`http://${r}`)}else return}i(_q,"getProxyUrl");function fnt(t){if(!t.hostname)return!1;let e=t.hostname;if(Ant(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(o==="*"||s.some(a=>a===o||a.endsWith(`.${o}`)||o.startsWith(".")&&a.endsWith(`${o}`)))return!0;return!1}i(fnt,"checkBypass");function Ant(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}i(Ant,"isLoopbackAddress");var DB=class extends URL{static{i(this,"DecodedURL")}constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var Yu=R(Ff(),1),due=R(Gp(),1);var yr=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},mt;(function(t){t[t.OK=200]="OK",t[t.MultipleChoices=300]="MultipleChoices",t[t.MovedPermanently=301]="MovedPermanently",t[t.ResourceMoved=302]="ResourceMoved",t[t.SeeOther=303]="SeeOther",t[t.NotModified=304]="NotModified",t[t.UseProxy=305]="UseProxy",t[t.SwitchProxy=306]="SwitchProxy",t[t.TemporaryRedirect=307]="TemporaryRedirect",t[t.PermanentRedirect=308]="PermanentRedirect",t[t.BadRequest=400]="BadRequest",t[t.Unauthorized=401]="Unauthorized",t[t.PaymentRequired=402]="PaymentRequired",t[t.Forbidden=403]="Forbidden",t[t.NotFound=404]="NotFound",t[t.MethodNotAllowed=405]="MethodNotAllowed",t[t.NotAcceptable=406]="NotAcceptable",t[t.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",t[t.RequestTimeout=408]="RequestTimeout",t[t.Conflict=409]="Conflict",t[t.Gone=410]="Gone",t[t.TooManyRequests=429]="TooManyRequests",t[t.InternalServerError=500]="InternalServerError",t[t.NotImplemented=501]="NotImplemented",t[t.BadGateway=502]="BadGateway",t[t.ServiceUnavailable=503]="ServiceUnavailable",t[t.GatewayTimeout=504]="GatewayTimeout"})(mt||(mt={}));var ns;(function(t){t.Accept="accept",t.ContentType="content-type"})(ns||(ns={}));var vl;(function(t){t.ApplicationJson="application/json"})(vl||(vl={}));var gnt=[mt.MovedPermanently,mt.ResourceMoved,mt.SeeOther,mt.TemporaryRedirect,mt.PermanentRedirect],ynt=[mt.BadGateway,mt.ServiceUnavailable,mt.GatewayTimeout],Ent=["OPTIONS","GET","DELETE","HEAD"],Cnt=10,Int=5,Ga=class t extends Error{static{i(this,"HttpClientError")}const Line truncated
${vnt.sanitize({...this,request:{...this.request,agent:n},response:this.response})}`,"value"),enumerable:!1}),Object.setPrototypeOf(this,t.prototype)}};function UB(t){return t instanceof ss?!0:em(t)&&t.name==="RestError"}i(UB,"isRestError");function bs(t,e){return Buffer.from(t,e)}i(bs,"stringToUint8Array");var qB=R(require("node:http"),1),GB=R(require("node:https"),1),$q=R(require("node:zlib"),1),vue=require("node:stream");var zo=_C("ts-http-runtime");var Pnt={};function QC(t){return t&&typeof t.pipe=="function"}i(QC,"isReadableStream");function Tue(t){return t.readable===!1?Promise.resolve():new Promise(e=>{let r=i(()=>{e(),t.removeListener("close",r),t.removeListener("end",r),t.removeListener("error",r)},"handler");t.on("close",r),t.on("end",r),t.on("error",r)})}i(Tue,"isStreamComplete");function Pue(t){return t&&typeof t.byteLength=="number"}i(Pue,"isArrayBuffer");var HB=class extends vue.Transform{static{i(this,"ReportTransform")}loadedBytes=0;progressCallback;_transform(e,r,n){this.push(e),this.loadedBytes+=e.length;try{this.progressCallback({loadedBytes:this.loadedBytes}),n()}catch(s){n(s)}}constructor(e){super(),this.progressCallback=e}},zq=class{static{i(this,"NodeHttpClient")}cachedHttpAgent;cachedHttpsAgents=new WeakMap;async sendRequest(e){let r=new AbortController,n;if(e.abortSignal){if(e.abortSignal.aborted)throw new Ha("The operation was aborted. Request has already been canceled.");n=i(u=>{u.type==="abort"&&r.abort()},"abortListener"),e.abortSignal.addEventListener("abort",n)}let s;e.timeout>0&&(s=setTimeout(()=>{let u=new Mi;zo.info(`request to '${u.sanitizeUrl(e.url)}' timed out. canceling...`),r.abort()},e.timeout));let o=e.headers.get("Accept-Encoding"),a=o?.includes("gzip")||o?.includes("deflate"),c=typeof e.body=="function"?e.body():e.body;if(c&&!e.headers.has("Content-Length")){let u=knt(c);u!==null&&e.headers.set("Content-Length",u)}let l;try{if(c&&e.onUploadProgress){let A=e.onUploadProgress,h=new HB(A);h.on("error",E=>{zo.error("Error in upload progress",E)}),QC(c)?c.pipe(h):h.end(c),c=h}let u=await this.makeRequest(e,r,c);s!==void 0&&clearTimeout(s);let d=_nt(u),m={status:u.statusCode??0,headers:d,request:e};if(e.method==="HEAD")return u.resume(),m;l=a?Qnt(u,d):u;let f=e.onDownloadProgress;if(f){let A=new HB(f);A.on("error",h=>{zo.error("Error in download progress",h)}),l.pipe(A),l=A}return e.streamResponseStatusCodes?.has(Number.POSITIVE_INFINITY)||e.streamResponseStatusCodes?.has(m.status)?m.readableStreamBody=l:m.bodyAsText=await Dnt(l),m}finally{if(e.abortSignal&&n){let u=Promise.resolve();QC(c)&&(u=Tue(c));let d=Promise.resolve();QC(l)&&(d=Tue(l)),Promise.all([u,d]).then(()=>{n&&e.abortSignal?.removeEventListener("abort",n)}).catch(p=>{zo.warning("Error when cleaning up abortListener on httpRequest",p)})}}}makeRequest(e,r,n){let s=new URL(e.url),o=s.protocol!=="https:";if(o&&!e.allowInsecureConnection)throw new Error(`Cannot connect to ${e.url} while allowInsecureConnection is false.`);let c={agent:e.agent??this.getOrCreateAgent(e,o),hostname:s.hostname,path:`${s.pathname}${s.search}`,port:s.port,method:e.method,headers:e.headers.toJSON({preserveCase:!0}),...e.requestOverrides};return new Promise((l,u)=>{let d=o?qB.default.request(c,l):GB.default.request(c,l);d.once("error",p=>{u(new ss(p.message,{code:p.code??ss.REQUEST_SEND_ERROR,request:e}))}),r.signal.addEventListener("abort",()=>{let p=new Ha("The operation was aborted. Rejecting from abort signal callback while making request.");d.destroy(p),u(p)}),n&&QC(n)?n.pipe(d):n?typeof n=="string"||Buffer.isBuffer(n)?d.end(n):Pue(n)?d.end(ArrayBuffer.isView(n)?Buffer.from(n.buffer):Buffer.from(n)):(zo.error("Unrecognized body type",n),u(new ss("Unrecognized body type"))):d.end()})}getOrCreateAgent(e,r){let n=e.disableKeepAlive;if(r)return n?qB.default.globalAgent:(this.cachedHttpAgent||(this.cachedHttpAgent=new qB.default.Agent({keepAlive:!0})),this.cachedHttpAgent);{if(n&&!e.tlsSettings)return GB.default.globalAgent;let s=e.tlsSettings??Pnt,o=this.cachedHttpsAgents.get(s);return o&&o.options.keepAlive===!n||(zo.info("No cached TLS Agent exist, creating a new Agent"),o=new GB.default.Agent({keepAlive:!n,...s}),this.cachedHttpsAgents.set(s,o)),o}}};function _nt(t){let e=co();for(let r of Object.keys(t.headers)){let n=t.headers[r];Array.isArray(n)?n.length>0&&e.set(r,n[0]):n&&e.set(r,n)}return e}i(_nt,"getResponseHeaders");function Qnt(t,e){let r=e.get("Content-Encoding");if(r==="gzip"){let n=$q.default.createGunzip();return t.pipe(n),n}else if(r==="deflate"){let n=$q.default.createInflate();return t.pipe(n),n}return t}i(Qnt,"getDecodedResponseStream");function Dnt(t){return new Promise((e,r)=>{let n=[];t.on("data",s=>{Buffer.isBuffer(s)?n.push(s):n.push(Buffer.from(s))}),t.on("end",()=>{e(Buffer.concat(n).toString("utf8"))}),t.on("error",s=>{s&&s?.name==="AbortError"?r(s):r(new ss(`Error reading response as text: ${s.message}`,{code:ss.PARSE_ERROR}))})})}i(Dnt,"streamToText");function knt(t){return t?Buffer.isBuffer(t)?t.length: Line truncated
`;return e}i(dot,"encodeHeaders");function pot(t){return t instanceof Uint8Array?t.byteLength:pR(t)?t.size===-1?void 0:t.size:void 0}i(pot,"getLength");function mot(t){let e=0;for(let r of t){let n=pot(r);if(n===void 0)return;e+=n}return e}i(mot,"getTotalLength");async function fot(t,e,r){let n=[bs(`--${r}`,"utf-8"),...e.flatMap(o=>[bs(`\r
`,"utf-8"),bs(dot(o.headers),"utf-8"),bs(`\r
`,"utf-8"),o.body,bs(`\r
--${r}`,"utf-8")]),bs(`--\r
\r
`,"utf-8")],s=mot(n);s&&t.headers.set("Content-Length",s),t.body=await kde(n)}i(fot,"buildRequestBody");var LC="multipartPolicy",Aot=70,hot=new Set("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'()+,-./:=?");function got(t){if(t.length>Aot)throw new Error(`Multipart boundary "${t}" exceeds maximum length of 70 characters`);if(Array.from(t).some(e=>!hot.has(e)))throw new Error(`Multipart boundary "${t}" contains invalid characters`)}i(got,"assertValidBoundary");function fR(){return{name:LC,async sendRequest(t,e){if(!t.multipartBody)return e(t);if(t.body)throw new Error("multipartBody and regular body cannot be set at the same time");let r=t.multipartBody.boundary,n=t.headers.get("Content-Type")??"multipart/mixed",s=n.match(/^(multipart\/[^ ;]+)(?:; *boundary=(.+))?$/);if(!s)throw new Error(`Got multipart request body, but content-type header was not multipart: ${n}`);let[,o,a]=s;if(a&&r&&a!==r)throw new Error(`Multipart boundary was specified as ${a} in the header, but got ${r} in the request body`);return r??=a,r?got(r):r=uot(),t.headers.set("Content-Type",`${o}; boundary=${r}`),await fot(t,t.multipartBody.parts,r),t.multipartBody=void 0,e(t)}}}i(fR,"multipartPolicy");function AR(){return FB()}i(AR,"createEmptyPipeline");var Lde=LB({logLevelEnvVarName:"AZURE_LOG_LEVEL",namespace:"azure"}),Z7t=Lde.logger;function Va(t){return Lde.createClientLogger(t)}i(Va,"createClientLogger");var Wa=Va("core-rest-pipeline");function lG(t={}){return zB({logger:Wa.info,...t})}i(lG,"logPolicy");var uG=VB;function dG(t={}){return WB(t)}i(dG,"redirectPolicy");var hR=R(require("node:os"),1),gR=R(require("node:process"),1);function Ode(){return"User-Agent"}i(Ode,"getHeaderName");async function Mde(t){if(gR.default&&gR.default.versions){let e=`${hR.default.type()} ${hR.default.release()}; ${hR.default.arch()}`,r=gR.default.versions;r.bun?t.set("Bun",`${r.bun} (${e})`):r.deno?t.set("Deno",`${r.deno} (${e})`):r.node&&t.set("Node",`${r.node} (${e})`)}}i(Mde,"setPlatformSpecificData");var yR="1.22.2";function bot(t){let e=[];for(let[r,n]of t){let s=n?`${r}/${n}`:r;e.push(s)}return e.join(" ")}i(bot,"getUserAgentString");function Fde(){return Ode()}i(Fde,"getUserAgentHeaderName");async function ER(t){let e=new Map;e.set("core-rest-pipeline",yR),await Mde(e);let r=bot(e);return t?`${t} ${r}`:r}i(ER,"getUserAgentValue");var Ude=Fde(),qde="userAgentPolicy";function pG(t={}){let e=ER(t.userAgentPrefix);return{name:qde,async sendRequest(r,n){return r.headers.has(Ude)||r.headers.set(Ude,await e),n(r)}}}i(pG,"userAgentPolicy");var mo=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}};function mG(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,a)=>{function c(){a(new mo(s??"The operation was aborted."))}i(c,"rejectOnAbort");function l(){n?.removeEventListener("abort",u)}i(l,"removeListeners");function u(){r?.(),l(),c()}if(i(u,"onAbort"),n?.aborted)return c();try{t(d=>{l(),o(d)},d=>{l(),a(d)})}catch(d){a(d)}n?.addEventListener("abort",u)})}i(mG,"createAbortablePromise");var vot="The delay was aborted.";function OC(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return mG(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:i(()=>clearTimeout(r),"cleanupBeforeAbort"),abortSignal:n,abortErrorMsg:s??vot})}i(OC,"delay");function ju(t){if(em(t))return t.message;{let e;try{typeof t=="object"&&t?e=JSON.stringify(t):e=String(t)}catch{e="[unable to stringify input]"}return`Unknown error ${e}`}}i(ju,"getErrorMessage");function Gde(t){return em(t)}i(Gde,"isError");function rh(){return Zp()}i(rh,"randomUUID");var at=nm;var Hde=Symbol("rawContent");function AG(t){return typeof t[Hde]=="function"}i(AG,"hasRawContent");function $de(t){return AG(t)?t[Hde]():t}i($de,"getRawContent");var CR=LC;function hG(){let t=fR();return{name:CR,sendRequest:i(async(e,r)=>{if(e.multipartBody)for(let n of e.multipartBody.parts)AG(n.body)&&(n.body=$de(n.body));return t.sendRequest(e,r)},"sendRequest")}}i(hG,"multipartPolicy");var gG=YB;function yG(){return JB()}i(yG,"decompressResponsePolicy");function EG(t={}){return XB(t)}i(EG,"defaultRetryPolicy");function CG(){return ZB()}i(CG,"formDataPolicy");function Ku(t){return sG(t)}i(Ku,"getDefaultProxySettings");function IG(t,e){return lR(t,e)}i(IG,"proxyPolicy");var zde="setClientRequestIdPolicy";function wG(t="x-ms-client-request-id"){return{name:zde,async sendRequest(e,r){return e.headers.has(t)||e.headers.set(t,e.requestId),r(e)}}}i(wG,"setClientRequestIdPolicy");function SG(t){return uR(t)}i(SG,"agentPolicy");function xG(t){return dR(t)}i(xG,"tlsPolicy");var nh={span:Symbol.for("@azure/core-tracing span"),namespace:Symbol.for("@azure/core-tracing namespace")};function Vde(t={}){let e=new bG(t.parentContext);return t.span&&(e=e.setValue(nh.span,t.span)),t.namespace&&(e=e.setValue(nh.namespace,t.namespace)),e}i(Vde,"createTracingContext");var bG=class t{static{i(this,"TracingContextImpl")}_contextMap;constructor(e){this._contextMap=e i Line truncated
`&&t[o]!=="\r";o++)l+=t[o];if(l=l.trim(),l[l.length-1]==="/"&&(l=l.substring(0,l.length-1),o--),!eat(l)){let p;return l.trim().length===0?p="Invalid space after '<'.":p="Tag '"+l+"' is an invalid name.",Er("InvalidTag",p,os(t,o))}let u=Jit(t,o);if(u===!1)return Er("InvalidAttr","Attributes for '"+l+"' have open quote.",os(t,o));let d=u.value;if(o=u.index,d[d.length-1]==="/"){let p=o-d.length;d=d.substring(0,d.length-1);let m=Tpe(d,e);if(m===!0)n=!0;else return Er(m.err.code,m.err.msg,os(t,p+m.err.line))}else if(c)if(u.tagClosed){if(d.trim().length>0)return Er("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",os(t,a));if(r.length===0)return Er("InvalidTag","Closing tag '"+l+"' has not been opened.",os(t,a));{let p=r.pop();if(l!==p.tagName){let m=os(t,p.tagStartPos);return Er("InvalidTag","Expected closing tag '"+p.tagName+"' (opened in line "+m.line+", col "+m.col+") instead of closing tag '"+l+"'.",os(t,a))}r.length==0&&(s=!0)}}else return Er("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",os(t,o));else{let p=Tpe(d,e);if(p!==!0)return Er(p.err.code,p.err.msg,os(t,o-d.length+p.err.line));if(s===!0)return Er("InvalidXml","Multiple possible root nodes found.",os(t,o));e.unpairedTags.indexOf(l)!==-1||r.push({tagName:l,tagStartPos:a}),n=!0}for(o++;o<t.length;o++)if(t[o]==="<")if(t[o+1]==="!"){o++,o=Npe(t,o);continue}else if(t[o+1]==="?"){if(o=Rpe(t,++o),o.err)return o}else break;else if(t[o]==="&"){let p=Xit(t,o);if(p==-1)return Er("InvalidChar","char '&' is not expected.",os(t,o));o=p}else if(s===!0&&!Bpe(t[o]))return Er("InvalidXml","Extra text at the end",os(t,o));t[o]==="<"&&o--}}else{if(Bpe(t[o]))continue;return Er("InvalidChar","char '"+t[o]+"' is not expected.",os(t,o))}if(n){if(r.length==1)return Er("InvalidTag","Unclosed tag '"+r[0].tagName+"'.",os(t,r[0].tagStartPos));if(r.length>0)return Er("InvalidXml","Invalid '"+JSON.stringify(r.map(o=>o.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return Er("InvalidXml","Start tag expected.",1);return!0}i(QR,"validate");function Bpe(t){return t===" "||t===" "||t===`
`||t==="\r"}i(Bpe,"isWhiteSpace");function Rpe(t,e){let r=e;for(;e<t.length;e++)if(t[e]=="?"||t[e]==" "){let n=t.substr(r,e-r);if(e>5&&n==="xml")return Er("InvalidXml","XML declaration allowed only at the start of the document.",os(t,e));if(t[e]=="?"&&t[e+1]==">"){e++;break}else continue}return e}i(Rpe,"readPI");function Npe(t,e){if(t.length>e+5&&t[e+1]==="-"&&t[e+2]==="-"){for(e+=3;e<t.length;e++)if(t[e]==="-"&&t[e+1]==="-"&&t[e+2]===">"){e+=2;break}}else if(t.length>e+8&&t[e+1]==="D"&&t[e+2]==="O"&&t[e+3]==="C"&&t[e+4]==="T"&&t[e+5]==="Y"&&t[e+6]==="P"&&t[e+7]==="E"){let r=1;for(e+=8;e<t.length;e++)if(t[e]==="<")r++;else if(t[e]===">"&&(r--,r===0))break}else if(t.length>e+9&&t[e+1]==="["&&t[e+2]==="C"&&t[e+3]==="D"&&t[e+4]==="A"&&t[e+5]==="T"&&t[e+6]==="A"&&t[e+7]==="["){for(e+=8;e<t.length;e++)if(t[e]==="]"&&t[e+1]==="]"&&t[e+2]===">"){e+=2;break}}return e}i(Npe,"readCommentAndCDATA");var Wit='"',Yit="'";function Jit(t,e){let r="",n="",s=!1;for(;e<t.length;e++){if(t[e]===Wit||t[e]===Yit)n===""?n=t[e]:n!==t[e]||(n="");else if(t[e]===">"&&n===""){s=!0;break}r+=t[e]}return n!==""?!1:{value:r,index:e,tagClosed:s}}i(Jit,"readAttributeStr");var jit=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function Tpe(t,e){let r=PR(t,jit),n={};for(let s=0;s<r.length;s++){if(r[s][1].length===0)return Er("InvalidAttr","Attribute '"+r[s][2]+"' has no space in starting.",JC(r[s]));if(r[s][3]!==void 0&&r[s][4]===void 0)return Er("InvalidAttr","Attribute '"+r[s][2]+"' is without value.",JC(r[s]));if(r[s][3]===void 0&&!e.allowBooleanAttributes)return Er("InvalidAttr","boolean attribute '"+r[s][2]+"' is not allowed.",JC(r[s]));let o=r[s][2];if(!Zit(o))return Er("InvalidAttr","Attribute '"+o+"' is an invalid name.",JC(r[s]));if(!Object.prototype.hasOwnProperty.call(n,o))n[o]=1;else return Er("InvalidAttr","Attribute '"+o+"' is repeated.",JC(r[s]))}return!0}i(Tpe,"validateAttributeString");function Kit(t,e){let r=/\d/;for(t[e]==="x"&&(e++,r=/[\da-fA-F]/);e<t.length;e++){if(t[e]===";")return e;if(!t[e].match(r))break}return-1}i(Kit,"validateNumberAmpersand");function Xit(t,e){if(e++,t[e]===";")return-1;if(t[e]==="#")return e++,Kit(t,e);let r=0;for(;e<t.length;e++,r++)if(!(t[e].match(/\w/)&&r<20)){if(t[e]===";")break;return-1}return e}i(Xit,"validateAmpersand");function Er(t,e,r){return{err:{code:t,msg:e,line:r.line||r,col:r.col}}}i(Er,"getErrorObject");function Zit(t){return HG(t)}i(Zit,"validateAttrName");function eat(t){return HG(t)}i(eat,"validateTagName");function os(t,e){let r=t.substring(0,e).split(/\r?\n/);return{line:r.length,col:r[r.length-1].length+1}}i(os,"getLineNumberForPosition");function JC(t){return t.startIndex+t[1].length}i(JC,"getPositionFromMatch");var vpe={amp:"&",AMP:"&",lt:"<",LT:"<",gt:">",GT:">",quot:'"',QUOT:'"',apos:"'",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",lsquor:"\u201A",rsquor:"\u2019",ldquor:"\u201E",bdquo:"\u201E",comma:",",period:".",colon:":",semi:";",excl:"!",quest:"?",num:"#",dollar:"$",percent:"%",amp:"&",ast:"*",commat:"@",lowbar:"_",verbar:"|",vert:"|",sol:"/",bsol:"\\",lbrace:"{",rbrace:"}",lbrack:"[",rbrack:"]",lpar:"(",rpar:")",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",COPY:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",REG:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",half:"\xBD",frac34:"\xBE",iquest:"\xBF",times:"\xD7",div:"\xF7",divide:"\xF7"},Ppe={Agrave:"\xC0",agrave:"\xE0",Aacute:"\xC1",aacute:"\xE1",Acirc:"\xC2",acirc:"\xE2",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",Aring:"\xC5",aring:"\xE5",AElig:"\xC6",aelig:"\xE6",Ccedil:"\xC7",ccedil:"\xE7",Egrave:"\xC8",egrave:"\xE8",Eacute:"\xC9",eacute:"\xE9",Ecirc:"\xCA",ecirc:"\xEA",Euml:"\xCB",euml:"\xEB",Igrave:"\xCC",igrave:"\xEC",Iacute:"\xCD",iacute:"\xED",Icirc:"\xCE",icirc:"\xEE",Iuml:"\xCF",iuml:"\xEF",ETH:"\xD0",eth:"\xF0",Ntilde:"\xD1",ntilde:"\xF1",Ograve:"\xD2",ograve:"\xF2",Oacute:"\xD3",oacute:"\xF3",Ocirc:"\xD4",ocirc:"\xF4",Otilde:"\xD5",otilde:"\xF5",Ouml:"\xD6",ouml:"\xF6",Oslash:"\xD8",oslash:"\xF8",Ugrave:"\xD9",ugrave:"\xF9",Uacute:"\xDA",uacute:"\xFA",Ucirc:"\xDB",ucirc:"\xFB",Uuml:"\xDC",uuml:"\xFC",Yacute:"\xDD",yacute:"\xFD",THORN:"\xDE",thorn:"\xFE",szlig:"\xDF",yuml:"\xFF",Yuml:"\u0178"},_pe={Amacr:"\u0100",amacr:"\u0101",Abreve:"\u0102",abreve:"\u0103",Aogon:"\u0104",aogon:"\u0105",Cacute:"\u0106",cacute:"\u0107",Ccirc:"\u0108",ccirc:"\u0109",Cdot:"\u010A",cdot:"\u010B",Ccaron:"\u010C",ccaron:"\u010D",Dcaron:"\u010E",dcaron:"\u010F",Dstrok:"\u0110",dstrok:"\u0111",Emacr:"\u0112",emacr:"\u0113",Ecaron:"\u011A",ecaron:"\u011B",Edot:"\u0116",edot:"\u0117",Eogon:"\u0118",eogon:"\u0119",Gcirc:"\u011C",gcirc:"\u011D",Gbreve:"\u011E",gbreve:"\u011F",Gdot:"\u0120",gdot:"\u0121",Gcedil:"\u0122",Hcirc:"\u0124",hcirc:"\Line truncated
`);let e=new Ts("!xml"),r=e,n="";this.matcher.reset(),this.entityDecoder.reset(),this.entityExpansionCount=0,this.currentExpandedLength=0;let s=this.options,o=new XC(s.processEntities),a=t.length;for(let c=0;c<a;c++)if(t[c]==="<"){let u=t.charCodeAt(c+1);if(u===47){let d=ch(t,">",c,"Closing Tag is not closed."),p=t.substring(c+2,d).trim();if(s.removeNSPrefix){let f=p.indexOf(":");f!==-1&&(p=p.substr(f+1))}p=KG(s.transformTagName,p,"",s).tagName,r&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher));let m=this.matcher.getCurrentTag();if(p&&s.unpairedTagsSet.has(p))throw new Error(`Unpaired tag can not be used as closing tag: </${p}>`);m&&s.unpairedTagsSet.has(m)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,r=this.tagsNodeStack.pop(),n="",c=d}else if(u===63){let d=XG(t,c,!1,"?>");if(!d)throw new Error("Pi Tag is not closed.");n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let p=this.buildAttributesMap(d.tagExp,this.matcher,d.tagName,!0);if(p){let m=p[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(m)||1),o.setXmlVersion(Number(m)||1)}if(!(s.ignoreDeclaration&&d.tagName==="?xml"||s.ignorePiTags)){let m=new Ts(d.tagName);m.add(s.textNodeName,""),d.tagName!==d.tagExp&&d.attrExpPresent&&s.ignoreAttributes!==!0&&(m[":@"]=p),this.addChild(r,m,this.readonlyMatcher,c)}c=d.closeIndex+1}else if(u===33&&t.charCodeAt(c+2)===45&&t.charCodeAt(c+3)===45){let d=ch(t,"-->",c+4,"Comment is not closed.");if(s.commentPropName){let p=t.substring(c+4,d-2);n=this.saveTextToParentTag(n,r,this.readonlyMatcher),r.add(s.commentPropName,[{[s.textNodeName]:p}])}c=d}else if(u===33&&t.charCodeAt(c+2)===68){let d=o.readDocType(t,c);this.entityDecoder.addInputEntities(d.entities),c=d.i}else if(u===33&&t.charCodeAt(c+2)===91){let d=ch(t,"]]>",c,"CDATA is not closed.")-2,p=t.substring(c+9,d);n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let m=this.parseTextData(p,r.tagname,this.readonlyMatcher,!0,!1,!0,!0);m==null&&(m=""),s.cdataPropName?r.add(s.cdataPropName,[{[s.textNodeName]:p}]):r.add(s.textNodeName,m),c=d+2}else{let d=XG(t,c,s.removeNSPrefix);if(!d){let P=t.substring(Math.max(0,c-50),Math.min(a,c+50));throw new Error(`readTagExp returned undefined at position ${c}. Context: "${P}"`)}let p=d.tagName,m=d.rawTagName,f=d.tagExp,A=d.attrExpPresent,h=d.closeIndex;if({tagName:p,tagExp:f}=KG(s.transformTagName,p,f,s),s.strictReservedNames&&(p===s.commentPropName||p===s.cdataPropName||p===s.textNodeName||p===s.attributesGroupName))throw new Error(`Invalid tag name: ${p}`);r&&n&&r.tagname!=="!xml"&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher,!1));let E=r;E&&s.unpairedTagsSet.has(E.tagname)&&(r=this.tagsNodeStack.pop(),this.matcher.pop());let C=!1;f.length>0&&f.lastIndexOf("/")===f.length-1&&(C=!0,p[p.length-1]==="/"?(p=p.substr(0,p.length-1),f=p):f=f.substr(0,f.length-1),A=p!==f);let w=null,x={},b;b=Sat(m),p!==e.tagname&&this.matcher.push(p,{},b),p!==f&&A&&(w=this.buildAttributesMap(f,this.matcher,p),w&&(x=wat(w,s))),p!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let N=c;if(this.isCurrentNodeStopNode){let P="";if(C)c=d.closeIndex;else if(s.unpairedTagsSet.has(p))c=d.closeIndex;else{let J=this.readStopNodeData(t,m,h+1);if(!J)throw new Error(`Unexpected end of ${m}`);c=J.i,P=J.tagContent}let _=new Ts(p);w&&(_[":@"]=w),_.add(s.textNodeName,P),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(r,_,this.readonlyMatcher,N)}else{if(C){({tagName:p,tagExp:f}=KG(s.transformTagName,p,f,s));let P=new Ts(p);w&&(P[":@"]=w),this.addChild(r,P,this.readonlyMatcher,N),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(s.unpairedTagsSet.has(p)){let P=new Ts(p);w&&(P[":@"]=w),this.addChild(r,P,this.readonlyMatcher,N),this.matcher.pop(),this.isCurrentNodeStopNode=!1,c=d.closeIndex;continue}else{let P=new Ts(p);if(this.tagsNodeStack.length>s.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(r),w&&(P[":@"]=w),this.addChild(r,P,this.readonlyMatcher,N),r=P}n="",c=h}}}else n+=t[c];return e.child},"parseXml");function Tat(t,e,r,n){this.options.captureMetaData||(n=void 0);let s=this.options.jPath?r.toString():r,o=this.options.updateTag(e.tagname,s,e[":@"]);o===!1||(typeof o=="string"&&(e.tagname=o),t.addChild(e,n))}i(Tat,"addChild");function vat(t,e,r){let n=this.options.processEntities;if(!n||!n.enabled)return t;if(n.allowedTags){let s=this.options.jPath?r.toString():r;if(!(Array.isArray(n.allowedTags)?n.allowedTags.includes(e):n.allowedTags(e,s)))return t}if(n.tagFilter){let s=this.options.jPath?r.toString():r;if(!n.tagFilter(e,s))return t}return this.entityDecoder.decode(t)}i(vat,"replaceEntitiesValue");function Pat(t,e,r,n){return t&&(n===void 0&&(n=e.child.length===0),t=this.parseTextData(t,e.tagname,r,!1,e[":@"]?Object.keys(e[":@"]).length!==0:!1,n),t!==void 0&&t!==""&&e.add(this.options.textNodeName,t),t=""),t}i(Pat,"saveTextToParentTag");function _at(){return this.stopNodeExpressionsSet.Line truncated
`;function qat(t,e){if(!Array.isArray(t)||t.length===0)return"1.0";let r=t[0];if(sH(r)==="?xml"){let s=r[":@"];if(s){let o=e.attributeNamePrefix+"version";if(s[o])return s[o]}}return"1.0"}i(qat,"detectXmlVersionFromArray");function Xpe(t,e,r,n,s){return!r.sanitizeName||lm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(Xpe,"resolveTagName");function nH(t,e){let r="";e.format&&(r=Uat);let n=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let a=0;a<e.stopNodes.length;a++){let c=e.stopNodes[a];typeof c=="string"?n.push(new ho(c)):c instanceof ho&&n.push(c)}let s=qat(t,e),o=new ja;return Zpe(t,e,r,o,n,s)}i(nH,"toXml");function Zpe(t,e,r,n,s,o){let a="",c=!1;if(e.maxNestedTags&&n.getDepth()>e.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(t!=null){let l=t.toString();return l=rH(l,e),l}return""}for(let l=0;l<t.length;l++){let u=t[l],d=sH(u);if(d===void 0)continue;let m=d===e.textNodeName||d===e.cdataPropName||d===e.commentPropName||d[0]==="?"?d:Xpe(d,!1,e,n,o),f=Gat(u[":@"],e);n.push(m,f);let A=$at(n,s);if(m===e.textNodeName){let x=u[d];A||(x=e.tagValueProcessor(m,x),x=rH(x,e)),c&&(a+=r),a+=x,c=!1,n.pop();continue}else if(m===e.cdataPropName){c&&(a+=r);let x=u[d][0][e.textNodeName],b=MR(x);a+=`<![CDATA[${b}]]>`,c=!1,n.pop();continue}else if(m===e.commentPropName){let x=u[d][0][e.textNodeName],b=OR(x);a+=r+`<!--${b}-->`,c=!0,n.pop();continue}else if(m[0]==="?"){let x=Kpe(u[":@"],e,A,n,o);a+=(m==="?xml"?"":r)+`<${m}${x}?>`,c=!0,n.pop();continue}let h=r;h!==""&&(h+=e.indentBy);let E=Kpe(u[":@"],e,A,n,o),C=r+`<${m}${E}`,w;A?w=eme(u[d],e):w=Zpe(u[d],e,h,n,s,o),e.unpairedTags.indexOf(m)!==-1?e.suppressUnpairedNode?a+=C+">":a+=C+"/>":(!w||w.length===0)&&e.suppressEmptyNode?a+=C+"/>":w&&w.endsWith(">")?a+=C+`>${w}${r}</${m}>`:(a+=C+">",w&&r!==""&&(w.includes("/>")||w.includes("</"))?a+=r+e.indentBy+w+r:a+=w,a+=`</${m}>`),c=!0,n.pop()}return a}i(Zpe,"arrToStr");function Gat(t,e){if(!t||e.ignoreAttributes)return null;let r={},n=!1;for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let o=s.startsWith(e.attributeNamePrefix)?s.substr(e.attributeNamePrefix.length):s;r[o]=ed(t[s]),n=!0}return n?r:null}i(Gat,"extractAttributeValues");function eme(t,e){if(!Array.isArray(t))return t!=null?t.toString():"";let r="";for(let n=0;n<t.length;n++){let s=t[n],o=sH(s);if(o===e.textNodeName)r+=s[o];else if(o===e.cdataPropName)r+=s[o][0][e.textNodeName];else if(o===e.commentPropName)r+=s[o][0][e.textNodeName];else{if(o&&o[0]==="?")continue;if(o){let a=Hat(s[":@"],e),c=eme(s[o],e);!c||c.length===0?r+=`<${o}${a}/>`:r+=`<${o}${a}>${c}</${o}>`}}}return r}i(eme,"getRawContent");function Hat(t,e){let r="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let s=t[n];s===!0&&e.suppressBooleanAttributes?r+=` ${n.substr(e.attributeNamePrefix.length)}`:r+=` ${n.substr(e.attributeNamePrefix.length)}="${ed(s)}"`}return r}i(Hat,"attr_to_str_raw");function sH(t){let e=Object.keys(t);for(let r=0;r<e.length;r++){let n=e[r];if(Object.prototype.hasOwnProperty.call(t,n)&&n!==":@")return n}}i(sH,"propName");function Kpe(t,e,r,n,s){let o="";if(t&&!e.ignoreAttributes)for(let a in t){if(!Object.prototype.hasOwnProperty.call(t,a))continue;let c=a.substr(e.attributeNamePrefix.length),l=r?c:Xpe(c,!0,e,n,s),u;r?u=t[a]:(u=e.attributeValueProcessor(a,t[a]),u=rH(u,e)),u===!0&&e.suppressBooleanAttributes?o+=` ${l}`:o+=` ${l}="${ed(u)}"`}return o}i(Kpe,"attr_to_str");function $at(t,e){if(!e||e.length===0)return!1;for(let r=0;r<e.length;r++)if(t.matches(e[r]))return!0;return!1}i($at,"checkStopNode");function rH(t,e){if(t&&t.length>0&&e.processEntities)for(let r=0;r<e.entities.length;r++){let n=e.entities[r];t=t.replace(n.regex,n.val)}return t}i(rH,"replaceEntitiesValue");function oH(t){return typeof t=="function"?t:Array.isArray(t)?e=>{for(let r of t)if(typeof r=="string"&&e===r||r instanceof RegExp&&r.test(e))return!0}:()=>!1}i(oH,"getIgnoreAttributesFn");var zat={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:i(function(t,e){return e},"tagValueProcessor"),attributeValueProcessor:i(function(t,e){return e},"attributeValueProcessor"),preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0,sanitizeName:!1};function Ps(t){if(this.options=Object.assign({},zat,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(e=>typeof e=="string"&&e.startsWith("*.")?".."+e.substring(2):e)),this.stopNodeExpressions=[],this.options.stopNodes&&ArraLine truncated
`,this.newLine=`
`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}i(Ps,"Builder");function Vat(t,e){let r=t["?xml"];if(r&&typeof r=="object"){if(e.attributesGroupName&&r[e.attributesGroupName]){let s=r[e.attributesGroupName][e.attributeNamePrefix+"version"];if(s)return s}let n=r[e.attributeNamePrefix+"version"];if(n)return n}return"1.0"}i(Vat,"detectXmlVersionFromObj");function iH(t,e,r,n,s){return!r.sanitizeName||lm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(iH,"resolveTagName");Ps.prototype.build=function(t){if(this.options.preserveOrder)return nH(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});let e=new ja,r=Vat(t,this.options);return this.j2x(t,0,e,r).val}};Ps.prototype.j2x=function(t,e,r,n){let s="",o="";if(this.options.maxNestedTags&&r.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");let a=this.options.jPath?r.toString():r,c=this.checkStopNode(r);for(let l in t){if(!Object.prototype.hasOwnProperty.call(t,l))continue;let d=l===this.options.textNodeName||l===this.options.cdataPropName||l===this.options.commentPropName||this.options.attributesGroupName&&l===this.options.attributesGroupName||this.isAttribute(l)||l[0]==="?"?l:iH(l,!1,this.options,r,n);if(typeof t[l]>"u")this.isAttribute(l)&&(o+="");else if(t[l]===null)this.isAttribute(l)||d===this.options.cdataPropName||d===this.options.commentPropName?o+="":d[0]==="?"?o+=this.indentate(e)+"<"+d+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+d+"/"+this.tagEndChar;else if(t[l]instanceof Date)o+=this.buildTextValNode(t[l],d,"",e,r);else if(typeof t[l]!="object"){let p=this.isAttribute(l);if(p&&!this.ignoreAttributesFn(p,a)){let m=iH(p,!0,this.options,r,n);s+=this.buildAttrPairStr(m,""+t[l],c)}else if(!p)if(l===this.options.textNodeName){let m=this.options.tagValueProcessor(l,""+t[l]);o+=this.replaceEntitiesValue(m)}else{r.push(d);let m=this.checkStopNode(r);if(r.pop(),m){let f=""+t[l];f===""?o+=this.indentate(e)+"<"+d+this.closeTag(d)+this.tagEndChar:o+=this.indentate(e)+"<"+d+">"+f+"</"+d+this.tagEndChar}else o+=this.buildTextValNode(t[l],d,"",e,r)}}else if(Array.isArray(t[l])){let p=t[l].length,m="",f="";for(let A=0;A<p;A++){let h=t[l][A];if(!(typeof h>"u"))if(h===null)d[0]==="?"?o+=this.indentate(e)+"<"+d+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+d+"/"+this.tagEndChar;else if(typeof h=="object")if(this.options.oneListGroup){r.push(d);let E=this.j2x(h,e+1,r,n);r.pop(),m+=E.val,this.options.attributesGroupName&&h.hasOwnProperty(this.options.attributesGroupName)&&(f+=E.attrStr)}else m+=this.processTextOrObjNode(h,d,e,r,n);else if(this.options.oneListGroup){let E=this.options.tagValueProcessor(d,h);E=this.replaceEntitiesValue(E),m+=E}else{r.push(d);let E=this.checkStopNode(r);if(r.pop(),E){let C=""+h;C===""?m+=this.indentate(e)+"<"+d+this.closeTag(d)+this.tagEndChar:m+=this.indentate(e)+"<"+d+">"+C+"</"+d+this.tagEndChar}else m+=this.buildTextValNode(h,d,"",e,r)}}this.options.oneListGroup&&(m=this.buildObjectNode(m,d,f,e)),o+=m}else if(this.options.attributesGroupName&&l===this.options.attributesGroupName){let p=Object.keys(t[l]),m=p.length;for(let f=0;f<m;f++){let A=iH(p[f],!0,this.options,r,n);s+=this.buildAttrPairStr(A,""+t[l][p[f]],c)}}else o+=this.processTextOrObjNode(t[l],d,e,r,n)}return{attrStr:s,val:o}};Ps.prototype.buildAttrPairStr=function(t,e,r){return r||(e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e)),this.options.suppressBooleanAttributes&&e==="true"?" "+t:" "+t+'="'+ed(e)+'"'};function Wat(t,e,r,n,s){let o=this.extractAttributes(t);if(n.push(e,o),this.checkStopNode(n)){let l=this.buildRawContent(t),u=this.buildAttributesForStopNode(t);return n.pop(),this.buildObjectNode(l,e,u,r)}let c=this.j2x(t,r+1,n,s);return n.pop(),e[0]==="?"?this.buildTextValNode("",e,c.attrStr,r,n):t[this.options.textNodeName]!==void 0&&Object.keys(t).length===1?this.buildTextValNode(t[this.options.textNodeName],e,c.attrStr,r,n):this.buildObjectNode(c.val,e,c.attrStr,r)}i(Wat,"processTextOrObjNode");Ps.prototype.extractAttributes=function(t){if(!t||typeof t!="object")return null;let e={},r=!1;if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){let n=t[this.options.attributesGroupName];for(let s in n){if(!Object.prototype.hasOwnProperty.call(n,s))continue;let o=s.startsWith(this.options.attributeNamePrefix)?s.substring(this.options.attributeNamePrefix.length):s;e[o]=ed(n[s]),r=!0}}else for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let s=this.isAttribute(n);s&&(e[s]=ed(t[n]),r=!0)}return r?e:null};Ps.prototype.buildRawContent=function(t){if(typeof t=="string")return t;if(typeof t!="object"||t===null)return String(t);if(t[this.options.textNodeName]!==void 0)return t[this.options.textNodeName];let e="";for(let r in t){if(!Object.prototype.hasOwnProperty.call(t,r)||this.isAttribute(r)||this.options.attributesGroupName&&r===this.o Line truncated
`)+`
`+this.getCanonicalizedHeadersString(e)+this.getCanonicalizedResourceString(e),n=this.factory.computeHMACSHA256(r);return e.headers.set(Re.AUTHORIZATION,`SharedKey ${this.factory.accountName}:${n}`),e}getHeaderValueToSign(e,r){let n=e.headers.get(r);return!n||r===Re.CONTENT_LENGTH&&n==="0"?"":n}getCanonicalizedHeadersString(e){let r=e.headers.headersArray().filter(s=>s.name.toLowerCase().startsWith(Re.PREFIX_FOR_STORAGE));r.sort((s,o)=>JR(s.name.toLowerCase(),o.name.toLowerCase())),r=r.filter((s,o,a)=>!(o>0&&s.name.toLowerCase()===a[o-1].name.toLowerCase()));let n="";return r.forEach(s=>{n+=`${s.name.toLowerCase().trimRight()}:${s.value.trimLeft()}
`}),n}getCanonicalizedResourceString(e){let r=VR(e.url)||"/",n="";n+=`/${this.factory.accountName}${r}`;let s=WR(e.url),o={};if(s){let a=[];for(let c in s)if(Object.prototype.hasOwnProperty.call(s,c)){let l=c.toLowerCase();o[l]=s[c],a.push(l)}a.sort();for(let c of a)n+=`
${c}:${decodeURIComponent(o[c])}`}return n}};var sr=class extends pm{static{i(this,"StorageSharedKeyCredential")}accountName;accountKey;constructor(e,r){super(),this.accountName=e,this.accountKey=Buffer.from(r,"base64")}create(e,r){return new nI(e,r,this)}computeHMACSHA256(e){return(0,cme.createHmac)("sha256",this.accountKey).update(e,"utf8").digest("base64")}};var Fr=Va("storage-common");var Jo;(function(t){t[t.EXPONENTIAL=0]="EXPONENTIAL",t[t.FIXED=1]="FIXED"})(Jo||(Jo={}));var rd={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:Jo.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},rct=new mo("The operation was aborted."),sI=class extends Ka{static{i(this,"StorageRetryPolicy")}retryOptions;constructor(e,r,n=rd){super(e,r),this.retryOptions={retryPolicyType:n.retryPolicyType?n.retryPolicyType:rd.retryPolicyType,maxTries:n.maxTries&&n.maxTries>=1?Math.floor(n.maxTries):rd.maxTries,tryTimeoutInMs:n.tryTimeoutInMs&&n.tryTimeoutInMs>=0?n.tryTimeoutInMs:rd.tryTimeoutInMs,retryDelayInMs:n.retryDelayInMs&&n.retryDelayInMs>=0?Math.min(n.retryDelayInMs,n.maxRetryDelayInMs?n.maxRetryDelayInMs:rd.maxRetryDelayInMs):rd.retryDelayInMs,maxRetryDelayInMs:n.maxRetryDelayInMs&&n.maxRetryDelayInMs>=0?n.maxRetryDelayInMs:rd.maxRetryDelayInMs,secondaryHost:n.secondaryHost?n.secondaryHost:rd.secondaryHost}}async sendRequest(e){return this.attemptSendRequest(e,!1,1)}async attemptSendRequest(e,r,n){let s=e.clone(),o=r||!this.retryOptions.secondaryHost||!(e.method==="GET"||e.method==="HEAD"||e.method==="OPTIONS")||n%2===1;o||(s.url=zR(s.url,this.retryOptions.secondaryHost)),this.retryOptions.tryTimeoutInMs&&(s.url=td(s.url,Dl.Parameters.TIMEOUT,Math.floor(this.retryOptions.tryTimeoutInMs/1e3).toString()));let a;try{if(Fr.info(`RetryPolicy: =====> Try=${n} ${o?"Primary":"Secondary"}`),a=await this._nextPolicy.sendRequest(s),!this.shouldRetry(o,n,a))return a;r=r||!o&&a.status===404}catch(c){if(Fr.error(`RetryPolicy: Caught error, message: ${c.message}, code: ${c.code}`),!this.shouldRetry(o,n,a,c))throw c}return await this.delay(o,n,e.abortSignal),this.attemptSendRequest(e,r,++n)}shouldRetry(e,r,n,s){if(r>=this.retryOptions.maxTries)return Fr.info(`RetryPolicy: Attempt(s) ${r} >= maxTries ${this.retryOptions.maxTries}, no further try.`),!1;let o=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"];if(s){for(let a of o)if(s.name.toUpperCase().includes(a)||s.message.toUpperCase().includes(a)||s.code&&s.code.toString().toUpperCase()===a)return Fr.info(`RetryPolicy: Network error ${a} found, will retry.`),!0}if(n||s){let a=n?n.status:s?s.statusCode:0;if(!e&&a===404)return Fr.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(a===503||a===500)return Fr.info(`RetryPolicy: Will retry for status code ${a}.`),!0}if(n&&n?.status>=400){let a=n.headers.get(Re.X_MS_CopySourceErrorCode);if(a!==void 0)switch(a){case"InternalError":case"OperationTimedOut":case"ServerBusy":return!0}}return s?.code==="PARSE_ERROR"&&s?.message.startsWith('Error "Error: Unclosed root tag')?(Fr.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),!0):!1}async delay(e,r,n){let s=0;if(e)switch(this.retryOptions.retryPolicyType){case Jo.EXPONENTIAL:s=Math.min((Math.pow(2,r-1)-1)*this.retryOptions.retryDelayInMs,this.retryOptions.maxRetryDelayInMs);break;case Jo.FIXED:s=this.retryOptions.retryDelayInMs;break}else s=Math.random()*1e3;return Fr.info(`RetryPolicy: Delay for ${s}ms`),YR(s,n,rct)}};var oI=class{static{i(this,"StorageRetryPolicyFactory")}retryOptions;constructor(e){this.retryOptions=e}create(e,r){return new sI(e,r,this.retryOptions)}};var nct="storageBrowserPolicy";function lme(){return{name:nct,async sendRequest(t,e){return at||((t.method==="GET"||t.method==="HEAD")&&(t.url=td(t.url,Dl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),t.headers.delete(Re.COOKIE),t.headers.delete(Re.CONTENT_LENGTH)),e(t)}}}i(lme,"storageBrowserPolicy");var sct="StorageCorrectContentLengthPolicy";function ume(){function t(e){e.body&&(typeof e.body=="string"||Buffer.isBuffer(e.body))&&e.body.length>0&&e.headers.set(Re.CONTENT_LENGTH,Buffer.byteLength(e.body))}return i(t,"correctContentLength"),{name:sct,async sendRequest(e,r){return t(e),r(e)}}}i(ume,"storageCorrectContentLengthPolicy");var oct="storageRetryPolicy",uh={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:Jo.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},ict=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"],act=new mo("The operation was aborted.");function dme(t={}){let e=t.retryPolicyType??uh.retryPolicyType,r=t.maxTries??uh.maxTries,n=t.retryDelayInMs??uh.retryDelayInMs,s=t.maxRetryDelayInMs??uh.maxRetryDelayInMs,o=t.secondaryHost??uh.secondaryHost,a=t.tryTimeoutInMs??uh.tryTimeoutInMs;function c({isPrimaryRetry:u,attempt:d,response:p,error:m}){if(d>=r)return Line truncated
`)+`
`+n(o)+s(o),c=(0,pme.createHmac)("sha256",t.accountKey).update(a,"utf8").digest("base64");o.headers.set(Re.AUTHORIZATION,`SharedKey ${t.accountName}:${c}`)}i(e,"signRequest");function r(o,a){let c=o.headers.get(a);return!c||a===Re.CONTENT_LENGTH&&c==="0"?"":c}i(r,"getHeaderValueToSign");function n(o){let a=[];for(let[l,u]of o.headers)l.toLowerCase().startsWith(Re.PREFIX_FOR_STORAGE)&&a.push({name:l,value:u});a.sort((l,u)=>JR(l.name.toLowerCase(),u.name.toLowerCase())),a=a.filter((l,u,d)=>!(u>0&&l.name.toLowerCase()===d[u-1].name.toLowerCase()));let c="";return a.forEach(l=>{c+=`${l.name.toLowerCase().trimRight()}:${l.value.trimLeft()}
`}),c}i(n,"getCanonicalizedHeadersString");function s(o){let a=VR(o.url)||"/",c="";c+=`/${t.accountName}${a}`;let l=WR(o.url),u={};if(l){let d=[];for(let p in l)if(Object.prototype.hasOwnProperty.call(l,p)){let m=p.toLowerCase();u[m]=l[p],d.push(m)}d.sort();for(let p of d)c+=`
${p}:${decodeURIComponent(u[p])}`}return c}return i(s,"getCanonicalizedResourceString"),{name:cct,async sendRequest(o,a){return e(o),a(o)}}}i(dH,"storageSharedKeyCredentialPolicy");var lct="storageRequestFailureDetailsParserPolicy";function mme(){return{name:lct,async sendRequest(t,e){try{return await e(t)}catch(r){throw typeof r=="object"&&r!==null&&r.response&&r.response.parsedBody&&r.response.parsedBody.code==="InvalidHeaderValue"&&r.response.parsedBody.HeaderName==="x-ms-version"&&(r.message=`The provided service version is not enabled on this storage account. Please see https://learn.microsoft.com/rest/api/storageservices/versioning-for-the-azure-storage-services for additional information.
`),r}}}}i(mme,"storageRequestFailureDetailsParserPolicy");var fme=require("node:crypto");var jR=class{static{i(this,"UserDelegationKeyCredential")}accountName;userDelegationKey;key;constructor(e,r){this.accountName=e,this.userDelegationKey=r,this.key=Buffer.from(r.value,"base64")}computeHMACSHA256(e){return(0,fme.createHmac)("sha256",this.key).update(e,"utf8").digest("base64")}};var KR="12.31.0",XR="2026-02-06";var ZR="https://storage.azure.com/.default",kl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}};var Fi="",pH="*",uct=1*1024*1024;var dct=4*uct;var Ame="AES256",hme="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;",gme=["Access-Control-Allow-Origin","Cache-Control","Content-Length","Content-Type","Date","Request-Id","traceparent","Transfer-Encoding","User-Agent","x-ms-client-request-id","x-ms-date","x-ms-error-code","x-ms-request-id","x-ms-return-client-request-id","x-ms-version","Accept-Ranges","Content-Disposition","Content-Encoding","Content-Language","Content-MD5","Content-Range","ETag","Last-Modified","Server","Vary","x-ms-content-crc64","x-ms-copy-action","x-ms-copy-completion-time","x-ms-copy-id","x-ms-copy-progress","x-ms-copy-status","x-ms-has-immutability-policy","x-ms-has-legal-hold","x-ms-lease-state","x-ms-lease-status","x-ms-range","x-ms-request-server-encrypted","x-ms-server-encrypted","x-ms-snapshot","x-ms-source-range","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","x-ms-access-tier","x-ms-access-tier-change-time","x-ms-access-tier-inferred","x-ms-account-kind","x-ms-archive-status","x-ms-blob-append-offset","x-ms-blob-cache-control","x-ms-blob-committed-block-count","x-ms-blob-condition-appendpos","x-ms-blob-condition-maxsize","x-ms-blob-content-disposition","x-ms-blob-content-encoding","x-ms-blob-content-language","x-ms-blob-content-length","x-ms-blob-content-md5","x-ms-blob-content-type","x-ms-blob-public-access","x-ms-blob-sequence-number","x-ms-blob-type","x-ms-copy-destination-snapshot","x-ms-creation-time","x-ms-default-encryption-scope","x-ms-delete-snapshots","x-ms-delete-type-permanent","x-ms-deny-encryption-scope-override","x-ms-encryption-algorithm","x-ms-if-sequence-number-eq","x-ms-if-sequence-number-le","x-ms-if-sequence-number-lt","x-ms-incremental-copy","x-ms-lease-action","x-ms-lease-break-period","x-ms-lease-duration","x-ms-lease-id","x-ms-lease-time","x-ms-page-write","x-ms-proposed-lease-id","x-ms-range-get-content-md5","x-ms-rehydrate-priority","x-ms-sequence-number-action","x-ms-sku-name","x-ms-source-content-md5","x-ms-source-if-match","x-ms-source-if-modified-since","x-ms-source-if-none-match","x-ms-source-if-unmodified-since","x-ms-tag-count","x-ms-encryption-key-sha256","x-ms-copy-source-error-code","x-ms-copy-source-status-code","x-ms-if-tags","x-ms-source-if-tags"],yme=["comp","maxresults","rscc","rscd","rsce","rscl","rsct","se","si","sip","sp","spr","sr","srt","ss","st","sv","include","marker","prefix","copyid","restype","blockid","blocklisttype","delimiter","prevsnapshot","ske","skoid","sks","skt","sktid","skv","snapshot"],Eme="BlobUsesCustomerSpecifiedEncryption",Cme="BlobDoesNotUseCustomerSpecifiedEncryption",Ime=["10000","10001","10002","10003","10004","10100","10101","10102","10103","10104","11000","11001","11002","11003","11004","11100","11101","11102","11103","11104"];function Ll(t){if(!t||typeof t!="object")return!1;let e=t;return Array.isArray(e.factories)&&typeof e.options=="object"&&typeof e.toServiceClientOptions=="function"}i(Ll,"isPipelineLike");var iI=class{static{i(this,"Pipeline")}factories;options;constructor(e,r={}){this.factories=e,this.options=r}toServiceClientOptions(){return{httpClient:this.options.httpClient,requestPolicyFactories:this.factories}}};function Cr(t,e={}){t||(t=new qt);let r=new iI([],e);return r._credential=t,r}i(Cr,"newPipeline");function pct(t){let e=[mct,wme,fct,Act,hct,gct,Ect];if(t.factories.length){let r=t.factories.filter(n=>!e.some(s=>s(n)));if(r.length){let n=r.some(s=>yct(s));return{wrappedPolicies:qG(r),afterRetry:n}}}}i(pct,"processDownlevelPipeline");function mH(t){let{httpClient:e,...r}=t.options,n=t._coreHttpClient;n||(n=e?GG(e):uH(),t._coreHttpClient=n);let s=t._corePipeline;if(!s){let o=`azsdk-js-azure-storage-blob/${KR}`,a=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${o}`:`${o}`;s=GC({...r,loggingOptions:{additionalAllowedHeaderNames:gme,additionalAllowedQueryParameters:yme,logger:UR.info},userAgentOptions:{userAgentPrefix:a},serializationOptions:{stringifyXML:FR,serializerOptions:{xml:{xmlCharKey:"#"}}},deserializationOptions:{parseXML:cH,serializerOptions:{xml:{xmlCharKey:"#"}}}}),s.removePolicy({phase:"Retry"}),s.removePolicy({name:gG}),s.addPolicy(ume()),s.addPolicy(dme(r.retryOptions),{phase:"R Line truncated
`),o=e.computeHMACSHA256(s);return{sasQueryParameters:new $i(t.version,o,n,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:s}}i(put,"generateBlobSASQueryParameters20150405");function mut(t,e){if(t=Im(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:o}}i(mut,"generateBlobSASQueryParameters20181109");function fut(t,e){if(t=Im(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,void 0,void 0,void 0,t.encryptionScope),stringToSign:o}}i(fut,"generateBlobSASQueryParameters20201206");function Aut(t,e){if(t=Im(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?ct(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?ct(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey),stringToSign:o}}i(Aut,"generateBlobSASQueryParametersUDK20181109");function hut(t,e){if(t=Im(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?ct(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?ct(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId),stringToSign:o}}i(hut,"generateBlobSASQueryParametersUDK20200210");function gut(t,e){if(t=Im(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?ct(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?ct(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope),stringToSign:o}}i(gut,"generateBlobSASQueryParametersUDK20201206");function yut(t,e){if(t=Im(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=fc.parse(t.permissions.toString()).toString():s=Ac.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?ct(t.startsOn,!1):"",t.expiresOn?ct(t.expiresOn,!1):"",Cm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?ct(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?ct(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,void 0,t.delegatedUserObjectId,t.ipRange?Hi(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(`
`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new $i(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope,t.delegatedUserObjectId),stringToSign:o}}i(yut,"generateBlobSASQueryParametersUDK20250705");function Cm(t,e,r){let n=[`/blob/${t}/${e}`];return r&&n.push(`/${r}`),n.join("")}i(Cm,"getCanonicalName");function Im(t){let e=t.version?t.version:XR;if(t.snapshotTime&&e<"2018-11-09")throw RangeError("'version' must be >= '2018-11-09' when providing 'snapshotTime'.");if(t.blobName===void 0&&t.snapshotTime)throw RangeError("Must provide 'blobName' when providing 'snapshotTime'.");if(t.versionId&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'versionId'.");if(t.blobName===void 0&&t.versionId)throw RangeError("Must provide 'blobName' when providing 'versionId'.");if(t.permissions&&t.permissions.setImmutabilityPolicy&&e<"2020-08-04")throw RangeError("'version' must be >= '2020-08-04' when provided 'i' permission.");if(t.permissions&&t.permissions.deleteVersion&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");if(t.permissions&&t.permissions.permanentDelete&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");if(t.permissions&&t.permissions.tag&&e<"2019-12-12")throw RangeError("'version' must be >= '2019-12-12' when providing 't' permission.");if(e<"2020-02-10"&&t.permissions&&(t.permissions.move||t.permissions.execute))throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");if(e<"2021-04-10"&&t.permissions&&t.permissions.filterByTags)throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");if(e<"2020-02-10"&&(t.preauthorizedAgentObjectId||t.correlationId))throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");if(t.encryptionScope&&e<"2020-12-06")throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");return t.version=e,t}i(Im,"SASSignatureValuesSanityCheckAndAutofill");var yI=class{static{i(this,"BlobLeaseClient")}_leaseId;_url;_containerOrBlobOperation;_isContainer;get leaseId(){return this._leaseId}get url(){return this._url}constructor(e,r){let n=e.storageClientContext;this._url=e.url,e.name===void 0?(this._isContainer=!0,this._containerOrBlobOperation=n.container):(this._isContainer=!1,this._containerOrBlobOperation=n.blob),r||(r=rh()),this._leaseId=r}async acquireLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==Fi||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==Fi||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return te.withSpan("BlobLeaseClient-acquireLease",r,async n=>de(await this._containerOrBlobOperation.acquireLease({abortSignal:r.abortSignal,duration:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},proposedLeaseId:this._leaseId,tracingOptions:n.tracingOptions})))}async changeLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==Fi||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==Fi||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return te.withSpan("BlobLeaseClient-changeLease",r,async n=>{let s=de(await this._containerOrBlobOperation.changeLease(this._leaseId,e,{abortSignal:r.abortSignal,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return this._leaseId=e,s})}async releaseLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==Fi||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==Fi||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return te.withSpan("BlobLeaseClient-releaseLease",e,async r=>de(await this._containerOrBlobOperation.releaseLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async renewLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==Fi||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==Fi||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default val Line truncated
If you are using self-hosted runners, please make sure your runner has access to all GitHub endpoints: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github`;super(r),this.code=e,this.name="NetworkError"}};wh.isNetworkErrorCode=t=>t?["ECONNRESET","ENOTFOUND","ETIMEDOUT","ECONNREFUSED","EHOSTUNREACH"].includes(t):!1;var bm=class extends Error{static{i(this,"UsageError")}constructor(){super(`Cache storage quota has been hit. Unable to upload any new cache entries.
More info on storage limits: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#calculating-minute-and-storage-spending`),this.name="UsageError"}};bm.isUsageErrorMessage=t=>t?t.includes("insufficient usage"):!1;var NI=class extends Error{static{i(this,"RateLimitError")}constructor(e){super(e),this.name="RateLimitError"}};var Adt=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},eV=class{static{i(this,"UploadProgress")}constructor(e){this.contentLength=e,this.sentBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}setSentBytes(e){this.sentBytes=e}getTransferredBytes(){return this.sentBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.sentBytes,r=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,s=(e/(1024*1024)/(n/1e3)).toFixed(1);ye(`Sent ${e} of ${this.contentLength} (${r}%), ${s} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setSentBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let r=i(()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(r,e))},"displayCallback");this.timeoutHandle=setTimeout(r,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}};function bAe(t,e,r){return Adt(this,void 0,void 0,function*(){var n;let s=new Hl(t),o=s.getBlockBlobClient(),a=new eV((n=r?.archiveSizeBytes)!==null&&n!==void 0?n:0),c={blockSize:r?.uploadChunkSize,concurrency:r?.uploadConcurrency,maxSingleShotSize:128*1024*1024,onProgress:a.onProgress()};try{a.startDisplayTimer(),T(`BlobClient: ${s.name}:${s.accountName}:${s.containerName}`);let l=yield o.uploadFile(e,c);if(l._response.status>=400)throw new nT(`uploadCacheArchiveSDK: upload failed with status code ${l._response.status}`);return l}catch(l){throw gr(`uploadCacheArchiveSDK: internal error uploading cache archive: ${l.message}`),l}finally{a.stopDisplayTimer()}})}i(bAe,"uploadCacheArchiveSDK");var RAe=R(require("buffer"),1),hc=R(require("fs"),1),NAe=R(require("stream"),1),TAe=R(require("util"),1);var sT=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function oT(t){return t?t>=200&&t<300:!1}i(oT,"isSuccessStatusCode");function hdt(t){return t?t>=500:!0}i(hdt,"isServerErrorStatusCode");function gdt(t){return t?[mt.BadGateway,mt.ServiceUnavailable,mt.GatewayTimeout].includes(t):!1}i(gdt,"isRetryableStatusCode");function ydt(t){return sT(this,void 0,void 0,function*(){return new Promise(e=>setTimeout(e,t))})}i(ydt,"sleep");function BAe(t,e,r){return sT(this,arguments,void 0,function*(n,s,o,a=TB,c=vB,l=void 0){let u="",d=1;for(;d<=a;){let p,m,f=!1;try{p=yield s()}catch(A){l&&(p=l(A)),f=!0,u=A.message}if(p&&(m=o(p),!hdt(m)))return p;if(m&&(f=gdt(m),u=`Cache service responded with ${m}`),T(`${n} - Attempt ${d} of ${a} failed with error: ${u}`),!f){T(`${n} - Error is not retryable`);break}yield ydt(c),d++}throw Error(`${n} failed: ${u}`)})}i(BAe,"retry");function TI(t,e){return sT(this,arguments,void 0,function*(r,n,s=TB,o=vB){return yield BAe(r,n,a=>a.statusCode,s,o,a=>{if(a instanceof Ga)return{statusCode:a.statusCode,result:null,headers:{},error:a}})})}i(TI,"retryTypedResponse");function Sh(t,e){return sT(this,arguments,void 0,function*(r,n,s=TB,o=vB){return yield BAe(r,n,a=>a.message.statusCode,s,o)})}i(Sh,"retryHttpClientResponse");var ei=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function Edt(t,e){return ei(this,void 0,void 0,function*(){yield TAe.promisify(NAe.pipeline)(t.message,e)})}i(Edt,"pipeResponseToStream");var iT=class{static{i(this,"DownloadProgress")}constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset=this.segmentOffset+this.segmentSize,this.segmentIndex=this.segmentIndex+1,this.segmentSize=e,this.receivedBytes=0,T(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){t Line truncated
Other caches with similar key:`);for(let c of o?.artifactCaches||[])T(`Cache Key: ${c?.cacheKey}, Cache Version: ${c?.cacheVersion}, Cache Scope: ${c?.scope}, Cache Created: ${c?.creationTime}`)}}})}i(Bdt,"printCachesListForDiagnostics");function oV(t,e,r){return Qs(this,void 0,void 0,function*(){let n=new GAe.URL(t),s=QAe(r);n.hostname.endsWith(".blob.core.windows.net")?s.useAzureSdk?yield PAe(t,e,s):s.concurrentBlobDownloads?yield vAe(t,e,s):yield aT(t,e):yield aT(t,e)})}i(oV,"downloadCache");function $Ae(t,e,r){return Qs(this,void 0,void 0,function*(){let n=sV(),s=WA(e,r?.compressionMethod,r?.enableCrossOsArchive),o={key:t,version:s,cacheSize:r?.cacheSize};return yield TI("reserveCache",()=>Qs(this,void 0,void 0,function*(){return n.postJson(PI("caches"),o)}))})}i($Ae,"reserveCache");function qAe(t,e){return`bytes ${t}-${e}/*`}i(qAe,"getContentRange");function Rdt(t,e,r,n,s){return Qs(this,void 0,void 0,function*(){T(`Uploading chunk of size ${s-n+1} bytes at offset ${n} with content range: ${qAe(n,s)}`);let o={"Content-Type":"application/octet-stream","Content-Range":qAe(n,s)},a=yield Sh(`uploadChunk (start: ${n}, end: ${s})`,()=>Qs(this,void 0,void 0,function*(){return t.sendStream("PATCH",e,r(),o)}));if(!oT(a.message.statusCode))throw new Error(`Cache service responded with ${a.message.statusCode} during upload chunk.`)})}i(Rdt,"uploadChunk");function Ndt(t,e,r,n){return Qs(this,void 0,void 0,function*(){let s=qa(r),o=PI(`caches/${e.toString()}`),a=xh.openSync(r,"r"),c=tV(n),l=Pq("uploadConcurrency",c.uploadConcurrency),u=Pq("uploadChunkSize",c.uploadChunkSize),d=[...new Array(l).keys()];T("Awaiting all uploads");let p=0;try{yield Promise.all(d.map(()=>Qs(this,void 0,void 0,function*(){for(;p<s;){let m=Math.min(s-p,u),f=p,A=p+m-1;p+=u,yield Rdt(t,o,()=>xh.createReadStream(r,{fd:a,start:f,end:A,autoClose:!1}).on("error",h=>{throw new Error(`Cache upload failed because file read failed with ${h.message}`)}),f,A)}})))}finally{xh.closeSync(a)}})}i(Ndt,"uploadFile");function Tdt(t,e,r){return Qs(this,void 0,void 0,function*(){let n={size:r};return yield TI("commitCache",()=>Qs(this,void 0,void 0,function*(){return t.postJson(PI(`caches/${e.toString()}`),n)}))})}i(Tdt,"commitCache");function iV(t,e,r,n){return Qs(this,void 0,void 0,function*(){if(tV(n).useAzureSdk){if(!r)throw new Error("Azure Storage SDK can only be used when a signed URL is provided.");yield bAe(r,e,n)}else{let o=sV();T("Upload cache"),yield Ndt(o,t,e,n),T("Commiting cache");let a=qa(e);ye(`Cache Size: ~${Math.round(a/(1024*1024))} MB (${a} B)`);let c=yield Tdt(o,t,a);if(!oT(c.statusCode))throw new Error(`Cache service responded with ${c.statusCode} during commit cache.`);ye("Cache saved successfully")}})}i(iV,"saveCache");var Mhe=R(Phe(),1),Sr=R(wr(),1),Eo=R(wr(),1),vm=R(wr(),1),Pm=R(wr(),1),_m=R(wr(),1);var e4=R(wr(),1),t4=R(wr(),1),khe=R(wr(),1),Lhe=R(wr(),1),Ohe=R(wr(),1);var KV=R(wr(),1),XV=R(wr(),1),_he=R(wr(),1),Qhe=R(wr(),1),Dhe=R(wr(),1);var ZV=class extends Dhe.MessageType{static{i(this,"CacheScope$Type")}constructor(){super("github.actions.results.entities.v1.CacheScope",[{no:1,name:"scope",kind:"scalar",T:9},{no:2,name:"permission",kind:"scalar",T:3}])}create(e){let r={scope:"",permission:"0"};return globalThis.Object.defineProperty(r,Qhe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,_he.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.pos<a;){let[c,l]=e.tag();switch(c){case 1:o.scope=e.string();break;case 2:o.permission=e.int64().toString();break;default:let u=n.readUnknownField;if(u==="throw")throw new globalThis.Error(`Unknown field ${c} (wire type ${l}) for ${this.typeName}`);let d=e.skip(l);u!==!1&&(u===!0?XV.UnknownFieldHandler.onRead:u)(this.typeName,o,c,l,d)}}return o}internalBinaryWrite(e,r,n){e.scope!==""&&r.tag(1,KV.WireType.LengthDelimited).string(e.scope),e.permission!=="0"&&r.tag(2,KV.WireType.Varint).int64(e.permission);let s=n.writeUnknownFields;return s!==!1&&(s==!0?XV.UnknownFieldHandler.onWrite:s)(this.typeName,e,r),r}},YT=new ZV;var r4=class extends Ohe.MessageType{static{i(this,"CacheMetadata$Type")}constructor(){super("github.actions.results.entities.v1.CacheMetadata",[{no:1,name:"repository_id",kind:"scalar",T:3},{no:2,name:"scope",kind:"message",repeat:1,T:i(()=>YT,"T")}])}create(e){let r={repositoryId:"0",scope:[]};return globalThis.Object.defineProperty(r,Lhe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,khe.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.pos<a;){let[c,l]=e.tag();switch(c){case 1:o.repositoryId=e.int64().toString();break;case 2:o.scope.push(YT.internalBinaryRead(e,e.uint32(),n));break;default:let u=n.readUnknownField;if(u==="throw")throw new globalThis.Error(`Unknown field ${c} (wire type ${l}) for ${this.typeName}`);let d=e.skip(l);u!==!1&&(u===!0?t4.UnknownFieldHandler.onRead:u)(this.typeName,o,c,l,d)}}return o}internalBinaryWrite(e,r,n){e.repositoryId! Line truncated
`));let n=yield g4(r,"create");yield y4(n,t)})}i(C4,"createTar");var Uh=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},Wi=class t extends Error{static{i(this,"ValidationError")}constructor(e){super(e),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}},Qm=class t extends Error{static{i(this,"ReserveCacheError")}constructor(e){super(e),this.name="ReserveCacheError",Object.setPrototypeOf(this,t.prototype)}},I4="cache write denied:",XT=class t extends Qm{static{i(this,"CacheWriteDeniedError")}constructor(e){super(e),this.name="CacheWriteDeniedError",Object.setPrototypeOf(this,t.prototype)}},Ghe=PB,ZT=class t extends Error{static{i(this,"CacheReadDeniedError")}constructor(e){super(e),this.name="CacheReadDeniedError",Object.setPrototypeOf(this,t.prototype)}},ev=class t extends Error{static{i(this,"FinalizeCacheError")}constructor(e){super(e),this.name="FinalizeCacheError",Object.setPrototypeOf(this,t.prototype)}};function Hhe(t){if(!t||t.length===0)throw new Wi("Path Validation Error: At least one directory or file path is required")}i(Hhe,"checkPaths");function w4(t){if(t.length>512)throw new Wi(`Key Validation Error: ${t} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(t))throw new Wi(`Key Validation Error: ${t} cannot contain commas.`)}i(w4,"checkKey");function S4(){return vI()==="v2"?!!process.env.ACTIONS_RESULTS_URL:!!process.env.ACTIONS_CACHE_URL}i(S4,"isFeatureAvailable");function $he(t,e,r,n){return Uh(this,arguments,void 0,function*(s,o,a,c,l=!1){let u=vI();T(`Cache service version: ${u}`),Hhe(s);let d=nV();if(!kAe(d)){ye(`Cache restore skipped: the effective cache-mode '${d}' does not permit reads.`),T(`Skipped restore for paths [${s.join(", ")}] with primary key '${o}'.`);return}return u==="v2"?yield $mt(s,o,a,c,l):yield Hmt(s,o,a,c,l)})}i($he,"restoreCache");function Hmt(t,e,r,n){return Uh(this,arguments,void 0,function*(s,o,a,c,l=!1){var u;a=a||[];let d=[o,...a];if(T("Resolved Keys:"),T(JSON.stringify(d)),d.length>10)throw new Wi("Key Validation Error: Keys are limited to a maximum of 10.");for(let f of d)w4(f);let p=yield TC(),m="";try{let f;try{f=yield HAe(d,s,{compressionMethod:p,enableCrossOsArchive:l})}catch(h){let E=(u=h?.message)!==null&&u!==void 0?u:"";throw E.includes(Ghe)?new ZT(E):h}if(!f?.archiveLocation)return;if(c?.lookupOnly)return ye("Lookup only - skipping download"),f.cacheKey;m=WI.join(yield RC(),Wu(p)),T(`Archive Path: ${m}`),yield oV(f.archiveLocation,m,c),Vp()&&(yield VI(m,p));let A=qa(m);return ye(`Cache Size: ~${Math.round(A/(1024*1024))} MB (${A} B)`),yield E4(m,p),ye("Cache restored successfully"),f.cacheKey}catch(f){let A=f;if(A.name===Wi.name)throw f;A instanceof Ga&&typeof A.statusCode=="number"&&A.statusCode>=500?OA(`Failed to restore: ${f.message}`):gr(`Failed to restore: ${f.message}`)}finally{try{yield NC(m)}catch(f){T(`Failed to delete archive: ${f}`)}}})}i(Hmt,"restoreCacheV1");function $mt(t,e,r,n){return Uh(this,arguments,void 0,function*(s,o,a,c,l=!1){var u;c=Object.assign(Object.assign({},c),{useAzureSdk:!0}),a=a||[];let d=[o,...a];if(T("Resolved Keys:"),T(JSON.stringify(d)),d.length>10)throw new Wi("Key Validation Error: Keys are limited to a maximum of 10.");for(let m of d)w4(m);let p="";try{let m=h4(),f=yield TC(),A={key:o,restoreKeys:a,version:WA(s,f,l)},h;try{h=yield m.GetCacheEntryDownloadURL(A)}catch(w){let x=(u=w?.message)!==null&&u!==void 0?u:"";throw x.includes(Ghe)?new ZT(x):w}if(!h.ok){T(`Cache not found for version ${A.version} of keys: ${d.join(", ")}`);return}if(A.key!==h.matchedKey?ye(`Cache hit for restore-key: ${h.matchedKey}`):ye(`Cache hit for: ${h.matchedKey}`),c?.lookupOnly)return ye("Lookup only - skipping download"),h.matchedKey;p=WI.join(yield RC(),Wu(f)),T(`Archive path: ${p}`),T(`Starting download of archive to: ${p}`),yield oV(h.signedDownloadUrl,p,c);let C=qa(p);return ye(`Cache Size: ~${Math.round(C/(1024*1024))} MB (${C} B)`),Vp()&&(yield VI(p,f)),yield E4(p,f),ye("Cache restored successfully"),h.matchedKey}catch(m){let f=m;if(f.name===Wi.name)throw m;f instanceof Ga&&typeof f.statusCode=="number"&&f.statusCode>=500?OA(`Failed to restore: ${m.message}`):gr(`Failed to restore: ${m.message}`)}finally{try{p&&(yield NC(p))}catch(m){T(`Failed to delete archive: ${m}`)}}})}i($mt,"restoreCacheV2");function x4(t,e,r){return Uh(this,arguments,void 0,function*(n,s,o,a=!1){let c=vI();T(`Cache service version: ${c}`),Hhe(n),w4(s);let l=nV();return LAe(l)?c==="v2"?yield Vmt(n,s,o,a):yield zmt(n,s,o,a):(ye(`Cache save skipped: the effective cache-mode '${l}' does not permit writes.`),T(`Skipped save for paths [${n.join(", ")}] with key '${s}'.`),-1)})}i(x4,"saveCache");function zmt(t,e,r){return Uh(this,argu Line truncated
${l}`}let p=R4(t.buffer,s[c],o[c],t.position,d);l+=`${" ".repeat(r.indent)}${N4((t.line+1).toString(),u)} | ${p.str}
`,l+=`${"-".repeat(r.indent+u+3+p.pos)}^
`;for(let m=1;m<=r.linesAfter&&!(c+m>=o.length);m++){let f=R4(t.buffer,s[c+m],o[c+m],t.position-(s[c]-s[c+m]),d);l+=`${" ".repeat(r.indent)}${N4((t.line+m+1).toString(),u)} | ${f.str}
`}return l.replace(/\n$/,"")}i(rAt,"makeSnippet");function Khe(t,e){let r="";return t.mark?(t.mark.name&&(r+=`in "${t.mark.name}" `),r+=`(${t.mark.line+1}:${t.mark.column+1})`,!e&&t.mark.snippet&&(r+=`
${t.mark.snippet}`),`${t.reason} ${r}`):t.reason}i(Khe,"formatError");var Dm=class dge extends Error{static{i(this,"YAMLException")}reason;mark;constructor(e,r){super(),this.name="YAMLException",this.reason=e,this.mark=r,this.message=Khe(this,!1),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}toString(e){return`${this.name}: ${Khe(this,e)}`}static throwAt(e,r,n,s=""){let o=0,a=0;for(let l=0;l<r;l++){let u=e.charCodeAt(l);u===10?(o++,a=l+1):u===13&&(o++,e.charCodeAt(l+1)===10&&l++,a=l+1)}let c={name:s,buffer:e,position:r,line:o,column:r-a};throw c.snippet=rAt(c),new dge(n,c)}},jt={DOCUMENT:1,SEQUENCE:2,MAPPING:3,SCALAR:4,ALIAS:5,POP:6},We={PLAIN:1,SINGLE_QUOTED:2,DOUBLE_QUOTED:3,LITERAL_BLOCK:4,FOLDED_BLOCK:5},dd={BLOCK:1,FLOW:2},Io={CLIP:1,STRIP:2,KEEP:3},nAt=-1;function Xhe(t){switch(t){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:return" ";case 9:return" ";case 110:return`
`;case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1B";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"\x85";case 95:return"\xA0";case 76:return"\u2028";case 80:return"\u2029";default:return""}}i(Xhe,"simpleEscapeSequence");var pge=new Array(256),mge=new Array(256);for(let t=0;t<256;t++)pge[t]=Xhe(t)?1:0,mge[t]=Xhe(t);function sAt(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}i(sAt,"charFromCodepoint");function oAt(t){return t>=48&&t<=57?t-48:(t|32)-97+10}i(oAt,"fromHexCode$1");function iAt(t){return t===120?2:t===117?4:8}i(iAt,"escapedHexLen$1");function rv(t,e,r){let n=0;for(;e<r;){let s=t.charCodeAt(e);if(s===10)n++,e++;else if(s===13)n++,e++,t.charCodeAt(e)===10&&e++;else if(s===32||s===9)e++;else break}return{position:e,breaks:n}}i(rv,"skipFoldedBreaks");function q4(t){return t===1?" ":`
`.repeat(t-1)}i(q4,"foldedBreaks");function aAt(t,e,r){let n="",s=e,o=e,a=e;for(;s<r;){let c=t.charCodeAt(s);if(c===10||c===13){n+=t.slice(o,a);let l=rv(t,s,r);n+=q4(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,a)}i(aAt,"getPlainValue");function cAt(t,e,r){let n="",s=e,o=e,a=e;for(;s<r;){let c=t.charCodeAt(s);if(c===39)n+=t.slice(o,s)+"'",s+=2,o=a=s;else if(c===10||c===13){n+=t.slice(o,a);let l=rv(t,s,r);n+=q4(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,r)}i(cAt,"getSingleQuotedValue");function lAt(t,e,r){let n="",s=e,o=e,a=e;for(;s<r;){let c=t.charCodeAt(s);if(c===92){n+=t.slice(o,s),s++;let l=t.charCodeAt(s);if(l===10||l===13)s=rv(t,s,r).position;else if(l<256&&pge[l])n+=mge[l],s++;else{let u=iAt(l),d=0;for(;u>0;u--){s++;let p=oAt(t.charCodeAt(s));d=(d<<4)+p}n+=sAt(d),s++}o=a=s}else if(c===10||c===13){n+=t.slice(o,a);let l=rv(t,s,r);n+=q4(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,r)}i(lAt,"getDoubleQuotedValue");function Zhe(t,e,r,n,s,o){let a=n<0?0:n,c=t.slice(e,r).replace(/\r\n?/g,`
`),l=c===""?[]:(c.endsWith(`
`)?c.slice(0,-1):c).split(`
`),u="",d=!1,p=0,m=!1;for(let f of l){let A=0;for(;A<a&&f.charCodeAt(A)===32;)A++;if(n<0||A>=f.length){p++;continue}let h=f.slice(a),E=h.charCodeAt(0);o?E===32||E===9?(m=!0,u+=`
`.repeat(d?1+p:p)):m?(m=!1,u+=`
`.repeat(p+1)):p===0?d&&(u+=" "):u+=`
`.repeat(p):u+=`
`.repeat(d?1+p:p),u+=h,d=!0,p=0}return s===Io.KEEP?u+=`
`.repeat(d?1+p:p):s!==Io.STRIP&&d&&(u+=`
`),u}i(Zhe,"getBlockValue");function uAt(t,e){if(e.valueStart===nAt)return"";let{valueStart:r,valueEnd:n}=e;if(e.fast)return t.slice(r,n);switch(e.style){case We.SINGLE_QUOTED:return cAt(t,r,n);case We.DOUBLE_QUOTED:return lAt(t,r,n);case We.LITERAL_BLOCK:return Zhe(t,r,n,e.indent,e.chomping,!1);case We.FOLDED_BLOCK:return Zhe(t,r,n,e.indent,e.chomping,!0);default:return aAt(t,r,n)}}i(uAt,"getScalarValue");var dAt=Object.assign(Object.create(null),{"!":"!","!!":"tag:yaml.org,2002:"}),pAt="-#;/?:@&=+$_.~*'()",ryr=pAt+"!,[]";function T4(t){let e="",r=0;for(;r<t.length;){if(t.charCodeAt(r)!==37){e+=t[r++];continue}let n=parseInt(t.slice(r+1,r+3),16);if(r+=3,n>=192){let s=n<224?1:n<240?2:3;for(n&=(1<<6-s)-1;s-- >0;)n=n<<6|parseInt(t.slice(r+1,r+3),16)&63,r+=3}n<65536?e+=String.fromCharCode(n):(n-=65536,e+=String.fromCharCode(55296|n>>10,56320|n&1023))}return e}i(T4,"tagPercentDecode");function fge(t,e){if(t.startsWith("!<")&&t.endsWith(">"))return T4(t.slice(2,-1));let r=t.indexOf("!",1),n=r===-1?"!":t.slice(0,r+1);return T4(e?.[n]??dAt[n]??n)+T4(t.slice(n.length))}i(fge,"tagNameFull");var Gh=-1,mAt="tag:yaml.org,2002:merge",G4={filename:"",schema:Xft,json:!1,maxTotalMergeKeys:1e4,maxAliases:-1};function fAt(t){return"tagStart"in t&&t.tagStart!==Gh?t.tagStart:"anchorStart"in t&&t.anchorStart!==Gh?t.anchorStart:"valueStart"in t&&t.valueStart!==Gh?t.valueStart:"start"in t?t.start:0}i(fAt,"eventPosition$1");function An(t,e){Dm.throwAt(t.source,t.position,e,t.filename)}i(An,"throwError$1");function Age(t,e,r,n){try{return r.finalize(n)}catch(s){if(s instanceof Dm)throw s;Dm.throwAt(t.source,e,s instanceof Error?s.message:String(s),t.filename)}}i(Age,"finalizeCollection");function AAt(t,e){let r=uAt(t.source,e),n=e.tagStart===Gh?"":t.source.slice(e.tagStart,e.tagEnd),s=t.schema.defaultScalarTag;if(n!==""){if(n==="!")return{value:r,tag:s};let o=fge(n,t.tagHandlers),a=t.schema.lookupScalarTag(o);if(a){let l=a.resolve(r,!0,o);return l===st&&An(t,`cannot resolve a node with !<${o}> explicit tag`),{value:l,tag:a}}let c=t.schema.lookupMappingTag(o)??t.schema.lookupSequenceTag(o);if(c){r!==""&&An(t,`cannot resolve a node with !<${o}> explicit tag`);let l=c.create(o);return{value:c.carrierIsResult?l:Age(t,t.position,c,l),tag:c}}An(t,`unknown scalar tag !<${o}>`)}return e.style===We.PLAIN?t.schema.resolveImplicitScalarTag(r):{value:s.resolve(r,!1,s.tagName),tag:s}}i(AAt,"constructScalar");function ege(t,e,r){let n=e.tagStart===Gh?"":t.source.slice(e.tagStart,e.tagEnd);return n===""||n==="!"?r:fge(n,t.tagHandlers)}i(ege,"collectionTagName");function hge(t){return t.nodeKind==="mapping"}i(hge,"isMappingTag");function tge(t){t.totalMergeKeys++,t.maxTotalMergeKeys!==-1&&t.totalMergeKeys>t.maxTotalMergeKeys&&An(t,`merge keys exceeded maxTotalMergeKeys (${t.maxTotalMergeKeys})`)}i(tge,"chargeMergeWork");function rge(t,e,r,n){tge(t);for(let s of n.keys(r)){if(tge(t),e.tag.has(e.value,s))continue;let o=e.tag.addPair(e.value,s,n.get(r,s));o&&An(t,o),e.overridable??=new Set,e.overridable.add(s)}}i(rge,"mergeKeys");function hAt(t,e,r,n){if(t.position=e.keyPosition,hge(n))rge(t,e,r,n);else if(n.nodeKind==="sequence"&&Array.isArray(r)){r.length>100&&An(t,"abnormal merge sequence size");for(let s of r){let o=t.nodeTags.get(s);o||An(t,"cannot merge mappings; the provided source object is unacceptable"),rge(t,e,s,o)}}else An(t,"cannot merge mappings; the provided source object is unacceptable")}i(hAt,"mergeSource");function gAt(t,e,r,n,s){if(t.position=e.keyPosition,e.keyIsMerge){hAt(t,e,n,s);return}!t.json&&e.tag.has(e.value,r)&&!e.overridable?.has(r)&&An(t,"duplicated mapping key");let o=e.tag.addPair(e.value,r,n);o&&An(t,o),e.overridable?.delete(r)}i(gAt,"addMappingValue");function v4(t,e,r){let n=t.frames[t.frames.length-1];if(n.kind==="document")n.value=e,n.hasValue=!0;else if(n.kind==="sequence"){hge(r)&&t.nodeTags.set(e,r);let s=n.tag.addItem(n.value,e,n.index++);s&&An(t,s)}else if(n.hasKey){let s=n.key;n.key=void 0,n.hasKey=!1,gAt(t,n,s,e,r)}else n.key=e,n.keyPosition=t.position,n.hasKey=!0,n.keyIsMerge=r.tagName===mAt}i(v4,"addValue");function P4(t,e,r,n,s){if(e.anchorStart!==Gh){let o={value:r,tag:n,isValueFinal:s};return t.anchors.set(t.source.slice(e.anchorStart,e.anchorEnd),o),o}return null}i(P4,"storeAnchor");function yAt(t,e){let r={...G4,...e,events:t,documents:[],eventIndex:0,position:0,frames:[],anchors:new Map,nodeTags:new Map,tagHandlers:Object.create(null),totalMergeKeys:0,aliasCount:0};for(;r.eventIndex<r.events.length;){let n=r.events[r.eventIndex++];switch(r.position=fAt(n),n.type){case jt.DOCUMENT:r.anchors=new Map,r.nodeTags=new Map,r.aliasCount=0,r.tagHandlers=Object.create(null);for(let s of n.directives)s.kind==="tag"&&(r.tagHandlers[s.handle]=s.prefix);r.frames.push({kind:"document",position:r.position,value:void 0,hasValue:!1});break;case jt.SCALAR:{let{value:s,tag:o}=AAt(r,n);P4(r,n,s,o,!0),v4(r,s,o);break}case jt.SEQUENCE:{let s=ege(r,n,"tag:yaml.org,2002:seq"),o=r.schema.lookupSequenceTag(s);o||An(r,`unknoLine truncated
`)?We.DOUBLE_QUOTED:Rge(t)))}i(WAt,"applyForceQuotesOption");function YAt(t){if(t.style!==We.PLAIN||t.isKey)return;let e=t.node.value,r=e.indexOf(`
`)!==-1;if(!cv(t.allowedStylesMask,We.LITERAL_BLOCK)){r&&(t.style=We.DOUBLE_QUOTED);return}let n=t.presenterOptions.lineWidth;if(n===-1){r&&(t.style=We.LITERAL_BLOCK);return}let s=Math.max(Math.min(n,40),n-t.shiftOfContent),o=0,a=!1;for(;o<=e.length;){let c=e.length,l=e.indexOf(`
`,o);l!==-1&&(c=l);let u=e.slice(o,c);if(u.length>s&&u[0]!==" "&&/ [^ \t]/.test(u)&&(a=!0),l===-1)break;o=l+1}a?t.style=We.FOLDED_BLOCK:r&&(t.style=We.LITERAL_BLOCK)}i(YAt,"tryLongOrMultilineAsBlock");function JAt(t){t.style===We.PLAIN&&!cv(t.allowedStylesMask,We.PLAIN)&&(t.style=Rge(t))}i(JAt,"quoteInvalidPlain");function jAt(t){cv(t.allowedStylesMask,t.style)||(t.style=We.DOUBLE_QUOTED)}i(jAt,"fallbackToDoubleQuoted");var KAt="[\\x09\\x0A\\x0D\\x20-\\x7E\\x85\\xA0-\\uD7FF\\uE000-\\uFFFD\\u{10000}-\\u{10FFFF}]",XAt="[\\n\\r]",ZAt="\\uFEFF",z4="[ \\t]",Nge=`(?:(?!(?:${XAt}|${ZAt}))${KAt})`,lv=`(?:(?!${z4})${Nge})`,Tge="[\\x09\\x20-\\uD7FF\\uE000-\\uFFFF\\u{10000}-\\u{10FFFF}]",vge="[-?:,\\[\\]{}#&*!|>'\"%@`]",eht="[,\\[\\]{}]",O4=lv,M4=`(?:(?!${eht})${lv})`,tht=`(?:(?:(?!${vge})${lv})|[?:-](?=${O4}))`,rht=`(?:(?:(?!${vge})${lv})|[?:-](?=${M4}))`,Pge=`(?:(?:(?![:#])${O4})|:(?=${O4}))#*`,_ge=`(?:(?:(?![:#])${M4})|:(?=${M4}))#*`,Qge=`(?:${z4}*${Pge})*`,Dge=`(?:${z4}*${_ge})*`,kge=`${tht}#*${Qge}`,Lge=`${rht}#*${Dge}`,nht=kge,sht=Lge,oht=`\\n+${Pge}${Qge}`,iht=`\\n+${_ge}${Dge}`,aht=`${kge}(?:${oht})*`,cht=`${Lge}(?:${iht})*`,nyr=new RegExp(`^(?:${aht})$`,"u"),syr=new RegExp(`^(?:${cht})$`,"u"),oyr=new RegExp(`^(?:${nht})$`,"u"),iyr=new RegExp(`^(?:${sht})$`,"u"),ayr=new RegExp(`^(?:${Tge})*$`,"u"),cyr=new RegExp(`^(?:${Tge}|\\n)*$`,"u"),lyr=new RegExp(`^(?:${Nge}|\\n)*$`,"u");var lht={indent:2,seqNoIndent:!1,seqInlineFirst:!0,lineWidth:80,flowBracketPadding:!1,flowSkipCommaSpace:!1,flowSkipColonSpace:!1,quoteFlowKeys:!1,quoteStyle:"single",forceQuotes:!1,scalarStyleRules:Object.keys(age).map(t=>Reflect.get(age,t)),tagBeforeAnchor:!1};var uyr={...lht,schema:eAt,skipInvalid:!1,noRefs:!1,flowLevel:-1,sortKeys:!1,transform:i(()=>{},"transform")};var dyr=jt.DOCUMENT,pyr=jt.SEQUENCE,myr=jt.MAPPING,fyr=jt.SCALAR,Ayr=jt.ALIAS,hyr=jt.POP,gyr=We.PLAIN,yyr=We.SINGLE_QUOTED,Eyr=We.DOUBLE_QUOTED,Cyr=We.LITERAL_BLOCK,Iyr=We.FOLDED_BLOCK,wyr=dd.BLOCK,Syr=dd.FLOW,xyr=Io.CLIP,byr=Io.STRIP,Byr=Io.KEEP;var ui=R(require("fs"),1),Os=R(require("path"),1);var Ywe=R(REe(),1);var wv=class t{static{i(this,"Git")}static protoRegexp=new RegExp("^[a-zA-Z0-9]+://");static supportedProtos={http:{},https:{},ssh:{},git:{}};static parseURL(e){let r=e.match(t.protoRegexp);if(r&&r.length>0){let n=r[0].toLowerCase();if(n=n.slice(0,n.lastIndexOf("://")),!(n in t.supportedProtos))throw new Error(`Invalid protocol: ${n}`);return t.fromURL(new URL(e))}throw new Error("Unknown protocol")}static fromURL(e){let r=new URL(e.toString());r.hash="";let n;return(e.username||e.password)&&(n={username:e.username,password:e.password,passwordSet:e.password!==""}),{scheme:e.protocol.slice(0,-1),user:n,host:`${e.hostname}${e.port?":"+e.port:""}`,path:e.pathname,fragment:t.splitGitFragment(e.hash),remote:r.toString()}}static splitGitFragment(e){if(e==="")return;let[r,n]=e.slice(1).split(":");return{ref:r,subdir:n}}static parseRef(e){let r={},n;if(e.startsWith("./")||e.startsWith("../"))throw new Error("Invalid argument");if(e.startsWith("github.com/"))r.indistinguishableFromLocal=!0,n=t.fromURL(new URL("https://"+e));else if(n=t.parseURL(e),["http","git"].includes(n.scheme)&&(r.unencryptedTCP=!0),["http","https"].includes(n.scheme)&&!n.path.endsWith(".git"))throw new Error("Invalid argument");r.remote=n.remote,r.indistinguishableFromLocal&&(r.remote=r.remote.split("://")[1]),n.fragment&&(r.commit=n.fragment.ref,r.subDir=n.fragment.subdir);let s=r.remote.split("/");return r.shortName=s[s.length-1].replace(".git",""),r}};var hY=R(require("fs"),1),jIe=R(require("os"),1),dw=R(require("path"),1);var gW=R(require("fs"),1),VEe=R(require("os"),1),WEe=R(require("path"),1),YEe=R(zEe(),1);var bv=class t{static{i(this,"Context")}static _tmpDir=gW.default.mkdtempSync(WEe.default.join(t.ensureDirExists(process.env.RUNNER_TEMP||VEe.default.tmpdir()),"docker-actions-toolkit-"));static ensureDirExists(e){return gW.default.mkdirSync(e,{recursive:!0}),e}static tmpDir(){return t._tmpDir}static tmpName(e){return YEe.tmpNameSync(e)}};var Yl=class{static{i(this,"Exec")}static async exec(e,r,n){return T(`Exec.exec: ${e} ${r?.join(" ")}`),Fu(e,r,n)}static async getExecOutput(e,r,n){return T(`Exec.getExecOutput: ${e} ${r?.join(" ")}`),eC(e,r,n)}};var AY=R(require("crypto"),1),YIe=R(require("fs"),1),uw=R(require("path"),1),JIe=R(GIe(),1);var Ye=class t extends Error{static{i(this,"CsvError")}constructor(e,r,n,...s){Array.isArray(r)&&(r=r.join(" ").trim()),super(r),Error.captureStackTrace!==void 0&&Error.captureStackTrace(this,t),this.code=e;for(let o of s)for(let a in o){let c=o[a];this[a]=Buffer.isBuffer(c)?c.toString(n.encoding):c==null?c:JSON.parse(JSON.stringify(c))}}};var lw=i(function(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)},"is_object");var uP=i(function(t){let e=[];for(let r=0,n=t.length;r<n;r++){let s=t[r];if(s==null||s===!1)e[r]={disabled:!0};else if(typeof s=="string"||typeof s=="number")e[r]={name:`${s}`};else if(lw(s)){if(typeof s.name!="string")throw new Ye(" Line truncated
`,a).length:p,u?(c===null?0:c.length)+l.length:0,u?l.length+p:0);return m<f},"__needMoreData"),parse:i(function(n,s,o,a){let{bom:c,comment_no_infix:l,delimiter_auto:u,encoding:d,from_line:p,ltrim:m,max_record_size:f,raw:A,relax_quotes:h,rtrim:E,skip_empty_lines:C,to:w,to_line:x}=this.options,{comment:b,escape:N,quote:P,record_delimiter:_}=this.options,{bomSkipped:J,delimiterDiscovered:Ce,delimiterBufPrevious:ae,rawBuffer:qe,escapeIsQuote:ne}=this.state;if(!Ce&&u){let dt;if(ae===void 0?dt=n:ae!==void 0&&n===void 0?dt=ae:dt=Buffer.concat([ae,n]),n=void 0,s||dt.length>u.size)this.options.delimiter=[Buffer.from(zIe(dt,this.options.delimiter_auto))],this.state.previousBuf=dt,this.state.delimiterBufPrevious=void 0,this.state.delimiterDiscovered=!0;else{this.state.delimiterBufPrevious=dt;return}}let{previousBuf:Z}=this.state,U;if(Z===void 0)if(n===void 0){a();return}else U=n;else Z!==void 0&&n===void 0?U=Z:U=Buffer.concat([Z,n]);if(J===!1)if(c===!1)this.state.bomSkipped=!0;else if(U.length<3){if(s===!1){this.state.previousBuf=U;return}}else{for(let dt in fg)if(fg[dt].compare(U,0,fg[dt].length)===0){let Sa=fg[dt].length;this.state.bufBytesStart+=Sa,U=U.slice(Sa);let gu=mg({...this.original_options,encoding:dt});for(let rr in gu)this.options[rr]=gu[rr];({comment:b,escape:N,quote:P}=this.options);break}this.state.bomSkipped=!0}let ut=U.length,ee;for(ee=0;ee<ut&&!this.__needMoreData(ee,ut,s);ee++){if(this.state.wasRowDelimiter===!0&&(this.info.lines++,this.state.wasRowDelimiter=!1),x!==-1&&this.info.lines>x){this.state.stop=!0,a();return}this.state.quoting===!1&&_.length===0&&this.__autoDiscoverRecordDelimiter(U,ee)&&(_=this.options.record_delimiter);let dt=U[ee];if(A===!0&&qe.append(dt),(dt===Owt||dt===Mwt)&&this.state.wasRowDelimiter===!1&&(this.state.wasRowDelimiter=!0),this.state.escaping===!0)this.state.escaping=!1;else{if(N!==null&&this.state.quoting===!0&&this.__isEscape(U,ee,dt)&&ee+N.length<ut)if(ne){if(this.__isQuote(U,ee+N.length)){this.state.escaping=!0,ee+=N.length-1;continue}}else{this.state.escaping=!0,ee+=N.length-1;continue}if(this.state.commenting===!1&&this.__isQuote(U,ee))if(this.state.quoting===!0){let rr=U[ee+P.length],xa=E&&this.__isCharTrimable(U,ee+P.length),Vs=b!==null&&this.__compareBytes(b,U,ee+P.length,rr),pp=this.__isDelimiter(U,ee+P.length,rr),Hx=_.length===0?this.__autoDiscoverRecordDelimiter(U,ee+P.length):this.__isRecordDelimiter(rr,U,ee+P.length);if(N!==null&&this.__isEscape(U,ee,dt)&&this.__isQuote(U,ee+N.length))ee+=N.length-1;else if(!rr||pp||Hx||Vs||xa){this.state.quoting=!1,this.state.wasQuoting=!0,ee+=P.length-1;continue}else if(h===!1){let SK=this.__error(new Ye("CSV_INVALID_CLOSING_QUOTE",["Invalid Closing Quote:",`got "${String.fromCharCode(rr)}"`,`at line ${this.info.lines}`,"instead of delimiter, record delimiter, trimable character","(if activated) or comment"],this.options,this.__infoField()));if(SK!==void 0)return SK}else this.state.quoting=!1,this.state.wasQuoting=!0,this.state.field.prepend(P),ee+=P.length-1}else if(this.state.field.length!==0){if(h===!1){let rr=this.__infoField(),xa=Object.keys(fg).map(pp=>fg[pp].equals(this.state.field.toString())?pp:!1).filter(Boolean)[0],Vs=this.__error(new Ye("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(rr.column)} at line ${rr.lines}, value is ${JSON.stringify(this.state.field.toString(d))}`,xa?`(${xa} bom)`:void 0],this.options,rr,{field:this.state.field}));if(Vs!==void 0)return Vs}}else{this.state.quoting=!0,ee+=P.length-1;continue}if(this.state.quoting===!1){let rr=this.__isRecordDelimiter(dt,U,ee);if(rr!==0){if(this.state.commenting&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0)this.info.comment_lines++;else{if(this.state.enabled===!1&&this.info.lines+(this.state.wasRowDelimiter===!0?1:0)>=p){this.state.enabled=!0,this.__resetField(),this.__resetRecord(),ee+=rr-1;continue}if(C===!0&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0){this.info.empty_lines++,ee+=rr-1;continue}this.info.bytes=this.state.bufBytesStart+ee;let pp=this.__onField();if(pp!==void 0)return pp;this.info.bytes=this.state.bufBytesStart+ee+rr;let Hx=this.__onRecord(o);if(Hx!==void 0)return Hx;if(w!==-1&&this.info.records>=w){this.state.stop=!0,a();return}}this.state.commenting=!1,ee+=rr-1;continue}if(this.state.commenting)continue;if(b!==null&&(l===!1||this.state.record.length===0&&this.state.field.length===0)&&this.__compareBytes(b,U,ee,dt)!==0){this.state.commenting=!0;continue}let xa=this.__isDelimiter(U,ee,dt);if(xa!==0){this.info.bytes=this.state.bufBytesStart+ee;let Vs=this.__onField();if(Vs!==void 0)return Vs;ee+=xa-1;continue}}}if(this.state.commenting===!1&&f!==0&&this.state.record_length+this.state.field.length>f)return this.__error(new Ye("CSV_MAX_RECORD_SIZE",["Max Record Size:","record exceed the maximum number of tolerated bytes",`of ${f}`,`at line ${this.info.lines}`],this.options,this.__infoField()));let Sa=m===!1|| Line truncated
`,o),Buffer.from(`
`,o),Buffer.from("\r",o)];e:for(let c=0;c<a.length;c++){let l=a[c].length;for(let u=0;u<l;u++)if(a[c][u]!==n[s+u])continue e;return this.options.record_delimiter.push(a[c]),this.state.recordDelimiterMaxLength=a[c].length,a[c].length}return 0},"__autoDiscoverRecordDelimiter"),__error:i(function(n){let{encoding:s,raw:o,skip_records_with_error:a}=this.options,c=typeof n=="string"?new Error(n):n;if(a){if(this.state.recordHasError=!0,this.options.on_skip!==void 0)try{this.options.on_skip(c,o?this.state.rawBuffer.toString(s):void 0)}catch(l){return l}return}else return c},"__error"),__infoDataSet:i(function(){return{...this.info,columns:this.options.columns}},"__infoDataSet"),__infoRecord:i(function(){let{columns:n,raw:s,encoding:o}=this.options;return{...this.__infoDataSet(),bytes_records:this.info.bytes,error:this.state.error,header:n===!0,index:this.state.record.length,raw:s?this.state.rawBuffer.toString(o):void 0}},"__infoRecord"),__infoField:i(function(){let{columns:n}=this.options,s=Array.isArray(n),o=this.info.bytes_records;return{...this.__infoRecord(),bytes_records:o,column:s===!0?n.length>this.state.record.length?n[this.state.record.length].name:null:this.state.record.length,quoting:this.state.wasQuoting}},"__infoField")}},"transform");var WIe=i(function(t,e={}){typeof t=="string"&&(t=Buffer.from(t));let r=e&&e.objname?Object.create(null):[],n=dP(e),s=i(c=>{n.options.objname===void 0?r.push(c):r[c[0]]=c[1]},"push"),o=i(()=>{},"close"),a=n.parse(t,!0,s,o);if(a!==void 0)throw a;return r},"parse");var hd=class t{static{i(this,"Util")}static getInputList(e,r){return this.getList(ki(e,{trimWhitespace:r?.trimWhitespace!==!1}),r)}static getList(e,r){let n=[];if(e=="")return n;let s=WIe(e,{columns:!1,relaxQuotes:!0,comment:r?.comment,comment_no_infix:r?.commentNoInfix,relaxColumnCount:!0,skipEmptyLines:!0,quote:r?.quote});for(let o of s)o.length==1?r?.ignoreComma?n.push(o[0]):n.push(...o[0].split(",")):r?.ignoreComma?n.push(o.join(",")):n.push(...o);return n.filter(o=>o).map(o=>r?.trimWhitespace===!1?o:o.trim())}static getInputNumber(e){let r=ki(e);if(r)return parseInt(r)}static async asyncForEach(e,r){for(let n=0;n<e.length;n++)await r(e[n],n,e)}static isValidURL(e){let r;try{r=new URL(e)}catch{return!1}return r.protocol==="http:"||r.protocol==="https:"}static isValidRef(e){if(t.isValidURL(e))return!0;for(let r of["git://","github.com/","git@"])if(e.startsWith(r))return!0;return!1}static async powershellCommand(e,r){let n=await Ss("powershell",!0),s=e.replace(/'/g,"''").replace(/"|\n|\r/g,""),o=[];if(r)for(let a in r)o.push(`-${a} '${r[a].replace(/'/g,"''").replace(/"|\n|\r/g,"")}'`);return{command:`"${n}"`,args:["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",`& '${s}' ${o.join(" ")}`]}}static isDirectory(e){try{return YIe.default.lstatSync(e).isDirectory()}catch{}return!1}static trimPrefix(e,r){return!e||!r||e.indexOf(r)!==0?e:e.substring(r.length)}static trimSuffix(e,r){if(!e||!r)return e;let n=e.lastIndexOf(r);return n===-1||n+r.length!==e.length?e:e.substring(0,n)}static sleep(e){return new Promise(r=>setTimeout(r,e*1e3))}static hash(e){return AY.default.createHash("sha256").update(e).digest("hex")}static parseBool(e){if(e===void 0)return!1;switch(e){case"1":case"t":case"T":case"true":case"TRUE":case"True":return!0;case"0":case"f":case"F":case"false":case"FALSE":case"False":return!1;default:throw new Error(`parseBool syntax error: ${e}`)}}static parseBoolOrDefault(e,r=!1){try{return this.parseBool(e)}catch{return r}}static formatFileSize(e){if(e===0)return"0 Bytes";let r=1024,n=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],s=Math.floor(Math.log(e)/Math.log(r));return parseFloat((e/Math.pow(r,s)).toFixed(2))+" "+n[s]}static generateRandomString(e=10){return AY.default.randomBytes(Math.ceil(e/2)).toString("hex").slice(0,e)}static compileHandlebars(e,r,n){return JIe.default.compile(e,r)(n)}static stringToUnicodeEntities(e){return Array.from(e).map(r=>`&#x${r.charCodeAt(0).toString(16)};`).join("")}static countLines(e){return e.split(/\r\n|\r|\n/).length}static isPathRelativeTo(e,r){let n=uw.default.resolve(e);return uw.default.resolve(r).startsWith(n.endsWith(uw.default.sep)?n:`${n}${uw.default.sep}`)}static formatDuration(e){if(e===0)return"0s";let r=Math.floor(e/1e9),n=Math.floor(r/3600),s=Math.floor(r%3600/60),o=r%60,a=[];return n&&a.push(`${n}h`),s&&a.push(`${s}m`),(o||a.length===0)&&a.push(`${o}s`),a.join("")}};var gd=class t{static{i(this,"Docker")}static get configDir(){return process.env.DOCKER_CONFIG||dw.default.join(jIe.default.homedir(),".docker")}static configFile(){let e=dw.default.join(t.configDir,"config.json");if(hY.default.existsSync(e))return JSON.parse(hY.default.readFileSync(e,{encoding:"utf-8"}))}static async isAvailable(){return await Ss("docker",!0).then(e=>(T(`Docker.isAvailable ok: ${e}`),!0)).catch(e=>(T(`Docker.isAvailable error: ${e}`),!1))}static async isDaemonRunning(){try{return await t.getExecOutput(["version"],{silent:!0}),!0} Line truncated
`+t.errors.map(e=>` - ${e.message}`).join(`
`)}i(vSt,"_buildMessageForResponseErrors");var PSt=class extends Error{static{i(this,"GraphqlResponseError")}constructor(t,e,r){super(vSt(r)),this.request=t,this.headers=e,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},_St=["method","baseUrl","url","headers","request","query","mediaType","operationName"],QSt=["query","method","url"],Dwe=/\/api\/v3\/?$/;function DSt(t,e,r){if(r){if(typeof e=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let a in r)if(QSt.includes(a))return Promise.reject(new Error(`[@octokit/graphql] "${a}" cannot be used as variable name`))}let n=typeof e=="string"?Object.assign({query:e},r):e,s=Object.keys(n).reduce((a,c)=>_St.includes(c)?(a[c]=n[c],a):(a.variables||(a.variables={}),a.variables[c]=n[c],a),{}),o=n.baseUrl||t.endpoint.DEFAULTS.baseUrl;return Dwe.test(o)&&(s.url=o.replace(Dwe,"/api/graphql")),t(s).then(a=>{if(a.data.errors){let c={};for(let l of Object.keys(a.headers))c[l]=a.headers[l];throw new PSt(s,c,a.data)}return a.data.data})}i(DSt,"graphql");function RY(t,e){let r=t.defaults(e);return Object.assign(i((s,o)=>DSt(r,s,o),"newApi"),{defaults:RY.bind(null,r),endpoint:r.endpoint})}i(RY,"withDefaults");var jwr=RY(Aw,{headers:{"user-agent":`octokit-graphql.js/${TSt} ${yd()}`},method:"POST",url:"/graphql"});function kwe(t){return RY(t,{method:"POST",url:"/graphql"})}i(kwe,"withCustomRequest");var NY="(?:[a-zA-Z0-9_-]+)",Lwe="\\.",Owe=new RegExp(`^${NY}${Lwe}${NY}${Lwe}${NY}$`),kSt=Owe.test.bind(Owe);async function LSt(t){let e=kSt(t),r=t.startsWith("v1.")||t.startsWith("ghs_"),n=t.startsWith("ghu_");return{type:"token",token:t,tokenType:e?"app":r?"installation":n?"user-to-server":"oauth"}}i(LSt,"auth");function OSt(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}i(OSt,"withAuthorizationPrefix");async function MSt(t,e,r,n){let s=e.endpoint.merge(r,n);return s.headers.authorization=OSt(t),e(s)}i(MSt,"hook");var Mwe=i(function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof e!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(LSt.bind(null,e),{hook:MSt.bind(null,e)})},"createTokenAuth2");var TY="7.0.6";var Fwe=i(()=>{},"noop"),FSt=console.warn.bind(console),USt=console.error.bind(console);function qSt(t={}){return typeof t.debug!="function"&&(t.debug=Fwe),typeof t.info!="function"&&(t.info=Fwe),typeof t.warn!="function"&&(t.warn=FSt),typeof t.error!="function"&&(t.error=USt),t}i(qSt,"createLogger");var Uwe=`octokit-core.js/${TY} ${yd()}`,SP=class{static{i(this,"Octokit")}static VERSION=TY;static defaults(e){return class extends this{static{i(this,"OctokitWithDefaults")}constructor(...n){let s=n[0]||{};if(typeof e=="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}}}static plugins=[];static plugin(...e){let r=this.plugins;return class extends this{static{i(this,"NewOctokit")}static plugins=r.concat(e.filter(s=>!r.includes(s)))}}constructor(e={}){let r=new mwe.Collection,n={baseUrl:Aw.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=e.userAgent?`${e.userAgent} ${Uwe}`:Uwe,e.baseUrl&&(n.baseUrl=e.baseUrl),e.previews&&(n.mediaType.previews=e.previews),e.timeZone&&(n.headers["time-zone"]=e.timeZone),this.request=Aw.defaults(n),this.graphql=kwe(this.request).defaults(n),this.log=qSt(e.log),this.hook=r,e.authStrategy){let{authStrategy:o,...a}=e,c=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:a},e.auth));r.wrap("request",c.hook),this.auth=c}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=Mwe(e.auth);r.wrap("request",o.hook),this.auth=o}let s=this.constructor;for(let o=0;o<s.plugins.length;++o)Object.assign(this,s.plugins[o](this,e))}request;graphql;log;hook;auth};var vY="17.0.0";var GSt={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addRepoAccessToSelfHostedRunnerGroupInOrg:["PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables" Line truncated
More info: ${l.url}`);let f=l.range&&l.range.length>0?l.range[0]?.start.line:void 0,A=!1;for(let h of a)if(h.remote||h.path.endsWith(u)&&h.content===d){c.push({title:p,message:m,file:h.path,startLine:f}),A=!0;break}A||T(`Buildx.convertWarningsToGitHubAnnotations: skipping warning without matching Dockerfile ${u}: ${p}`)}return c}};function jwe(){return{registry:ki("registry"),username:ki("username"),password:ki("password"),scope:ki("scope"),ecr:ki("ecr"),logout:Noe("logout"),registryAuth:ki("registry-auth")}}i(jwe,"getInputs");function Kwe(t){if(t.registryAuth&&(t.registry||t.username||t.password||t.scope||t.ecr))throw new Error("Cannot use registry-auth with other inputs");let e=[];if(t.registryAuth)e=Bge(t.registryAuth).map(r=>{r.password&&vn(r.password);let n=r.registry||"docker.io";return{registry:n,username:r.username,password:r.password,scope:r.scope,ecr:String(r.ecr??"")||"auto",configDir:bP(n,r.scope)}});else{let r=t.registry||"docker.io";e.push({registry:r,username:t.username,password:t.password,scope:t.scope,ecr:t.ecr||"auto",configDir:bP(r,t.scope)})}if(e.length==0)throw new Error("No registry to login");return e}i(Kwe,"getAuthList");function bP(t,e){if(XSt()||!e||e==="")return"";let r=t.indexOf("://"),n=r===-1?t:new URL(`registry://${t.slice(r+3)}`).host,s=Wm.default.resolve(xP.configDir,"config"),o=Wm.default.resolve(s,n==="docker.io"?"registry-1.docker.io":n);if(!Jwe(s,o))throw new Error(`Invalid registry '${t}': resolved config path escapes the Buildx config directory`);let a=e.split("@");if(a.length>2)throw new Error(`Invalid scope '${e}': scope can contain at most one @ separator`);let[c,l]=a;if(l!==void 0&&!/^[a-z]+(,[a-z]+)*$/.test(l))throw new Error(`Invalid scope '${e}': scope actions must be lowercase names separated by commas`);let u=l===void 0?"":`@${l}`;if(c==="")return`${o}${u}`;let d=Wm.default.resolve(o,c);if(!Jwe(o,d))throw new Error(`Invalid scope '${e}': resolved config path escapes the Buildx config directory`);return`${d}${u}`}i(bP,"scopeToConfigDir");function Jwe(t,e){let r=Wm.default.relative(t,e);return r!==""&&r!==".."&&!r.startsWith(`..${Wm.default.sep}`)&&!Wm.default.isAbsolute(r)}i(Jwe,"isChildPath");function XSt(){return process.env.DOCKER_LOGIN_SCOPE_DISABLED?hd.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED):!1}i(XSt,"scopeDisabled");var VGe=R(X1e(),1),WGe=R(vGe(),1),EK=R(lu(),1);var DGe=R(require("net"),1),kGe=R(require("tls"),1),LGe=R(om(),1),OGe=require("events");var PGe=R(require("net"),1),_Ge=R(require("http"),1),QGe=require("https");var dl=Symbol("AgentBaseInternalState"),SM=class extends _Ge.Agent{static{i(this,"Agent")}constructor(e){super(e),this[dl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(`
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new PGe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?QGe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),typeof c.addRequest=="function")try{return c.addRequest(e,s)}catch(l){return n(l)}this[dl].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[dl].currentSocket;if(this[dl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[dl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[dl]&&(this[dl].defaultPort=e)}get protocol(){return this[dl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[dl]&&(this[dl].protocol=e)}};var hK=require("url");function xM(){return async({response:t,scheme:e})=>{if(e.toLowerCase()!=="negotiate")throw new Error(`Expected Negotiate scheme but got "${e}"`);let r;try{r=await import("kerberos")}catch{throw new Error('The "kerberos" package is required for Negotiate proxy authentication. Install it with: npm install kerberos')}let n=t.headers["proxy-authenticate"]||"",s=Array.isArray(n)?n[0]:n,o=typeof s=="string"&&s.includes(" ")?s.split(" ").slice(1).join(" "):void 0,c=await(await r.initializeClient("HTTP@proxy",{mechOID:r.GSS_MECH_OID_SPNEGO})).step(o||"");if(!c)throw new Error("Kerberos client.step() returned no token");return{headers:{"Proxy-Authorization":`Negotiate ${c}`}}}}i(xM,"createNegotiateAuth");var $y=(0,LGe.default)("http-proxy-agent"),Ux=class extends SM{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new hK.URL(e):e,this.proxyHeaders=r?.headers??{},$y("Creating new HttpProxyAgent instance: %o",this.proxy.href),r?.negotiate?this.onProxyAuth=xM():r?.onProxyAuth&&(this.onProxyAuth=r.onProxyAuth);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?B$t(r,"headers","onProxyAuth","negotiate"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",a=`${s}//${o}`,c=new hK.URL(e.path,a);r.port!==80&&(c.port=String(r.port)),e.path=String(c);let l=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let u=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;l["Proxy-Authorization"]=`Basic ${Buffer.from(u).toString("base64")}`}l["Proxy-Connection"]||(l["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let u of Object.keys(l)){let d=l[u];d&&e.setHeader(u,d)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;$y("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&($y("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r
\r
`)+4,e.outputData[0].data=e._header+n.substring(s),$y("Output buffer: %o",e.outputData[0].data));let o;this.proxy.protocol==="https:"?($y("Creating `tls.Socket`: %o",this.connectOpts),o=kGe.connect(this.connectOpts)):($y("Creating `net.Socket`: %o",this.connectOpts),o=DGe.connect(this.connectOpts)),await(0,OGe.once)(o,"connect");let a={socket:o};return e.emit("proxyConnect",a),this.emit("proxyConnect",a,e),e.emit("proxy",{proxy:this.proxy.href,socket:o}),o}};Ux.protocols=["http","https"];function B$t(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(B$t,"omit");var ml=R(require("net"),1),qx=R(require("tls"),1),HGe=R(require("assert"),1),$Ge=R(om(),1);var MGe=R(require("net"),1),FGe=R(require("http"),1),UGe=require("https");var pl=Symbol("AgentBaseInternalState"),bM=class extends FGe.Agent{static{i(this,"Agent")}constructor(e){super(e),this[pl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(`
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new MGe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?UGe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),typeof c.addRequest=="function")try{return c.addRequest(e,s)}catch(l){return n(l)}this[pl].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[pl].currentSocket;if(this[pl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[pl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[pl]&&(this[pl].defaultPort=e)}get protocol(){return this[pl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[pl]&&(this[pl].protocol=e)}};var zGe=require("url");var qGe=R(om(),1);var BM=(0,qGe.default)("https-proxy-agent:parse-proxy-response");function gK(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let d=t.read();d?u(d):t.once("readable",o)}i(o,"read");function a(){t.removeListener("end",c),t.removeListener("error",l),t.removeListener("readable",o)}i(a,"cleanup");function c(){a(),BM("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),BM("onerror %o",d),r(d)}i(l,"onerror");function u(d){s.push(d),n+=d.length;let p=Buffer.concat(s,n),m=p.indexOf(`\r
\r
`);if(m===-1){BM("have not received end of HTTP headers yet..."),o();return}let f=p.slice(0,m).toString("ascii").split(`\r
`),A=f.shift();if(!A)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let h=A.split(" "),E=+h[1],C=h.slice(2).join(" "),w={};for(let x of f){if(!x)continue;let b=x.indexOf(":");if(b===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${x}"`));let N=x.slice(0,b).toLowerCase(),P=x.slice(b+1).trimStart(),_=w[N];typeof _=="string"?w[N]=[_,P]:Array.isArray(_)?_.push(P):w[N]=P}BM("got proxy server response: %o %o",A,w),a(),e({connect:{statusCode:E,statusText:C,headers:w},buffered:p})}i(u,"ondata"),t.on("error",l),t.on("end",c),o()})}i(gK,"parseProxyResponse");var Of=(0,$Ge.default)("https-proxy-agent"),RM=i(t=>t.servername===void 0&&t.host&&!ml.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),Gx=class extends bM{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new zGe.URL(e):e,this.proxyHeaders=r?.headers??{},Of("Creating new HttpsProxyAgent instance: %o",this.proxy.href),r?.negotiate?this.onProxyAuth=xM():r?.onProxyAuth&&(this.onProxyAuth=r.onProxyAuth);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?yK(r,"headers","onProxyAuth","negotiate"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(Of("Creating `tls.Socket`: %o",this.connectOpts),s=qx.connect(RM(this.connectOpts))):(Of("Creating `net.Socket`: %o",this.connectOpts),s=ml.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=ml.isIPv6(r.host)?`[${r.host}]`:r.host,c=`CONNECT ${a}:${r.port} HTTP/1.1\r
`;if(n.username||n.password){let m=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(m).toString("base64")}`}o.Host=`${a}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let m of Object.keys(o))c+=`${m}: ${o[m]}\r
`;let l=gK(s);s.write(`${c}\r
`);let{connect:u,buffered:d}=await l;if(e.emit("proxyConnect",u),this.emit("proxyConnect",u,e),e.emit("proxy",{proxy:this.proxy.href,socket:s}),u.statusCode===200)return e.once("socket",GGe),r.secureEndpoint?(Of("Upgrading socket connection to TLS"),qx.connect({...yK(RM(r),"host","path","port"),socket:s})):s;if(u.statusCode===407&&this.onProxyAuth){Of("Got 407 response, invoking onProxyAuth callback"),s.destroy();let m=u.headers["proxy-authenticate"]||"",f=Array.isArray(m)?m[0].split(/\s/)[0]:m.split(/\s/)[0],A=await this.onProxyAuth({response:u,scheme:f});return this._connectWithAuth(e,r,A.headers)}s.destroy();let p=new ml.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{Of("Replaying proxy buffer for failed request"),(0,HGe.default)(m.listenerCount("data")>0),m.push(d),m.push(null)}),p}async _connectWithAuth(e,r,n){let{proxy:s}=this,o;s.protocol==="https:"?o=qx.connect(RM(this.connectOpts)):o=ml.connect(this.connectOpts);let a=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},c=ml.isIPv6(r.host)?`[${r.host}]`:r.host,l=`CONNECT ${c}:${r.port} HTTP/1.1\r
`;if(s.username||s.password){let p=`${decodeURIComponent(s.username)}:${decodeURIComponent(s.password)}`;a["Proxy-Authorization"]=`Basic ${Buffer.from(p).toString("base64")}`}Object.assign(a,n),a.Host=`${c}:${r.port}`,a["Proxy-Connection"]||(a["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let p of Object.keys(a))l+=`${p}: ${a[p]}\r
`;let u=gK(o);o.write(`${l}\r
`);let{connect:d}=await u;if(e.emit("proxyConnect",d),this.emit("proxyConnect",d,e),d.statusCode===200)return e.once("socket",GGe),r.secureEndpoint?(Of("Upgrading socket connection to TLS"),qx.connect({...yK(RM(r),"host","path","port"),socket:o})):o;throw o.destroy(),new Error(`Proxy authentication failed with status ${d.statusCode} after retry`)}};Gx.protocols=["http","https"];function GGe(t){setImmediate(()=>{t.resume()})}i(GGe,"resume");function yK(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(yK,"omit");var CK=/^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/,R$t=/public\.ecr\.aws|ecr-public\.aws\.com/,YGe=i(t=>CK.test(t)||NM(t),"isECR"),NM=i(t=>R$t.test(t),"isPubECR"),N$t=i(t=>{if(NM(t))return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1";let e=t.match(CK);return e?e[4]:""},"getRegion"),T$t=i(t=>{if(NM(t))return[];let e=t.match(CK);if(!e)return[];let r=[e[2]];return process.env.AWS_ACCOUNT_IDS&&r.push(...process.env.AWS_ACCOUNT_IDS.split(",")),r.filter((n,s)=>r.indexOf(n)===s)},"getAccountIDs"),JGe=i(async(t,e,r)=>{let n=N$t(t),s=T$t(t),o={};s.length>0&&(T(`Requesting AWS ECR auth token for ${s.join(", ")}`),o.registryIds=s);let a,c=process.env.http_proxy||process.env.HTTP_PROXY||"";c&&(T(`Using http proxy ${c}`),a=new Ux(c));let l,u=process.env.https_proxy||process.env.HTTPS_PROXY||"";u&&(T(`Using https proxy ${u}`),l=new Gx(u));let d=e&&r?{accessKeyId:e,secretAccessKey:r}:void 0;if(NM(t)){ye(`AWS Public ECR detected with ${n} region`);let m=await new WGe.ECRPUBLIC({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new EK.NodeHttpHandler({httpAgent:a,httpsAgent:l})}).getAuthorizationToken(o);if(!m.authorizationData||!m.authorizationData.authorizationToken)throw new Error("Could not retrieve an authorization token from AWS Public ECR");let A=Buffer.from(m.authorizationData.authorizationToken,"base64").toString("utf-8").split(":",2);return vn(A[0]),vn(A[1]),[{registry:"public.ecr.aws",username:A[0],password:A[1]}]}else{ye(`AWS ECR detected with ${n} region`);let m=await new VGe.ECR({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new EK.NodeHttpHandler({httpAgent:a,httpsAgent:l})}).getAuthorizationToken(o);if(!Array.isArray(m.authorizationData)||!m.authorizationData.length)throw new Error("Could not retrieve an authorization token from AWS ECR");let f=[];for(let A of m.authorizationData){let E=Buffer.from(A.authorizationToken||"","base64").toString("utf-8").split(":",2);vn(E[0]),vn(E[1]),f.push({registry:A.proxyEndpoint||"",username:E[0],password:E[1]})}return f}},"getRegistriesData");var jGe=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;function P$t(t){return typeof t=="string"&&jGe.test(t)}i(P$t,"validate");var IK=P$t;var _$t=new Set(["","docker.io","registry-1.docker.io","registry-1-stage.docker.io","dhi.io"]),Q$t=300,KGe=300,XGe=21600,ZGe=5,eHe=i((t,e)=>process.env.DOCKERHUB_OIDC_CONNECTIONID!==void 0&&!e&&_$t.has(t),"isDockerHubOIDC"),tHe=i(async(t,e)=>{let r=process.env.DOCKERHUB_OIDC_CONNECTIONID?.trim();if(!r)throw new Error("DOCKERHUB_OIDC_CONNECTIONID is required for Docker Hub OIDC login");if(!IK(r))throw new Error("Invalid DOCKERHUB_OIDC_CONNECTIONID. Must be a valid UUID.");let n=D$t(),s=t==="registry-1-stage.docker.io"?"identity-stage.docker.com":"identity.docker.com",o=`https://${s}`;ye(`Docker Hub OIDC detected for ${t||"docker.io"}`),T(`Docker Hub OIDC token audience: ${o}`),T(`Docker Hub OIDC token expiration: ${n}s`),ye("Retrieving GitHub OIDC token for Docker Hub");let a=await Poe(o),c=new ao("github.com/docker/login-action",[],{headers:{"Content-Type":"application/x-www-form-urlencoded"}}),l=new URLSearchParams;l.set("grant_type","urn:ietf:params:oauth:grant-type:token-exchange"),l.set("subject_token_type","urn:ietf:params:oauth:token-type:id_token"),l.set("subject_token",a),l.set("connection_id",r),l.set("expires_in",n.toString()),ye("Exchanging GitHub OIDC token for Docker Hub token");let u=await k$t(c,`https://${s}/oauth/token`,l.toString()),d=JSON.parse(await O$t(u));return vn(d.access_token),ye("Docker Hub OIDC token exchange succeeded"),{username:e,token:d.access_token}},"getOIDCToken"),D$t=i(()=>{let t=process.env.DOCKERHUB_OIDC_EXPIREIN?.trim()||Q$t.toString(),e=Number(t);if(isNaN(e)||e<KGe||e>XGe)throw new Error(`Invalid DOCKERHUB_OIDC_EXPIREIN: ${t}. Must be between ${KGe} and ${XGe}`);return e},"getExpiresIn"),k$t=i(async(t,e,r)=>{T(`Sending Docker Hub OIDC token request to ${e}`);let n=await t.post(e,r);T(`Docker Hub OIDC token request returned status code ${n.message.statusCode||mt.InternalServerError}`);for(let s=0;(n.message.statusCode||mt.InternalServerError)===mt.TooManyRequests&&s<ZGe;s++){let o=L$t(n.message.headers["retry-after"]);if(o===null){T("Docker Hub OIDC token request rate limited without retry-after he Line truncated
/*! Bundled license information:
undici/lib/web/fetch/body.js:
(*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
undici/lib/web/websocket/frame.js:
(*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
tmp/lib/tmp.js:
(*!
* Tmp
*
* Copyright (c) 2011-2017 KARASZI Istvan <github@spam.raszi.hu>
*
* MIT Licensed
*)
js-yaml/dist/js-yaml.mjs:
(*! js-yaml 5.5.0 https://github.com/nodeca/js-yaml @license MIT *)
@octokit/request-error/dist-src/index.js:
(* v8 ignore else -- @preserve -- Bug with vitest coverage where it sees an else branch that doesn't exist *)
@octokit/request/dist-bundle/index.js:
(* v8 ignore next -- @preserve *)
(* v8 ignore else -- @preserve *)
*/
//# sourceMappingURL=index.cjs.map
Generated Vendored
+7
View File
@@ -0,0 +1,7 @@
{
"version": 3,
"sources": ["../node_modules/tunnel/lib/tunnel.js", "../node_modules/tunnel/index.js", "../node_modules/undici/lib/core/symbols.js", "../node_modules/undici/lib/core/errors.js", "../node_modules/undici/lib/core/constants.js", "../node_modules/undici/lib/core/tree.js", "../node_modules/undici/lib/core/util.js", "../node_modules/undici/lib/core/diagnostics.js", "../node_modules/undici/lib/core/request.js", "../node_modules/undici/lib/dispatcher/dispatcher.js", "../node_modules/undici/lib/dispatcher/dispatcher-base.js", "../node_modules/undici/lib/util/timers.js", "../node_modules/undici/lib/core/connect.js", "../node_modules/undici/lib/llhttp/utils.js", "../node_modules/undici/lib/llhttp/constants.js", "../node_modules/undici/lib/llhttp/llhttp-wasm.js", "../node_modules/undici/lib/llhttp/llhttp_simd-wasm.js", "../node_modules/undici/lib/web/fetch/constants.js", "../node_modules/undici/lib/web/fetch/global.js", "../node_modules/undici/lib/web/fetch/data-url.js", "../node_modules/undici/lib/web/fetch/webidl.js", "../node_modules/undici/lib/web/fetch/util.js", "../node_modules/undici/lib/web/fetch/symbols.js", "../node_modules/undici/lib/web/fetch/file.js", "../node_modules/undici/lib/web/fetch/formdata.js", "../node_modules/undici/lib/web/fetch/formdata-parser.js", "../node_modules/undici/lib/web/fetch/body.js", "../node_modules/undici/lib/dispatcher/client-h1.js", "../node_modules/undici/lib/dispatcher/client-h2.js", "../node_modules/undici/lib/handler/redirect-handler.js", "../node_modules/undici/lib/interceptor/redirect-interceptor.js", "../node_modules/undici/lib/dispatcher/client.js", "../node_modules/undici/lib/dispatcher/fixed-queue.js", "../node_modules/undici/lib/dispatcher/pool-stats.js", "../node_modules/undici/lib/dispatcher/pool-base.js", "../node_modules/undici/lib/dispatcher/pool.js", "../node_modules/undici/lib/dispatcher/balanced-pool.js", "../node_modules/undici/lib/dispatcher/agent.js", "../node_modules/undici/lib/dispatcher/proxy-agent.js", "../node_modules/undici/lib/dispatcher/env-http-proxy-agent.js", "../node_modules/undici/lib/handler/retry-handler.js", "../node_modules/undici/lib/dispatcher/retry-agent.js", "../node_modules/undici/lib/api/readable.js", "../node_modules/undici/lib/api/util.js", "../node_modules/undici/lib/api/api-request.js", "../node_modules/undici/lib/api/abort-signal.js", "../node_modules/undici/lib/api/api-stream.js", "../node_modules/undici/lib/api/api-pipeline.js", "../node_modules/undici/lib/api/api-upgrade.js", "../node_modules/undici/lib/api/api-connect.js", "../node_modules/undici/lib/api/index.js", "../node_modules/undici/lib/mock/mock-errors.js", "../node_modules/undici/lib/mock/mock-symbols.js", "../node_modules/undici/lib/mock/mock-utils.js", "../node_modules/undici/lib/mock/mock-interceptor.js", "../node_modules/undici/lib/mock/mock-client.js", "../node_modules/undici/lib/mock/mock-pool.js", "../node_modules/undici/lib/mock/pluralizer.js", "../node_modules/undici/lib/mock/pending-interceptors-formatter.js", "../node_modules/undici/lib/mock/mock-agent.js", "../node_modules/undici/lib/global.js", "../node_modules/undici/lib/handler/decorator-handler.js", "../node_modules/undici/lib/interceptor/redirect.js", "../node_modules/undici/lib/interceptor/retry.js", "../node_modules/undici/lib/interceptor/dump.js", "../node_modules/undici/lib/interceptor/dns.js", "../node_modules/undici/lib/web/fetch/headers.js", "../node_modules/undici/lib/web/fetch/response.js", "../node_modules/undici/lib/web/fetch/dispatcher-weakref.js", "../node_modules/undici/lib/web/fetch/request.js", "../node_modules/undici/lib/web/fetch/index.js", "../node_modules/undici/lib/web/fileapi/symbols.js", "../node_modules/undici/lib/web/fileapi/progressevent.js", "../node_modules/undici/lib/web/fileapi/encoding.js", "../node_modules/undici/lib/web/fileapi/util.js", "../node_modules/undici/lib/web/fileapi/filereader.js", "../node_modules/undici/lib/web/cache/symbols.js", "../node_modules/undici/lib/web/cache/util.js", "../node_modules/undici/lib/web/cache/cache.js", "../node_modules/undici/lib/web/cache/cachestorage.js", "../node_modules/undici/lib/web/cookies/constants.js", "../node_modules/undici/lib/web/cookies/util.js", "../node_modules/undici/lib/web/cookies/parse.js", "../node_modules/undici/lib/web/cookies/index.js", "../node_modules/undici/lib/web/websocket/events.js", "../node_modules/undici/lib/web/websocket/constants.js", "../node_modules/undici/lib/web/websocket/symbols.js", "../node_modules/undici/lib/web/websocket/util.js", "../node_modules/undici/lib/web/websocket/frame.js", "../node_modules/undici/lib/web/websocket/connection.js", "../node_modules/undici/lib/web/websocket/permessage-deflate.js", "../node_modules/undici/lib/web/websocket/receiver.js", "../node_modules/undici/lib/web/websocket/sender.js", "../node_modules/undici/lib/web/websocket/websocket.js", "../node_modules/undici/lib/web/eventsource/util.js", "../node_modules/undici/lib/web/eventsource/eventsource-stream.js",Line truncated
"sourcesContent": ["'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('Line truncated
"mappings": "4tBAAA,IAAAA,GAAAC,EAAAC,IAAA,cAEA,IAAIC,IAAM,QAAQ,KAAK,EACnBC,IAAM,QAAQ,KAAK,EACnBC,GAAO,QAAQ,MAAM,EACrBC,GAAQ,QAAQ,OAAO,EACvBC,IAAS,QAAQ,QAAQ,EACzBC,IAAS,QAAQ,QAAQ,EACzBC,IAAO,QAAQ,MAAM,EAGzBP,GAAQ,aAAeQ,IACvBR,GAAQ,cAAgBS,IACxBT,GAAQ,cAAgBU,IACxBV,GAAQ,eAAiBW,IAGzB,SAASH,IAAaI,EAAS,CAC7B,IAAIC,EAAQ,IAAIC,GAAeF,CAAO,EACtC,OAAAC,EAAM,QAAUV,GAAK,QACdU,CACT,CAJSE,EAAAP,IAAA,gBAMT,SAASC,IAAcG,EAAS,CAC9B,IAAIC,EAAQ,IAAIC,GAAeF,CAAO,EACtC,OAAAC,EAAM,QAAUV,GAAK,QACrBU,EAAM,aAAeG,GACrBH,EAAM,YAAc,IACbA,CACT,CANSE,EAAAN,IAAA,iBAQT,SAASC,IAAcE,EAAS,CAC9B,IAAIC,EAAQ,IAAIC,GAAeF,CAAO,EACtC,OAAAC,EAAM,QAAUT,GAAM,QACfS,CACT,CAJSE,EAAAL,IAAA,iBAMT,SAASC,IAAeC,EAAS,CAC/B,IAAIC,EAAQ,IAAIC,GAAeF,CAAO,EACtC,OAAAC,EAAM,QAAUT,GAAM,QACtBS,EAAM,aAAeG,GACrBH,EAAM,YAAc,IACbA,CACT,CANSE,EAAAJ,IAAA,kBAST,SAASG,GAAeF,EAAS,CAC/B,IAAIK,EAAO,KACXA,EAAK,QAAUL,GAAW,CAAC,EAC3BK,EAAK,aAAeA,EAAK,QAAQ,OAAS,CAAC,EAC3CA,EAAK,WAAaA,EAAK,QAAQ,YAAcd,GAAK,MAAM,kBACxDc,EAAK,SAAW,CAAC,EACjBA,EAAK,QAAU,CAAC,EAEhBA,EAAK,GAAG,OAAQF,EAAA,SAAgBG,EAAQC,EAAMC,EAAMC,EAAc,CAEhE,QADIT,EAAUU,GAAUH,EAAMC,EAAMC,CAAY,EACvCE,EAAI,EAAGC,EAAMP,EAAK,SAAS,OAAQM,EAAIC,EAAK,EAAED,EAAG,CACxD,IAAIE,EAAUR,EAAK,SAASM,CAAC,EAC7B,GAAIE,EAAQ,OAASb,EAAQ,MAAQa,EAAQ,OAASb,EAAQ,KAAM,CAGlEK,EAAK,SAAS,OAAOM,EAAG,CAAC,EACzBE,EAAQ,QAAQ,SAASP,CAAM,EAC/B,MACF,CACF,CACAA,EAAO,QAAQ,EACfD,EAAK,aAAaC,CAAM,CAC1B,EAdgB,SAcf,CACH,CAvBSH,EAAAD,GAAA,kBAwBTP,IAAK,SAASO,GAAgBT,IAAO,YAAY,EAEjDS,GAAe,UAAU,WAAaC,EAAA,SAAoBW,EAAKP,EAAMC,EAAMC,EAAc,CACvF,IAAIJ,EAAO,KACPL,EAAUe,GAAa,CAAC,QAASD,CAAG,EAAGT,EAAK,QAASK,GAAUH,EAAMC,EAAMC,CAAY,CAAC,EAE5F,GAAIJ,EAAK,QAAQ,QAAU,KAAK,WAAY,CAE1CA,EAAK,SAAS,KAAKL,CAAO,EAC1B,MACF,CAGAK,EAAK,aAAaL,EAAS,SAASM,EAAQ,CAC1CA,EAAO,GAAG,OAAQU,CAAM,EACxBV,EAAO,GAAG,QAASW,CAAe,EAClCX,EAAO,GAAG,cAAeW,CAAe,EACxCH,EAAI,SAASR,CAAM,EAEnB,SAASU,GAAS,CAChBX,EAAK,KAAK,OAAQC,EAAQN,CAAO,CACnC,CAFSG,EAAAa,EAAA,UAIT,SAASC,EAAgBC,EAAK,CAC5Bb,EAAK,aAAaC,CAAM,EACxBA,EAAO,eAAe,OAAQU,CAAM,EACpCV,EAAO,eAAe,QAASW,CAAe,EAC9CX,EAAO,eAAe,cAAeW,CAAe,CACtD,CALSd,EAAAc,EAAA,kBAMX,CAAC,CACH,EA5BsC,cA8BtCf,GAAe,UAAU,aAAeC,EAAA,SAAsBH,EAASmB,EAAI,CACzE,IAAId,EAAO,KACPe,EAAc,CAAC,EACnBf,EAAK,QAAQ,KAAKe,CAAW,EAE7B,IAAIC,EAAiBN,GAAa,CAAC,EAAGV,EAAK,aAAc,CACvD,OAAQ,UACR,KAAML,EAAQ,KAAO,IAAMA,EAAQ,KACnC,MAAO,GACP,QAAS,CACP,KAAMA,EAAQ,KAAO,IAAMA,EAAQ,IACrC,CACF,CAAC,EACGA,EAAQ,eACVqB,EAAe,aAAerB,EAAQ,cAEpCqB,EAAe,YACjBA,EAAe,QAAUA,EAAe,SAAW,CAAC,EACpDA,EAAe,QAAQ,qBAAqB,EAAI,SAC5C,IAAI,OAAOA,EAAe,SAAS,EAAE,SAAS,QAAQ,GAG5DC,GAAM,wBAAwB,EAC9B,IAAIC,EAAalB,EAAK,QAAQgB,CAAc,EAC5CE,EAAW,4BAA8B,GACzCA,EAAW,KAAK,WAAYC,CAAU,EACtCD,EAAW,KAAK,UAAWE,CAAS,EACpCF,EAAW,KAAK,UAAWG,CAAS,EACpCH,EAAW,KAAK,QAASI,CAAO,EAChCJ,EAAW,IAAI,EAEf,SAASC,EAAWI,EAAK,CAEvBA,EAAI,QAAU,EAChB,CAHSzB,EAAAqB,EAAA,cAKT,SAASC,EAAUG,EAAKtB,EAAQuB,EAAM,CAEpC,QAAQ,SAAS,UAAW,CAC1BH,EAAUE,EAAKtB,EAAQuB,CAAI,CAC7B,CAAC,CACH,CALS1B,EAAAsB,EAAA,aAOT,SAASC,EAAUE,EAAKtB,EAAQuB,EAAM,CAIpC,GAHAN,EAAW,mBAAmB,EAC9BjB,EAAO,mBAAmB,EAEtBsB,EAAI,aAAe,IAAK,CAC1BN,GAAM,2DACJM,EAAI,UAAU,EAChBtB,EAAO,QAAQ,EACf,IAAIwB,EAAQ,IAAI,MAAM,yDACJF,EAAI,UAAU,EAChCE,EAAM,KAAO,aACb9B,EAAQ,QAAQ,KAAK,QAAS8B,CAAK,EACnCzB,EAAK,aAAae,CAAW,EAC7B,MACF,CACA,GAAIS,EAAK,OAAS,EAAG,CACnBP,GAAM,sCAAsC,EAC5ChB,EAAO,QAAQ,EACf,IAAIwB,EAAQ,IAAI,MAAM,sCAAsC,EAC5DA,EAAM,KAAO,aACb9B,EAAQ,QAAQ,KAAK,QAAS8B,CAAK,EACnCzB,EAAK,aAAae,CAAW,EAC7B,MACF,CACA,OAAAE,GAAM,sCAAsC,EAC5CjB,EAAK,QAAQA,EAAK,QAAQ,QAAQe,CAAW,CAAC,EAAId,EAC3Ca,EAAGb,CAAM,CAClB,CA3BSH,EAAAuB,EAAA,aA6BT,SAASC,EAAQI,EAAO,CACtBR,EAAW,mBAAmB,EAE9BD,GAAM;AAAA,EACAS,EAAM,QAASA,EAAM,KAAK,EAChC,IAAID,EAAQ,IAAI,MAAM,oDACWC,EAAM,OAAO,EAC9CD,EAAM,KAAO,aACb9B,EAAQ,QAAQ,KAAK,QAAS8B,CAAK,EACnCzB,EAAK,aAAae,CAAW,CAC/B,CAVSjB,EAAAwB,EAAA,UAWX,EAnFwC,gBAqFxCzB,GAAe,UAAU,aAAeC,EAAA,SAAsBG,EAAQ,CACpE,IAAI0B,EAAM,KAAK,QAAQ,QAAQ1B,CAAM,EACrC,GAAI0B,IAAQ,GAGZ,MAAK,QAAQ,OAAOA,EAAK,CAAC,EAE1B,IAAInB,EAAU,KAAK,SAAS,MAAM,EAC9BA,GAGF,KAAK,aAAaA,EAAS,SAASP,EAAQ,CAC1CO,EAAQ,QAAQ,SAASP,CAAM,CACjC,CAAC,EAEL,EAfwC,gBAiBxC,SAASF,GAAmBJ,EAASmB,EAAI,CACvC,IAAId,EAAO,KACXH,GAAe,UAAU,aAAa,KAAKG,EAAML,EAAS,SAASM,EAAQ,CACzE,IAAI2B,EAAajC,EAAQ,QAAQ,UAAU,MAAM,EAC7CkC,EAAanB,GAAa,CAAC,EAAGV,EAAK,QAAS,CAC9C,OAAQC,EACR,WAAY2B,EAAaA,EAAW,QAAQ,OAAQ,EAAE,EAAIjC,EAAQ,IACpE,CAAC,EAGGmC,EAAe7C,IAAI,QAAQ,EAAG4C,CAAU,EAC5C7B,EAAK,QAAQA,EAAK,QAAQ,QAAQC,CAAM,CAAC,EAAI6B,EAC7ChB,EAAGgB,CAAY,CACjB,CAAC,CACH,CAdShC,EAAAC,GAAA,sBAiBT,SAASM,GAAUH,EAAMC,EAAMC,EAAc,CAC3C,OAAI,OAAOF,GAAS,SACX,CACL,KAAMA,EACN,KAAMC,EACN,aAAcC,CAChB,EAEKF,CACT,CATSJ,EAAAO,GAAA,aAWT,SAASK,GAAaqB,EAAQ,CAC5B,QAASzB,EAAI,EAAGC,EAAM,UAAU,OAAQD,EAAIC,EAAK,EAAED,EAAG,CACpD,IAAI0B,EAAY,UAAU1B,CAAC,EAC3B,GAAI,OAAO0B,GAAc,SAEvB,QADIC,EAAO,OAAO,KAAKD,CAAS,EACvBE,EAAI,EAAGC,EAASF,EAAK,OAAQC,EAAIC,EAAQ,EAAED,EAAG,CACrD,IAAIE,EAAIH,EAAKC,CAAC,EACVF,EAAUI,CAAC,IAAM,SACnBL,EAAOK,CAAC,EAAIJ,EAAUI,CAAC,EAE3B,CAEJ,CACA,OAAOL,CACT,CAdSjC,EAAAY,GAAA,gBAiBT,IAAIO,GACA,QAAQ,IAAI,YAAc,aAAa,KAAK,QAAQ,IAAI,UAAU,EACpEA,GAAQnB,EAAA,UAAW,CACjB,IAAIuC,EAAO,MAAM,UAAU,MAAM,KAAK,SAAS,EAC3C,OAAOA,EAAK,CAAC,GAAM,SACrBA,EAAK,CAAC,EAAI,WALine truncated
"names": ["require_tunnel", "__commonJSMin", "exports", "net", "tls", "http", "https", "events", "assert", "util", "httpOverHttp", "httpsOverHttp", "httpOverHttps", "httpsOverHttps", "options", "agent", "TunnelingAgent", "__name", "createSecureSocket", "self", "socket", "host", "port", "localAddress", "toOptions", "i", "len", "pending", "req", "mergeOptions", "onFree", "onCloseOrRemove", "err", "cb", "placeholder", "connectOptions", "debug", "connectReq", "onResponse", "onUpgrade", "onConnect", "onError", "res", "head", "error", "cause", "pos", "hostHeader", "tlsOptions", "secureSocket", "target", "overrides", "keys", "j", "keyLen", "k", "args", "require_tunnel", "__commonJSMin", "exports", "module", "require_symbols", "__commonJSMin", "exports", "module", "require_errors", "__commonJSMin", "exports", "module", "kUndiciError", "UndiciError", "__name", "message", "instance", "kConnectTimeoutError", "ConnectTimeoutError", "kHeadersTimeoutError", "HeadersTimeoutError", "kHeadersOverflowError", "HeadersOverflowError", "kBodyTimeoutError", "BodyTimeoutError", "kResponseStatusCodeError", "ResponseStatusCodeError", "statusCode", "headers", "body", "kInvalidArgumentError", "InvalidArgumentError", "kInvalidReturnValueError", "InvalidReturnValueError", "kAbortError", "AbortError", "kRequestAbortedError", "RequestAbortedError", "kInformationalError", "InformationalError", "kRequestContentLengthMismatchError", "RequestContentLengthMismatchError", "kResponseContentLengthMismatchError", "ResponseContentLengthMismatchError", "kClientDestroyedError", "ClientDestroyedError", "kClientClosedError", "ClientClosedError", "kSocketError", "SocketError", "socket", "kNotSupportedError", "NotSupportedError", "kBalancedPoolMissingUpstreamError", "BalancedPoolMissingUpstreamError", "kHTTPParserError", "HTTPParserError", "code", "data", "kResponseExceededMaxSizeError", "ResponseExceededMaxSizeError", "kRequestRetryError", "RequestRetryError", "kResponseError", "ResponseError", "kSecureProxyConnectionError", "SecureProxyConnectionError", "cause", "options", "kMessageSizeExceededError", "MessageSizeExceededError", "require_constants", "__commonJSMin", "exports", "module", "headerNameLowerCasedRecord", "wellknownHeaderNames", "i", "key", "lowerCasedKey", "require_tree", "__commonJSMin", "exports", "module", "wellknownHeaderNames", "headerNameLowerCasedRecord", "TstNode", "_TstNode", "__name", "key", "value", "index", "length", "node", "code", "keylength", "TernarySearchTree", "tree", "i", "require_util", "__commonJSMin", "exports", "module", "assert", "kDestroyed", "kBodyUsed", "kListeners", "kBody", "IncomingMessage", "stream", "net", "Blob", "nodeUtil", "stringify", "EE", "InvalidArgumentError", "headerNameLowerCasedRecord", "tree", "nodeMajor", "nodeMinor", "v", "BodyAsyncIterable", "__name", "body", "wrapRequestBody", "isStream", "bodyLength", "isIterable", "nop", "obj", "isBlobLike", "object", "sTag", "buildURL", "url", "queryParams", "stringified", "isValidPort", "port", "value", "isHttpOrHttpsPrefixed", "parseURL", "origin", "path", "parseOrigin", "getHostname", "host", "idx", "getServerName", "servername", "deepClone", "isAsyncIterable", "state", "isBuffer", "isDestroyed", "destroy", "err", "KEEPALIVE_TIMEOUT_EXPR", "parseKeepAliveTimeout", "val", "m", "headerNameToString", "bufferToLowerCasedHeaderName", "parseHeaders", "headers", "i", "key", "headersValue", "x", "parseRawHeaders", "len", "ret", "hasContentLength", "contentDispositionIdx", "kLen", "n", "buffer", "validateHandler", "handler", "method", "upgrade", "isDisturbed", "isErrored", "isReadable", "getSocketInfo", "socket", "ReadableStreamFrom", "iterable", "iterator", "controller", "done", "buf", "reason", "isFormDataLike", "addAbortListener", "signal", "listener", "hasToWellFormed", "hasIsWellFormed", "toUSVString", "isUSVString", "isTokenCharCode", "c", "isValidHTTPToken", "characters", "headerCharRegex", "isValidHeaderValue", "parseRangeHeader", "range", "addListener", "name", "removeAllListeners", "errorRequest", "client", "request", "kEnumerableProperty", "normalizedMethodRecordsBase", "normalizedMethodRecords", "require_diagnostics", "__commonJSMin", "exports", "module", "diagnosticsChannel", "util", "undiciDebugLog", "fetchDebuglog", "websocketDebuglog", "isClientSet", "channels", "debuglog", "evt", "version", "protocol", "port", "host", "error", "method", "path", "origin", "statusCode", "address", "websocket", "code", "reason", "err", "require_request", "__commonJSMin", "exports", "module", "InvalidArgumentError", "NotSupportedError", "assert", "isValidHTTPToken", "isValidHeaderValue", "isStream", "destroy", "isBuffer", "isFormDataLike", "isIterable", "isBlobLike", "buildURL", "validateHandler", "getServerName", "normalizedMethodRecords", "channels", "headerNameLowerCasedRecord", "invalidPathRegex", "kHandler", "Request", "__name", "origin", "path", "method", "body", "headers", "query", "idempotent", "blocking", "upgrade", "headersTimeout", "bodyTimeout", "resetLine truncated
}
Generated Vendored
-103
View File
@@ -1,103 +0,0 @@
require('./sourcemap-register.js');(()=>{var i={76846:function(i,d,p){"use strict";var y=this&&this.__createBinding||(Object.create?function(i,d,p,y){if(y===undefined)y=p;var v=Object.getOwnPropertyDescriptor(d,p);if(!v||("get"in v?!d.__esModule:v.writable||v.configurable)){v={enumerable:true,get:function(){return d[p]}}}Object.defineProperty(i,y,v)}:function(i,d,p,y){if(y===undefined)y=p;i[y]=d[p]});var v=this&&this.__exportStar||function(i,d){for(var p in i)if(p!=="default"&&!Object.prototype.hasOwnProperty.call(d,p))y(d,i,p)};Object.defineProperty(d,"__esModule",{value:true});const D=p(64487);v(p(13776),d);v(p(45655),d);v(p(64487),d);const M=new D.DefaultArtifactClient;d["default"]=M},35592:(i,d,p)=>{"use strict";Object.defineProperty(d,"__esModule",{value:true});d.Timestamp=void 0;const y=p(68886);const v=p(68886);const D=p(68886);const M=p(68886);const U=p(68886);const j=p(68886);const V=p(68886);class Timestamp$Type extends V.MessageType{constructor(){super("google.protobuf.Timestamp",[{no:1,name:"seconds",kind:"scalar",T:3},{no:2,name:"nanos",kind:"scalar",T:5}])}now(){const i=this.create();const d=Date.now();i.seconds=j.PbLong.from(Math.floor(d/1e3)).toString();i.nanos=d%1e3*1e6;return i}toDate(i){return new Date(j.PbLong.from(i.seconds).toNumber()*1e3+Math.ceil(i.nanos/1e6))}fromDate(i){const d=this.create();const p=i.getTime();d.seconds=j.PbLong.from(Math.floor(p/1e3)).toString();d.nanos=p%1e3*1e6;return d}internalJsonWrite(i,d){let p=j.PbLong.from(i.seconds).toNumber()*1e3;if(p<Date.parse("0001-01-01T00:00:00Z")||p>Date.parse("9999-12-31T23:59:59Z"))throw new Error("Unable to encode Timestamp to JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");if(i.nanos<0)throw new Error("Unable to encode invalid Timestamp to JSON. Nanos must not be negative.");let y="Z";if(i.nanos>0){let d=(i.nanos+1e9).toString().substring(1);if(d.substring(3)==="000000")y="."+d.substring(0,3)+"Z";else if(d.substring(6)==="000")y="."+d.substring(0,6)+"Z";else y="."+d+"Z"}return new Date(p).toISOString().replace(".000Z",y)}internalJsonRead(i,d,p){if(typeof i!=="string")throw new Error("Unable to parse Timestamp from JSON "+(0,U.typeofJsonValue)(i)+".");let y=i.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!y)throw new Error("Unable to parse Timestamp from JSON. Invalid format.");let v=Date.parse(y[1]+"-"+y[2]+"-"+y[3]+"T"+y[4]+":"+y[5]+":"+y[6]+(y[8]?y[8]:"Z"));if(Number.isNaN(v))throw new Error("Unable to parse Timestamp from JSON. Invalid value.");if(v<Date.parse("0001-01-01T00:00:00Z")||v>Date.parse("9999-12-31T23:59:59Z"))throw new globalThis.Error("Unable to parse Timestamp from JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");if(!p)p=this.create();p.seconds=j.PbLong.from(v/1e3).toString();p.nanos=0;if(y[7])p.nanos=parseInt("1"+y[7]+"0".repeat(9-y[7].length))-1e9;return p}create(i){const d={seconds:"0",nanos:0};globalThis.Object.defineProperty(d,M.MESSAGE_TYPE,{enumerable:false,value:this});if(i!==undefined)(0,D.reflectionMergePartial)(this,d,i);return d}internalBinaryRead(i,d,p,y){let D=y!==null&&y!==void 0?y:this.create(),M=i.pos+d;while(i.pos<M){let[d,y]=i.tag();switch(d){case 1:D.seconds=i.int64().toString();break;case 2:D.nanos=i.int32();break;default:let M=p.readUnknownField;if(M==="throw")throw new globalThis.Error(`Unknown field ${d} (wire type ${y}) for ${this.typeName}`);let U=i.skip(y);if(M!==false)(M===true?v.UnknownFieldHandler.onRead:M)(this.typeName,D,d,y,U)}}return D}internalBinaryWrite(i,d,p){if(i.seconds!=="0")d.tag(1,y.WireType.Varint).int64(i.seconds);if(i.nanos!==0)d.tag(2,y.WireType.Varint).int32(i.nanos);let D=p.writeUnknownFields;if(D!==false)(D==true?v.UnknownFieldHandler.onWrite:D)(this.typeName,i,d);return d}}d.Timestamp=new Timestamp$Type},78806:(i,d,p)=>{"use strict";Object.defineProperty(d,"__esModule",{value:true});d.BytesValue=d.StringValue=d.BoolValue=d.UInt32Value=d.Int32Value=d.UInt64Value=d.Int64Value=d.FloatValue=d.DoubleValue=void 0;const y=p(68886);const v=p(68886);const D=p(68886);const M=p(68886);const U=p(68886);const j=p(68886);const V=p(68886);class DoubleValue$Type extends V.MessageType{constructor(){super("google.protobuf.DoubleValue",[{no:1,name:"value",kind:"scalar",T:1}])}internalJsonWrite(i,d){return this.refJsonWriter.scalar(2,i.value,"value",false,true)}internalJsonRead(i,d,p){if(!p)p=this.create();p.value=this.refJsonReader.scalar(i,1,undefined,"value");return p}create(i){const d={value:0};globalThis.Object.defineProperty(d,j.MESSAGE_TYPE,{enumerable:false,value:this});if(i!==undefined)(0,U.reflectionMergePartial)(this,d,i);return d}internalBinaryRead(i,d,p,y){let v=y!==null&&y!==void 0?y:this.create(),D=i.pos+d;while(i.pos<D){let[d,y]=i.tag();switch(d){case 1:v.value=i.double();break;default:let D=p.readUnknownField;if(D==="throw")throw new globalThis.Error(`Unknown field ${d} (wire type ${y}) for ${this.typeName}`);let U=i.skip(y);Line truncated
/**
* Archiver Vending
*
* @ignore
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(50549);var v={};var vending=function(i,d){return vending.create(i,d)};vending.create=function(i,d){if(v[i]){var p=new y(i,d);p.setFormat(i);p.setModule(new v[i](d));return p}else{throw new Error("create("+i+"): format not registered")}};vending.registerFormat=function(i,d){if(v[i]){throw new Error("register("+i+"): format already registered")}if(typeof d!=="function"){throw new Error("register("+i+"): format module invalid")}if(typeof d.prototype.append!=="function"||typeof d.prototype.finalize!=="function"){throw new Error("register("+i+"): format module missing methods")}v[i]=d};vending.isRegisteredFormat=function(i){if(v[i]){return true}return false};vending.registerFormat("zip",p(22836));vending.registerFormat("tar",p(10396));vending.registerFormat("json",p(54693));i.exports=vending},50549:(i,d,p)=>{
/**
* Archiver Core
*
* @ignore
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(79896);var v=p(51364);var D=p(97329);var M=p(16928);var U=p(53296);var j=p(39023).inherits;var V=p(13110);var K=p(29963).Transform;var ee=process.platform==="win32";var Archiver=function(i,d){if(!(this instanceof Archiver)){return new Archiver(i,d)}if(typeof i!=="string"){d=i;i="zip"}d=this.options=U.defaults(d,{highWaterMark:1024*1024,statConcurrency:4});K.call(this,d);this._format=false;this._module=false;this._pending=0;this._pointer=0;this._entriesCount=0;this._entriesProcessedCount=0;this._fsEntriesTotalBytes=0;this._fsEntriesProcessedBytes=0;this._queue=D.queue(this._onQueueTask.bind(this),1);this._queue.drain(this._onQueueDrain.bind(this));this._statQueue=D.queue(this._onStatQueueTask.bind(this),d.statConcurrency);this._statQueue.drain(this._onQueueDrain.bind(this));this._state={aborted:false,finalize:false,finalizing:false,finalized:false,modulePiped:false};this._streams=[]};j(Archiver,K);Archiver.prototype._abort=function(){this._state.aborted=true;this._queue.kill();this._statQueue.kill();if(this._queue.idle()){this._shutdown()}};Archiver.prototype._append=function(i,d){d=d||{};var p={source:null,filepath:i};if(!d.name){d.name=i}d.sourcePath=i;p.data=d;this._entriesCount++;if(d.stats&&d.stats instanceof y.Stats){p=this._updateQueueTaskWithStats(p,d.stats);if(p){if(d.stats.size){this._fsEntriesTotalBytes+=d.stats.size}this._queue.push(p)}}else{this._statQueue.push(p)}};Archiver.prototype._finalize=function(){if(this._state.finalizing||this._state.finalized||this._state.aborted){return}this._state.finalizing=true;this._moduleFinalize();this._state.finalizing=false;this._state.finalized=true};Archiver.prototype._maybeFinalize=function(){if(this._state.finalizing||this._state.finalized||this._state.aborted){return false}if(this._state.finalize&&this._pending===0&&this._queue.idle()&&this._statQueue.idle()){this._finalize();return true}return false};Archiver.prototype._moduleAppend=function(i,d,p){if(this._state.aborted){p();return}this._module.append(i,d,function(i){this._task=null;if(this._state.aborted){this._shutdown();return}if(i){this.emit("error",i);setImmediate(p);return}this.emit("entry",d);this._entriesProcessedCount++;if(d.stats&&d.stats.size){this._fsEntriesProcessedBytes+=d.stats.size}this.emit("progress",{entries:{total:this._entriesCount,processed:this._entriesProcessedCount},fs:{totalBytes:this._fsEntriesTotalBytes,processedBytes:this._fsEntriesProcessedBytes}});setImmediate(p)}.bind(this))};Archiver.prototype._moduleFinalize=function(){if(typeof this._module.finalize==="function"){this._module.finalize()}else if(typeof this._module.end==="function"){this._module.end()}else{this.emit("error",new V("NOENDMETHOD"))}};Archiver.prototype._modulePipe=function(){this._module.on("error",this._onModuleError.bind(this));this._module.pipe(this);this._state.modulePiped=true};Archiver.prototype._moduleSupports=function(i){if(!this._module.supports||!this._module.supports[i]){return false}return this._module.supports[i]};Archiver.prototype._moduleUnpipe=function(){this._module.unpipe(this);this._state.modulePiped=false};Archiver.prototype._normalizeEntryData=function(i,d){i=U.defaults(i,{type:"file",name:null,date:null,mode:null,prefix:null,sourcePath:null,stats:false});if(d&&i.stats===false){i.stats=d}var p=i.type==="directory";if(i.name){if(typeof i.prefix==="string"&&""!==i.prefix){i.name=i.prefix+"/"+i.name;i.prefix=null}i.name=U.sanitizePath(i.name);if(i.type!=="symlink"&&i.name.slice(-1)==="/"){p=true;i.type="directory"}else if(p){i.name+="/"}}if(typeof i.mode==="number"){if(ee){i.mode&=511}else{i.mode&=4095}}else if(i.stats&&i.mode===null){if(ee){i.mode=i.stats.mode&511}else{i.mode=i.stats.mode&4095}if(ee&&p){i.mode=493}}else if(i.mode===null){i.mode=p?493:420}if(i.stats&&i.date===null){i.date=i.stats.mtime}else{i.date=U.dateify(i.date)}return i};Archiver.prototype._onModuleError=function(i){this.emit("error",i)};Archiver.prototype._onQueueDrain=function(){if(this._state.finalizing||this._state.finalized||this._state.aborted){return}if(this._state.finalize&&this._pending===0&&this._queue.idle()&&this._statQueue.idle()){this._finalize()}};Archiver.prototype._onQueueTask=function(i,d){var fullCallback=()=>{if(i.data.callback){i.data.callback()}d()};if(this._state.finalizing||this._state.finalized||this._state.aborted){fullCallback();return}this._task=i;this._moduleAppend(i.source,i.data,fullCallback)};Archiver.prototype._onStatQueueTask=function(i,d){if(this._state.finalizing||this._state.finalized||this._state.aborted){d();return}y.lstat(i.filepath,function(p,y){if(this._state.aborted){setImmediate(d);return}if(p){this._entriesCount--;this.emit("warning",p);setImmediate(d);return}i=this._updateQueueTaskWithStats(i,y);if(i){if(y.size){this._fsEntriesTotalBytes+=y.size}this._queue.push(i)}setImmediate(d)}.bind(this))};Archiver.prototype._shutdown=function(){this._moduleUnpipe();this.end()};Archiver.prototype._transform=function(i,d,p){if(i){this._pointer+=i.length}p(null,i)};Archiver.prLine truncated
/**
* Archiver Core
*
* @ignore
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(39023);const v={ABORTED:"archive was aborted",DIRECTORYDIRPATHREQUIRED:"diretory dirpath argument must be a non-empty string value",DIRECTORYFUNCTIONINVALIDDATA:"invalid data returned by directory custom data function",ENTRYNAMEREQUIRED:"entry name must be a non-empty string value",FILEFILEPATHREQUIRED:"file filepath argument must be a non-empty string value",FINALIZING:"archive already finalizing",QUEUECLOSED:"queue closed",NOENDMETHOD:"no suitable finalize/end method defined by module",DIRECTORYNOTSUPPORTED:"support for directory entries not defined by module",FORMATSET:"archive format already set",INPUTSTEAMBUFFERREQUIRED:"input source must be valid Stream or Buffer instance",MODULESET:"module already set",SYMLINKNOTSUPPORTED:"support for symlink entries not defined by module",SYMLINKFILEPATHREQUIRED:"symlink filepath argument must be a non-empty string value",SYMLINKTARGETREQUIRED:"symlink target argument must be a non-empty string value",ENTRYNOTSUPPORTED:"entry not supported"};function ArchiverError(i,d){Error.captureStackTrace(this,this.constructor);this.message=v[i]||i;this.code=i;this.data=d}y.inherits(ArchiverError,Error);d=i.exports=ArchiverError},54693:(i,d,p)=>{
/**
* JSON Format Plugin
*
* @module plugins/json
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(39023).inherits;var v=p(29963).Transform;var D=p(84928);var M=p(53296);var Json=function(i){if(!(this instanceof Json)){return new Json(i)}i=this.options=M.defaults(i,{});v.call(this,i);this.supports={directory:true,symlink:true};this.files=[]};y(Json,v);Json.prototype._transform=function(i,d,p){p(null,i)};Json.prototype._writeStringified=function(){var i=JSON.stringify(this.files);this.write(i)};Json.prototype.append=function(i,d,p){var y=this;d.crc32=0;function onend(i,v){if(i){p(i);return}d.size=v.length||0;d.crc32=D.unsigned(v);y.files.push(d);p(null,d)}if(d.sourceType==="buffer"){onend(null,i)}else if(d.sourceType==="stream"){M.collectStream(i,onend)}};Json.prototype.finalize=function(){this._writeStringified();this.end()};i.exports=Json},10396:(i,d,p)=>{
/**
* TAR Format Plugin
*
* @module plugins/tar
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(43106);var v=p(56118);var D=p(53296);var Tar=function(i){if(!(this instanceof Tar)){return new Tar(i)}i=this.options=D.defaults(i,{gzip:false});if(typeof i.gzipOptions!=="object"){i.gzipOptions={}}this.supports={directory:true,symlink:true};this.engine=v.pack(i);this.compressor=false;if(i.gzip){this.compressor=y.createGzip(i.gzipOptions);this.compressor.on("error",this._onCompressorError.bind(this))}};Tar.prototype._onCompressorError=function(i){this.engine.emit("error",i)};Tar.prototype.append=function(i,d,p){var y=this;d.mtime=d.date;function append(i,v){if(i){p(i);return}y.engine.entry(d,v,(function(i){p(i,d)}))}if(d.sourceType==="buffer"){append(null,i)}else if(d.sourceType==="stream"&&d.stats){d.size=d.stats.size;var v=y.engine.entry(d,(function(i){p(i,d)}));i.pipe(v)}else if(d.sourceType==="stream"){D.collectStream(i,append)}};Tar.prototype.finalize=function(){this.engine.finalize()};Tar.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)};Tar.prototype.pipe=function(i,d){if(this.compressor){return this.engine.pipe.apply(this.engine,[this.compressor]).pipe(i,d)}else{return this.engine.pipe.apply(this.engine,arguments)}};Tar.prototype.unpipe=function(){if(this.compressor){return this.compressor.unpipe.apply(this.compressor,arguments)}else{return this.engine.unpipe.apply(this.engine,arguments)}};i.exports=Tar},22836:(i,d,p)=>{
/**
* ZIP Format Plugin
*
* @module plugins/zip
* @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE}
* @copyright (c) 2012-2014 Chris Talkington, contributors.
*/
var y=p(41622);var v=p(53296);var Zip=function(i){if(!(this instanceof Zip)){return new Zip(i)}i=this.options=v.defaults(i,{comment:"",forceUTC:false,namePrependSlash:false,store:false});this.supports={directory:true,symlink:true};this.engine=new y(i)};Zip.prototype.append=function(i,d,p){this.engine.entry(i,d,p)};Zip.prototype.finalize=function(){this.engine.finalize()};Zip.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)};Zip.prototype.pipe=function(){return this.engine.pipe.apply(this.engine,arguments)};Zip.prototype.unpipe=function(){return this.engine.unpipe.apply(this.engine,arguments)};i.exports=Zip},97329:function(i,d){(function(i,p){true?p(d):0})(this,(function(i){"use strict";function apply(i,...d){return(...p)=>i(...d,...p)}function initialParams(i){return function(...d){var p=d.pop();return i.call(this,d,p)}}var d=typeof queueMicrotask==="function"&&queueMicrotask;var p=typeof setImmediate==="function"&&setImmediate;var y=typeof process==="object"&&typeof process.nextTick==="function";function fallback(i){setTimeout(i,0)}function wrap(i){return(d,...p)=>i((()=>d(...p)))}var v;if(d){v=queueMicrotask}else if(p){v=setImmediate}else if(y){v=process.nextTick}else{v=fallback}var D=wrap(v);function asyncify(i){if(isAsync(i)){return function(...d){const p=d.pop();const y=i.apply(this,d);return handlePromise(y,p)}}return initialParams((function(d,p){var y;try{y=i.apply(this,d)}catch(i){return p(i)}if(y&&typeof y.then==="function"){return handlePromise(y,p)}else{p(null,y)}}))}function handlePromise(i,d){return i.then((i=>{invokeCallback(d,null,i)}),(i=>{invokeCallback(d,i&&(i instanceof Error||i.message)?i:new Error(i))}))}function invokeCallback(i,d,p){try{i(d,p)}catch(i){D((i=>{throw i}),i)}}function isAsync(i){return i[Symbol.toStringTag]==="AsyncFunction"}function isAsyncGenerator(i){return i[Symbol.toStringTag]==="AsyncGenerator"}function isAsyncIterable(i){return typeof i[Symbol.asyncIterator]==="function"}function wrapAsync(i){if(typeof i!=="function")throw new Error("expected a function");return isAsync(i)?asyncify(i):i}function awaitify(i,d){if(!d)d=i.length;if(!d)throw new Error("arity is undefined");function awaitable(...p){if(typeof p[d-1]==="function"){return i.apply(this,p)}return new Promise(((y,v)=>{p[d-1]=(i,...d)=>{if(i)return v(i);y(d.length>1?d:d[0])};i.apply(this,p)}))}return awaitable}function applyEach$1(i){return function applyEach(d,...p){const y=awaitify((function(y){var v=this;return i(d,((i,d)=>{wrapAsync(i).apply(v,p.concat(d))}),y)}));return y}}function _asyncMap(i,d,p,y){d=d||[];var v=[];var D=0;var M=wrapAsync(p);return i(d,((i,d,p)=>{var y=D++;M(i,((i,d)=>{v[y]=d;p(i)}))}),(i=>{y(i,v)}))}function isArrayLike(i){return i&&typeof i.length==="number"&&i.length>=0&&i.length%1===0}const M={};var U=M;function once(i){function wrapper(...d){if(i===null)return;var p=i;i=null;p.apply(this,d)}Object.assign(wrapper,i);return wrapper}function getIterator(i){return i[Symbol.iterator]&&i[Symbol.iterator]()}function createArrayIterator(i){var d=-1;var p=i.length;return function next(){return++d<p?{value:i[d],key:d}:null}}function createES2015Iterator(i){var d=-1;return function next(){var p=i.next();if(p.done)return null;d++;return{value:p.value,key:d}}}function createObjectIterator(i){var d=i?Object.keys(i):[];var p=-1;var y=d.length;return function next(){var v=d[++p];if(v==="__proto__"){return next()}return p<y?{value:i[v],key:v}:null}}function createIterator(i){if(isArrayLike(i)){return createArrayIterator(i)}var d=getIterator(i);return d?createES2015Iterator(d):createObjectIterator(i)}function onlyOnce(i){return function(...d){if(i===null)throw new Error("Callback was already called.");var p=i;i=null;p.apply(this,d)}}function asyncEachOfLimit(i,d,p,y){let v=false;let D=false;let M=false;let j=0;let V=0;function replenish(){if(j>=d||M||v)return;M=true;i.next().then((({value:i,done:d})=>{if(D||v)return;M=false;if(d){v=true;if(j<=0){y(null)}return}j++;p(i,V,iterateeCallback);V++;replenish()})).catch(handleError)}function iterateeCallback(i,d){j-=1;if(D)return;if(i)return handleError(i);if(i===false){v=true;D=true;return}if(d===U||v&&j<=0){v=true;return y(null)}replenish()}function handleError(i){if(D)return;M=false;v=true;y(i)}replenish()}var eachOfLimit$2=i=>(d,p,y)=>{y=once(y);if(i<=0){throw new RangeError("concurrency limit cannot be less than 1")}if(!d){return y(null)}if(isAsyncGenerator(d)){return asyncEachOfLimit(d,i,p,y)}if(isAsyncIterable(d)){return asyncEachOfLimit(d[Symbol.asyncIterator](),i,p,y)}var v=createIterator(d);var D=false;var M=false;var j=0;var V=false;function iterateeCallback(i,d){if(M)return;j-=1;if(i){D=true;y(i)}else if(i===false){D=true;M=true}else if(d===U||D&&j<=0){D=true;return y(null)}else if(!V){replenish()}}function replenish(){V=true;while(j<i&&!D){var d=v();if(d===null){D=true;if(j<=0){y(null)}return}j+=1;p(d.value,d.key,onlyOnce(iterateeCallback))}V=false}replenish()};function eachOfLimit(i,d,p,y){return eachOfLimit$2(d)(i,Line truncated
/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */
var p;(function(i){if(typeof DO_NOT_EXPORT_CRC==="undefined"){if(true){i(d)}else{}}else{i(p={})}})((function(i){i.version="1.2.2";function signed_crc_table(){var i=0,d=new Array(256);for(var p=0;p!=256;++p){i=p;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;i=i&1?-306674912^i>>>1:i>>>1;d[p]=i}return typeof Int32Array!=="undefined"?new Int32Array(d):d}var d=signed_crc_table();function slice_by_16_tables(i){var d=0,p=0,y=0,v=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(y=0;y!=256;++y)v[y]=i[y];for(y=0;y!=256;++y){p=i[y];for(d=256+y;d<4096;d+=256)p=v[d]=p>>>8^i[p&255]}var D=[];for(y=1;y!=16;++y)D[y-1]=typeof Int32Array!=="undefined"?v.subarray(y*256,y*256+256):v.slice(y*256,y*256+256);return D}var p=slice_by_16_tables(d);var y=p[0],v=p[1],D=p[2],M=p[3],U=p[4];var j=p[5],V=p[6],K=p[7],ee=p[8],te=p[9];var re=p[10],ne=p[11],ie=p[12],se=p[13],oe=p[14];function crc32_bstr(i,p){var y=p^-1;for(var v=0,D=i.length;v<D;)y=y>>>8^d[(y^i.charCodeAt(v++))&255];return~y}function crc32_buf(i,p){var ae=p^-1,ce=i.length-15,le=0;for(;le<ce;)ae=oe[i[le++]^ae&255]^se[i[le++]^ae>>8&255]^ie[i[le++]^ae>>16&255]^ne[i[le++]^ae>>>24]^re[i[le++]]^te[i[le++]]^ee[i[le++]]^K[i[le++]]^V[i[le++]]^j[i[le++]]^U[i[le++]]^M[i[le++]]^D[i[le++]]^v[i[le++]]^y[i[le++]]^d[i[le++]];ce+=15;while(le<ce)ae=ae>>>8^d[(ae^i[le++])&255];return~ae}function crc32_str(i,p){var y=p^-1;for(var v=0,D=i.length,M=0,U=0;v<D;){M=i.charCodeAt(v++);if(M<128){y=y>>>8^d[(y^M)&255]}else if(M<2048){y=y>>>8^d[(y^(192|M>>6&31))&255];y=y>>>8^d[(y^(128|M&63))&255]}else if(M>=55296&&M<57344){M=(M&1023)+64;U=i.charCodeAt(v++)&1023;y=y>>>8^d[(y^(240|M>>8&7))&255];y=y>>>8^d[(y^(128|M>>2&63))&255];y=y>>>8^d[(y^(128|U>>6&15|(M&3)<<4))&255];y=y>>>8^d[(y^(128|U&63))&255]}else{y=y>>>8^d[(y^(224|M>>12&15))&255];y=y>>>8^d[(y^(128|M>>6&63))&255];y=y>>>8^d[(y^(128|M&63))&255]}}return~y}i.table=d;i.bstr=crc32_bstr;i.buf=crc32_buf;i.str=crc32_str}))},3662:(i,d,p)=>{"use strict";const{Transform:y}=p(29963);const v=p(84891);class CRC32Stream extends y{constructor(i){super(i);this.checksum=Buffer.allocUnsafe(4);this.checksum.writeInt32BE(0,0);this.rawSize=0}_transform(i,d,p){if(i){this.checksum=v.buf(i,this.checksum)>>>0;this.rawSize+=i.length}p(null,i)}digest(i){const d=Buffer.allocUnsafe(4);d.writeUInt32BE(this.checksum>>>0,0);return i?d.toString(i):d}hex(){return this.digest("hex").toUpperCase()}size(){return this.rawSize}}i.exports=CRC32Stream},76252:(i,d,p)=>{"use strict";const{DeflateRaw:y}=p(43106);const v=p(84891);class DeflateCRC32Stream extends y{constructor(i){super(i);this.checksum=Buffer.allocUnsafe(4);this.checksum.writeInt32BE(0,0);this.rawSize=0;this.compressedSize=0}push(i,d){if(i){this.compressedSize+=i.length}return super.push(i,d)}_transform(i,d,p){if(i){this.checksum=v.buf(i,this.checksum)>>>0;this.rawSize+=i.length}super._transform(i,d,p)}digest(i){const d=Buffer.allocUnsafe(4);d.writeUInt32BE(this.checksum>>>0,0);return i?d.toString(i):d}hex(){return this.digest("hex").toUpperCase()}size(i=false){if(i){return this.compressedSize}else{return this.rawSize}}}i.exports=DeflateCRC32Stream},82770:(i,d,p)=>{"use strict";i.exports={CRC32Stream:p(3662),DeflateCRC32Stream:p(76252)}},6110:(i,d,p)=>{d.formatArgs=formatArgs;d.save=save;d.load=load;d.useColors=useColors;d.storage=localstorage();d.destroy=(()=>{let i=false;return()=>{if(!i){i=true;console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}}})();d.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function useColors(){if(typeof window!=="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)){return true}if(typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)){return false}return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="unLine truncated
/**
* @author Toru Nagashima <https://github.com/mysticatea>
* @copyright 2015 Toru Nagashima. All rights reserved.
* See LICENSE file in root directory for full license.
*/Object.defineProperty(d,"__esModule",{value:true});const p=new WeakMap;const y=new WeakMap;function pd(i){const d=p.get(i);console.assert(d!=null,"'this' is expected an Event object, but got",i);return d}function setCancelFlag(i){if(i.passiveListener!=null){if(typeof console!=="undefined"&&typeof console.error==="function"){console.error("Unable to preventDefault inside passive event listener invocation.",i.passiveListener)}return}if(!i.event.cancelable){return}i.canceled=true;if(typeof i.event.preventDefault==="function"){i.event.preventDefault()}}function Event(i,d){p.set(this,{eventTarget:i,event:d,eventPhase:2,currentTarget:i,canceled:false,stopped:false,immediateStopped:false,passiveListener:null,timeStamp:d.timeStamp||Date.now()});Object.defineProperty(this,"isTrusted",{value:false,enumerable:true});const y=Object.keys(d);for(let i=0;i<y.length;++i){const d=y[i];if(!(d in this)){Object.defineProperty(this,d,defineRedirectDescriptor(d))}}}Event.prototype={get type(){return pd(this).event.type},get target(){return pd(this).eventTarget},get currentTarget(){return pd(this).currentTarget},composedPath(){const i=pd(this).currentTarget;if(i==null){return[]}return[i]},get NONE(){return 0},get CAPTURING_PHASE(){return 1},get AT_TARGET(){return 2},get BUBBLING_PHASE(){return 3},get eventPhase(){return pd(this).eventPhase},stopPropagation(){const i=pd(this);i.stopped=true;if(typeof i.event.stopPropagation==="function"){i.event.stopPropagation()}},stopImmediatePropagation(){const i=pd(this);i.stopped=true;i.immediateStopped=true;if(typeof i.event.stopImmediatePropagation==="function"){i.event.stopImmediatePropagation()}},get bubbles(){return Boolean(pd(this).event.bubbles)},get cancelable(){return Boolean(pd(this).event.cancelable)},preventDefault(){setCancelFlag(pd(this))},get defaultPrevented(){return pd(this).canceled},get composed(){return Boolean(pd(this).event.composed)},get timeStamp(){return pd(this).timeStamp},get srcElement(){return pd(this).eventTarget},get cancelBubble(){return pd(this).stopped},set cancelBubble(i){if(!i){return}const d=pd(this);d.stopped=true;if(typeof d.event.cancelBubble==="boolean"){d.event.cancelBubble=true}},get returnValue(){return!pd(this).canceled},set returnValue(i){if(!i){setCancelFlag(pd(this))}},initEvent(){}};Object.defineProperty(Event.prototype,"constructor",{value:Event,configurable:true,writable:true});if(typeof window!=="undefined"&&typeof window.Event!=="undefined"){Object.setPrototypeOf(Event.prototype,window.Event.prototype);y.set(window.Event.prototype,Event)}function defineRedirectDescriptor(i){return{get(){return pd(this).event[i]},set(d){pd(this).event[i]=d},configurable:true,enumerable:true}}function defineCallDescriptor(i){return{value(){const d=pd(this).event;return d[i].apply(d,arguments)},configurable:true,enumerable:true}}function defineWrapper(i,d){const p=Object.keys(d);if(p.length===0){return i}function CustomEvent(d,p){i.call(this,d,p)}CustomEvent.prototype=Object.create(i.prototype,{constructor:{value:CustomEvent,configurable:true,writable:true}});for(let y=0;y<p.length;++y){const v=p[y];if(!(v in i.prototype)){const i=Object.getOwnPropertyDescriptor(d,v);const p=typeof i.value==="function";Object.defineProperty(CustomEvent.prototype,v,p?defineCallDescriptor(v):defineRedirectDescriptor(v))}}return CustomEvent}function getWrapper(i){if(i==null||i===Object.prototype){return Event}let d=y.get(i);if(d==null){d=defineWrapper(getWrapper(Object.getPrototypeOf(i)),i);y.set(i,d)}return d}function wrapEvent(i,d){const p=getWrapper(Object.getPrototypeOf(d));return new p(i,d)}function isStopped(i){return pd(i).immediateStopped}function setEventPhase(i,d){pd(i).eventPhase=d}function setCurrentTarget(i,d){pd(i).currentTarget=d}function setPassiveListener(i,d){pd(i).passiveListener=d}const v=new WeakMap;const D=1;const M=2;const U=3;function isObject(i){return i!==null&&typeof i==="object"}function getListeners(i){const d=v.get(i);if(d==null){throw new TypeError("'this' is expected an EventTarget object, but got another value.")}return d}function defineEventAttributeDescriptor(i){return{get(){const d=getListeners(this);let p=d.get(i);while(p!=null){if(p.listenerType===U){return p.listener}p=p.next}return null},set(d){if(typeof d!=="function"&&!isObject(d)){d=null}const p=getListeners(this);let y=null;let v=p.get(i);while(v!=null){if(v.listenerType===U){if(y!==null){y.next=v.next}else if(v.next!==null){p.set(i,v.next)}else{p.delete(i)}}else{y=v}v=v.next}if(d!==null){const v={listener:d,listenerType:U,passive:false,once:false,next:null};if(y===null){p.set(i,v)}else{y.next=v}}},configurable:true,enumerable:true}}function defineEventAttribute(i,d){Object.defineProperty(i,`on${d}`,defineEventAttributeDescriptor(d))}function defineCustomEventTarget(i){function CustomEventTarget(){EventTarget.call(this)}CustomEventTarget.prototype=Object.create(EventTarget.prototype,{constructor:{value:CustomEventTarget,configurable:true,writable:true}});for(let d=0;d<i.length;++d){Line truncated
/*! https://mths.be/he v1.2.0 by @mathias | MIT license */(function(p){var y=true&&d;var v=true&&i&&i.exports==y&&i;var D=typeof global=="object"&&global;if(D.global===D||D.window===D){p=D}var M=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;var U=/[\x01-\x7F]/g;var j=/[\x01-\t\x0B\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g;var V=/<\u20D2|=\u20E5|>\u20D2|\u205F\u200A|\u219D\u0338|\u2202\u0338|\u2220\u20D2|\u2229\uFE00|\u222A\uFE00|\u223C\u20D2|\u223D\u0331|\u223E\u0333|\u2242\u0338|\u224B\u0338|\u224D\u20D2|\u224E\u0338|\u224F\u0338|\u2250\u0338|\u2261\u20E5|\u2264\u20D2|\u2265\u20D2|\u2266\u0338|\u2267\u0338|\u2268\uFE00|\u2269\uFE00|\u226A\u0338|\u226A\u20D2|\u226B\u0338|\u226B\u20D2|\u227F\u0338|\u2282\u20D2|\u2283\u20D2|\u228A\uFE00|\u228B\uFE00|\u228F\u0338|\u2290\u0338|\u2293\uFE00|\u2294\uFE00|\u22B4\u20D2|\u22B5\u20D2|\u22D8\u0338|\u22D9\u0338|\u22DA\uFE00|\u22DB\uFE00|\u22F5\u0338|\u22F9\u0338|\u2933\u0338|\u29CF\u0338|\u29D0\u0338|\u2A6D\u0338|\u2A70\u0338|\u2A7D\u0338|\u2A7E\u0338|\u2AA1\u0338|\u2AA2\u0338|\u2AAC\uFE00|\u2AAD\uFE00|\u2AAF\u0338|\u2AB0\u0338|\u2AC5\u0338|\u2AC6\u0338|\u2ACB\uFE00|\u2ACC\uFE00|\u2AFD\u20E5|[\xA0-\u0113\u0116-\u0122\u0124-\u012B\u012E-\u014D\u0150-\u017E\u0192\u01B5\u01F5\u0237\u02C6\u02C7\u02D8-\u02DD\u0311\u0391-\u03A1\u03A3-\u03A9\u03B1-\u03C9\u03D1\u03D2\u03D5\u03D6\u03DC\u03DD\u03F0\u03F1\u03F5\u03F6\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E\u045F\u2002-\u2005\u2007-\u2010\u2013-\u2016\u2018-\u201A\u201C-\u201E\u2020-\u2022\u2025\u2026\u2030-\u2035\u2039\u203A\u203E\u2041\u2043\u2044\u204F\u2057\u205F-\u2063\u20AC\u20DB\u20DC\u2102\u2105\u210A-\u2113\u2115-\u211E\u2122\u2124\u2127-\u2129\u212C\u212D\u212F-\u2131\u2133-\u2138\u2145-\u2148\u2153-\u215E\u2190-\u219B\u219D-\u21A7\u21A9-\u21AE\u21B0-\u21B3\u21B5-\u21B7\u21BA-\u21DB\u21DD\u21E4\u21E5\u21F5\u21FD-\u2205\u2207-\u2209\u220B\u220C\u220F-\u2214\u2216-\u2218\u221A\u221D-\u2238\u223A-\u2257\u2259\u225A\u225C\u225F-\u2262\u2264-\u228B\u228D-\u229B\u229D-\u22A5\u22A7-\u22B0\u22B2-\u22BB\u22BD-\u22DB\u22DE-\u22E3\u22E6-\u22F7\u22F9-\u22FE\u2305\u2306\u2308-\u2310\u2312\u2313\u2315\u2316\u231C-\u231F\u2322\u2323\u232D\u232E\u2336\u233D\u233F\u237C\u23B0\u23B1\u23B4-\u23B6\u23DC-\u23DF\u23E2\u23E7\u2423\u24C8\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2550-\u256C\u2580\u2584\u2588\u2591-\u2593\u25A1\u25AA\u25AB\u25AD\u25AE\u25B1\u25B3-\u25B5\u25B8\u25B9\u25BD-\u25BF\u25C2\u25C3\u25CA\u25CB\u25EC\u25EF\u25F8-\u25FC\u2605\u2606\u260E\u2640\u2642\u2660\u2663\u2665\u2666\u266A\u266D-\u266F\u2713\u2717\u2720\u2736\u2758\u2772\u2773\u27C8\u27C9\u27E6-\u27ED\u27F5-\u27FA\u27FC\u27FF\u2902-\u2905\u290C-\u2913\u2916\u2919-\u2920\u2923-\u292A\u2933\u2935-\u2939\u293C\u293D\u2945\u2948-\u294B\u294E-\u2976\u2978\u2979\u297B-\u297F\u2985\u2986\u298B-\u2996\u299A\u299C\u299D\u29A4-\u29B7\u29B9\u29BB\u29BC\u29BE-\u29C5\u29C9\u29CD-\u29D0\u29DC-\u29DE\u29E3-\u29E5\u29EB\u29F4\u29F6\u2A00-\u2A02\u2A04\u2A06\u2A0C\u2A0D\u2A10-\u2A17\u2A22-\u2A27\u2A29\u2A2A\u2A2D-\u2A31\u2A33-\u2A3C\u2A3F\u2A40\u2A42-\u2A4D\u2A50\u2A53-\u2A58\u2A5A-\u2A5D\u2A5F\u2A66\u2A6A\u2A6D-\u2A75\u2A77-\u2A9A\u2A9D-\u2AA2\u2AA4-\u2AB0\u2AB3-\u2AC8\u2ACB\u2ACC\u2ACF-\u2ADB\u2AE4\u2AE6-\u2AE9\u2AEB-\u2AF3\u2AFD\uFB00-\uFB04]|\uD835[\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDD6B]/g;var K={"­":"shy","‌":"zwnj","‍":"zwj","‎":"lrm","⁣":"ic","⁢":"it","⁡":"af","‏":"rlm","​":"ZeroWidthSpace","⁠":"NoBreak","̑":"DownBreve","⃛":"tdot","⃜":"DotDot","\t":"Tab","\n":"NewLine"," ":"puncsp"," ":"MediumSpace"," ":"thinsp"," ":"hairsp"," ":"emsp13"," ":"ensp"," ":"emsp14"," ":"emsp"," ":"numsp"," ":"nbsp","  ":"ThickSpace","‾":"oline",_:"lowbar","‐":"dash","–":"ndash","—":"mdash","―":"horbar",",":"comma",";":"semi","⁏":"bsemi",":":"colon","⩴":"Colone","!":"excl","¡":"iexcl","?":"quest","¿":"iquest",".":"period","‥":"nldr","…":"mldr","·":"middot","'":"apos","‘":"lsquo","’":"rsquo","‚":"sbquo","‹":"lsaquo","›":"rsaquo",'"':"quot","“":"ldquo","”":"rdquo","„":"bdquo","«":"laquo","»":"raquo","(":"lpar",")":"rpar","[":"lsqb","]":"rsqb","{":"lcub","}":"rcub","⌈":"lceil","⌉":"rceil","⌊":"lfloor","⌋":"rfloor","⦅":"lopar","⦆":"ropar","⦋":"lbrke","⦌":"rbrke","⦍":"lbrkslu","⦎":"rbrksld","⦏":"lbrksld","⦐":"rbrkslu","⦑":"langd","⦒":"rangd","⦓":"lparlt","⦔":"rpargt","⦕":"gtlPar","⦖":"ltrPar","⟦":"lobrk","⟧":"robrk","⟨":"lang","⟩":"rang","⟪":"Lang","⟫":"Rang","⟬":"loang","⟭":"roang","❲":"lbbrk","❳":"rbbrk","‖":"Vert","§":"sect","¶":"para","@":"commat","*":"ast","/":"sol",undefined:null,"&":"amp","#":"num","%":"percnt","‰":"permil","‱":"pertenk","†":"dagger","‡":"Dagger","•":"bull","⁃":"hybull","′":"prime","″":"Prime","‴":"tprime","⁗":"qprimeLine truncated
/*!
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
*
* Copyright (c) 2014-2017, Jon Schlinkert.
* Released under the MIT License.
*/function isObject(i){return Object.prototype.toString.call(i)==="[object Object]"}function isPlainObject(i){var d,p;if(isObject(i)===false)return false;d=i.constructor;if(d===undefined)return true;p=d.prototype;if(isObject(p)===false)return false;if(p.hasOwnProperty("isPrototypeOf")===false){return false}return true}d.isPlainObject=isPlainObject},96543:i=>{"use strict";const isStream=i=>i!==null&&typeof i==="object"&&typeof i.pipe==="function";isStream.writable=i=>isStream(i)&&i.writable!==false&&typeof i._write==="function"&&typeof i._writableState==="object";isStream.readable=i=>isStream(i)&&i.readable!==false&&typeof i._read==="function"&&typeof i._readableState==="object";isStream.duplex=i=>isStream.writable(i)&&isStream.readable(i);isStream.transform=i=>isStream.duplex(i)&&typeof i._transform==="function";i.exports=isStream},82513:i=>{var d={}.toString;i.exports=Array.isArray||function(i){return d.call(i)=="[object Array]"}},74281:(i,d,p)=>{"use strict";var y=p(91950);var v=p(59980);function renamed(i,d){return function(){throw new Error("Function yaml."+i+" is removed in js-yaml 4. "+"Use yaml."+d+" instead, which is now safe by default.")}}i.exports.Type=p(9557);i.exports.Schema=p(62046);i.exports.FAILSAFE_SCHEMA=p(69832);i.exports.JSON_SCHEMA=p(58927);i.exports.CORE_SCHEMA=p(55746);i.exports.DEFAULT_SCHEMA=p(97336);i.exports.load=y.load;i.exports.loadAll=y.loadAll;i.exports.dump=v.dump;i.exports.YAMLException=p(41248);i.exports.types={binary:p(8149),float:p(57584),map:p(47316),null:p(4333),pairs:p(16267),set:p(78758),timestamp:p(28966),bool:p(67296),int:p(62271),merge:p(76854),omap:p(58649),seq:p(77161),str:p(53929)};i.exports.safeLoad=renamed("safeLoad","load");i.exports.safeLoadAll=renamed("safeLoadAll","loadAll");i.exports.safeDump=renamed("safeDump","dump")},19816:i=>{"use strict";function isNothing(i){return typeof i==="undefined"||i===null}function isObject(i){return typeof i==="object"&&i!==null}function toArray(i){if(Array.isArray(i))return i;else if(isNothing(i))return[];return[i]}function extend(i,d){var p,y,v,D;if(d){D=Object.keys(d);for(p=0,y=D.length;p<y;p+=1){v=D[p];i[v]=d[v]}}return i}function repeat(i,d){var p="",y;for(y=0;y<d;y+=1){p+=i}return p}function isNegativeZero(i){return i===0&&Number.NEGATIVE_INFINITY===1/i}i.exports.isNothing=isNothing;i.exports.isObject=isObject;i.exports.toArray=toArray;i.exports.repeat=repeat;i.exports.isNegativeZero=isNegativeZero;i.exports.extend=extend},59980:(i,d,p)=>{"use strict";var y=p(19816);var v=p(41248);var D=p(97336);var M=Object.prototype.toString;var U=Object.prototype.hasOwnProperty;var j=65279;var V=9;var K=10;var ee=13;var te=32;var re=33;var ne=34;var ie=35;var se=37;var oe=38;var ae=39;var ce=42;var le=44;var de=45;var ue=58;var pe=61;var me=62;var fe=63;var he=64;var ge=91;var Ae=93;var ye=96;var be=123;var Ee=124;var ve=125;var Ce={};Ce[0]="\\0";Ce[7]="\\a";Ce[8]="\\b";Ce[9]="\\t";Ce[10]="\\n";Ce[11]="\\v";Ce[12]="\\f";Ce[13]="\\r";Ce[27]="\\e";Ce[34]='\\"';Ce[92]="\\\\";Ce[133]="\\N";Ce[160]="\\_";Ce[8232]="\\L";Ce[8233]="\\P";var we=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];var Se=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function compileStyleMap(i,d){var p,y,v,D,M,j,V;if(d===null)return{};p={};y=Object.keys(d);for(v=0,D=y.length;v<D;v+=1){M=y[v];j=String(d[M]);if(M.slice(0,2)==="!!"){M="tag:yaml.org,2002:"+M.slice(2)}V=i.compiledTypeMap["fallback"][M];if(V&&U.call(V.styleAliases,j)){j=V.styleAliases[j]}p[M]=j}return p}function encodeHex(i){var d,p,D;d=i.toString(16).toUpperCase();if(i<=255){p="x";D=2}else if(i<=65535){p="u";D=4}else if(i<=4294967295){p="U";D=8}else{throw new v("code point within a string may not be greater than 0xFFFFFFFF")}return"\\"+p+y.repeat("0",D-d.length)+d}var xe=1,Ie=2;function State(i){this.schema=i["schema"]||D;this.indent=Math.max(1,i["indent"]||2);this.noArrayIndent=i["noArrayIndent"]||false;this.skipInvalid=i["skipInvalid"]||false;this.flowLevel=y.isNothing(i["flowLevel"])?-1:i["flowLevel"];this.styleMap=compileStyleMap(this.schema,i["styles"]||null);this.sortKeys=i["sortKeys"]||false;this.lineWidth=i["lineWidth"]||80;this.noRefs=i["noRefs"]||false;this.noCompatMode=i["noCompatMode"]||false;this.condenseFlow=i["condenseFlow"]||false;this.quotingType=i["quotingType"]==='"'?Ie:xe;this.forceQuotes=i["forceQuotes"]||false;this.replacer=typeof i["replacer"]==="function"?i["replacer"]:null;this.implicitTypes=this.schema.compiledImplicit;this.explicitTypes=this.schema.compiledExplicit;this.tag=null;this.result="";this.duplicates=[];this.usedDuplicates=null}function indentString(i,d){var p=y.repeat(" ",d),v=0,D=-1,M="",U,j=i.length;while(v<j){D=i.indexOf("\n",v);if(D===-1){U=i.slice(v);v=j}else{U=i.slice(v,D+1);v=D+1}if(U.length&&U!=="\n")M+=p;M+=U}return M}function generateNextLine(i,d){return"\n"+y.repeat(" ",i.indent*d)}function testImplicitResolving(i,d){var p,y,v;for(p=0,y=i.implicitTypes.length;p<y;p+=1){v=i.implicitTypes[p];if(v.resolve(d)){return true}}Line truncated
/*!
* mime-db
* Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015-2022 Douglas Christopher Wilson
* MIT Licensed
*/
i.exports=p(81813)},14096:(i,d,p)=>{"use strict";
/*!
* mime-types
* Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015 Douglas Christopher Wilson
* MIT Licensed
*/var y=p(99829);var v=p(16928).extname;var D=/^\s*([^;\s]*)(?:;|\s|$)/;var M=/^text\//i;d.charset=charset;d.charsets={lookup:charset};d.contentType=contentType;d.extension=extension;d.extensions=Object.create(null);d.lookup=lookup;d.types=Object.create(null);populateMaps(d.extensions,d.types);function charset(i){if(!i||typeof i!=="string"){return false}var d=D.exec(i);var p=d&&y[d[1].toLowerCase()];if(p&&p.charset){return p.charset}if(d&&M.test(d[1])){return"UTF-8"}return false}function contentType(i){if(!i||typeof i!=="string"){return false}var p=i.indexOf("/")===-1?d.lookup(i):i;if(!p){return false}if(p.indexOf("charset")===-1){var y=d.charset(p);if(y)p+="; charset="+y.toLowerCase()}return p}function extension(i){if(!i||typeof i!=="string"){return false}var p=D.exec(i);var y=p&&d.extensions[p[1].toLowerCase()];if(!y||!y.length){return false}return y[0]}function lookup(i){if(!i||typeof i!=="string"){return false}var p=v("x."+i).toLowerCase().substr(1);if(!p){return false}return d.types[p]||false}function populateMaps(i,d){var p=["nginx","apache",undefined,"iana"];Object.keys(y).forEach((function forEachMimeType(v){var D=y[v];var M=D.extensions;if(!M||!M.length){return}i[v]=M;for(var U=0;U<M.length;U++){var j=M[U];if(d[j]){var V=p.indexOf(y[d[j]].source);var K=p.indexOf(D.source);if(d[j]!=="application/octet-stream"&&(V>K||V===K&&d[j].substr(0,12)==="application/")){continue}}d[j]=v}}))}},43772:(i,d,p)=>{i.exports=minimatch;minimatch.Minimatch=Minimatch;var y=function(){try{return p(16928)}catch(i){}}()||{sep:"/"};minimatch.sep=y.sep;var v=minimatch.GLOBSTAR=Minimatch.GLOBSTAR={};var D=p(73783);var M={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}};var U="[^/]";var j=U+"*?";var V="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";var K="(?:(?!(?:\\/|^)\\.).)*?";var ee=charSet("().*{}+?[]^$\\!");function charSet(i){return i.split("").reduce((function(i,d){i[d]=true;return i}),{})}var te=/\/+/;minimatch.filter=filter;function filter(i,d){d=d||{};return function(p,y,v){return minimatch(p,i,d)}}function ext(i,d){d=d||{};var p={};Object.keys(i).forEach((function(d){p[d]=i[d]}));Object.keys(d).forEach((function(i){p[i]=d[i]}));return p}minimatch.defaults=function(i){if(!i||typeof i!=="object"||!Object.keys(i).length){return minimatch}var d=minimatch;var p=function minimatch(p,y,v){return d(p,y,ext(i,v))};p.Minimatch=function Minimatch(p,y){return new d.Minimatch(p,ext(i,y))};p.Minimatch.defaults=function defaults(p){return d.defaults(ext(i,p)).Minimatch};p.filter=function filter(p,y){return d.filter(p,ext(i,y))};p.defaults=function defaults(p){return d.defaults(ext(i,p))};p.makeRe=function makeRe(p,y){return d.makeRe(p,ext(i,y))};p.braceExpand=function braceExpand(p,y){return d.braceExpand(p,ext(i,y))};p.match=function(p,y,v){return d.match(p,y,ext(i,v))};return p};Minimatch.defaults=function(i){return minimatch.defaults(i).Minimatch};function minimatch(i,d,p){assertValidPattern(d);if(!p)p={};if(!p.nocomment&&d.charAt(0)==="#"){return false}return new Minimatch(d,p).match(i)}function Minimatch(i,d){if(!(this instanceof Minimatch)){return new Minimatch(i,d)}assertValidPattern(i);if(!d)d={};i=i.trim();if(!d.allowWindowsEscape&&y.sep!=="/"){i=i.split(y.sep).join("/")}this.options=d;this.set=[];this.pattern=i;this.regexp=null;this.negate=false;this.comment=false;this.empty=false;this.partial=!!d.partial;this.make()}Minimatch.prototype.debug=function(){};Minimatch.prototype.make=make;function make(){var i=this.pattern;var d=this.options;if(!d.nocomment&&i.charAt(0)==="#"){this.comment=true;return}if(!i){this.empty=true;return}this.parseNegate();var p=this.globSet=this.braceExpand();if(d.debug)this.debug=function debug(){console.error.apply(console,arguments)};this.debug(this.pattern,p);p=this.globParts=p.map((function(i){return i.split(te)}));this.debug(this.pattern,p);p=p.map((function(i,d,p){return i.map(this.parse,this)}),this);this.debug(this.pattern,p);p=p.filter((function(i){return i.indexOf(false)===-1}));this.debug(this.pattern,p);this.set=p}Minimatch.prototype.parseNegate=parseNegate;function parseNegate(){var i=this.pattern;var d=false;var p=this.options;var y=0;if(p.nonegate)return;for(var v=0,D=i.length;v<D&&i.charAt(v)==="!";v++){d=!d;y++}if(y)this.pattern=i.substr(y);this.negate=d}minimatch.braceExpand=function(i,d){return braceExpand(i,d)};Minimatch.prototype.braceExpand=braceExpand;function braceExpand(i,d){if(!d){if(this instanceof Minimatch){d=this.options}else{d={}}}i=typeof i==="undefined"?this.pattern:i;assertValidPattern(i);if(d.nobrace||!/\{(?:(?!\{).)*\}/.test(i)){return[i]}return D(i)}var re=1024*64;var assertValidPattern=function(i){if(typeof i!=="string"){throw new TypeError("invalid pattern")}if(i.length>re){throw new TypeError("pattern is too long")}};Minimatch.prototype.parse=parse;var ne={};function parse(i,d){assertValidPattern(i);var p=this.options;if(i==="**"){if(!p.noglobstar)return v;eLine truncated
/*!
* normalize-path <https://github.com/jonschlinkert/normalize-path>
*
* Copyright (c) 2014-2018, Jon Schlinkert.
* Released under the MIT License.
*/
i.exports=function(i,d){if(typeof i!=="string"){throw new TypeError("expected path to be a string")}if(i==="\\"||i==="/")return"/";var p=i.length;if(p<=1)return i;var y="";if(p>4&&i[3]==="\\"){var v=i[2];if((v==="?"||v===".")&&i.slice(0,2)==="\\\\"){i=i.slice(2);y="//"}}var D=i.split(/[/\\]+/);if(d!==false&&D[D.length-1]===""){D.pop()}return y+D.join("/")}},55560:(i,d,p)=>{var y=p(58264);i.exports=y(once);i.exports.strict=y(onceStrict);once.proto=once((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return once(this)},configurable:true});Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return onceStrict(this)},configurable:true})}));function once(i){var f=function(){if(f.called)return f.value;f.called=true;return f.value=i.apply(this,arguments)};f.called=false;return f}function onceStrict(i){var f=function(){if(f.called)throw new Error(f.onceError);f.called=true;return f.value=i.apply(this,arguments)};var d=i.name||"Function wrapped with `once`";f.onceError=d+" shouldn't be called more than once";f.called=false;return f}},41564:i=>{"use strict";if(typeof process==="undefined"||!process.version||process.version.indexOf("v0.")===0||process.version.indexOf("v1.")===0&&process.version.indexOf("v1.8.")!==0){i.exports={nextTick:nextTick}}else{i.exports=process}function nextTick(i,d,p,y){if(typeof i!=="function"){throw new TypeError('"callback" argument must be a function')}var v=arguments.length;var D,M;switch(v){case 0:case 1:return process.nextTick(i);case 2:return process.nextTick((function afterTickOne(){i.call(null,d)}));case 3:return process.nextTick((function afterTickTwo(){i.call(null,d,p)}));case 4:return process.nextTick((function afterTickThree(){i.call(null,d,p,y)}));default:D=new Array(v-1);M=0;while(M<D.length){D[M++]=arguments[M]}return process.nextTick((function afterTick(){i.apply(null,D)}))}}},7945:i=>{i.exports=global.process},5506:(i,d,p)=>{i.exports=typeof process!=="undefined"&&typeof process.nextTick==="function"?process.nextTick.bind(process):p(36828)},36828:i=>{i.exports=typeof queueMicrotask==="function"?queueMicrotask:i=>Promise.resolve().then(i)},80652:(i,d,p)=>{"use strict";const{SymbolDispose:y}=p(50999);const{AbortError:v,codes:D}=p(69220);const{isNodeStream:M,isWebStream:U,kControllerErrorFunction:j}=p(83426);const V=p(36815);const{ERR_INVALID_ARG_TYPE:K}=D;let ee;const validateAbortSignal=(i,d)=>{if(typeof i!=="object"||!("aborted"in i)){throw new K(d,"AbortSignal",i)}};i.exports.addAbortSignal=function addAbortSignal(d,p){validateAbortSignal(d,"signal");if(!M(p)&&!U(p)){throw new K("stream",["ReadableStream","WritableStream","Stream"],p)}return i.exports.addAbortSignalNoValidate(d,p)};i.exports.addAbortSignalNoValidate=function(i,d){if(typeof i!=="object"||!("aborted"in i)){return d}const D=M(d)?()=>{d.destroy(new v(undefined,{cause:i.reason}))}:()=>{d[j](new v(undefined,{cause:i.reason}))};if(i.aborted){D()}else{ee=ee||p(23539).addAbortListener;const v=ee(i,D);V(d,v[y])}return d}},77336:(i,d,p)=>{"use strict";const{StringPrototypeSlice:y,SymbolIterator:v,TypedArrayPrototypeSet:D,Uint8Array:M}=p(50999);const{Buffer:U}=p(20181);const{inspect:j}=p(23539);i.exports=class BufferList{constructor(){this.head=null;this.tail=null;this.length=0}push(i){const d={data:i,next:null};if(this.length>0)this.tail.next=d;else this.head=d;this.tail=d;++this.length}unshift(i){const d={data:i,next:this.head};if(this.length===0)this.tail=d;this.head=d;++this.length}shift(){if(this.length===0)return;const i=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return i}clear(){this.head=this.tail=null;this.length=0}join(i){if(this.length===0)return"";let d=this.head;let p=""+d.data;while((d=d.next)!==null)p+=i+d.data;return p}concat(i){if(this.length===0)return U.alloc(0);const d=U.allocUnsafe(i>>>0);let p=this.head;let y=0;while(p){D(d,p.data,y);y+=p.data.length;p=p.next}return d}consume(i,d){const p=this.head.data;if(i<p.length){const d=p.slice(0,i);this.head.data=p.slice(i);return d}if(i===p.length){return this.shift()}return d?this._getString(i):this._getBuffer(i)}first(){return this.head.data}*[v](){for(let i=this.head;i;i=i.next){yield i.data}}_getString(i){let d="";let p=this.head;let v=0;do{const D=p.data;if(i>D.length){d+=D;i-=D.length}else{if(i===D.length){d+=D;++v;if(p.next)this.head=p.next;else this.head=this.tail=null}else{d+=y(D,0,i);this.head=p;p.data=y(D,i)}break}++v}while((p=p.next)!==null);this.length-=v;return d}_getBuffer(i){const d=U.allocUnsafe(i);const p=i;let y=this.head;let v=0;do{const U=y.data;if(i>U.length){D(d,U,p-i);i-=U.length}else{if(i===U.length){D(d,U,p-i);++v;if(y.next)this.head=y.next;else this.head=this.tail=null}else{D(d,new M(U.buffer,U.byteOffset,i),p-i);this.head=y;y.data=U.slice(i)}break}++v}while((y=y.next)!==null);this.length-=v;return d}[Symbol.for("nodejs.util.inspect.custom")](i,d){return j(this,{...d,depth:0,customInspect:false})}}},64999:(i,d,p)=>{"use sLine truncated
/*! http://mths.be/fromcodepoint v0.1.0 by @mathias */if(!String.fromCodePoint){(function(){var i=String.fromCharCode;var d=Math.floor;var fromCodePoint=function(){var p=16384;var y=[];var v;var D;var M=-1;var U=arguments.length;if(!U){return""}var j="";while(++M<U){var V=Number(arguments[M]);if(!isFinite(V)||V<0||V>1114111||d(V)!==V){throw RangeError("Invalid code point: "+V)}if(V<=65535){y.push(V)}else{V-=65536;v=(V>>10)+55296;D=V%1024+56320;y.push(v,D)}if(M+1===U||y.length>p){j+=i.apply(null,y);y.length=0}}return j};if(Object.defineProperty){Object.defineProperty(String,"fromCodePoint",{value:fromCodePoint,configurable:true,writable:true})}else{String.fromCodePoint=fromCodePoint}})()}})(false?0:d)},39318:(i,d)=>{d=i.exports=SemVer;var p;if(typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)){p=function(){var i=Array.prototype.slice.call(arguments,0);i.unshift("SEMVER");console.log.apply(console,i)}}else{p=function(){}}d.SEMVER_SPEC_VERSION="2.0.0";var y=256;var v=Number.MAX_SAFE_INTEGER||9007199254740991;var D=16;var M=y-6;var U=d.re=[];var j=d.safeRe=[];var V=d.src=[];var K=d.tokens={};var ee=0;function tok(i){K[i]=ee++}var te="[a-zA-Z0-9-]";var re=[["\\s",1],["\\d",y],[te,M]];function makeSafeRe(i){for(var d=0;d<re.length;d++){var p=re[d][0];var y=re[d][1];i=i.split(p+"*").join(p+"{0,"+y+"}").split(p+"+").join(p+"{1,"+y+"}")}return i}tok("NUMERICIDENTIFIER");V[K.NUMERICIDENTIFIER]="0|[1-9]\\d*";tok("NUMERICIDENTIFIERLOOSE");V[K.NUMERICIDENTIFIERLOOSE]="\\d+";tok("NONNUMERICIDENTIFIER");V[K.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+te+"*";tok("MAINVERSION");V[K.MAINVERSION]="("+V[K.NUMERICIDENTIFIER]+")\\."+"("+V[K.NUMERICIDENTIFIER]+")\\."+"("+V[K.NUMERICIDENTIFIER]+")";tok("MAINVERSIONLOOSE");V[K.MAINVERSIONLOOSE]="("+V[K.NUMERICIDENTIFIERLOOSE]+")\\."+"("+V[K.NUMERICIDENTIFIERLOOSE]+")\\."+"("+V[K.NUMERICIDENTIFIERLOOSE]+")";tok("PRERELEASEIDENTIFIER");V[K.PRERELEASEIDENTIFIER]="(?:"+V[K.NUMERICIDENTIFIER]+"|"+V[K.NONNUMERICIDENTIFIER]+")";tok("PRERELEASEIDENTIFIERLOOSE");V[K.PRERELEASEIDENTIFIERLOOSE]="(?:"+V[K.NUMERICIDENTIFIERLOOSE]+"|"+V[K.NONNUMERICIDENTIFIER]+")";tok("PRERELEASE");V[K.PRERELEASE]="(?:-("+V[K.PRERELEASEIDENTIFIER]+"(?:\\."+V[K.PRERELEASEIDENTIFIER]+")*))";tok("PRERELEASELOOSE");V[K.PRERELEASELOOSE]="(?:-?("+V[K.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+V[K.PRERELEASEIDENTIFIERLOOSE]+")*))";tok("BUILDIDENTIFIER");V[K.BUILDIDENTIFIER]=te+"+";tok("BUILD");V[K.BUILD]="(?:\\+("+V[K.BUILDIDENTIFIER]+"(?:\\."+V[K.BUILDIDENTIFIER]+")*))";tok("FULL");tok("FULLPLAIN");V[K.FULLPLAIN]="v?"+V[K.MAINVERSION]+V[K.PRERELEASE]+"?"+V[K.BUILD]+"?";V[K.FULL]="^"+V[K.FULLPLAIN]+"$";tok("LOOSEPLAIN");V[K.LOOSEPLAIN]="[v=\\s]*"+V[K.MAINVERSIONLOOSE]+V[K.PRERELEASELOOSE]+"?"+V[K.BUILD]+"?";tok("LOOSE");V[K.LOOSE]="^"+V[K.LOOSEPLAIN]+"$";tok("GTLT");V[K.GTLT]="((?:<|>)?=?)";tok("XRANGEIDENTIFIERLOOSE");V[K.XRANGEIDENTIFIERLOOSE]=V[K.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*";tok("XRANGEIDENTIFIER");V[K.XRANGEIDENTIFIER]=V[K.NUMERICIDENTIFIER]+"|x|X|\\*";tok("XRANGEPLAIN");V[K.XRANGEPLAIN]="[v=\\s]*("+V[K.XRANGEIDENTIFIER]+")"+"(?:\\.("+V[K.XRANGEIDENTIFIER]+")"+"(?:\\.("+V[K.XRANGEIDENTIFIER]+")"+"(?:"+V[K.PRERELEASE]+")?"+V[K.BUILD]+"?"+")?)?";tok("XRANGEPLAINLOOSE");V[K.XRANGEPLAINLOOSE]="[v=\\s]*("+V[K.XRANGEIDENTIFIERLOOSE]+")"+"(?:\\.("+V[K.XRANGEIDENTIFIERLOOSE]+")"+"(?:\\.("+V[K.XRANGEIDENTIFIERLOOSE]+")"+"(?:"+V[K.PRERELEASELOOSE]+")?"+V[K.BUILD]+"?"+")?)?";tok("XRANGE");V[K.XRANGE]="^"+V[K.GTLT]+"\\s*"+V[K.XRANGEPLAIN]+"$";tok("XRANGELOOSE");V[K.XRANGELOOSE]="^"+V[K.GTLT]+"\\s*"+V[K.XRANGEPLAINLOOSE]+"$";tok("COERCE");V[K.COERCE]="(^|[^\\d])"+"(\\d{1,"+D+"})"+"(?:\\.(\\d{1,"+D+"}))?"+"(?:\\.(\\d{1,"+D+"}))?"+"(?:$|[^\\d])";tok("COERCERTL");U[K.COERCERTL]=new RegExp(V[K.COERCE],"g");j[K.COERCERTL]=new RegExp(makeSafeRe(V[K.COERCE]),"g");tok("LONETILDE");V[K.LONETILDE]="(?:~>?)";tok("TILDETRIM");V[K.TILDETRIM]="(\\s*)"+V[K.LONETILDE]+"\\s+";U[K.TILDETRIM]=new RegExp(V[K.TILDETRIM],"g");j[K.TILDETRIM]=new RegExp(makeSafeRe(V[K.TILDETRIM]),"g");var ne="$1~";tok("TILDE");V[K.TILDE]="^"+V[K.LONETILDE]+V[K.XRANGEPLAIN]+"$";tok("TILDELOOSE");V[K.TILDELOOSE]="^"+V[K.LONETILDE]+V[K.XRANGEPLAINLOOSE]+"$";tok("LONECARET");V[K.LONECARET]="(?:\\^)";tok("CARETTRIM");V[K.CARETTRIM]="(\\s*)"+V[K.LONECARET]+"\\s+";U[K.CARETTRIM]=new RegExp(V[K.CARETTRIM],"g");j[K.CARETTRIM]=new RegExp(makeSafeRe(V[K.CARETTRIM]),"g");var ie="$1^";tok("CARET");V[K.CARET]="^"+V[K.LONECARET]+V[K.XRANGEPLAIN]+"$";tok("CARETLOOSE");V[K.CARETLOOSE]="^"+V[K.LONECARET]+V[K.XRANGEPLAINLOOSE]+"$";tok("COMPARATORLOOSE");V[K.COMPARATORLOOSE]="^"+V[K.GTLT]+"\\s*("+V[K.LOOSEPLAIN]+")$|^$";tok("COMPARATOR");V[K.COMPARATOR]="^"+V[K.GTLT]+"\\s*("+V[K.FULLPLAIN]+")$|^$";tok("COMPARATORTRIM");V[K.COMPARATORTRIM]="(\\s*)"+V[K.GTLT]+"\\s*("+V[K.LOOSEPLAIN]+"|"+V[K.XRANGEPLAIN]+")";U[K.COMPARATORTRIM]=new RegExp(V[K.COMPARATORTRIM],"g");j[K.COMPARATORTRIM]=new RegExp(makeSafeRe(V[K.COMPARATORTRIM]),"g");var se="$1Line truncated
/*!
* Tmp
*
* Copyright (c) 2011-2017 KARASZI Istvan <github@spam.raszi.hu>
*
* MIT Licensed
*/
const y=p(79896);const v=p(70857);const D=p(16928);const M=p(76982);const U={fs:y.constants,os:v.constants};const j="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",V=/XXXXXX/,K=3,ee=(U.O_CREAT||U.fs.O_CREAT)|(U.O_EXCL||U.fs.O_EXCL)|(U.O_RDWR||U.fs.O_RDWR),te=v.platform()==="win32",re=U.EBADF||U.os.errno.EBADF,ne=U.ENOENT||U.os.errno.ENOENT,ie=448,se=384,oe="exit",ae=[],ce=y.rmdirSync.bind(y);let le=false;function rimraf(i,d){return y.rm(i,{recursive:true},d)}function FN_RIMRAF_SYNC(i){return y.rmSync(i,{recursive:true})}function tmpName(i,d){const p=_parseArguments(i,d),v=p[0],D=p[1];_assertAndSanitizeOptions(v,(function(i,d){if(i)return D(i);let p=d.tries;(function _getUniqueName(){try{const i=_generateTmpName(d);y.stat(i,(function(d){if(!d){if(p-- >0)return _getUniqueName();return D(new Error("Could not get a unique tmp filename, max tries reached "+i))}D(null,i)}))}catch(i){D(i)}})()}))}function tmpNameSync(i){const d=_parseArguments(i),p=d[0];const v=_assertAndSanitizeOptionsSync(p);let D=v.tries;do{const i=_generateTmpName(v);try{y.statSync(i)}catch(d){return i}}while(D-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function file(i,d){const p=_parseArguments(i,d),v=p[0],D=p[1];tmpName(v,(function _tmpNameCreated(i,d){if(i)return D(i);y.open(d,ee,v.mode||se,(function _fileCreated(i,p){if(i)return D(i);if(v.discardDescriptor){return y.close(p,(function _discardCallback(i){return D(i,d,undefined,_prepareTmpFileRemoveCallback(d,-1,v,false))}))}else{const i=v.discardDescriptor||v.detachDescriptor;D(null,d,p,_prepareTmpFileRemoveCallback(d,i?-1:p,v,false))}}))}))}function fileSync(i){const d=_parseArguments(i),p=d[0];const v=p.discardDescriptor||p.detachDescriptor;const D=tmpNameSync(p);let M=y.openSync(D,ee,p.mode||se);if(p.discardDescriptor){y.closeSync(M);M=undefined}return{name:D,fd:M,removeCallback:_prepareTmpFileRemoveCallback(D,v?-1:M,p,true)}}function dir(i,d){const p=_parseArguments(i,d),v=p[0],D=p[1];tmpName(v,(function _tmpNameCreated(i,d){if(i)return D(i);y.mkdir(d,v.mode||ie,(function _dirCreated(i){if(i)return D(i);D(null,d,_prepareTmpDirRemoveCallback(d,v,false))}))}))}function dirSync(i){const d=_parseArguments(i),p=d[0];const v=tmpNameSync(p);y.mkdirSync(v,p.mode||ie);return{name:v,removeCallback:_prepareTmpDirRemoveCallback(v,p,true)}}function _removeFileAsync(i,d){const _handler=function(i){if(i&&!_isENOENT(i)){return d(i)}d()};if(0<=i[0])y.close(i[0],(function(){y.unlink(i[1],_handler)}));else y.unlink(i[1],_handler)}function _removeFileSync(i){let d=null;try{if(0<=i[0])y.closeSync(i[0])}catch(i){if(!_isEBADF(i)&&!_isENOENT(i))throw i}finally{try{y.unlinkSync(i[1])}catch(i){if(!_isENOENT(i))d=i}}if(d!==null){throw d}}function _prepareTmpFileRemoveCallback(i,d,p,y){const v=_prepareRemoveCallback(_removeFileSync,[d,i],y);const D=_prepareRemoveCallback(_removeFileAsync,[d,i],y,v);if(!p.keep)ae.unshift(v);return y?v:D}function _prepareTmpDirRemoveCallback(i,d,p){const v=d.unsafeCleanup?rimraf:y.rmdir.bind(y);const D=d.unsafeCleanup?FN_RIMRAF_SYNC:ce;const M=_prepareRemoveCallback(D,i,p);const U=_prepareRemoveCallback(v,i,p,M);if(!d.keep)ae.unshift(M);return p?M:U}function _prepareRemoveCallback(i,d,p,y){let v=false;return function _cleanupCallback(D){if(!v){const M=y||_cleanupCallback;const U=ae.indexOf(M);if(U>=0)ae.splice(U,1);v=true;if(p||i===ce||i===FN_RIMRAF_SYNC){return i(d)}else{return i(d,D||function(){})}}}}function _garbageCollector(){if(!le)return;while(ae.length){try{ae[0]()}catch(i){}}}function _randomChars(i){let d=[],p=null;try{p=M.randomBytes(i)}catch(d){p=M.pseudoRandomBytes(i)}for(let y=0;y<i;y++){d.push(j[p[y]%j.length])}return d.join("")}function _isUndefined(i){return typeof i==="undefined"}function _parseArguments(i,d){if(typeof i==="function"){return[{},i]}if(_isUndefined(i)){return[{},d]}const p={};for(const d of Object.getOwnPropertyNames(i)){p[d]=i[d]}return[p,d]}function _resolvePath(i,d,p){const v=D.isAbsolute(i)?i:D.join(d,i);y.stat(v,(function(i){if(i){y.realpath(D.dirname(v),(function(i,d){if(i)return p(i);p(null,D.join(d,D.basename(v)))}))}else{y.realpath(v,p)}}))}function _resolvePathSync(i,d){const p=D.isAbsolute(i)?i:D.join(d,i);try{y.statSync(p);return y.realpathSync(p)}catch(i){const d=y.realpathSync(D.dirname(p));return D.join(d,D.basename(p))}}function _generateTmpName(i){const d=i.tmpdir;if(!_isUndefined(i.name)){return D.join(d,i.dir,i.name)}if(!_isUndefined(i.template)){return D.join(d,i.dir,i.template).replace(V,_randomChars(6))}const p=[i.prefix?i.prefix:"tmp","-",process.pid,"-",_randomChars(12),i.postfix?"-"+i.postfix:""].join("");return D.join(d,i.dir,p)}function _assertOptionsBase(i){if(!_isUndefined(i.name)){const d=i.name;if(D.isAbsolute(d))throw new Error(`name option must not contain an absolute path, found "${d}".`);const p=D.basename(d);if(p===".."||p==="."||p!==d)throw new Error(`name option must not contain a path, found "${d}".`)}if(!_isUndefined(i.template)&&!i.template.match(V)){throwLine truncated
/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */;const escape=i=>i.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=i=>i.replace(/\r?\n|\r/g,"\r\n");const y=[];const v=new Uint8Array([13,10]);ee=0;let D=false;for(const[d,M]of i){if(typeof M==="string"){const i=ye.encode(p+`; name="${escape(normalizeLinefeeds(d))}"`+`\r\n\r\n${normalizeLinefeeds(M)}\r\n`);y.push(i);ee+=i.byteLength}else{const i=ye.encode(`${p}; name="${escape(normalizeLinefeeds(d))}"`+(M.name?`; filename="${escape(M.name)}"`:"")+"\r\n"+`Content-Type: ${M.type||"application/octet-stream"}\r\n\r\n`);y.push(i,M,v);if(typeof M.size==="number"){ee+=i.byteLength+M.size+v.byteLength}else{D=true}}}const M=ye.encode(`--${d}--`);y.push(M);ee+=M.byteLength;if(D){ee=null}K=i;V=async function*(){for(const i of y){if(i.stream){yield*i.stream()}else{yield i}}};te="multipart/form-data; boundary="+d}else if(M(i)){K=i;ee=i.size;if(i.type){te=i.type}}else if(typeof i[Symbol.asyncIterator]==="function"){if(d){throw new TypeError("keepalive")}if(v.isDisturbed(i)||i.locked){throw new TypeError("Response body object should not be disturbed or locked")}y=i instanceof ge?i:D(i)}if(typeof K==="string"||v.isBuffer(K)){ee=Buffer.byteLength(K)}if(V!=null){let d;y=new ge({async start(){d=V(i)[Symbol.asyncIterator]()},async pull(i){const{value:p,done:v}=await d.next();if(v){queueMicrotask((()=>{i.close()}))}else{if(!le(y)){i.enqueue(new Uint8Array(p))}}return i.desiredSize>0},async cancel(i){await d.return()},type:undefined})}const re={stream:y,source:K,length:ee};return[re,te]}function safelyExtractBody(i,d=false){if(!ge){ge=p(63774).ReadableStream}if(i instanceof ge){ce(!v.isDisturbed(i),"The body has already been consumed.");ce(!i.locked,"The stream is locked.")}return extractBody(i,d)}function cloneBody(i){const[d,p]=i.stream.tee();const y=ie(p,{transfer:[p]});const[,v]=y.tee();i.stream=d;return{stream:v,length:i.length,source:i.source}}async function*consumeBody(i){if(i){if(de(i)){yield i}else{const d=i.stream;if(v.isDisturbed(d)){throw new TypeError("The body has already been consumed.")}if(d.locked){throw new TypeError("The stream is locked.")}d[ae]=true;yield*d}}}function throwIfAborted(i){if(i.aborted){throw new ne("The operation was aborted.","AbortError")}}function bodyMixinMethods(i){const d={blob(){return specConsumeBody(this,(i=>{let d=bodyMimeType(this);if(d==="failure"){d=""}else if(d){d=fe(d)}return new se([i],{type:d})}),i)},arrayBuffer(){return specConsumeBody(this,(i=>new Uint8Array(i).buffer),i)},text(){return specConsumeBody(this,utf8DecodeBytes,i)},json(){return specConsumeBody(this,parseJSONFromBytes,i)},async formData(){re.brandCheck(this,i);throwIfAborted(this[te]);const d=this.headers.get("Content-Type");if(/multipart\/form-data/.test(d)){const i={};for(const[d,p]of this.headers)i[d.toLowerCase()]=p;const d=new ee;let p;try{p=new y({headers:i,preservePath:true})}catch(i){throw new ne(`${i}`,"AbortError")}p.on("field",((i,p)=>{d.append(i,p)}));p.on("file",((i,p,y,v,D)=>{const M=[];if(v==="base64"||v.toLowerCase()==="base64"){let v="";p.on("data",(i=>{v+=i.toString().replace(/[\r\n]/gm,"");const d=v.length-v.length%4;M.push(Buffer.from(v.slice(0,d),"base64"));v=v.slice(d)}));p.on("end",(()=>{M.push(Buffer.from(v,"base64"));d.append(i,new Ae(M,y,{type:D}))}))}else{p.on("data",(i=>{M.push(i)}));p.on("end",(()=>{d.append(i,new Ae(M,y,{type:D}))}))}}));const v=new Promise(((i,d)=>{p.on("finish",i);p.on("error",(i=>d(new TypeError(i))))}));if(this.body!==null)for await(const i of consumeBody(this[te].body))p.write(i);p.end();await v;return d}else if(/application\/x-www-form-urlencoded/.test(d)){let i;try{let d="";const p=new TextDecoder("utf-8",{ignoreBOM:true});for await(const i of consumeBody(this[te].body)){if(!de(i)){throw new TypeError("Expected Uint8Array chunk")}d+=p.decode(i,{stream:true})}d+=p.decode();i=new URLSearchParams(d)}catch(i){throw Object.assign(new TypeError,{cause:i})}const d=new ee;for(const[p,y]of i){d.append(p,y)}return d}else{await Promise.resolve();throwIfAborted(this[te]);throw re.errors.exception({header:`${i.name}.formData`,message:"Could not parse content as FormData."})}}};return d}function mixinBody(i){Object.assign(i.prototype,bodyMixinMethods(i))}async function specConsumeBody(i,d,p){re.brandCheck(i,p);throwIfAborted(i[te]);if(bodyUnusable(i[te].body)){throw new TypeError("Body is unusable")}const y=V();const errorSteps=i=>y.reject(i);const successSteps=i=>{try{y.resolve(d(i))}catch(i){errorSteps(i)}};if(i[te].body==null){successSteps(new Uint8Array);return y.promise}await K(i[te].body,successSteps,errorSteps);return y.promise}function bodyUnusable(i){return i!=null&&(i.stream.locked||v.isDisturbed(i.stream))}function utf8DecodeBytes(i){if(i.length===0){return""}if(i[0]===239&&i[1]===187&&i[2]===191){i=i.subarray(3)}const d=be.decode(i);return d}function parseJSONFromBytes(i){return JSON.parse(utf8DecodeBytes(i))}function bodyMimeType(i){Line truncated
/*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */D[v-4]=this.maskKey[0];D[v-3]=this.maskKey[1];D[v-2]=this.maskKey[2];D[v-1]=this.maskKey[3];D[1]=p;if(p===126){D.writeUInt16BE(d,2)}else if(p===127){D[2]=D[3]=0;D.writeUIntBE(d,4,6)}D[1]|=128;for(let i=0;i<d;i++){D[v+i]=this.frameData[i]^this.maskKey[i%4]}return D}}i.exports={WebsocketFrameSend:WebsocketFrameSend}},43171:(i,d,p)=>{"use strict";const{Writable:y}=p(2203);const v=p(31637);const{parserStates:D,opcodes:M,states:U,emptyBuffer:j}=p(45913);const{kReadyState:V,kSentClose:K,kResponse:ee,kReceivedClose:te}=p(62933);const{isValidStatusCode:re,failWebsocketConnection:ne,websocketMessageReceived:ie}=p(3574);const{WebsocketFrameSend:se}=p(31237);const oe={};oe.ping=v.channel("undici:websocket:ping");oe.pong=v.channel("undici:websocket:pong");class ByteParser extends y{#o=[];#a=0;#c=D.INFO;#l={};#d=[];constructor(i){super();this.ws=i}_write(i,d,p){this.#o.push(i);this.#a+=i.length;this.run(p)}run(i){while(true){if(this.#c===D.INFO){if(this.#a<2){return i()}const d=this.consume(2);this.#l.fin=(d[0]&128)!==0;this.#l.opcode=d[0]&15;this.#l.originalOpcode??=this.#l.opcode;this.#l.fragmented=!this.#l.fin&&this.#l.opcode!==M.CONTINUATION;if(this.#l.fragmented&&this.#l.opcode!==M.BINARY&&this.#l.opcode!==M.TEXT){ne(this.ws,"Invalid frame type was fragmented.");return}const p=d[1]&127;if(p<=125){this.#l.payloadLength=p;this.#c=D.READ_DATA}else if(p===126){this.#c=D.PAYLOADLENGTH_16}else if(p===127){this.#c=D.PAYLOADLENGTH_64}if(this.#l.fragmented&&p>125){ne(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#l.opcode===M.PING||this.#l.opcode===M.PONG||this.#l.opcode===M.CLOSE)&&p>125){ne(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#l.opcode===M.CLOSE){if(p===1){ne(this.ws,"Received close frame with a 1-byte body.");return}const i=this.consume(p);this.#l.closeInfo=this.parseCloseBody(false,i);if(!this.ws[K]){const i=Buffer.allocUnsafe(2);i.writeUInt16BE(this.#l.closeInfo.code,0);const d=new se(i);this.ws[ee].socket.write(d.createFrame(M.CLOSE),(i=>{if(!i){this.ws[K]=true}}))}this.ws[V]=U.CLOSING;this.ws[te]=true;this.end();return}else if(this.#l.opcode===M.PING){const d=this.consume(p);if(!this.ws[te]){const i=new se(d);this.ws[ee].socket.write(i.createFrame(M.PONG));if(oe.ping.hasSubscribers){oe.ping.publish({payload:d})}}this.#c=D.INFO;if(this.#a>0){continue}else{i();return}}else if(this.#l.opcode===M.PONG){const d=this.consume(p);if(oe.pong.hasSubscribers){oe.pong.publish({payload:d})}if(this.#a>0){continue}else{i();return}}}else if(this.#c===D.PAYLOADLENGTH_16){if(this.#a<2){return i()}const d=this.consume(2);this.#l.payloadLength=d.readUInt16BE(0);this.#c=D.READ_DATA}else if(this.#c===D.PAYLOADLENGTH_64){if(this.#a<8){return i()}const d=this.consume(8);const p=d.readUInt32BE(0);if(p>2**31-1){ne(this.ws,"Received payload length > 2^31 bytes.");return}const y=d.readUInt32BE(4);this.#l.payloadLength=(p<<8)+y;this.#c=D.READ_DATA}else if(this.#c===D.READ_DATA){if(this.#a<this.#l.payloadLength){return i()}else if(this.#a>=this.#l.payloadLength){const i=this.consume(this.#l.payloadLength);this.#d.push(i);if(!this.#l.fragmented||this.#l.fin&&this.#l.opcode===M.CONTINUATION){const i=Buffer.concat(this.#d);ie(this.ws,this.#l.originalOpcode,i);this.#l={};this.#d.length=0}this.#c=D.INFO}}if(this.#a>0){continue}else{i();break}}}consume(i){if(i>this.#a){return null}else if(i===0){return j}if(this.#o[0].length===i){this.#a-=this.#o[0].length;return this.#o.shift()}const d=Buffer.allocUnsafe(i);let p=0;while(p!==i){const y=this.#o[0];const{length:v}=y;if(v+p===i){d.set(this.#o.shift(),p);break}else if(v+p>i){d.set(y.subarray(0,i-p),p);this.#o[0]=y.subarray(i-p);break}else{d.set(this.#o.shift(),p);p+=y.length}}this.#a-=i;return d}parseCloseBody(i,d){let p;if(d.length>=2){p=d.readUInt16BE(0)}if(i){if(!re(p)){return null}return{code:p}}let y=d.subarray(2);if(y[0]===239&&y[1]===187&&y[2]===191){y=y.subarray(3)}if(p!==undefined&&!re(p)){return null}try{y=new TextDecoder("utf-8",{fatal:true}).decode(y)}catch{return null}return{code:p,reason:y}}get closingInfo(){return this.#l.closeInfo}}i.exports={ByteParser:ByteParser}},62933:i=>{"use strict";i.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},3574:(i,d,p)=>{"use strict";const{kReadyState:y,kController:v,kResponse:D,kBinaryType:M,kWebSocketURL:U}=p(62933);const{states:j,opcodes:V}=p(45913);const{MessageEvent:K,ErrorEvent:ee}=p(46255);function isEstablished(i){return i[y]===j.OPEN}function isClosing(i){return i[y]===j.CLOSING}function isClosed(i){return i[y]===j.CLOSED}function fireEvent(i,d,p=Event,y){const v=new p(i,y);d.dispatchEvent(v)}function websocketMessageReceived(i,d,p){if(i[y]!==j.OPEN){return}let v;if(d===V.TEXT){try{v=new TextDeLine truncated
/**
* ZipStream
*
* @ignore
* @license [MIT]{@link https://github.com/archiverjs/node-zip-stream/blob/master/LICENSE}
* @copyright (c) 2014 Chris Talkington, contributors.
*/
var y=p(39023).inherits;var v=p(47544).ZipArchiveOutputStream;var D=p(47544).ZipArchiveEntry;var M=p(53296);var U=i.exports=function(i){if(!(this instanceof U)){return new U(i)}i=this.options=i||{};i.zlib=i.zlib||{};v.call(this,i);if(typeof i.level==="number"&&i.level>=0){i.zlib.level=i.level;delete i.level}if(!i.forceZip64&&typeof i.zlib.level==="number"&&i.zlib.level===0){i.store=true}i.namePrependSlash=i.namePrependSlash||false;if(i.comment&&i.comment.length>0){this.setComment(i.comment)}};y(U,v);U.prototype._normalizeFileData=function(i){i=M.defaults(i,{type:"file",name:null,namePrependSlash:this.options.namePrependSlash,linkname:null,date:null,mode:null,store:this.options.store,comment:""});var d=i.type==="directory";var p=i.type==="symlink";if(i.name){i.name=M.sanitizePath(i.name);if(!p&&i.name.slice(-1)==="/"){d=true;i.type="directory"}else if(d){i.name+="/"}}if(d||p){i.store=true}i.date=M.dateify(i.date);return i};U.prototype.entry=function(i,d,p){if(typeof p!=="function"){p=this._emitErrorCallback.bind(this)}d=this._normalizeFileData(d);if(d.type!=="file"&&d.type!=="directory"&&d.type!=="symlink"){p(new Error(d.type+" entries not currently supported"));return}if(typeof d.name!=="string"||d.name.length===0){p(new Error("entry name must be a non-empty string value"));return}if(d.type==="symlink"&&typeof d.linkname!=="string"){p(new Error("entry linkname must be a non-empty string value when type equals symlink"));return}var y=new D(d.name);y.setTime(d.date,this.options.forceLocalTime);if(d.namePrependSlash){y.setName(d.name,true)}if(d.store){y.setMethod(0)}if(d.comment.length>0){y.setComment(d.comment)}if(d.type==="symlink"&&typeof d.mode!=="number"){d.mode=40960}if(typeof d.mode==="number"){if(d.type==="symlink"){d.mode|=40960}y.setUnixMode(d.mode)}if(d.type==="symlink"&&typeof d.linkname==="string"){i=Buffer.from(d.linkname)}return v.prototype.entry.call(this,y,i,p)};U.prototype.finalize=function(){this.finish()}},94258:function(i,d,p){"use strict";var y=this&&this.__createBinding||(Object.create?function(i,d,p,y){if(y===undefined)y=p;var v=Object.getOwnPropertyDescriptor(d,p);if(!v||("get"in v?!d.__esModule:v.writable||v.configurable)){v={enumerable:true,get:function(){return d[p]}}}Object.defineProperty(i,y,v)}:function(i,d,p,y){if(y===undefined)y=p;i[y]=d[p]});var v=this&&this.__setModuleDefault||(Object.create?function(i,d){Object.defineProperty(i,"default",{enumerable:true,value:d})}:function(i,d){i["default"]=d});var D=this&&this.__importStar||function(){var ownKeys=function(i){ownKeys=Object.getOwnPropertyNames||function(i){var d=[];for(var p in i)if(Object.prototype.hasOwnProperty.call(i,p))d[d.length]=p;return d};return ownKeys(i)};return function(i){if(i&&i.__esModule)return i;var d={};if(i!=null)for(var p=ownKeys(i),D=0;D<p.length;D++)if(p[D]!=="default")y(d,i,p[D]);v(d,i);return d}}();var M=this&&this.__awaiter||function(i,d,p,y){function adopt(i){return i instanceof p?i:new p((function(d){d(i)}))}return new(p||(p=Promise))((function(p,v){function fulfilled(i){try{step(y.next(i))}catch(i){v(i)}}function rejected(i){try{step(y["throw"](i))}catch(i){v(i)}}function step(i){i.done?p(i.value):adopt(i.value).then(fulfilled,rejected)}step((y=y.apply(i,d||[])).next())}))};Object.defineProperty(d,"__esModule",{value:true});d.getRegistriesData=d.getAccountIDs=d.getRegion=d.isPubECR=d.isECR=void 0;const U=D(p(37484));const j=p(28249);const V=p(29821);const K=p(61279);const ee=p(81970);const te=p(3669);const re=/^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/;const ne=/public\.ecr\.aws|ecr-public\.aws\.com/;const isECR=i=>re.test(i)||(0,d.isPubECR)(i);d.isECR=isECR;const isPubECR=i=>ne.test(i);d.isPubECR=isPubECR;const getRegion=i=>{if((0,d.isPubECR)(i)){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1"}const p=i.match(re);if(!p){return""}return p[4]};d.getRegion=getRegion;const getAccountIDs=i=>{if((0,d.isPubECR)(i)){return[]}const p=i.match(re);if(!p){return[]}const y=[p[2]];if(process.env.AWS_ACCOUNT_IDS){y.push(...process.env.AWS_ACCOUNT_IDS.split(","))}return y.filter(((i,d)=>y.indexOf(i)===d))};d.getAccountIDs=getAccountIDs;const getRegistriesData=(i,p,y)=>M(void 0,void 0,void 0,(function*(){const v=(0,d.getRegion)(i);const D=(0,d.getAccountIDs)(i);const M={};if(D.length>0){U.debug(`Requesting AWS ECR auth token for ${D.join(", ")}`);M["registryIds"]=D}let re;const ne=process.env.http_proxy||process.env.HTTP_PROXY||"";if(ne){U.debug(`Using http proxy ${ne}`);re=new ee.HttpProxyAgent(ne)}let ie;const se=process.env.https_proxy||process.env.HTTPS_PROXY||"";if(se){U.debug(`Using https proxy ${se}`);ie=new te.HttpsProxyAgent(se)}const oe=p&&y?{accessKeyId:p,secretAccessKey:y}:undefined;if((0,d.isPubECR)(i)){U.info(`AWS Public ECR detected with ${v} region`);const i=new V.ECRPUBLIC({customUserAgent:"docker-login-action",credentials:oe,region:v,requestHandler:new K.NodeHttpHandler({httpAgent:re,httpsAgent:ie})});const d=yieLine truncated
//# sourceMappingURL=index.js.map
Generated Vendored
-1
View File
@@ -1 +0,0 @@
{"version":3,"file":"index.js","names":["__createBinding","this","Object","create","o","m","k","k2","undefined","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","defineProperty","__exportStar","exports","p","prototype","hasOwnProperty","call","value","client_1","__webpack_require__","client","DefaultArtifactClient","Timestamp","runtime_1","runtime_2","runtime_3","runtime_4","runtime_5","runtime_6","runtime_7","Timestamp$Type","MessageType","constructor","super","no","name","kind","T","now","msg","ms","Date","seconds","PbLong","from","Math","floor","toString","nanos","toDate","message","toNumber","ceil","fromDate","date","getTime","internalJsonWrite","options","parse","Error","z","nanosStr","substring","toISOString","replace","internalJsonRead","json","target","typeofJsonValue","matches","match","Number","isNaN","globalThis","parseInt","repeat","length","MESSAGE_TYPE","reflectionMergePartial","internalBinaryRead","reader","end","pos","fieldNo","wireType","tag","int64","int32","u","readUnknownField","typeName","d","skip","UnknownFieldHandler","onRead","internalBinaryWrite","writer","WireType","Varint","writeUnknownFields","onWrite","BytesValue","StringValue","BoolValue","UInt32Value","Int32Value","UInt64Value","Int64Value","FloatValue","DoubleValue","DoubleValue$Type","refJsonWriter","scalar","refJsonReader","double","Bit64","FloatValue$Type","float","Bit32","Int64Value$Type","ScalarType","INT64","LongType","STRING","UInt64Value$Type","UINT64","uint64","Int32Value$Type","UInt32Value$Type","uint32","BoolValue$Type","bool","StringValue$Type","string","LengthDelimited","BytesValue$Type","Uint8Array","bytes","ArtifactService","DeleteArtifactResponse","DeleteArtifactRequest","GetSignedArtifactURLResponse","GetSignedArtifactURLRequest","ListArtifactsResponse_MonolithArtifact","ListArtifactsResponse","ListArtifactsRequest","FinalizeArtifactResponse","FinalizeArtifactRequest","CreateArtifactResponse","CreateArtifactRequest","FinalizeMigratedArtifactResponse","FinalizeMigratedArtifactRequest","MigrateArtifactResponse","MigrateArtifactRequest","runtime_rpc_1","wrappers_1","wrappers_2","timestamp_1","MigrateArtifactRequest$Type","workflowRunBackendId","expiresAt","fork","join","MigrateArtifactResponse$Type","ok","signedUploadUrl","FinalizeMigratedArtifactRequest$Type","size","FinalizeMigratedArtifactResponse$Type","artifactId","CreateArtifactRequest$Type","workflowJobRunBackendId","version","CreateArtifactResponse$Type","FinalizeArtifactRequest$Type","hash","FinalizeArtifactResponse$Type","ListArtifactsRequest$Type","nameFilter","idFilter","ListArtifactsResponse$Type","artifacts","push","i","ListArtifactsResponse_MonolithArtifact$Type","databaseId","createdAt","digest","GetSignedArtifactURLRequest$Type","GetSignedArtifactURLResponse$Type","signedUrl","DeleteArtifactRequest$Type","DeleteArtifactResponse$Type","ServiceType","I","O","ArtifactServiceClientProtobuf","ArtifactServiceClientJSON","artifact_1","rpc","CreateArtifact","bind","FinalizeArtifact","ListArtifacts","GetSignedArtifactURL","DeleteArtifact","request","data","toJson","useProtoFieldName","emitDefaultValues","promise","then","fromJson","ignoreUnknownFields","toBinary","fromBinary","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","apply","__rest","s","t","indexOf","getOwnPropertySymbols","propertyIsEnumerable","core_1","config_1","upload_artifact_1","download_artifact_1","delete_artifact_1","get_artifact_1","list_artifacts_1","errors_1","uploadArtifact","files","rootDirectory","isGhes","GHESNotSupportedError","error","warning","downloadArtifact","findBy","repositoryOwner","repositoryName","token","downloadOptions","downloadArtifactPublic","downloadArtifactInternal","listArtifacts","workflowRunId","listArtifactsPublic","latest","listArtifactsInternal","getArtifact","artifactName","getArtifactPublic","getArtifactInternal","deleteArtifact","deleteArtifactPublic","deleteArtifactInternal","github_1","user_agent_1","retry_options_1","utils_1","plugin_request_log_1","plugin_retry_1","artifact_twirp_client_1","util_1","generated_1","_a","retryOpts","requestOpts","getRetryOptions","defaults","opts","log","userAgent","getUserAgentString","previews","retry","github","getOctokit","requestLog","getArtifactResp","deleteArtifactResp","rest","actions","owner","repo","artifact_id","artifact","id","status","InvalidResponseError","headers","artifactClient","internalArtifactTwirpClient","getBackendIdsFromToken","listReq","listRes","ArtifactNotFoundError","sort","a","b","debug","req","res","info","__setModuleDefault","v","__importStar","mod","__importDefault","default","streamExtractExternal","promises_1","crypto","stream","core","httpClient","unzip_stream_1","scrubQueryParameters","url","parsed","URL","search","exists","path","access","code","streamExtract","directory","retryCount","setTimeout","HttpClient","response","statusCode","statusMessLine truncated
Generated Vendored
+4974 -13970
View File
File diff suppressed because it is too large. Load diff
Generated Vendored
-1
View File
@@ -1 +0,0 @@
(()=>{var e={296:e=>{var r=Object.prototype.toString;var n=typeof Buffer!=="undefined"&&typeof Buffer.alloc==="function"&&typeof Buffer.allocUnsafe==="function"&&typeof Buffer.from==="function";function isArrayBuffer(e){return r.call(e).slice(8,-1)==="ArrayBuffer"}function fromArrayBuffer(e,r,t){r>>>=0;var o=e.byteLength-r;if(o<0){throw new RangeError("'offset' is out of bounds")}if(t===undefined){t=o}else{t>>>=0;if(t>o){throw new RangeError("'length' is out of bounds")}}return n?Buffer.from(e.slice(r,r+t)):new Buffer(new Uint8Array(e.slice(r,r+t)))}function fromString(e,r){if(typeof r!=="string"||r===""){r="utf8"}if(!Buffer.isEncoding(r)){throw new TypeError('"encoding" must be a valid string encoding')}return n?Buffer.from(e,r):new Buffer(e,r)}function bufferFrom(e,r,t){if(typeof e==="number"){throw new TypeError('"value" argument must not be a number')}if(isArrayBuffer(e)){return fromArrayBuffer(e,r,t)}if(typeof e==="string"){return fromString(e,r)}return n?Buffer.from(e):new Buffer(e)}e.exports=bufferFrom},599:(e,r,n)=>{e=n.nmd(e);var t=n(927).SourceMapConsumer;var o=n(928);var i;try{i=n(896);if(!i.existsSync||!i.readFileSync){i=null}}catch(e){}var a=n(296);function dynamicRequire(e,r){return e.require(r)}var u=false;var s=false;var l=false;var c="auto";var p={};var f={};var g=/^data:application\/json[^,]+base64,/;var d=[];var h=[];function isInBrowser(){if(c==="browser")return true;if(c==="node")return false;return typeof window!=="undefined"&&typeof XMLHttpRequest==="function"&&!(window.require&&window.module&&window.process&&window.process.type==="renderer")}function hasGlobalProcessEventEmitter(){return typeof process==="object"&&process!==null&&typeof process.on==="function"}function globalProcessVersion(){if(typeof process==="object"&&process!==null){return process.version}else{return""}}function globalProcessStderr(){if(typeof process==="object"&&process!==null){return process.stderr}}function globalProcessExit(e){if(typeof process==="object"&&process!==null&&typeof process.exit==="function"){return process.exit(e)}}function handlerExec(e){return function(r){for(var n=0;n<e.length;n++){var t=e[n](r);if(t){return t}}return null}}var m=handlerExec(d);d.push((function(e){e=e.trim();if(/^file:/.test(e)){e=e.replace(/file:\/\/\/(\w:)?/,(function(e,r){return r?"":"/"}))}if(e in p){return p[e]}var r="";try{if(!i){var n=new XMLHttpRequest;n.open("GET",e,false);n.send(null);if(n.readyState===4&&n.status===200){r=n.responseText}}else if(i.existsSync(e)){r=i.readFileSync(e,"utf8")}}catch(e){}return p[e]=r}));function supportRelativeURL(e,r){if(!e)return r;var n=o.dirname(e);var t=/^\w+:\/\/[^\/]*/.exec(n);var i=t?t[0]:"";var a=n.slice(i.length);if(i&&/^\/\w\:/.test(a)){i+="/";return i+o.resolve(n.slice(i.length),r).replace(/\\/g,"/")}return i+o.resolve(n.slice(i.length),r)}function retrieveSourceMapURL(e){var r;if(isInBrowser()){try{var n=new XMLHttpRequest;n.open("GET",e,false);n.send(null);r=n.readyState===4?n.responseText:null;var t=n.getResponseHeader("SourceMap")||n.getResponseHeader("X-SourceMap");if(t){return t}}catch(e){}}r=m(e);var o=/(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/gm;var i,a;while(a=o.exec(r))i=a;if(!i)return null;return i[1]}var v=handlerExec(h);h.push((function(e){var r=retrieveSourceMapURL(e);if(!r)return null;var n;if(g.test(r)){var t=r.slice(r.indexOf(",")+1);n=a(t,"base64").toString();r=e}else{r=supportRelativeURL(e,r);n=m(r)}if(!n){return null}return{url:r,map:n}}));function mapSourcePosition(e){var r=f[e.source];if(!r){var n=v(e.source);if(n){r=f[e.source]={url:n.url,map:new t(n.map)};if(r.map.sourcesContent){r.map.sources.forEach((function(e,n){var t=r.map.sourcesContent[n];if(t){var o=supportRelativeURL(r.url,e);p[o]=t}}))}}else{r=f[e.source]={url:null,map:null}}}if(r&&r.map&&typeof r.map.originalPositionFor==="function"){var o=r.map.originalPositionFor(e);if(o.source!==null){o.source=supportRelativeURL(r.url,o.source);return o}}return e}function mapEvalOrigin(e){var r=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(r){var n=mapSourcePosition({source:r[2],line:+r[3],column:r[4]-1});return"eval at "+r[1]+" ("+n.source+":"+n.line+":"+(n.column+1)+")"}r=/^eval at ([^(]+) \((.+)\)$/.exec(e);if(r){return"eval at "+r[1]+" ("+mapEvalOrigin(r[2])+")"}return e}function CallSiteToString(){var e;var r="";if(this.isNative()){r="native"}else{e=this.getScriptNameOrSourceURL();if(!e&&this.isEval()){r=this.getEvalOrigin();r+=", "}if(e){r+=e}else{r+="<anonymous>"}var n=this.getLineNumber();if(n!=null){r+=":"+n;var t=this.getColumnNumber();if(t){r+=":"+t}}}var o="";var i=this.getFunctionName();var a=true;var u=this.isConstructor();var s=!(this.isToplevel()||u);if(s){var l=this.getTypeName();if(l==="[object Object]"){l="null"}var c=this.getMethodName();if(i){if(l&&i.indexOf(l)!=0){o+=l+"."}o+=i;if(c&&i.indexOf("."+c)!=i.length-c.length-1){o+=" [as "+c+"]"}}else{o+=l+"."+(c||"<anonymous>")}}else if(u){o+="new "+(i||"<aLine truncated
+52
View File
@@ -0,0 +1,52 @@
import {defineConfig} from 'eslint/config';
import js from '@eslint/js';
import tseslint from '@typescript-eslint/eslint-plugin';
import vitest from '@vitest/eslint-plugin';
import globals from 'globals';
import eslintConfigPrettier from 'eslint-config-prettier/flat';
import eslintPluginPrettier from 'eslint-plugin-prettier';
export default defineConfig([
{
ignores: ['.yarn/**/*', 'coverage/**/*', 'dist/**/*']
},
js.configs.recommended,
...tseslint.configs['flat/recommended'],
eslintConfigPrettier,
{
languageOptions: {
globals: {
...globals.node
}
}
},
{
files: ['__tests__/**'],
...vitest.configs.recommended,
languageOptions: {
globals: {
...globals.node,
...vitest.environments.env.globals
}
},
rules: {
...vitest.configs.recommended.rules,
'vitest/no-conditional-expect': 'error',
'vitest/no-disabled-tests': 0
}
},
{
plugins: {
prettier: eslintPluginPrettier
},
rules: {
'prettier/prettier': 'error',
'@typescript-eslint/no-require-imports': [
'error',
{
allowAsImport: true
}
]
}
}
]);
-30
View File
@@ -1,30 +0,0 @@
import fs from 'fs';
import os from 'os';
import path from 'path';
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'docker-login-action-')).split(path.sep).join(path.posix.sep);
process.env = Object.assign({}, process.env, {
TEMP: tmpDir,
GITHUB_REPOSITORY: 'docker/login-action',
RUNNER_TEMP: path.join(tmpDir, 'runner-temp').split(path.sep).join(path.posix.sep),
RUNNER_TOOL_CACHE: path.join(tmpDir, 'runner-tool-cache').split(path.sep).join(path.posix.sep)
}) as {
[key: string]: string;
};
module.exports = {
clearMocks: true,
testEnvironment: 'node',
moduleFileExtensions: ['js', 'ts'],
testMatch: ['**/*.test.ts'],
transform: {
'^.+\\.ts$': 'ts-jest'
},
moduleNameMapper: {
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs'
},
collectCoverageFrom: ['src/**/{!(main.ts),}.ts'],
coveragePathIgnorePatterns: ['lib/', 'node_modules/', '__tests__/'],
verbose: true
};
+31 -29
View File
@@ -1,16 +1,14 @@
{
"name": "docker-login",
"description": "GitHub Action to login against a Docker registry",
"type": "module",
"main": "src/main.ts",
"scripts": {
"build": "ncc build --source-map --minify --license licenses.txt",
"lint": "yarn run prettier && yarn run eslint",
"format": "yarn run prettier:fix && yarn run eslint:fix",
"eslint": "eslint --max-warnings=0 .",
"eslint:fix": "eslint --fix .",
"prettier": "prettier --check \"./**/*.ts\"",
"prettier:fix": "prettier --write \"./**/*.ts\"",
"test": "jest"
"build": "esbuild src/main.ts --bundle --platform=node --target=node24 --format=cjs --outfile=dist/index.cjs --sourcemap --minify --keep-names && yarn run license",
"lint": "eslint --max-warnings=0 .",
"format": "eslint --fix .",
"test": "vitest run",
"license": "generate-license-file --input package.json --output dist/licenses.txt --overwrite --ci --no-spinner --eol lf"
},
"repository": {
"type": "git",
@@ -23,30 +21,34 @@
],
"author": "Docker Inc.",
"license": "Apache-2.0",
"packageManager": "yarn@4.9.2",
"packageManager": "yarn@4.15.0",
"dependencies": {
"@actions/core": "^1.11.1",
"@aws-sdk/client-ecr": "^3.890.0",
"@aws-sdk/client-ecr-public": "^3.890.0",
"@docker/actions-toolkit": "^0.63.0",
"http-proxy-agent": "^7.0.2",
"https-proxy-agent": "^7.0.6",
"js-yaml": "^4.1.0"
"@actions/core": "^3.0.1",
"@actions/http-client": "^4.0.1",
"@aws-sdk/client-ecr": "^3.1095.0",
"@aws-sdk/client-ecr-public": "^3.1095.0",
"@docker/actions-toolkit": "^0.94.0",
"http-proxy-agent": "^9.1.0",
"https-proxy-agent": "^9.1.0",
"js-yaml": "^5.5.0",
"uuid": "^14.0.1"
},
"devDependencies": {
"@eslint/js": "^9.39.3",
"@types/js-yaml": "^4.0.9",
"@types/node": "^20.19.9",
"@typescript-eslint/eslint-plugin": "^7.18.0",
"@typescript-eslint/parser": "^7.18.0",
"@vercel/ncc": "^0.38.3",
"eslint": "^8.57.1",
"eslint-config-prettier": "^9.1.2",
"eslint-plugin-jest": "^28.14.0",
"eslint-plugin-prettier": "^5.5.4",
"jest": "^29.7.0",
"prettier": "^3.6.2",
"ts-jest": "^29.4.1",
"ts-node": "^10.9.2",
"typescript": "^5.9.2"
"@types/node": "^24.11.0",
"@typescript-eslint/eslint-plugin": "^8.56.1",
"@typescript-eslint/parser": "^8.56.1",
"@vitest/coverage-v8": "^4.0.18",
"@vitest/eslint-plugin": "^1.6.9",
"esbuild": "^0.28.0",
"eslint": "^9.39.3",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-prettier": "^5.5.5",
"generate-license-file": "^4.1.1",
"globals": "^17.3.0",
"prettier": "^3.8.1",
"typescript": "^5.9.3",
"vitest": "^4.0.18"
}
}
+41 -14
View File
@@ -2,8 +2,8 @@ import path from 'path';
import * as core from '@actions/core';
import * as yaml from 'js-yaml';
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx';
import {Util} from '@docker/actions-toolkit/lib/util';
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx.js';
import {Util} from '@docker/actions-toolkit/lib/util.js';
export interface Inputs {
registry: string;
@@ -42,24 +42,28 @@ export function getAuthList(inputs: Inputs): Array<Auth> {
}
let auths: Array<Auth> = [];
if (!inputs.registryAuth) {
const registry = inputs.registry || 'docker.io';
auths.push({
registry: inputs.registry || 'docker.io',
registry,
username: inputs.username,
password: inputs.password,
scope: inputs.scope,
ecr: inputs.ecr || 'auto',
configDir: scopeToConfigDir(inputs.registry, inputs.scope)
configDir: scopeToConfigDir(registry, inputs.scope)
});
} else {
auths = (yaml.load(inputs.registryAuth) as Array<Auth>).map(auth => {
core.setSecret(auth.password); // redacted in workflow logs
if (auth.password) {
core.setSecret(auth.password); // redacted in workflow logs
}
const registry = auth.registry || 'docker.io';
return {
registry: auth.registry || 'docker.io',
registry,
username: auth.username,
password: auth.password,
scope: auth.scope,
ecr: auth.ecr || 'auto',
configDir: scopeToConfigDir(auth.registry || 'docker.io', auth.scope)
ecr: String(auth.ecr ?? '') || 'auto',
configDir: scopeToConfigDir(registry, auth.scope)
};
});
}
@@ -73,13 +77,36 @@ export function scopeToConfigDir(registry: string, scope?: string): string {
if (scopeDisabled() || !scope || scope === '') {
return '';
}
let configDir = path.join(Buildx.configDir, 'config', registry === 'docker.io' ? 'registry-1.docker.io' : registry);
if (scope.startsWith('@')) {
configDir += scope;
} else {
configDir = path.join(configDir, scope);
const schemeEnd = registry.indexOf('://');
// A neutral scheme preserves explicit ports, including HTTP(S) default ports.
const registryHost = schemeEnd === -1 ? registry : new URL(`registry://${registry.slice(schemeEnd + 3)}`).host;
const configRoot = path.resolve(Buildx.configDir, 'config');
const registryDir = path.resolve(configRoot, registryHost === 'docker.io' ? 'registry-1.docker.io' : registryHost);
if (!isChildPath(configRoot, registryDir)) {
throw new Error(`Invalid registry '${registry}': resolved config path escapes the Buildx config directory`);
}
return configDir;
const scopeParts = scope.split('@');
if (scopeParts.length > 2) {
throw new Error(`Invalid scope '${scope}': scope can contain at most one @ separator`);
}
const [scopePath, scopeActions] = scopeParts;
if (scopeActions !== undefined && !/^[a-z]+(,[a-z]+)*$/.test(scopeActions)) {
throw new Error(`Invalid scope '${scope}': scope actions must be lowercase names separated by commas`);
}
const scopeSuffix = scopeActions === undefined ? '' : `@${scopeActions}`;
if (scopePath === '') {
return `${registryDir}${scopeSuffix}`;
}
const configDir = path.resolve(registryDir, scopePath);
if (!isChildPath(registryDir, configDir)) {
throw new Error(`Invalid scope '${scope}': resolved config path escapes the Buildx config directory`);
}
return `${configDir}${scopeSuffix}`;
}
function isChildPath(parent: string, child: string): boolean {
const relativePath = path.relative(parent, child);
return relativePath !== '' && relativePath !== '..' && !relativePath.startsWith(`..${path.sep}`) && !path.isAbsolute(relativePath);
}
function scopeDisabled(): boolean {
+12 -4
View File
@@ -1,15 +1,23 @@
import * as core from '@actions/core';
import * as aws from './aws';
import * as context from './context';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker.js';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker';
import * as aws from './aws.js';
import * as context from './context.js';
import * as dockerhub from './dockerhub.js';
export async function login(auth: context.Auth): Promise<void> {
if (/true/i.test(auth.ecr) || (auth.ecr == 'auto' && aws.isECR(auth.registry))) {
await loginECR(auth.registry, auth.username, auth.password, auth.scope);
} else {
await loginStandard(auth.registry, auth.username, auth.password, auth.scope);
let username = auth.username;
let password = auth.password;
if (dockerhub.isDockerHubOIDC(auth.registry, password)) {
const credentials = await dockerhub.getOIDCToken(auth.registry, username);
username = credentials.username;
password = credentials.token;
}
await loginStandard(auth.registry, username, password, auth.scope);
}
}
+137
View File
@@ -0,0 +1,137 @@
import * as core from '@actions/core';
import * as httpm from '@actions/http-client';
import {HttpCodes} from '@actions/http-client';
import {validate as uuidValidate} from 'uuid';
export interface LoginCredentials {
username: string;
token: string;
}
interface OIDCTokenResponse {
access_token: string;
}
const registries = new Set(['', 'docker.io', 'registry-1.docker.io', 'registry-1-stage.docker.io', 'dhi.io']);
const defaultExpiresIn = 300;
const minExpiresIn = 300;
const maxExpiresIn = 21600;
const maxRetries = 5;
export const isDockerHubOIDC = (registry: string, password: string): boolean => {
return process.env.DOCKERHUB_OIDC_CONNECTIONID !== undefined && !password && registries.has(registry);
};
export const getOIDCToken = async (registry: string, username: string): Promise<LoginCredentials> => {
const connectionID = process.env.DOCKERHUB_OIDC_CONNECTIONID?.trim();
if (!connectionID) {
throw new Error('DOCKERHUB_OIDC_CONNECTIONID is required for Docker Hub OIDC login');
}
if (!uuidValidate(connectionID)) {
throw new Error('Invalid DOCKERHUB_OIDC_CONNECTIONID. Must be a valid UUID.');
}
const expiresIn = getExpiresIn();
const identityHost = registry === 'registry-1-stage.docker.io' ? 'identity-stage.docker.com' : 'identity.docker.com';
const audience = `https://${identityHost}`;
core.info(`Docker Hub OIDC detected for ${registry || 'docker.io'}`);
core.debug(`Docker Hub OIDC token audience: ${audience}`);
core.debug(`Docker Hub OIDC token expiration: ${expiresIn}s`);
core.info(`Retrieving GitHub OIDC token for Docker Hub`);
const idToken = await core.getIDToken(audience);
const http: httpm.HttpClient = new httpm.HttpClient('github.com/docker/login-action', [], {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
});
const data = new URLSearchParams();
data.set('grant_type', 'urn:ietf:params:oauth:grant-type:token-exchange');
data.set('subject_token_type', 'urn:ietf:params:oauth:token-type:id_token');
data.set('subject_token', idToken);
data.set('connection_id', connectionID);
data.set('expires_in', expiresIn.toString());
core.info(`Exchanging GitHub OIDC token for Docker Hub token`);
const resp = await postWithRetry(http, `https://${identityHost}/oauth/token`, data.toString());
const tokenResp = <OIDCTokenResponse>JSON.parse(await handleResponse(resp));
core.setSecret(tokenResp.access_token);
core.info(`Docker Hub OIDC token exchange succeeded`);
return {
username,
token: tokenResp.access_token
};
};
const getExpiresIn = (): number => {
const expiresInInput = process.env.DOCKERHUB_OIDC_EXPIREIN?.trim() || defaultExpiresIn.toString();
const expiresIn = Number(expiresInInput);
if (isNaN(expiresIn) || expiresIn < minExpiresIn || expiresIn > maxExpiresIn) {
throw new Error(`Invalid DOCKERHUB_OIDC_EXPIREIN: ${expiresInInput}. Must be between ${minExpiresIn} and ${maxExpiresIn}`);
}
return expiresIn;
};
const postWithRetry = async (http: httpm.HttpClient, url: string, data: string): Promise<httpm.HttpClientResponse> => {
core.debug(`Sending Docker Hub OIDC token request to ${url}`);
let resp = await http.post(url, data);
core.debug(`Docker Hub OIDC token request returned status code ${resp.message.statusCode || HttpCodes.InternalServerError}`);
for (let attempt = 0; (resp.message.statusCode || HttpCodes.InternalServerError) === HttpCodes.TooManyRequests && attempt < maxRetries; attempt++) {
const delay = parseRetryAfter(resp.message.headers['retry-after']);
if (delay === null) {
core.debug(`Docker Hub OIDC token request rate limited without retry-after header`);
break;
}
await resp.readBody();
core.info(`Docker Hub OIDC token request rate limited, retrying in ${delay}ms (attempt ${attempt + 1}/${maxRetries})`);
await new Promise(resolve => setTimeout(resolve, delay));
resp = await http.post(url, data);
core.debug(`Docker Hub OIDC token request returned status code ${resp.message.statusCode || HttpCodes.InternalServerError}`);
}
return resp;
};
const parseRetryAfter = (value: string | string[] | undefined): number | null => {
if (value === undefined) {
return null;
}
if (Array.isArray(value)) {
value = value[0];
}
const seconds = Number(value);
if (isNaN(seconds)) {
return null;
}
return Math.max(0, seconds * 1000);
};
const handleResponse = async (resp: httpm.HttpClientResponse): Promise<string> => {
const body = await resp.readBody();
const statusCode = resp.message.statusCode || HttpCodes.InternalServerError;
core.debug(`Docker Hub OIDC token response status code: ${statusCode}`);
if (statusCode < HttpCodes.OK || statusCode >= HttpCodes.MultipleChoices) {
throw parseError(statusCode, body);
}
return body;
};
const parseError = (statusCode: number, body: string): Error => {
if (body) {
let errResp: unknown;
try {
errResp = JSON.parse(body);
} catch {
errResp = undefined;
}
if (errResp !== undefined) {
throw new Error(`Docker Hub API: bad status code ${statusCode}: ${JSON.stringify(errResp)}`);
}
}
if (statusCode === 401) {
throw new Error(`Docker Hub API: operation not permitted`);
}
throw new Error(`Docker Hub API: bad status code ${statusCode}`);
};
+3 -3
View File
@@ -1,9 +1,9 @@
import * as core from '@actions/core';
import * as actionsToolkit from '@docker/actions-toolkit';
import * as context from './context';
import * as docker from './docker';
import * as stateHelper from './state-helper';
import * as context from './context.js';
import * as docker from './docker.js';
import * as stateHelper from './state-helper.js';
export async function main(): Promise<void> {
const inputs: context.Inputs = context.getInputs();
+4 -8
View File
@@ -1,9 +1,8 @@
{
"compilerOptions": {
"module": "nodenext",
"moduleResolution": "nodenext",
"esModuleInterop": true,
"target": "es6",
"module": "commonjs",
"strict": true,
"newLine": "lf",
"outDir": "./lib",
"rootDir": "./src",
@@ -12,10 +11,7 @@
"resolveJsonModule": true,
"useUnknownInCatchVariables": false,
},
"exclude": [
"./__tests__/**/*",
"./lib/**/*",
"node_modules",
"jest.config.ts"
"include": [
"src/**/*.ts"
]
}
+16
View File
@@ -0,0 +1,16 @@
import {defineConfig} from 'vitest/config';
export default defineConfig({
test: {
clearMocks: true,
environment: 'node',
setupFiles: ['./__tests__/setup.unit.ts'],
include: ['**/*.test.ts'],
coverage: {
provider: 'v8',
reporter: ['clover'],
include: ['src/**/*.ts'],
exclude: ['src/**/main.ts']
}
}
});
+3801 -5400
View File
File diff suppressed because it is too large. Load diff