Compare commits

...
413 Commits
Author SHA1 Message Date
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
CrazyMax c94ce9fb46 Merge pull request #915 from docker/dependabot/npm_and_yarn/lodash-4.17.23
build(deps): bump lodash from 4.17.21 to 4.17.23
2026-01-27 17:53:30 +01:00
CrazyMax 8339c958ce Merge pull request #912 from docker/scope
Add scope input to set scopes for the authentication token
2026-01-27 17:49:31 +01:00
dependabot[bot] c83e9320c8 build(deps): bump lodash from 4.17.21 to 4.17.23
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 00:32:22 +00:00
CrazyMax b268aa57e3 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-13 18:05:27 +01:00
CrazyMax a603229278 documentation for scope input
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-13 18:00:29 +01:00
CrazyMax 7567f92a74 Add scope input to set scopes for the authentication token
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-13 18:00:29 +01:00
CrazyMax 0567fa5ae8 Merge pull request #914 from dphi/add-support-for-amazonaws.eu
feat: add support for AWS European Sovereign Cloud ECR
2026-01-13 17:56:04 +01:00
Philipp Dreimann f6ef577545 feat: add support for AWS European Sovereign Cloud ECR registries
- Update ECR registry regex to match `.amazonaws.eu` domain suffix
- Add test cases for `eusc-de-east-1.amazonaws.eu` region format

Fixes: #908

Signed-off-by: Philipp Dreimann <pdreiman@amazon.de>
Tested-by: Lukas Valentin Buchmeier-Probst <lvbp@amazon.de>
2026-01-13 16:53:08 +01:00
CrazyMax 916386b000 Merge pull request #911 from crazy-max/ensure-redact
ensure passwords are redacted with registry-auth
2026-01-07 09:35:51 +01:00
CrazyMax 5b3f94a294 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-06 11:21:53 +01:00
CrazyMax f9cc43b63d ensure passwords are redacted with registry-auth
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-01-06 11:20:01 +01:00
CrazyMax 6862ffc5ab Merge pull request #902 from docker/dependabot/github_actions/actions/checkout-6
build(deps): bump actions/checkout from 5 to 6
2025-12-19 11:16:30 +01:00
dependabot[bot] 4349d75975 build(deps): bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [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/v5...v6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-21 05:01:49 +00:00
CrazyMax 28fdb31ff3 Merge pull request #894 from docker/dependabot/github_actions/github/codeql-action-4
build(deps): bump github/codeql-action from 3 to 4
2025-10-17 11:22:27 +02:00
dependabot[bot] 2064b45545 build(deps): bump github/codeql-action from 3 to 4
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3 to 4.
- [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/v3...v4)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-08 05:01:54 +00:00
CrazyMax 5e57cd1181 Merge pull request #890 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-0da3cd129b
build(deps): bump the aws-sdk-dependencies group with 2 updates
2025-09-29 12:29:19 +02:00
CrazyMax 97e31439e8 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-29 12:27:12 +02:00
dependabot[bot] 3a0796b57f 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.888.0 to 3.890.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.890.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.888.0 to 3.890.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.890.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.890.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.890.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-17 05:04:22 +00:00
CrazyMax 5b7b28b1cc Merge pull request #882 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-f08b3cc7bd
build(deps): bump the aws-sdk-dependencies group with 2 updates
2025-09-13 14:06:31 +02:00
CrazyMax abc9fb3154 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 14:04:57 +02:00
dependabot[bot] d468688814 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.859.0 to 3.862.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.862.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.859.0 to 3.862.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.862.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.862.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.862.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 12:03:39 +00:00
CrazyMax a99b2f88fc Merge pull request #883 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.63.0
build(deps): bump @docker/actions-toolkit from 0.62.1 to 0.63.0
2025-09-13 13:59:55 +02:00
CrazyMax 0d7fae8057 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:57:06 +02:00
dependabot[bot] 9832253cb7 build(deps): bump @docker/actions-toolkit from 0.62.1 to 0.63.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.62.1 to 0.63.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.62.1...v0.63.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 11:55:30 +00:00
CrazyMax 09e05bbdf6 Merge pull request #881 from docker/dependabot/npm_and_yarn/tmp-0.2.4
build(deps): bump tmp from 0.2.3 to 0.2.4
2025-09-13 13:53:13 +02:00
CrazyMax 4384bb23be chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:51:35 +02:00
dependabot[bot] 722c6681a5 build(deps): bump tmp from 0.2.3 to 0.2.4
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.3 to 0.2.4.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.3...v0.2.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 11:50:28 +00:00
CrazyMax 0bd2ba43c1 Merge pull request #880 from docker/dependabot/npm_and_yarn/brace-expansion-1.1.12
build(deps): bump brace-expansion from 1.1.11 to 1.1.12
2025-09-13 13:48:13 +02:00
CrazyMax 18836d8e24 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:45:24 +02:00
dependabot[bot] 997e14a133 build(deps): bump brace-expansion from 1.1.11 to 1.1.12
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.11 to 1.1.12.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 11:41:40 +00:00
CrazyMax 67d87fe2c8 Merge pull request #879 from docker/dependabot/npm_and_yarn/undici-5.29.0
build(deps): bump undici from 5.28.4 to 5.29.0
2025-09-13 13:39:39 +02:00
CrazyMax 1287044d73 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:37:28 +02:00
dependabot[bot] 9fa22322ec build(deps): bump undici from 5.28.4 to 5.29.0
Bumps [undici](https://github.com/nodejs/undici) from 5.28.4 to 5.29.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.4...v5.29.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 11:30:28 +00:00
CrazyMax 738e2ed2fd Merge pull request #889 from crazy-max/update-yarn
update yarn to 4.9.2
2025-09-13 13:27:51 +02:00
CrazyMax 5497b8b59c update yarn to 4.9.2
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:25:31 +02:00
CrazyMax 2d98472de9 Merge pull request #888 from crazy-max/update-dev
update dev dependencies
2025-09-13 13:22:10 +02:00
CrazyMax 3c28a369b4 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:19:28 +02:00
CrazyMax 072e0d514c update dev dependencies
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-13 13:19:16 +02:00
Tõnis Tiigi 65c0768122 Merge pull request #887 from docker/multi-login
raw authentication to registries
2025-09-12 10:09:37 -07:00
CrazyMax 3d793fe111 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-12 18:17:17 +02:00
CrazyMax 9fc23e88e3 raw authentication to registries
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-09-12 18:16:00 +02:00
CrazyMax bdf14dc173 Merge pull request #884 from docker/dependabot/github_actions/actions/checkout-5
build(deps): bump actions/checkout from 4 to 5
2025-09-08 16:20:39 +02:00
CrazyMax 21ddfdf39a Merge pull request #886 from docker/dependabot/github_actions/aws-actions/configure-aws-credentials-5
build(deps): bump aws-actions/configure-aws-credentials from 4 to 5
2025-09-08 16:20:21 +02:00
dependabot[bot] d5f9e03fca build(deps): bump aws-actions/configure-aws-credentials from 4 to 5
Bumps [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) from 4 to 5.
- [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/v4...v5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-04 11:17:32 +00:00
dependabot[bot] 9b3389107c build(deps): bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [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/v4...v5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-12 14:16:25 +00:00
CrazyMax 184bdaa072 Merge pull request #878 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-344ecd0453
build(deps): bump the aws-sdk-dependencies group with 2 updates
2025-08-04 15:27:32 +02:00
CrazyMax 5c6bc94683 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-04 15:00:00 +02:00
dependabot[bot] caf4058643 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.858.0 to 3.859.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.859.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.858.0 to 3.859.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.859.0/clients/client-ecr-public)

---
updated-dependencies:
- dependency-name: "@aws-sdk/client-ecr"
  dependency-version: 3.859.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.859.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 06:56:58 +00:00
CrazyMax ef38ec311a Merge pull request #860 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-1489289360
build(deps): bump the aws-sdk-dependencies group with 2 updates
2025-08-01 15:23:40 +02:00
CrazyMax d52e8ef81c chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-01 15:19:01 +02:00
dependabot[bot] 9644ab7025 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.766.0 to 3.772.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.772.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.758.0 to 3.772.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.772.0/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-01 13:15:33 +00:00
CrazyMax 7abd1d5126 Merge pull request #875 from docker/dependabot/npm_and_yarn/form-data-2.5.5
build(deps): bump form-data from 2.5.1 to 2.5.5
2025-08-01 15:12:33 +02:00
CrazyMax 1a81202c4f Merge pull request #876 from crazy-max/aws-public-dual-stack
support dual-stack for aws public ecr
2025-08-01 15:12:06 +02:00
CrazyMax d1ab30dc54 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-01 14:28:47 +02:00
CrazyMax f25ff28d1c support dual-stack for aws public ecr
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-01 14:27:31 +02:00
CrazyMax e0c62a93a1 Merge pull request #874 from Spacefish/support-new-aws-ecr-endpoint
Support new <registry-id>.dkr-ecr.<aws-region>.on.aws endpoint
2025-08-01 14:22:06 +02:00
dependabot[bot] 34f6d346b5 build(deps): bump form-data from 2.5.1 to 2.5.5
---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 2.5.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 23:10:27 +00:00
Timo Witte a547b56e5b docker build artefacts
Signed-off-by: Timo Witte <timo_witte@agilent.com>
2025-07-21 18:57:22 +02:00
Timo Witte b7f56fce8a support new <registry-id>.dkr-ecr.<aws-region>.on.aws endpoints
Signed-off-by: Timo Witte <timo_witte@agilent.com>
2025-07-21 18:43:51 +02:00
CrazyMax 3d100841f6 Merge pull request #870 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.62.1
build(deps): bump @docker/actions-toolkit from 0.57.0 to 0.62.1
2025-06-13 14:50:28 +02:00
CrazyMax 5713f8474e chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-06-13 14:48:11 +02:00
dependabot[bot] 0a8c41d6e2 build(deps): bump @docker/actions-toolkit from 0.57.0 to 0.62.1
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.57.0 to 0.62.1.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.57.0...v0.62.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 05:07:35 +00:00
CrazyMax 6d4b68b490 Merge pull request #865 from crazy-max/pr-assign-author
pr-assign-author workflow
2025-04-23 16:09:02 +02:00
CrazyMax b7f1bbcce7 pr-assign-author workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-04-23 14:16:29 +02:00
CrazyMax abd3abc99c Merge pull request #864 from crazy-max/fix-codecov
ci: fix missing source for codecov
2025-04-22 14:35:11 +02:00
CrazyMax ac38c32963 ci: fix missing source for codecov
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-04-22 14:32:08 +02:00
CrazyMax 74a5d14239 Merge pull request #856 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-a0433587d4
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2025-03-14 10:42:52 +01:00
CrazyMax 2f4f00e4c6 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-03-14 10:31:40 +01:00
dependabot[bot] 67c184546c 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.664.0 to 3.758.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.758.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.664.0 to 3.758.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.758.0/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 09:20:42 +00:00
CrazyMax 3d4cc89e85 Merge pull request #844 from graysonpike/master
Fix link to AWS ECR PowerUser IAM documentation
2025-03-14 10:18:27 +01:00
CrazyMax 6cc823a6c4 Merge pull request #823 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-c793d21dd6
build(deps): bump https-proxy-agent from 7.0.5 to 7.0.6 in the proxy-agent-dependencies group
2025-03-14 10:17:41 +01:00
CrazyMax d94e792124 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-03-14 10:15:25 +01:00
CrazyMax 033db0da30 Merge pull request #812 from docker/dependabot/github_actions/codecov/codecov-action-5
build(deps): bump codecov/codecov-action from 4 to 5
2025-03-14 10:13:32 +01:00
dependabot[bot] 09c2ae9716 build(deps): bump https-proxy-agent
Bumps the proxy-agent-dependencies group with 1 update: [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent).


Updates `https-proxy-agent` from 7.0.5 to 7.0.6
- [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@7.0.6/packages/https-proxy-agent)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 08:58:24 +00:00
CrazyMax ba56f006fc ci: update deprecated input for codecov-action
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-03-14 09:57:39 +01:00
CrazyMax 75bf9a79af Merge pull request #858 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.57.0
build(deps): bump @docker/actions-toolkit from 0.42.0 to 0.57.0
2025-03-14 09:56:12 +01:00
CrazyMax ed2698b25f chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-03-14 09:53:51 +01:00
CrazyMax 52ad1d2e01 Merge pull request #814 from docker/dependabot/npm_and_yarn/cross-spawn-7.0.6
build(deps): bump cross-spawn from 7.0.3 to 7.0.6
2025-03-14 09:48:59 +01:00
dependabot[bot] f18ea97ee4 build(deps): bump @docker/actions-toolkit from 0.42.0 to 0.57.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.42.0 to 0.57.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.42.0...v0.57.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-12 05:57:14 +00:00
Grayson Pike 07d7ee0dc6 Fix link to AWS ECR PowerUser IAM documentation
Signed-off-by: Grayson Pike <graysonpike@gmail.com>
2025-01-18 21:52:44 -08:00
CrazyMax 327cd5a69d Merge pull request #838 from crazy-max/bake-v6
update bake-action to v6
2025-01-08 18:54:29 +01:00
CrazyMax e217ef3a2d update bake-action to v6
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-01-08 12:58:36 +01:00
dependabot[bot] 407f438d11 build(deps): bump cross-spawn from 7.0.3 to 7.0.6
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-18 22:59:31 +00:00
dependabot[bot] 28e19ee314 build(deps): bump codecov/codecov-action from 4 to 5
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4 to 5.
- [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/v4...v5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-15 05:13:15 +00:00
CrazyMax 7ca345011a Merge pull request #806 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.42.0
build(deps): bump @docker/actions-toolkit from 0.40.0 to 0.42.0
2024-11-06 11:09:37 +01:00
dependabot[bot] 02b671aa02 build(deps): bump @docker/actions-toolkit from 0.40.0 to 0.42.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.40.0 to 0.42.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.40.0...v0.42.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-31 05:38:21 +00:00
CrazyMax 06895751d1 Merge pull request #800 from crazy-max/publish-immutable-action
ci: publish as immutable action workflow
2024-10-26 00:40:31 +02:00
CrazyMax 02c9ff3be2 ci: publish as immutable action workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-10-25 13:12:23 +02:00
CrazyMax 5d8785b43a Merge pull request #801 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.40.0
build(deps): bump @docker/actions-toolkit from 0.35.0 to 0.40.0
2024-10-24 16:02:50 +02:00
CrazyMax 7a65d3de5d chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-10-24 16:00:49 +02:00
dependabot[bot] bd2f40996a build(deps): bump @docker/actions-toolkit from 0.35.0 to 0.40.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.35.0 to 0.40.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.35.0...v0.40.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-24 13:52:56 +00:00
CrazyMax 9fd0581bf0 Merge pull request #791 from docker/dependabot/npm_and_yarn/actions/core-1.11.1
build(deps): bump @actions/core from 1.10.1 to 1.11.1
2024-10-24 15:51:35 +02:00
CrazyMax eefb7e8744 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-10-24 13:55:44 +02:00
dependabot[bot] cb13d66af0 build(deps): bump @actions/core from 1.10.1 to 1.11.1
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.10.1 to 1.11.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-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 05:23:26 +00:00
CrazyMax 1f36f5b7a2 Merge pull request #789 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-6be6d766e7
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2024-10-04 12:18:45 +02:00
CrazyMax bcb47c2c49 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-10-04 12:16:17 +02:00
dependabot[bot] 8165a5b270 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.583.0 to 3.664.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.664.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.583.0 to 3.664.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.664.0/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-04 05:07:07 +00:00
CrazyMax 29df2a9f8c Merge pull request #787 from docker/fix-readme-examples
README: fix gcr example, use vars for usernames
2024-10-02 14:33:21 +02:00
David Karlsson 2b0e0e02ba docs: use vars for usernames, not secrets
Using vars for insensitive data is preferred since secrets are redacted from e.g. build summary

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2024-10-02 14:29:58 +02:00
David Karlsson fe7fd06c5d docs: gcr does not support base64-encoded keys
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2024-10-02 14:15:12 +02:00
CrazyMax 3b8fed7e4b Merge pull request #777 from docker/dependabot/npm_and_yarn/path-to-regexp-6.3.0
build(deps): bump path-to-regexp from 6.2.2 to 6.3.0
2024-09-12 22:41:05 +02:00
dependabot[bot] 90de1764cc build(deps): bump path-to-regexp from 6.2.2 to 6.3.0
Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) from 6.2.2 to 6.3.0.
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](https://github.com/pillarjs/path-to-regexp/compare/v6.2.2...v6.3.0)

---
updated-dependencies:
- dependency-name: path-to-regexp
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-12 19:23:05 +00:00
CrazyMax 9780b0c442 Merge pull request #741 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-5b28f82f41
build(deps): bump https-proxy-agent from 7.0.4 to 7.0.5 in the proxy-agent-dependencies group
2024-07-22 11:02:48 +02:00
CrazyMax 2fa130caf4 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-07-22 10:50:00 +02:00
dependabot[bot] 5e87b2aca7 build(deps): bump https-proxy-agent
Bumps the proxy-agent-dependencies group with 1 update: [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent).


Updates `https-proxy-agent` from 7.0.4 to 7.0.5
- [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@7.0.5/packages/https-proxy-agent)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 08:47:20 +00:00
CrazyMax e0394952ce Merge pull request #754 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.35.0
build(deps): bump @docker/actions-toolkit from 0.24.0 to 0.35.0
2024-07-22 10:45:24 +02:00
CrazyMax 9af18aa7d8 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-07-22 10:42:55 +02:00
CrazyMax 668190adc5 switch to Docker exec
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-07-22 10:41:37 +02:00
dependabot[bot] be5150d9fe build(deps): bump @docker/actions-toolkit from 0.24.0 to 0.35.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.24.0 to 0.35.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.24.0...v0.35.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 08:28:38 +00:00
CrazyMax e80ebcad71 Merge pull request #730 from docker/dependabot/npm_and_yarn/braces-3.0.3
build(deps): bump braces from 3.0.2 to 3.0.3
2024-07-22 09:38:11 +02:00
CrazyMax 75ee3eaf53 Merge pull request #733 from docker/dependabot/github_actions/docker/bake-action-5
build(deps): bump docker/bake-action from 4 to 5
2024-07-22 09:37:47 +02:00
dependabot[bot] 793c19c8fc build(deps): bump docker/bake-action from 4 to 5
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 4 to 5.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/v4...v5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 05:46:15 +00:00
dependabot[bot] 30f019fb76 build(deps): bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-16 13:33:55 +00:00
CrazyMax 0d4c9c5ea7 Merge pull request #722 from crazy-max/update-readme
add contributing section to README
2024-05-28 10:04:15 +02:00
CrazyMax b29e14f6a9 add contributing section to README
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-28 10:01:29 +02:00
CrazyMax 218a70c516 Merge pull request #721 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.24.0
build(deps): bump @docker/actions-toolkit from 0.23.0 to 0.24.0
2024-05-28 09:49:36 +02:00
dependabot[bot] b8200806cf build(deps): bump @docker/actions-toolkit from 0.23.0 to 0.24.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.23.0 to 0.24.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.23.0...v0.24.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-28 07:44:45 +00:00
CrazyMax 27530a9fbb Merge pull request #720 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-9167f00d34
build(deps): bump the aws-sdk-dependencies group across 1 directory with 2 updates
2024-05-28 09:43:13 +02:00
CrazyMax d072a60421 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-28 09:41:15 +02:00
dependabot[bot] 7c627b5124 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.529.1 to 3.583.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.583.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.529.1 to 3.583.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.583.0/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-28 07:38:24 +00:00
CrazyMax 787cfc6623 Merge pull request #694 from docker/dependabot/npm_and_yarn/undici-5.28.4
build(deps): bump undici from 5.28.3 to 5.28.4
2024-05-28 09:35:01 +02:00
CrazyMax 8e66e916f8 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-28 09:32:37 +02:00
dependabot[bot] 5ba5e97350 build(deps): bump undici from 5.28.3 to 5.28.4
Bumps [undici](https://github.com/nodejs/undici) from 5.28.3 to 5.28.4.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.3...v5.28.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 11:44:31 +00:00
CrazyMax db77945884 Merge pull request #706 from Frankkkkk/patch-1
docker auth: improve missing user/pwd
2024-05-27 13:16:18 +02:00
Frank Villaro-Dixon bfd28af29d docker auth: improve missing user/pwd
Specify the "missing username and password" error message. This makes debugging the action easier when for example mistyping the username or the password.

Signed-off-by: Frank Villaro-Dixon <frank@vi-di.fr>
Signed-off-by: Frank Villaro-Dixon <frank@villaro-dixon.eu>
2024-05-16 07:56:43 +00:00
CrazyMax 70fccc794a Merge pull request #716 from crazy-max/update-dev-deps
chore: update dev dependencies
2024-05-15 13:58:02 +02:00
CrazyMax d5eb4a7b25 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-15 13:54:37 +02:00
CrazyMax d9ec9539b3 chore: update dev dependencies
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-15 13:53:08 +02:00
CrazyMax 406e1d7119 Merge pull request #715 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.23.0
build(deps): bump @docker/actions-toolkit from 0.18.0 to 0.23.0
2024-05-15 12:18:22 +02:00
CrazyMax 834ded21d8 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-15 12:13:20 +02:00
dependabot[bot] c7cb6a492e build(deps): bump @docker/actions-toolkit from 0.18.0 to 0.23.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.18.0 to 0.23.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.18.0...v0.23.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-15 05:43:18 +00:00
CrazyMax 7840e6ddd4 Merge pull request #693 from dsotirakis/patch-1
Fixes in README.md file around GAR authentication
2024-05-08 16:58:44 +02:00
CrazyMax d910b14072 Merge pull request #710 from crazy-max/update-yarn
update to yarn 3.6.3
2024-05-07 10:20:02 +02:00
CrazyMax 7c17210d47 chore: add plugin-interactive-tools yarn pkg
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-07 10:10:38 +02:00
CrazyMax 117949aa8e update to yarn 3.6.3
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-05-07 10:10:12 +02:00
Dimitris Sotirakis 225e47902b Update README.md
Fixes a few issues in the login-action README.md file

Signed-off-by: Dimitris Sotirakis <sotirakis.dim@gmail.com>
2024-04-04 18:17:07 +03:00
CrazyMax 5f4866a30a Merge pull request #691 from JohnGUnderwood/master
Update README.md with Digital Ocean example
2024-03-27 23:04:36 +01:00
John Underwood 28283a6966 Update README.md with Digital Ocean example
Signed-off-by: John Underwood <4124456+JohnGUnderwood@users.noreply.github.com>

Update README.md with formatting fix

Signed-off-by: John Underwood <4124456+JohnGUnderwood@users.noreply.github.com>
2024-03-27 21:53:07 +00:00
CrazyMax e92390c5fb Merge pull request #685 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-b3f59f71d5
build(deps): bump the aws-sdk-dependencies group with 2 updates
2024-03-13 16:06:20 +01:00
CrazyMax 1e752e2293 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-03-13 16:03:54 +01:00
dependabot[bot] 51c60978b0 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.435.0 to 3.529.1
- [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.529.1/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.435.0 to 3.529.1
- [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.529.1/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 14:29:29 +00:00
CrazyMax 8f079fbb6c Merge pull request #676 from docker/dependabot/npm_and_yarn/proxy-agent-dependencies-33417434f1
build(deps): bump the proxy-agent-dependencies group with 2 updates
2024-03-13 15:28:25 +01:00
CrazyMax 16fa7681c3 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-03-13 15:26:47 +01:00
dependabot[bot] 46d1619226 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.0 to 7.0.2
- [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@7.0.2/packages/http-proxy-agent)

Updates `https-proxy-agent` from 7.0.2 to 7.0.4
- [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@7.0.4/packages/https-proxy-agent)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 14:00:37 +00:00
CrazyMax 8c291c5677 Merge pull request #682 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.18.0
build(deps): bump @docker/actions-toolkit from 0.14.0 to 0.18.0
2024-03-13 14:57:14 +01:00
dependabot[bot] ec726f409d build(deps): bump @docker/actions-toolkit from 0.14.0 to 0.18.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.14.0 to 0.18.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.14.0...v0.18.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 05:51:58 +00:00
CrazyMax 5139682d94 Merge pull request #677 from docker/dependabot/npm_and_yarn/undici-5.28.3
build(deps): bump undici from 5.26.5 to 5.28.3
2024-02-23 09:35:04 +01:00
CrazyMax 6d4e2ba5df chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-23 09:32:32 +01:00
CrazyMax 583cbb6dfd Merge pull request #678 from crazy-max/bump-gha
bump codecov/codecov-action from 3 to 4
2024-02-23 09:06:50 +01:00
CrazyMax 566711b9b9 bump codecov/codecov-action from 3 to 4
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-23 09:00:01 +01:00
dependabot[bot] f1ee1338e0 build(deps): bump undici from 5.26.5 to 5.28.3
Bumps [undici](https://github.com/nodejs/undici) from 5.26.5 to 5.28.3.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.26.5...v5.28.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-16 18:02:57 +00:00
CrazyMax 83a00bc1ab Merge pull request #647 from docker/dependabot/github_actions/github/codeql-action-3
build(deps): bump github/codeql-action from 2 to 3
2024-02-15 10:59:42 +01:00
dependabot[bot] f405860ca0 build(deps): bump github/codeql-action from 2 to 3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 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/v2...v3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-14 05:50:29 +00:00
CrazyMax 3d58c274f1 Merge pull request #636 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.14.0
build(deps): bump @docker/actions-toolkit from 0.13.0 to 0.14.0
2023-11-17 09:19:13 -08:00
dependabot[bot] a3484d8199 build(deps): bump @docker/actions-toolkit from 0.13.0 to 0.14.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.13.0...v0.14.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 05:27:22 +00:00
CrazyMax 1f401f745b Merge pull request #625 from crazy-max/fix-workflow
ci: continue-on-error for public ECR on Windows
2023-10-25 01:42:58 -07:00
CrazyMax adb236cb13 ci: continue-on-error for public ECR on Windows
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-25 10:39:14 +02:00
CrazyMax 1220aa36aa Merge pull request #624 from docker/dependabot/npm_and_yarn/aws-sdk-dependencies-49752db45e
build(deps): bump the aws-sdk-dependencies group with 2 updates
2023-10-24 15:10:49 -07:00
CrazyMax 21a24919f5 chore: update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-25 00:05:43 +02:00
dependabot[bot] df0d2135ce 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.410.0 to 3.435.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.435.0/clients/client-ecr)

Updates `@aws-sdk/client-ecr-public` from 3.410.0 to 3.435.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.435.0/clients/client-ecr-public)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 22:04:07 +00:00
CrazyMax 9ed9eb7c45 Merge pull request #616 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.13.0
build(deps): bump @docker/actions-toolkit from 0.12.0 to 0.13.0
2023-10-24 15:02:12 -07:00
CrazyMax e4302a2b09 chore: update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-24 23:59:11 +02:00
dependabot[bot] a174191dfd build(deps): bump @docker/actions-toolkit from 0.12.0 to 0.13.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.12.0...v0.13.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 21:56:53 +00:00
CrazyMax b5b3868f21 Merge pull request #618 from docker/dependabot/npm_and_yarn/babel/traverse-7.23.2
build(deps): bump @babel/traverse from 7.17.3 to 7.23.2
2023-10-24 14:55:38 -07:00
CrazyMax 7137ecbd58 Merge pull request #623 from crazy-max/fix-codeql-config
ci(codeql): restrict code scanning to src folder
2023-10-24 09:45:23 -07:00
CrazyMax 6452b9a4db ci(codeql): restrict code scanning to src folder
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-24 16:38:18 +02:00
CrazyMax 495b903b08 Merge pull request #622 from temenuzhka-thede/tthede
Introduce codeql.yml to enable SAST scanning
2023-10-24 07:25:08 -07:00
temenuzhka-thedeandCrazyMax b96c2c0282 introduce CodeQL to enable SAST scanning
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: temenuzhka-thede <temenuzhka.thede@docker.com>
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-24 11:24:29 +02:00
dependabot[bot] 3055c413af build(deps): bump @babel/traverse from 7.17.3 to 7.23.2
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.17.3 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-17 19:27:42 +00:00
CrazyMax b4bedf8053 Merge pull request #602 from crazy-max/community-files
chore: github form templates
2023-09-13 11:42:11 +02:00
CrazyMax be2bd2e073 chore: github form templates
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-09-13 09:42:15 +02:00
CrazyMax b1ee45f5c7 chore: update community files
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-09-13 09:42:09 +02:00
CrazyMax 601e14e667 Merge pull request #601 from docker/dependabot/github_actions/docker/bake-action-4
build(deps): bump docker/bake-action from 3 to 4
2023-09-13 08:30:40 +02:00
dependabot[bot] 194e6ce729 build(deps): bump docker/bake-action from 3 to 4
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 3 to 4.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/v3...v4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-13 05:29:30 +00:00
CrazyMax ba38666a08 Merge pull request #600 from crazy-max/bump-major
docs: bump actions to latest major
2023-09-12 15:13:37 +02:00
CrazyMax eb1ca82ebd docs: bump actions to latest major
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-09-12 14:15:00 +02:00
49 changed files with 13505 additions and 16368 deletions

No files matched your search

+11 -1
View File
@@ -1,2 +1,12 @@
/coverage
/node_modules
# Dependency directories
node_modules/
jspm_packages/
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
-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"
]
}
+2
View File
@@ -1,2 +1,4 @@
/.yarn/releases/** binary
/.yarn/plugins/** binary
/dist/** linguist-generated=true
/lib/** linguist-generated=true
+3
View File
@@ -0,0 +1,3 @@
# Code of conduct
- [Moby community guidelines](https://github.com/moby/moby/blob/master/CONTRIBUTING.md#moby-community-guidelines)
+101
View File
@@ -0,0 +1,101 @@
# https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema
name: Bug Report
description: Report a bug
labels:
- status/triage
body:
- type: markdown
attributes:
value: |
Thank you for taking the time to report a bug!
If this is a security issue please report it to the [Docker Security team](mailto:security@docker.com).
- type: checkboxes
attributes:
label: Contributing guidelines
description: >
Make sure you've read the contributing guidelines before proceeding.
options:
- label: I've read the [contributing guidelines](https://github.com/docker/login-action/blob/master/.github/CONTRIBUTING.md) and wholeheartedly agree
required: true
- type: checkboxes
attributes:
label: "I've found a bug, and:"
description: |
Make sure that your request fulfills all of the following requirements.
If one requirement cannot be satisfied, explain in detail why.
options:
- label: The documentation does not mention anything about my problem
- label: There are no open or closed issues that are related to my problem
- type: textarea
attributes:
label: Description
description: >
Provide a brief description of the bug in 1-2 sentences.
validations:
required: true
- type: textarea
attributes:
label: Expected behaviour
description: >
Describe precisely what you'd expect to happen.
validations:
required: true
- type: textarea
attributes:
label: Actual behaviour
description: >
Describe precisely what is actually happening.
validations:
required: true
- type: input
attributes:
label: Repository URL
description: >
Enter the URL of the repository where you are experiencing the
issue. If your repository is private, provide a link to a minimal
repository that reproduces the issue.
- type: input
attributes:
label: Workflow run URL
description: >
Enter the URL of the GitHub Action workflow run if public (e.g.
`https://github.com/<user>/<repo>/actions/runs/<id>`)
- type: textarea
attributes:
label: YAML workflow
description: |
Provide the YAML of the workflow that's causing the issue.
Make sure to remove any sensitive information.
render: yaml
validations:
required: true
- type: textarea
attributes:
label: Workflow logs
description: >
[Attach](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/attaching-files)
the [log file of your workflow run](https://docs.github.com/en/actions/managing-workflow-runs/using-workflow-run-logs#downloading-logs)
and make sure to remove any sensitive information.
- type: textarea
attributes:
label: BuildKit logs
description: >
If applicable, provide the [BuildKit container logs](https://docs.docker.com/build/ci/github-actions/configure-builder/#buildkit-container-logs)
render: text
- type: textarea
attributes:
label: Additional info
description: |
Provide any additional information that could be useful.
-34
View File
@@ -1,34 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
---
### Behaviour
#### Steps to reproduce this issue
1.
2.
3.
#### Expected behaviour
> Tell us what should happen
#### Actual behaviour
> Tell us what happens instead
### Configuration
* Repository URL (if public):
* Build URL (if public):
```yml
# paste your YAML workflow file here and remove sensitive data
```
### Logs
> Download the [log file of your build](https://docs.github.com/en/actions/managing-workflow-runs/using-workflow-run-logs#downloading-logs)
> and [attach it](https://docs.github.com/en/github/managing-your-work-on-github/file-attachments-on-issues-and-pull-requests) to this issue.
+9
View File
@@ -0,0 +1,9 @@
# https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
blank_issues_enabled: true
contact_links:
- name: Questions and Discussions
url: https://github.com/docker/login-action/discussions/new
about: Use Github Discussions to ask questions and/or open discussion topics.
- name: Documentation
url: https://docs.docker.com/build/ci/github-actions/
about: Read the documentation.
+15
View File
@@ -0,0 +1,15 @@
# https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema
name: Feature request
description: Missing functionality? Come tell us about it!
labels:
- kind/enhancement
- status/triage
body:
- type: textarea
id: description
attributes:
label: Description
description: What is the feature you want to see?
validations:
required: true
+12
View File
@@ -0,0 +1,12 @@
# Reporting security issues
The project maintainers take security seriously. If you discover a security
issue, please bring it to their attention right away!
**Please _DO NOT_ file a public issue**, instead send your report privately to
[security@docker.com](mailto:security@docker.com).
Security reports are greatly appreciated, and we will publicly thank you for it.
We also like to send gifts&mdash;if you'd like Docker swag, make sure to let
us know. We currently do not offer a paid security bounty program, but are not
ruling it out in the future.
-29
View File
@@ -1,29 +0,0 @@
# Support [![](https://isitmaintained.com/badge/resolution/docker/login-action.svg)](https://isitmaintained.com/project/docker/login-action)
## Reporting an issue
Please do a search in [open issues](https://github.com/docker/login-action/issues?utf8=%E2%9C%93&q=) to see if the issue or feature request has already been filed.
If you find your issue already exists, make relevant comments and add your [reaction](https://github.com/blog/2119-add-reactions-to-pull-requests-issues-and-comments). Use a reaction in place of a "+1" comment.
:+1: - upvote
:-1: - downvote
If you cannot find an existing issue that describes your bug or feature, submit an issue using the guidelines below.
## Writing good bug reports and feature requests
File a single issue per problem and feature request.
* Do not enumerate multiple bugs or feature requests in the same issue.
* Do not add your issue as a comment to an existing issue unless it's for the identical input. Many issues look similar, but have different causes.
The more information you can provide, the more likely someone will be successful reproducing the issue and finding a fix.
You are now ready to [create a new issue](https://github.com/docker/login-action/issues/new/choose)!
## Closure policy
* Issues that don't have the information requested above (when applicable) will be closed immediately and the poster directed to the support guidelines.
* Issues that go a week without a response from original poster are subject to closure at our discretion.
+10
View File
@@ -4,6 +4,12 @@ updates:
directory: "/"
schedule:
interval: "daily"
cooldown:
default-days: 2
groups:
crazy-max-dot-github:
patterns:
- "crazy-max/.github/*"
labels:
- "dependencies"
- "bot"
@@ -11,6 +17,10 @@ updates:
directory: "/"
schedule:
interval: "daily"
cooldown:
default-days: 2
exclude:
- "@docker/actions-toolkit"
versioning-strategy: "increase"
groups:
aws-sdk-dependencies:
+318 -32
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@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Stop docker
run: |
@@ -43,7 +49,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitHub Container Registry
uses: ./
@@ -53,44 +59,75 @@ 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@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
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: 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@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitHub Container Registry
uses: ./
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: DinD
uses: docker://docker
uses: docker://docker:29.3@sha256:4d90f1f6c400315c2dba96d3ec93c01e64198395cbba04f79d12adce4f737029
with:
entrypoint: docker
args: pull ghcr.io/docker-ghactiontest/test
args: pull ${{ env.GHCR_TEST_IMAGE }}
-
name: Pull private 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@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
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 +142,13 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
ecr:
runs-on: ${{ matrix.os }}
@@ -124,12 +161,12 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
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 +181,10 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@254c19bd240aabef8777f48595e9d2d7b972184b # v6.2.1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
@@ -156,7 +193,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@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@254c19bd240aabef8777f48595e9d2d7b972184b # v6.2.1
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,9 +233,10 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to Public ECR
continue-on-error: ${{ matrix.os == 'windows-latest' }}
uses: ./
with:
registry: public.ecr.aws
@@ -191,21 +256,25 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@254c19bd240aabef8777f48595e9d2d7b972184b # v6.2.1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
-
name: Login to ECR
name: Login to Public ECR
continue-on-error: ${{ matrix.os == 'windows-latest' }}
uses: ./
with:
registry: public.ecr.aws
github-container:
ecr-public-oidc:
permissions:
contents: read
id-token: write
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
@@ -216,7 +285,32 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@254c19bd240aabef8777f48595e9d2d7b972184b # v6.2.1
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:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitHub Container Registry
uses: ./
@@ -236,7 +330,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitLab
uses: ./
@@ -256,12 +350,12 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
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 }}
@@ -276,7 +370,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to Google Container Registry
uses: ./
@@ -284,3 +378,195 @@ jobs:
registry: gcr.io
username: _json_key
password: ${{ secrets.GCR_JSON_KEY }}
registry-auth:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to registries
uses: ./
with:
registry-auth: |
- username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- registry: public.ecr.aws
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- registry: registry.gitlab.com
username: ${{ secrets.GITLAB_USERNAME }}
password: ${{ secrets.GITLAB_TOKEN }}
registry-auth-dup:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to registries
uses: ./
with:
registry-auth: |
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- registry: public.ecr.aws
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry-auth-exclusive:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to registries
id: login
continue-on-error: true
uses: ./
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry-auth: |
- username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
-
name: Check
run: |
if [ "${{ steps.login.outcome }}" != "failure" ] || [ "${{ steps.login.conclusion }}" != "success" ]; then
echo "::error::Should have failed"
exit 1
fi
scope-dockerhub:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
scope: '@push'
-
name: Print config.json files
shell: bash
run: |
shopt -s globstar nullglob
for file in ~/.docker/**/config.json; do
echo "## ${file}"
jq '(.auths[]?.auth) |= "REDACTED"' "$file"
echo ""
done
scope-dockerhub-repo:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to Docker Hub
uses: ./
with:
username: ${{ vars.DOCKERPUBLICBOT_USERNAME }}
password: ${{ secrets.DOCKERPUBLICBOT_READ_PAT }}
scope: 'docker/buildx-bin@push'
-
name: Print config.json files
shell: bash
run: |
shopt -s globstar nullglob
for file in ~/.docker/**/config.json; do
echo "## ${file}"
jq '(.auths[]?.auth) |= "REDACTED"' "$file"
echo ""
done
scope-ghcr:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitHub Container Registry
uses: ./
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
scope: '@push'
-
name: Print config.json files
shell: bash
run: |
shopt -s globstar nullglob
for file in ~/.docker/**/config.json; do
echo "## ${file}"
jq '(.auths[]?.auth) |= "REDACTED"' "$file"
echo ""
done
scope-ghcr-repo:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Login to GitHub Container Registry
uses: ./
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
scope: 'docker/login-action@push'
-
name: Print config.json files
shell: bash
run: |
shopt -s globstar nullglob
for file in ~/.docker/**/config.json; do
echo "## ${file}"
jq '(.auths[]?.auth) |= "REDACTED"' "$file"
echo ""
done
+46
View File
@@ -0,0 +1,46 @@
name: codeql
permissions:
contents: read
on:
push:
branches:
- 'master'
- 'releases/v*'
pull_request:
env:
NODE_VERSION: "24"
jobs:
analyze:
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Enable corepack
run: |
corepack enable
yarn --version
-
name: Set up Node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ env.NODE_VERSION }}
-
name: Initialize CodeQL
uses: github/codeql-action/init@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4.36.2
with:
languages: javascript-typescript
build-mode: none
-
name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4.36.2
with:
category: "/language:javascript-typescript"
+17
View File
@@ -0,0 +1,17 @@
name: pr-assign-author
permissions:
contents: read
on:
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@46267a6e61cd56aac2fc79943df180152f4c89d6 # v1.10.1
permissions:
contents: read
pull-requests: write
+28
View File
@@ -0,0 +1,28 @@
name: publish
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
release:
types:
- published
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
packages: write
steps:
-
name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Publish
uses: actions/publish-immutable-action@4bc8754ffc40f27910afb20287dbbbb675a4e978 # v0.0.4
+9 -4
View File
@@ -1,5 +1,8 @@
name: test
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
@@ -17,14 +20,16 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Test
uses: docker/bake-action@v3
uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.0
with:
source: .
targets: test
-
name: Upload coverage
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0
with:
file: ./coverage/clover.xml
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@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0
token: ${{ steps.docker-read-app.outputs.token }}
-
name: Build
uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.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
+12 -11
View File
@@ -1,5 +1,8 @@
name: validate
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
@@ -15,16 +18,17 @@ jobs:
prepare:
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.targets.outputs.matrix }}
matrix: ${{ steps.generate.outputs.matrix }}
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
-
name: Targets matrix
id: targets
run: |
echo "matrix=$(docker buildx bake validate --print | jq -cr '.group.validate.targets')" >> $GITHUB_OUTPUT
name: Generate matrix
id: generate
uses: docker/bake-action/subaction/matrix@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.0
with:
target: validate
validate:
runs-on: ubuntu-latest
@@ -33,13 +37,10 @@ jobs:
strategy:
fail-fast: false
matrix:
target: ${{ fromJson(needs.prepare.outputs.targets) }}
include: ${{ fromJson(needs.prepare.outputs.matrix) }}
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Validate
uses: docker/bake-action@v3
uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.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@46267a6e61cd56aac2fc79943df180152f4c89d6 # v1.10.1
permissions:
contents: read
security-events: write
with:
min-severity: medium
min-confidence: medium
persona: pedantic
+14 -52
View File
@@ -1,7 +1,5 @@
node_modules/
lib
# https://raw.githubusercontent.com/github/gitignore/main/Node.gitignore
# Rest of the file pulled from https://github.com/github/gitignore/blob/master/Node.gitignore
# Logs
logs
*.log
@@ -9,6 +7,7 @@ npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
@@ -19,34 +18,14 @@ pids
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# TypeScript v1 declaration files
typings/
# TypeScript cache
*.tsbuildinfo
@@ -56,36 +35,19 @@ typings/
# Optional eslint cache
.eslintcache
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
# dotenv environment variable files
.env
.env.test
.env.development.local
.env.test.local
.env.production.local
.env.local
# parcel-bundler cache (https://parceljs.org/)
.cache
# next.js build output
.next
# nuxt.js build output
.nuxt
# vuepress build output
.vuepress/dist
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
+6
View File
@@ -0,0 +1,6 @@
# Dependency directories
node_modules/
jspm_packages/
# yarn v2
.yarn/
+1 -2
View File
@@ -6,6 +6,5 @@
"singleQuote": true,
"trailingComma": "none",
"bracketSpacing": false,
"arrowParens": "avoid",
"parser": "typescript"
"arrowParens": "avoid"
}
+24
View File
@@ -0,0 +1,24 @@
# https://yarnpkg.com/configuration/yarnrc
nodeLinker: node-modules
logFilters:
- code: YN0004
level: discard
- code: YN0013
level: discard
- code: YN0019
level: discard
- code: YN0076
level: discard
- code: YN0086
level: discard
npmPreapprovedPackages:
- "@docker/actions-toolkit"
compressionLevel: mixed
enableGlobalCache: false
enableHardenedMode: true
enableScripts: false
npmMinimalAgeGate: 2d
+318 -103
View File
@@ -23,16 +23,20 @@ ___
* [AWS Public Elastic Container Registry (ECR)](#aws-public-elastic-container-registry-ecr)
* [OCI Oracle Cloud Infrastructure Registry (OCIR)](#oci-oracle-cloud-infrastructure-registry-ocir)
* [Quay.io](#quayio)
* [DigitalOcean](#digitalocean-container-registry)
* [Authenticate to multiple registries](#authenticate-to-multiple-registries)
* [Set scopes for the authentication token](#set-scopes-for-the-authentication-token)
* [Customizing](#customizing)
* [inputs](#inputs)
* [Keep up-to-date with GitHub Dependabot](#keep-up-to-date-with-github-dependabot)
* [Contributing](#contributing)
## Usage
### Docker Hub
To authenticate against [Docker Hub](https://hub.docker.com) it's strongly recommended to create a
[personal access token](https://docs.docker.com/docker-hub/access-tokens/) as an alternative to your password.
When authenticating to [Docker Hub](https://hub.docker.com) with GitHub Actions,
use a [personal access token](https://docs.docker.com/docker-hub/access-tokens/).
Don't use your account password.
```yaml
name: ci
@@ -47,17 +51,17 @@ jobs:
steps:
-
name: Login to Docker Hub
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
```
### GitHub Container Registry
To authenticate against the [GitHub Container Registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry),
use the [`GITHUB_TOKEN`](https://docs.github.com/en/actions/reference/authentication-in-a-workflow) for the best
security and experience.
To authenticate to the [GitHub Container Registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry),
use the [`GITHUB_TOKEN`](https://docs.github.com/en/actions/reference/authentication-in-a-workflow)
secret.
```yaml
name: ci
@@ -72,7 +76,7 @@ jobs:
steps:
-
name: Login to GitHub Container Registry
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -100,20 +104,25 @@ jobs:
steps:
-
name: Login to GitLab
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: registry.gitlab.com
username: ${{ secrets.GITLAB_USERNAME }}
username: ${{ vars.GITLAB_USERNAME }}
password: ${{ secrets.GITLAB_PASSWORD }}
```
If you have [Two-Factor Authentication](https://gitlab.com/help/user/profile/account/two_factor_authentication) enabled, use a [Personal Access Token](https://gitlab.com/help/user/profile/personal_access_tokens) instead of a password.
If you have [Two-Factor Authentication](https://gitlab.com/help/user/profile/account/two_factor_authentication)
enabled, use a [Personal Access Token](https://gitlab.com/help/user/profile/personal_access_tokens)
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_) and password (also called _client secret_).
and take note of the generated service principal's ID (also called _client ID_)
and password (also called _client secret_).
```yaml
name: ci
@@ -128,27 +137,82 @@ jobs:
steps:
-
name: Login to ACR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: <registry-name>.azurecr.io
username: ${{ secrets.AZURE_CLIENT_ID }}
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)
> [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 Container Registry, use the information [on this page](https://cloud.google.com/artifact-registry/docs/transition/transition-from-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
> Container Registry, use the information [on this page](https://cloud.google.com/artifact-registry/docs/transition/transition-from-gcr)
> to learn about transitioning to Google Artifact Registry.
You can use either workload identity federation based keyless authentication or service account based authentication.
You can authenticate with workload identity federation or a service account.
#### Workload identity federation based authentication
#### Workload identity federation
Configure the workload identity federation for github actions in gcloud (for steps, [refer here](https://github.com/google-github-actions/auth#setting-up-workload-identity-federation)). In the steps, your service account should the ability to push to GCR. Then use google-github-actions/auth action for authentication using workload identity like below:
Configure the workload identity federation for GitHub Actions in Google Cloud,
[see here](https://github.com/google-github-actions/auth#setting-up-workload-identity-federation).
Your service account must have permission to push to GCR. Use the
`google-github-actions/auth` action to authenticate using workload identity as
shown in the following example:
```yaml
name: ci
@@ -161,33 +225,36 @@ jobs:
login:
runs-on: ubuntu-latest
steps:
- id: 'auth'
name: 'Authenticate to Google Cloud'
uses: 'google-github-actions/auth@v0'
-
name: Authenticate to Google Cloud
id: auth
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@v2
token_format: access_token
workload_identity_provider: <workload_identity_provider>
service_account: <service_account>
-
name: Login to GCR
uses: docker/login-action@v4
with:
registry: gcr.io
username: oauth2accesstoken
password: ${{ steps.auth.outputs.access_token }}
```
> Replace `<workload_identity_provider>` with configured workload identity provider. For steps to configure, [refer 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
> [!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
#### Service account based authentication
Use a service account with the ability to push to GCR and [configure access control](https://cloud.google.com/container-registry/docs/access-control).
Then create and download the JSON key for this service account and save content of `.json` file
[as a secret](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
called `GCR_JSON_KEY` in your GitHub repo. Ensure you set the username to `_json_key`,
or `_json_key_base64` if you use a base64-encoded key.
Use a service account with permission to push to GCR and [configure access control](https://cloud.google.com/container-registry/docs/access-control).
Download the key for the service account as a JSON file. Save the contents of
the file [as a secret](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
named `GCR_JSON_KEY` in your GitHub repository. Set the username to `_json_key`.
```yaml
name: ci
@@ -202,7 +269,7 @@ jobs:
steps:
-
name: Login to GCR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: gcr.io
username: _json_key
@@ -211,11 +278,13 @@ jobs:
### Google Artifact Registry (GAR)
You can use either workload identity federation based keyless authentication or service account based authentication.
You can authenticate with workload identity federation or a service account.
#### Workload identity federation based authentication
#### Workload identity federation
Configure the workload identity federation for github actions in gcloud (for steps, [refer here](https://github.com/google-github-actions/auth#setting-up-workload-identity-federation)). In the steps, your service account should the ability to push to GAR. Then use google-github-actions/auth action for authentication using workload identity like below:
Your service account must have permission to push to GAR. Use the
`google-github-actions/auth` action to authenticate using workload identity as
shown in the following example:
```yaml
name: ci
@@ -228,34 +297,39 @@ jobs:
login:
runs-on: ubuntu-latest
steps:
- id: 'auth'
name: 'Authenticate to Google Cloud'
uses: 'google-github-actions/auth@v0'
-
name: Authenticate to Google Cloud
id: auth
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@v2
token_format: access_token
workload_identity_provider: <workload_identity_provider>
service_account: <service_account>
-
name: Login to GAR
uses: docker/login-action@v4
with:
registry: <location>-docker.pkg.dev
username: oauth2accesstoken
password: ${{ steps.auth.outputs.access_token }}
```
> 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
> [!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.
#### Service account based authentication
Use a service account with the ability to push to GAR and [configure access control](https://cloud.google.com/artifact-registry/docs/access-control).
Then create and download the JSON key for this service account and save content of `.json` file
[as a secret](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
called `GAR_JSON_KEY` in your GitHub repo. Ensure you set the username to `_json_key`,
Use a service account with permission to push to GAR and [configure access control](https://cloud.google.com/artifact-registry/docs/access-control).
Download the key for the service account as a JSON file. Save the contents of
the file [as a secret](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
named `GAR_JSON_KEY` in your GitHub repository. Set the username to `_json_key`,
or `_json_key_base64` if you use a base64-encoded key.
```yaml
@@ -271,20 +345,21 @@ jobs:
steps:
-
name: Login to GAR
uses: docker/login-action@v2
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.
### AWS Elastic Container Registry (ECR)
Use an IAM user with the ability to [push to ECR with `AmazonEC2ContainerRegistryPowerUser` managed policy for example](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html#AmazonEC2ContainerRegistryPowerUser).
Then create and download access keys and save `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` [as secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
Use an IAM user with the ability to [push to ECR with `AmazonEC2ContainerRegistryPowerUser` managed policy for example](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPowerUser).
Download the access keys and save them as `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` [as secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
in your GitHub repo.
```yaml
@@ -300,15 +375,15 @@ jobs:
steps:
-
name: Login to ECR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: <aws-account-number>.dkr.ecr.<region>.amazonaws.com
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
username: ${{ vars.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
```
If you need to log in to Amazon ECR registries associated with other accounts, you can use the `AWS_ACCOUNT_IDS`
environment variable:
If you need to log in to Amazon ECR registries associated with other accounts,
you can use the `AWS_ACCOUNT_IDS` environment variable:
```yaml
name: ci
@@ -323,19 +398,20 @@ jobs:
steps:
-
name: Login to ECR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: <aws-account-number>.dkr.ecr.<region>.amazonaws.com
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
username: ${{ vars.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
env:
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) action in
combination with this action:
You can also use the [Configure AWS Credentials](https://github.com/aws-actions/configure-aws-credentials)
action in combination with this action:
```yaml
name: ci
@@ -350,25 +426,27 @@ jobs:
steps:
-
name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v6
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
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@v2
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)
Use an IAM user with the ability to [push to ECR Public with `AmazonElasticContainerRegistryPublicPowerUser` managed policy for example](https://docs.aws.amazon.com/AmazonECR/latest/public/public-ecr-managed-policies.html#AmazonElasticContainerRegistryPublicPowerUser).
Then create and download access keys and save `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` [as secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
in your GitHub repo.
Use an IAM user with permission to push to ECR Public, for example using [managed policies](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPowerUser).
Download the access keys and save them as `AWS_ACCESS_KEY_ID` and
`AWS_SECRET_ACCESS_KEY` [secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository)
in your GitHub repository.
```yaml
name: ci
@@ -383,15 +461,16 @@ jobs:
steps:
-
name: Login to Public ECR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: public.ecr.aws
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
username: ${{ vars.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
env:
AWS_REGION: <region>
```
> [!NOTE]
> Replace `<region>` with its respective value (default `us-east-1`).
### OCI Oracle Cloud Infrastructure Registry (OCIR)
@@ -417,18 +496,20 @@ jobs:
steps:
-
name: Login to OCIR
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: <region>.ocir.io
username: ${{ secrets.OCI_USERNAME }}
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
Use a [Robot account](https://docs.quay.io/glossary/robot-accounts.html) with the ability to push to a public/private Quay.io repository.
Use a [Robot account](https://docs.quay.io/glossary/robot-accounts.html) with
permission to push to a Quay.io repository.
```yaml
name: ci
@@ -443,39 +524,173 @@ jobs:
steps:
-
name: Login to Quay.io
uses: docker/login-action@v2
uses: docker/login-action@v4
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
username: ${{ vars.QUAY_USERNAME }}
password: ${{ secrets.QUAY_ROBOT_TOKEN }}
```
### DigitalOcean Container Registry
Use your DigitalOcean registered email address and an API access token to authenticate.
```yaml
name: ci
on:
push:
branches: main
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to DigitalOcean Container Registry
uses: docker/login-action@v4
with:
registry: registry.digitalocean.com
username: ${{ vars.DIGITALOCEAN_USERNAME }}
password: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
```
### Authenticate to multiple registries
To authenticate against multiple registries, you can specify the login-action
step multiple times in your workflow:
```yaml
name: ci
on:
push:
branches: main
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to Docker Hub
uses: docker/login-action@v4
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Login to GitHub Container Registry
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
```
You can also use the `registry-auth` input for raw authentication to
registries, defined as YAML objects. Each object have the same attributes as
current inputs (except `logout`):
> [!WARNING]
> We don't recommend using this method, it's better to use the action multiple
> times as shown above.
```yaml
name: ci
on:
push:
branches: main
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to registries
uses: docker/login-action@v4
with:
registry-auth: |
- username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- 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
or namespace scope when building images with Buildx.
This is useful in GitHub Actions to avoid overriding the Docker Hub
authentication token embedded in GitHub-hosted runners, which is used for
pulling images without rate limits. By scoping credentials, you can
authenticate only where needed (typically for pushing), while keeping
unauthenticated pulls for base images.
When `scope` is set, credentials are written to the Buildx configuration
instead of the global Docker configuration. This means:
* Authentication applies only to the specified scope
* The default Docker Hub credentials remain available for pulls
* Credentials are used only by Buildx during the build
> [!IMPORTANT]
> Credentials written to the Buildx configuration are only accessible by Buildx.
> They are not available to `docker pull`, `docker push`, or any other Docker
> CLI commands outside Buildx.
> [!NOTE]
> This feature requires Buildx version 0.31.0 or later.
```yaml
name: ci
on:
push:
branches: main
jobs:
login:
runs-on: ubuntu-latest
steps:
-
name: Login to Docker Hub (scoped)
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@v7
with:
push: true
tags: myorg/myimage:latest
```
In this example, base images are pulled using the embedded GitHub-hosted runner
credentials, while authenticated access is used only to push `myorg/myimage`.
## Customizing
### inputs
Following inputs can be used as `step.with` keys
The following inputs can be used as `step.with` keys:
| Name | Type | Default | Description |
|------------------|---------|-----------------------------|------------------------------------|
| `registry` | String | | Server address of Docker registry. If not set then will default to Docker Hub |
| `username` | String | | Username used to log against the Docker registry |
| `password` | String | | Password or personal access token used to log against the Docker registry |
| `ecr` | String | `auto` | Specifies whether the given registry is ECR (`auto`, `true` or `false`) |
| `logout` | Bool | `true` | Log out from the Docker registry at the end of a job |
| Name | Type | Default | Description |
|-----------------|--------|-------------|-------------------------------------------------------------------------------|
| `registry` | String | `docker.io` | Server address of Docker registry. If not set then will default to Docker Hub |
| `username` | String | | Username for authenticating to the Docker registry |
| `password` | String | | Password or personal access token for authenticating the Docker registry |
| `scope` | String | | Scope for the authentication token |
| `ecr` | String | `auto` | Specifies whether the given registry is ECR (`auto`, `true` or `false`) |
| `logout` | Bool | `true` | Log out from the Docker registry at the end of a job |
| `registry-auth` | YAML | | Raw authentication to registries, defined as YAML objects |
## Keep up-to-date with GitHub Dependabot
> [!NOTE]
> The `registry-auth` input cannot be used with other inputs except `logout`.
Since [Dependabot](https://docs.github.com/en/github/administering-a-repository/keeping-your-actions-up-to-date-with-github-dependabot)
has [native GitHub Actions support](https://docs.github.com/en/github/administering-a-repository/configuration-options-for-dependency-updates#package-ecosystem),
to enable it on your GitHub repo all you need to do is add the `.github/dependabot.yml` file:
## Contributing
```yaml
version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
```
Want to contribute? Awesome! You can find information about contributing to
this project in the [CONTRIBUTING.md](/.github/CONTRIBUTING.md)
+27 -15
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([
@@ -10,7 +10,10 @@ describe('isECR', () => {
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', true],
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', true],
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', true],
['public.ecr.aws', true]
['012345678901.dkr-ecr.eu-north-1.on.aws', true],
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', true],
['public.ecr.aws', true],
['ecr-public.aws.com', true]
])('given registry %p', async (registry, expected) => {
expect(aws.isECR(registry)).toEqual(expected);
});
@@ -23,7 +26,10 @@ describe('isPubECR', () => {
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', false],
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', false],
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', false],
['public.ecr.aws', true]
['012345678901.dkr-ecr.eu-north-1.on.aws', false],
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', false],
['public.ecr.aws', true],
['ecr-public.aws.com', true]
])('given registry %p', async (registry, expected) => {
expect(aws.isPubECR(registry)).toEqual(expected);
});
@@ -34,6 +40,8 @@ describe('getRegion', () => {
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', 'eu-west-3'],
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', 'cn-north-1'],
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', 'cn-northwest-1'],
['012345678901.dkr-ecr.eu-north-1.on.aws', 'eu-north-1'],
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', 'eusc-de-east-1'],
['public.ecr.aws', 'us-east-1']
])('given registry %p', async (registry, expected) => {
expect(aws.getRegion(registry)).toEqual(expected);
@@ -46,6 +54,8 @@ describe('getAccountIDs', () => {
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', '012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', '012345678901,012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', '012345678910,023456789012', ['390948362332', '012345678910', '023456789012']],
['876820548815.dkr-ecr.eu-north-1.on.aws', '012345678910,023456789012', ['876820548815', '012345678910', '023456789012']],
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', '012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
['public.ecr.aws', undefined, []]
])('given registry %p', async (registry, accountIDsEnv, expected) => {
if (accountIDsEnv) {
@@ -55,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
+60 -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} 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,49 @@ 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 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 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');
});
+20 -14
View File
@@ -1,15 +1,11 @@
import {expect, jest, test} from '@jest/globals';
import * as path from 'path';
import {expect, test, vi} from 'vitest';
import {loginStandard, logout} from '../src/docker';
import {Exec} from '@docker/actions-toolkit/lib/exec';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker.js';
process.env['RUNNER_TEMP'] = path.join(__dirname, 'runner');
import {loginStandard, logout} from '../src/docker.js';
test('loginStandard calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(Exec, 'getExecOutput').mockImplementation(async () => {
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
@@ -23,7 +19,13 @@ test('loginStandard calls exec', async () => {
await loginStandard(registry, username, password);
expect(execSpy).toHaveBeenCalledWith(`docker`, ['login', '--password-stdin', '--username', username, registry], {
expect(execSpy).toHaveBeenCalledTimes(1);
const callfunc = execSpy.mock.calls[0];
if (callfunc && callfunc[1]) {
// we don't want to check env opt
callfunc[1].env = undefined;
}
expect(execSpy).toHaveBeenCalledWith(['login', '--password-stdin', '--username', username, registry], {
input: Buffer.from(password),
silent: true,
ignoreReturnCode: true
@@ -31,9 +33,7 @@ test('loginStandard calls exec', async () => {
});
test('logout calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(Exec, 'getExecOutput').mockImplementation(async () => {
const execSpy = vi.spyOn(Docker, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
@@ -43,9 +43,15 @@ test('logout calls exec', async () => {
const registry = 'https://ghcr.io';
await logout(registry);
await logout(registry, '');
expect(execSpy).toHaveBeenCalledWith(`docker`, ['logout', registry], {
expect(execSpy).toHaveBeenCalledTimes(1);
const callfunc = execSpy.mock.calls[0];
if (callfunc && callfunc[1]) {
// we don't want to check env opt
callfunc[1].env = undefined;
}
expect(execSpy).toHaveBeenCalledWith(['logout', registry], {
ignoreReturnCode: true
});
});
+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')
});
+9 -4
View File
@@ -18,14 +18,19 @@ inputs:
required: false
ecr:
description: 'Specifies whether the given registry is ECR (auto, true or false)'
default: 'auto'
required: false
scope:
description: 'Scope for the authentication token'
required: false
logout:
description: 'Log out from the Docker registry at the end of a job'
default: 'true'
required: false
registry-auth:
description: 'Raw authentication to registries, defined as YAML objects'
required: false
runs:
using: 'node20'
main: 'dist/index.js'
post: 'dist/index.js'
using: 'node24'
main: 'dist/index.cjs'
post: 'dist/index.cjs'
+31 -11
View File
@@ -1,15 +1,23 @@
# 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
EOT
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 /
@@ -20,24 +28,34 @@ RUN --mount=type=bind,target=.,rw <<EOT
git add -A
cp -rf /vendor/* .
if [ -n "$(git status --porcelain -- yarn.lock)" ]; then
echo >&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor-update"'
echo >&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor"'
git status --porcelain -- yarn.lock
exit 1
fi
EOT
FROM deps AS build
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/node_modules \
yarn run build && mkdir /out && cp -Rf dist /out/
RUN --mount=target=/context \
--mount=type=cache,target=/src/.yarn/cache \
--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"'
@@ -48,15 +66,16 @@ EOT
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/*' | 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 /
FROM deps AS lint
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \
yarn run lint
@@ -64,8 +83,9 @@ FROM deps AS test
ENV RUNNER_TEMP=/tmp/github_runner
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
+246
View File
@@ -0,0 +1,246 @@
var uqe=Object.create;var hy=Object.defineProperty;var dqe=Object.getOwnPropertyDescriptor;var pqe=Object.getOwnPropertyNames;var mqe=Object.getPrototypeOf,fqe=Object.prototype.hasOwnProperty;var i=(t,e)=>hy(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),Qr=(t,e)=>{for(var r in e)hy(t,r,{get:e[r],enumerable:!0})},c9=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of pqe(e))!fqe.call(t,s)&&s!==r&&hy(t,s,{get:()=>e[s],enumerable:!(n=dqe(e,s))||n.enumerable});return t};var R=(t,e,r)=>(r=t!=null?uqe(mqe(t)):{},c9(e||!t||!t.__esModule?hy(r,"default",{value:t,enumerable:!0}):r,t)),re=t=>c9(hy({},"__esModule",{value:!0}),t);var g9=I(Rf=>{"use strict";var oGt=require("net"),yqe=require("tls"),DO=require("http"),f9=require("https"),Eqe=require("events"),iGt=require("assert"),Cqe=require("util");Rf.httpOverHttp=Iqe;Rf.httpsOverHttp=wqe;Rf.httpOverHttps=Sqe;Rf.httpsOverHttps=bqe;function Iqe(t){var e=new el(t);return e.request=DO.request,e}i(Iqe,"httpOverHttp");function wqe(t){var e=new el(t);return e.request=DO.request,e.createSocket=A9,e.defaultPort=443,e}i(wqe,"httpsOverHttp");function Sqe(t){var e=new el(t);return e.request=f9.request,e}i(Sqe,"httpOverHttps");function bqe(t){var e=new el(t);return e.request=f9.request,e.createSocket=A9,e.defaultPort=443,e}i(bqe,"httpsOverHttps");function el(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||DO.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",i(function(n,s,o,a){for(var c=h9(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(el,"TunnelingAgent");Cqe.inherits(el,Eqe.EventEmitter);el.prototype.addRequest=i(function(e,r,n,s){var o=this,a=kO({request:e},o.options,h9(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");el.prototype.createSocket=i(function(e,r){var n=this,s={};n.sockets.push(s);var o=kO({},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")),fu("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){fu("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){fu("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 fu("tunneling connection has established"),n.sockets[n.sockets.indexOf(s)]=m,r(m)}i(u,"onConnect");function d(p){a.removeAllListeners(),fu(`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");el.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 A9(t,e){var r=this;el.prototype.createSocket.call(r,t,function(n){var s=t.request.getHeader("host"),o=kO({},r.options,{socket:n,servername:s?s.replace(/:.*$/,""):t.host}),a=yqe.connect(0,o);r.sockets[r.sockets.indexOf(n)]=a,e(a)})}i(A9,"createSecureSocket");function h9(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}i(h9,"toOptions");function kO(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(kO,"mergeOptions");var fu;process.env.NODE_DEBUG&&/\btunnel\b/.test(process.env.NODE_DEBUG)?fu=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"):fu=i(function(){},"debug");Rf.debug=fu});var gy=I((lGt,y9)=>{y9.exports=g9()});var kt=I((uGt,E9)=>{E9.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 et=I((dGt,$9)=>{"use strict";var C9=Symbol.for("undici.error.UND_ERR"),Lt=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[C9]===!0}[C9]=!0},I9=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),LO=class extends Lt{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[I9]===!0}[I9]=!0},w9=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),OO=class extends Lt{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[w9]===!0}[w9]=!0},S9=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),MO=class extends Lt{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[S9]===!0}[S9]=!0},b9=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),FO=class extends Lt{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(nX,"isValidHeaderValue");function UHe(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(bHe.has(a)){s=a;break}}s!==""&&(t.referrerPolicy=s)}i(UHe,"setRequestReferrerPolicyOnRedirect");function qHe(){return"allowed"}i(qHe,"crossOriginResourcePolicyCheck");function GHe(){return"success"}i(GHe,"corsCheck");function HHe(){return"success"}i(HHe,"TAOCheck");function $He(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}i($He,"appendFetchMetadata");function zHe(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&&QM(t.origin)&&!QM(By(t))&&(e=null);break;case"same-origin":vb(t,By(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}i(zHe,"appendRequestOriginHeader");function Of(t,e){return t}i(Of,"coarsenTime");function VHe(t,e,r){return!t?.startTime||t.startTime<e?{domainLookupStartTime:e,domainLookupEndTime:e,connectionStartTime:e,connectionEndTime:e,secureConnectionStartTime:e,ALPNNegotiatedProtocol:t?.ALPNNegotiatedProtocol}:{domainLookupStartTime:Of(t.domainLookupStartTime,r),domainLookupEndTime:Of(t.domainLookupEndTime,r),connectionStartTime:Of(t.connectionStartTime,r),connectionEndTime:Of(t.connectionEndTime,r),secureConnectionStartTime:Of(t.secureConnectionStartTime,r),ALPNNegotiatedProtocol:t.ALPNNegotiatedProtocol}}i(VHe,"clampAndCoarsenConnectionTimingInfo");function YHe(t){return Of(THe.now(),t)}i(YHe,"coarsenedSharedCurrentTime");function WHe(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(WHe,"createOpaqueTimingInfo");function sX(){return{referrerPolicy:"strict-origin-when-cross-origin"}}i(sX,"makePolicyContainer");function JHe(t){return{referrerPolicy:t.referrerPolicy}}i(JHe,"clonePolicyContainer");function jHe(t){let e=t.referrerPolicy;rp(e);let r=null;if(t.referrer==="client"){let c=XK();if(!c||c.origin==="null")return"no-referrer";r=new URL(c)}else t.referrer instanceof URL&&(r=t.referrer);let n=vM(r),s=vM(r,!0);n.toString().length>4096&&(n=s);let o=vb(t,n),a=xy(n)&&!xy(t.url);switch(e){case"origin":return s??vM(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=By(t);return vb(n,c)?n:xy(n)&&!xy(c)?"no-referrer":s}default:return a?"no-referrer":s}}i(jHe,"determineRequestsReferrer");function vM(t,e){return rp(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(vM,"stripURLForReferrer");function xy(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(xy,"isURLPotentiallyTrustworthy");function KHe(t,e){if(Pb===void 0)return!0;let r=oX(e);if(r==="no metadata"||r.length===0)return!0;let n=ZHe(r),s=e$e(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)),t$e(l,c))return!0}return!1}i(KHe,"bytesMatch");var XHe=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function oX(t){let e=[],r=!0;for(let n of t.split(" ")){r=!1;let s=XHe.exec(n);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let o=s.groups.algo.toLowerCase();eX.includes(o)&&e.push(s.groups)}return r===!0?"no metadata":e}i(oX,"parseMetadata");function ZHe(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(ZHe,"getStrongestMetadata");function e$e(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(e$e,"filterMetadataListByAlgorithm");function t$e(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(t$e,"compareBase64Mixed");function r$e(t){}i(r$e,"tryUpgradeReque Line truncated
`);function M$e(t){for(let e=0;e<t.length;++e)if((t.charCodeAt(e)&-128)!==0)return!1;return!0}i(M$e,"isAsciiString");function F$e(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(F$e,"validateBoundary");function U$e(t,e){_b(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&&Db(t,L$e,o)||o.position===t.length-4&&Db(t,O$e,o))return s;if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let c=q$e(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",M$e(d)||(d=""),f=new D$e([m],u,{type:d})):f=T$e(Buffer.from(m)),_b(yX(l)),_b(typeof f=="string"&&yX(f)||v$e(f)),s.push(Q$e(l,f,u))}}i(U$e,"multipartFormDataParser");function q$e(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=Ff(c=>c!==10&&c!==13&&c!==58,t,e);if(a=FM(a,!0,!0,c=>c===9||c===32),!P$e.test(a.toString())||t[e.position]!==58)return"failure";switch(e.position++,Ff(c=>c===32||c===9,t,e),N$e(a)){case"content-disposition":{if(r=n=null,!Db(t,k$e,e)||(e.position+=17,r=IX(t,e),r===null))return"failure";if(Db(t,CX,e)){let c=e.position+CX.length;if(t[c]===42&&(e.position+=1,c+=1),t[c]!==61||t[c+1]!==34||(e.position+=12,n=IX(t,e),n===null))return"failure"}break}case"content-type":{let c=Ff(l=>l!==10&&l!==13,t,e);c=FM(c,!1,!0,l=>l===9||l===32),s=EX(c);break}case"content-transfer-encoding":{let c=Ff(l=>l!==10&&l!==13,t,e);c=FM(c,!1,!0,l=>l===9||l===32),o=EX(c);break}default:Ff(c=>c!==10&&c!==13,t,e)}if(t[e.position]!==13&&t[e.position+1]!==10)return"failure";e.position+=2}}i(q$e,"parseMultipartFormDataHeaders");function IX(t,e){_b(t[e.position-1]===34);let r=Ff(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(IX,"parseMultipartFormDataName");function Ff(t,e,r){let n=r.position;for(;n<e.length&&t(e[n]);)++n;return e.subarray(r.position,r.position=n)}i(Ff,"collectASequenceOfBytes");function FM(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(FM,"removeChars");function Db(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(Db,"bufferStartsWith");wX.exports={multipartFormDataParser:U$e,validateBoundary:F$e}});var Gf=I((KGt,_X)=>{"use strict";var Ty=He(),{ReadableStreamFrom:G$e,isBlobLike:bX,isReadableStreamLike:H$e,readableStreamClose:$$e,createDeferredPromise:z$e,fullyReadBody:V$e,extractMimeType:Y$e,utf8DecodeBytes:RX}=Fs(),{FormData:xX}=Ny(),{kState:qf}=Au(),{webidl:W$e}=nn(),{Blob:J$e}=require("node:buffer"),UM=require("node:assert"),{isErrored:NX,isDisturbed:j$e}=require("node:stream"),{isArrayBuffer:K$e}=require("node:util/types"),{serializeAMimeType:X$e}=is(),{multipartFormDataParser:Z$e}=SX(),qM;try{let t=require("node:crypto");qM=i(e=>t.randomInt(0,e),"random")}catch{qM=i(t=>Math.floor(Math.random(t)),"random")}var kb=new TextEncoder;function eze(){}i(eze,"noop");var TX=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,PX;TX&&(PX=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!j$e(e)&&!NX(e)&&e.cancel("Response object has been garbage collected").catch(eze)}));function vX(t,e=!1){let r=null;t instanceof ReadableStream?r=t:bX(t)?r=t.stream():r=new ReadableStream({async pull(l){let u=typeof s=="string"?kb.encode(s):s;u.byteLength&&l.enqueue(u),queueMicrotask(()=>$$e(l))},start(){},type:"bytes"}),UM(H$e(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(K$e(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(Ty.isFormDataLike(t)){let l=`----formdata-undici-0${`${qM(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=kb.encode(u+`; name="${d(p(E))}"\r
\r
${p(C)}\r
`);m.push(w),o+=w.byteLength}else{let w=kb.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=kb.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(bX(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(Ty.isDisturbed(t)||t.locked)throw new TypeError("Response body object should not be disturbed or locked");r=t instanceof ReadableStream?t:G$e(t)}if((typeof s=="string"||Ty.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(!NX(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(vX,"extractBody");function tze(t,e=!1){return t instanceof ReadableStream&&(UM(!Ty.isDisturbed(t),"The body has already been consumed."),UM(!t.locked,"The stream is locked.")),vX(t,e)}i(tze,"safelyExtractBody");function rze(t,e){let[r,n]=e.stream.tee();return e.stream=r,{stream:n,length:e.length,source:e.source}}i(rze,"cloneBody");function nze(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}i(nze,"throwIfAborted");function sze(t){return{blob(){return Uf(this,r=>{let n=BX(this);return n===null?n="":n&&(n=X$e(n)),new J$e([r],{type:n})},t)},arrayBuffer(){return Uf(this,r=>new Uint8Array(r).buffer,t)},text(){return Uf(this,RX,t)},json(){return Uf(this,ize,t)},formData(){return Uf(this,r=>{let n=BX(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let s=Z$e(r,n);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new xX;return o[qf]=s,o}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(r.toString()),o=new xX;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 Uf(this,r=>new Uint8Array(r),t)}}}i(sze,"bodyMixinMethods");function oze(t){Object.assign(t.prototype,sze(t))}i(oze,"mixinBody");async function Uf(t,e,r){if(W$e.brandCheck(t,r),QX(t))throw new TypeError("Body is unusable: Body has already been read");nze(t[qf]);let n=z$e(),s=i(a=>n.reject(a),"errorSteps"),o=i(a=>{try{n.resolve(e(a))}catch(c){s(c)}},"successSteps");return t[qf].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await V$e(t[qf].body,o,s),n.promise)}i(Uf,"consumeBody");function QX(t){let e=t[qf].body;return e!=null&&(e.stream.locked||Ty.isDisturbed(e.stream))}i(QX,"bodyUnusable");function ize(t){return JSON.parse(RX(t))}i(ize,"parseJSONFromBytes");function BX(t){let e=t[qf].headersList,r=Y$e(e);return r==="failure"?null:r}i(BX,"bodyMimeType");_X.exports={extractBody:vX,safelyExtractBody:tze,cloneBody:rze,mixinBody:oze,streamRegistry:PX,hasFinalizationRegistry:TX,bodyUnusable:QX}});var JX=I((ZGt,WX)=>{"use strict";var pe=require("node:assert"),ye=He(),{channels:DX}=Tf(),GM=SM(),{RequestContentLengthMismatchError:np,ResponseContentLengthMismatchError:kX,RequestAbortedError:HX,HeadersTimeoutError:aze,HeadersOverflowError:cze,SocketError:Hf,InformationalError:$f,BodyTimeoutError:lze,HTTPParserError:uze,ResponseExceededMaxSizeError:dze}=et(),{kUrl:$X,kReset:as,kClient:Fb,kParser:Rt,kBlocking:Qy,kRunning:xr,kPending:zX,kSize:LX,kWriting:hu,kQueue:gi,kNoRef:Py,kKeepAliveDefaultTimeout:pze,kHostHeader:mze,kPendingIdx:fze,kRunningIdx:Bo,kError:kn,kPipelining:Ub,kSocket:op,kKeepAliveTimeoutValue:Gb,kMaxHeadersSize:HM,kKeepAliveMaxTimeout:Aze,kKeepAliveTimeoutThreshold:hze,kHeadersTimeout:gze,kBodyTimeout:yze,kStrictContentLength:VM,kMaxRequests:OX,kCounter:Eze,kMaxResponseSize:Cze,kOnError:MX,kResume:il,kHTTPContext:VX}=kt(),Us=PK(),FX=Buffer.alloc(0),Lb=Buffer[Symbol.species],Ob=ye.addListener,Ize=ye.removeAllListeners,ip=Symbol("kIdleSocketValidation"),sp=Symbol("kIdleSocketValidationTimeout"),jM=Symbol("kSocketUsed"),$M;async function wze(){let t=process.env.JEST_WORKER_ID?BM():void 0,e;try{e=await WebAssembly.compile(_K())}catch{e=await WebAssembly.compile(t||BM())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:i((r,n,s)=>0,"wasm_on_url"),wasm_on_status:i((r,n,s)=>{pe(tr.ptr===r);let o=n-ya+ga.byteOffset;return tr.onStatus(new Lb(ga.buffer,o,s))||0},"wasm_on_status"),wasm_on_message_begin:i(r=>(pe(tr.ptr===r),tr.onMessageBegin()||0),"wasm_on_message_begin"),wasm_on_header_field:i((r,n,s)=>{pe(tr.ptr===r);let o=n-ya+ga.byteOffset;return tr.onHeaderField(new Lb(ga.buffer,o,s))||0},"wasm_on_header_field"),wasm_on_header_value:i((r,n,s)=>{pe(tr.ptr===r);let o=n-ya+ga.byteOffset;return tr.onHeaderValue(new Lb(ga.buffer,o,s))||0},"wasm_on_header_value"),wasm_on_headers_complete:i((r,n,s,o)=>(pe(tr.ptr===r),tr.onHeadersComplete(n,!!s,!!o)||0),"wasm_on_headers_complete"),wasm_on_body:i((r,n,s)=>{pe(tr.ptr===r);let o=n-ya+ga.byteOffset;return tr.onBody(new Lb(ga.bu Line truncated
`;if(typeof s=="string"?h+=`host: ${s}\r
`:h+=t[mze],o?h+=`connection: upgrade\r
upgrade: ${o}\r
`:t[Ub]&&!f[as]?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 b=0;b<w.length;b++)h+=`${C}: ${w[b]}\r
`;else h+=`${C}: ${w}\r
`}return DX.sendHeaders.hasSubscribers&&DX.sendHeaders.publish({request:e,headers:h,socket:f}),!l||m===0?qX(A,null,t,e,f,d,h,p):ye.isBuffer(l)?qX(A,l,t,e,f,d,h,p):ye.isBlobLike(l)?typeof l.stream=="function"?GX(A,l.stream(),t,e,f,d,h,p):Pze(A,l,t,e,f,d,h,p):ye.isStream(l)?Tze(A,l,t,e,f,d,h,p):ye.isIterable(l)?GX(A,l,t,e,f,d,h,p):pe(!1),!0}i(Nze,"writeH1");function Tze(t,e,r,n,s,o,a,c){pe(o!==0||r[xr]===0,"stream body cannot be pipelined");let l=!1,u=new Hb({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){ye.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 HX;queueMicrotask(()=>f(A))}},"onClose"),f=i(function(A){if(!l){if(l=!0,pe(s.destroyed||s[hu]&&r[xr]<=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")?ye.destroy(e,A):ye.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(Tze,"writeStream");function qX(t,e,r,n,s,o,a,c){try{e?ye.isBuffer(e)&&(pe(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[as]=!0)):o===0?s.write(`${a}content-length: 0\r
\r
`,"latin1"):(pe(o===null,"no body must not have content length"),s.write(`${a}\r
`,"latin1")),n.onRequestSent(),r[il]()}catch(l){t(l)}}i(qX,"writeBuffer");async function Pze(t,e,r,n,s,o,a,c){pe(o===e.size,"blob body must have content length");try{if(o!=null&&o!==e.size)throw new np;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[as]=!0),r[il]()}catch(l){t(l)}}i(Pze,"writeBlob");async function GX(t,e,r,n,s,o,a,c){pe(o!==0||r[xr]===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)=>{pe(l===null),s[kn]?f(s[kn]):l=m}),"waitForDrain");s.on("close",u).on("drain",u);let p=new Hb({abort:t,socket:s,request:n,contentLength:o,client:r,expectsPayload:c,header:a});try{for await(let m of e){if(s[kn])throw s[kn];p.write(m)||await d()}p.end()}catch(m){p.destroy(m)}finally{s.off("close",u).off("drain",u)}}i(GX,"writeIterable");var Hb=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[hu]=!0}write(e){let{socket:r,request:n,contentLength:s,client:o,bytesWritten:a,expectsPayload:c,header:l}=this;if(r[kn])throw r[kn];if(r.destroyed)return!1;let u=Buffer.byteLength(e);if(!u)return!0;if(s!==null&&a+u>s){if(o[VM])throw new np;process.emitWarning(new np)}r.cork(),a===0&&(!c&&n.reset!==!1&&(r[as]=!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[Rt].timeout&&r[Rt].timeoutType===zf&&r[Rt].timeout.refresh&&r[Rt].timeout.refresh(),d}end(){let{socket:e,contentLength:r,client:n,bytesWritten:s,expectsPayload:o,header:a,request:c}=this;if(c.onRequestSent(),e[hu]=!1,e[kn])throw e[kn];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[VM])throw new np;process.emitWarning(new np)}e[Rt].timeout&&e[Rt].timeoutType===zf&&e[Rt].timeout.refresh&&e[Rt].timeout.refresh(),n[il]()}}destroy(e){let{socket:r,client:n,abort:s}=this;r[hu]=!1,e&&(pe(n[xr]<=1,"pipeline should only contain this request"),s(e))}};WX.exports=bze});var n7=I((tHt,r7)=>{"use strict";var Ro=require("node:assert"),{pipeline:vze}=require("node:stream"),Ye=He(),{RequestContentLengthMismatchError:KM,RequestAbortedError:jX,SocketError:_y,InformationalError:XM}=et(),{kUrl:$b,kReset:Vb,kClient:Vf,kRunning:Yb,kPending:Qze,kQueue:gu,kPendingIdx:ZM,kRunningIdx:yi,kError:Ci,kSocket:Vr,kStrictContentLength:_ze,kOnError:eF,kMaxConcurrentStreams:t7,kHTTP2Session:Ei,kResume:yu,kSize:Dze,kHTTPContext:kze}=kt(),al=Symbol("open streams"),KX,XX=!1,zb;try{zb=require("node:http2")}catch{zb={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Lze,HTTP2_HEADER_METHOD:Oze,HTTP2_HEADER_PATH:Mze,HTTP2_HEADER_SCHEME:Fze,HTTP2_HEADER_CONTENT_LENGTH:Uze,HTTP2_HEADER_EXPECT:qze,HTTP2_HEADER_STATUS:Gze}}=zb;function Hze(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(Hze,"parseH2Headers");async function $ze(t,e){t[Vr]=e,XX||(XX=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=zb.connect(t[$b],{createConnection:i(()=>e,"createConnection"),peerMaxConcurrentStreams:t[t7]});r[al]=0,r[Vf]=t,r[Vr]=e,Ye.addListener(r,"error",Vze),Ye.addListener(r,"frameError",Yze),Ye.addListener(r,"end",Wze),Ye.addListener(r,"goaway",Jze),Ye.addListener(r,"close",function(){let{[Vf]:s}=this,{[Vr]:o}=s,a=this[Vr][Ci]||this[Ci]||new _y("closed",Ye.getSocketInfo(o));if(s[Ei]=null,s.destroyed){Ro(s[Qze]===0);let c=s[gu].splice(s[yi]);for(let l=0;l<c.length;l++){let u=c[l];Ye.errorRequest(s,u,a)}}}),r.unref(),t[Ei]=r,e[Ei]=r,Ye.addListener(e,"error",function(s){Ro(s.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Ci]=s,this[Vf][eF](s)}),Ye.addListener(e,"end",function(){Ye.destroy(this,new _y("other side closed",Ye.getSocketInfo(this)))}),Ye.addListener(e,"close",function(){let s=this[Ci]||new _y("closed",Ye.getSocketInfo(this));t[Vr]=null,this[Ei]!=null&&this[Ei].destroy(s),t[ZM]=t[yi],Ro(t[Yb]===0),t.emit("disconnect",t[$b],[t],s),t[yu]()});let n=!1;return e.on("close",()=>{n=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return Kze(t,...s)},resume(){zze(t)},destroy(s,o){n?queueMicrotask(o):e.destroy(s).on("close",o)},get destroyed(){return e.destroyed},busy(){return!1}}}i($ze,"connectH2");function zze(t){let e=t[Vr];e?.destroyed===!1&&(t[Dze]===0&&t[t7]===0?(e.unref(),t[Ei].unref()):(e.ref(),t[Ei].ref()))}i(zze,"resumeH2");function Vze(t){Ro(t.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Vr][Ci]=t,this[Vf][eF](t)}i(Vze,"onHttp2SessionError");function Yze(t,e,r){if(r===0){let n=new XM(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[Vr][Ci]=n,this[Vf][eF](n)}}i(Yze,"onHttp2FrameError");function Wze(){let t=new _y("other side closed",Ye.getSocketInfo(this[Vr]));this.destroy(t),Ye.destroy(this[Vr],t)}i(Wze,"onHttp2SessionEnd");function Jze(t){let e=this[Ci]||new _y(`HTTP/2: "GOAWAY" frame received with code ${t}`,Ye.getSocketInfo(this)),r=this[Vf];if(r[Vr]=null,r[kze]=null,this[Ei]!=null&&(this[Ei].destroy(e),this[Ei]=null),Ye.destroy(this[Vr],e),r[yi]<r[gu].length){let n=r[gu][r[yi]];r[gu][r[yi]++]=null,Ye.errorRequest(r,n,e),r[ZM]=r[yi]}Ro(r[Yb]===0),r.emit("disconnect",r[$b],[r],e),r[yu]()}i(Jze,"onHTTP2GoAway");function jze(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}i(jze,"shouldSendContentLength");function Kze(t,e){let r=t[Ei],{method:n,path:s,host:o,upgrade:a,expectContinue:c,signal:l,headers:u}=e,{body:d}=e;if(a)return Ye.errorRequest(t,e,new Error("Upgrade not supported for H2")),!1;let p={};for(let x=0;x<u.length;x+=2){let T=u[x+0],P=u[x+1];if(Array.isArray(P))for(let _=0;_<P.length;_++)p[T]?p[T]+=`,${P[_]}`:p[T]=P[_];else p[T]=P}let m,{hostname:f,port:A}=t[$b];p[Lze]=o||`${f}${A?`:${A}`:""}`,p[Oze]=n;let h=i(x=>{e.aborted||e.completed||(x=x||new jX,Ye.errorRequest(t,e,x),m!=null&&Ye.destroy(m,x),Ye.destroy(d,x),t[gu][t[yi]++]=null,t[yu]())},"abort");try{e.onConnect(h)}catch(x){Ye.errorRequest(t,e,x)}if(e.aborted)return!1;if(n==="CONNECT")return r.ref(),m=r.request(p,{endStream:!1,signal:l}),m.id&&!m.pending?(e.onUpgrade(null,null,m),++r[al],t[gu][t[yi]++]=null):m.once("ready",()=>{e.onUpgrade(null,null,m),++r[al],t[gu][t[yi]++]=null}),m.once("close",()=>{r[al]-=1,r[al]===0&&r.unref()}),!0;p[Mze]=s,p[Fze]="https";let E=n==="PUT"||n==="POST"||n==="PATCH";d&&typeof d.read=="function"&&d.read(0);let C=Ye.bodyLength(d);if(Ye.isFormDataLike(d)){KX??=Gf().extractBody;let[x,T]=KX(d);p["content-type"]=T,d=x.stream,C=x.length}if(C==null&&(C=e.contentLength),(C===0||!E)&&(C=null),jze(n)&&C>0&&e.contentLength!=null&&e.contentLength!==C){if(t[_ze])return Ye.errorRequest(t,e, Line truncated
`,this[S3e]=l??3e5,this[w3e]=s??3e5,this[b3e]=w??!0,this[x3e]=x,this[sF]=P,this[Cu]=null,this[P3e]=ee>-1?ee:-1,this[Q3e]=qe??100,this[pr]=null,this[Ii]=[],this[ll]=0,this[wi]=0,this[Oy]=U=>iF(this,U),this[v3e]=U=>A7(this,U)}get pipelining(){return this[Kb]}set pipelining(e){this[Kb]=e,this[Oy](!0)}get[Uy](){return this[Ii].length-this[wi]}get[Fy](){return this[wi]-this[ll]}get[My](){return this[Ii].length-this[ll]}get[A3e](){return!!this[pr]&&!this[Wf]&&!this[pr].destroyed}get[nF](){return!!(this[pr]?.busy(null)||this[My]>=(f7(this)||1)||this[Uy]>0)}[f3e](e){h7(this),this.once("connect",e)}[T3e](e,r){let n=e.origin||this[Ca].origin,s=new c3e(n,e,r);return this[Ii].push(s),this[cp]||(ap.bodyLength(s.body)==null&&ap.isIterable(s.body)?(this[cp]=1,queueMicrotask(()=>iF(this))):this[Oy](!0)),this[cp]&&this[Iu]!==2&&this[nF]&&(this[Iu]=2),this[Iu]<2}async[R3e](){return new Promise(e=>{this[My]?this[Cu]=e:e(null)})}async[N3e](e){return new Promise(r=>{let n=this[Ii].splice(this[wi]);for(let o=0;o<n.length;o++){let a=n[o];ap.errorRequest(this,a,e)}let s=i(()=>{this[Cu]&&(this[Cu](),this[Cu]=null),r(null)},"callback");this[pr]?(this[pr].destroy(e,s),this[pr]=null):queueMicrotask(s),this[Oy]()})}},k3e=jb();function A7(t,e){if(t[Fy]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){cl(t[wi]===t[ll]);let r=t[Ii].splice(t[ll]);for(let n=0;n<r.length;n++){let s=r[n];ap.errorRequest(t,s,e)}cl(t[My]===0)}}i(A7,"onError");async function h7(t){cl(!t[Wf]),cl(!t[pr]);let{host:e,hostname:r,protocol:n,port:s}=t[Ca];if(r[0]==="["){let o=r.indexOf("]");cl(o!==-1);let a=r.substring(1,o);cl(m7.isIP(a)),r=a}t[Wf]=!0,Yf.beforeConnect.hasSubscribers&&Yf.beforeConnect.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[pr]?.version,servername:t[Eu],localAddress:t[Ly]},connector:t[ky]});try{let o=await new Promise((a,c)=>{t[ky]({host:e,hostname:r,protocol:n,port:s,servername:t[Eu],localAddress:t[Ly]},(l,u)=>{l?c(l):a(u)})});if(t.destroyed){ap.destroy(o.on("error",d7),new d3e);return}cl(o);try{t[pr]=o.alpnProtocol==="h2"?await D3e(t,o):await _3e(t,o)}catch(a){throw o.destroy().on("error",d7),a}t[Wf]=!1,o[B3e]=0,o[sF]=t[sF],o[m3e]=t,o[g3e]=null,Yf.connected.hasSubscribers&&Yf.connected.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[pr]?.version,servername:t[Eu],localAddress:t[Ly]},connector:t[ky],socket:o}),t.emit("connect",t[Ca],[t])}catch(o){if(t.destroyed)return;if(t[Wf]=!1,Yf.connectError.hasSubscribers&&Yf.connectError.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[pr]?.version,servername:t[Eu],localAddress:t[Ly]},connector:t[ky],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(cl(t[Fy]===0);t[Uy]>0&&t[Ii][t[wi]].servername===t[Eu];){let a=t[Ii][t[wi]++];ap.errorRequest(t,a,o)}else A7(t,o);t.emit("connectionError",t[Ca],[t],o)}t[Oy]()}i(h7,"connect");function p7(t){t[Iu]=0,t.emit("drain",t[Ca],[t])}i(p7,"emitDrain");function iF(t,e){t[cp]!==2&&(t[cp]=2,L3e(t,e),t[cp]=0,t[ll]>256&&(t[Ii].splice(0,t[ll]),t[wi]-=t[ll],t[ll]=0))}i(iF,"resume");function L3e(t,e){for(;;){if(t.destroyed){cl(t[Uy]===0);return}if(t[Cu]&&!t[My]){t[Cu](),t[Cu]=null;return}if(t[pr]&&t[pr].resume(),t[nF])t[Iu]=2;else if(t[Iu]===2){e?(t[Iu]=1,queueMicrotask(()=>p7(t))):p7(t);continue}if(t[Uy]===0||t[Fy]>=(f7(t)||1))return;let r=t[Ii][t[wi]];if(t[Ca].protocol==="https:"&&t[Eu]!==r.servername){if(t[Fy]>0)return;t[Eu]=r.servername,t[pr]?.destroy(new u3e("servername changed"),()=>{t[pr]=null,iF(t)})}if(t[Wf])return;if(!t[pr]){h7(t);return}if(t[pr].destroyed||t[pr].busy(r))return;!r.aborted&&t[pr].write(r)?t[wi]++:t[Ii].splice(t[wi],1)}}i(L3e,"_resume");g7.exports=oF});var aF=I((uHt,y7)=>{"use strict";var Xb=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)}};y7.exports=class{static{i(this,"FixedQueue")}constructor(){this.head=this.tail=new Xb}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new Xb),this.head.push(e)}shift(){let e=this.tail,r=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),r}}});var C7=I((pHt,E7)=>{var{kFree:O3e,kConnected:M3e,kPending:F3e,kQueued:U3e,kRunning:q3e,kSize:G3e}=kt(),lp=Symbol("pool"),cF=class{static{i(this,"PoolStats")}constructor(e){this[lp]=e}get connected(){return this[lp][M3e]}get free(){return this[lp][O3e]}get pending(){return this[lp][F3e]}get queued(){return this[lp][U3e]}get running(){return this[lp][q3e]}get size(){return this[lp][G3e]}};E7.exports=cF});var fF=I((fHt,P7)=>{"use strict";var H3e=_f(),$3e=aF(),{kConnected:lF,kSize:I7,kRunning:w7,kPending:S7,kQueued:qy,kBusy:z3e,kFree:V3e,kUrl:Y3e,kClose:W3e,kDestroy:J3e,kDispatch:j3e}=kt(),K3e=C7(),cs=Symbol("client Line truncated
${n.count} ${n.noun} ${n.is} pending:
${e.format(r)}
`.trim())}};Lee.exports=f1});var hx=I((p$t,qee)=>{"use strict";var Mee=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:SYe}=et(),bYe=Kf();Uee()===void 0&&Fee(new bYe);function Fee(t){if(!t||typeof t.dispatch!="function")throw new SYe("Argument agent must implement Agent");Object.defineProperty(globalThis,Mee,{value:t,writable:!0,enumerable:!1,configurable:!1})}i(Fee,"setGlobalDispatcher");function Uee(){return globalThis[Mee]}i(Uee,"getGlobalDispatcher");qee.exports={setGlobalDispatcher:Fee,getGlobalDispatcher:Uee}});var gx=I((A$t,Gee)=>{"use strict";Gee.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 $ee=I((g$t,Hee)=>{"use strict";var xYe=Jb();Hee.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 xYe(r,a,s,o);return r(c,l)},"redirectInterceptor")}});var Vee=I((E$t,zee)=>{"use strict";var BYe=ix();zee.exports=t=>e=>i(function(n,s){return e(n,new BYe({...n,retryOptions:{...t,...n.retryOptions}},{handler:s,dispatch:e}))},"retryInterceptor")});var Wee=I((I$t,Yee)=>{"use strict";var RYe=He(),{InvalidArgumentError:NYe,RequestAbortedError:TYe}=et(),PYe=gx(),A1=class extends PYe{static{i(this,"DumpHandler")}#e=1024*1024;#t=null;#r=!1;#o=!1;#s=0;#n=null;#i=null;constructor({maxSize:e},r){if(super(r),e!=null&&(!Number.isFinite(e)||e<1))throw new NYe("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.#o=!0,this.#n=e}onHeaders(e,r,n,s){let a=RYe.parseHeaders(r)["content-length"];if(a!=null&&a>this.#e)throw new TYe(`Response size (${a}) larger than maxSize (${this.#e})`);return this.#o?!0:this.#i.onHeaders(e,r,n,s)}onError(e){this.#r||(e=this.#n??e,this.#i.onError(e))}onData(e){return this.#s=this.#s+e.length,this.#s>=this.#e&&(this.#r=!0,this.#o?this.#i.onError(this.#n):this.#i.onComplete([])),!0}onComplete(e){if(!this.#r){if(this.#o){this.#i.onError(this.reason);return}this.#i.onComplete(e)}}};function vYe({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(vYe,"createDumpInterceptor");Yee.exports=vYe});var Kee=I((S$t,jee)=>{"use strict";var{isIP:QYe}=require("node:net"),{lookup:_Ye}=require("node:dns"),DYe=gx(),{InvalidArgumentError:aA,InformationalError:kYe}=et(),Jee=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.#o,this.pick=e.pick??this.#s}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 kYe("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}`)}}#o(e,r,n){_Ye(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())})}#s(e,r,n){let s=null,{records:o,offset:a}=r,c;if(this.dualStack?(n==null&&(a==null||a===Jee?(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===Jee?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 DYe{static{i(this,"DNSDispatchHan Line truncated
${o}`;break;case"retry":Pne(o)&&(r[s]=o);break;case"id":vne(o)&&(r[s]=o);break;case"event":o.length>0&&(r[s]=o);break}}processEvent(e){e.retry&&Pne(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&vne(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,event:void 0,id:void 0,retry:void 0}}};Qne.exports={EventSourceStream:sU}});var qne=I((Bzt,Une)=>{"use strict";var{pipeline:H5e}=require("node:stream"),{fetching:$5e}=tE(),{makeRequest:z5e}=uA(),{webidl:fl}=nn(),{EventSourceStream:V5e}=_ne(),{parseMIMEType:Y5e}=is(),{createFastMessageEvent:W5e}=hA(),{isNetworkError:Dne}=Zy(),{delay:J5e}=rU(),{kEnumerableProperty:bp}=He(),{environmentSettingsObject:kne}=Fs(),Lne=!1,One=3e3,AE=0,Mne=1,hE=2,j5e="anonymous",K5e="use-credentials",IA=class t extends EventTarget{static{i(this,"EventSource")}#e={open:null,error:null,message:null};#t=null;#r=!1;#o=AE;#s=null;#n=null;#i;#a;constructor(e,r={}){super(),fl.util.markAsUncloneable(this);let n="EventSource constructor";fl.argumentLengthCheck(arguments,1,n),Lne||(Lne=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=fl.converters.USVString(e,n,"url"),r=fl.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#i=r.dispatcher,this.#a={lastEventId:"",reconnectionTime:One};let s=kne,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=j5e;r.withCredentials&&(a=K5e,this.#r=!0);let c={redirect:"follow",keepalive:!0,mode:"cors",credentials:a==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};c.client=kne.settingsObject,c.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],c.cache="no-store",c.initiator="other",c.urlList=[new URL(this.#t)],this.#s=z5e(c),this.#l()}get readyState(){return this.#o}get url(){return this.#t}get withCredentials(){return this.#r}#l(){if(this.#o===hE)return;this.#o=AE;let e={request:this.#s,dispatcher:this.#i},r=i(n=>{Dne(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#c()},"processEventSourceEndOfBody");e.processResponseEndOfBody=r,e.processResponse=n=>{if(Dne(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#c();return}let s=n.headersList.get("content-type",!0),o=s!==null?Y5e(s):"failure",a=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||a===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#o=Mne,this.dispatchEvent(new Event("open")),this.#a.origin=n.urlList[n.urlList.length-1].origin;let c=new V5e({eventSourceSettings:this.#a,push:i(l=>{this.dispatchEvent(W5e(l.type,l.options))},"push")});H5e(n.body.stream,c,l=>{l?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#n=$5e(e)}async#c(){this.#o!==hE&&(this.#o=AE,this.dispatchEvent(new Event("error")),await J5e(this.#a.reconnectionTime),this.#o===AE&&(this.#a.lastEventId.length&&this.#s.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#l()))}close(){fl.brandCheck(this,t),this.#o!==hE&&(this.#o=hE,this.#n.abort(),this.#s=null)}get onopen(){return this.#e.open}set onopen(e){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof e=="function"?(this.#e.open=e,this.addEventListener("open",e)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(e){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof e=="function"?(this.#e.message=e,this.addEventListener("message",e)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(e){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof e=="function"?(this.#e.error=e,this.addEventListener("error",e)):this.#e.error=null}},Fne={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:AE,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Mne,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:hE,writable:!1}};Object.defineProperties(IA,Fne);Object.defineProperties(IA.prototype,Fne);Object.defineProperties(IA.prototype,{close:bp,onerror:bp,onmessage:bp,onopen:bp,readyState:bp,url:bp,withCredentials:bp});fl.converters.EventSourceInitDict=fl.dictionaryConverter([{key:"withCredentials",converter:fl.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"dispatcher",converter:fl.converters.any}]);Une.exports={EventSource:IA,defaultReconnectionTime:One}});var SA=I((Nzt,Ie)=>{"use strict";var X5e=Jf(),Gne=Ey(),Z5e=jf(),eje=F7(),tje=Kf(),rje=RF(),nje=lZ(),sje=AZ(),Hne=et(),s0=He(),{InvalidArgumentError:n0}=Hne,wA=tee(),oje=Iy(),ije=c1(),aje=Oee(),cje=d1(),lje=JF(),uje=ix(),{getGlobalDispatcher:$ne,setGlobalDispatcher:dje}=hx(),pje=gx(),mje=Jb(),fje=jb();Object.assign(Gne.prototype,wA);Ie.exports.Dispatcher=Gne;Ie.exports.Client=X5e;Ie.exports.Pool=Z5e;Ie.exports.BalancedPool=e Line truncated
%s`,T,T,w,n);var P=w.type==="*"?t2:w.type==="?"?e2:"\\"+w.type;s=!0,n=n.slice(0,w.reStart)+P+"\\("+T}A(),o&&(n+="\\\\");var _=!1;switch(n.charAt(0)){case"[":case".":case"(":_=!0}for(var ee=c.length-1;ee>-1;ee--){var Ce=c[ee],ae=n.slice(0,Ce.reStart),qe=n.slice(Ce.reStart,Ce.reEnd-8),ie=n.slice(Ce.reEnd-8,Ce.reEnd),K=n.slice(Ce.reEnd);ie+=K;var U=ae.split("(").length-1,wt=K;for(h=0;h<U;h++)wt=wt.replace(/\)[+*?]?/,"");K=wt;var X="";K===""&&e!==x0&&(X="$");var ct=ae+qe+K+X+ie;n=ct}if(n!==""&&s&&(n="(?=.)"+n),_&&(n=m+n),e===x0)return[n,s];if(!s)return xXe(t);var pa=r.nocase?"i":"";try{var pu=new RegExp("^"+n+"$",pa)}catch{return new RegExp("$.")}return pu._glob=t,pu._src=n,pu}i(SXe,"parse");Ks.makeRe=function(t,e){return new Nr(t,e||{}).makeRe()};Nr.prototype.makeRe=bXe;function bXe(){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?t2:e.dot?hXe:gXe,n=e.nocase?"i":"",s=t.map(function(o){return o.map(function(a){return a===vp?r:typeof a=="string"?BXe(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(bXe,"makeRe");Ks.match=function(t,e,r){r=r||{};var n=new Nr(e,r);return t=t.filter(function(s){return n.match(s)}),n.options.nonull&&!t.length&&t.push(e),t};Nr.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;OE.sep!=="/"&&(e=e.split(OE.sep).join("/")),e=e.split(Gie),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");Nr.prototype.matchOne=function(t,e,r){return e.indexOf(vp)!==-1?this._matchGlobstar(t,e,r,0,0):this._matchOne(t,e,r,0,0)};Nr.prototype._matchGlobstar=function(t,e,r,n,s){var o,a=-1;for(o=s;o<e.length;o++)if(e[o]===vp){a=o;break}var c=-1;for(o=e.length-1;o>=0;o--)if(e[o]===vp){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,b=[0],x=0;x<u.length;x++){var T=u[x];T===vp?(b.push(w),C=[[],0],E.push(C)):(C[0].push(T),w++)}for(var P=E.length-1,_=t.length-m,ee=0;ee<E.length;ee++)E[ee][1]=_-(b[P--]+E[ee][0].length);return!!this._matchGlobStarBodySections(t,E,n,0,r,0,!!m)};Nr.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};Nr.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===vp)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 xXe(t){return t.replace(/\\(.)/g,"$1")}i(xXe,"globUnescape");function BXe(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}i(BXe,"regExpEscape")});var _A=I((dWt,Jie)=>{"use strict";var DXe="2.0.0",kXe=Number.MAX_SAFE_INTEGER||9007199254740991,LXe=16,OXe=250,MXe=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Jie.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:LXe,MAX_SAFE_BUILD_LENGTH:OXe,MAX_SAFE_INTEGER:kXe,RELEASE_TYPES:MXe,SEMVER_SPEC_VERSION:DXe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var UE=I((pWt,jie)=>{"use strict";var FXe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};jie.exports=FXe});var DA=I((Ra,Kie)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:n2,MAX_SAFE_BUILD_LENGTH:UXe,MAX_LENGTH:qXe}=_A(),GXe=UE();Ra=Kie.exports={};var HXe=Ra.re=[],$Xe=Ra.safeRe=[],z=Ra.src=[],zXe=Ra.safeSrc=[],V=Ra.t={},VXe=0,s2="[a-zA-Z0-9-]",YXe=[["\\s",1],["\\d",q Line truncated
`).join(`
`+o),t.push(s+"m+"+fB.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=Ftt()+e+" "+t[0]}i(Mtt,"formatArgs");function Ftt(){return an.inspectOpts.hideDate?"":new Date().toISOString()+" "}i(Ftt,"getDate");function Utt(...t){return process.stderr.write(mB.format(...t)+`
`)}i(Utt,"log");function qtt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}i(qtt,"save");function Gtt(){return process.env.DEBUG}i(Gtt,"load");function Htt(t){t.inspectOpts={};let e=Object.keys(an.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=an.inspectOpts[e[r]]}i(Htt,"init");fB.exports=Y2()(an);var{formatters:kle}=fB.exports;kle.o=function(t){return this.inspectOpts.colors=this.useColors,mB.inspect(t,this.inspectOpts).split(`
`).map(e=>e.trim()).join(" ")};kle.O=function(t){return this.inspectOpts.colors=this.useColors,mB.inspect(t,this.inspectOpts)}});var qp=I((njt,j2)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?j2.exports=Tle():j2.exports=Lle()});var Fle=I(As=>{"use strict";var $tt=As&&As.__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]})),ztt=As&&As.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Ole=As&&As.__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)&&$tt(e,t,r);return ztt(e,t),e};Object.defineProperty(As,"__esModule",{value:!0});As.req=As.json=As.toBuffer=void 0;var Vtt=Ole(require("http")),Ytt=Ole(require("https"));async function Mle(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(Mle,"toBuffer");As.toBuffer=Mle;async function Wtt(t){let r=(await Mle(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(Wtt,"json");As.json=Wtt;function Jtt(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?Ytt:Vtt).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(Jtt,"req");As.req=Jtt});var Hle=I(to=>{"use strict";var qle=to&&to.__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]})),jtt=to&&to.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Gle=to&&to.__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)&&qle(e,t,r);return jtt(e,t),e},Ktt=to&&to.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qle(e,t,r)};Object.defineProperty(to,"__esModule",{value:!0});to.Agent=void 0;var Xtt=Gle(require("net")),Ule=Gle(require("http")),Ztt=require("https");Ktt(Fle(),to);var va=Symbol("AgentBaseInternalState"),K2=class extends Ule.Agent{static{i(this,"Agent")}constructor(e){super(e),this[va]={}}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 Xtt.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))?Ztt.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 Ule.Agent)try{return c.addRequest(e,s)}catch(l){return n(l)}this[va].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[va].currentSocket;if(this[va].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[va].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[va]&&(this[va].defaultPort=e)}get protocol(){return this[va].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[va]&&(this[va].protocol=e)}};to.Agent=K2});var $le=I($A=>{"use strict";var ert=$A&&$A.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($A,"__esModule",{value:!0});$A.parseProxyResponse=void 0;var trt=ert(qp()),AB=(0,trt.default)("https-proxy-agent:parse-proxy-response");function rrt(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(),AB("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),AB("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){AB("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 b of f){if(!b)continue;let x=b.indexOf(":");if(x===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${b}"`));let T=b.slice(0,x).toLowerCase(),P=b.slice(x+1).trimStart(),_=w[T];typeof _=="string"?w[T]=[_,P]:Array.isArray(_)?_.push(P):w[T]=P}AB("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(rrt,"parseProxyResponse");$A.parseProxyResponse=rrt});var jle=I(Fo=>{"use strict";var nrt=Fo&&Fo.__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]})),srt=Fo&&Fo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Wle=Fo&&Fo.__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)&&nrt(e,t,r);return srt(e,t),e},Jle=Fo&&Fo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fo,"__esModule",{value:!0});Fo.HttpsProxyAgent=void 0;var hB=Wle(require("net")),zle=Wle(require("tls")),ort=Jle(require("assert")),irt=Jle(qp()),art=Hle(),crt=require("url"),lrt=$le(),tC=(0,irt.default)("https-proxy-agent"),Vle=i(t=>t.servername===void 0&&t.host&&!hB.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),gB=class extends art.Agent{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new crt.URL(e):e,this.proxyHeaders=r?.headers??{},tC("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?Yle(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:"?(tC("Creating `tls.Socket`: %o",this.connectOpts),s=zle.connect(Vle(this.connectOpts))):(tC("Creating `net.Socket`: %o",this.connectOpts),s=hB.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=hB.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,lrt.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",urt),r.secureEndpoint?(tC("Upgrading socket connection to TLS"),zle.connect({...Yle(Vle(r),"host","path","port"),socket:s})):s;s.destroy();let p=new hB.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{tC("Replaying proxy buffer for failed request"),(0,ort.default)(m.listenerCount("data")>0),m.push(d),m.push(null)}),p}};gB.protocols=["http","https"];Fo.HttpsProxyAgent=gB;function urt(t){t.resume()}i(urt,"resume");function Yle(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(Yle,"omit")});var Zle=I(hs=>{"use strict";var drt=hs&&hs.__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]})),prt=hs&&hs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Kle=hs&&hs.__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)&&drt(e,t,r);return prt(e,t),e};Object.defineProperty(hs,"__esModule",{value:!0});hs.req=hs.json=hs.toBuffer=void 0;var mrt=Kle(require("http")),frt=Kle(require("https"));async function Xle(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(Xle,"toBuffer");hs.toBuffer=Xle;async function Art(t){let r=(await Xle(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(Art,"json");hs.json=Art;function hrt(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?frt:mrt).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(hrt,"req");hs.req=hrt});var rue=I(ro=>{"use strict";var tue=ro&&ro.__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]})),grt=ro&&ro.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),yrt=ro&&ro.__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)&&tue(e,t,r);return grt(e,t),e},Ert=ro&&ro.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&tue(e,t,r)};Object.defineProperty(ro,"__esModule",{value:!0});ro.Agent=void 0;var eue=yrt(require("http"));Ert(Zle(),ro);var Qa=Symbol("AgentBaseInternalState"),X2=class extends eue.Agent{static{i(this,"Agent")}constructor(e){super(e),this[Qa]={}}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 eue.Agent)return o.addRequest(e,s);this[Qa].currentSocket=o,super.createSocket(e,r,n)},n)}createConnection(){let e=this[Qa].currentSocket;if(this[Qa].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Qa].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Qa]&&(this[Qa].defaultPort=e)}get protocol(){return this[Qa].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Qa]&&(this[Qa].protocol=e)}};ro.Agent=X2});var oue=I(Uo=>{"use strict";var Crt=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]})),Irt=Uo&&Uo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),sue=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)&&Crt(e,t,r);return Irt(e,t),e},wrt=Uo&&Uo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Uo,"__esModule",{value:!0});Uo.HttpProxyAgent=void 0;var Srt=sue(require("net")),brt=sue(require("tls")),xrt=wrt(qp()),Brt=require("events"),Rrt=rue(),nue=require("url"),zA=(0,xrt.default)("http-proxy-agent"),yB=class extends Rrt.Agent{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new nue.URL(e):e,this.proxyHeaders=r?.headers??{},zA("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?Nrt(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 nue.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;zA("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(zA("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),zA("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(zA("Creating `tls.Socket`: %o",this.connectOpts),o=brt.connect(this.connectOpts)):(zA("Creating `net.Socket`: %o",this.connectOpts),o=Srt.connect(this.connectOpts)),await(0,Brt.once)(o,"connect"),o}};yB.protocols=["http","https"];Uo.HttpProxyAgent=yB;function Nrt(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(Nrt,"omit")});var Rue=I(QB=>{"use strict";Object.defineProperty(QB,"__esModule",{value:!0});QB.state=void 0;QB.state={instrumenterImplementation:void 0}});var $ue=I(OB=>{"use strict";Object.defineProperty(OB,"__esModule",{value:!0});OB.state=void 0;OB.state={operationRequestMap:new WeakMap}});var wme=I(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});var Wat=require("os"),Jat=require("util");function jat(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}i(jat,"_interopDefaultLegacy");var Kat=jat(Jat);function Xat(t,...e){process.stderr.write(`${Kat.default.format(t,...e)}${Wat.EOL}`)}i(Xat,"log");var pme=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,fme,Pz=[],vz=[],rN=[];pme&&Qz(pme);var Ame=Object.assign(t=>hme(t),{enable:Qz,enabled:_z,disable:Zat,log:Xat});function Qz(t){fme=t,Pz=[],vz=[];let e=/\*/g,r=t.split(",").map(n=>n.trim().replace(e,".*?"));for(let n of r)n.startsWith("-")?vz.push(new RegExp(`^${n.substr(1)}$`)):Pz.push(new RegExp(`^${n}$`));for(let n of rN)n.enabled=_z(n.namespace)}i(Qz,"enable");function _z(t){if(t.endsWith("*"))return!0;for(let e of vz)if(e.test(t))return!1;for(let e of Pz)if(e.test(t))return!0;return!1}i(_z,"enabled");function Zat(){let t=fme||"";return Qz(""),t}i(Zat,"disable");function hme(t){let e=Object.assign(r,{enabled:_z(t),destroy:ect,log:Ame.log,namespace:t,extend:tct});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return i(r,"debug"),rN.push(e),e}i(hme,"createDebugger");function ect(){let t=rN.indexOf(this);return t>=0?(rN.splice(t,1),!0):!1}i(ect,"destroy");function tct(t){let e=hme(`${this.namespace}:${t}`);return e.log=this.log,e}i(tct,"extend");var GC=Ame,gme=new Set,eN=typeof process<"u"&&process.env&&process.env.AZURE_LOG_LEVEL||void 0,nN,sN=GC("azure");sN.log=(...t)=>{GC.log(...t)};var Dz=["verbose","info","warning","error"];eN&&(Ime(eN)?yme(eN):console.error(`AZURE_LOG_LEVEL set to unknown log level '${eN}'; logging is not enabled. Acceptable values: ${Dz.join(", ")}.`));function yme(t){if(t&&!Ime(t))throw new Error(`Unknown log level '${t}'. Acceptable values: ${Dz.join(",")}`);nN=t;let e=[];for(let r of gme)Cme(r)&&e.push(r.namespace);GC.enable(e.join(","))}i(yme,"setLogLevel");function rct(){return nN}i(rct,"getLogLevel");var mme={verbose:400,info:300,warning:200,error:100};function nct(t){let e=sN.extend(t);return Eme(sN,e),{error:tN(e,"error"),warning:tN(e,"warning"),info:tN(e,"info"),verbose:tN(e,"verbose")}}i(nct,"createClientLogger");function Eme(t,e){e.log=(...r)=>{t.log(...r)}}i(Eme,"patchLogMethod");function tN(t,e){let r=Object.assign(t.extend(e),{level:e});if(Eme(t,r),Cme(r)){let n=GC.disable();GC.enable(n+","+r.namespace)}return gme.add(r),r}i(tN,"createLogger");function Cme(t){return!!(nN&&mme[t.level]<=mme[nN])}i(Cme,"shouldEnable");function Ime(t){return Dz.includes(t)}i(Ime,"isAzureLogLevel");lh.AzureLogger=sN;lh.createClientLogger=nct;lh.getLogLevel=rct;lh.setLogLevel=yme});var Oz=I($C=>{"use strict";Object.defineProperty($C,"__esModule",{value:!0});var uh=new WeakMap,oN=new WeakMap,HC=class t{static{i(this,"AbortSignal")}constructor(){this.onabort=null,uh.set(this,[]),oN.set(this,!1)}get aborted(){if(!oN.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");return oN.get(this)}static get none(){return new t}addEventListener(e,r){if(!uh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");uh.get(this).push(r)}removeEventListener(e,r){if(!uh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");let n=uh.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 Sme(t){if(t.aborted)return;t.onabort&&t.onabort.call(t);let e=uh.get(t);e&&e.slice().forEach(r=>{r.call(t,{type:"abort"})}),oN.set(t,!0)}i(Sme,"abortSignal");var kz=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}},Lz=class{static{i(this,"AbortController")}constructor(e){if(this._signal=new HC,!!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(){Sme(this._signal)}static timeout(e){let r=new HC,n=setTimeout(Sme,e,r);return typeof n.unref=="function"&&n.unref(),r}};$C.AbortController=Lz;$C.AbortError=kz;$C.AbortSignal=HC});var Nme=I(Yn=>{"use strict";Object.defineP Line truncated
Polling from: ${r.config.operationLocation}
Operation status: ${d}
Polling status: ${Qme.includes(d)?"Stopped":"Running"}`),d==="succeeded"){let p=a(u,r);if(p!==void 0)return{response:await e(p).catch(Pme({state:r,stateProxy:n,isOperationError:c})),status:d}}return{response:u,status:d}}i(Cct,"pollOperationHelper");async function Lme(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:b}=await Cct({poll:e,getOperationStatus:o,state:r,stateProxy:n,operationLocation:C,getResourceLocation:a,isOperationError:l,options:s});if(Dme({status:b,response:w,state:r,stateProxy:n,isDone:h,processResult:p,getError:m,setErrorAsResult:E}),!Qme.includes(b)){let x=d?.(w);x&&A(x);let T=c?.(w,r);if(T!==void 0){let P=C!==T;r.config.operationLocation=T,u?.(T,P)}else u?.(C,!1)}f?.(r,w)}}i(Lme,"pollOperation");function Ome(t){let{azureAsyncOperation:e,operationLocation:r}=t;return r??e}i(Ome,"getOperationLocationPollingUrl");function Mme(t){return t.headers.location}i(Mme,"getLocationHeader");function Fme(t){return t.headers["operation-location"]}i(Fme,"getOperationLocationHeader");function Ume(t){return t.headers["azure-asyncoperation"]}i(Ume,"getAzureAsyncOperationHeader");function Ict(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(Ict,"findResourceLocation");function qme(t){let{rawResponse:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t,o=Fme(e),a=Ume(e),c=Ome({operationLocation:o,azureAsyncOperation:a}),l=Mme(e),u=r?.toLocaleUpperCase();return c!==void 0?{mode:"OperationLocation",operationLocation:c,resourceLocation:Ict({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(qme,"inferLroMode");function Gme(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 zz(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 om.verbose(`LRO: unrecognized operation status: ${e}`),e}}i(Gme,"transformStatus");function wct(t){var e;let{status:r}=(e=t.body)!==null&&e!==void 0?e:{};return Gme({status:r,statusCode:t.statusCode})}i(wct,"getStatus");function Sct(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 Gme({status:o,statusCode:t.statusCode})}i(Sct,"getProvisioningState");function zz(t){return t===202?"running":t<300?"succeeded":"failed"}i(zz,"toOperationStatus");function Hme({rawResponse:t}){let e=t.headers["retry-after"];if(e!==void 0){let r=parseInt(e);return isNaN(r)?bct(new Date(e)):r*1e3}}i(Hme,"parseRetryAfter");function $me(t){let e=t.flatResponse.error;if(!e){om.warning("The long-running operation failed but there is no error property in the response's body");return}if(!e.code||!e.message){om.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($me,"getErrorFromResponse");function bct(t){let e=Math.floor(new Date().getTime()),r=t.getTime();if(e<r)return r-e}i(bct,"calculatePollingIntervalFromDate");function zme(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 zz(e.rawResponse.statusCode);case"Body":return Vz(e,r);default:return"running"}}i(s,"helper");let o=s();return o==="running"&&n===void 0?"succeeded":o}i(zme,"getStatusFromInitialResponse");async function xct(t){let{stateProxy:e,resourceLocationConfig:r,processResult:n,lro:s,setErrorAsResult:o}=t;return kme({init:i(async()=>{let a=await s.sendInitialRequest(),c=qme({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:zme,setErrorAsResult:o})}i(xct,"initHttpOperation");function Vme({rawResponse:t},e){var r;switch((r=e.config.metadata)===null||r===void 0?void 0:r.mode){case"OperationLocation":return Ome({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(clt,"base64decode");hh.base64decode=clt;function llt(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(llt,"base64encode");hh.base64encode=llt});var wfe=I(bN=>{"use strict";Object.defineProperty(bN,"__esModule",{value:!0});bN.utf8read=void 0;var r3=i(t=>String.fromCharCode.apply(String,t),"fromCharCodes");function ult(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(r3(n)),s=0);return r.length?(s&&r.push(r3(n.slice(0,s))),r.join("")):r3(n.slice(0,s))}i(ult,"utf8read");bN.utf8read=ult});var XC=I(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.WireType=sc.mergeBinaryOptions=sc.UnknownFieldHandler=void 0;var dlt;(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")})(dlt=sc.UnknownFieldHandler||(sc.UnknownFieldHandler={}));function plt(t,e){return Object.assign(Object.assign({},t),e)}i(plt,"mergeBinaryOptions");sc.mergeBinaryOptions=plt;var mlt;(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"})(mlt=sc.WireType||(sc.WireType={}))});var BN=I(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});Ss.varint32read=Ss.varint32write=Ss.int64toString=Ss.int64fromString=Ss.varint64write=Ss.varint64read=void 0;function flt(){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(flt,"varint64read");Ss.varint64read=flt;function Alt(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(Alt,"varint64write");Ss.varint64write=Alt;var xN=65536*65536;function hlt(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>=xN&&(s=s+(n/xN|0),n=n%xN)}return i(o,"add1e6digit"),o(-24,-18),o(-18,-12),o(-12,-6),o(-6),[e,n,s]}i(hlt,"int64fromString");Ss.int64fromString=hlt;function glt(t,e){if(e>>>0<=2097151)return""+(xN*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(glt,"int64toString");Ss.int64toString=glt;function ylt(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(ylt,"varint32write");Ss.varint32write=ylt;function Elt(){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(Elt,"varint32read");Ss.varint32read=Elt});var rd=I(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});td.PbLong=td.PbULong=td.detectBi=void 0;var ZC=BN(),gt;function Sfe(){let t=new DataView(new ArrayBuffer(8));gt=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
`)}};ZN.RpcError=T3});var v3=I(tT=>{"use strict";Object.defineProperty(tT,"__esModule",{value:!0});tT.mergeRpcOptions=void 0;var tAe=gr();function qut(t,e){if(!e)return t;let r={};eT(t,r),eT(e,r);for(let n of Object.keys(e)){let s=e[n];switch(n){case"jsonOptions":r.jsonOptions=tAe.mergeJsonOptions(t.jsonOptions,r.jsonOptions);break;case"binaryOptions":r.binaryOptions=tAe.mergeBinaryOptions(t.binaryOptions,r.binaryOptions);break;case"meta":r.meta={},eT(t.meta,r.meta),eT(e.meta,r.meta);break;case"interceptors":r.interceptors=t.interceptors?t.interceptors.concat(s):s.concat();break}}return r}i(qut,"mergeRpcOptions");tT.mergeRpcOptions=qut;function eT(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(eT,"copy")});var _3=I(um=>{"use strict";Object.defineProperty(um,"__esModule",{value:!0});um.Deferred=um.DeferredState=void 0;var ac;(function(t){t[t.PENDING=0]="PENDING",t[t.REJECTED=1]="REJECTED",t[t.RESOLVED=2]="RESOLVED"})(ac=um.DeferredState||(um.DeferredState={}));var Q3=class{static{i(this,"Deferred")}constructor(e=!0){this._state=ac.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!==ac.PENDING)throw new Error(`cannot resolve ${ac[this.state].toLowerCase()}`);this._resolve(e),this._state=ac.RESOLVED}reject(e){if(this.state!==ac.PENDING)throw new Error(`cannot reject ${ac[this.state].toLowerCase()}`);this._reject(e),this._state=ac.REJECTED}resolvePending(e){this._state===ac.PENDING&&this.resolve(e)}rejectPending(e){this._state===ac.PENDING&&this.reject(e)}};um.Deferred=Q3});var k3=I(rT=>{"use strict";Object.defineProperty(rT,"__esModule",{value:!0});rT.RpcOutputStreamController=void 0;var rAe=_3(),dm=gr(),D3=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){dm.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){dm.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){dm.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(){dm.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;dm.assert(e,"bad state"),dm.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 rAe.Deferred,e.p.promise)},"next")}}pushIt(e){let r=this._itState;if(r.p){let n=r.p;dm.assert(n.state==rAe.DeferredState.PENDING,"iterator contract broken"),"value"in e?n.resolve(e):n.reject(e),delete r.p}else r.q.push(e)}};rT.RpcOutputStreamController=D3});var O3=I(Sh=>{"use strict";var Gut=Sh&&Sh.__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(Sh,"__esModule",{value:!0});Sh.UnaryCall=void 0;var L3=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 Gut(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}})}};Sh.UnaryCall=L3});var F3=I(bh=>{"use strict";var Hut=bh&&bh.__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(qgt,"logUnexpecedPropertyAccessOnce");function Ggt(){Object.keys(VT).forEach(function(t){delete VT[t]})}i(Ggt,"resetLoggedProperties")});var WT=I(dc=>{"use strict";dc.__esModule=!0;dc.HandlebarsEnvironment=w4;function Qye(t){return t&&t.__esModule?t:{default:t}}i(Qye,"_interopRequireDefault");var Cm=Xn(),Hgt=mo(),C4=Qye(Hgt),$gt=h4(),zgt=Nye(),Vgt=y4(),YT=Qye(Vgt),Ygt=E4(),Wgt="4.7.9";dc.VERSION=Wgt;var Jgt=8;dc.COMPILER_REVISION=Jgt;var jgt=7;dc.LAST_COMPATIBLE_COMPILER_REVISION=jgt;var Kgt={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"};dc.REVISION_CHANGES=Kgt;var I4="[object Object]";function w4(t,e,r){this.helpers=t||{},this.partials=e||{},this.decorators=r||{},$gt.registerDefaultHelpers(this),zgt.registerDefaultDecorators(this)}i(w4,"HandlebarsEnvironment");w4.prototype={constructor:w4,logger:YT.default,log:YT.default.log,registerHelper:i(function(e,r){if(Cm.toString.call(e)===I4){if(r)throw new C4.default("Arg not supported with multiple helpers");Cm.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(Cm.toString.call(e)===I4)Cm.extend(this.partials,e);else{if(typeof r>"u")throw new C4.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(Cm.toString.call(e)===I4){if(r)throw new C4.default("Arg not supported with multiple decorators");Cm.extend(this.decorators,e)}else this.decorators[e]=r},"registerDecorator"),unregisterDecorator:i(function(e){delete this.decorators[e]},"unregisterDecorator"),resetLoggedPropertyAccesses:i(function(){Ygt.resetLoggedProperties()},"resetLoggedPropertyAccesses")};var Xgt=YT.default.log;dc.log=Xgt;dc.createFrame=Cm.createFrame;dc.logger=YT.default});var Dye=I((JT,_ye)=>{"use strict";JT.__esModule=!0;function S4(t){this.string=t}i(S4,"SafeString");S4.prototype.toString=S4.prototype.toHTML=function(){return""+this.string};JT.default=S4;_ye.exports=JT.default});var kye=I(b4=>{"use strict";b4.__esModule=!0;b4.wrapHelper=Zgt;function Zgt(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(Zgt,"wrapHelper")});var qye=I(ld=>{"use strict";ld.__esModule=!0;ld.checkRevision=oyt;ld.template=iyt;ld.wrapProgram=jT;ld.resolvePartial=ayt;ld.invokePartial=cyt;ld.noop=Fye;function eyt(t){return t&&t.__esModule?t:{default:t}}i(eyt,"_interopRequireDefault");function tyt(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(tyt,"_interopRequireWildcard");var ryt=Xn(),qh=tyt(ryt),nyt=mo(),Fl=eyt(nyt),Ul=WT(),Lye=h4(),syt=kye(),Oye=E4();function oyt(t){var e=t&&t[0]||1,r=Ul.COMPILER_REVISION;if(!(e>=Ul.LAST_COMPATIBLE_COMPILER_REVISION&&e<=Ul.COMPILER_REVISION))if(e<Ul.LAST_COMPATIBLE_COMPILER_REVISION){var n=Ul.REVISION_CHANGES[r],s=Ul.REVISION_CHANGES[e];throw new Fl.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 Fl.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(oyt,"checkRevision");function iyt(t,e){if(!e)throw new Fl.default("No environment passed to template");if(!t||!t.main)throw new Fl.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=qh.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&&e.compile&&(l.partials[l.name]=e.compile(a,t.compilerOptions,e),u=l.partials[l.name](c,l)),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 Fl.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 Fl.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)||Oye.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:qh.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=jT(this,c,f,l,u,d,p):m||(m=this.programs[c]=jT(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=qh.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=lyt(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=Uye(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={};Mye(c,e.helpers,s),Mye(c,a.helpers,s),s.helpers=c,t.usePartial&&(s.partials=s.mergeIfNeeded(a.partials,e.partials)),(t.usePartial||t.useDecorators)&&(s.decorators=qh.extend({},e.decorators,a.decorators)),s.hooks={},s.protoAccessControl=Oye.createProtoAccessControl(a);var l=a.allowCallsToHelperMissing||r;Lye.moveHelperToHooks(s,"helperMissing",l),Lye.moveHelperToHooks(s,"blockHelperMissing",l)}},o._child=function(a,c,l,u){if(t.useBlockParams&&!l)throw new Fl.default("must pass block params");if(t.useDepths&&!u)throw new Fl.default("must pass parent depths");return jT(s,a,t[a],c,0,l,u)},o}i(iyt,"template");function jT(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=Uye(r,c,t,a,n,o),c.program=e,c.depth=a?a.length:0,c.blockParams=s||0,c}i(jT,"wrapProgram");function ayt(t,e,r){return t?!t.call&&!r.name&&(r.name=t,t=KT(r.partials,t)):r.name==="@partial-block"?t=KT(r.data,"partial-block"):t=KT(r.partials,r.name),t}i(ayt,"resolvePartial");function cyt(t,e,r){var n=KT(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!==Fye&&(function(){r.data=Ul.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=Ul.createFrame(l.data),l.data["partial-block"]=n,o(c,l)},"partialBlockWrapper"),o.partials&&(r.partials=qh.extend({},r.partials,o.partials))})(),t===void 0&&s&&(t=s),t===void 0)throw new Fl.default("The partial "+r.name+" could not be found");if(t instanceof Function)return t(e,r)}i(cyt,"invokePartial");function Fye(){return""}i(Fye,"noop");function KT(t,e){if(t&&Object.prototype.hasOwnProperty.call(t,e))return t[e]}i(KT,"lookupOwnProperty");function lyt(t,e){return(!e||!("root"in e))&&(e=e?Ul.createFrame(e):{},e.root=t),e}i(lyt,"initData");function Uye(t,e,r,n,s,o){if(t.decorator){var a={};e=t.decorator(e,a,r,n&&n[0],s,o,n),qh.extend(e,a)}return e}i(Uye,"executeDecorators");function Mye(t,e,r){e&&Object.keys(e).forEach(function(n){var s=e[n];t[n]=uyt(s,r)})}i(Mye,"addHelpers");function uyt(t,e){var r=e.lookupProperty;return syt.wrapHelper(t,function(n){return n.lookupProperty=r,n})}i(uyt,"passLookupPropertyOption")});var x4=I((XT,Gye)=>{"use strict";XT.__esModule=!0;XT.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}};Gye.exports=XT.default});var Yye=I((ZT,Vye)=>{"use strict";ZT.__esModule=!0;function R4(t){return t&&t.__esModule?t:{default:t}}i(R4,"_interopRequireDefault");function N4(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(N4,"_interopRequireWildcard");var dyt=WT(),Hye=N4(dyt),pyt=Dye(),myt=R4(pyt),fyt=mo(),Ayt=R4(fyt),hyt=Xn(),B4=N4(hyt),gyt=qye Line truncated
`+this.lexer.showPosition()+`
Expecting `+U.join(", ")+", got '"+(this.terminals_[x]||x)+"'":wt="Parse error on line "+(p+1)+": Unexpected "+(x==1?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(wt,{text:this.lexer.match,token:this.terminals_[x]||x,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: "+x);switch(_[0]){case 1:a.push(x),c.push(this.lexer.yytext),l.push(this.lexer.yylloc),a.push(_[1]),x=null,T?(x=T,T=null):(m=this.lexer.yyleng,d=this.lexer.yytext,p=this.lexer.yylineno,E=this.lexer.yylloc,f>0&&f--);break;case 2:if(ie=this.productions_[_[1]][1],ae.$=c[c.length-ie],ae._$={first_line:l[l.length-(ie||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(ie||1)].first_column,last_column:l[l.length-1].last_column},C&&(ae._$.range=[l[l.length-(ie||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;ie&&(a=a.slice(0,-1*ie*2),c=c.slice(0,-1*ie),l=l.slice(0,-1*ie)),a.push(this.productions_[_[1]][0]),c.push(ae.$),l.push(ae._$),K=u[a[a.length-2]][a[a.length-1]],a.push(K);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})();tP.default=Cyt;jye.exports=tP.default});var oP=I((sP,eEe)=>{"use strict";sP.__esModule=!0;function Iyt(t){return t&&t.__esModule?t:{default:t}}i(Iyt,"_interopRequireDefault");var wyt=mo(),P4=Iyt(wyt);function rP(){this.parents=[]}i(rP,"Visitor");rP.prototype={constructor:rP,mutating:!1,acceptKey:i(function(e,r){var n=this.accept(e[r]);if(this.mutating){if(n&&!rP.prototype[n.type])throw new P4.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 P4.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(!this[e.type])throw new P4.default("Unknown type: "+e.type,e);this.current&&this.parents.unshift(this.current),this.current=e;var r=this[e.type](e);if(this.current=this.parents.shift(),!this.mutating||r)return r;if(r!==!1)return e}},"accept"),Program:i(function(e){this.acceptArray(e.body)},"Program"),MustacheStatement:nP,Decorator:nP,BlockStatement:Xye,DecoratorBlock:Xye,PartialStatement:Zye,PartialBlockStatement:i(function(e){Zye.call(this,e),this.acceptKey(e,"program")},"PartialBlockStatement"),ContentStatement:i(function(){},"ContentStatement"),CommentStatement:i(function(){},"CommentStatement"),SubExpression:nP,PathExpression:i(function(){},"PathExpressionLine 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 bm(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 bm?e:(e=X4(e,this,r),new bm(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+"").replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},"quotedString"),objectLiteral:i(function(e){var r=this,n=[];Object.keys(e).forEach(function(o){var a=X4(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(X4(e[n],this));return r},"generateList"),generateArray:i(function(e){var r=this.generateList(e);return r.prepend("["),r.add("]"),r},"generateArray")};mP.default=kEe;LEe.exports=mP.default});var GEe=I((fP,qEe)=>{"use strict";fP.__esModule=!0;function UEe(t){return t&&t.__esModule?t:{default:t}}i(UEe,"_interopRequireDefault");var MEe=WT(),EEt=mo(),eY=UEe(EEt),CEt=Xn(),IEt=OEe(),FEe=UEe(IEt);function Yh(t){this.value=t}i(Yh,"Literal");function Wh(){}i(Wh,"JavaScriptCompiler");Wh.prototype={nameLookup:i(function(e,r){return this.internalNameLookup(e,r)},"nameLookup"),depthedLookup:i(function(e){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(e),")"]},"depthedLookup"),compilerInfo:i(function(){var e=MEe.COMPILER_REVISION,r=MEe.REVISION_CHANGES[e];return[e,r]},"compilerInfo"),appendToBuffer:i(function(e,r,n){return CEt.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,",",JSON.stringify(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 eY.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 FEe.default(this.options.srcName),this.decorators=new FEe.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(wEt(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};lr.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};lr.prototype.MustacheStatement=function(t){return this.pad("{{ "+this.SubExpression(t)+" }}")};lr.prototype.Decorator=function(t){return this.pad("{{ DIRECTIVE "+this.SubExpression(t)+" }}")};lr.prototype.BlockStatement=lr.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};lr.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+" }}")};lr.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+" }}")};lr.prototype.ContentStatement=function(t){return this.pad("CONTENT[ '"+t.value+"' ]")};lr.prototype.CommentStatement=function(t){return this.pad("{{! '"+t.value+"' }}")};lr.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};lr.prototype.PathExpression=function(t){var e=t.parts.join("/");return(t.data?"@":"")+"PATH:"+e};lr.prototype.StringLiteral=function(t){return'"'+t.value+'"'};lr.prototype.NumberLiteral=function(t){return"NUMBER{"+t.value+"}"};lr.prototype.BooleanLiteral=function(t){return"BOOLEAN{"+t.value+"}"};lr.prototype.UndefinedLiteral=function(){return"UNDEFINED"};lr.prototype.NullLiteral=function(){return"NULL"};lr.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(", ")+"}"};lr.prototype.HashPair=function(t){return t.key+"="+this.accept(t.value)}});var jEe=I((Ogr,JEe)=>{var gP=zEe().default,WEe=VEe();gP.PrintVisitor=WEe.PrintVisitor;gP.print=WEe.print;JEe.exports=gP;function YEe(t,e){var r=require("fs"),n=r.readFileSync(e,"utf8");t.exports=gP.compile(n)}i(YEe,"extension");typeof require<"u"&&require.extensions&&(require.extensions[".handlebars"]=YEe,require.extensions[".hbs"]=YEe)});var cCe=I(wP=>{"use strict";Object.defineProperty(wP,"__esModule",{value:!0});wP.getProxyUrl=qEt;wP.checkBypass=aCe;function qEt(t){let e=t.protocol==="https:";if(aCe(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 IP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new IP(`http://${r}`)}else return}i(qEt,"getProxyUrl");function aCe(t){if(!t.hostname)return!1;let e=t.hostname;if(GEt(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(aCe,"checkBypass");function GEt(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(GEt,"isLoopbackAddress");var IP=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 uCe=I(qt=>{"use strict";var HEt=qt&&qt.__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]})),$Et=qt&&qt.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),BP=qt&&qt.__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"&&HEt(r,e,n[s]);return $Et(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 uIt,dIt,cIe,lIe=g(()=>{uIt=i(()=>(t,e)=>async r=>(e.__retryLongPoll=!0,t(r)),"longPollMiddleware"),dIt={name:"longPollMiddleware",tags:["RETRY"],step:"initialize",override:!0},cIe=i(t=>({applyToStack:i(e=>{e.add(uIt(),dIt)},"applyToStack")}),"getLongPollPlugin")});function Ad(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var uIe=g(()=>{i(Ad,"setCredentialFeature")});var dIe,vY,pIe=g(()=>{dIe=require("node:stream"),vY=i(t=>t?.body instanceof dIe.Readable||typeof ReadableStream<"u"&&t?.body instanceof ReadableStream,"isStreamingPayload")});var Tm,hd,gd,mIe,fIe,LP=g(()=>{Tm=i((t,e)=>{let r=[];if(t&&r.push(t),e)for(let n of e)r.push(n);return r},"getAllAliases"),hd=i((t,e)=>`${t||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,"getMiddlewareNameWithAliases"),gd=i(()=>{let t=[],e=[],r=!1,n=new Set,s=i(p=>p.sort((m,f)=>mIe[f.step]-mIe[m.step]||fIe[f.priority||"normal"]-fIe[m.priority||"normal"]),"sort"),o=i(p=>{let m=!1,f=i(A=>{let h=Tm(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 Tm(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 Tm(C.name,C.aliases))A[w]=C;m.push(C)}),e.forEach(E=>{let C={...E,before:[],after:[]};for(let w of Tm(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 ${hd(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=Tm(f,h);if(C.length>0){if(C.some(w=>n.has(w))){if(!A)throw new Error(`Duplicate middleware name '${hd(f,h)}'`);for(let w of C){let b=t.findIndex(T=>T.name===w||T.aliases?.some(P=>P===w));if(b===-1)continue;let x=t[b];if(x.step!==E.step||E.priority!==x.priority)throw new Error(`"${hd(x.name,x.aliases)}" middleware with ${x.priority} priority in ${x.step} step cannot be overridden by "${hd(f,h)}" middleware with ${E.priority} priority in ${E.step} step.`);t.splice(b,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=Tm(f,h);if(C.length>0){if(C.some(w=>n.has(w))){if(!A)throw new Error(`Duplicate middleware name '${hd(f,h)}'`);for(let w of C){let b=e.findIndex(T=>T.name===w||T.aliases?.some(P=>P===w));if(b===-1)continue;let x=e[b];if(x.toMiddleware!==E.toMiddleware||x.relation!==E.relation)throw new Error(`"${hd(x.name,x.aliases)}" middleware ${x.relation} "${x.toMiddleware}" middleware cannot be overridden by "${hd(f,h)}" middleware ${E.relation} "${E.toMiddleware}" middleware.`);e.splice(b,1)}}for(let w of C)n.add(w)}e.push(E)},"addRelativeTo"),clone:i(()=>c(gd()),"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=Tm(E,C);for(let b of w)n.delete(b);return m=!0,!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByTag"),concat:i(p=>{let m=c(gd());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 hd(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"),mIe={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},fIe={high:3,normal:2,low:1}});var fc=I(Gi=>{var QY;(function(t){t.HEADER="header",t.QUERY="query"})(QY||(QY={}));var _Y;(function(t){t.HEADER="header",t.QUERY="query"})(_Y||(_Y={}));var DY;(function(t){t.HTTP="http",t.HTTPS="https"})(DY||(DY={}));var zI;(function(t){t.MD5="md5",t.CRC32="crc32",t.CRC32C="crc32c",t.SHA1="sha1",t.SHA256="sha256"})(zI||(zI={}));var pIt=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(dn.isInstance(s)){let{headers:f={},statusCode:A}=s,h=Object.entries(f);p.$metadata={httpStatusCode:A,requestId:HY(/^x-[\w-]+-request-?id$/,h),extendedRequestId:HY(/^x-[\w-]+-id-2$/,h),cfId:HY(/^x-[\w-]+-cf-id$/,h)}}}catch{}}throw p}},"schemaDeserializationMiddleware"),HY=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var FIe,UIe=g(()=>{yt();FP();FIe=i(t=>(e,r)=>async n=>{let{operationSchema:s}=Bt(r),[,o,a,c,l,u]=s??[],d=r.endpointV2?async()=>Ao(r.endpointV2):t.endpoint,p=await t.protocol.serializeRequest(WI(o,a,c,l,u),n.input,{...t,...r,endpoint:d});return e({...n,request:p})},"schemaSerializationMiddleware")});function $l(t){return{applyToStack:i(e=>{e.add(FIe(t),GIe),e.add(OIe(t),qIe),t.protocol.setSerdeContext(t)},"applyToStack")}}var qIe,GIe,HIe=g(()=>{MIe();UIe();qIe={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},GIe={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};i($l,"getSchemaSerdePlugin")});var Ir,yd=g(()=>{Ir=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 UP,SIt,$Ie=g(()=>{yd();UP=class t extends Ir{static{i(this,"ListSchema")}static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=t.symbol},SIt=i((t,e,r,n)=>Ir.assign(new UP,{name:e,namespace:t,traits:r,valueSchema:n}),"list")});var qP,bIt,zIe=g(()=>{yd();qP=class t extends Ir{static{i(this,"MapSchema")}static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=t.symbol},bIt=i((t,e,r,n,s)=>Ir.assign(new qP,{name:e,namespace:t,traits:r,keySchema:n,valueSchema:s}),"map")});var GP,xIt,VIe=g(()=>{yd();GP=class t extends Ir{static{i(this,"OperationSchema")}static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=t.symbol},xIt=i((t,e,r,n,s)=>Ir.assign(new GP,{name:e,namespace:t,traits:r,input:n,output:s}),"op")});var sg,BIt,$Y=g(()=>{yd();sg=class t extends Ir{static{i(this,"StructureSchema")}static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=t.symbol},BIt=i((t,e,r,n,s)=>Ir.assign(new sg,{name:e,namespace:t,traits:r,memberNames:n,memberList:s}),"struct")});var HP,RIt,YIe=g(()=>{yd();$Y();HP=class t extends sg{static{i(this,"ErrorSchema")}static symbol=Symbol.for("@smithy/err");ctor;symbol=t.symbol},RIt=i((t,e,r,n,s,o)=>Ir.assign(new HP,{name:e,namespace:t,traits:r,memberNames:n,memberList:s,ctor:null}),"error")});function Ac(t){if(typeof t=="object")return t;if(t=t|0,$P[t])return $P[t];let e={},r=0;for(let n of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])(t>>r++&1)===1&&(e[n]=1);return $P[t]=e}var $P,zY=g(()=>{$P=[];i(Ac,"translateTraits")});function jI(t,e){if(t instanceof te)return Object.assign(t,{memberName:e,_isMemberSchema:!0});let r=te;return new r(t,e)}var JI,zP,VP,te,VY,WIe,JIe=g(()=>{GY();zY();JI={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},zP=[],VP={},te=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;VY(s);)n.push(s[1]),s=s[0],o=$i(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,Ac(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=$i(o),WIe(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(zP[e])return zP[e]}else if(typeof e=="string"){if(VP[e])return VP[e]}else if(r&&e[JI.ns])return e[JI.ns];let n=$i(e);if(n instanceof t)return n;if(VY(n)){let[o,a]=n;if(o instanceof t)return Object.assign(o.getMergedTraits(),Ac(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[JI.ns]=s:typeof n=="string"?VP[n]=s:typeof n=="number" Line truncated
`).slice(0,5).filter(e=>!e.includes("stackTraceWarning")).join(`
`),"stackTraceWarning"),lg={warn:console.warn}});function Yi(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`${FIt[n]}, ${l} ${lW[r]} ${e} ${u}:${d}:${p} GMT`}var FIt,lW,UIt,Vwe,qIt,uv,GIt,HIt,$It,pg,dv,ew,zIt,VIt,YIt,cW,WIt,JIt,jIt,Cc,KIt,XIt,dg,Ywe=g(()=>{aW();FIt=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],lW=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];i(Yi,"dateToUtcString");UIt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),Vwe=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=UIt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,a,c,l,u]=e,d=Id(dg(n)),p=Cc(s,"month",1,12),m=Cc(o,"day",1,31);return ew(d,p,m,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})},"parseRfc3339DateTime"),qIt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),uv=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=qIt.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=Id(dg(n)),m=Cc(s,"month",1,12),f=Cc(o,"day",1,31),A=ew(p,m,f,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u});return d.toUpperCase()!="Z"&&A.setTime(A.getTime()-XIt(d)),A},"parseRfc3339DateTimeWithOffset"),GIt=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$/),HIt=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$/),$It=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=GIt.exec(t);if(e){let[r,n,s,o,a,c,l,u]=e;return ew(Id(dg(o)),cW(s),Cc(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})}if(e=HIt.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return YIt(ew(zIt(o),cW(s),Cc(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u}))}if(e=$It.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return ew(Id(dg(u)),cW(n),Cc(s.trimLeft(),"day",1,31),{hours:o,minutes:a,seconds:c,fractionalMilliseconds:l})}throw new TypeError("Invalid RFC-7231 date-time value")},"parseRfc7231DateTime"),dv=i(t=>{if(t==null)return;let e;if(typeof t=="number")e=t;else if(typeof t=="string")e=ZI(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"),ew=i((t,e,r,n)=>{let s=e-1;return JIt(t,s,r),new Date(Date.UTC(t,s,r,Cc(n.hours,"hour",0,23),Cc(n.minutes,"minute",0,59),Cc(n.seconds,"seconds",0,60),KIt(n.fractionalMilliseconds)))},"buildDate"),zIt=i(t=>{let e=new Date().getUTCFullYear(),r=Math.floor(e/100)*100+Id(dg(t));return r<e?r+100:r},"parseTwoDigitYear"),VIt=50*365*24*60*60*1e3,YIt=i(t=>t.getTime()-new Date().getTime()>VIt?new Date(Date.UTC(t.getUTCFullYear()-100,t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds())):t,"adjustRfc850Year"),cW=i(t=>{let e=lW.indexOf(t);if(e<0)throw new TypeError(`Invalid month: ${t}`);return e+1},"parseMonthByShortName"),WIt=[31,28,31,30,31,30,31,31,30,31,30,31],JIt=i((t,e,r)=>{let n=WIt[e];if(e===1&&jIt(t)&&(n=29),r>n)throw new TypeError(`Invalid day for ${lW[e]} in ${t}: ${r}`)},"validateDayOfMonth"),jIt=i(t=>t%4===0&&(t%100!==0||t%400===0),"isLeapYear"),Cc=i((t,e,r,n)=>{let s=lv(dg(t));if(s<r||s>n)throw new TypeError(`${e} must be between ${r} and ${n}, inclusive`);return s},"parseDateValue"),KIt=i(t=>t==null?0:av("0."+t)*1e3,"parseMilliseconds"),XIt=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"),dg=i(t=>{let e=0;for(;e<t.length-1&&t.charAt(e)==="0";)e++;return e===0?t:t.slice(e)},"stripLeadingZeroes")});var Tn,Wwe=g(()=>{Tn=i(function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})},"LazyJsonString");Tn.from=t=>t&&typeof t=="object"&&(t instanceof Tn||"deserializeJSON"in t)?t:typeof t=="string"||Object.getPrototypeOf(t)===String. 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(dn.isInstance(o)){let{headers:l={}}=o,u=Object.entries(l);a.$metadata={httpStatusCode:o.statusCode,requestId:hW(/^x-[\w-]+-request-?id$/,u),extendedRequestId:hW(/^x-[\w-]+-id-2$/,u),cfId:hW(/^x-[\w-]+-cf-id$/,u)}}}catch{}}throw a}},"deserializerMiddleware"),hW=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var go,rw=g(()=>{go=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 wd,Ev=g(()=>{rw();wd=class t extends go{static{i(this,"CredentialsProviderError")}name="CredentialsProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var Cv,oSe=g(()=>{rw();Cv=class t extends go{static{i(this,"TokenProviderError")}name="TokenProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var Iv,yW=g(()=>{rw();Iv=i((...t)=>async()=>{if(t.length===0)throw new go("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 wv,EW=g(()=>{wv=i(t=>()=>Promise.resolve(t),"fromValue")});var Ag,Sv=g(()=>{Ag=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 Ps,bv=g(()=>{Ps=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 iSe,aSe=g(()=>{iSe=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 Pn,xv=g(()=>{(function(t){t.ENV="env",t.CONFIG="shared config entry"})(Pn||(Pn={}))});var cSe,lSe,CW,swt,Sc,hg=g(()=>{cSe=require("node:os"),lSe=require("node:path"),CW={},swt=i(()=>process&&process.geteuid?`${process.geteuid()}`:"DEFAULT","getHomeDirCacheKey"),Sc=i(()=>{let{HOME:t,USERPROFILE:e,HOMEPATH:r,HOMEDRIVE:n=`C:${lSe.sep}`}=process.env;if(t)return t;if(e)return e;if(r)return`${n}${r}`;let s=swt();return CW[s]||(CW[s]=(0,cSe.homedir)()),CW[s]},"getHomeDir")});var IW,wW,Bv,SW=g(()=>{IW="AWS_PROFILE",wW="default",Bv=i(t=>t.profile||process.env[IW]||wW,"getProfileName")});var uSe,dSe,Rv,bW=g(()=>{uSe=require("node:crypto"),dSe=require("node:path");hg();Rv=i(t=>{let r=(0,uSe.createHash)("sha1").update(t).digest("hex");return(0,dSe.join)(Sc(),".aws","sso","cache",`${r}.json`)},"getSSOTokenFilepath")});var pSe,nw,mSe,xW=g(()=>{pSe=require("node:fs/promises");bW();nw={},mSe=i(async t=>{if(nw[t])return nw[t];let e=Rv(t),r=await(0,pSe.readFile)(e,"utf8");return JSON.parse(r)},"getSSOTokenFromFile")});var bc,fSe=g(()=>{bc="."});var BW,ASe,hSe=g(()=>{BW=R(fc()),ASe=i(t=>Object.entries(t).filter(([e])=>{let r=e.indexOf(".");return r===-1?!1:Object.values(BW.IniSectionType).includes(e.substring(0,r))}).reduce((e,[r,n])=>{let s=r.indexOf("."),o=r.substring(0,s)===BW.IniSectionType.PROFILE?r.substring(s+1):r;return e[o]=n,e},{...t.default&&{default:t.default}}),"getConfigData")});var gSe,owt,Nv,RW=g(()=>{gSe=require("node:path");hg();owt="AWS_CONFIG_FILE",Nv=i(()=>process.env[owt]||(0,gSe.join)(Sc(),".aws","config"),"getConfigFilepath")});var ySe,iwt,ESe,CSe=g(()=>{ySe=require("node:path");hg();iwt="AWS_SHARED_CREDENTIALS_FILE",ESe=i(()=>process.env[iwt]||(0,ySe.join)(Sc(),".aws","credentials"),"getCredentialsFilepath")});var ISe,awt,cwt,sw,NW=g(()=>{ISe=R(fc()),awt=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,cwt=["__proto__","profile __proto__"],sw=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=awt.exec(c);if(l){let[,u,,d]=l;Object.values(ISe.IniSectionType).includes(u)&&(r=[u,d].join("."))}else r=c;if(cwt.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 wSe,TW,ow,_m,iw=g(()=>{wSe=require("node:fs/promises"),TW={},ow={},_m=i((t,e)=>ow[t]!==void 0?ow[t]:((!TW[t]||e?.ignoreCache)&&(TW[t]=(0,wSe.readFile)(t,"utf8")),TW[t]),"readFile")});var 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 c0e(t,e){let r=t,n=t;if($r(n))return o0e(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 a0e.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 a0e,l0e=g(()=>{a0e=require("node:stream");i0e();Ji();i(c0e,"getAwsChunkedEncodingStream")});async function u0e(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 d0e=g(()=>{i(u0e,"headStream")});var p0e,m0e,u8,f0e=g(()=>{p0e=require("node:stream");tw();d0e();Ji();m0e=i((t,e)=>$r(t)?u0e(t,e):new Promise((r,n)=>{let s=new u8;s.limit=e,t.pipe(s),t.on("error",o=>{s.end(),n(o)}),s.on("error",n),s.on("finish",function(){let o=wc(this.buffers);r(o)})}),"headStream"),u8=class extends p0e.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 A0e,h0e=g(()=>{A0e=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 d8(t){return t.arrayBuffer().then(e=>new Uint8Array(e))}async function p8(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 wc(e,n)}var g0e,m8=g(()=>{tw();Ji();g0e=i(async t=>Sd(t)?d8(t):p8(t),"streamCollector");i(d8,"collectBlob");i(p8,"collectReadableStream")});var y0e,C0e,E0e,I0e=g(()=>{i8();fW();h0e();m8();Ji();y0e="The stream has already been transformed.",C0e=i(t=>{if(!E0e(t)&&!$r(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(y0e);return e=!0,await g0e(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 tQ(o);if(s==="hex")return si(o);if(s===void 0||s==="utf8"||s==="utf-8")return A0e(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(y0e);if(e=!0,E0e(t))return n(t);if($r(t))return t;throw new Error(`Cannot transform payload to web stream, got ${t}`)},"transformToWebStream")})},"sdkStreamMixin"),E0e=i(t=>typeof Blob=="function"&&t instanceof Blob,"isBlobInstance")});var w0e,nQ,f8,A8=g(()=>{w0e=require("node:stream");tw();m8();Ji();nQ=i(t=>Sd(t)?d8(t):$r(t)?p8(t):new Promise((e,r)=>{let n=new f8,s=t;s.pipe(n),s.on("error",o=>{n.end(),r(o)}),n.on("error",r),n.on("finish",function(){let o=wc(this.bufferedBytes);e(o)})}),"streamCollector"),f8=class extends w0e.Writable{static{i(this,"Collector")}bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}}});var sQ,S0e,oQ,b0e=g(()=>{sQ=require("node:stream");Cd();I0e();A8();S0e="The stream has already been transformed.",oQ=i(t=>{if(!(t instanceof sQ.Readable))try{return C0e(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(S0e);return e=!0,await nQ(t)},"transformToByteArray");return Object.assign(t,{transformToByteArray:r,transformToString:i(async n=>{let s=await r();return n===void 0||Buffer.isEncoding(n)?Vi(s.buffer,s.byteOffset,s.byteLength).toString(n):new TextDecoder(n).decode(s)},"transformToString"),transformToWebStream:i(()=>{if(e)throw new Error(S0e);if(t.readableFlowing!==null)throw new Error("The stream has been consumed by other callbacks.");if(typeof sQ.Readable.toWeb!="function")throw new Error("Readable.toWeb() is not supported. Please ensure a polyfill is available.");return e=!0,sQ.Readable.toWeb(t)},"transformToWebStream")})},"sdkStreamMixin")});async function x0e(t){return typeof t.stream=="function"&&(t=t.stream()),t.tee()}var B0e=g(()=>{i(x0e,"splitStream")});async function R0e(t){if($r(t)||Sd(t))return x0e(t);let e=new h8.PassThrough,r=new h8.PassThrough;return t.pipe(e),t.pipe(r),[e,r]}var h8,N0e=g(()=>{h8=require("node:stream");B0e();Ji();i(R0e,"splitStream")});var bg={};Qr(bg,{ChecksumStream:()=>wg,Hash:()=>Xv,LazyJsonString:()=>Tn,NumericValue:()=>Et,Uint8ArrayBlobAdapter:()=>Lm,_parseEpochTimestamp:()=>Qm,_parseRfc3339DateTimeWithOffset:()=>mv,_parseRfc7231DateTime:()=>fv,calculateBodyLength:()=>Ic,concatBytes:()=>wc,copyDocumentWithTransform:()=>Qwe,createBufferedReadable:()=>n0e,createChecksumStream:()=>Xxe,dateToUtcString:()=>Yi,deserializerMiddleware:()=>yv,deserializerMiddlewareOption:()=>r8,expectBoolean:()=>kwe,expectByte:()=>sv,expectFloat32:()=>XI,expectInt:()=>Lwe,expectInt32:()=>rv,expectLong:()=>cg,expectNonNull:()=>Owe,expectNumber:()=>ag,expectObject:()=>oW,expectShort:()=>nv,expectString:()=>Mwe,expectUnion:()=>iv,fromArrayBuffer:()=>Vi,fromBase64:()=>wr,fromHex:()=>gv,fromString:()=>Ed,fromUtf8:()=>Hr,generateIdempotencyToken:()=>ji,getAwsChunkedEncodingStream:()=>c0e,getSerdePlugin:()=>Mxe,handleFloat:()=>Uwe,headStream:()=>m0e,isArrayBuffer:()=>ZP,isBlob:()=>Sd,isReadableStream:()=>$r,limitedParseDouble:()=>cv,limitedParseFloat:()=>qwe,limitedParseFloat32:()=>Gwe,logger:()=>lg,nv:()=>hv,parseBoolean:()=>Dwe,parseEpochTimestamp:()=>dv,parseRfc3339DateTime:()=>Vwe,parseRfc3339DateTimeWithOffset:()=>uv,parseRfc7231DateTime:()=>pg,quoteHeader:()=>pv,sdkStreamMixin:()=>oQ,serializerMiddleware:()=>Kv,serializerMiddlewareOption:()=>n8,splitEvery:()=>Av,splitHeader:()=>mg,splitStream:()=>R0e,streamCollector:()=>nQ,strictParseByte:()=>lv,strictParseDouble:()=>ZI,strictParseFloat:()=>Fwe,strictParseFloat32:()=>av,strictParseInt:()=>$we,strictParseInt32:()=>zwe,strictParseLong:()=>iW,strictParseShort:()=>Id,toBase64:()=>jt,toHex:()=>si,toUint8Array:()=>ts,toUtf8:()=>Sr,v4:()=>Sg});var T0e,Lm,Twt,Sg,ji,Te=g(()=>{T0e=require("node:crypto");Bwe();nW();Nwe();ev();Twe();vwe();_we();Ywe();Wwe();aW();Jwe();Xwe();Zwe();eSe();rSe();fW();sSe();AW();tw();Cd();rW();gW();Fxe();t8();qxe();s8();Zxe();s0e();l0e();f0e();b0e();N0e();Ji();A8();Lm=class extends Rwe(Sr,Hr,jt,wr){static{i(this,"Uint8ArrayBlobAdapter")}},Twt=T0e.getRandomValues,Sg=Pwe(Twt),ji=Sg});var Qs,iQ=g(()=>{Te();Qs=i(async(t=new Uint8Array,e)=>{if(t instanceof Uint8Array)return Lm.mutate(t);if(!t)return Lm.mutate(new Uint8Array);let r=e.streamCollector(t);return Lm.mutate(await r)},"collectBody")});function Tc(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}var aQ=g(()=>{i(Tc,"extendedEncodeURIComponent" Line truncated
`));return r(s)},"httpAuthSchemeMiddleware")});var ZBe,tu,eRe=g(()=>{UQ();ZBe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"endpointV2Middleware"},tu=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(ww(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),ZBe)},"applyToStack")}),"getHttpAuthSchemeEndpointRuleSetPlugin")});var tRe,pSt,rRe=g(()=>{UQ();tRe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"serializerMiddleware"},pSt=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(ww(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),tRe)},"applyToStack")}),"getHttpAuthSchemePlugin")});var nRe=g(()=>{UQ();eRe();rRe()});var mSt,fSt,CJ,IJ=g(()=>{xe();yt();mSt=i(t=>e=>{throw e},"defaultErrorHandler"),fSt=i((t,e)=>{},"defaultSuccessHandler"),CJ=i(t=>(e,r)=>async n=>{if(!$e.isInstance(n.request))return e(n);let o=Bt(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||mSt)(a));return(l.successHandler||fSt)(u.response,a),u},"httpSigningMiddleware")});var sRe,ru,oRe=g(()=>{IJ();sRe={step:"finalizeRequest",tags:["HTTP_SIGNING"],name:"httpSigningMiddleware",aliases:["apiKeyMiddleware","tokenMiddleware","awsAuthMiddleware"],override:!0,relation:"after",toMiddleware:"retryMiddleware"},ru=i(t=>({applyToStack:i(e=>{e.addRelativeTo(CJ(t),sRe)},"applyToStack")}),"getHttpSigningPlugin")});var iRe=g(()=>{IJ();oRe()});var Uc,aRe=g(()=>{Uc=i(t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e},"normalizeProvider")});function cRe(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 ASt(e,a.client,c,a.withCommand,...l);else throw new Error(`Invalid client, expected instance of ${t.name}`);yield m;let f=d;d=hSt(m,n),p=!!(d&&(!a.stopOnSameToken||d!==f))}return void 0},"paginateOperation")}var ASt,hSt,lRe=g(()=>{ASt=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(cRe,"createPaginator");hSt=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 gSt(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 uRe=g(()=>{i(gSt,"setFeature")});var ea,dRe=g(()=>{ea=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 wJ,SJ,pRe=g(()=>{xe();wJ=R(fc()),SJ=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===wJ.HttpApiKeyAuthLocation.QUERY)s.query[n.name]=r.apiKey;else if(n.in===wJ.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 bJ,mRe=g(()=>{xe();bJ=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 So,fRe=g(()=>{So=class{static{i(this,"NoAuthSigner")}async sign(e,r,n){return e}}});var ARe=g(()=>{pRe();mRe();fRe()});var hRe,gRe,xJ,qQ,BJ,yRe=g(()=>{hRe=i(t=>i(function(r){return qQ(r)&&r.expiration.getTime()-Date.now()<t},"isIdentityExpired"),"createIsIdentityExpiredFunction"),gRe=3e5,xJ=hRe(gRe),qQ=i(t=>t.expiration!==void 0,"doesIdentityRequireRefresh"),BJ=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 ERe=g(()=>{dRe();ARe();yRe()});var RJ={};Qr( Line truncated
${this.getCanonicalPath(e)}
${MNe(e)}
${s.map(o=>`${o}:${r[o]}`).join(`
`)}
${s.join(";")}
${n}`}async createStringToSign(e,r,n,s){let o=new this.sha256;o.update(Pw(n));let a=await o.digest();return`${s}
${e}
${r}
${Vm(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 ZQ(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=QSt(e).replace(/[\-:]/g,"");return{longDate:r,shortDate:r.slice(0,8)}}getCanonicalHeaderList(e){return Object.keys(e).sort().join(";")}},Gg={},t_=[],r_=i((t,e,r)=>`${t}/${e}/${r}/${m5}`,"createScope"),FNe=i(async(t,e,r,n,s)=>{let o=await INe(t,e.secretAccessKey,e.accessKeyId),a=`${r}:${n}:${s}:${Vm(o)}:${e.sessionToken}`;if(a in Gg)return Gg[a];for(t_.push(a);t_.length>LNe;)delete Gg[t_.shift()];let c=`AWS4${e.secretAccessKey}`;for(let l of[r,n,s,m5])c=await INe(t,c,l);return Gg[a]=c},"getSigningKey"),DSt=i(()=>{t_.length=0,Object.keys(Gg).forEach(t=>{delete Gg[t]})},"clearCredentialCache"),INe=i((t,e,r)=>{let n=new t(e);return n.update(Pw(r)),n.digest()},"hmac"),o5=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 vNe||e?.has(o)||QNe.test(o)||_Ne.test(o))&&(!r||r&&!r.has(o))||(n[o]=t[s].trim().replace(/\s+/g," "))}return n},"getCanonicalHeaders"),n_=i(async({headers:t,body:e},r)=>{for(let n of Object.keys(t))if(n.toLowerCase()===s_)return t[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||BSt(e)){let n=new r;return n.update(Pw(e)),Vm(await n.digest())}return kNe},"getPayloadHash"),UNe=i((t,e)=>{t=t.toLowerCase();for(let r of Object.keys(e))if(t===r.toLowerCase())return!0;return!1},"hasHeader"),qNe=i((t,e={})=>{let{headers:r,query:n={}}=wNe.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"),i5=i(t=>{t=wNe.clone(t);for(let e of Object.keys(t.headers))NNe.indexOf(e.toLowerCase())>-1&&delete t.headers[e];return t},"prepareRequest"),a5=class extends o_{static{i(this,"SignatureV4")}headerFormatter=new n5;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>ONe)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");let h=r_(A,m,d??this.service),E=qNe(i5(e),{unhoistableHeaders:a,hoistableHeaders:l});p.sessionToken&&(E.query[u5]=p.sessionToken),E.query[SNe]=e_,E.query[bNe]=`${p.accessKeyId}/${h}`,E.query[c5]=f,E.query[BNe]=s.toString(10);let C=o5(E,o,c);return E.query[xNe]=this.getCanonicalHeaderList(C),E.query[l5]=await this.getSignature(f,h,this.getSigningKey(p,m,A,d),this.createCanonicalRequest(E,C,await n_(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=r_(u,l,a??this.service),m=await n_({headers:{},body:r},this.sha256),f=new this.sha256;f.update(e);let A=Vm(await f.digest()),h=[DNe,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(Pw(e)),Vm(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=i5(e),{longDate:d,shortDate:p}=this.formatDate(r),m=r_(p,l,a??this.service);u.headers[p5]=d,c.sessionToken&&(u.headers[PNe]=c.sessionToken);let f=await n_(u,this.sha256);!UNe(s_,u.headers)&&this.applyChecksum&&(u.headers[s_]=f);let A=o5(u,s,n),h=await this.getSignature(d,m,this.getSigningKey(c,l,p,a),this.createCanonicalRequest(u,A,f));return u.headers[d5]=`${e_} 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,e_),a=new this.sha256(await n);return a.update(Pw(o)),Vm(await a.digest())}getSigningKey(e,r,n,s){return FNe(this.sha256,e,n,r,s||this.service)}},kSt={SignatureV4a:null};Ge.ALGORITHM_IDENTIFIER=e_;Ge.ALGORITHM_IDENTIFIER_V4A=vSt;Ge.ALGORITHM_QUERY_PARAM=SNe;Ge.ALWAYS_UNSIGNABLE_HEADERS=vNe;Ge.AMZ_DATE_HEADER=p5;Ge.AMZ_DATE_QUERY_PARAM=c5;Ge.AUTH_HEADER=d5;Ge.CREDENTIAL_QUERY_PARAM=bNe;Ge.DATE_HEADER=RNe;Ge.EVENT_ALGORITHM_IDENTIFIER=DNe;Ge.EXPIRES_QUERY_PARAM=BNe;Ge.GENERATED_HEADERS=NNe;Ge.HOST_HEADER=TSt;Ge.KEY_TYPE_IDENTIFIER=m5;Ge.MAX_CACHE_SIZE=LNe;Ge.MAX_PRESIGNED_TTL=ONe;Ge.PROXY_HEADER_PATTERN=QNe;Ge.REGION_SET_PARAM=NSt;Ge.SEC_HEADER_PATTERN=_Ne;Ge.SHA256_HEADER=s_;Ge.SIGNATURE_HEADER=TNe;Ge.SIGNATURE_QUERY_PARAM=l5;Ge.SIGNED_HEADERS_QUERY_PARAM=xNe;Ge.SignatureV4=a5;Ge.SignatureV4Base=o_;Ge.TOKEN_HEADER=PNe;Ge.TOKEN_QUERY_PARAM=u5;Ge.UNSIGNABLE_PATTERNS=PSt;Ge.UNSIGNED_PAYLOAD=kNe;Ge.clearCredentialCache=DSt;Ge.createScope=r_;Ge.getCanonicalHeaders=o5;Ge.getCanonicalQuery=MNe;Ge.getPayloadHash=n_;Ge.getSigningKey=FNe;Ge.hasHeader=UNe;Ge.moveHeadersToQuery=qNe;Ge.prepareRequest=i5;Ge.signatureV4aContainer=kSt});function OSt(t,{credentials:e,credentialDefaultProvider:r}){let n;return e?e?.memoized?n=e:n=BJ(e,xJ,qQ):r?n=Uc(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 MSt(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 A5,Yc,LSt,GNe=g(()=>{dt();ss();A5=R(f5()),Yc=i(t=>{let e=t.credentials,r=!!t.credentials,n;Object.defineProperty(t,"credentials",{set(u){u&&u!==e&&u!==n&&(r=!0),e=u;let d=OSt(t,{credentials:e,credentialDefaultProvider:t.credentialDefaultProvider}),p=MSt(t,d);if(r&&!p.attributed){let m=typeof e=="object"&&e!==null;n=i(async f=>{let h=await p(f);return m&&(!h.$source||Object.keys(h.$source).length===0)?Ad(h,"CREDENTIALS_CODE","e"):h},"resolvedCredentials"),n.memoized=p.memoized,n.configBound=p.configBound,n.attributed=!0}else n=p},get(){return n},enumerable:!0,configurable:!0}),t.credentials=e;let{signingEscapePath:s=!0,systemClockOffset:o=t.systemClockOffset||0,sha256:a}=t,c;return t.signer?c=Uc(t.signer):t.regionInfoProvider?c=i(()=>Uc(t.region)().then(async u=>[await t.regionInfoProvider(u,{useFipsEndpoint:await t.useFipsEndpoint(),useDualstackEndpoint:await t.useDualstackEndpoint()})||{},u]).then(([u,d])=>{let{signingRegion:p,signingService:m}=u;t.signingRegion=t.signingRegion||p||d,t.signingName=t.signingName||m||t.serviceId;let f={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:a,uriEscapePath:s},A=t.signerConstructor||A5.SignatureV4;return new A(f)}),"signer"):c=i(async u=>{u=Object.assign({},{name:"sigv4",signingName:t.signingName||t.defaultSigningName,signingRegion:await Uc(t.region)(),properties:{}},u);let d=u.signingRegion,p=u.signingName;t.signingRegion=t.signingRegion||d,t.signingName=t.signingName||p||t.serviceId;let m={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:a,uriEscapePath:s},f=t.signerConstructor||A5.SignatureV4;return new f(m)},"signer"),Object.assign(t,{systemClockOffset:o,signingEscapePath:s,signer:c})},"resolveAwsSdkSigV4Config"),LSt=Yc;i(OSt,"normalizeCred Line truncated
For more information, please visit: `+ibt);let s=t.originalExpiration??t.expiration;return{...t,...s?{originalExpiration:s}:{},expiration:n}},"getExtendedInstanceMetadataCredentials"),abt=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=jNe(s,r))}catch(o){if(n)r.warn("Credential renew failed: ",o),s=jNe(n,r);else throw o}return n=s,s}},"staticStabilityProvider"),sTe="/latest/meta-data/iam/security-credentials/",cbt="/latest/api/token",y5="AWS_EC2_METADATA_V1_DISABLED",KNe="ec2_metadata_v1_disabled",XNe="x-aws-ec2-metadata-token",lbt=i((t={})=>abt(ubt(t),{logger:t.logger}),"fromInstanceMetadata"),ubt=i((t={})=>{let e=!1,{logger:r,profile:n}=t,{timeout:s,maxRetries:o}=S5(t),a=i(async(c,l)=>{if(e||l.headers?.[XNe]==null){let p=!1,m=!1,f=await w5({environmentVariableSelector:i(A=>{let h=A[y5];if(m=!!h&&h!=="false",h===void 0)throw new kd(`${y5} not set in env, checking config file next.`,{logger:t.logger});return m},"environmentVariableSelector"),configFileSelector:i(A=>{let h=A[KNe];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 (${KNe})`),m&&A.push(`process environment variable (${y5})`),new I5(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${A.join(", ")}].`)}}let d=(await E5(async()=>{let p;try{p=await pbt(l)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)).trim();return E5(async()=>{let p;try{p=await mbt(d,l,t)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)},"getCredentials");return async()=>{let c=await nTe();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 dbt({...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:{[XNe]:l},timeout:s})}}},"getInstanceMetadataProvider"),dbt=i(async t=>_w({...t,path:cbt,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),"getMetadataToken"),pbt=i(async t=>(await _w({...t,path:sTe})).toString(),"getProfile"),mbt=i(async(t,e,r)=>{let n=JSON.parse((await _w({...e,path:sTe+t})).toString());if(!ZNe(n))throw new kd("Invalid response received from instance metadata service.",{logger:r.logger});return eTe(n)},"getCredentialsFromProfile");ui.DEFAULT_MAX_RETRIES=rTe;ui.DEFAULT_TIMEOUT=tTe;ui.ENV_CMDS_AUTH_TOKEN=C5;ui.ENV_CMDS_FULL_URI=vw;ui.ENV_CMDS_RELATIVE_URI=a_;ui.Endpoint=Qw;ui.fromContainerMetadata=$St;ui.fromInstanceMetadata=lbt;ui.getInstanceMetadataEndpoint=nTe;ui.httpRequest=_w;ui.providerConfigFromInit=S5});var su=I(kw=>{var{buildQueryString:uTe,HttpResponse:dTe}=(xe(),re(Nd)),l_=require("node:https"),{Readable:fbt}=require("node:stream"),b5=require("node:http2"),{streamCollector:Abt}=(Te(),re(bg));kw.streamCollector=Abt;function d_(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(d_,"buildAbortError");var hbt=["ECONNRESET","EPIPE","ETIMEDOUT"],pTe=i(t=>{let e={};for(let r in t){let n=t[r];e[r]=Array.isArray(n)?n.join(","):n}return e},"getTransformedHeaders"),hn={setTimeout:i((t,e)=>setTimeout(t,e),"setTimeout"),clearTimeout:i(t=>clearTimeout(t),"clearTimeout")},oTe=1e3,gbt=i((t,e,r=0)=>{if(!r)return-1;let n=i(s=>{let o=hn.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",()=>{hn.clearTimeout(o)}):hn.clearTimeout(o)},"doWithSocket");t.socket?a(t.socket):t.on("socket",a)},"registerTimeout");return r<2e3?(n(0),0):hn.setTimeout(n.bind(null,oTe),oTe)},"setConnectionTimeout"),ybt=i((t,e,r=0,n,s)=>r?hn.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"),Ebt=3e3,Cbt=i((t,{keepAlive:e,keepAliveMsecs:r},n=Ebt)=>{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):hn.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(()=>{hn.clearTimeout(u),hn.clearTimeout(d),hn.clearTimeout(p),hn.clearTimeout(m),hn.clearTimeout(f)},"clearTimeouts"),h=i(async K=>{await l,A(),a(K)},"resolve"),E=i(async K=>{await l,A(),c(K)},"reject");if(r?.aborted){let K=d_(r);E(K);return}let C=e.headers,w=C?(C.Expect??C.expect)==="100-continue":!1,b=o?s.httpsAgent:s.httpAgent;w&&!this.externalAgent&&(b=new(o?l_.Agent:u_)({keepAlive:!1,maxSockets:1/0})),u=hn.setTimeout(()=>{this.socketWarningTimestamp=t.checkSocketUsage(b,this.socketWarningTimestamp,s.logger)},s.socketAcquisitionWarningTimeout??(s.requestTimeout??2e3)+(s.connectionTimeout??1e3));let x=e.query?uTe(e.query):"",T;if(e.username!=null||e.password!=null){let K=e.username??"",U=e.password??"";T=`${K}:${U}`}let P=e.path;x&&(P+=`?${x}`),e.fragment&&(P+=`#${e.fragment}`);let _=e.hostname??"";_[0]==="["&&_.endsWith("]")?_=e.hostname.slice(1,-1):_=e.hostname;let ee={headers:e.headers,host:_,method:e.method,path:P,port:e.port,agent:b,auth:T},ae=(o?l_.request:cTe)(ee,K=>{let U=new dTe({statusCode:K.statusCode||-1,reason:K.statusMessage,headers:pTe(K.headers),body:K});h({response:U})});if(ae.on("error",K=>{hbt.includes(K.code)?E(Object.assign(K,{name:"TimeoutError"})):E(K)}),r){let K=i(()=>{ae.destroy();let U=d_(r);E(U)},"onAbort");if(typeof r.addEventListener=="function"){let U=r;U.addEventListener("abort",K,{once:!0}),ae.once("close",()=>U.removeEventListener("abort",K))}else r.onabort=K}let qe=n??s.requestTimeout;d=gbt(ae,E,s.connectionTimeout),p=ybt(ae,E,qe,s.throwOnRequestTimeout,s.logger??console),m=Ibt(ae,E,s.socketTimeout);let ie=ee.agent;typeof ie=="object"&&"keepAlive"in ie&&(f=Cbt(ae,{keepAlive:ie.keepAlive,keepAliveMsecs:ie.keepAliveMsecs})),l=mTe(ae,e,qe,this.externalAgent).catch(K=>(A(),c(K)))})}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 cTe=A,u_=f,a instanceof u_||typeof a?.destroy=="function"?(this.externalAgent=!0,a):new u_({keepAlive:d,maxSockets:p,...a})},"httpAgentProvider"),httpsAgent:c instanceof l_.Agent||typeof c?.destroy=="function"?(this.externalAgent=!0,c):new l_.Agent({keepAlive:d,maxSockets:p,...c}),logger:u}}},bbt=new Uint16Array(1),Dw=class{static{i(this,"ClientHttp2SessionRef")}id=bbt[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}},B5=class{static{i(this,"NodeHttp2ConnectionPool")}sessions=[];maxConcurrency=0;constructor(e){this.sessions=(e??[]).map(r=>new Dw(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()}},R5=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 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 kbt(t){return new Nbt({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(kbt,"createGetRequest");async function Lbt(t,e){let n=await Tbt(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 $g("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:Pbt(s.Expiration)}}if(t.statusCode>=400&&t.statusCode<500){let s={};try{s=JSON.parse(n)}catch{}throw Object.assign(new $g(`Server responded with status: ${t.statusCode}`,{logger:e}),{Code:s.Code,Message:s.Message})}throw new $g(`Server responded with status: ${t.statusCode}`,{logger:e})}i(Lbt,"getCredentials");var Obt=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"),Mbt="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",Fbt="http://169.254.170.2",Ubt="AWS_CONTAINER_CREDENTIALS_FULL_URI",qbt="AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE",Gbt="AWS_CONTAINER_AUTHORIZATION_TOKEN",Hbt=i((t={})=>{t.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");let e,r=t.awsContainerCredentialsRelativeUri??process.env[Mbt],n=t.awsContainerCredentialsFullUri??process.env[Ubt],s=t.awsContainerAuthorizationToken??process.env[Gbt],o=t.awsContainerAuthorizationTokenFile??process.env[qbt],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("awsContainerCredentialsFullUri will take precedence.")),s&&o&&(a("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),a("awsContainerAuthorizationToken will take precedence.")),n)e=n;else if(r)e=`${Fbt}${r}`;else throw new $g(`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=Bbt.create({connectionTimeout:t.timeout??1e3}),u=t.timeout??1e3,d=Obt(async()=>{let p=kbt(c);s?p.headers.Authorization=s:o&&(p.headers.Authorization=(await Rbt.readFile(o)).toString());try{let m=await l.handle(p,{requestTimeout:u});return Lbt(m.response).then(f=>xbt(f,"CREDENTIALS_HTTP","z"))}catch(m){throw new $g(String(m),{logger:t.logger})}},t.maxRetries??3,t.timeout??1e3);return async()=>{try{return await d()}finally{l.destroy?.()}}},"fromHttp");fTe.fromHttp=Hbt});function $bt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sso-oauth",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function zbt(t){return{schemeId:"smithy.api#noAuth"}}var ATe,hTe,gTe,P5=g(()=>{vn();Pe();ATe=i(async(t,e,r)=>({operation:Bt(e).operation,region:await At(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSSOOIDCHttpAuthSchemeParametersProvider");i($bt,"createAwsAuthSigv4HttpAuthOption");i(zbt,"createSmithyApiNoAuthHttpAuthOption");hTe=i(t=>{let e=[];return t.operation==="CreateToken"?e.push(zbt(t)):e.push($bt(t)),e},"defaultSSOOIDCHttpAuthSchemeProvider"),gTe=i(t=>{let e=Yc(t);return Object.assign(e,{authSchemePreference:At(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var yTe,ETe,v5=g(()=>{yTe=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"sso-oauth"}),"resolveClientEndpointParameters"),ETe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var Ld,Lw=g(()=>{Ld={name:"@aws-sdk/nested-clients",version:"3.997.25",description:"Nested clients for AWS SDK packages.",main:"./dist-cjs/index.js",module:"./dist-es/index.js",types:"./dist-types/index.d.ts",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"},engines:{node:">=20.0.0"},sideEffects:!1,author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/sdk-for-javascript/"},license:"Apache-2.0",dependencies:{"@aws-sdk/core":"^3.974.25","@aws-sdk/signature-v4-multi-region":"^3.996.37","@aws-sdk/types":"^3.973.14","@smithy/core":"^3.28.0","@smithy/fetch-http-handler":"^5.6.1","@smithy/node-http-handler":"^4.9.1","@smithy/types":"^4.15.0",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},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-*/**"],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"},"react-native":{},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},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. 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=Object.create(null);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(),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,Object.setPrototypeOf(s,Object.prototype),{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=Object.create(null);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 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))u[d]=p;return Object.setPrototypeOf(u,Object.prototype),{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]??"")}};T_.XmlNode=ij;T_.XmlText=N_;T_.parseXML=wxt});var zTe,Xm,v_=g(()=>{zTe=R(P_());Pe();xe();rt();Te();Fd();K5();Xm=class extends Qn{static{i(this,"XmlShapeDeserializer")}settings;stringDeserializer;constructor(e){super(),this.settings=e,this.stringDeserializer=new Gm(e)}setSerdeContext(e){this.serdeContext=e,this.stringDeserializer.setSerdeContext(e)}read(e,r,n){let s=te.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??Sr)(r),l=this.parseXml(c);return this.readSchema(e,n?l[n]:l)}readSchema(e,r){let n=te.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];a[f]=this.readSchema(l,A)}return a}if(n.isStructSchema()){let c=n.isUnionSchema(),l;c&&(l=new Jg(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,zTe.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]),vm(o)}return{}}}});var Yw,cj=g(()=>{xe();rt();Te();Te();Fd();Yw=class extends Qn{static{i(this,"QueryShapeSerializer")}settings;buffer;constructor(e){super(),this.settings=e}write(e,r,n=""){this.buffer===void 0&&(this.buffer="");let s=te.of(e);if(n&&!n.endsWith(".")&&(n+="."),s.isBlobSchema())(typeof r=="string"||r instanceof Uint8Array)&&(this.writeKey(n),this.writeValue((this.serdeContext?.base64Encoder??jt)(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(ji()));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 Et?r.string:String(r)));else if(s.isTimestampSchema()){if(r instanceof Date)switch(this.writeKey(n),Io(s,this.settings)){case 5:this.writeValue(r.toISOString().replace(".000Z","Z"));break;case 6:this.writeValue(Yi(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.ec2QueryName),E=c?`${n}${l}.${h}`:`${nLine truncated
Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:e});return t},"validateSsoProfile"),gBt=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=mBt({profile:t.profile??e?.profile});if(!r&&!n&&!s&&!o&&!a){let d=(await fBt(t))[l];if(!d)throw new la(`Profile ${l} was not found.`,{logger:t.logger});if(!Pve(d))throw new la(`Profile ${l} is not configured with SSO credentials.`,{logger:t.logger});if(d?.sso_session){let C=(await ABt(t))[d.sso_session],w=` configurations in profile ${l} and sso-session ${d.sso_session}`;if(s&&s!==C.sso_region)throw new la("Conflicting SSO region"+w,{tryNextLink:!1,logger:t.logger});if(r&&r!==C.sso_start_url)throw new la("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}=vve(d,t.logger);return Tve({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 la('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:t.logger});return Tve({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");W_.fromSSO=gBt;W_.isSsoProfile=Pve;W_.validateSsoProfile=vve});function yBt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"signin",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function EBt(t){return{schemeId:"smithy.api#noAuth"}}var Qve,_ve,Dve,Mj=g(()=>{vn();Pe();Qve=i(async(t,e,r)=>({operation:Bt(e).operation,region:await At(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSigninHttpAuthSchemeParametersProvider");i(yBt,"createAwsAuthSigv4HttpAuthOption");i(EBt,"createSmithyApiNoAuthHttpAuthOption");_ve=i(t=>{let e=[];return t.operation==="CreateOAuth2Token"?e.push(EBt(t)):e.push(yBt(t)),e},"defaultSigninHttpAuthSchemeProvider"),Dve=i(t=>{let e=Yc(t);return Object.assign(e,{authSchemePreference:At(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var kve,Lve,Fj=g(()=>{kve=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"signin"}),"resolveClientEndpointParameters"),Lve={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var of,sf,CS,Ove,IS,Gj,cu,qj,Mve,Fve,Ud,Uve,Hve,Uj,_n,qve,Gve,CBt,pt,IBt,$ve,zve=g(()=>{It();of="ref",sf=-1,CS=!0,Ove="isSet",IS="booleanEquals",Gj="PartitionResult",cu="stringEquals",qj="getAttr",Mve="https://signin.{Region}.{PartitionResult#dualStackDnsSuffix}",Fve={[of]:"Endpoint"},Ud={fn:qj,argv:[{[of]:Gj},"name"]},Uve={[of]:Gj},Hve={[of]:"Region"},Uj={authSchemes:[{name:"sigv4",signingName:"signin",signingRegion:"{Region}"}]},_n={},qve=[Hve],Gve={conditions:[[Ove,qve],[IS,[{fn:"coalesce",argv:[{[of]:"IsControlPlane"},!1]},CS]],[Ove,[Fve]],["aws.partition",qve,Gj],[IS,[{[of]:"UseFIPS"},CS]],[IS,[{[of]:"UseDualStack"},CS]],[cu,[Ud,"aws"]],[cu,[Ud,"aws-cn"]],[IS,[{fn:qj,argv:[Uve,"supportsDualStack"]},CS]],[cu,[Hve,"us-gov-west-1"]],[cu,[Ud,"aws-us-gov"]],[IS,[{fn:qj,argv:[Uve,"supportsFIPS"]},CS]],[cu,[Ud,"aws-iso"]],[cu,[Ud,"aws-iso-b"]],[cu,[Ud,"aws-iso-f"]],[cu,[Ud,"aws-iso-e"]],[cu,[Ud,"aws-eusc"]]],results:[[sf],["https://signin.{Region}.api.aws",Uj],["https://signin.{Region}.api.amazonwebservices.com.cn",Uj],[Mve,Uj],["https://{Region}.signin.aws.amazon.com",_n],["https://{Region}.signin.amazonaws.cn",_n],["https://{Region}.signin.amazonaws-us-gov.com",_n],["https://{Region}.signin.c2shome.ic.gov",_n],["https://{Region}.signin.sc2shome.sgov.gov",_n],["https://{Region}.signin.csphome.hci.ic.gov",_n],["https://{Region}.signin.csphome.adc-e.uk",_n],["https://{Region}.signin.amazonaws-eusc.eu",_n],["https://signin-fips.amazonaws-us-gov.com",_n],["https://{Region}.signin-fips.amazonaws-us-gov.com",_n],["https://{Region}.signin.{PartitionResult#dnsSuffix}",_n],[sf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[sf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[Fve,_n],["https://signin-fips 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.
`),cDe=!0)),new mD("AWS_PROFILE is set, skipping fromEnv provider.",{logger:t.logger,tryNextLink:!0});return t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),ONt(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 mD("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:t.logger});let{fromSSO:c}=Oj();return c(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:r}=iDe();return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:r}=y6();return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:r}=C6();return r(t)(e)},async()=>(t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await UNt(t))()),async()=>{throw new mD("Could not load credentials from any providers",{tryNextLink:!1,logger:t.logger})}],lDe),"defaultProvider"),$Nt=i(t=>t?.expiration!==void 0,"credentialsWillNeedRefresh"),lDe=i(t=>t?.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5,"credentialsTreatedAsExpired");fD.credentialsTreatedAsExpired=lDe;fD.credentialsWillNeedRefresh=$Nt;fD.defaultProvider=HNt});var o1e=I(y=>{var{awsEndpointFunctions:zNt,emitWarningIfUnsupportedVersion:VNt,createDefaultUserAgentProvider:YNt,NODE_APP_ID_CONFIG_OPTIONS:WNt,getAwsRegionExtensionConfiguration:JNt,resolveAwsRegionExtensionConfiguration:jNt,resolveUserAgentConfig:KNt,resolveHostHeaderConfig:XNt,getUserAgentPlugin:ZNt,getHostHeaderPlugin:eTt,getLoggerPlugin:tTt,getRecursionDetectionPlugin:rTt}=(dt(),re(na)),{getHttpAuthSchemeEndpointRuleSetPlugin:nTt,DefaultIdentityProviderConfig:sTt,getHttpSigningPlugin:oTt,createPaginator:yf}=(ss(),re(RJ)),{normalizeProvider:ADe,getSmithyContext:iTt,ServiceException:aTt,NoOpLogger:cTt,emitWarningIfUnsupportedVersion:lTt,loadConfigsForDefaultMode:uTt,getDefaultExtensionConfiguration:dTt,resolveDefaultRuntimeConfig:pTt,Client:hDe,Command:ne,createWaiter:cL,checkExceptions:gDe,WaiterState:ey,createAggregatedClient:mTt}=(Pe(),re(XP));y.$Command=ne;y.__Client=hDe;var{resolveDefaultsModeConfig:fTt,loadConfig:Af,NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS:ATt,NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS:hTt,NODE_REGION_CONFIG_OPTIONS:gTt,NODE_REGION_CONFIG_FILE_OPTIONS:yTt,resolveRegionConfig:ETt}=(Ct(),re(Eo)),{BinaryDecisionDiagram:CTt,EndpointCache:ITt,decideEndpoint:wTt,customEndpointFunctions:STt,resolveEndpointConfig:bTt,getEndpointPlugin:se}=(It(),re(e8)),{parseUrl:xTt,getHttpHandlerExtensionConfiguration:BTt,resolveHttpHandlerRuntimeConfig:RTt,getContentLengthPlugin:NTt}=(xe(),re(Nd)),{DEFAULT_RETRY_MODE:TTt,NODE_RETRY_MODE_CONFIG_OPTIONS:PTt,NODE_MAX_ATTEMPT_CONFIG_OPTIONS:vTt,resolveRetryConfig:QTt,getRetryPlugin:_Tt}=(wo(),re(cJ)),{TypeRegistry:yDe,getSchemaSerdePlugin:DTt}=(rt(),re(YY)),{resolveAwsSdkSigV4Config:kTt,AwsSdkSigV4Signer:LTt,NODE_AUTH_SCHEME_PREFERENCE_OPTIONS:OTt}=(vn(),re(i_)),{defaultProvider:MTt}=w6(),{toUtf8:FTt,fromUtf8:UTt,toBase64:qTt,fromBase64:GTt,calculateBodyLength:HTt}=(Te(),re(bg)),{streamCollector:$Tt,NodeHttpHandler:zTt}=su(),{AwsJson1_1Protocol:VTt}=(ef(),re(hj)),{Sha256:YTt}=(Xl(),re(x8)),WTt=i(async(t,e,r)=>({operation:iTt(e).operation,region:await ADe(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultECRHttpAuthSchemeParametersProvider");function JTt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}i(JTt,"createAwsAuthSigv4HttpAuthOption");var jTt=i(t=>{let e=[];switch(t.operation){default:e.push(JTt(t))}return e},"defaultECRHttpAuthSchemeProvider"),KTt=i(t=>{let e=kTt(t);return Object.assign(e,{authSchemePreference:ADe(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig"),XTt=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr"}),"resolveClientEndpointParameters"),oe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},ZTt="3.1076.0",ePt={version:ZTt},ty="ref",hf=-1,AD=!0,uDe="isSet",b6="PartitionResult",zd="stringEquals",hD="booleanEquals",S6="getAttr",dDe={[ty]:"Endpoint"},Vd={fn:S6,argv:[{[ty]:b6},"name"]},pDe={[ty]:b6},gf={},mDe=[{[ty]:"Region"}],fDe={conditions:[[uDe,[dDe]],[uDe,mDe],["aws.partition",mDe,b6],[zd,[Vd,"aws-eusc"]],[zd,[Vd,"aws-iso-f"]],[zd,[Vd,"aws-iso-e"]],[zd,[Vd,"aws-iso-b"]],[zd,[Vd,"aws-iso"]],[zd,[Vd,"aws-cn"]],[zd,[Vd,"aws-us-gov"]],[zd,[Vd,"aws"]],[hD,[{[ty]:"UseFIPS"},AD]],[hD,[{fn:S6,argv:[pDe Line truncated
Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}i(fse,"getBooleanInput");function Ase(t){process.exitCode=yU.Failure,BA(t)}i(Ase,"setFailed");function Np(){return process.env.RUNNER_DEBUG==="1"}i(Np,"isDebug");function v(t){Xd("debug",{},t)}i(v,"debug");function BA(t,e={}){Xd("error",vO(e),t instanceof Error?t.toString():t)}i(BA,"error");function Yt(t,e={}){Xd("warning",vO(e),t instanceof Error?t.toString():t)}i(Yt,"warning");function Qe(t){process.stdout.write(t+mse.EOL)}i(Qe,"info");function Gje(t){_O("group",t)}i(Gje,"startGroup");function Hje(){_O("endgroup")}i(Hje,"endGroup");function SE(t,e){return qje(this,void 0,void 0,function*(){Gje(t);let r;try{r=yield e()}finally{Hje()}return r})}i(SE,"group");function Tp(t,e){if(process.env.GITHUB_STATE||"")return p9("STATE",m9(t,e));Xd("save-state",{name:t},mu(e))}i(Tp,"saveState");function hse(t){return process.env[`STATE_${t}`]||""}i(hse,"getState");var uT=R(require("fs"),1),CV=R(require("os"),1),IV=R(require("path"),1);var yse=R(require("os"),1);function bE(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}i(bE,"toCommandValue");function Ese(t,e,r){let n=new EU(t,e,r);process.stdout.write(n.toString()+yse.EOL)}i(Ese,"issueCommand");var gse="::",EU=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=gse+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}=${zje(s)}`)}}return e+=`${gse}${$je(this.message)}`,e}};function $je(t){return bE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}i($je,"escapeData");function zje(t){return bE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}i(zje,"escapeProperty");var Ise=require("os"),xE=require("fs");var CU=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:Vje,appendFile:Yje,writeFile:Wje}=xE.promises,Cse="GITHUB_STEP_SUMMARY";var IU=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return CU(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[Cse];if(!e)throw new Error(`Unable to find environment variable for $${Cse}. Check if your runtime environment supports job summaries.`);try{yield Vje(e,xE.constants.R_OK|xE.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 CU(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?Wje:Yje)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return CU(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(Ise.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()}},v3t=new IU;var wU=R(require("os"),1);var L3t=wU.default.platform(),O3t=wU.default.arcLine 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 ME(o));return n.searchPaths.push(...KU(n.patterns)),n})}static stat(e,r,n){return r2(this,void 0,void 0,function*(){let s;if(r.followSymbolicLinks)try{s=yield QA.promises.stat(e.path)}catch(o){if(o.code==="ENOENT"){if(r.omitBrokenSymbolicLinks){Do(`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 QA.promises.lstat(e.path);if(s.isDirectory()&&r.followSymbolicLinks){let o=yield QA.promises.realpath(e.path);for(;n.length>=e.level;)n.pop();if(n.some(a=>a===o)){Do(`Symlink cycle detected for path '${e.path}' and realpath '${o}'`);return}n.push(o)}return s})}};var QXe=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 Wie(t,e){return QXe(this,void 0,void 0,function*(){return yield R0.create(t,e)})}i(Wie,"create");var H0=R(require("crypto"),1),LA=R(require("fs"),1),Dp=R(require("path"),1),qce=R(Fce(),1),Gce=R(require("util"),1);var zE;(function(t){t.Gzip="cache.tgz",t.Zstd="cache.tzst"})(zE||(zE={}));var Gn;(function(t){t.Gzip="gzip",t.ZstdWithoutLong="zstd-without-long",t.Zstd="zstd"})(Gn||(Gn={}));var Xs;(function(t){t.GNU="gnu",t.BSD="bsd"})(Xs||(Xs={}));var q0=2,G0=5e3,S2=5e3,b2=`${process.env.PROGRAMFILES}\\Git\\usr\\bin\\tar.exe`,Uce=`${process.env.SYSTEMDRIVE}\\Windows\\System32\\tar.exe`,VE="cache.tar",x2="manifest.txt",$8t=10*Math.pow(1024,3);var kA=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())})},qet=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)}},Get="1.0";function YE(){return kA(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=Dp.join(n,"actions","temp")}let r=Dp.join(e,H0.randomUUID());return yield Rp(r),r})}i(YE,"createTempDirectory");function Na(t){return LA.statSync(t).size}i(Na,"getArchiveFileSizeInBytes");function B2(t){return kA(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 Wie(t.join(`
`),{implicitDescendants:!1});try{for(var u=!0,d=qet(l.globGenerator()),p;p=yield d.next(),e=p.done,!e;u=!0){s=p.value,u=!1;let f=Dp.relative(c,s).replace(new RegExp(`\\${Dp.sep}`,"g"),"/");v(`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(B2,"resolvePaths");function WE(t){return kA(this,void 0,void 0,function*(){return Gce.promisify(LA.unlink)(t)})}i(WE,"unlinkFile");function Hce(t){return kA(this,arguments,void 0,function*(e,r=[]){let n="";r.push("--version"),v(`Checking ${e} ${r.join(" ")}`);try{yield _u(`${e}`,r,{ignoreReturnCode:!0,silent:!0,listeners:{stdout:i(s=>n+=s.toString(),"stdout"),stderr:i(s=>n+=s.toString(),"stderr")}})}catch(s){v(s.message)}return n=n.trim(),v(n),n})}i(Hce,"getVersion");function JE(){return kA(this,void 0,void 0,function*(){let t=yield Hce("zstd",["--quiet"]),e=qce.clean(t);return v(`zstd version: ${e}`),t===""?Gn.Gzip:Gn.ZstdWithoutLong})}i(JE,"getCompressionMethod");function qu(t){return t===Gn.Gzip?zE.Gzip:zE.Zstd}i(qu,"getCacheFileName");function $ce(){return kA(this,void 0,void 0,function*(){return LA.existsSync(b2)?b2:(yield Hce("tar")).toLowerCase().includes("gnu tar")?ps("tar"):""})}i($ce,"getGnuTarPathOnWindows");function R2(t,e){if(e===void 0)throw Error(`Expected ${t} but value was undefiend`);return e}i(R2,"assertDefined");function OA(t,e,r=!1){let n=t.slice();return e&&n.push(e),process.platform==="win32"&&!r&&n.push("windows-only"),n.push(Get),H0.createHash("sha256").update(n.join("|")).digest("hex")}i(OA,"getCacheVersion");function zce(){let t=process.env.ACTIONS_RUNTIME_TOKEN;if(!t)throw new Error("Unable to get the ACTIONS_RUNTIME_TOKEN env variable");return t}i(zce,"getRuntimeToken");var KE=R(require("http"),1),P2=R(require("https"),1);function N2(t){let e=t.protocol==="https:";if(Het(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 z0(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new z0(`http://${r}`)}else return}i(N2,"getProxyUrl");function Het(t){if(!t.hostname)return!1;let e=t.hostname;if($et(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(Het,"checkBypass");function $et(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($et,"isLoopbackAddress");var z0=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 Gu=R(gy(),1),Vce=R(SA(),1);var mr=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())})},rr;(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"})(rr||(rr={}));var Hn;(function(t){t.Accept="accept",t.ContentType="content-type"})(Hn||(Hn={}));var yl;(function(t){t.ApplicationJson="application/json"})(yl||(yl={}));var Vet=[rr.MovedPermanently,rr.ResourceMoved,rr.SeeOther,rr.TemporaryRedirect,rr.PermanentRedirect],Yet=[rr.BadGateway,rr.ServiceUnavailable,rr.GatewayTimeout],Wet=["OPTIONS","GET","DELETE","HEAD"],Jet=10,jet=5,Ta=class t extends Error{static{i(this,"HttpClientError")}const Line truncated
${ott.sanitize({...this,request:{...this.request,agent:n},response:this.response})}`,"value"),enumerable:!1}),Object.setPrototypeOf(this,t.prototype)}};function K0(t){return t instanceof $n?!0:Lp(t)&&t.name==="RestError"}i(K0,"isRestError");function fs(t,e){return Buffer.from(t,e)}i(fs,"stringToUint8Array");var X0=R(require("node:http"),1),Z0=R(require("node:https"),1),U2=R(require("node:zlib"),1),ule=require("node:stream");var Oo=XE("ts-http-runtime");var itt={};function ZE(t){return t&&typeof t.pipe=="function"}i(ZE,"isReadableStream");function lle(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(lle,"isStreamComplete");function dle(t){return t&&typeof t.byteLength=="number"}i(dle,"isArrayBuffer");var eB=class extends ule.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}},q2=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 Pa("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 Pi;Oo.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=utt(c);u!==null&&e.headers.set("Content-Length",u)}let l;try{if(c&&e.onUploadProgress){let A=e.onUploadProgress,h=new eB(A);h.on("error",E=>{Oo.error("Error in upload progress",E)}),ZE(c)?c.pipe(h):h.end(c),c=h}let u=await this.makeRequest(e,r,c);s!==void 0&&clearTimeout(s);let d=att(u),m={status:u.statusCode??0,headers:d,request:e};if(e.method==="HEAD")return u.resume(),m;l=a?ctt(u,d):u;let f=e.onDownloadProgress;if(f){let A=new eB(f);A.on("error",h=>{Oo.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 ltt(l),m}finally{if(e.abortSignal&&n){let u=Promise.resolve();ZE(c)&&(u=lle(c));let d=Promise.resolve();ZE(l)&&(d=lle(l)),Promise.all([u,d]).then(()=>{n&&e.abortSignal?.removeEventListener("abort",n)}).catch(p=>{Oo.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?X0.default.request(c,l):Z0.default.request(c,l);d.once("error",p=>{u(new $n(p.message,{code:p.code??$n.REQUEST_SEND_ERROR,request:e}))}),r.signal.addEventListener("abort",()=>{let p=new Pa("The operation was aborted. Rejecting from abort signal callback while making request.");d.destroy(p),u(p)}),n&&ZE(n)?n.pipe(d):n?typeof n=="string"||Buffer.isBuffer(n)?d.end(n):dle(n)?d.end(ArrayBuffer.isView(n)?Buffer.from(n.buffer):Buffer.from(n)):(Oo.error("Unrecognized body type",n),u(new $n("Unrecognized body type"))):d.end()})}getOrCreateAgent(e,r){let n=e.disableKeepAlive;if(r)return n?X0.default.globalAgent:(this.cachedHttpAgent||(this.cachedHttpAgent=new X0.default.Agent({keepAlive:!0})),this.cachedHttpAgent);{if(n&&!e.tlsSettings)return Z0.default.globalAgent;let s=e.tlsSettings??itt,o=this.cachedHttpsAgents.get(s);return o&&o.options.keepAlive===!n||(Oo.info("No cached TLS Agent exist, creating a new Agent"),o=new Z0.default.Agent({keepAlive:!n,...s}),this.cachedHttpsAgents.set(s,o)),o}}};function att(t){let e=Zs();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(att,"getResponseHeaders");function ctt(t,e){let r=e.get("Content-Encoding");if(r==="gzip"){let n=U2.default.createGunzip();return t.pipe(n),n}else if(r==="deflate"){let n=U2.default.createInflate();return t.pipe(n),n}return t}i(ctt,"getDecodedResponseStream");function ltt(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 $n(`Error reading response as text: ${s.message}`,{code:$n.PARSE_ERROR}))})})}i(ltt,"streamToText");function utt(t){return t?Buffer.isBuffer(t)?t.length: Line truncated
`;return e}i(Urt,"encodeHeaders");function qrt(t){return t instanceof Uint8Array?t.byteLength:SB(t)?t.size===-1?void 0:t.size:void 0}i(qrt,"getLength");function Grt(t){let e=0;for(let r of t){let n=qrt(r);if(n===void 0)return;e+=n}return e}i(Grt,"getTotalLength");async function Hrt(t,e,r){let n=[fs(`--${r}`,"utf-8"),...e.flatMap(o=>[fs(`\r
`,"utf-8"),fs(Urt(o.headers),"utf-8"),fs(`\r
`,"utf-8"),o.body,fs(`\r
--${r}`,"utf-8")]),fs(`--\r
\r
`,"utf-8")],s=Grt(n);s&&t.headers.set("Content-Length",s),t.body=await Aue(n)}i(Hrt,"buildRequestBody");var rC="multipartPolicy",$rt=70,zrt=new Set("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'()+,-./:=?");function Vrt(t){if(t.length>$rt)throw new Error(`Multipart boundary "${t}" exceeds maximum length of 70 characters`);if(Array.from(t).some(e=>!zrt.has(e)))throw new Error(`Multipart boundary "${t}" contains invalid characters`)}i(Vrt,"assertValidBoundary");function xB(){return{name:rC,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?Vrt(r):r=Frt(),t.headers.set("Content-Type",`${o}; boundary=${r}`),await Hrt(t,t.multipartBody.parts,r),t.multipartBody=void 0,e(t)}}}i(xB,"multipartPolicy");function BB(){return j0()}i(BB,"createEmptyPipeline");var hue=Y0({logLevelEnvVarName:"AZURE_LOG_LEVEL",namespace:"azure"}),G9t=hue.logger;function _a(t){return hue.createClientLogger(t)}i(_a,"createClientLogger");var Da=_a("core-rest-pipeline");function oq(t={}){return rB({logger:Da.info,...t})}i(oq,"logPolicy");var iq=nB;function aq(t={}){return sB(t)}i(aq,"redirectPolicy");var RB=R(require("node:os"),1),NB=R(require("node:process"),1);function gue(){return"User-Agent"}i(gue,"getHeaderName");async function yue(t){if(NB.default&&NB.default.versions){let e=`${RB.default.type()} ${RB.default.release()}; ${RB.default.arch()}`,r=NB.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(yue,"setPlatformSpecificData");var TB="1.22.2";function ent(t){let e=[];for(let[r,n]of t){let s=n?`${r}/${n}`:r;e.push(s)}return e.join(" ")}i(ent,"getUserAgentString");function Eue(){return gue()}i(Eue,"getUserAgentHeaderName");async function PB(t){let e=new Map;e.set("core-rest-pipeline",TB),await yue(e);let r=ent(e);return t?`${t} ${r}`:r}i(PB,"getUserAgentValue");var Cue=Eue(),Iue="userAgentPolicy";function cq(t={}){let e=PB(t.userAgentPrefix);return{name:Iue,async sendRequest(r,n){return r.headers.has(Cue)||r.headers.set(Cue,await e),n(r)}}}i(cq,"userAgentPolicy");var no=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}};function lq(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,a)=>{function c(){a(new no(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(lq,"createAbortablePromise");var ont="The delay was aborted.";function nC(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return lq(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:i(()=>clearTimeout(r),"cleanupBeforeAbort"),abortSignal:n,abortErrorMsg:s??ont})}i(nC,"delay");function $u(t){if(Lp(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($u,"getErrorMessage");function wue(t){return Lp(t)}i(wue,"isError");function VA(){return kp()}i(VA,"randomUUID");var ot=Fp;var Sue=Symbol("rawContent");function dq(t){return typeof t[Sue]=="function"}i(dq,"hasRawContent");function bue(t){return dq(t)?t[Sue]():t}i(bue,"getRawContent");var vB=rC;function pq(){let t=xB();return{name:vB,sendRequest:i(async(e,r)=>{if(e.multipartBody)for(let n of e.multipartBody.parts)dq(n.body)&&(n.body=bue(n.body));return t.sendRequest(e,r)},"sendRequest")}}i(pq,"multipartPolicy");var mq=oB;function fq(){return iB()}i(fq,"decompressResponsePolicy");function Aq(t={}){return lB(t)}i(Aq,"defaultRetryPolicy");function hq(){return uB()}i(hq,"formDataPolicy");function zu(t){return eq(t)}i(zu,"getDefaultProxySettings");function gq(t,e){return CB(t,e)}i(gq,"proxyPolicy");var xue="setClientRequestIdPolicy";function yq(t="x-ms-client-request-id"){return{name:xue,async sendRequest(e,r){return e.headers.has(t)||e.headers.set(t,e.requestId),r(e)}}}i(yq,"setClientRequestIdPolicy");function Eq(t){return IB(t)}i(Eq,"agentPolicy");function Cq(t){return wB(t)}i(Cq,"tlsPolicy");var YA={span:Symbol.for("@azure/core-tracing span"),namespace:Symbol.for("@azure/core-tracing namespace")};function Bue(t={}){let e=new Iq(t.parentContext);return t.span&&(e=e.setValue(YA.span,t.span)),t.namespace&&(e=e.setValue(YA.namespace,t.namespace)),e}i(Bue,"createTracingContext");var Iq=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--),!Tst(l)){let p;return l.trim().length===0?p="Invalid space after '<'.":p="Tag '"+l+"' is an invalid name.",fr("InvalidTag",p,zn(t,o))}let u=bst(t,o);if(u===!1)return fr("InvalidAttr","Attributes for '"+l+"' have open quote.",zn(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=lde(d,e);if(m===!0)n=!0;else return fr(m.err.code,m.err.msg,zn(t,p+m.err.line))}else if(c)if(u.tagClosed){if(d.trim().length>0)return fr("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",zn(t,a));if(r.length===0)return fr("InvalidTag","Closing tag '"+l+"' has not been opened.",zn(t,a));{let p=r.pop();if(l!==p.tagName){let m=zn(t,p.tagStartPos);return fr("InvalidTag","Expected closing tag '"+p.tagName+"' (opened in line "+m.line+", col "+m.col+") instead of closing tag '"+l+"'.",zn(t,a))}r.length==0&&(s=!0)}}else return fr("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",zn(t,o));else{let p=lde(d,e);if(p!==!0)return fr(p.err.code,p.err.msg,zn(t,o-d.length+p.err.line));if(s===!0)return fr("InvalidXml","Multiple possible root nodes found.",zn(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=cde(t,o);continue}else if(t[o+1]==="?"){if(o=ade(t,++o),o.err)return o}else break;else if(t[o]==="&"){let p=Rst(t,o);if(p==-1)return fr("InvalidChar","char '&' is not expected.",zn(t,o));o=p}else if(s===!0&&!ide(t[o]))return fr("InvalidXml","Extra text at the end",zn(t,o));t[o]==="<"&&o--}}else{if(ide(t[o]))continue;return fr("InvalidChar","char '"+t[o]+"' is not expected.",zn(t,o))}if(n){if(r.length==1)return fr("InvalidTag","Unclosed tag '"+r[0].tagName+"'.",zn(t,r[0].tagStartPos));if(r.length>0)return fr("InvalidXml","Invalid '"+JSON.stringify(r.map(o=>o.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return fr("InvalidXml","Start tag expected.",1);return!0}i($B,"validate");function ide(t){return t===" "||t===" "||t===`
`||t==="\r"}i(ide,"isWhiteSpace");function ade(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 fr("InvalidXml","XML declaration allowed only at the start of the document.",zn(t,e));if(t[e]=="?"&&t[e+1]==">"){e++;break}else continue}return e}i(ade,"readPI");function cde(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(cde,"readCommentAndCDATA");var wst='"',Sst="'";function bst(t,e){let r="",n="",s=!1;for(;e<t.length;e++){if(t[e]===wst||t[e]===Sst)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(bst,"readAttributeStr");var xst=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function lde(t,e){let r=GB(t,xst),n={};for(let s=0;s<r.length;s++){if(r[s][1].length===0)return fr("InvalidAttr","Attribute '"+r[s][2]+"' has no space in starting.",AC(r[s]));if(r[s][3]!==void 0&&r[s][4]===void 0)return fr("InvalidAttr","Attribute '"+r[s][2]+"' is without value.",AC(r[s]));if(r[s][3]===void 0&&!e.allowBooleanAttributes)return fr("InvalidAttr","boolean attribute '"+r[s][2]+"' is not allowed.",AC(r[s]));let o=r[s][2];if(!Nst(o))return fr("InvalidAttr","Attribute '"+o+"' is an invalid name.",AC(r[s]));if(!Object.prototype.hasOwnProperty.call(n,o))n[o]=1;else return fr("InvalidAttr","Attribute '"+o+"' is repeated.",AC(r[s]))}return!0}i(lde,"validateAttributeString");function Bst(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(Bst,"validateNumberAmpersand");function Rst(t,e){if(e++,t[e]===";")return-1;if(t[e]==="#")return e++,Bst(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(Rst,"validateAmpersand");function fr(t,e,r){return{err:{code:t,msg:e,line:r.line||r,col:r.col}}}i(fr,"getErrorObject");function Nst(t){return Fq(t)}i(Nst,"validateAttrName");function Tst(t){return Fq(t)}i(Tst,"validateTagName");function zn(t,e){let r=t.substring(0,e).split(/\r?\n/);return{line:r.length,col:r[r.length-1].length+1}}i(zn,"getLineNumberForPosition");function AC(t){return t.startIndex+t[1].length}i(AC,"getPositionFromMatch");var ude={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"},dde={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"},pde={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 ys("!xml"),r=e,n="";this.matcher.reset(),this.entityDecoder.reset(),this.entityExpansionCount=0,this.currentExpandedLength=0;let s=this.options,o=new yC(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=XA(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=Yq(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=Wq(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 ys(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=XA(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=XA(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=Wq(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}=Yq(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,b={},x;x=Xst(m),p!==e.tagname&&this.matcher.push(p,{},x),p!==f&&A&&(w=this.buildAttributesMap(f,this.matcher,p),w&&(b=Kst(w,s))),p!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let T=c;if(this.isCurrentNodeStopNode){let P="";if(C)c=d.closeIndex;else if(s.unpairedTagsSet.has(p))c=d.closeIndex;else{let ee=this.readStopNodeData(t,m,h+1);if(!ee)throw new Error(`Unexpected end of ${m}`);c=ee.i,P=ee.tagContent}let _=new ys(p);w&&(_[":@"]=w),_.add(s.textNodeName,P),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(r,_,this.readonlyMatcher,T)}else{if(C){({tagName:p,tagExp:f}=Yq(s.transformTagName,p,f,s));let P=new ys(p);w&&(P[":@"]=w),this.addChild(r,P,this.readonlyMatcher,T),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(s.unpairedTagsSet.has(p)){let P=new ys(p);w&&(P[":@"]=w),this.addChild(r,P,this.readonlyMatcher,T),this.matcher.pop(),this.isCurrentNodeStopNode=!1,c=d.closeIndex;continue}else{let P=new ys(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,T),r=P}n="",c=h}}}else n+=t[c];return e.child},"parseXml");function sot(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(sot,"addChild");function oot(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(oot,"replaceEntitiesValue");function iot(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(iot,"saveTextToParentTag");function aot(){return this.stopNodeExpressionsLine truncated
`;function hot(t,e){if(!Array.isArray(t)||t.length===0)return"1.0";let r=t[0];if(eG(r)==="?xml"){let s=r[":@"];if(s){let o=e.attributeNamePrefix+"version";if(s[o])return s[o]}}return"1.0"}i(hot,"detectXmlVersionFromArray");function Qde(t,e,r,n,s){return!r.sanitizeName||zp(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(Qde,"resolveTagName");function Zq(t,e){let r="";e.format&&(r=Aot);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 io(c)):c instanceof io&&n.push(c)}let s=hot(t,e),o=new Oa;return _de(t,e,r,o,n,s)}i(Zq,"toXml");function _de(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=Xq(l,e),l}return""}for(let l=0;l<t.length;l++){let u=t[l],d=eG(u);if(d===void 0)continue;let m=d===e.textNodeName||d===e.cdataPropName||d===e.commentPropName||d[0]==="?"?d:Qde(d,!1,e,n,o),f=got(u[":@"],e);n.push(m,f);let A=Eot(n,s);if(m===e.textNodeName){let b=u[d];A||(b=e.tagValueProcessor(m,b),b=Xq(b,e)),c&&(a+=r),a+=b,c=!1,n.pop();continue}else if(m===e.cdataPropName){c&&(a+=r);let b=u[d][0][e.textNodeName],x=JB(b);a+=`<![CDATA[${x}]]>`,c=!1,n.pop();continue}else if(m===e.commentPropName){let b=u[d][0][e.textNodeName],x=WB(b);a+=r+`<!--${x}-->`,c=!0,n.pop();continue}else if(m[0]==="?"){let b=vde(u[":@"],e,A,n,o);a+=(m==="?xml"?"":r)+`<${m}${b}?>`,c=!0,n.pop();continue}let h=r;h!==""&&(h+=e.indentBy);let E=vde(u[":@"],e,A,n,o),C=r+`<${m}${E}`,w;A?w=Dde(u[d],e):w=_de(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(_de,"arrToStr");function got(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]=Wu(t[s]),n=!0}return n?r:null}i(got,"extractAttributeValues");function Dde(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=eG(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=yot(s[":@"],e),c=Dde(s[o],e);!c||c.length===0?r+=`<${o}${a}/>`:r+=`<${o}${a}>${c}</${o}>`}}}return r}i(Dde,"getRawContent");function yot(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)}="${Wu(s)}"`}return r}i(yot,"attr_to_str_raw");function eG(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(eG,"propName");function vde(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:Qde(c,!0,e,n,s),u;r?u=t[a]:(u=e.attributeValueProcessor(a,t[a]),u=Xq(u,e)),u===!0&&e.suppressBooleanAttributes?o+=` ${l}`:o+=` ${l}="${Wu(u)}"`}return o}i(vde,"attr_to_str");function Eot(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(Eot,"checkStopNode");function Xq(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(Xq,"replaceEntitiesValue");function tG(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(tG,"getIgnoreAttributesFn");var Cot={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 Cs(t){if(this.options=Object.assign({},Cot,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(Cs,"Builder");function Iot(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(Iot,"detectXmlVersionFromObj");function rG(t,e,r,n,s){return!r.sanitizeName||zp(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(rG,"resolveTagName");Cs.prototype.build=function(t){if(this.options.preserveOrder)return Zq(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});let e=new Oa,r=Iot(t,this.options);return this.j2x(t,0,e,r).val}};Cs.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:rG(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=rG(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=rG(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}};Cs.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+'="'+Wu(e)+'"'};function wot(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(wot,"processTextOrObjNode");Cs.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]=Wu(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]=Wu(t[n]),r=!0)}return r?e:null};Cs.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(be.AUTHORIZATION,`SharedKey ${this.factory.accountName}:${n}`),e}getHeaderValueToSign(e,r){let n=e.headers.get(r);return!n||r===be.CONTENT_LENGTH&&n==="0"?"":n}getCanonicalizedHeadersString(e){let r=e.headers.headersArray().filter(s=>s.name.toLowerCase().startsWith(be.PREFIX_FOR_STORAGE));r.sort((s,o)=>iR(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=nR(e.url)||"/",n="";n+=`/${this.factory.accountName}${r}`;let s=sR(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 nr=class extends Wp{static{i(this,"StorageSharedKeyCredential")}accountName;accountKey;constructor(e,r){super(),this.accountName=e,this.accountKey=Buffer.from(r,"base64")}create(e,r){return new SC(e,r,this)}computeHMACSHA256(e){return(0,Gde.createHmac)("sha256",this.accountKey).update(e,"utf8").digest("base64")}};var kr=_a("storage-common");var qo;(function(t){t[t.EXPONENTIAL=0]="EXPONENTIAL",t[t.FIXED=1]="FIXED"})(qo||(qo={}));var ju={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:qo.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},vot=new no("The operation was aborted."),bC=class extends Ma{static{i(this,"StorageRetryPolicy")}retryOptions;constructor(e,r,n=ju){super(e,r),this.retryOptions={retryPolicyType:n.retryPolicyType?n.retryPolicyType:ju.retryPolicyType,maxTries:n.maxTries&&n.maxTries>=1?Math.floor(n.maxTries):ju.maxTries,tryTimeoutInMs:n.tryTimeoutInMs&&n.tryTimeoutInMs>=0?n.tryTimeoutInMs:ju.tryTimeoutInMs,retryDelayInMs:n.retryDelayInMs&&n.retryDelayInMs>=0?Math.min(n.retryDelayInMs,n.maxRetryDelayInMs?n.maxRetryDelayInMs:ju.maxRetryDelayInMs):ju.retryDelayInMs,maxRetryDelayInMs:n.maxRetryDelayInMs&&n.maxRetryDelayInMs>=0?n.maxRetryDelayInMs:ju.maxRetryDelayInMs,secondaryHost:n.secondaryHost?n.secondaryHost:ju.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=rR(s.url,this.retryOptions.secondaryHost)),this.retryOptions.tryTimeoutInMs&&(s.url=Ju(s.url,Sl.Parameters.TIMEOUT,Math.floor(this.retryOptions.tryTimeoutInMs/1e3).toString()));let a;try{if(kr.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(kr.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 kr.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 kr.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 kr.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(a===503||a===500)return kr.info(`RetryPolicy: Will retry for status code ${a}.`),!0}if(n&&n?.status>=400){let a=n.headers.get(be.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')?(kr.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 qo.EXPONENTIAL:s=Math.min((Math.pow(2,r-1)-1)*this.retryOptions.retryDelayInMs,this.retryOptions.maxRetryDelayInMs);break;case qo.FIXED:s=this.retryOptions.retryDelayInMs;break}else s=Math.random()*1e3;return kr.info(`RetryPolicy: Delay for ${s}ms`),oR(s,n,vot)}};var xC=class{static{i(this,"StorageRetryPolicyFactory")}retryOptions;constructor(e){this.retryOptions=e}create(e,r){return new bC(e,r,this.retryOptions)}};var Qot="storageBrowserPolicy";function Hde(){return{name:Qot,async sendRequest(t,e){return ot||((t.method==="GET"||t.method==="HEAD")&&(t.url=Ju(t.url,Sl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),t.headers.delete(be.COOKIE),t.headers.delete(be.CONTENT_LENGTH)),e(t)}}}i(Hde,"storageBrowserPolicy");var _ot="StorageCorrectContentLengthPolicy";function $de(){function t(e){e.body&&(typeof e.body=="string"||Buffer.isBuffer(e.body))&&e.body.length>0&&e.headers.set(be.CONTENT_LENGTH,Buffer.byteLength(e.body))}return i(t,"correctContentLength"),{name:_ot,async sendRequest(e,r){return t(e),r(e)}}}i($de,"storageCorrectContentLengthPolicy");var Dot="storageRetryPolicy",eh={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:qo.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},kot=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"],Lot=new no("The operation was aborted.");function zde(t={}){let e=t.retryPolicyType??eh.retryPolicyType,r=t.maxTries??eh.maxTries,n=t.retryDelayInMs??eh.retryDelayInMs,s=t.maxRetryDelayInMs??eh.maxRetryDelayInMs,o=t.secondaryHost??eh.secondaryHost,a=t.tryTimeoutInMs??eh.tryTimeoutInMs;function c({isPrimaryRetry:u,attempt:d,response:p,error:m}){if(d>=r)return Line truncated
`)+`
`+n(o)+s(o),c=(0,Vde.createHmac)("sha256",t.accountKey).update(a,"utf8").digest("base64");o.headers.set(be.AUTHORIZATION,`SharedKey ${t.accountName}:${c}`)}i(e,"signRequest");function r(o,a){let c=o.headers.get(a);return!c||a===be.CONTENT_LENGTH&&c==="0"?"":c}i(r,"getHeaderValueToSign");function n(o){let a=[];for(let[l,u]of o.headers)l.toLowerCase().startsWith(be.PREFIX_FOR_STORAGE)&&a.push({name:l,value:u});a.sort((l,u)=>iR(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=nR(o.url)||"/",c="";c+=`/${t.accountName}${a}`;let l=sR(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:Oot,async sendRequest(o,a){return e(o),a(o)}}}i(aG,"storageSharedKeyCredentialPolicy");var Mot="storageRequestFailureDetailsParserPolicy";function Yde(){return{name:Mot,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(Yde,"storageRequestFailureDetailsParserPolicy");var Wde=require("node:crypto");var aR=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,Wde.createHmac)("sha256",this.key).update(e,"utf8").digest("base64")}};var cR="12.31.0",lR="2026-02-06";var uR="https://storage.azure.com/.default",bl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}};var vi="",cG="*",Fot=1*1024*1024;var Uot=4*Fot;var Jde="AES256",jde="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;",Kde=["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"],Xde=["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"],Zde="BlobUsesCustomerSpecifiedEncryption",epe="BlobDoesNotUseCustomerSpecifiedEncryption",tpe=["10000","10001","10002","10003","10004","10100","10101","10102","10103","10104","11000","11001","11002","11003","11004","11100","11101","11102","11103","11104"];function xl(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(xl,"isPipelineLike");var BC=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 Ar(t,e={}){t||(t=new Mt);let r=new BC([],e);return r._credential=t,r}i(Ar,"newPipeline");function qot(t){let e=[Got,rpe,Hot,$ot,zot,Vot,Wot];if(t.factories.length){let r=t.factories.filter(n=>!e.some(s=>s(n)));if(r.length){let n=r.some(s=>Yot(s));return{wrappedPolicies:Oq(r),afterRetry:n}}}}i(qot,"processDownlevelPipeline");function lG(t){let{httpClient:e,...r}=t.options,n=t._coreHttpClient;n||(n=e?Mq(e):iG(),t._coreHttpClient=n);let s=t._corePipeline;if(!s){let o=`azsdk-js-azure-storage-blob/${cR}`,a=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${o}`:`${o}`;s=cC({...r,loggingOptions:{additionalAllowedHeaderNames:Kde,additionalAllowedQueryParameters:Xde,logger:KB.info},userAgentOptions:{userAgentPrefix:a},serializationOptions:{stringifyXML:jB,serializerOptions:{xml:{xmlCharKey:"#"}}},deserializationOptions:{parseXML:sG,serializerOptions:{xml:{xmlCharKey:"#"}}}}),s.removePolicy({phase:"Retry"}),s.removePolicy({name:mq}),s.addPolicy($de()),s.addPolicy(zde(r.retryOptions),{phase:"R Line truncated
`),o=e.computeHMACSHA256(s);return{sasQueryParameters:new Li(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(qat,"generateBlobSASQueryParameters20150405");function Gat(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?ki(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 Li(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(Gat,"generateBlobSASQueryParameters20181109");function Hat(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?ki(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 Li(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(Hat,"generateBlobSASQueryParameters20201206");function $at(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?it(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?it(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.ipRange?ki(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 Li(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($at,"generateBlobSASQueryParametersUDK20181109");function zat(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?it(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?it(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?ki(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 Li(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(zat,"generateBlobSASQueryParametersUDK20200210");function Vat(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?it(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?it(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?ki(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 Li(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(Vat,"generateBlobSASQueryParametersUDK20201206");function Yat(t,e){if(t=nm(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=tc.parse(t.permissions.toString()).toString():s=rc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?it(t.startsOn,!1):"",t.expiresOn?it(t.expiresOn,!1):"",rm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?it(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?it(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,void 0,t.delegatedUserObjectId,t.ipRange?ki(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 Li(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(Yat,"generateBlobSASQueryParametersUDK20250705");function rm(t,e,r){let n=[`/blob/${t}/${e}`];return r&&n.push(`/${r}`),n.join("")}i(rm,"getCanonicalName");function nm(t){let e=t.version?t.version:lR;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(nm,"SASSignatureValuesSanityCheckAndAutofill");var MC=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=VA()),this._leaseId=r}async acquireLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==vi||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==vi||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 Z.withSpan("BlobLeaseClient-acquireLease",r,async n=>ue(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!==vi||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==vi||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 Z.withSpan("BlobLeaseClient-changeLease",r,async n=>{let s=ue(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!==vi||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==vi||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 Z.withSpan("BlobLeaseClient-releaseLease",e,async r=>ue(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!==vi||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==vi||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 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"}};ph.isNetworkErrorCode=t=>t?["ECONNRESET","ENOTFOUND","ETIMEDOUT","ECONNREFUSED","EHOSTUNREACH"].includes(t):!1;var am=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"}};am.isUsageErrorMessage=t=>t?t.includes("insufficient usage"):!1;var WC=class extends Error{static{i(this,"RateLimitError")}constructor(e){super(e),this.name="RateLimitError"}};var $ct=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())})},jz=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);Qe(`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 ofe(t,e,r){return $ct(this,void 0,void 0,function*(){var n;let s=new Ql(t),o=s.getBlockBlobClient(),a=new jz((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(),v(`BlobClient: ${s.name}:${s.accountName}:${s.containerName}`);let l=yield o.uploadFile(e,c);if(l._response.status>=400)throw new fN(`uploadCacheArchiveSDK: upload failed with status code ${l._response.status}`);return l}catch(l){throw Yt(`uploadCacheArchiveSDK: internal error uploading cache archive: ${l.message}`),l}finally{a.stopDisplayTimer()}})}i(ofe,"uploadCacheArchiveSDK");var afe=R(require("buffer"),1),nc=R(require("fs"),1),cfe=R(require("stream"),1),lfe=R(require("util"),1);var AN=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 hN(t){return t?t>=200&&t<300:!1}i(hN,"isSuccessStatusCode");function zct(t){return t?t>=500:!0}i(zct,"isServerErrorStatusCode");function Vct(t){return t?[rr.BadGateway,rr.ServiceUnavailable,rr.GatewayTimeout].includes(t):!1}i(Vct,"isRetryableStatusCode");function Yct(t){return AN(this,void 0,void 0,function*(){return new Promise(e=>setTimeout(e,t))})}i(Yct,"sleep");function ife(t,e,r){return AN(this,arguments,void 0,function*(n,s,o,a=q0,c=G0,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),!zct(m)))return p;if(m&&(f=Vct(m),u=`Cache service responded with ${m}`),v(`${n} - Attempt ${d} of ${a} failed with error: ${u}`),!f){v(`${n} - Error is not retryable`);break}yield Yct(c),d++}throw Error(`${n} failed: ${u}`)})}i(ife,"retry");function JC(t,e){return AN(this,arguments,void 0,function*(r,n,s=q0,o=G0){return yield ife(r,n,a=>a.statusCode,s,o,a=>{if(a instanceof Ta)return{statusCode:a.statusCode,result:null,headers:{},error:a}})})}i(JC,"retryTypedResponse");function mh(t,e){return AN(this,arguments,void 0,function*(r,n,s=q0,o=G0){return yield ife(r,n,a=>a.message.statusCode,s,o)})}i(mh,"retryHttpClientResponse");var Vo=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 Wct(t,e){return Vo(this,void 0,void 0,function*(){yield lfe.promisify(cfe.pipeline)(t.message,e)})}i(Wct,"pipeResponseToStream");var gN=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,v(`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||[])v(`Cache Key: ${c?.cacheKey}, Cache Version: ${c?.cacheVersion}, Cache Scope: ${c?.scope}, Cache Created: ${c?.creationTime}`)}}})}i(tlt,"printCachesListForDiagnostics");function e3(t,e,r){return ws(this,void 0,void 0,function*(){let n=new Efe.URL(t),s=mfe(r);n.hostname.endsWith(".blob.core.windows.net")?s.useAzureSdk?yield dfe(t,e,s):s.concurrentBlobDownloads?yield ufe(t,e,s):yield yN(t,e):yield yN(t,e)})}i(e3,"downloadCache");function Ife(t,e,r){return ws(this,void 0,void 0,function*(){let n=Zz(),s=OA(e,r?.compressionMethod,r?.enableCrossOsArchive),o={key:t,version:s,cacheSize:r?.cacheSize};return yield JC("reserveCache",()=>ws(this,void 0,void 0,function*(){return n.postJson(KC("caches"),o)}))})}i(Ife,"reserveCache");function yfe(t,e){return`bytes ${t}-${e}/*`}i(yfe,"getContentRange");function rlt(t,e,r,n,s){return ws(this,void 0,void 0,function*(){v(`Uploading chunk of size ${s-n+1} bytes at offset ${n} with content range: ${yfe(n,s)}`);let o={"Content-Type":"application/octet-stream","Content-Range":yfe(n,s)},a=yield mh(`uploadChunk (start: ${n}, end: ${s})`,()=>ws(this,void 0,void 0,function*(){return t.sendStream("PATCH",e,r(),o)}));if(!hN(a.message.statusCode))throw new Error(`Cache service responded with ${a.message.statusCode} during upload chunk.`)})}i(rlt,"uploadChunk");function nlt(t,e,r,n){return ws(this,void 0,void 0,function*(){let s=Na(r),o=KC(`caches/${e.toString()}`),a=fh.openSync(r,"r"),c=Kz(n),l=R2("uploadConcurrency",c.uploadConcurrency),u=R2("uploadChunkSize",c.uploadChunkSize),d=[...new Array(l).keys()];v("Awaiting all uploads");let p=0;try{yield Promise.all(d.map(()=>ws(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 rlt(t,o,()=>fh.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{fh.closeSync(a)}})}i(nlt,"uploadFile");function slt(t,e,r){return ws(this,void 0,void 0,function*(){let n={size:r};return yield JC("commitCache",()=>ws(this,void 0,void 0,function*(){return t.postJson(KC(`caches/${e.toString()}`),n)}))})}i(slt,"commitCache");function t3(t,e,r,n){return ws(this,void 0,void 0,function*(){if(Kz(n).useAzureSdk){if(!r)throw new Error("Azure Storage SDK can only be used when a signed URL is provided.");yield ofe(r,e,n)}else{let o=Zz();v("Upload cache"),yield nlt(o,t,e,n),v("Commiting cache");let a=Na(e);Qe(`Cache Size: ~${Math.round(a/(1024*1024))} MB (${a} B)`);let c=yield slt(o,t,a);if(!hN(c.statusCode))throw new Error(`Cache service responded with ${c.statusCode} during commit cache.`);Qe("Cache saved successfully")}})}i(t3,"saveCache");var AAe=R(cAe(),1),yr=R(gr(),1),lo=R(gr(),1),pm=R(gr(),1),mm=R(gr(),1),fm=R(gr(),1);var J3=R(gr(),1),j3=R(gr(),1),pAe=R(gr(),1),mAe=R(gr(),1),fAe=R(gr(),1);var V3=R(gr(),1),Y3=R(gr(),1),lAe=R(gr(),1),uAe=R(gr(),1),dAe=R(gr(),1);var W3=class extends dAe.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,uAe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,lAe.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?Y3.UnknownFieldHandler.onRead:u)(this.typeName,o,c,l,d)}}return o}internalBinaryWrite(e,r,n){e.scope!==""&&r.tag(1,V3.WireType.LengthDelimited).string(e.scope),e.permission!=="0"&&r.tag(2,V3.WireType.Varint).int64(e.permission);let s=n.writeUnknownFields;return s!==!1&&(s==!0?Y3.UnknownFieldHandler.onWrite:s)(this.typeName,e,r),r}},oT=new W3;var K3=class extends fAe.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(()=>oT,"T")}])}create(e){let r={repositoryId:"0",scope:[]};return globalThis.Object.defineProperty(r,mAe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,pAe.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(oT.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?j3.UnknownFieldHandler.onRead:u)(this.typeName,o,c,l,d)}}return o}internalBinaryWrite(e,r,n){e.repositoryId! Line truncated
`));let n=yield pV(r,"create");yield mV(n,t)})}i(AV,"createTar");var vh=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())})},Fi=class t extends Error{static{i(this,"ValidationError")}constructor(e){super(e),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}},Am=class t extends Error{static{i(this,"ReserveCacheError")}constructor(e){super(e),this.name="ReserveCacheError",Object.setPrototypeOf(this,t.prototype)}},hV="cache write denied:",Ph=class t extends Am{static{i(this,"CacheWriteDeniedError")}constructor(e){super(e),this.name="CacheWriteDeniedError",Object.setPrototypeOf(this,t.prototype)}},lT=class t extends Error{static{i(this,"FinalizeCacheError")}constructor(e){super(e),this.name="FinalizeCacheError",Object.setPrototypeOf(this,t.prototype)}};function EAe(t){if(!t||t.length===0)throw new Fi("Path Validation Error: At least one directory or file path is required")}i(EAe,"checkPaths");function gV(t){if(t.length>512)throw new Fi(`Key Validation Error: ${t} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(t))throw new Fi(`Key Validation Error: ${t} cannot contain commas.`)}i(gV,"checkKey");function yV(){return jC()==="v2"?!!process.env.ACTIONS_RESULTS_URL:!!process.env.ACTIONS_CACHE_URL}i(yV,"isFeatureAvailable");function CAe(t,e,r,n){return vh(this,arguments,void 0,function*(s,o,a,c,l=!1){let u=jC();return v(`Cache service version: ${u}`),EAe(s),u==="v2"?yield Edt(s,o,a,c,l):yield ydt(s,o,a,c,l)})}i(CAe,"restoreCache");function ydt(t,e,r,n){return vh(this,arguments,void 0,function*(s,o,a,c,l=!1){a=a||[];let u=[o,...a];if(v("Resolved Keys:"),v(JSON.stringify(u)),u.length>10)throw new Fi("Key Validation Error: Keys are limited to a maximum of 10.");for(let m of u)gV(m);let d=yield JE(),p="";try{let m=yield Cfe(u,s,{compressionMethod:d,enableCrossOsArchive:l});if(!m?.archiveLocation)return;if(c?.lookupOnly)return Qe("Lookup only - skipping download"),m.cacheKey;p=mI.join(yield YE(),qu(d)),v(`Archive Path: ${p}`),yield e3(m.archiveLocation,p,c),Np()&&(yield pI(p,d));let f=Na(p);return Qe(`Cache Size: ~${Math.round(f/(1024*1024))} MB (${f} B)`),yield fV(p,d),Qe("Cache restored successfully"),m.cacheKey}catch(m){let f=m;if(f.name===Fi.name)throw m;f instanceof Ta&&typeof f.statusCode=="number"&&f.statusCode>=500?BA(`Failed to restore: ${m.message}`):Yt(`Failed to restore: ${m.message}`)}finally{try{yield WE(p)}catch(m){v(`Failed to delete archive: ${m}`)}}})}i(ydt,"restoreCacheV1");function Edt(t,e,r,n){return vh(this,arguments,void 0,function*(s,o,a,c,l=!1){c=Object.assign(Object.assign({},c),{useAzureSdk:!0}),a=a||[];let u=[o,...a];if(v("Resolved Keys:"),v(JSON.stringify(u)),u.length>10)throw new Fi("Key Validation Error: Keys are limited to a maximum of 10.");for(let p of u)gV(p);let d="";try{let p=dV(),m=yield JE(),f={key:o,restoreKeys:a,version:OA(s,m,l)},A=yield p.GetCacheEntryDownloadURL(f);if(!A.ok){v(`Cache not found for version ${f.version} of keys: ${u.join(", ")}`);return}if(f.key!==A.matchedKey?Qe(`Cache hit for restore-key: ${A.matchedKey}`):Qe(`Cache hit for: ${A.matchedKey}`),c?.lookupOnly)return Qe("Lookup only - skipping download"),A.matchedKey;d=mI.join(yield YE(),qu(m)),v(`Archive path: ${d}`),v(`Starting download of archive to: ${d}`),yield e3(A.signedDownloadUrl,d,c);let E=Na(d);return Qe(`Cache Size: ~${Math.round(E/(1024*1024))} MB (${E} B)`),Np()&&(yield pI(d,m)),yield fV(d,m),Qe("Cache restored successfully"),A.matchedKey}catch(p){let m=p;if(m.name===Fi.name)throw p;m instanceof Ta&&typeof m.statusCode=="number"&&m.statusCode>=500?BA(`Failed to restore: ${p.message}`):Yt(`Failed to restore: ${p.message}`)}finally{try{d&&(yield WE(d))}catch(p){v(`Failed to delete archive: ${p}`)}}})}i(Edt,"restoreCacheV2");function EV(t,e,r){return vh(this,arguments,void 0,function*(n,s,o,a=!1){let c=jC();return v(`Cache service version: ${c}`),EAe(n),gV(s),c==="v2"?yield Idt(n,s,o,a):yield Cdt(n,s,o,a)})}i(EV,"saveCache");function Cdt(t,e,r){return vh(this,arguments,void 0,function*(n,s,o,a=!1){var c,l,u,d,p,m;let f=yield JE(),A=-1,h=yield B2(n);if(v("Cache Paths:"),v(`${JSON.stringify(h)}`),h.length===0)throw new Error("Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.");let E=yield YE(),C=mI.join(E,qu(f));v(`Archive Path: ${C}`);try{yield AV(E,h,f),Np()&&(yield pI(C,f));let w=10*1024*1024*1024,b=Na(C);if(v(`File Size: ${b}`),b>w&&!Xz())throw new Error(`Cache size of ~${Math.round(b/(1024*1024))} MB (${b} B) is over the 10GB limit, not saving cache.`);v("Reserving Cache");let x=yield Ife(s,n,{compressionMethod:f,enableCrossOsArchive:a,cacheSize:b});if(!((c=x?.result)===null||c===void 0)&&c.cacheId)A=(l=x?. Line truncated
${l}`}let p=wV(t.buffer,s[c],o[c],t.position,d);l+=`${" ".repeat(r.indent)}${SV((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=wV(t.buffer,s[c+m],o[c+m],t.position-(s[c]-s[c+m]),d);l+=`${" ".repeat(r.indent)}${SV((t.line+m+1).toString(),u)} | ${f.str}
`}return l.replace(/\n$/,"")}i(Ppt,"makeSnippet");function BAe(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(BAe,"formatError");var pT=class extends Error{static{i(this,"YAMLException")}reason;mark;constructor(t,e){super(),this.name="YAMLException",this.reason=t,this.mark=e,this.message=BAe(this,!1),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}toString(t){return`${this.name}: ${BAe(this,t)}`}};function yT(t,e,r,n=""){let s=0,o=0;for(let c=0;c<e;c++){let l=t.charCodeAt(c);l===10?(s++,o=c+1):l===13&&(s++,t.charCodeAt(c+1)===10&&c++,o=c+1)}let a={name:n,buffer:t,position:e,line:s,column:e-o};throw a.snippet=Ppt(a),new pT(r,a)}i(yT,"throwErrorAt");var vpt=-1;function RAe(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(RAe,"simpleEscapeSequence");var OAe=new Array(256),MAe=new Array(256);for(let t=0;t<256;t++)OAe[t]=RAe(t)?1:0,MAe[t]=RAe(t);function Qpt(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}i(Qpt,"charFromCodepoint");function _pt(t){return t>=48&&t<=57?t-48:(t|32)-97+10}i(_pt,"fromHexCode$1");function Dpt(t){return t===120?2:t===117?4:8}i(Dpt,"escapedHexLen$1");function mT(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(mT,"skipFoldedBreaks");function LV(t){return t===1?" ":`
`.repeat(t-1)}i(LV,"foldedBreaks");function kpt(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=mT(t,s,r);n+=LV(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,a)}i(kpt,"getPlainValue");function Lpt(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=mT(t,s,r);n+=LV(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,r)}i(Lpt,"getSingleQuotedValue");function Opt(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=mT(t,s,r).position;else if(l<256&&OAe[l])n+=MAe[l],s++;else{let u=Dpt(l),d=0;for(;u>0;u--){s++;let p=_pt(t.charCodeAt(s));d=(d<<4)+p}n+=Qpt(d),s++}o=a=s}else if(c===10||c===13){n+=t.slice(o,a);let l=mT(t,s,r);n+=LV(l.breaks),s=o=a=l.position}else s++,c!==32&&c!==9&&(a=s)}return n+t.slice(o,r)}i(Opt,"getDoubleQuotedValue");function NAe(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===3?u+=`
`.repeat(d?1+p:p):s!==2&&d&&(u+=`
`),u}i(NAe,"getBlockValue");function Mpt(t,e){if(e.valueStart===vpt)return"";let{valueStart:r,valueEnd:n}=e;if(e.fast)return t.slice(r,n);switch(e.style){case 2:return Lpt(t,r,n);case 3:return Opt(t,r,n);case 4:return NAe(t,r,n,e.indent,e.chomping,!1);case 5:return NAe(t,r,n,e.indent,e.chomping,!0);default:return kpt(t,r,n)}}i(Mpt,"getScalarValue");var Fpt={"!":"!","!!":"tag:yaml.org,2002:"};function FAe(t,e){if(t.startsWith("!<")&&t.endsWith(">"))return decodeURIComponent(t.slice(2,-1));let r=t.indexOf("!",1),n=r===-1?"!":t.slice(0,r+1),s=e?.[n]??Fpt[n]??n;return decodeURIComponent(s)+decodeURIComponent(t.slice(n.length))}i(FAe,"tagNameFull");var _h=-1,OV={filename:"",schema:Rpt,json:!1,maxTotalMergeKeys:1e4,maxAliases:-1};function Upt(t){return"tagStart"in t&&t.tagStart!==_h?t.tagStart:"anchorStart"in t&&t.anchorStart!==_h?t.anchorStart:"valueStart"in t&&t.valueStart!==_h?t.valueStart:"start"in t?t.start:0}i(Upt,"eventPosition$1");function Bs(t,e){yT(t.source,t.position,e,t.filename)}i(Bs,"throwError$1");function UAe(t,e,r,n){try{return r.finalize(n)}catch(s){if(s instanceof pT)throw s;yT(t.source,e,s instanceof Error?s.message:String(s),t.filename)}}i(UAe,"finalizeCollection");function dT(t,e,r){let n=t[r];if(n)return n;for(let s of e)if(r.startsWith(s.tagName))return s}i(dT,"lookupTag");function qpt(t,e,r,n,s){let o=dT(e,r,n);if(o)return o;Bs(t,`unknown ${s} tag !<${n}>`)}i(qpt,"findExplicitTag");function Gpt(t,e){let r=Mpt(t.source,e),n=e.tagStart===_h?"":t.source.slice(e.tagStart,e.tagEnd),s=t.schema.defaultScalarTag;if(n!==""){if(n==="!")return{value:r,tag:s};let o=FAe(n,t.tagHandlers),a=dT(t.schema.exact.scalar,t.schema.prefix.scalar,o);if(a){let l=a.resolve(r,!0,o);return l===tt&&Bs(t,`cannot resolve a node with !<${o}> explicit tag`),{value:l,tag:a}}let c=dT(t.schema.exact.mapping,t.schema.prefix.mapping,o)??dT(t.schema.exact.sequence,t.schema.prefix.sequence,o);if(c){r!==""&&Bs(t,`cannot resolve a node with !<${o}> explicit tag`);let l=c.create(o);return{value:c.carrierIsResult?l:UAe(t,t.position,c,l),tag:c}}Bs(t,`unknown scalar tag !<${o}>`)}if(e.style===1){let o=t.schema.implicitScalarByFirstChar.get(r.charAt(0))??t.schema.implicitScalarAnyFirstChar;for(let a of o){let c=a.resolve(r,!1,a.tagName);if(c!==tt)return{value:c,tag:a}}}return{value:s.resolve(r,!1,s.tagName),tag:s}}i(Gpt,"constructScalar");function TAe(t,e,r,n,s,o){let a=e.tagStart===_h?"":t.source.slice(e.tagStart,e.tagEnd),c=a===""||a==="!"?s:FAe(a,t.tagHandlers);return{tagName:c,tag:qpt(t,r,n,c,o)}}i(TAe,"collectionTag");function qAe(t){return t.nodeKind==="mapping"}i(qAe,"isMappingTag");function PAe(t,e,r,n){for(let s of n.keys(r)){if(t.maxTotalMergeKeys!==-1&&++t.totalMergeKeys>t.maxTotalMergeKeys&&Bs(t,`merge keys exceeded maxTotalMergeKeys (${t.maxTotalMergeKeys})`),e.tag.has(e.value,s))continue;let o=e.tag.addPair(e.value,s,n.get(r,s));o&&Bs(t,o),(e.overridable??=new Set).add(s)}}i(PAe,"mergeKeys");function Hpt(t,e,r,n){if(t.position=e.keyPosition,qAe(n))PAe(t,e,r,n);else if(n.nodeKind==="sequence"&&Array.isArray(r))for(let s of r)PAe(t,e,s,e.tag);else Bs(t,"cannot merge mappings; the provided source object is unacceptable")}i(Hpt,"mergeSource");function $pt(t,e,r,n,s){if(t.position=e.keyPosition,r===QV){Hpt(t,e,n,s);return}!t.json&&e.tag.has(e.value,r)&&!e.overridable?.has(r)&&Bs(t,"duplicated mapping key");let o=e.tag.addPair(e.value,r,n);o&&Bs(t,o),e.overridable?.delete(r)}i($pt,"addMappingValue");function bV(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"){n.merge&&(qAe(r)||Bs(t,"cannot merge mappings; the provided source object is unacceptable"));let s=n.tag.addItem(n.value,e,n.index++);s&&Bs(t,s)}else if(n.hasKey){let s=n.key;n.key=void 0,n.hasKey=!1,$pt(t,n,s,e,r)}else n.key=e,n.keyPosition=t.position,n.hasKey=!0}i(bV,"addValue");function xV(t,e,r,n,s){if(e.anchorStart!==_h){let o={value:r,tag:n,isValueFinal:s};return t.anchors.set(t.source.slice(e.anchorStart,e.anchorEnd),o),o}return null}i(xV,"storeAnchor");function zpt(t,e){let r={...OV,...e,events:t,documents:[],eventIndex:0,position:0,frames:[],anchors: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=Upt(n),n.type){case 1:r.anchors=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 4:{let{value:s,tag:o}=Gpt(r,n);xV(r,n,s,o,!0),bV(r,s,o);break}case 2:{let s=TAe(r,n,r.schema.exact.sequence,r.schema.prefix.sequence,"tag:yaml.org,2002:seq","sequence"),o=s.tag.create(s.tagName),a=xV(r,n,o,s.tag,s.tag.carrierIsResult),c=r.frames[r.frames.length-1],l=c!==void 0&&c.kind==="mapping"&&c.hasKey&&c.key===QV;r.frames.push({kind:"sequence",position:r.position,value:o,tag:s.tag,anchor:a,index:0,merge:l});break}case 3:{let s=TAe(r,n,r.schem 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:b}=this.options,{comment:x,escape:T,quote:P,record_delimiter:_}=this.options,{bomSkipped:ee,delimiterDiscovered:Ce,delimiterBufPrevious:ae,rawBuffer:qe,escapeIsQuote:ie}=this.state;if(!Ce&&u){let ct;if(ae===void 0?ct=n:ae!==void 0&&n===void 0?ct=ae:ct=Buffer.concat([ae,n]),n=void 0,s||ct.length>u.size)this.options.delimiter=[Buffer.from(ZEe(ct,this.options.delimiter_auto))],this.state.previousBuf=ct,this.state.delimiterBufPrevious=void 0,this.state.delimiterDiscovered=!0;else{this.state.delimiterBufPrevious=ct;return}}let{previousBuf:K}=this.state,U;if(K===void 0)if(n===void 0){a();return}else U=n;else K!==void 0&&n===void 0?U=K:U=Buffer.concat([K,n]);if(ee===!1)if(c===!1)this.state.bomSkipped=!0;else if(U.length<3){if(s===!1){this.state.previousBuf=U;return}}else{for(let ct in Kh)if(Kh[ct].compare(U,0,Kh[ct].length)===0){let pa=Kh[ct].length;this.state.bufBytesStart+=pa,U=U.slice(pa);let pu=jh({...this.original_options,encoding:ct});for(let er in pu)this.options[er]=pu[er];({comment:x,escape:T,quote:P}=this.options);break}this.state.bomSkipped=!0}let wt=U.length,X;for(X=0;X<wt&&!this.__needMoreData(X,wt,s);X++){if(this.state.wasRowDelimiter===!0&&(this.info.lines++,this.state.wasRowDelimiter=!1),b!==-1&&this.info.lines>b){this.state.stop=!0,a();return}this.state.quoting===!1&&_.length===0&&this.__autoDiscoverRecordDelimiter(U,X)&&(_=this.options.record_delimiter);let ct=U[X];if(A===!0&&qe.append(ct),(ct===FEt||ct===UEt)&&this.state.wasRowDelimiter===!1&&(this.state.wasRowDelimiter=!0),this.state.escaping===!0)this.state.escaping=!1;else{if(T!==null&&this.state.quoting===!0&&this.__isEscape(U,X,ct)&&X+T.length<wt)if(ie){if(this.__isQuote(U,X+T.length)){this.state.escaping=!0,X+=T.length-1;continue}}else{this.state.escaping=!0,X+=T.length-1;continue}if(this.state.commenting===!1&&this.__isQuote(U,X))if(this.state.quoting===!0){let er=U[X+P.length],ma=E&&this.__isCharTrimable(U,X+P.length),Ms=x!==null&&this.__compareBytes(x,U,X+P.length,er),Kd=this.__isDelimiter(U,X+P.length,er),cb=_.length===0?this.__autoDiscoverRecordDelimiter(U,X+P.length):this.__isRecordDelimiter(er,U,X+P.length);if(T!==null&&this.__isEscape(U,X,ct)&&this.__isQuote(U,X+T.length))X+=T.length-1;else if(!er||Kd||cb||Ms||ma){this.state.quoting=!1,this.state.wasQuoting=!0,X+=P.length-1;continue}else if(h===!1){let a9=this.__error(new Ve("CSV_INVALID_CLOSING_QUOTE",["Invalid Closing Quote:",`got "${String.fromCharCode(er)}"`,`at line ${this.info.lines}`,"instead of delimiter, record delimiter, trimable character","(if activated) or comment"],this.options,this.__infoField()));if(a9!==void 0)return a9}else this.state.quoting=!1,this.state.wasQuoting=!0,this.state.field.prepend(P),X+=P.length-1}else if(this.state.field.length!==0){if(h===!1){let er=this.__infoField(),ma=Object.keys(Kh).map(Kd=>Kh[Kd].equals(this.state.field.toString())?Kd:!1).filter(Boolean)[0],Ms=this.__error(new Ve("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(er.column)} at line ${er.lines}, value is ${JSON.stringify(this.state.field.toString(d))}`,ma?`(${ma} bom)`:void 0],this.options,er,{field:this.state.field}));if(Ms!==void 0)return Ms}}else{this.state.quoting=!0,X+=P.length-1;continue}if(this.state.quoting===!1){let er=this.__isRecordDelimiter(ct,U,X);if(er!==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(),X+=er-1;continue}if(C===!0&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0){this.info.empty_lines++,X+=er-1;continue}this.info.bytes=this.state.bufBytesStart+X;let Kd=this.__onField();if(Kd!==void 0)return Kd;this.info.bytes=this.state.bufBytesStart+X+er;let cb=this.__onRecord(o);if(cb!==void 0)return cb;if(w!==-1&&this.info.records>=w){this.state.stop=!0,a();return}}this.state.commenting=!1,X+=er-1;continue}if(this.state.commenting)continue;if(x!==null&&(l===!1||this.state.record.length===0&&this.state.field.length===0)&&this.__compareBytes(x,U,X,ct)!==0){this.state.commenting=!0;continue}let ma=this.__isDelimiter(U,X,ct);if(ma!==0){this.info.bytes=this.state.bufBytesStart+X;let Ms=this.__onField();if(Ms!==void 0)return Ms;X+=ma-1;continue}}}if(this.state.commenting===!1&&f!==0&&this.state.record_length+this.state.field.length>f)return this.__error(new Ve("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 pa=m===!1||this.state.quoting===!0||this.sta 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 tCe=i(function(t,e={}){typeof t=="string"&&(t=Buffer.from(t));let r=e&&e.objname?Object.create(null):[],n=EP(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 dd=class t{static{i(this,"Util")}static getInputList(e,r){return this.getList(Ri(e,{trimWhitespace:r?.trimWhitespace!==!1}),r)}static getList(e,r){let n=[];if(e=="")return n;let s=tCe(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=Ri(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 ps("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 rCe.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 oY.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 oY.default.randomBytes(Math.ceil(e/2)).toString("hex").slice(0,e)}static compileHandlebars(e,r,n){return nCe.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=LI.default.resolve(e);return LI.default.resolve(r).startsWith(n.endsWith(LI.default.sep)?n:`${n}${LI.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 pd=class t{static{i(this,"Docker")}static get configDir(){return process.env.DOCKER_CONFIG||OI.default.join(sCe.default.homedir(),".docker")}static configFile(){let e=OI.default.join(t.configDir,"config.json");if(iY.default.existsSync(e))return JSON.parse(iY.default.readFileSync(e,{encoding:"utf-8"}))}static async isAvailable(){return await ps("docker",!0).then(e=>(v(`Docker.isAvailable ok: ${e}`),!0)).catch(e=>(v(`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(QCt,"_buildMessageForResponseErrors");var _Ct=class extends Error{static{i(this,"GraphqlResponseError")}constructor(t,e,r){super(QCt(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},DCt=["method","baseUrl","url","headers","request","query","mediaType","operationName"],kCt=["query","method","url"],GCe=/\/api\/v3\/?$/;function LCt(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(kCt.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)=>DCt.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 GCe.test(o)&&(s.url=o.replace(GCe,"/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 _Ct(s,c,a.data)}return a.data.data})}i(LCt,"graphql");function gY(t,e){let r=t.defaults(e);return Object.assign(i((s,o)=>LCt(r,s,o),"newApi"),{defaults:gY.bind(null,r),endpoint:r.endpoint})}i(gY,"withDefaults");var pEr=gY(qI,{headers:{"user-agent":`octokit-graphql.js/${vCt} ${md()}`},method:"POST",url:"/graphql"});function HCe(t){return gY(t,{method:"POST",url:"/graphql"})}i(HCe,"withCustomRequest");var yY="(?:[a-zA-Z0-9_-]+)",$Ce="\\.",zCe=new RegExp(`^${yY}${$Ce}${yY}${$Ce}${yY}$`),OCt=zCe.test.bind(zCe);async function MCt(t){let e=OCt(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(MCt,"auth");function FCt(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}i(FCt,"withAuthorizationPrefix");async function UCt(t,e,r,n){let s=e.endpoint.merge(r,n);return s.headers.authorization=FCt(t),e(s)}i(UCt,"hook");var VCe=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(MCt.bind(null,e),{hook:UCt.bind(null,e)})},"createTokenAuth2");var EY="7.0.6";var YCe=i(()=>{},"noop"),qCt=console.warn.bind(console),GCt=console.error.bind(console);function HCt(t={}){return typeof t.debug!="function"&&(t.debug=YCe),typeof t.info!="function"&&(t.info=YCe),typeof t.warn!="function"&&(t.warn=qCt),typeof t.error!="function"&&(t.error=GCt),t}i(HCt,"createLogger");var WCe=`octokit-core.js/${EY} ${md()}`,vP=class{static{i(this,"Octokit")}static VERSION=EY;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 ICe.Collection,n={baseUrl:qI.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} ${WCe}`:WCe,e.baseUrl&&(n.baseUrl=e.baseUrl),e.previews&&(n.mediaType.previews=e.previews),e.timeZone&&(n.headers["time-zone"]=e.timeZone),this.request=qI.defaults(n),this.graphql=HCe(this.request).defaults(n),this.log=HCt(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=VCe(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 CY="17.0.0";var $Ct={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||v(`Buildx.convertWarningsToGitHubAnnotations: skipping warning without matching Dockerfile ${u}: ${p}`)}return c}};function sIe(){return{registry:Ri("registry"),username:Ri("username"),password:Ri("password"),scope:Ri("scope"),ecr:Ri("ecr"),logout:fse("logout"),registryAuth:Ri("registry-auth")}}i(sIe,"getInputs");function oIe(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=WAe(t.registryAuth).map(r=>{r.password&&Js(r.password);let n=r.registry||"docker.io";return{registry:n,username:r.username,password:r.password,scope:r.scope,ecr:r.ecr||"auto",configDir:kP(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:kP(r,t.scope)})}if(e.length==0)throw new Error("No registry to login");return e}i(oIe,"getAuthList");function kP(t,e){if(lIt()||!e||e==="")return"";let r=PY.default.join(DP.configDir,"config",t==="docker.io"?"registry-1.docker.io":t);return e.startsWith("@")?r+=e:r=PY.default.join(r,e),r}i(kP,"scopeToConfigDir");function lIt(){return process.env.DOCKER_LOGIN_SCOPE_DISABLED?dd.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED):!1}i(lIt,"scopeDisabled");var Z2e=R(o1e(),1),eqe=R(O2e(),1),s9=R(su(),1);var q2e=R(require("net"),1),G2e=R(require("tls"),1),H2e=R(qp(),1),$2e=require("events");var M2e=R(require("net"),1),F2e=R(require("http"),1),U2e=require("https");var Kc=Symbol("AgentBaseInternalState"),xO=class extends F2e.Agent{static{i(this,"Agent")}constructor(e){super(e),this[Kc]={}}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 M2e.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)?U2e.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[Kc].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[Kc].currentSocket;if(this[Kc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Kc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Kc]&&(this[Kc].defaultPort=e)}get protocol(){return this[Kc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Kc]&&(this[Kc].protocol=e)}};var t9=require("url");function BO(){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(BO,"createNegotiateAuth");var Ay=(0,H2e.default)("http-proxy-agent"),ob=class extends xO{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new t9.URL(e):e,this.proxyHeaders=r?.headers??{},Ay("Creating new HttpProxyAgent instance: %o",this.proxy.href),r?.negotiate?this.onProxyAuth=BO():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?Mqt(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 t9.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;Ay("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(Ay("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),Ay("Output buffer: %o",e.outputData[0].data));let o;this.proxy.protocol==="https:"?(Ay("Creating `tls.Socket`: %o",this.connectOpts),o=G2e.connect(this.connectOpts)):(Ay("Creating `net.Socket`: %o",this.connectOpts),o=q2e.connect(this.connectOpts)),await(0,$2e.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}};ob.protocols=["http","https"];function Mqt(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(Mqt,"omit");var Zc=R(require("net"),1),ib=R(require("tls"),1),j2e=R(require("assert"),1),K2e=R(qp(),1);var z2e=R(require("net"),1),V2e=R(require("http"),1),Y2e=require("https");var Xc=Symbol("AgentBaseInternalState"),RO=class extends V2e.Agent{static{i(this,"Agent")}constructor(e){super(e),this[Xc]={}}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 z2e.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)?Y2e.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[Xc].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[Xc].currentSocket;if(this[Xc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Xc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Xc]&&(this[Xc].defaultPort=e)}get protocol(){return this[Xc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Xc]&&(this[Xc].protocol=e)}};var X2e=require("url");var W2e=R(qp(),1);var NO=(0,W2e.default)("https-proxy-agent:parse-proxy-response");function r9(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(),NO("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),NO("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){NO("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 b of f){if(!b)continue;let x=b.indexOf(":");if(x===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${b}"`));let T=b.slice(0,x).toLowerCase(),P=b.slice(x+1).trimStart(),_=w[T];typeof _=="string"?w[T]=[_,P]:Array.isArray(_)?_.push(P):w[T]=P}NO("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(r9,"parseProxyResponse");var Bf=(0,K2e.default)("https-proxy-agent"),TO=i(t=>t.servername===void 0&&t.host&&!Zc.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),ab=class extends RO{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new X2e.URL(e):e,this.proxyHeaders=r?.headers??{},Bf("Creating new HttpsProxyAgent instance: %o",this.proxy.href),r?.negotiate?this.onProxyAuth=BO():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?n9(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:"?(Bf("Creating `tls.Socket`: %o",this.connectOpts),s=ib.connect(TO(this.connectOpts))):(Bf("Creating `net.Socket`: %o",this.connectOpts),s=Zc.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=Zc.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=r9(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",J2e),r.secureEndpoint?(Bf("Upgrading socket connection to TLS"),ib.connect({...n9(TO(r),"host","path","port"),socket:s})):s;if(u.statusCode===407&&this.onProxyAuth){Bf("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 Zc.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{Bf("Replaying proxy buffer for failed request"),(0,j2e.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=ib.connect(TO(this.connectOpts)):o=Zc.connect(this.connectOpts);let a=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},c=Zc.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=r9(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",J2e),r.secureEndpoint?(Bf("Upgrading socket connection to TLS"),ib.connect({...n9(TO(r),"host","path","port"),socket:o})):o;throw o.destroy(),new Error(`Proxy authentication failed with status ${d.statusCode} after retry`)}};ab.protocols=["http","https"];function J2e(t){setImmediate(()=>{t.resume()})}i(J2e,"resume");function n9(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(n9,"omit");var o9=/^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/,Fqt=/public\.ecr\.aws|ecr-public\.aws\.com/,tqe=i(t=>o9.test(t)||PO(t),"isECR"),PO=i(t=>Fqt.test(t),"isPubECR"),Uqt=i(t=>{if(PO(t))return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1";let e=t.match(o9);return e?e[4]:""},"getRegion"),qqt=i(t=>{if(PO(t))return[];let e=t.match(o9);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"),rqe=i(async(t,e,r)=>{let n=Uqt(t),s=qqt(t),o={};s.length>0&&(v(`Requesting AWS ECR auth token for ${s.join(", ")}`),o.registryIds=s);let a,c=process.env.http_proxy||process.env.HTTP_PROXY||"";c&&(v(`Using http proxy ${c}`),a=new ob(c));let l,u=process.env.https_proxy||process.env.HTTPS_PROXY||"";u&&(v(`Using https proxy ${u}`),l=new ab(u));let d=e&&r?{accessKeyId:e,secretAccessKey:r}:void 0;if(PO(t)){Qe(`AWS Public ECR detected with ${n} region`);let m=await new eqe.ECRPUBLIC({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new s9.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 Js(A[0]),Js(A[1]),[{registry:"public.ecr.aws",username:A[0],password:A[1]}]}else{Qe(`AWS ECR detected with ${n} region`);let m=await new Z2e.ECR({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new s9.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);Js(E[0]),Js(E[1]),f.push({registry:A.proxyEndpoint||"",username:E[0],password:E[1]})}return f}},"getRegistriesData");async function i9(t){/true/i.test(t.ecr)||t.ecr=="auto"&&tqe(t.registry)?await $qt(t.registry,t.username,t.password,t.scope):await Hqt(t.registry,t.username,t.password,t.scope)}i(i9,"login");async function nqe(t,e){let r;e!==""&&(r=Object.assign({},process.env,{DOCKER_CONFIG:e}),Qe(`Alternative config dir: ${e}`)),await pd.getExecOutput(["logout",t],{ignoreReturnCode:!0,env:r}).then(n=>{n.stderr.length>0&&n.exitCode!=0&&Yt(n.stderr.trim())})}i(nqe,"logout");async function Hqt(t,e,r,n){if(!e&&!r)throw new Error("Username and password required");if(!e)throw new Error("Username required");if(!r)throw new Error("Password required");await sqe(t,e,r,n)}i(Hqt,"loginStandard");async function $qt(t,e,r,n){Qe("Retrieving registries data through AWS SDK...");let s=await rqe(t,e,r);for(let o of s)await sqe(o.registry,o.username,o.password,n)}i($qt,"loginECR");async function sqe(t,e,r,n){let s,o=kP(t,n);o!==""?(s=Object.assign({},process.env,{DOCKER_CONFIG:o}),Qe(`Logging into ${t} (scope ${n})...`)):Qe(`Logging into ${t}...`),await pd.getExecOutput(["login","--password-stdin","--username",e,t],{ignoreReturnCode:!0,silent:!0,input:Buffer.from(r),env:s}).then(a=>{if(a.stderr.length>0&&a.exitCode!=0)throw new Error(a.stderr.trim());Qe("Login Succeeded!")})}i(sqe,"loginExec");var oqe=process.env.STATE_registries?JSON.parse(process.env.STATE_registries):[],iqe=/true/i.test(process.env.STATE_logout||"");function aqe(t){Tp("registries",JSON.stringify(t))}i(aqe,"setRegistries");function cqe(t){Tp("logout",t)}i(cqe,"setLogout");async function lqe(){let t=sIe();cqe(t.logout);let e=oIe(t);if(aqe(Array.from(new Map(e.map(r=>[`${r.registry}|${r.configDir}`,{registry:r.registry,configDir:r.configDir}])).values())),e.length===1){await i9(e[0]);return}for(let r of e)await SE(`Login to ${r.registry}`,async()=>{await i9(r)})}i(lqe,"main");async function Yqt(){if(iqe)for(let t of oqe)await SE(`Logout from ${t.registry}`,async()=>{await nqe(t.registry,t.configDir)})}i(Yqt,"post");SAe(lqe,Yqt);0&&(module.exports={main});
/*! 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.2.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
-17
View File
@@ -1,17 +0,0 @@
require('./sourcemap-register.js');(()=>{var __webpack_modules__={87351:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){if(o===undefined)o=n;Object.defineProperty(e,o,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,o){if(o===undefined)o=n;e[o]=t[n]});var r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))o(t,e,n);r(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.issue=t.issueCommand=void 0;const i=s(n(22037));const a=n(5278);function issueCommand(e,t,n){const o=new Command(e,t,n);process.stdout.write(o.toString()+i.EOL)}t.issueCommand=issueCommand;function issue(e,t=""){issueCommand(e,{},t)}t.issue=issue;const c="::";class Command{constructor(e,t,n){if(!e){e="missing.command"}this.command=e;this.properties=t;this.message=n}toString(){let e=c+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let t=true;for(const n in this.properties){if(this.properties.hasOwnProperty(n)){const o=this.properties[n];if(o){if(t){t=false}else{e+=","}e+=`${n}=${escapeProperty(o)}`}}}}e+=`${c}${escapeData(this.message)}`;return e}}function escapeData(e){return a.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escapeProperty(e){return a.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}},42186:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){if(o===undefined)o=n;Object.defineProperty(e,o,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,o){if(o===undefined)o=n;e[o]=t[n]});var r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))o(t,e,n);r(t,e);return t};var i=this&&this.__awaiter||function(e,t,n,o){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o["throw"](e))}catch(e){r(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const a=n(87351);const c=n(717);const d=n(5278);const u=s(n(22037));const l=s(n(71017));const p=n(98041);var m;(function(e){e[e["Success"]=0]="Success";e[e["Failure"]=1]="Failure"})(m=t.ExitCode||(t.ExitCode={}));function exportVariable(e,t){const n=d.toCommandValue(t);process.env[e]=n;const o=process.env["GITHUB_ENV"]||"";if(o){return c.issueFileCommand("ENV",c.prepareKeyValueMessage(e,t))}a.issueCommand("set-env",{name:e},n)}t.exportVariable=exportVariable;function setSecret(e){a.issueCommand("add-mask",{},e)}t.setSecret=setSecret;function addPath(e){const t=process.env["GITHUB_PATH"]||"";if(t){c.issueFileCommand("PATH",e)}else{a.issueCommand("add-path",{},e)}process.env["PATH"]=`${e}${l.delimiter}${process.env["PATH"]}`}t.addPath=addPath;function getInput(e,t){const n=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!n){throw new Error(`Input required and not supplied: ${e}`)}if(t&&t.trimWhitespace===false){return n}return n.trim()}t.getInput=getInput;function getMultilineInput(e,t){const n=getInput(e,t).split("\n").filter((e=>e!==""));if(t&&t.trimWhitespace===false){return n}return n.map((e=>e.trim()))}t.getMultilineInput=getMultilineInput;function getBooleanInput(e,t){const n=["true","True","TRUE"];const o=["false","False","FALSE"];const r=getInput(e,t);if(n.includes(r))return true;if(o.includes(r))return false;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\n`+`Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}t.getBooleanInput=getBooleanInput;function setOutput(e,t){const n=process.env["GITHUB_OUTPUT"]||"";if(n){return c.issueFileCommand("OUTPUT",c.prepareKeyValueMessage(e,t))}process.stdout.write(u.EOL);a.issueCommand("set-output",{name:e},d.toCommandValue(t))}t.setOutput=setOutput;function setCommandEcho(e){a.issue("echo",e?"on":"off")}t.setCommandEcho=setCommandEcho;function setFailed(e){process.exitCode=m.Failure;error(e)}t.setFailed=setFailed;function isDebug(){return process.env["RUNNER_DEBUG"]==="1"Line truncated
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
var t;var n;var o;var r;var s;var i;var a;var c;var d;var u;var l;var p;var m;var f;var y;var g;var h;var E;var _;var v;var C;var S;var P;(function(t){var n=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:{};if(typeof define==="function"&&define.amd){define("tslib",["exports"],(function(e){t(createExporter(n,createExporter(e)))}))}else if(true&&typeof e.exports==="object"){t(createExporter(n,createExporter(e.exports)))}else{t(createExporter(n))}function createExporter(e,t){if(e!==n){if(typeof Object.create==="function"){Object.defineProperty(e,"__esModule",{value:true})}else{e.__esModule=true}}return function(n,o){return e[n]=t?t(n,o):o}}})((function(e){var b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)if(t.hasOwnProperty(n))e[n]=t[n]};t=function(e,t){b(e,t);function __(){this.constructor=e}e.prototype=t===null?Object.create(t):(__.prototype=t.prototype,new __)};n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++){t=arguments[n];for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r))e[r]=t[r]}return e};o=function(e,t){var n={};for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0)n[o]=e[o];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var r=0,o=Object.getOwnPropertySymbols(e);r<o.length;r++){if(t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r]))n[o[r]]=e[o[r]]}return n};r=function(e,t,n,o){var r=arguments.length,s=r<3?t:o===null?o=Object.getOwnPropertyDescriptor(t,n):o,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,t,n,o);else for(var a=e.length-1;a>=0;a--)if(i=e[a])s=(r<3?i(s):r>3?i(t,n,s):i(t,n))||s;return r>3&&s&&Object.defineProperty(t,n,s),s};s=function(e,t){return function(n,o){t(n,o,e)}};i=function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};a=function(e,t,n,o){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o["throw"](e))}catch(e){r(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((o=o.apply(e,t||[])).next())}))};c=function(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o,r,s,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(i){if(o)throw new TypeError("Generator is already executing.");while(n)try{if(o=1,r&&(s=i[0]&2?r["return"]:i[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,i[1])).done)return s;if(r=0,s)i=[i[0]&2,s.value];switch(i[0]){case 0:case 1:s=i;break;case 4:n.label++;return{value:i[1],done:false};case 5:n.label++;r=i[1];i=[0];continue;case 7:i=n.ops.pop();n.trys.pop();continue;default:if(!(s=n.trys,s=s.length>0&&s[s.length-1])&&(i[0]===6||i[0]===2)){n=0;continue}if(i[0]===3&&(!s||i[1]>s[0]&&i[1]<s[3])){n.label=i[1];break}if(i[0]===6&&n.label<s[1]){n.label=s[1];s=i;break}if(s&&n.label<s[2]){n.label=s[2];n.ops.push(i);break}if(s[2])n.ops.pop();n.trys.pop();continue}i=t.call(e,n)}catch(e){i=[6,e];r=0}finally{o=s=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};P=function(e,t,n,o){if(o===undefined)o=n;e[o]=t[n]};d=function(e,t){for(var n in e)if(n!=="default"&&!t.hasOwnProperty(n))t[n]=e[n]};u=function(e){var t=typeof Symbol==="function"&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&typeof e.length==="number")return{next:function(){if(e&&o>=e.length)e=void 0;return{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};l=function(e,t){var n=typeof Symbol==="function"&&e[Symbol.iterator];if(!n)return e;var o=n.call(e),r,s=[],i;try{while((t===void 0||t-- >0)&&!(r=o.next()).done)s.push(r.value)}catch(e){i={error:e}}finally{try{if(r&&!r.done&&(n=o["return"]))n.call(o)}finally{if(i)throw i.error}}return s};p=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(l(arguments[t]));return e};m=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var o=Array(e),r=0,t=0;t<n;t++)for(var s=arguments[t],i=0,a=s.length;i<a;i++,r++)o[r]=s[i];return o};f=function(e){return this instanceof f?(this.v=e,this):new f(e)};y=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o=n.apply(e,t||[]),r,s=[];return r={},verb("next"),verb("throw"),verb("return"),r[Symbol.asyncIterator]=function(){return this},r;function verb(e){if(o[e])r[e]=function(t){return new Promise((function(n,o){s.push([e,t,n,o])>1||resume(e,t)}))}}function resume(e,t){try{step(o[e](t))}catch(e){settle(s[0][3],e)}}function step(e){e.value instanceof f?Promise.resolve(e.value.v).then(fulfill,reject):seLine 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","defineProperty","enumerable","get","__setModuleDefault","v","value","__importStar","mod","__esModule","result","hasOwnProperty","call","exports","issue","issueCommand","os","__webpack_require__","utils_1","command","properties","message","cmd","Command","process","stdout","write","toString","EOL","name","CMD_STRING","constructor","cmdStr","keys","length","first","key","val","escapeProperty","escapeData","s","toCommandValue","replace","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","next","e","rejected","done","then","apply","getIDToken","getState","saveState","group","endGroup","startGroup","info","notice","warning","error","debug","isDebug","setFailed","setCommandEcho","setOutput","getBooleanInput","getMultilineInput","getInput","addPath","setSecret","exportVariable","ExitCode","command_1","file_command_1","path","oidc_utils_1","convertedVal","env","filePath","issueFileCommand","prepareKeyValueMessage","secret","inputPath","delimiter","options","toUpperCase","required","Error","trimWhitespace","trim","inputs","split","filter","x","map","input","trueValue","falseValue","includes","TypeError","enabled","exitCode","Failure","toCommandProperties","fn","aud","OidcClient","summary_1","summary","summary_2","markdownSummary","path_utils_1","toPosixPath","toWin32Path","toPlatformPath","fs","uuid_1","existsSync","appendFileSync","encoding","v4","convertedValue","http_client_1","auth_1","core_1","createHttpClient","allowRetry","maxRetry","requestOptions","allowRetries","maxRetries","HttpClient","BearerCredentialHandler","getRequestToken","token","getIDTokenUrl","runtimeUrl","getCall","id_token_url","_a","httpclient","res","getJson","catch","statusCode","id_token","audience","encodedAudience","encodeURIComponent","pth","sep","SUMMARY_DOCS_URL","SUMMARY_ENV_VAR","os_1","fs_1","access","appendFile","writeFile","promises","Summary","_buffer","_filePath","pathFromEnv","constants","R_OK","W_OK","wrap","tag","content","attrs","htmlAttrs","entries","join","overwrite","writeFunc","emptyBuffer","clear","stringify","isEmptyBuffer","addRaw","text","addEOL","addCodeBlock","code","lang","assign","element","addList","items","ordered","listItems","item","addTable","rows","tableBody","row","cells","cell","header","data","colspan","rowspan","addDetails","label","addImage","src","alt","width","height","addHeading","level","allowedTag","addSeparator","addBreak","addQuote","cite","addLink","href","_summary","String","JSON","annotationProperties","title","file","line","startLine","endLine","col","startColumn","endColumn","getExecOutput","exec","string_decoder_1","tr","commandLine","args","commandArgs","argStringToArray","toolPath","slice","concat","runner","ToolRunner","_b","stderr","stdoutDecoder","StringDecoder","stderrDecoder","originalStdoutListener","listeners","originalStdErrListener","stdErrListener","stdOutListener","end","events","child","io","ioUtil","timers_1","IS_WINDOWS","platform","EventEmitter","super","_debug","_getCommandString","noPrefix","_getSpawnFileName","_getSpawnArgs","_isCmdFile","a","windowsVerbatimArguments","_windowsQuoteCmdArg","_processLineBuffer","strBuffer","onLine","n","indexOf","substring","err","argline","_endsWith","str","endsWith","upperToolPath","arg","_uvQuoteCmdArg","cmdSpecialChars","needsQuotes","char","some","reverse","quoteHit","i","_cloneExecOptions","cwd","silent","failOnStdErr","ignoreReturnCode","delay","outStream","errStream","_getSpawnOptions","argv0","isRooted","which","optionsNonNull","state","ExecState","on","exists","fileName","cp","spawn","stdbuffer","stdline","errbuffer","processStderr","errline","processError","processExited","processClosed","CheckComplete","processExitCode","emit","removeAllListeners","stdin","argString","inQuotes","escaped","append","c","charAt","push","timeout","_setResult","setTimeout","HandleTimeout","clearTimeout","PersonalAccessTokenCredentialHandler","BasicCredentialHandler","username","password","prepareRequest","headers","Buffer","from","canHandleAuthentication","handleAuthentication","isHttps","HttpClientResponse","HttpClientError","getProxyUrl","MediaTypes","Headers","HttpCodes","http","https","pm","tunnel","serverUrl","proxyUrl","URL","HttpRedirectCodes","MovedPermanently","ResourceMoved","SeeOther","TemporaryRedirect","PermanentRedirect","HttpResponseRetryCodes","BadGateway","ServiceUnavailable","GatewayTimeout","RetryableHttpVerbs","ExponentialBackoffCeiling","ExponentialBackoffTimeSlice","setPrototypeOf","prototype","readBody","output","alloc","chunk","readBodyBuffer","chunks","requestUrl","parsedUrl","protocol","userAgent","handlers","_ignoreSslError","_allowRedirects","_allowRedirectDowngrade","_maxRedirects","_allowRetries","_maxRetries","_keepAlive","_disposed","ignoreSslError","_socketTimeout","socketTimeout","allowRedirects","allowRedirectDowngrade","maxRedirects","Math","maLine truncated
Generated Vendored
+5181 -10930
View File
File diff suppressed because it is too large. Load diff
Generated Vendored
-1
View File
@@ -1 +0,0 @@
(()=>{var e={650:e=>{var r=Object.prototype.toString;var n=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},274:(e,r,n)=>{var t=n(339);var o=Object.prototype.hasOwnProperty;var i=typeof Map!=="undefined";function ArraySet(){this._array=[];this._set=i?new Map:Object.create(null)}ArraySet.fromArray=function ArraySet_fromArray(e,r){var n=new ArraySet;for(var t=0,o=e.length;t<o;t++){n.add(e[t],r)}return n};ArraySet.prototype.size=function ArraySet_size(){return i?this._set.size:Object.getOwnPropertyNames(this._set).length};ArraySet.prototype.add=function ArraySet_add(e,r){var n=i?e:t.toSetString(e);var a=i?this.has(e):o.call(this._set,n);var u=this._array.length;if(!a||r){this._array.push(e)}if(!a){if(i){this._set.set(e,u)}else{this._set[n]=u}}};ArraySet.prototype.has=function ArraySet_has(e){if(i){return this._set.has(e)}else{var r=t.toSetString(e);return o.call(this._set,r)}};ArraySet.prototype.indexOf=function ArraySet_indexOf(e){if(i){var r=this._set.get(e);if(r>=0){return r}}else{var n=t.toSetString(e);if(o.call(this._set,n)){return this._set[n]}}throw new Error('"'+e+'" is not in the set.')};ArraySet.prototype.at=function ArraySet_at(e){if(e>=0&&e<this._array.length){return this._array[e]}throw new Error("No element indexed by "+e)};ArraySet.prototype.toArray=function ArraySet_toArray(){return this._array.slice()};r.I=ArraySet},449:(e,r,n)=>{var t=n(190);var o=5;var i=1<<o;var a=i-1;var u=i;function toVLQSigned(e){return e<0?(-e<<1)+1:(e<<1)+0}function fromVLQSigned(e){var r=(e&1)===1;var n=e>>1;return r?-n:n}r.encode=function base64VLQ_encode(e){var r="";var n;var i=toVLQSigned(e);do{n=i&a;i>>>=o;if(i>0){n|=u}r+=t.encode(n)}while(i>0);return r};r.decode=function base64VLQ_decode(e,r,n){var i=e.length;var s=0;var l=0;var c,p;do{if(r>=i){throw new Error("Expected more digits in base 64 VLQ value.")}p=t.decode(e.charCodeAt(r++));if(p===-1){throw new Error("Invalid base64 digit: "+e.charAt(r-1))}c=!!(p&u);p&=a;s=s+(p<<l);l+=o}while(c);n.value=fromVLQSigned(s);n.rest=r}},190:(e,r)=>{var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");r.encode=function(e){if(0<=e&&e<n.length){return n[e]}throw new TypeError("Must be between 0 and 63: "+e)};r.decode=function(e){var r=65;var n=90;var t=97;var o=122;var i=48;var a=57;var u=43;var s=47;var l=26;var c=52;if(r<=e&&e<=n){return e-r}if(t<=e&&e<=o){return e-t+l}if(i<=e&&e<=a){return e-i+c}if(e==u){return 62}if(e==s){return 63}return-1}},345:(e,r)=>{r.GREATEST_LOWER_BOUND=1;r.LEAST_UPPER_BOUND=2;function recursiveSearch(e,n,t,o,i,a){var u=Math.floor((n-e)/2)+e;var s=i(t,o[u],true);if(s===0){return u}else if(s>0){if(n-u>1){return recursiveSearch(u,n,t,o,i,a)}if(a==r.LEAST_UPPER_BOUND){return n<o.length?n:-1}else{return u}}else{if(u-e>1){return recursiveSearch(e,u,t,o,i,a)}if(a==r.LEAST_UPPER_BOUND){return u}else{return e<0?-1:e}}}r.search=function search(e,n,t,o){if(n.length===0){return-1}var i=recursiveSearch(-1,n.length,e,n,t,o||r.GREATEST_LOWER_BOUND);if(i<0){return-1}while(i-1>=0){if(t(n[i],n[i-1],true)!==0){break}--i}return i}},680:(e,r,n)=>{var t=n(339);function generatedPositionAfter(e,r){var n=e.generatedLine;var o=r.generatedLine;var i=e.generatedColumn;var a=r.generatedColumn;return o>n||o==n&&a>=i||t.compareByGeneratedPositionsInflated(e,r)<=0}function MappingList(){this._array=[];this._sorted=true;this._last={generatedLine:-1,generatedColumn:0}}MappingList.prototype.unsortedForEach=function MappingList_forEach(e,r){this._array.forEach(e,r)};MappingList.prototype.add=function MappingList_add(e){if(generatedPositionAfter(this._last,e)){this._last=e;this._array.push(e)}else{this._sorted=false;this._array.push(e)}};MappingList.prototype.toArray=function MappingList_toArray(){if(!this._sorted){this._array.sort(t.compareByGeneratedPositionsInflated);this._sorted=true}return this._array};r.H=MappingList},758:(e,r)=>{function swap(e,r,n){var t=e[r];e[r]=e[n];e[n]=t}function randomIntInRange(e,r){return Math.round(e+Math.random()*(r-e))}function doQuickSort(e,r,n,t){if(n<t){var o=randomIntInRange(n,t);var i=n-1;swap(e,o,t);var a=e[t];for(var u=n;u<t;u++){if(r(e[u],Line truncated
+15 -2
View File
@@ -1,9 +1,15 @@
target "_common" {
args = {
BUILDKIT_CONTEXT_KEEP_GIT_DIR = 1
}
}
group "default" {
targets = ["build"]
}
group "pre-checkin" {
targets = ["vendor-update", "format", "build"]
targets = ["vendor", "format", "build"]
}
group "validate" {
@@ -11,42 +17,49 @@ group "validate" {
}
target "build" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "build-update"
output = ["."]
}
target "build-validate" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "build-validate"
output = ["type=cacheonly"]
}
target "format" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "format-update"
output = ["."]
}
target "lint" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "lint"
output = ["type=cacheonly"]
}
target "vendor-update" {
target "vendor" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "vendor-update"
output = ["."]
}
target "vendor-validate" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "vendor-validate"
output = ["type=cacheonly"]
}
target "test" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "test-coverage"
output = ["./coverage"]
+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,17 +1,14 @@
{
"name": "docker-login",
"description": "GitHub Action to login against a Docker registry",
"main": "lib/main.js",
"type": "module",
"main": "src/main.ts",
"scripts": {
"build": "ncc build src/main.ts --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",
"all": "yarn run build && yarn run format && yarn test"
"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",
@@ -24,27 +21,32 @@
],
"author": "Docker Inc.",
"license": "Apache-2.0",
"packageManager": "yarn@4.15.0",
"dependencies": {
"@actions/core": "^1.10.1",
"@aws-sdk/client-ecr": "^3.410.0",
"@aws-sdk/client-ecr-public": "^3.410.0",
"@docker/actions-toolkit": "^0.12.0",
"http-proxy-agent": "^7.0.0",
"https-proxy-agent": "^7.0.2"
"@actions/core": "^3.0.1",
"@aws-sdk/client-ecr": "^3.1077.0",
"@aws-sdk/client-ecr-public": "^3.1077.0",
"@docker/actions-toolkit": "^0.92.0",
"http-proxy-agent": "^9.1.0",
"https-proxy-agent": "^9.1.0",
"js-yaml": "^5.2.0"
},
"devDependencies": {
"@types/node": "^20.5.9",
"@typescript-eslint/eslint-plugin": "^6.6.0",
"@typescript-eslint/parser": "^6.6.0",
"@vercel/ncc": "^0.38.0",
"eslint": "^8.48.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-jest": "^27.2.3",
"eslint-plugin-prettier": "^5.0.0",
"jest": "^29.6.4",
"prettier": "^3.0.3",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.1",
"typescript": "^5.2.2"
"@eslint/js": "^9.39.3",
"@types/js-yaml": "^4.0.9",
"@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"
}
}
+4 -3
View File
@@ -5,14 +5,15 @@ import {NodeHttpHandler} from '@smithy/node-http-handler';
import {HttpProxyAgent} from 'http-proxy-agent';
import {HttpsProxyAgent} from 'https-proxy-agent';
const ecrRegistryRegex = /^(([0-9]{12})\.dkr\.ecr\.(.+)\.amazonaws\.com(.cn)?)(\/([^:]+)(:.+)?)?$/;
const ecrRegistryRegex = /^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/;
const ecrPublicRegistryRegex = /public\.ecr\.aws|ecr-public\.aws\.com/;
export const isECR = (registry: string): boolean => {
return ecrRegistryRegex.test(registry) || isPubECR(registry);
};
export const isPubECR = (registry: string): boolean => {
return registry === 'public.ecr.aws';
return ecrPublicRegistryRegex.test(registry);
};
export const getRegion = (registry: string): string => {
@@ -23,7 +24,7 @@ export const getRegion = (registry: string): string => {
if (!matches) {
return '';
}
return matches[3];
return matches[4];
};
export const getAccountIDs = (registry: string): string[] => {
+76 -1
View File
@@ -1,11 +1,27 @@
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.js';
import {Util} from '@docker/actions-toolkit/lib/util.js';
export interface Inputs {
registry: string;
username: string;
password: string;
scope: string;
ecr: string;
logout: boolean;
registryAuth: string;
}
export interface Auth {
registry: string;
username: string;
password: string;
scope: string;
ecr: string;
configDir: string;
}
export function getInputs(): Inputs {
@@ -13,7 +29,66 @@ export function getInputs(): Inputs {
registry: core.getInput('registry'),
username: core.getInput('username'),
password: core.getInput('password'),
scope: core.getInput('scope'),
ecr: core.getInput('ecr'),
logout: core.getBooleanInput('logout')
logout: core.getBooleanInput('logout'),
registryAuth: core.getInput('registry-auth')
};
}
export function getAuthList(inputs: Inputs): Array<Auth> {
if (inputs.registryAuth && (inputs.registry || inputs.username || inputs.password || inputs.scope || inputs.ecr)) {
throw new Error('Cannot use registry-auth with other inputs');
}
let auths: Array<Auth> = [];
if (!inputs.registryAuth) {
const registry = inputs.registry || 'docker.io';
auths.push({
registry,
username: inputs.username,
password: inputs.password,
scope: inputs.scope,
ecr: inputs.ecr || 'auto',
configDir: scopeToConfigDir(registry, inputs.scope)
});
} else {
auths = (yaml.load(inputs.registryAuth) as Array<Auth>).map(auth => {
if (auth.password) {
core.setSecret(auth.password); // redacted in workflow logs
}
const registry = auth.registry || 'docker.io';
return {
registry,
username: auth.username,
password: auth.password,
scope: auth.scope,
ecr: auth.ecr || 'auto',
configDir: scopeToConfigDir(registry, auth.scope)
};
});
}
if (auths.length == 0) {
throw new Error('No registry to login');
}
return auths;
}
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);
}
return configDir;
}
function scopeDisabled(): boolean {
if (process.env.DOCKER_LOGIN_SCOPE_DISABLED) {
return Util.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED);
}
return false;
}
+57 -41
View File
@@ -1,18 +1,31 @@
import * as aws from './aws';
import * as core from '@actions/core';
import {Exec} from '@docker/actions-toolkit/lib/exec';
export async function login(registry: string, username: string, password: string, ecr: string): Promise<void> {
if (/true/i.test(ecr) || (ecr == 'auto' && aws.isECR(registry))) {
await loginECR(registry, username, password);
import {Docker} from '@docker/actions-toolkit/lib/docker/docker.js';
import * as aws from './aws.js';
import * as context from './context.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(registry, username, password);
await loginStandard(auth.registry, auth.username, auth.password, auth.scope);
}
}
export async function logout(registry: string): Promise<void> {
await Exec.getExecOutput('docker', ['logout', registry], {
ignoreReturnCode: true
export async function logout(registry: string, configDir: string): Promise<void> {
let envs: {[key: string]: string} | undefined;
if (configDir !== '') {
envs = Object.assign({}, process.env, {
DOCKER_CONFIG: configDir
}) as {
[key: string]: string;
};
core.info(`Alternative config dir: ${configDir}`);
}
await Docker.getExecOutput(['logout', registry], {
ignoreReturnCode: true,
env: envs
}).then(res => {
if (res.stderr.length > 0 && res.exitCode != 0) {
core.warning(res.stderr.trim());
@@ -20,46 +33,49 @@ export async function logout(registry: string): Promise<void> {
});
}
export async function loginStandard(registry: string, username: string, password: string): Promise<void> {
if (!username || !password) {
export async function loginStandard(registry: string, username: string, password: string, scope?: string): Promise<void> {
if (!username && !password) {
throw new Error('Username and password required');
}
const loginArgs: Array<string> = ['login', '--password-stdin'];
loginArgs.push('--username', username);
loginArgs.push(registry);
if (registry) {
core.info(`Logging into ${registry}...`);
} else {
core.info(`Logging into Docker Hub...`);
if (!username) {
throw new Error('Username required');
}
await Exec.getExecOutput('docker', loginArgs, {
if (!password) {
throw new Error('Password required');
}
await loginExec(registry, username, password, scope);
}
export async function loginECR(registry: string, username: string, password: string, scope?: string): Promise<void> {
core.info(`Retrieving registries data through AWS SDK...`);
const regDatas = await aws.getRegistriesData(registry, username, password);
for (const regData of regDatas) {
await loginExec(regData.registry, regData.username, regData.password, scope);
}
}
async function loginExec(registry: string, username: string, password: string, scope?: string): Promise<void> {
let envs: {[key: string]: string} | undefined;
const configDir = context.scopeToConfigDir(registry, scope);
if (configDir !== '') {
envs = Object.assign({}, process.env, {
DOCKER_CONFIG: configDir
}) as {
[key: string]: string;
};
core.info(`Logging into ${registry} (scope ${scope})...`);
} else {
core.info(`Logging into ${registry}...`);
}
await Docker.getExecOutput(['login', '--password-stdin', '--username', username, registry], {
ignoreReturnCode: true,
silent: true,
input: Buffer.from(password)
input: Buffer.from(password),
env: envs
}).then(res => {
if (res.stderr.length > 0 && res.exitCode != 0) {
throw new Error(res.stderr.trim());
}
core.info(`Login Succeeded!`);
core.info('Login Succeeded!');
});
}
export async function loginECR(registry: string, username: string, password: string): Promise<void> {
core.info(`Retrieving registries data through AWS SDK...`);
const regDatas = await aws.getRegistriesData(registry, username, password);
for (const regData of regDatas) {
core.info(`Logging into ${regData.registry}...`);
await Exec.getExecOutput('docker', ['login', '--password-stdin', '--username', regData.username, regData.registry], {
ignoreReturnCode: true,
silent: true,
input: Buffer.from(regData.password)
}).then(res => {
if (res.stderr.length > 0 && res.exitCode != 0) {
throw new Error(res.stderr.trim());
}
core.info('Login Succeeded!');
});
}
}
+25 -8
View File
@@ -1,21 +1,38 @@
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 input: context.Inputs = context.getInputs();
stateHelper.setRegistry(input.registry);
stateHelper.setLogout(input.logout);
await docker.login(input.registry, input.username, input.password, input.ecr);
const inputs: context.Inputs = context.getInputs();
stateHelper.setLogout(inputs.logout);
const auths = context.getAuthList(inputs);
stateHelper.setRegistries(Array.from(new Map(auths.map(auth => [`${auth.registry}|${auth.configDir}`, {registry: auth.registry, configDir: auth.configDir} as stateHelper.RegistryState])).values()));
if (auths.length === 1) {
await docker.login(auths[0]);
return;
}
for (const auth of auths) {
await core.group(`Login to ${auth.registry}`, async () => {
await docker.login(auth);
});
}
}
async function post(): Promise<void> {
if (!stateHelper.logout) {
return;
}
await docker.logout(stateHelper.registry);
for (const registryState of stateHelper.registries) {
await core.group(`Logout from ${registryState.registry}`, async () => {
await docker.logout(registryState.registry, registryState.configDir);
});
}
}
actionsToolkit.run(main, post);
+8 -3
View File
@@ -1,10 +1,15 @@
import * as core from '@actions/core';
export const registry = process.env['STATE_registry'] || '';
export const registries = process.env['STATE_registries'] ? (JSON.parse(process.env['STATE_registries']) as Array<RegistryState>) : [];
export const logout = /true/i.test(process.env['STATE_logout'] || '');
export function setRegistry(registry: string) {
core.saveState('registry', registry);
export interface RegistryState {
registry: string;
configDir: string;
}
export function setRegistries(registries: Array<RegistryState>) {
core.saveState('registries', JSON.stringify(registries));
}
export function setLogout(logout: boolean) {
+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']
}
}
});
+6581 -4953
View File
File diff suppressed because it is too large. Load diff