From 339a3558a78fda08c48ec62414778a32f9f95603 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Wed, 14 Aug 2024 15:39:55 -0700 Subject: [PATCH] deps(validator): Update bids-validator to 1.14.8 --- .pnp.cjs | 2737 +- packages/openneuro-app/package.json | 3 +- .../src/scripts/utils/schema-validator.js | 99729 +++++++++++++++- packages/openneuro-app/vite.config.js | 4 +- packages/openneuro-cli/package.json | 2 +- .../datalad_service/tasks/validator.py | 2 +- services/datalad/package.json | 2 +- services/datalad/yarn.lock | 2657 +- yarn.lock | 2607 +- 9 files changed, 98283 insertions(+), 9460 deletions(-) diff --git a/.pnp.cjs b/.pnp.cjs index 9ba2bfbf7..4c2af30b8 100644 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -777,25 +777,25 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-crypto/crc32", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-crc32-npm-3.0.0-10d83e85b0-672d593fd9.zip/node_modules/@aws-crypto/crc32/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-crc32-npm-5.2.0-a834040f6d-1b0a56ad4c.zip/node_modules/@aws-crypto/crc32/",\ "packageDependencies": [\ - ["@aws-crypto/crc32", "npm:3.0.0"],\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/crc32", "npm:5.2.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ - ["tslib", "npm:1.14.1"]\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@aws-crypto/crc32c", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-crc32c-npm-3.0.0-79c813b90d-3e604ad7a8.zip/node_modules/@aws-crypto/crc32c/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-crc32c-npm-5.2.0-e4a77c7012-08bd1db17d.zip/node_modules/@aws-crypto/crc32c/",\ "packageDependencies": [\ - ["@aws-crypto/crc32c", "npm:3.0.0"],\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/crc32c", "npm:5.2.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ - ["tslib", "npm:1.14.1"]\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -808,28 +808,19 @@ const RAW_RUNTIME_STATE = ["tslib", "npm:1.14.1"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-ie11-detection-npm-3.0.0-71f24dcf6a-f5aee4a11a.zip/node_modules/@aws-crypto/ie11-detection/",\ - "packageDependencies": [\ - ["@aws-crypto/ie11-detection", "npm:3.0.0"],\ - ["tslib", "npm:1.14.1"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["@aws-crypto/sha1-browser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-sha1-browser-npm-3.0.0-f8218a7691-8c30fa1e42.zip/node_modules/@aws-crypto/sha1-browser/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-sha1-browser-npm-5.2.0-1973da1a70-239f4c59cc.zip/node_modules/@aws-crypto/sha1-browser/",\ "packageDependencies": [\ - ["@aws-crypto/sha1-browser", "npm:3.0.0"],\ - ["@aws-crypto/ie11-detection", "npm:3.0.0"],\ - ["@aws-crypto/supports-web-crypto", "npm:3.0.0"],\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/sha1-browser", "npm:5.2.0"],\ + ["@aws-crypto/supports-web-crypto", "npm:5.2.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ ["@aws-sdk/util-locate-window", "npm:3.32.0"],\ - ["@aws-sdk/util-utf8-browser", "npm:3.32.0"],\ - ["tslib", "npm:1.14.1"]\ + ["@smithy/util-utf8", "npm:2.3.0"],\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -850,18 +841,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-sha256-browser-npm-3.0.0-467f48a447-4e075906c4.zip/node_modules/@aws-crypto/sha256-browser/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-sha256-browser-npm-5.2.0-5e8b02b82a-2b1b701ca6.zip/node_modules/@aws-crypto/sha256-browser/",\ "packageDependencies": [\ - ["@aws-crypto/sha256-browser", "npm:3.0.0"],\ - ["@aws-crypto/ie11-detection", "npm:3.0.0"],\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-crypto/supports-web-crypto", "npm:3.0.0"],\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/sha256-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-crypto/supports-web-crypto", "npm:5.2.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ ["@aws-sdk/util-locate-window", "npm:3.32.0"],\ - ["@aws-sdk/util-utf8-browser", "npm:3.32.0"],\ - ["tslib", "npm:1.14.1"]\ + ["@smithy/util-utf8", "npm:2.3.0"],\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -887,13 +877,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-sha256-js-npm-3.0.0-2ba1013fd6-f9fc2d5163.zip/node_modules/@aws-crypto/sha256-js/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-sha256-js-npm-5.2.0-fbe0f9fbf6-f46aace7b8.zip/node_modules/@aws-crypto/sha256-js/",\ "packageDependencies": [\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ - ["tslib", "npm:1.14.1"]\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -907,11 +897,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-supports-web-crypto-npm-3.0.0-55222d294a-8a48788d28.zip/node_modules/@aws-crypto/supports-web-crypto/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-supports-web-crypto-npm-5.2.0-37acf6e569-6ed0c7e17f.zip/node_modules/@aws-crypto/supports-web-crypto/",\ "packageDependencies": [\ - ["@aws-crypto/supports-web-crypto", "npm:3.0.0"],\ - ["tslib", "npm:1.14.1"]\ + ["@aws-crypto/supports-web-crypto", "npm:5.2.0"],\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -927,13 +917,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@aws-crypto-util-npm-3.0.0-6c4b38c78e-92c835b83d.zip/node_modules/@aws-crypto/util/",\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@aws-crypto-util-npm-5.2.0-67e90fb04c-f80a174c40.zip/node_modules/@aws-crypto/util/",\ "packageDependencies": [\ - ["@aws-crypto/util", "npm:3.0.0"],\ + ["@aws-crypto/util", "npm:5.2.0"],\ ["@aws-sdk/types", "npm:3.410.0"],\ - ["@aws-sdk/util-utf8-browser", "npm:3.32.0"],\ - ["tslib", "npm:1.14.1"]\ + ["@smithy/util-utf8", "npm:2.3.0"],\ + ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -994,67 +984,67 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/client-s3", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-client-s3-npm-3.575.0-9bd6a5266c-d44c44fd7b.zip/node_modules/@aws-sdk/client-s3/",\ - "packageDependencies": [\ - ["@aws-sdk/client-s3", "npm:3.575.0"],\ - ["@aws-crypto/sha1-browser", "npm:3.0.0"],\ - ["@aws-crypto/sha256-browser", "npm:3.0.0"],\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-sdk/client-sso-oidc", "npm:3.575.0"],\ - ["@aws-sdk/client-sts", "npm:3.575.0"],\ - ["@aws-sdk/core", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-node", "npm:3.575.0"],\ - ["@aws-sdk/middleware-bucket-endpoint", "npm:3.575.0"],\ - ["@aws-sdk/middleware-expect-continue", "npm:3.575.0"],\ - ["@aws-sdk/middleware-flexible-checksums", "npm:3.575.0"],\ - ["@aws-sdk/middleware-host-header", "npm:3.575.0"],\ - ["@aws-sdk/middleware-location-constraint", "npm:3.575.0"],\ - ["@aws-sdk/middleware-logger", "npm:3.575.0"],\ - ["@aws-sdk/middleware-recursion-detection", "npm:3.575.0"],\ - ["@aws-sdk/middleware-sdk-s3", "npm:3.575.0"],\ - ["@aws-sdk/middleware-signing", "npm:3.575.0"],\ - ["@aws-sdk/middleware-ssec", "npm:3.575.0"],\ - ["@aws-sdk/middleware-user-agent", "npm:3.575.0"],\ - ["@aws-sdk/region-config-resolver", "npm:3.575.0"],\ - ["@aws-sdk/signature-v4-multi-region", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-browser", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-node", "virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0"],\ - ["@aws-sdk/xml-builder", "npm:3.575.0"],\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/eventstream-serde-browser", "npm:3.0.0"],\ - ["@smithy/eventstream-serde-config-resolver", "npm:3.0.0"],\ - ["@smithy/eventstream-serde-node", "npm:3.0.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/hash-blob-browser", "npm:3.0.0"],\ - ["@smithy/hash-node", "npm:3.0.0"],\ - ["@smithy/hash-stream-node", "npm:3.0.0"],\ - ["@smithy/invalid-dependency", "npm:3.0.0"],\ - ["@smithy/md5-js", "npm:3.0.0"],\ - ["@smithy/middleware-content-length", "npm:3.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-client-s3-npm-3.631.0-f37140f742-555b6398ae.zip/node_modules/@aws-sdk/client-s3/",\ + "packageDependencies": [\ + ["@aws-sdk/client-s3", "npm:3.631.0"],\ + ["@aws-crypto/sha1-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-sdk/client-sso-oidc", "virtual:23fb74e99014e890d484a8e1c9e982aa45a7043a31ef25336cda1b3b1abe6481d9c3b91cc135f5caba5dc59f342cbbb6f4d4bf5fe8fe07f207c66603fabbc078#npm:3.631.0"],\ + ["@aws-sdk/client-sts", "npm:3.631.0"],\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@aws-sdk/credential-provider-node", "npm:3.631.0"],\ + ["@aws-sdk/middleware-bucket-endpoint", "npm:3.620.0"],\ + ["@aws-sdk/middleware-expect-continue", "npm:3.620.0"],\ + ["@aws-sdk/middleware-flexible-checksums", "npm:3.620.0"],\ + ["@aws-sdk/middleware-host-header", "npm:3.620.0"],\ + ["@aws-sdk/middleware-location-constraint", "npm:3.609.0"],\ + ["@aws-sdk/middleware-logger", "npm:3.609.0"],\ + ["@aws-sdk/middleware-recursion-detection", "npm:3.620.0"],\ + ["@aws-sdk/middleware-sdk-s3", "npm:3.629.0"],\ + ["@aws-sdk/middleware-ssec", "npm:3.609.0"],\ + ["@aws-sdk/middleware-user-agent", "npm:3.631.0"],\ + ["@aws-sdk/region-config-resolver", "npm:3.614.0"],\ + ["@aws-sdk/signature-v4-multi-region", "npm:3.629.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@aws-sdk/util-user-agent-browser", "npm:3.609.0"],\ + ["@aws-sdk/util-user-agent-node", "virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0"],\ + ["@aws-sdk/xml-builder", "npm:3.609.0"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/eventstream-serde-browser", "npm:3.0.6"],\ + ["@smithy/eventstream-serde-config-resolver", "npm:3.0.3"],\ + ["@smithy/eventstream-serde-node", "npm:3.0.5"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/hash-blob-browser", "npm:3.1.2"],\ + ["@smithy/hash-node", "npm:3.0.3"],\ + ["@smithy/hash-stream-node", "npm:3.1.2"],\ + ["@smithy/invalid-dependency", "npm:3.0.3"],\ + ["@smithy/md5-js", "npm:3.0.3"],\ + ["@smithy/middleware-content-length", "npm:3.0.5"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["@smithy/util-body-length-browser", "npm:3.0.0"],\ ["@smithy/util-body-length-node", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-browser", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-node", "npm:3.0.0"],\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ - ["@smithy/util-retry", "npm:3.0.0"],\ - ["@smithy/util-stream", "npm:3.0.0"],\ + ["@smithy/util-defaults-mode-browser", "npm:3.0.14"],\ + ["@smithy/util-defaults-mode-node", "npm:3.0.14"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ + ["@smithy/util-stream", "npm:3.1.3"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ - ["@smithy/util-waiter", "npm:3.0.0"],\ + ["@smithy/util-waiter", "npm:3.1.2"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1100,46 +1090,46 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-client-sso-npm-3.575.0-e040dbdfd8-38957b3cac.zip/node_modules/@aws-sdk/client-sso/",\ - "packageDependencies": [\ - ["@aws-sdk/client-sso", "npm:3.575.0"],\ - ["@aws-crypto/sha256-browser", "npm:3.0.0"],\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-sdk/core", "npm:3.575.0"],\ - ["@aws-sdk/middleware-host-header", "npm:3.575.0"],\ - ["@aws-sdk/middleware-logger", "npm:3.575.0"],\ - ["@aws-sdk/middleware-recursion-detection", "npm:3.575.0"],\ - ["@aws-sdk/middleware-user-agent", "npm:3.575.0"],\ - ["@aws-sdk/region-config-resolver", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-browser", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-node", "virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0"],\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/hash-node", "npm:3.0.0"],\ - ["@smithy/invalid-dependency", "npm:3.0.0"],\ - ["@smithy/middleware-content-length", "npm:3.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-client-sso-npm-3.631.0-c92b67efb3-99b8bc8191.zip/node_modules/@aws-sdk/client-sso/",\ + "packageDependencies": [\ + ["@aws-sdk/client-sso", "npm:3.631.0"],\ + ["@aws-crypto/sha256-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@aws-sdk/middleware-host-header", "npm:3.620.0"],\ + ["@aws-sdk/middleware-logger", "npm:3.609.0"],\ + ["@aws-sdk/middleware-recursion-detection", "npm:3.620.0"],\ + ["@aws-sdk/middleware-user-agent", "npm:3.631.0"],\ + ["@aws-sdk/region-config-resolver", "npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@aws-sdk/util-user-agent-browser", "npm:3.609.0"],\ + ["@aws-sdk/util-user-agent-node", "virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/hash-node", "npm:3.0.3"],\ + ["@smithy/invalid-dependency", "npm:3.0.3"],\ + ["@smithy/middleware-content-length", "npm:3.0.5"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["@smithy/util-body-length-browser", "npm:3.0.0"],\ ["@smithy/util-body-length-node", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-browser", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-node", "npm:3.0.0"],\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["@smithy/util-retry", "npm:3.0.0"],\ + ["@smithy/util-defaults-mode-browser", "npm:3.0.14"],\ + ["@smithy/util-defaults-mode-node", "npm:3.0.14"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1186,51 +1176,63 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-client-sso-oidc-npm-3.575.0-899296fcf2-98cc6f5718.zip/node_modules/@aws-sdk/client-sso-oidc/",\ - "packageDependencies": [\ - ["@aws-sdk/client-sso-oidc", "npm:3.575.0"],\ - ["@aws-crypto/sha256-browser", "npm:3.0.0"],\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-sdk/client-sts", "npm:3.575.0"],\ - ["@aws-sdk/core", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-node", "npm:3.575.0"],\ - ["@aws-sdk/middleware-host-header", "npm:3.575.0"],\ - ["@aws-sdk/middleware-logger", "npm:3.575.0"],\ - ["@aws-sdk/middleware-recursion-detection", "npm:3.575.0"],\ - ["@aws-sdk/middleware-user-agent", "npm:3.575.0"],\ - ["@aws-sdk/region-config-resolver", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-browser", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-node", "virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0"],\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/hash-node", "npm:3.0.0"],\ - ["@smithy/invalid-dependency", "npm:3.0.0"],\ - ["@smithy/middleware-content-length", "npm:3.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-client-sso-oidc-npm-3.631.0-08ee2a2e3a-29d5138b03.zip/node_modules/@aws-sdk/client-sso-oidc/",\ + "packageDependencies": [\ + ["@aws-sdk/client-sso-oidc", "npm:3.631.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:23fb74e99014e890d484a8e1c9e982aa45a7043a31ef25336cda1b3b1abe6481d9c3b91cc135f5caba5dc59f342cbbb6f4d4bf5fe8fe07f207c66603fabbc078#npm:3.631.0", {\ + "packageLocation": "./.yarn/__virtual__/@aws-sdk-client-sso-oidc-virtual-70add649bc/0/cache/@aws-sdk-client-sso-oidc-npm-3.631.0-08ee2a2e3a-29d5138b03.zip/node_modules/@aws-sdk/client-sso-oidc/",\ + "packageDependencies": [\ + ["@aws-sdk/client-sso-oidc", "virtual:23fb74e99014e890d484a8e1c9e982aa45a7043a31ef25336cda1b3b1abe6481d9c3b91cc135f5caba5dc59f342cbbb6f4d4bf5fe8fe07f207c66603fabbc078#npm:3.631.0"],\ + ["@aws-crypto/sha256-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-sdk/client-sts", "npm:3.631.0"],\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@aws-sdk/credential-provider-node", "npm:3.631.0"],\ + ["@aws-sdk/middleware-host-header", "npm:3.620.0"],\ + ["@aws-sdk/middleware-logger", "npm:3.609.0"],\ + ["@aws-sdk/middleware-recursion-detection", "npm:3.620.0"],\ + ["@aws-sdk/middleware-user-agent", "npm:3.631.0"],\ + ["@aws-sdk/region-config-resolver", "npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@aws-sdk/util-user-agent-browser", "npm:3.609.0"],\ + ["@aws-sdk/util-user-agent-node", "virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/hash-node", "npm:3.0.3"],\ + ["@smithy/invalid-dependency", "npm:3.0.3"],\ + ["@smithy/middleware-content-length", "npm:3.0.5"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["@smithy/util-body-length-browser", "npm:3.0.0"],\ ["@smithy/util-body-length-node", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-browser", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-node", "npm:3.0.0"],\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["@smithy/util-retry", "npm:3.0.0"],\ + ["@smithy/util-defaults-mode-browser", "npm:3.0.14"],\ + ["@smithy/util-defaults-mode-node", "npm:3.0.14"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ + ["@types/aws-sdk__client-sts", null],\ ["tslib", "npm:2.6.2"]\ ],\ + "packagePeers": [\ + "@aws-sdk/client-sts",\ + "@types/aws-sdk__client-sts"\ + ],\ "linkType": "HARD"\ }]\ ]],\ @@ -1278,48 +1280,48 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-client-sts-npm-3.575.0-1685c18ede-d37e4ac232.zip/node_modules/@aws-sdk/client-sts/",\ - "packageDependencies": [\ - ["@aws-sdk/client-sts", "npm:3.575.0"],\ - ["@aws-crypto/sha256-browser", "npm:3.0.0"],\ - ["@aws-crypto/sha256-js", "npm:3.0.0"],\ - ["@aws-sdk/client-sso-oidc", "npm:3.575.0"],\ - ["@aws-sdk/core", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-node", "npm:3.575.0"],\ - ["@aws-sdk/middleware-host-header", "npm:3.575.0"],\ - ["@aws-sdk/middleware-logger", "npm:3.575.0"],\ - ["@aws-sdk/middleware-recursion-detection", "npm:3.575.0"],\ - ["@aws-sdk/middleware-user-agent", "npm:3.575.0"],\ - ["@aws-sdk/region-config-resolver", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-browser", "npm:3.575.0"],\ - ["@aws-sdk/util-user-agent-node", "virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0"],\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/hash-node", "npm:3.0.0"],\ - ["@smithy/invalid-dependency", "npm:3.0.0"],\ - ["@smithy/middleware-content-length", "npm:3.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-client-sts-npm-3.631.0-23fb74e990-307fe932e4.zip/node_modules/@aws-sdk/client-sts/",\ + "packageDependencies": [\ + ["@aws-sdk/client-sts", "npm:3.631.0"],\ + ["@aws-crypto/sha256-browser", "npm:5.2.0"],\ + ["@aws-crypto/sha256-js", "npm:5.2.0"],\ + ["@aws-sdk/client-sso-oidc", "virtual:23fb74e99014e890d484a8e1c9e982aa45a7043a31ef25336cda1b3b1abe6481d9c3b91cc135f5caba5dc59f342cbbb6f4d4bf5fe8fe07f207c66603fabbc078#npm:3.631.0"],\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@aws-sdk/credential-provider-node", "npm:3.631.0"],\ + ["@aws-sdk/middleware-host-header", "npm:3.620.0"],\ + ["@aws-sdk/middleware-logger", "npm:3.609.0"],\ + ["@aws-sdk/middleware-recursion-detection", "npm:3.620.0"],\ + ["@aws-sdk/middleware-user-agent", "npm:3.631.0"],\ + ["@aws-sdk/region-config-resolver", "npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@aws-sdk/util-user-agent-browser", "npm:3.609.0"],\ + ["@aws-sdk/util-user-agent-node", "virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/hash-node", "npm:3.0.3"],\ + ["@smithy/invalid-dependency", "npm:3.0.3"],\ + ["@smithy/middleware-content-length", "npm:3.0.5"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["@smithy/util-body-length-browser", "npm:3.0.0"],\ ["@smithy/util-body-length-node", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-browser", "npm:3.0.0"],\ - ["@smithy/util-defaults-mode-node", "npm:3.0.0"],\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["@smithy/util-retry", "npm:3.0.0"],\ + ["@smithy/util-defaults-mode-browser", "npm:3.0.14"],\ + ["@smithy/util-defaults-mode-node", "npm:3.0.14"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1341,16 +1343,19 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/core", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-core-npm-3.575.0-106da9d18b-9458760ba7.zip/node_modules/@aws-sdk/core/",\ - "packageDependencies": [\ - ["@aws-sdk/core", "npm:3.575.0"],\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/signature-v4", "npm:3.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["fast-xml-parser", "npm:4.2.5"],\ + ["npm:3.629.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-core-npm-3.629.0-632e1b076e-692387fad8.zip/node_modules/@aws-sdk/core/",\ + "packageDependencies": [\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/signature-v4", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["fast-xml-parser", "npm:4.4.1"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1380,31 +1385,31 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-env-npm-3.575.0-1cb6730e26-9301c3dc80.zip/node_modules/@aws-sdk/credential-provider-env/",\ + ["npm:3.620.1", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-env-npm-3.620.1-bfd1f7573a-43f1bd5e9e.zip/node_modules/@aws-sdk/credential-provider-env/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-env", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/credential-provider-env", "npm:3.620.1"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@aws-sdk/credential-provider-http", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-http-npm-3.575.0-3dd3866b65-fec90a520c.zip/node_modules/@aws-sdk/credential-provider-http/",\ - "packageDependencies": [\ - ["@aws-sdk/credential-provider-http", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-stream", "npm:3.0.0"],\ + ["npm:3.622.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-http-npm-3.622.0-52d85bfc00-f118ee5618.zip/node_modules/@aws-sdk/credential-provider-http/",\ + "packageDependencies": [\ + ["@aws-sdk/credential-provider-http", "npm:3.622.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-stream", "npm:3.1.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1440,27 +1445,28 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.575.0-46b5f7fe35-d86df0977a.zip/node_modules/@aws-sdk/credential-provider-ini/",\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.631.0-d5ff53d22b-6bb186fbf9.zip/node_modules/@aws-sdk/credential-provider-ini/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-ini", "npm:3.575.0"]\ + ["@aws-sdk/credential-provider-ini", "npm:3.631.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0", {\ - "packageLocation": "./.yarn/__virtual__/@aws-sdk-credential-provider-ini-virtual-34b2d8b8cd/0/cache/@aws-sdk-credential-provider-ini-npm-3.575.0-46b5f7fe35-d86df0977a.zip/node_modules/@aws-sdk/credential-provider-ini/",\ + ["virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.631.0", {\ + "packageLocation": "./.yarn/__virtual__/@aws-sdk-credential-provider-ini-virtual-4bacd69212/0/cache/@aws-sdk-credential-provider-ini-npm-3.631.0-d5ff53d22b-6bb186fbf9.zip/node_modules/@aws-sdk/credential-provider-ini/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-ini", "virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0"],\ + ["@aws-sdk/credential-provider-ini", "virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.631.0"],\ ["@aws-sdk/client-sts", null],\ - ["@aws-sdk/credential-provider-env", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-process", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-sso", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-web-identity", "virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/credential-provider-imds", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/credential-provider-env", "npm:3.620.1"],\ + ["@aws-sdk/credential-provider-http", "npm:3.622.0"],\ + ["@aws-sdk/credential-provider-process", "npm:3.620.1"],\ + ["@aws-sdk/credential-provider-sso", "npm:3.631.0"],\ + ["@aws-sdk/credential-provider-web-identity", "virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.621.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/credential-provider-imds", "npm:3.2.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@types/aws-sdk__client-sts", null],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1489,21 +1495,21 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-node-npm-3.575.0-1d11b4b476-91f06aff0d.zip/node_modules/@aws-sdk/credential-provider-node/",\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-node-npm-3.631.0-8e101bafc2-8cef72f3f2.zip/node_modules/@aws-sdk/credential-provider-node/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-node", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-env", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-http", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-ini", "virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0"],\ - ["@aws-sdk/credential-provider-process", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-sso", "npm:3.575.0"],\ - ["@aws-sdk/credential-provider-web-identity", "virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/credential-provider-imds", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/credential-provider-node", "npm:3.631.0"],\ + ["@aws-sdk/credential-provider-env", "npm:3.620.1"],\ + ["@aws-sdk/credential-provider-http", "npm:3.622.0"],\ + ["@aws-sdk/credential-provider-ini", "virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.631.0"],\ + ["@aws-sdk/credential-provider-process", "npm:3.620.1"],\ + ["@aws-sdk/credential-provider-sso", "npm:3.631.0"],\ + ["@aws-sdk/credential-provider-web-identity", "virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.621.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/credential-provider-imds", "npm:3.2.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1521,14 +1527,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-process-npm-3.575.0-dab50efe0a-a32fcc6f82.zip/node_modules/@aws-sdk/credential-provider-process/",\ + ["npm:3.620.1", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-process-npm-3.620.1-195e00fd10-245d32be2a.zip/node_modules/@aws-sdk/credential-provider-process/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-process", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/credential-provider-process", "npm:3.620.1"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1548,16 +1554,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.575.0-11cd4c9d92-e9197693fc.zip/node_modules/@aws-sdk/credential-provider-sso/",\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.631.0-c7f8a8c1b8-7bfcf9e4fc.zip/node_modules/@aws-sdk/credential-provider-sso/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-sso", "npm:3.575.0"],\ - ["@aws-sdk/client-sso", "npm:3.575.0"],\ - ["@aws-sdk/token-providers", "virtual:11cd4c9d92793aad42f42cb55bb5aff1e0ca0f7c2f94aabc839146c98ddafc158af7fdf2bad3b0e96cde730847b0c7e91273d50d5870d5573bffa5b705938cd3#npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/credential-provider-sso", "npm:3.631.0"],\ + ["@aws-sdk/client-sso", "npm:3.631.0"],\ + ["@aws-sdk/token-providers", "virtual:c7f8a8c1b8230e2d83acf9305c45c96b0ec157d9ed8fa3ec322f3ac3ede93b777d6cca87db14f32a4973c83e003129c3fe80e6b1106666f432f091f3baff8a90#npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1574,21 +1580,21 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.575.0-0d2a4bd43b-05088f325d.zip/node_modules/@aws-sdk/credential-provider-web-identity/",\ + ["npm:3.621.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.621.0-9b735b82c5-63966d6077.zip/node_modules/@aws-sdk/credential-provider-web-identity/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-web-identity", "npm:3.575.0"]\ + ["@aws-sdk/credential-provider-web-identity", "npm:3.621.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0", {\ - "packageLocation": "./.yarn/__virtual__/@aws-sdk-credential-provider-web-identity-virtual-6e18a70a6c/0/cache/@aws-sdk-credential-provider-web-identity-npm-3.575.0-0d2a4bd43b-05088f325d.zip/node_modules/@aws-sdk/credential-provider-web-identity/",\ + ["virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.621.0", {\ + "packageLocation": "./.yarn/__virtual__/@aws-sdk-credential-provider-web-identity-virtual-9c78a9cdfa/0/cache/@aws-sdk-credential-provider-web-identity-npm-3.621.0-9b735b82c5-63966d6077.zip/node_modules/@aws-sdk/credential-provider-web-identity/",\ "packageDependencies": [\ - ["@aws-sdk/credential-provider-web-identity", "virtual:1d11b4b476c820528ca080242c9b6c937b82c8ffcde42840716faadf62ab859495c7eb364c112c8848958819c2ae2a516e528ad7dcdf8d8e28ab5f9622723aa5#npm:3.575.0"],\ + ["@aws-sdk/credential-provider-web-identity", "virtual:8e101bafc2616b3213c9f582f9b89eab6e2a3c2c214811d08ebf64d80560c9ccbdf3c4724d9831e7b4f4491ccda0e87f93c4f6cc1c5f748f204b2befd5237f72#npm:3.621.0"],\ ["@aws-sdk/client-sts", null],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@types/aws-sdk__client-sts", null],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1671,15 +1677,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/middleware-bucket-endpoint", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-bucket-endpoint-npm-3.575.0-e735e8e0e0-8e41eba73b.zip/node_modules/@aws-sdk/middleware-bucket-endpoint/",\ + ["npm:3.620.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-bucket-endpoint-npm-3.620.0-333ddb6a4a-5b5c139381.zip/node_modules/@aws-sdk/middleware-bucket-endpoint/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-bucket-endpoint", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ + ["@aws-sdk/middleware-bucket-endpoint", "npm:3.620.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ ["@aws-sdk/util-arn-parser", "npm:3.568.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-config-provider", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1716,29 +1722,29 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/middleware-expect-continue", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-expect-continue-npm-3.575.0-3cd1f730c9-8836b2c9c8.zip/node_modules/@aws-sdk/middleware-expect-continue/",\ + ["npm:3.620.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-expect-continue-npm-3.620.0-05d4a7881d-78868b04e7.zip/node_modules/@aws-sdk/middleware-expect-continue/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-expect-continue", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-expect-continue", "npm:3.620.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@aws-sdk/middleware-flexible-checksums", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-flexible-checksums-npm-3.575.0-b9ce9890e9-eb30799caa.zip/node_modules/@aws-sdk/middleware-flexible-checksums/",\ + ["npm:3.620.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-flexible-checksums-npm-3.620.0-0638d6a1b7-0578a21d63.zip/node_modules/@aws-sdk/middleware-flexible-checksums/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-flexible-checksums", "npm:3.575.0"],\ - ["@aws-crypto/crc32", "npm:3.0.0"],\ - ["@aws-crypto/crc32c", "npm:3.0.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ + ["@aws-sdk/middleware-flexible-checksums", "npm:3.620.0"],\ + ["@aws-crypto/crc32", "npm:5.2.0"],\ + ["@aws-crypto/crc32c", "npm:5.2.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ ["@smithy/is-array-buffer", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -1756,25 +1762,25 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-host-header-npm-3.575.0-941c42e58a-8c5478db6b.zip/node_modules/@aws-sdk/middleware-host-header/",\ + ["npm:3.620.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-host-header-npm-3.620.0-5664638b43-81edf0f1df.zip/node_modules/@aws-sdk/middleware-host-header/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-host-header", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-host-header", "npm:3.620.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@aws-sdk/middleware-location-constraint", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-location-constraint-npm-3.575.0-82c6da5226-690c362827.zip/node_modules/@aws-sdk/middleware-location-constraint/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-location-constraint-npm-3.609.0-d2cf59c381-b5724a22b3.zip/node_modules/@aws-sdk/middleware-location-constraint/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-location-constraint", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-location-constraint", "npm:3.609.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1790,12 +1796,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-logger-npm-3.575.0-ea61b23068-30b6b986d6.zip/node_modules/@aws-sdk/middleware-logger/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-logger-npm-3.609.0-2e9c05cfa1-c21b6ec3a2.zip/node_modules/@aws-sdk/middleware-logger/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-logger", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-logger", "npm:3.609.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1812,13 +1818,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.575.0-138091bf5d-a80a3b7aec.zip/node_modules/@aws-sdk/middleware-recursion-detection/",\ + ["npm:3.620.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.620.0-46c0059517-2f9ab3410c.zip/node_modules/@aws-sdk/middleware-recursion-detection/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-recursion-detection", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-recursion-detection", "npm:3.620.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1840,18 +1846,23 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/middleware-sdk-s3", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-sdk-s3-npm-3.575.0-f0bcac9dad-52c666f794.zip/node_modules/@aws-sdk/middleware-sdk-s3/",\ + ["npm:3.629.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-sdk-s3-npm-3.629.0-0e13fa0eed-45fe0d903e.zip/node_modules/@aws-sdk/middleware-sdk-s3/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-sdk-s3", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ + ["@aws-sdk/middleware-sdk-s3", "npm:3.629.0"],\ + ["@aws-sdk/core", "npm:3.629.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ ["@aws-sdk/util-arn-parser", "npm:3.568.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/signature-v4", "npm:3.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/signature-v4", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-config-provider", "npm:3.0.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-stream", "npm:3.1.3"],\ + ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1896,29 +1907,15 @@ const RAW_RUNTIME_STATE = ["tslib", "npm:2.4.1"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-signing-npm-3.575.0-dd2e8049cb-d7adaafbc2.zip/node_modules/@aws-sdk/middleware-signing/",\ - "packageDependencies": [\ - ["@aws-sdk/middleware-signing", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/signature-v4", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["tslib", "npm:2.6.2"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["@aws-sdk/middleware-ssec", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-ssec-npm-3.575.0-0a2ca403fe-ec7a0dd5fe.zip/node_modules/@aws-sdk/middleware-ssec/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-ssec-npm-3.609.0-a059a2f338-952c00e1de.zip/node_modules/@aws-sdk/middleware-ssec/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-ssec", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-ssec", "npm:3.609.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -1945,14 +1942,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-middleware-user-agent-npm-3.575.0-bb45bea32d-2c2b9b840a.zip/node_modules/@aws-sdk/middleware-user-agent/",\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-middleware-user-agent-npm-3.631.0-0ec1ba0cb9-a046419091.zip/node_modules/@aws-sdk/middleware-user-agent/",\ "packageDependencies": [\ - ["@aws-sdk/middleware-user-agent", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/middleware-user-agent", "npm:3.631.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2031,15 +2028,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/region-config-resolver", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-region-config-resolver-npm-3.575.0-0034c0ea70-92c4550fd5.zip/node_modules/@aws-sdk/region-config-resolver/",\ + ["npm:3.614.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-region-config-resolver-npm-3.614.0-3757fd9c34-5b156d40b1.zip/node_modules/@aws-sdk/region-config-resolver/",\ "packageDependencies": [\ - ["@aws-sdk/region-config-resolver", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/region-config-resolver", "npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-config-provider", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2081,15 +2078,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/signature-v4-multi-region", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-signature-v4-multi-region-npm-3.575.0-08ee2ffdc7-c41791cdb2.zip/node_modules/@aws-sdk/signature-v4-multi-region/",\ - "packageDependencies": [\ - ["@aws-sdk/signature-v4-multi-region", "npm:3.575.0"],\ - ["@aws-sdk/middleware-sdk-s3", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/signature-v4", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["npm:3.629.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-signature-v4-multi-region-npm-3.629.0-bb3e52fc60-33ec82af47.zip/node_modules/@aws-sdk/signature-v4-multi-region/",\ + "packageDependencies": [\ + ["@aws-sdk/signature-v4-multi-region", "npm:3.629.0"],\ + ["@aws-sdk/middleware-sdk-s3", "npm:3.629.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/signature-v4", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2120,22 +2117,22 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-token-providers-npm-3.575.0-8de776575d-ce6735c154.zip/node_modules/@aws-sdk/token-providers/",\ + ["npm:3.614.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-token-providers-npm-3.614.0-20fc5185b4-a310cbe4f2.zip/node_modules/@aws-sdk/token-providers/",\ "packageDependencies": [\ - ["@aws-sdk/token-providers", "npm:3.575.0"]\ + ["@aws-sdk/token-providers", "npm:3.614.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:11cd4c9d92793aad42f42cb55bb5aff1e0ca0f7c2f94aabc839146c98ddafc158af7fdf2bad3b0e96cde730847b0c7e91273d50d5870d5573bffa5b705938cd3#npm:3.575.0", {\ - "packageLocation": "./.yarn/__virtual__/@aws-sdk-token-providers-virtual-711d2ef6eb/0/cache/@aws-sdk-token-providers-npm-3.575.0-8de776575d-ce6735c154.zip/node_modules/@aws-sdk/token-providers/",\ + ["virtual:c7f8a8c1b8230e2d83acf9305c45c96b0ec157d9ed8fa3ec322f3ac3ede93b777d6cca87db14f32a4973c83e003129c3fe80e6b1106666f432f091f3baff8a90#npm:3.614.0", {\ + "packageLocation": "./.yarn/__virtual__/@aws-sdk-token-providers-virtual-21ed201856/0/cache/@aws-sdk-token-providers-npm-3.614.0-20fc5185b4-a310cbe4f2.zip/node_modules/@aws-sdk/token-providers/",\ "packageDependencies": [\ - ["@aws-sdk/token-providers", "virtual:11cd4c9d92793aad42f42cb55bb5aff1e0ca0f7c2f94aabc839146c98ddafc158af7fdf2bad3b0e96cde730847b0c7e91273d50d5870d5573bffa5b705938cd3#npm:3.575.0"],\ + ["@aws-sdk/token-providers", "virtual:c7f8a8c1b8230e2d83acf9305c45c96b0ec157d9ed8fa3ec322f3ac3ede93b777d6cca87db14f32a4973c83e003129c3fe80e6b1106666f432f091f3baff8a90#npm:3.614.0"],\ ["@aws-sdk/client-sso-oidc", null],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@types/aws-sdk__client-sso-oidc", null],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -2170,11 +2167,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-types-npm-3.575.0-60215e07d5-e6243ad1eb.zip/node_modules/@aws-sdk/types/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-types-npm-3.609.0-0b3378ccf1-3448eef720.zip/node_modules/@aws-sdk/types/",\ "packageDependencies": [\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2292,13 +2289,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-util-endpoints-npm-3.575.0-33e0a1e6c8-51e88aaede.zip/node_modules/@aws-sdk/util-endpoints/",\ + ["npm:3.631.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-util-endpoints-npm-3.631.0-2074eb9b70-cb7923a10a.zip/node_modules/@aws-sdk/util-endpoints/",\ "packageDependencies": [\ - ["@aws-sdk/util-endpoints", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ + ["@aws-sdk/util-endpoints", "npm:3.631.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2355,12 +2352,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-util-user-agent-browser-npm-3.575.0-59b0d2ba30-c0d8b3bce2.zip/node_modules/@aws-sdk/util-user-agent-browser/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-util-user-agent-browser-npm-3.609.0-52928e021b-6b2ae481b9.zip/node_modules/@aws-sdk/util-user-agent-browser/",\ "packageDependencies": [\ - ["@aws-sdk/util-user-agent-browser", "npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/util-user-agent-browser", "npm:3.609.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["bowser", "npm:2.11.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -2375,10 +2372,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-util-user-agent-node-npm-3.575.0-24312859c3-70123dde61.zip/node_modules/@aws-sdk/util-user-agent-node/",\ + ["npm:3.614.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-util-user-agent-node-npm-3.614.0-2b74606582-2b315f4e4e.zip/node_modules/@aws-sdk/util-user-agent-node/",\ "packageDependencies": [\ - ["@aws-sdk/util-user-agent-node", "npm:3.575.0"]\ + ["@aws-sdk/util-user-agent-node", "npm:3.614.0"]\ ],\ "linkType": "SOFT"\ }],\ @@ -2398,13 +2395,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0", {\ - "packageLocation": "./.yarn/__virtual__/@aws-sdk-util-user-agent-node-virtual-01421ce032/0/cache/@aws-sdk-util-user-agent-node-npm-3.575.0-24312859c3-70123dde61.zip/node_modules/@aws-sdk/util-user-agent-node/",\ + ["virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0", {\ + "packageLocation": "./.yarn/__virtual__/@aws-sdk-util-user-agent-node-virtual-b439fffc8f/0/cache/@aws-sdk-util-user-agent-node-npm-3.614.0-2b74606582-2b315f4e4e.zip/node_modules/@aws-sdk/util-user-agent-node/",\ "packageDependencies": [\ - ["@aws-sdk/util-user-agent-node", "virtual:e040dbdfd8c517cb5d8a409346f35e678a3acb76496a0d9281895be98ff787119fbf283008021c4dcf1b6d48be6af86b553dee0f028567f0a199ea55e4659b36#npm:3.575.0"],\ - ["@aws-sdk/types", "npm:3.575.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/util-user-agent-node", "virtual:c92b67efb3505c71e85ce57f2efcb85dcd3487c1820e8c550c01bc4878fb7e2b3513e51315ac8559893dc9c111872c083de7fecaac45437d281183beab605240#npm:3.614.0"],\ + ["@aws-sdk/types", "npm:3.609.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@types/aws-crt", null],\ ["aws-crt", null],\ ["tslib", "npm:2.6.2"]\ @@ -2446,11 +2443,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@aws-sdk/xml-builder", [\ - ["npm:3.575.0", {\ - "packageLocation": "./.yarn/cache/@aws-sdk-xml-builder-npm-3.575.0-910965cf59-b1ca3cca6d.zip/node_modules/@aws-sdk/xml-builder/",\ + ["npm:3.609.0", {\ + "packageLocation": "./.yarn/cache/@aws-sdk-xml-builder-npm-3.609.0-a4e6afdd9b-bdb57106ab.zip/node_modules/@aws-sdk/xml-builder/",\ "packageDependencies": [\ - ["@aws-sdk/xml-builder", "npm:3.575.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@aws-sdk/xml-builder", "npm:3.609.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -2787,13 +2784,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-async-generators-virtual-88fe289dd9/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-7ed1c1d9b9.zip/node_modules/@babel/plugin-syntax-async-generators/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-async-generators-virtual-7b0eaa11fc/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-7ed1c1d9b9.zip/node_modules/@babel/plugin-syntax-async-generators/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-async-generators", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.4"],\ + ["@babel/plugin-syntax-async-generators", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2801,13 +2798,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-async-generators-virtual-7b0eaa11fc/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-7ed1c1d9b9.zip/node_modules/@babel/plugin-syntax-async-generators/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-async-generators-virtual-befff0138b/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-7ed1c1d9b9.zip/node_modules/@babel/plugin-syntax-async-generators/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-async-generators", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.4"],\ + ["@babel/plugin-syntax-async-generators", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2824,13 +2821,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-bigint-virtual-49af33812b/0/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-3a10849d83.zip/node_modules/@babel/plugin-syntax-bigint/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-bigint-virtual-9723a2f05b/0/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-3a10849d83.zip/node_modules/@babel/plugin-syntax-bigint/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-bigint", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-bigint", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2838,13 +2835,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-bigint-virtual-9723a2f05b/0/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-3a10849d83.zip/node_modules/@babel/plugin-syntax-bigint/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-bigint-virtual-f722abd236/0/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-3a10849d83.zip/node_modules/@babel/plugin-syntax-bigint/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-bigint", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-bigint", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2861,13 +2858,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.12.13", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-class-properties-virtual-acbb64f666/0/cache/@babel-plugin-syntax-class-properties-npm-7.12.13-002ee9d930-24f34b196d.zip/node_modules/@babel/plugin-syntax-class-properties/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.12.13", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-class-properties-virtual-6a0084a48b/0/cache/@babel-plugin-syntax-class-properties-npm-7.12.13-002ee9d930-24f34b196d.zip/node_modules/@babel/plugin-syntax-class-properties/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-class-properties", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.12.13"],\ + ["@babel/plugin-syntax-class-properties", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.12.13"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2875,13 +2872,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.12.13", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-class-properties-virtual-6a0084a48b/0/cache/@babel-plugin-syntax-class-properties-npm-7.12.13-002ee9d930-24f34b196d.zip/node_modules/@babel/plugin-syntax-class-properties/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.12.13", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-class-properties-virtual-da3c641004/0/cache/@babel-plugin-syntax-class-properties-npm-7.12.13-002ee9d930-24f34b196d.zip/node_modules/@babel/plugin-syntax-class-properties/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-class-properties", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.12.13"],\ + ["@babel/plugin-syntax-class-properties", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.12.13"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2898,13 +2895,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-import-meta-virtual-cf247e2b01/0/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-166ac1125d.zip/node_modules/@babel/plugin-syntax-import-meta/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-import-meta-virtual-db19ac28c2/0/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-166ac1125d.zip/node_modules/@babel/plugin-syntax-import-meta/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-import-meta", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ + ["@babel/plugin-syntax-import-meta", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2912,13 +2909,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-import-meta-virtual-db19ac28c2/0/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-166ac1125d.zip/node_modules/@babel/plugin-syntax-import-meta/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-import-meta-virtual-4d7a62ee53/0/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-166ac1125d.zip/node_modules/@babel/plugin-syntax-import-meta/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-import-meta", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ + ["@babel/plugin-syntax-import-meta", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2935,13 +2932,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-json-strings-virtual-3b19f023b5/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-bf5aea1f31.zip/node_modules/@babel/plugin-syntax-json-strings/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-json-strings-virtual-08ccb0a5b4/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-bf5aea1f31.zip/node_modules/@babel/plugin-syntax-json-strings/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-json-strings", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-json-strings", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2949,13 +2946,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-json-strings-virtual-08ccb0a5b4/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-bf5aea1f31.zip/node_modules/@babel/plugin-syntax-json-strings/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-json-strings-virtual-25545110f1/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-bf5aea1f31.zip/node_modules/@babel/plugin-syntax-json-strings/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-json-strings", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-json-strings", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -2995,13 +2992,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-logical-assignment-operators-virtual-025688a119/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-aff3357703.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-logical-assignment-operators-virtual-5a7c7f5ea1/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-aff3357703.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-logical-assignment-operators", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ + ["@babel/plugin-syntax-logical-assignment-operators", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3009,13 +3006,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-logical-assignment-operators-virtual-5a7c7f5ea1/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-aff3357703.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-logical-assignment-operators-virtual-6418e9f19a/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-aff3357703.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-logical-assignment-operators", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ + ["@babel/plugin-syntax-logical-assignment-operators", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3032,13 +3029,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-nullish-coalescing-operator-virtual-4b85c8fa9a/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-87aca49189.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-nullish-coalescing-operator-virtual-591ce79f21/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-87aca49189.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3046,13 +3043,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-nullish-coalescing-operator-virtual-591ce79f21/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-87aca49189.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-nullish-coalescing-operator-virtual-4abd1b4eb1/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-87aca49189.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3069,13 +3066,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-numeric-separator-virtual-95013f3c1d/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-01ec5547bd.zip/node_modules/@babel/plugin-syntax-numeric-separator/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-numeric-separator-virtual-0a6a2e1be5/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-01ec5547bd.zip/node_modules/@babel/plugin-syntax-numeric-separator/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-numeric-separator", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ + ["@babel/plugin-syntax-numeric-separator", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3083,13 +3080,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-numeric-separator-virtual-0a6a2e1be5/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-01ec5547bd.zip/node_modules/@babel/plugin-syntax-numeric-separator/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-numeric-separator-virtual-a3c6900b92/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-01ec5547bd.zip/node_modules/@babel/plugin-syntax-numeric-separator/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-numeric-separator", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.10.4"],\ + ["@babel/plugin-syntax-numeric-separator", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3106,13 +3103,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-object-rest-spread-virtual-a1ec28cd9a/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-fddcf581a5.zip/node_modules/@babel/plugin-syntax-object-rest-spread/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-object-rest-spread-virtual-e28e433ed4/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-fddcf581a5.zip/node_modules/@babel/plugin-syntax-object-rest-spread/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-object-rest-spread", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-object-rest-spread", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3120,13 +3117,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-object-rest-spread-virtual-e28e433ed4/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-fddcf581a5.zip/node_modules/@babel/plugin-syntax-object-rest-spread/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-object-rest-spread-virtual-52e58def48/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-fddcf581a5.zip/node_modules/@babel/plugin-syntax-object-rest-spread/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-object-rest-spread", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-object-rest-spread", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3143,13 +3140,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-catch-binding-virtual-3ea1faa40a/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-910d90e72b.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-catch-binding-virtual-351da83b97/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-910d90e72b.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-optional-catch-binding", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-catch-binding", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3157,13 +3154,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-catch-binding-virtual-351da83b97/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-910d90e72b.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-catch-binding-virtual-35e4fa72d3/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-910d90e72b.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-optional-catch-binding", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-catch-binding", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3180,13 +3177,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-chaining-virtual-f78ff5e496/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-eef94d53a1.zip/node_modules/@babel/plugin-syntax-optional-chaining/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-chaining-virtual-bacf3446c4/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-eef94d53a1.zip/node_modules/@babel/plugin-syntax-optional-chaining/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-optional-chaining", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-chaining", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3194,13 +3191,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-chaining-virtual-bacf3446c4/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-eef94d53a1.zip/node_modules/@babel/plugin-syntax-optional-chaining/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-chaining-virtual-5fe2b1722c/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-eef94d53a1.zip/node_modules/@babel/plugin-syntax-optional-chaining/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-optional-chaining", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-chaining", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3217,13 +3214,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.14.5", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-top-level-await-virtual-af07b5c56e/0/cache/@babel-plugin-syntax-top-level-await-npm-7.14.5-60a0a2e83b-bbd1a56b09.zip/node_modules/@babel/plugin-syntax-top-level-await/",\ + ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.14.5", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-top-level-await-virtual-e4f87462ae/0/cache/@babel-plugin-syntax-top-level-await-npm-7.14.5-60a0a2e83b-bbd1a56b09.zip/node_modules/@babel/plugin-syntax-top-level-await/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-top-level-await", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.14.5"],\ + ["@babel/plugin-syntax-top-level-await", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.14.5"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", "npm:7.20.1"]\ + ["@types/babel__core", null]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -3231,13 +3228,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.14.5", {\ - "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-top-level-await-virtual-e4f87462ae/0/cache/@babel-plugin-syntax-top-level-await-npm-7.14.5-60a0a2e83b-bbd1a56b09.zip/node_modules/@babel/plugin-syntax-top-level-await/",\ + ["virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.14.5", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-top-level-await-virtual-34380aeafc/0/cache/@babel-plugin-syntax-top-level-await-npm-7.14.5-60a0a2e83b-bbd1a56b09.zip/node_modules/@babel/plugin-syntax-top-level-await/",\ "packageDependencies": [\ - ["@babel/plugin-syntax-top-level-await", "virtual:ba1c0e1ca64eb2d0239b3eed2dcd904b02bec7c388c425e832f80080c28047a34349bdf847af35395682a84967d8c0d3855919199454485ed09f8786b7299687#npm:7.14.5"],\ + ["@babel/plugin-syntax-top-level-await", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.14.5"],\ ["@babel/core", "npm:7.22.17"],\ ["@babel/helper-plugin-utils", "npm:7.22.5"],\ - ["@types/babel__core", null]\ + ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -4374,6 +4371,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@isaacs/string-locale-compare", [\ + ["npm:1.1.0", {\ + "packageLocation": "./.yarn/cache/@isaacs-string-locale-compare-npm-1.1.0-3911094464-85682b1460.zip/node_modules/@isaacs/string-locale-compare/",\ + "packageDependencies": [\ + ["@isaacs/string-locale-compare", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@istanbuljs/load-nyc-config", [\ ["npm:1.1.0", {\ "packageLocation": "./.yarn/cache/@istanbuljs-load-nyc-config-npm-1.1.0-42d17c9cb1-b000a5acd8.zip/node_modules/@istanbuljs/load-nyc-config/",\ @@ -4420,12 +4426,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/@jest-core-virtual-93536b146e/0/cache/@jest-core-npm-29.7.0-cef60d74c4-ab6ac2e562.zip/node_modules/@jest/core/",\ + ["virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/@jest-core-virtual-174245725b/0/cache/@jest-core-npm-29.7.0-cef60d74c4-ab6ac2e562.zip/node_modules/@jest/core/",\ "packageDependencies": [\ - ["@jest/core", "virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0"],\ + ["@jest/core", "virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0"],\ ["@jest/console", "npm:29.7.0"],\ - ["@jest/reporters", "virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0"],\ + ["@jest/reporters", "virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0"],\ ["@jest/test-result", "npm:29.7.0"],\ ["@jest/transform", "npm:29.7.0"],\ ["@jest/types", "npm:29.6.3"],\ @@ -4437,7 +4443,7 @@ const RAW_RUNTIME_STATE = ["exit", "npm:0.1.2"],\ ["graceful-fs", "npm:4.2.10"],\ ["jest-changed-files", "npm:29.7.0"],\ - ["jest-config", "virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0"],\ + ["jest-config", "virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0"],\ ["jest-haste-map", "npm:29.7.0"],\ ["jest-message-util", "npm:29.7.0"],\ ["jest-regex-util", "npm:29.6.3"],\ @@ -4540,10 +4546,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/@jest-reporters-virtual-fc83ab05d9/0/cache/@jest-reporters-npm-29.7.0-2561cd7a09-a17d1644b2.zip/node_modules/@jest/reporters/",\ + ["virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/@jest-reporters-virtual-2deccf584e/0/cache/@jest-reporters-npm-29.7.0-2561cd7a09-a17d1644b2.zip/node_modules/@jest/reporters/",\ "packageDependencies": [\ - ["@jest/reporters", "virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0"],\ + ["@jest/reporters", "virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0"],\ ["@bcoe/v8-coverage", "npm:0.2.3"],\ ["@jest/console", "npm:29.7.0"],\ ["@jest/test-result", "npm:29.7.0"],\ @@ -4997,70 +5003,77 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:8.1.3", {\ - "packageLocation": "./.yarn/cache/@lerna-create-npm-8.1.3-231b41c796-52cc1ce736.zip/node_modules/@lerna/create/",\ + ["npm:8.1.8", {\ + "packageLocation": "./.yarn/cache/@lerna-create-npm-8.1.8-b6dc6c6054-810df5d353.zip/node_modules/@lerna/create/",\ "packageDependencies": [\ - ["@lerna/create", "npm:8.1.3"],\ - ["@npmcli/run-script", "npm:7.0.2"],\ - ["@nx/devkit", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["@lerna/create", "npm:8.1.8"],\ + ["@npmcli/arborist", "npm:7.5.4"],\ + ["@npmcli/package-json", "npm:5.2.0"],\ + ["@npmcli/run-script", "npm:8.1.0"],\ + ["@nx/devkit", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["@octokit/plugin-enterprise-rest", "npm:6.0.1"],\ ["@octokit/rest", "npm:19.0.11"],\ + ["aproba", "npm:2.0.0"],\ ["byte-size", "npm:8.1.1"],\ ["chalk", "npm:4.1.0"],\ ["clone-deep", "npm:4.0.1"],\ - ["cmd-shim", "npm:6.0.1"],\ + ["cmd-shim", "npm:6.0.3"],\ + ["color-support", "npm:1.1.3"],\ ["columnify", "npm:1.6.0"],\ + ["console-control-strings", "npm:1.1.0"],\ ["conventional-changelog-core", "npm:5.0.1"],\ ["conventional-recommended-bump", "npm:7.0.1"],\ - ["cosmiconfig", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:8.3.6"],\ - ["dedent", "npm:0.7.0"],\ + ["cosmiconfig", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:8.3.6"],\ + ["dedent", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:1.5.3"],\ ["execa", "npm:5.0.0"],\ - ["fs-extra", "npm:11.1.1"],\ + ["fs-extra", "npm:11.2.0"],\ ["get-stream", "npm:6.0.0"],\ - ["git-url-parse", "npm:13.1.0"],\ - ["glob-parent", "npm:5.1.2"],\ + ["git-url-parse", "npm:14.0.0"],\ + ["glob-parent", "npm:6.0.2"],\ ["globby", "npm:11.1.0"],\ ["graceful-fs", "npm:4.2.11"],\ ["has-unicode", "npm:2.0.1"],\ ["ini", "npm:1.3.8"],\ - ["init-package-json", "npm:5.0.0"],\ + ["init-package-json", "npm:6.0.3"],\ ["inquirer", "npm:8.2.6"],\ ["is-ci", "npm:3.0.1"],\ ["is-stream", "npm:2.0.0"],\ ["js-yaml", "npm:4.1.0"],\ - ["libnpmpublish", "npm:7.3.0"],\ + ["libnpmpublish", "npm:9.0.9"],\ ["load-json-file", "npm:6.2.0"],\ ["lodash", "npm:4.17.21"],\ ["make-dir", "npm:4.0.0"],\ ["minimatch", "npm:3.0.5"],\ ["multimatch", "npm:5.0.0"],\ - ["node-fetch", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:2.6.7"],\ - ["npm-package-arg", "npm:8.1.1"],\ - ["npm-packlist", "npm:5.1.1"],\ - ["npm-registry-fetch", "npm:14.0.5"],\ - ["npmlog", "npm:6.0.2"],\ - ["nx", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["node-fetch", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:2.6.7"],\ + ["npm-package-arg", "npm:11.0.2"],\ + ["npm-packlist", "npm:8.0.2"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ + ["nx", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["p-map", "npm:4.0.0"],\ ["p-map-series", "npm:2.1.0"],\ ["p-queue", "npm:6.6.2"],\ ["p-reduce", "npm:2.1.0"],\ - ["pacote", "npm:17.0.7"],\ + ["pacote", "npm:18.0.6"],\ ["pify", "npm:5.0.0"],\ ["read-cmd-shim", "npm:4.0.0"],\ - ["read-package-json", "npm:6.0.4"],\ ["resolve-from", "npm:5.0.0"],\ ["rimraf", "npm:4.4.1"],\ ["semver", "npm:7.5.4"],\ + ["set-blocking", "npm:2.0.0"],\ ["signal-exit", "npm:3.0.7"],\ ["slash", "npm:3.0.0"],\ - ["ssri", "npm:9.0.1"],\ + ["ssri", "npm:10.0.6"],\ + ["string-width", "npm:4.2.3"],\ + ["strip-ansi", "npm:6.0.1"],\ ["strong-log-transformer", "npm:2.1.0"],\ ["tar", "npm:6.2.1"],\ ["temp-dir", "npm:1.0.0"],\ ["upath", "npm:2.0.1"],\ - ["uuid", "npm:9.0.0"],\ + ["uuid", "npm:10.0.0"],\ ["validate-npm-package-license", "npm:3.0.4"],\ - ["validate-npm-package-name", "npm:5.0.0"],\ + ["validate-npm-package-name", "npm:5.0.1"],\ + ["wide-align", "npm:1.1.5"],\ ["write-file-atomic", "npm:5.0.1"],\ ["write-pkg", "npm:4.0.0"],\ ["yargs", "npm:17.7.2"],\ @@ -5766,91 +5779,91 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@next/env", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/cache/@next-env-npm-14.2.3-439888dc66-82b445331d.zip/node_modules/@next/env/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/cache/@next-env-npm-14.2.5-49076f5af2-0462db6a82.zip/node_modules/@next/env/",\ "packageDependencies": [\ - ["@next/env", "npm:14.2.3"]\ + ["@next/env", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-darwin-arm64", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-darwin-arm64-npm-14.2.3-a4a36e8f73/node_modules/@next/swc-darwin-arm64/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-darwin-arm64-npm-14.2.5-30baab3764/node_modules/@next/swc-darwin-arm64/",\ "packageDependencies": [\ - ["@next/swc-darwin-arm64", "npm:14.2.3"]\ + ["@next/swc-darwin-arm64", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-darwin-x64", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-darwin-x64-npm-14.2.3-bb811d66d3/node_modules/@next/swc-darwin-x64/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-darwin-x64-npm-14.2.5-01db35822e/node_modules/@next/swc-darwin-x64/",\ "packageDependencies": [\ - ["@next/swc-darwin-x64", "npm:14.2.3"]\ + ["@next/swc-darwin-x64", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-linux-arm64-gnu", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-linux-arm64-gnu-npm-14.2.3-8a1a464ce1/node_modules/@next/swc-linux-arm64-gnu/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-linux-arm64-gnu-npm-14.2.5-c0be37ef87/node_modules/@next/swc-linux-arm64-gnu/",\ "packageDependencies": [\ - ["@next/swc-linux-arm64-gnu", "npm:14.2.3"]\ + ["@next/swc-linux-arm64-gnu", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-linux-arm64-musl", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-linux-arm64-musl-npm-14.2.3-ae66d88cf4/node_modules/@next/swc-linux-arm64-musl/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-linux-arm64-musl-npm-14.2.5-f4a01bd5a0/node_modules/@next/swc-linux-arm64-musl/",\ "packageDependencies": [\ - ["@next/swc-linux-arm64-musl", "npm:14.2.3"]\ + ["@next/swc-linux-arm64-musl", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-linux-x64-gnu", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-linux-x64-gnu-npm-14.2.3-635f7187f5/node_modules/@next/swc-linux-x64-gnu/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-linux-x64-gnu-npm-14.2.5-cc62fe9948/node_modules/@next/swc-linux-x64-gnu/",\ "packageDependencies": [\ - ["@next/swc-linux-x64-gnu", "npm:14.2.3"]\ + ["@next/swc-linux-x64-gnu", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-linux-x64-musl", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-linux-x64-musl-npm-14.2.3-b72b7c2b49/node_modules/@next/swc-linux-x64-musl/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-linux-x64-musl-npm-14.2.5-d22cf441bd/node_modules/@next/swc-linux-x64-musl/",\ "packageDependencies": [\ - ["@next/swc-linux-x64-musl", "npm:14.2.3"]\ + ["@next/swc-linux-x64-musl", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-win32-arm64-msvc", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-win32-arm64-msvc-npm-14.2.3-ea400e0417/node_modules/@next/swc-win32-arm64-msvc/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-win32-arm64-msvc-npm-14.2.5-28a30fb16b/node_modules/@next/swc-win32-arm64-msvc/",\ "packageDependencies": [\ - ["@next/swc-win32-arm64-msvc", "npm:14.2.3"]\ + ["@next/swc-win32-arm64-msvc", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-win32-ia32-msvc", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-win32-ia32-msvc-npm-14.2.3-f9b5545461/node_modules/@next/swc-win32-ia32-msvc/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-win32-ia32-msvc-npm-14.2.5-3ac8c1c5b4/node_modules/@next/swc-win32-ia32-msvc/",\ "packageDependencies": [\ - ["@next/swc-win32-ia32-msvc", "npm:14.2.3"]\ + ["@next/swc-win32-ia32-msvc", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@next/swc-win32-x64-msvc", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/unplugged/@next-swc-win32-x64-msvc-npm-14.2.3-d5afefe541/node_modules/@next/swc-win32-x64-msvc/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/unplugged/@next-swc-win32-x64-msvc-npm-14.2.5-fd8931986f/node_modules/@next/swc-win32-x64-msvc/",\ "packageDependencies": [\ - ["@next/swc-win32-x64-msvc", "npm:14.2.3"]\ + ["@next/swc-win32-x64-msvc", "npm:14.2.5"]\ ],\ "linkType": "HARD"\ }]\ @@ -5923,6 +5936,50 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@npmcli/arborist", [\ + ["npm:7.5.4", {\ + "packageLocation": "./.yarn/cache/@npmcli-arborist-npm-7.5.4-34c4ae62bc-b77170754f.zip/node_modules/@npmcli/arborist/",\ + "packageDependencies": [\ + ["@npmcli/arborist", "npm:7.5.4"],\ + ["@isaacs/string-locale-compare", "npm:1.1.0"],\ + ["@npmcli/fs", "npm:3.1.1"],\ + ["@npmcli/installed-package-contents", "npm:2.1.0"],\ + ["@npmcli/map-workspaces", "npm:3.0.6"],\ + ["@npmcli/metavuln-calculator", "npm:7.1.1"],\ + ["@npmcli/name-from-folder", "npm:2.0.0"],\ + ["@npmcli/node-gyp", "npm:3.0.0"],\ + ["@npmcli/package-json", "npm:5.2.0"],\ + ["@npmcli/query", "npm:3.1.0"],\ + ["@npmcli/redact", "npm:2.0.1"],\ + ["@npmcli/run-script", "npm:8.1.0"],\ + ["bin-links", "npm:4.0.4"],\ + ["cacache", "npm:18.0.4"],\ + ["common-ancestor-path", "npm:1.0.1"],\ + ["hosted-git-info", "npm:7.0.2"],\ + ["json-parse-even-better-errors", "npm:3.0.2"],\ + ["json-stringify-nice", "npm:1.1.4"],\ + ["lru-cache", "npm:10.4.3"],\ + ["minimatch", "npm:9.0.4"],\ + ["nopt", "npm:7.2.1"],\ + ["npm-install-checks", "npm:6.3.0"],\ + ["npm-package-arg", "npm:11.0.3"],\ + ["npm-pick-manifest", "npm:9.1.0"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ + ["pacote", "npm:18.0.6"],\ + ["parse-conflict-json", "npm:3.0.1"],\ + ["proc-log", "npm:4.2.0"],\ + ["proggy", "npm:2.0.0"],\ + ["promise-all-reject-late", "npm:1.0.1"],\ + ["promise-call-limit", "npm:3.0.1"],\ + ["read-package-json-fast", "npm:3.0.2"],\ + ["semver", "npm:7.5.4"],\ + ["ssri", "npm:10.0.6"],\ + ["treeverse", "npm:3.0.0"],\ + ["walk-up-path", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@npmcli/fs", [\ ["npm:1.0.0", {\ "packageLocation": "./.yarn/cache/@npmcli-fs-npm-1.0.0-92194475f3-3f93c1d9a8.zip/node_modules/@npmcli/fs/",\ @@ -5940,6 +5997,14 @@ const RAW_RUNTIME_STATE = ["semver", "npm:7.5.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.1.1", {\ + "packageLocation": "./.yarn/cache/@npmcli-fs-npm-3.1.1-c19bd09f3c-1e0e040870.zip/node_modules/@npmcli/fs/",\ + "packageDependencies": [\ + ["@npmcli/fs", "npm:3.1.1"],\ + ["semver", "npm:7.5.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@npmcli/git", [\ @@ -5968,6 +6033,42 @@ const RAW_RUNTIME_STATE = ["npm-normalize-package-bin", "npm:3.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.1.0", {\ + "packageLocation": "./.yarn/cache/@npmcli-installed-package-contents-npm-2.1.0-82f7020627-68ab3ea299.zip/node_modules/@npmcli/installed-package-contents/",\ + "packageDependencies": [\ + ["@npmcli/installed-package-contents", "npm:2.1.0"],\ + ["npm-bundled", "npm:3.0.0"],\ + ["npm-normalize-package-bin", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@npmcli/map-workspaces", [\ + ["npm:3.0.6", {\ + "packageLocation": "./.yarn/cache/@npmcli-map-workspaces-npm-3.0.6-dcaa328de8-b364b15599.zip/node_modules/@npmcli/map-workspaces/",\ + "packageDependencies": [\ + ["@npmcli/map-workspaces", "npm:3.0.6"],\ + ["@npmcli/name-from-folder", "npm:2.0.0"],\ + ["glob", "npm:10.3.4"],\ + ["minimatch", "npm:9.0.3"],\ + ["read-package-json-fast", "npm:3.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@npmcli/metavuln-calculator", [\ + ["npm:7.1.1", {\ + "packageLocation": "./.yarn/cache/@npmcli-metavuln-calculator-npm-7.1.1-392e62877e-57163b4bde.zip/node_modules/@npmcli/metavuln-calculator/",\ + "packageDependencies": [\ + ["@npmcli/metavuln-calculator", "npm:7.1.1"],\ + ["cacache", "npm:18.0.3"],\ + ["json-parse-even-better-errors", "npm:3.0.0"],\ + ["pacote", "npm:18.0.6"],\ + ["proc-log", "npm:4.2.0"],\ + ["semver", "npm:7.5.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@npmcli/move-file", [\ @@ -5981,6 +6082,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@npmcli/name-from-folder", [\ + ["npm:2.0.0", {\ + "packageLocation": "./.yarn/cache/@npmcli-name-from-folder-npm-2.0.0-18e2dba870-75beb40373.zip/node_modules/@npmcli/name-from-folder/",\ + "packageDependencies": [\ + ["@npmcli/name-from-folder", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@npmcli/node-gyp", [\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/@npmcli-node-gyp-npm-3.0.0-b160a0116c-dd9fed3e80.zip/node_modules/@npmcli/node-gyp/",\ @@ -6004,6 +6114,20 @@ const RAW_RUNTIME_STATE = ["semver", "npm:7.5.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.2.0", {\ + "packageLocation": "./.yarn/cache/@npmcli-package-json-npm-5.2.0-6ff383122c-c3d2218877.zip/node_modules/@npmcli/package-json/",\ + "packageDependencies": [\ + ["@npmcli/package-json", "npm:5.2.0"],\ + ["@npmcli/git", "npm:5.0.7"],\ + ["glob", "npm:10.3.4"],\ + ["hosted-git-info", "npm:7.0.2"],\ + ["json-parse-even-better-errors", "npm:3.0.0"],\ + ["normalize-package-data", "npm:6.0.1"],\ + ["proc-log", "npm:4.2.0"],\ + ["semver", "npm:7.5.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@npmcli/promise-spawn", [\ @@ -6016,36 +6140,35 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["@npmcli/redact", [\ - ["npm:1.1.0", {\ - "packageLocation": "./.yarn/cache/@npmcli-redact-npm-1.1.0-71fbcc73bc-c6c81c2d14.zip/node_modules/@npmcli/redact/",\ + ["@npmcli/query", [\ + ["npm:3.1.0", {\ + "packageLocation": "./.yarn/cache/@npmcli-query-npm-3.1.0-88f6486c5b-fa79ae3179.zip/node_modules/@npmcli/query/",\ "packageDependencies": [\ - ["@npmcli/redact", "npm:1.1.0"]\ + ["@npmcli/query", "npm:3.1.0"],\ + ["postcss-selector-parser", "npm:6.1.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ - ["@npmcli/run-script", [\ - ["npm:7.0.2", {\ - "packageLocation": "./.yarn/cache/@npmcli-run-script-npm-7.0.2-b958bd07cc-4549311f3b.zip/node_modules/@npmcli/run-script/",\ + ["@npmcli/redact", [\ + ["npm:2.0.1", {\ + "packageLocation": "./.yarn/cache/@npmcli-redact-npm-2.0.1-aabc2eefef-f19a521fa7.zip/node_modules/@npmcli/redact/",\ "packageDependencies": [\ - ["@npmcli/run-script", "npm:7.0.2"],\ - ["@npmcli/node-gyp", "npm:3.0.0"],\ - ["@npmcli/promise-spawn", "npm:7.0.2"],\ - ["node-gyp", "npm:10.1.0"],\ - ["read-package-json-fast", "npm:3.0.2"],\ - ["which", "npm:4.0.0"]\ + ["@npmcli/redact", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:7.0.4", {\ - "packageLocation": "./.yarn/cache/@npmcli-run-script-npm-7.0.4-0d1c1e883b-f09268051f.zip/node_modules/@npmcli/run-script/",\ + }]\ + ]],\ + ["@npmcli/run-script", [\ + ["npm:8.1.0", {\ + "packageLocation": "./.yarn/cache/@npmcli-run-script-npm-8.1.0-e82d9acd40-256bd580f8.zip/node_modules/@npmcli/run-script/",\ "packageDependencies": [\ - ["@npmcli/run-script", "npm:7.0.4"],\ + ["@npmcli/run-script", "npm:8.1.0"],\ ["@npmcli/node-gyp", "npm:3.0.0"],\ ["@npmcli/package-json", "npm:5.1.0"],\ ["@npmcli/promise-spawn", "npm:7.0.2"],\ ["node-gyp", "npm:10.1.0"],\ + ["proc-log", "npm:4.2.0"],\ ["which", "npm:4.0.0"]\ ],\ "linkType": "HARD"\ @@ -6066,7 +6189,7 @@ const RAW_RUNTIME_STATE = "packageLocation": "./.yarn/cache/@nrwl-tao-npm-19.0.3-77fadfb5fa-419f2a9901.zip/node_modules/@nrwl/tao/",\ "packageDependencies": [\ ["@nrwl/tao", "npm:19.0.3"],\ - ["nx", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["nx", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["tslib", "npm:2.3.1"]\ ],\ "linkType": "HARD"\ @@ -6080,17 +6203,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3", {\ - "packageLocation": "./.yarn/__virtual__/@nx-devkit-virtual-b8d067145d/0/cache/@nx-devkit-npm-19.0.3-14710e511d-7a725d18c3.zip/node_modules/@nx/devkit/",\ + ["virtual:92959e652c35ec64e7ed77759271c38566880546b1cafe9ef0d6de89bfefdde0536b78000c9e6c88b51488dacd46950f9d7f7336f84e6264a09ad2fd8a8fd73e#npm:19.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@nx-devkit-virtual-226aed7e8e/0/cache/@nx-devkit-npm-19.0.3-14710e511d-7a725d18c3.zip/node_modules/@nx/devkit/",\ "packageDependencies": [\ - ["@nx/devkit", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["@nx/devkit", "virtual:92959e652c35ec64e7ed77759271c38566880546b1cafe9ef0d6de89bfefdde0536b78000c9e6c88b51488dacd46950f9d7f7336f84e6264a09ad2fd8a8fd73e#npm:19.0.3"],\ ["@nrwl/devkit", "npm:19.0.3"],\ ["@types/nx", null],\ ["ejs", "npm:3.1.10"],\ ["enquirer", "npm:2.3.6"],\ ["ignore", "npm:5.2.4"],\ ["minimatch", "npm:9.0.3"],\ - ["nx", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["nx", null],\ ["semver", "npm:7.5.4"],\ ["tmp", "npm:0.2.1"],\ ["tslib", "npm:2.3.1"],\ @@ -6102,17 +6225,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:92959e652c35ec64e7ed77759271c38566880546b1cafe9ef0d6de89bfefdde0536b78000c9e6c88b51488dacd46950f9d7f7336f84e6264a09ad2fd8a8fd73e#npm:19.0.3", {\ - "packageLocation": "./.yarn/__virtual__/@nx-devkit-virtual-226aed7e8e/0/cache/@nx-devkit-npm-19.0.3-14710e511d-7a725d18c3.zip/node_modules/@nx/devkit/",\ + ["virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@nx-devkit-virtual-a1191799c6/0/cache/@nx-devkit-npm-19.0.3-14710e511d-7a725d18c3.zip/node_modules/@nx/devkit/",\ "packageDependencies": [\ - ["@nx/devkit", "virtual:92959e652c35ec64e7ed77759271c38566880546b1cafe9ef0d6de89bfefdde0536b78000c9e6c88b51488dacd46950f9d7f7336f84e6264a09ad2fd8a8fd73e#npm:19.0.3"],\ + ["@nx/devkit", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["@nrwl/devkit", "npm:19.0.3"],\ ["@types/nx", null],\ ["ejs", "npm:3.1.10"],\ ["enquirer", "npm:2.3.6"],\ ["ignore", "npm:5.2.4"],\ ["minimatch", "npm:9.0.3"],\ - ["nx", null],\ + ["nx", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["semver", "npm:7.5.4"],\ ["tmp", "npm:0.2.1"],\ ["tslib", "npm:2.3.1"],\ @@ -6575,7 +6698,8 @@ const RAW_RUNTIME_STATE = ["@types/react-dom", "npm:18.2.19"],\ ["@types/react-router-dom", "npm:5.3.3"],\ ["@types/testing-library__jest-dom", "npm:5.14.5"],\ - ["bids-validator", "npm:1.14.6"],\ + ["bids-validator", "npm:1.14.8"],\ + ["buffer", "npm:6.0.3"],\ ["bytes", "npm:3.1.0"],\ ["comlink", "npm:4.3.1"],\ ["core-js", "npm:3.25.1"],\ @@ -6624,7 +6748,7 @@ const RAW_RUNTIME_STATE = ["@openneuro/client", "workspace:packages/openneuro-client"],\ ["@types/mkdirp", "npm:1.0.2"],\ ["@types/node", "npm:20.12.7"],\ - ["bids-validator", "npm:1.14.6"],\ + ["bids-validator", "npm:1.14.8"],\ ["cli-progress", "npm:3.9.1"],\ ["commander", "npm:7.2.0"],\ ["core-js", "npm:3.18.0"],\ @@ -7959,14 +8083,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@sigstore/bundle", [\ - ["npm:1.1.0", {\ - "packageLocation": "./.yarn/cache/@sigstore-bundle-npm-1.1.0-b2cf24a13e-79e6cc4cc1.zip/node_modules/@sigstore/bundle/",\ - "packageDependencies": [\ - ["@sigstore/bundle", "npm:1.1.0"],\ - ["@sigstore/protobuf-specs", "npm:0.2.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.3.1", {\ "packageLocation": "./.yarn/cache/@sigstore-bundle-npm-2.3.1-0752f486b4-5e1024dfc5.zip/node_modules/@sigstore/bundle/",\ "packageDependencies": [\ @@ -7986,13 +8102,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@sigstore/protobuf-specs", [\ - ["npm:0.2.1", {\ - "packageLocation": "./.yarn/cache/@sigstore-protobuf-specs-npm-0.2.1-feecdcc08c-cb0b9d9b3e.zip/node_modules/@sigstore/protobuf-specs/",\ - "packageDependencies": [\ - ["@sigstore/protobuf-specs", "npm:0.2.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:0.3.2", {\ "packageLocation": "./.yarn/cache/@sigstore-protobuf-specs-npm-0.3.2-ff6825392f-350a6eb834.zip/node_modules/@sigstore/protobuf-specs/",\ "packageDependencies": [\ @@ -8002,16 +8111,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@sigstore/sign", [\ - ["npm:1.0.0", {\ - "packageLocation": "./.yarn/cache/@sigstore-sign-npm-1.0.0-d4cabc7c0c-44f23fc5ee.zip/node_modules/@sigstore/sign/",\ - "packageDependencies": [\ - ["@sigstore/sign", "npm:1.0.0"],\ - ["@sigstore/bundle", "npm:1.1.0"],\ - ["@sigstore/protobuf-specs", "npm:0.2.1"],\ - ["make-fetch-happen", "npm:11.1.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.3.1", {\ "packageLocation": "./.yarn/cache/@sigstore-sign-npm-2.3.1-bd0a456259-99d64bfcd0.zip/node_modules/@sigstore/sign/",\ "packageDependencies": [\ @@ -8027,15 +8126,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@sigstore/tuf", [\ - ["npm:1.0.3", {\ - "packageLocation": "./.yarn/cache/@sigstore-tuf-npm-1.0.3-9a2b6b14aa-5aa1cdea05.zip/node_modules/@sigstore/tuf/",\ - "packageDependencies": [\ - ["@sigstore/tuf", "npm:1.0.3"],\ - ["@sigstore/protobuf-specs", "npm:0.2.1"],\ - ["tuf-js", "npm:1.1.7"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.3.3", {\ "packageLocation": "./.yarn/cache/@sigstore-tuf-npm-2.3.3-fb3fa27cd1-4d3c5aa897.zip/node_modules/@sigstore/tuf/",\ "packageDependencies": [\ @@ -8104,11 +8194,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/abort-controller", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-abort-controller-npm-3.0.0-1756310f66-08bf21e792.zip/node_modules/@smithy/abort-controller/",\ + ["npm:3.1.1", {\ + "packageLocation": "./.yarn/cache/@smithy-abort-controller-npm-3.1.1-ae33afe2dd-fddb66718c.zip/node_modules/@smithy/abort-controller/",\ "packageDependencies": [\ - ["@smithy/abort-controller", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/abort-controller", "npm:3.1.1"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -8136,57 +8226,57 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/config-resolver", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-config-resolver-npm-3.0.0-f642f0206e-78d6a13cb7.zip/node_modules/@smithy/config-resolver/",\ + ["npm:3.0.5", {\ + "packageLocation": "./.yarn/cache/@smithy-config-resolver-npm-3.0.5-389d088958-ce12d0fbb1.zip/node_modules/@smithy/config-resolver/",\ "packageDependencies": [\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-config-provider", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/core", [\ - ["npm:2.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-core-npm-2.0.0-072afa6bd4-793c845069.zip/node_modules/@smithy/core/",\ - "packageDependencies": [\ - ["@smithy/core", "npm:2.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ + ["npm:2.3.2", {\ + "packageLocation": "./.yarn/cache/@smithy-core-npm-2.3.2-3ac7b8ee84-d5e091a22f.zip/node_modules/@smithy/core/",\ + "packageDependencies": [\ + ["@smithy/core", "npm:2.3.2"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/credential-provider-imds", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-credential-provider-imds-npm-3.0.0-376a668b41-793e826a6d.zip/node_modules/@smithy/credential-provider-imds/",\ + ["npm:3.2.0", {\ + "packageLocation": "./.yarn/cache/@smithy-credential-provider-imds-npm-3.2.0-9d518581c9-952a688664.zip/node_modules/@smithy/credential-provider-imds/",\ "packageDependencies": [\ - ["@smithy/credential-provider-imds", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ + ["@smithy/credential-provider-imds", "npm:3.2.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/eventstream-codec", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-eventstream-codec-npm-3.0.0-96584120c9-66ec273253.zip/node_modules/@smithy/eventstream-codec/",\ + ["npm:3.1.2", {\ + "packageLocation": "./.yarn/cache/@smithy-eventstream-codec-npm-3.1.2-906a710cba-27c8833d5e.zip/node_modules/@smithy/eventstream-codec/",\ "packageDependencies": [\ - ["@smithy/eventstream-codec", "npm:3.0.0"],\ - ["@aws-crypto/crc32", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/eventstream-codec", "npm:3.1.2"],\ + ["@aws-crypto/crc32", "npm:5.2.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-hex-encoding", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8194,60 +8284,60 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/eventstream-serde-browser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-browser-npm-3.0.0-01c0aa5553-a04c6a5207.zip/node_modules/@smithy/eventstream-serde-browser/",\ + ["npm:3.0.6", {\ + "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-browser-npm-3.0.6-330853b8ff-52307fd5a2.zip/node_modules/@smithy/eventstream-serde-browser/",\ "packageDependencies": [\ - ["@smithy/eventstream-serde-browser", "npm:3.0.0"],\ - ["@smithy/eventstream-serde-universal", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/eventstream-serde-browser", "npm:3.0.6"],\ + ["@smithy/eventstream-serde-universal", "npm:3.0.5"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/eventstream-serde-config-resolver", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-config-resolver-npm-3.0.0-8e8ce639e7-c07f698072.zip/node_modules/@smithy/eventstream-serde-config-resolver/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-config-resolver-npm-3.0.3-fb7ef7ae11-d5e152ec1a.zip/node_modules/@smithy/eventstream-serde-config-resolver/",\ "packageDependencies": [\ - ["@smithy/eventstream-serde-config-resolver", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/eventstream-serde-config-resolver", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/eventstream-serde-node", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-node-npm-3.0.0-1612b9ffcb-46921fae3e.zip/node_modules/@smithy/eventstream-serde-node/",\ + ["npm:3.0.5", {\ + "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-node-npm-3.0.5-ef9491b2d3-1341831a82.zip/node_modules/@smithy/eventstream-serde-node/",\ "packageDependencies": [\ - ["@smithy/eventstream-serde-node", "npm:3.0.0"],\ - ["@smithy/eventstream-serde-universal", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/eventstream-serde-node", "npm:3.0.5"],\ + ["@smithy/eventstream-serde-universal", "npm:3.0.5"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/eventstream-serde-universal", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-universal-npm-3.0.0-8245fd2986-6bca578541.zip/node_modules/@smithy/eventstream-serde-universal/",\ + ["npm:3.0.5", {\ + "packageLocation": "./.yarn/cache/@smithy-eventstream-serde-universal-npm-3.0.5-d3bbe38af4-88636b6a53.zip/node_modules/@smithy/eventstream-serde-universal/",\ "packageDependencies": [\ - ["@smithy/eventstream-serde-universal", "npm:3.0.0"],\ - ["@smithy/eventstream-codec", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/eventstream-serde-universal", "npm:3.0.5"],\ + ["@smithy/eventstream-codec", "npm:3.1.2"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/fetch-http-handler", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-fetch-http-handler-npm-3.0.0-d96810917a-357b6c5438.zip/node_modules/@smithy/fetch-http-handler/",\ + ["npm:3.2.4", {\ + "packageLocation": "./.yarn/cache/@smithy-fetch-http-handler-npm-3.2.4-dce034905f-17ae7e5fd8.zip/node_modules/@smithy/fetch-http-handler/",\ "packageDependencies": [\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/querystring-builder", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/querystring-builder", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8255,24 +8345,24 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/hash-blob-browser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-hash-blob-browser-npm-3.0.0-04eb6d1d7e-c8f6d76d8d.zip/node_modules/@smithy/hash-blob-browser/",\ + ["npm:3.1.2", {\ + "packageLocation": "./.yarn/cache/@smithy-hash-blob-browser-npm-3.1.2-0ac17f1d7f-2bfb4d95e9.zip/node_modules/@smithy/hash-blob-browser/",\ "packageDependencies": [\ - ["@smithy/hash-blob-browser", "npm:3.0.0"],\ + ["@smithy/hash-blob-browser", "npm:3.1.2"],\ ["@smithy/chunked-blob-reader", "npm:3.0.0"],\ ["@smithy/chunked-blob-reader-native", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/hash-node", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-hash-node-npm-3.0.0-b4e21fde67-99c65bc992.zip/node_modules/@smithy/hash-node/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-hash-node-npm-3.0.3-80b37554ea-bdab23304f.zip/node_modules/@smithy/hash-node/",\ "packageDependencies": [\ - ["@smithy/hash-node", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/hash-node", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-buffer-from", "npm:3.0.0"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ @@ -8281,11 +8371,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/hash-stream-node", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-hash-stream-node-npm-3.0.0-c0484bac53-1e67ad7942.zip/node_modules/@smithy/hash-stream-node/",\ + ["npm:3.1.2", {\ + "packageLocation": "./.yarn/cache/@smithy-hash-stream-node-npm-3.1.2-259cdfede8-a261dc15af.zip/node_modules/@smithy/hash-stream-node/",\ "packageDependencies": [\ - ["@smithy/hash-stream-node", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/hash-stream-node", "npm:3.1.2"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8293,17 +8383,25 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/invalid-dependency", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-invalid-dependency-npm-3.0.0-4023cdc9a6-e78e9cbe1c.zip/node_modules/@smithy/invalid-dependency/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-invalid-dependency-npm-3.0.3-e50e48740a-f0f93c762e.zip/node_modules/@smithy/invalid-dependency/",\ "packageDependencies": [\ - ["@smithy/invalid-dependency", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/invalid-dependency", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/is-array-buffer", [\ + ["npm:2.2.0", {\ + "packageLocation": "./.yarn/cache/@smithy-is-array-buffer-npm-2.2.0-108320772d-d366743ecc.zip/node_modules/@smithy/is-array-buffer/",\ + "packageDependencies": [\ + ["@smithy/is-array-buffer", "npm:2.2.0"],\ + ["tslib", "npm:2.6.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/@smithy-is-array-buffer-npm-3.0.0-8e8215ad1c-cab1fd4033.zip/node_modules/@smithy/is-array-buffer/",\ "packageDependencies": [\ @@ -8314,11 +8412,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/md5-js", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-md5-js-npm-3.0.0-ed3d301283-098b849ee7.zip/node_modules/@smithy/md5-js/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-md5-js-npm-3.0.3-3afb74c15e-0c600033cf.zip/node_modules/@smithy/md5-js/",\ "packageDependencies": [\ - ["@smithy/md5-js", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/md5-js", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8326,45 +8424,45 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/middleware-content-length", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-middleware-content-length-npm-3.0.0-67a9e7d99b-2d1dc5766a.zip/node_modules/@smithy/middleware-content-length/",\ + ["npm:3.0.5", {\ + "packageLocation": "./.yarn/cache/@smithy-middleware-content-length-npm-3.0.5-2a4d36e50b-cf14097b97.zip/node_modules/@smithy/middleware-content-length/",\ "packageDependencies": [\ - ["@smithy/middleware-content-length", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/middleware-content-length", "npm:3.0.5"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/middleware-endpoint", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-middleware-endpoint-npm-3.0.0-c166be89ba-b39b8a3c8d.zip/node_modules/@smithy/middleware-endpoint/",\ - "packageDependencies": [\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/url-parser", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ + ["npm:3.1.0", {\ + "packageLocation": "./.yarn/cache/@smithy-middleware-endpoint-npm-3.1.0-d1fee63d6b-2d83e40187.zip/node_modules/@smithy/middleware-endpoint/",\ + "packageDependencies": [\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/middleware-retry", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-middleware-retry-npm-3.0.0-0feefd16e7-9158545d29.zip/node_modules/@smithy/middleware-retry/",\ - "packageDependencies": [\ - ["@smithy/middleware-retry", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/service-error-classification", "npm:3.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["@smithy/util-retry", "npm:3.0.0"],\ + ["npm:3.0.14", {\ + "packageLocation": "./.yarn/cache/@smithy-middleware-retry-npm-3.0.14-901529b835-87acb28eb0.zip/node_modules/@smithy/middleware-retry/",\ + "packageDependencies": [\ + ["@smithy/middleware-retry", "npm:3.0.14"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/service-error-classification", "npm:3.0.3"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ ["tslib", "npm:2.6.2"],\ ["uuid", "npm:9.0.1"]\ ],\ @@ -8372,82 +8470,82 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/middleware-serde", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-middleware-serde-npm-3.0.0-47c903c77e-7ca5256fe9.zip/node_modules/@smithy/middleware-serde/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-middleware-serde-npm-3.0.3-da9d7de0c6-de9c7f85f0.zip/node_modules/@smithy/middleware-serde/",\ "packageDependencies": [\ - ["@smithy/middleware-serde", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/middleware-serde", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/middleware-stack", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-middleware-stack-npm-3.0.0-2defb8d4ac-e85695b2d2.zip/node_modules/@smithy/middleware-stack/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-middleware-stack-npm-3.0.3-15f408369c-fe5eabc9cd.zip/node_modules/@smithy/middleware-stack/",\ "packageDependencies": [\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/node-config-provider", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-node-config-provider-npm-3.0.0-588f2e842c-6f53261624.zip/node_modules/@smithy/node-config-provider/",\ + ["npm:3.1.4", {\ + "packageLocation": "./.yarn/cache/@smithy-node-config-provider-npm-3.1.4-e7f48a75c0-67704040a7.zip/node_modules/@smithy/node-config-provider/",\ "packageDependencies": [\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/node-http-handler", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-node-http-handler-npm-3.0.0-c1c492cac9-3d2d0fff55.zip/node_modules/@smithy/node-http-handler/",\ + ["npm:3.1.4", {\ + "packageLocation": "./.yarn/cache/@smithy-node-http-handler-npm-3.1.4-aaa78b93c9-77f90b01fa.zip/node_modules/@smithy/node-http-handler/",\ "packageDependencies": [\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/abort-controller", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/querystring-builder", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/abort-controller", "npm:3.1.1"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/querystring-builder", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/property-provider", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-property-provider-npm-3.0.0-d87bb680eb-37c9b949f0.zip/node_modules/@smithy/property-provider/",\ + ["npm:3.1.3", {\ + "packageLocation": "./.yarn/cache/@smithy-property-provider-npm-3.1.3-db8aa60fc4-6e605e339d.zip/node_modules/@smithy/property-provider/",\ "packageDependencies": [\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/protocol-http", [\ - ["npm:4.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-protocol-http-npm-4.0.0-75a5e206a3-0e663013be.zip/node_modules/@smithy/protocol-http/",\ + ["npm:4.1.0", {\ + "packageLocation": "./.yarn/cache/@smithy-protocol-http-npm-4.1.0-24b636ed95-776da3e2df.zip/node_modules/@smithy/protocol-http/",\ "packageDependencies": [\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/querystring-builder", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-querystring-builder-npm-3.0.0-0534085e5a-bca3e4c321.zip/node_modules/@smithy/querystring-builder/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-querystring-builder-npm-3.0.3-64915d452f-c5296fdc7b.zip/node_modules/@smithy/querystring-builder/",\ "packageDependencies": [\ - ["@smithy/querystring-builder", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/querystring-builder", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-uri-escape", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8455,46 +8553,47 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/querystring-parser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-querystring-parser-npm-3.0.0-7a5901d5a3-c0258dd552.zip/node_modules/@smithy/querystring-parser/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-querystring-parser-npm-3.0.3-83bd86d1d2-9a30a6830c.zip/node_modules/@smithy/querystring-parser/",\ "packageDependencies": [\ - ["@smithy/querystring-parser", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/querystring-parser", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/service-error-classification", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-service-error-classification-npm-3.0.0-61a6847a3a-b7922ac401.zip/node_modules/@smithy/service-error-classification/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-service-error-classification-npm-3.0.3-a78cb073e9-5001c563d2.zip/node_modules/@smithy/service-error-classification/",\ "packageDependencies": [\ - ["@smithy/service-error-classification", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"]\ + ["@smithy/service-error-classification", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/shared-ini-file-loader", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-shared-ini-file-loader-npm-3.0.0-7ab13b5c41-29b2fda4aa.zip/node_modules/@smithy/shared-ini-file-loader/",\ + ["npm:3.1.4", {\ + "packageLocation": "./.yarn/cache/@smithy-shared-ini-file-loader-npm-3.1.4-e2a48c37e7-2e0cd631ae.zip/node_modules/@smithy/shared-ini-file-loader/",\ "packageDependencies": [\ - ["@smithy/shared-ini-file-loader", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/shared-ini-file-loader", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/signature-v4", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-signature-v4-npm-3.0.0-05cd3e777d-528461766b.zip/node_modules/@smithy/signature-v4/",\ + ["npm:4.1.0", {\ + "packageLocation": "./.yarn/cache/@smithy-signature-v4-npm-4.1.0-70eadf1b5a-9f806d82f5.zip/node_modules/@smithy/signature-v4/",\ "packageDependencies": [\ - ["@smithy/signature-v4", "npm:3.0.0"],\ + ["@smithy/signature-v4", "npm:4.1.0"],\ ["@smithy/is-array-buffer", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-hex-encoding", "npm:3.0.0"],\ - ["@smithy/util-middleware", "npm:3.0.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ ["@smithy/util-uri-escape", "npm:3.0.0"],\ ["@smithy/util-utf8", "npm:3.0.0"],\ ["tslib", "npm:2.6.2"]\ @@ -8503,15 +8602,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/smithy-client", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-smithy-client-npm-3.0.0-8a180afacb-22c940ac2b.zip/node_modules/@smithy/smithy-client/",\ - "packageDependencies": [\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/middleware-endpoint", "npm:3.0.0"],\ - ["@smithy/middleware-stack", "npm:3.0.0"],\ - ["@smithy/protocol-http", "npm:4.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ - ["@smithy/util-stream", "npm:3.0.0"],\ + ["npm:3.1.12", {\ + "packageLocation": "./.yarn/cache/@smithy-smithy-client-npm-3.1.12-6b357b0676-00ae69f358.zip/node_modules/@smithy/smithy-client/",\ + "packageDependencies": [\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/middleware-endpoint", "npm:3.1.0"],\ + ["@smithy/middleware-stack", "npm:3.0.3"],\ + ["@smithy/protocol-http", "npm:4.1.0"],\ + ["@smithy/types", "npm:3.3.0"],\ + ["@smithy/util-stream", "npm:3.1.3"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -8526,22 +8625,22 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-types-npm-3.0.0-8f81574d4f-8b9a45fc24.zip/node_modules/@smithy/types/",\ + ["npm:3.3.0", {\ + "packageLocation": "./.yarn/cache/@smithy-types-npm-3.3.0-83a2fe540e-a463df41df.zip/node_modules/@smithy/types/",\ "packageDependencies": [\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/url-parser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-url-parser-npm-3.0.0-8a711f9f95-f88c1a2537.zip/node_modules/@smithy/url-parser/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-url-parser-npm-3.0.3-28cba7767a-47c9e7980f.zip/node_modules/@smithy/url-parser/",\ "packageDependencies": [\ - ["@smithy/url-parser", "npm:3.0.0"],\ - ["@smithy/querystring-parser", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/url-parser", "npm:3.0.3"],\ + ["@smithy/querystring-parser", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -8580,6 +8679,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-buffer-from", [\ + ["npm:2.2.0", {\ + "packageLocation": "./.yarn/cache/@smithy-util-buffer-from-npm-2.2.0-0ef5989125-53253e4e35.zip/node_modules/@smithy/util-buffer-from/",\ + "packageDependencies": [\ + ["@smithy/util-buffer-from", "npm:2.2.0"],\ + ["@smithy/is-array-buffer", "npm:2.2.0"],\ + ["tslib", "npm:2.6.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/@smithy-util-buffer-from-npm-3.0.0-7f54bf03c3-7e6596b388.zip/node_modules/@smithy/util-buffer-from/",\ "packageDependencies": [\ @@ -8601,13 +8709,13 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-defaults-mode-browser", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-defaults-mode-browser-npm-3.0.0-2a783fdb45-b55f2f1c83.zip/node_modules/@smithy/util-defaults-mode-browser/",\ + ["npm:3.0.14", {\ + "packageLocation": "./.yarn/cache/@smithy-util-defaults-mode-browser-npm-3.0.14-9421feea1f-45883490f6.zip/node_modules/@smithy/util-defaults-mode-browser/",\ "packageDependencies": [\ - ["@smithy/util-defaults-mode-browser", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-defaults-mode-browser", "npm:3.0.14"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ ["bowser", "npm:2.11.0"],\ ["tslib", "npm:2.6.2"]\ ],\ @@ -8615,28 +8723,28 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-defaults-mode-node", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-defaults-mode-node-npm-3.0.0-2ce9ef93a2-0a26701c01.zip/node_modules/@smithy/util-defaults-mode-node/",\ - "packageDependencies": [\ - ["@smithy/util-defaults-mode-node", "npm:3.0.0"],\ - ["@smithy/config-resolver", "npm:3.0.0"],\ - ["@smithy/credential-provider-imds", "npm:3.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/property-provider", "npm:3.0.0"],\ - ["@smithy/smithy-client", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["npm:3.0.14", {\ + "packageLocation": "./.yarn/cache/@smithy-util-defaults-mode-node-npm-3.0.14-c5e631fbab-bccb5141fb.zip/node_modules/@smithy/util-defaults-mode-node/",\ + "packageDependencies": [\ + ["@smithy/util-defaults-mode-node", "npm:3.0.14"],\ + ["@smithy/config-resolver", "npm:3.0.5"],\ + ["@smithy/credential-provider-imds", "npm:3.2.0"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/property-provider", "npm:3.1.3"],\ + ["@smithy/smithy-client", "npm:3.1.12"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/util-endpoints", [\ - ["npm:2.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-endpoints-npm-2.0.0-ca86db1958-49e897e8b1.zip/node_modules/@smithy/util-endpoints/",\ + ["npm:2.0.5", {\ + "packageLocation": "./.yarn/cache/@smithy-util-endpoints-npm-2.0.5-03e51ec71e-e662817c9e.zip/node_modules/@smithy/util-endpoints/",\ "packageDependencies": [\ - ["@smithy/util-endpoints", "npm:2.0.0"],\ - ["@smithy/node-config-provider", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-endpoints", "npm:2.0.5"],\ + ["@smithy/node-config-provider", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -8653,36 +8761,36 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-middleware", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-middleware-npm-3.0.0-6045ce7e88-e9878f8532.zip/node_modules/@smithy/util-middleware/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-util-middleware-npm-3.0.3-eaa286eca1-17a45e8a8e.zip/node_modules/@smithy/util-middleware/",\ "packageDependencies": [\ - ["@smithy/util-middleware", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-middleware", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/util-retry", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-retry-npm-3.0.0-2052731cbc-9e38115e47.zip/node_modules/@smithy/util-retry/",\ + ["npm:3.0.3", {\ + "packageLocation": "./.yarn/cache/@smithy-util-retry-npm-3.0.3-134a8f998b-b4dbb47add.zip/node_modules/@smithy/util-retry/",\ "packageDependencies": [\ - ["@smithy/util-retry", "npm:3.0.0"],\ - ["@smithy/service-error-classification", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-retry", "npm:3.0.3"],\ + ["@smithy/service-error-classification", "npm:3.0.3"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@smithy/util-stream", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-stream-npm-3.0.0-199dba418d-ad263551e2.zip/node_modules/@smithy/util-stream/",\ + ["npm:3.1.3", {\ + "packageLocation": "./.yarn/cache/@smithy-util-stream-npm-3.1.3-967488cf33-94907e6aaf.zip/node_modules/@smithy/util-stream/",\ "packageDependencies": [\ - ["@smithy/util-stream", "npm:3.0.0"],\ - ["@smithy/fetch-http-handler", "npm:3.0.0"],\ - ["@smithy/node-http-handler", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-stream", "npm:3.1.3"],\ + ["@smithy/fetch-http-handler", "npm:3.2.4"],\ + ["@smithy/node-http-handler", "npm:3.1.4"],\ + ["@smithy/types", "npm:3.3.0"],\ ["@smithy/util-base64", "npm:3.0.0"],\ ["@smithy/util-buffer-from", "npm:3.0.0"],\ ["@smithy/util-hex-encoding", "npm:3.0.0"],\ @@ -8703,6 +8811,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-utf8", [\ + ["npm:2.3.0", {\ + "packageLocation": "./.yarn/cache/@smithy-util-utf8-npm-2.3.0-9dcba0d35f-c766ead8da.zip/node_modules/@smithy/util-utf8/",\ + "packageDependencies": [\ + ["@smithy/util-utf8", "npm:2.3.0"],\ + ["@smithy/util-buffer-from", "npm:2.2.0"],\ + ["tslib", "npm:2.6.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/@smithy-util-utf8-npm-3.0.0-1695d28ad7-1aead297d8.zip/node_modules/@smithy/util-utf8/",\ "packageDependencies": [\ @@ -8714,12 +8831,12 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@smithy/util-waiter", [\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/@smithy-util-waiter-npm-3.0.0-07c6bbfcf9-d206c9f661.zip/node_modules/@smithy/util-waiter/",\ + ["npm:3.1.2", {\ + "packageLocation": "./.yarn/cache/@smithy-util-waiter-npm-3.1.2-660336217b-ddc8ec3b86.zip/node_modules/@smithy/util-waiter/",\ "packageDependencies": [\ - ["@smithy/util-waiter", "npm:3.0.0"],\ - ["@smithy/abort-controller", "npm:3.0.0"],\ - ["@smithy/types", "npm:3.0.0"],\ + ["@smithy/util-waiter", "npm:3.1.2"],\ + ["@smithy/abort-controller", "npm:3.1.1"],\ + ["@smithy/types", "npm:3.3.0"],\ ["tslib", "npm:2.6.2"]\ ],\ "linkType": "HARD"\ @@ -8950,23 +9067,9 @@ const RAW_RUNTIME_STATE = ["@tootallnate/once", "npm:1.1.2"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:2.0.0", {\ - "packageLocation": "./.yarn/cache/@tootallnate-once-npm-2.0.0-e36cf4f140-ad87447820.zip/node_modules/@tootallnate/once/",\ - "packageDependencies": [\ - ["@tootallnate/once", "npm:2.0.0"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["@tufjs/canonical-json", [\ - ["npm:1.0.0", {\ - "packageLocation": "./.yarn/cache/@tufjs-canonical-json-npm-1.0.0-66d27d850f-9ff3bcd129.zip/node_modules/@tufjs/canonical-json/",\ - "packageDependencies": [\ - ["@tufjs/canonical-json", "npm:1.0.0"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/@tufjs-canonical-json-npm-2.0.0-46a22aa444-cc719a1d0d.zip/node_modules/@tufjs/canonical-json/",\ "packageDependencies": [\ @@ -8976,15 +9079,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@tufjs/models", [\ - ["npm:1.0.4", {\ - "packageLocation": "./.yarn/cache/@tufjs-models-npm-1.0.4-a1dddaf561-2c63e9cfc0.zip/node_modules/@tufjs/models/",\ - "packageDependencies": [\ - ["@tufjs/models", "npm:1.0.4"],\ - ["@tufjs/canonical-json", "npm:1.0.0"],\ - ["minimatch", "npm:9.0.3"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.0.1", {\ "packageLocation": "./.yarn/cache/@tufjs-models-npm-2.0.1-39153b9fec-7c5d2b8194.zip/node_modules/@tufjs/models/",\ "packageDependencies": [\ @@ -10722,16 +10816,6 @@ const RAW_RUNTIME_STATE = ["humanize-ms", "npm:1.2.1"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:4.2.1", {\ - "packageLocation": "./.yarn/cache/agentkeepalive-npm-4.2.1-b86a9fb343-63961cba1a.zip/node_modules/agentkeepalive/",\ - "packageDependencies": [\ - ["agentkeepalive", "npm:4.2.1"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["depd", "npm:1.1.2"],\ - ["humanize-ms", "npm:1.2.1"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["aggregate-error", [\ @@ -10927,15 +11011,6 @@ const RAW_RUNTIME_STATE = ["readable-stream", "npm:2.3.7"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:3.0.1", {\ - "packageLocation": "./.yarn/cache/are-we-there-yet-npm-3.0.1-3395b1512f-390731720e.zip/node_modules/are-we-there-yet/",\ - "packageDependencies": [\ - ["are-we-there-yet", "npm:3.0.1"],\ - ["delegates", "npm:1.0.0"],\ - ["readable-stream", "npm:3.6.0"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["arg", [\ @@ -11372,15 +11447,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:b278756a522c5a2b833fa7b26fda1dba58349ff098950c76beb604c833e7de837b9c5b74af2d6668937e192e4e2d692b9881f4a9e845577acfe54f9ad8e57a0e#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/babel-jest-virtual-848dba78b5/0/cache/babel-jest-npm-29.7.0-273152fbe9-8a0953bd81.zip/node_modules/babel-jest/",\ + ["virtual:9187ef43144ff2ff6cde08072db08b3d7577ff43f25b811bc927c4c6221457cef125553f24b50c614fc75ace5abc210bd1c3df77cad016252dfb06d35e84a04d#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/babel-jest-virtual-ede8e41513/0/cache/babel-jest-npm-29.7.0-273152fbe9-8a0953bd81.zip/node_modules/babel-jest/",\ "packageDependencies": [\ - ["babel-jest", "virtual:b278756a522c5a2b833fa7b26fda1dba58349ff098950c76beb604c833e7de837b9c5b74af2d6668937e192e4e2d692b9881f4a9e845577acfe54f9ad8e57a0e#npm:29.7.0"],\ + ["babel-jest", "virtual:9187ef43144ff2ff6cde08072db08b3d7577ff43f25b811bc927c4c6221457cef125553f24b50c614fc75ace5abc210bd1c3df77cad016252dfb06d35e84a04d#npm:29.7.0"],\ ["@babel/core", "npm:7.22.17"],\ ["@jest/transform", "npm:29.7.0"],\ ["@types/babel__core", "npm:7.20.1"],\ ["babel-plugin-istanbul", "npm:6.1.1"],\ - ["babel-preset-jest", "virtual:848dba78b5b7a62147f485362f0d363b0e326d33a4bf90290b5959701a221c14690901c1a0bbc55184cbe670ca02f1ea455c7a1b4c95f52be53f4c9a6363fa92#npm:29.6.3"],\ + ["babel-preset-jest", "virtual:ede8e4151357e7afab1876cef9e6efe966db4ed6f790c7c6348ce8988bc5c473696293a9cf170be432b47d93c255b1b4f4084f4917fcb1c5bde801d134c828d1#npm:29.6.3"],\ ["chalk", "npm:4.1.2"],\ ["graceful-fs", "npm:4.2.10"],\ ["slash", "npm:3.0.0"]\ @@ -11463,23 +11538,23 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:5e0c83a6ea5219acad44160a9fec2b5decda9414e15a2baa98ee0aec5cb7ae59ec85d2ca97c14d89da825f299db16b408b9b54f472b562b6cde14563710d2780#npm:1.0.1", {\ - "packageLocation": "./.yarn/__virtual__/babel-preset-current-node-syntax-virtual-7c45d5bdb1/0/cache/babel-preset-current-node-syntax-npm-1.0.1-849ec71e32-94561959cb.zip/node_modules/babel-preset-current-node-syntax/",\ + ["virtual:dd300b46a0ac78039a854fb99fe158916875327a0470cf2b90b5d500950631d65655a76e42d9121117127a1c01462ccea67b22d0424cd978d23df68fa5d73ece#npm:1.0.1", {\ + "packageLocation": "./.yarn/__virtual__/babel-preset-current-node-syntax-virtual-c37f12da11/0/cache/babel-preset-current-node-syntax-npm-1.0.1-849ec71e32-94561959cb.zip/node_modules/babel-preset-current-node-syntax/",\ "packageDependencies": [\ - ["babel-preset-current-node-syntax", "virtual:5e0c83a6ea5219acad44160a9fec2b5decda9414e15a2baa98ee0aec5cb7ae59ec85d2ca97c14d89da825f299db16b408b9b54f472b562b6cde14563710d2780#npm:1.0.1"],\ + ["babel-preset-current-node-syntax", "virtual:dd300b46a0ac78039a854fb99fe158916875327a0470cf2b90b5d500950631d65655a76e42d9121117127a1c01462ccea67b22d0424cd978d23df68fa5d73ece#npm:1.0.1"],\ ["@babel/core", "npm:7.22.17"],\ - ["@babel/plugin-syntax-async-generators", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.4"],\ - ["@babel/plugin-syntax-bigint", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-class-properties", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.12.13"],\ - ["@babel/plugin-syntax-import-meta", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ - ["@babel/plugin-syntax-json-strings", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-logical-assignment-operators", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ - ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-numeric-separator", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.10.4"],\ - ["@babel/plugin-syntax-object-rest-spread", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-optional-catch-binding", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-optional-chaining", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.8.3"],\ - ["@babel/plugin-syntax-top-level-await", "virtual:7c45d5bdb104824b7cfbce10fe870bbdeabef939883ee590ea09caf588d04fc3541654d1ca2ff56edd281f48bc3e260b381a56a263284f9107b23f63b38369c4#npm:7.14.5"],\ + ["@babel/plugin-syntax-async-generators", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.4"],\ + ["@babel/plugin-syntax-bigint", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-class-properties", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.12.13"],\ + ["@babel/plugin-syntax-import-meta", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ + ["@babel/plugin-syntax-json-strings", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-logical-assignment-operators", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ + ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-numeric-separator", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.10.4"],\ + ["@babel/plugin-syntax-object-rest-spread", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-catch-binding", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-optional-chaining", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.8.3"],\ + ["@babel/plugin-syntax-top-level-await", "virtual:c37f12da115bde5790eac94f9dd12de21fe8b587ed5635437966b6086304903b898c53358effd2ee99976bed004b2d4820d6ab08cb2715f139a7f95e7beba8ad#npm:7.14.5"],\ ["@types/babel__core", "npm:7.20.1"]\ ],\ "packagePeers": [\ @@ -11497,14 +11572,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:848dba78b5b7a62147f485362f0d363b0e326d33a4bf90290b5959701a221c14690901c1a0bbc55184cbe670ca02f1ea455c7a1b4c95f52be53f4c9a6363fa92#npm:29.6.3", {\ - "packageLocation": "./.yarn/__virtual__/babel-preset-jest-virtual-5e0c83a6ea/0/cache/babel-preset-jest-npm-29.6.3-44bf6eeda9-aa4ff2a8a7.zip/node_modules/babel-preset-jest/",\ + ["virtual:ede8e4151357e7afab1876cef9e6efe966db4ed6f790c7c6348ce8988bc5c473696293a9cf170be432b47d93c255b1b4f4084f4917fcb1c5bde801d134c828d1#npm:29.6.3", {\ + "packageLocation": "./.yarn/__virtual__/babel-preset-jest-virtual-dd300b46a0/0/cache/babel-preset-jest-npm-29.6.3-44bf6eeda9-aa4ff2a8a7.zip/node_modules/babel-preset-jest/",\ "packageDependencies": [\ - ["babel-preset-jest", "virtual:848dba78b5b7a62147f485362f0d363b0e326d33a4bf90290b5959701a221c14690901c1a0bbc55184cbe670ca02f1ea455c7a1b4c95f52be53f4c9a6363fa92#npm:29.6.3"],\ + ["babel-preset-jest", "virtual:ede8e4151357e7afab1876cef9e6efe966db4ed6f790c7c6348ce8988bc5c473696293a9cf170be432b47d93c255b1b4f4084f4917fcb1c5bde801d134c828d1#npm:29.6.3"],\ ["@babel/core", "npm:7.22.17"],\ ["@types/babel__core", "npm:7.20.1"],\ ["babel-plugin-jest-hoist", "npm:29.6.3"],\ - ["babel-preset-current-node-syntax", "virtual:5e0c83a6ea5219acad44160a9fec2b5decda9414e15a2baa98ee0aec5cb7ae59ec85d2ca97c14d89da825f299db16b408b9b54f472b562b6cde14563710d2780#npm:1.0.1"]\ + ["babel-preset-current-node-syntax", "virtual:dd300b46a0ac78039a854fb99fe158916875327a0470cf2b90b5d500950631d65655a76e42d9121117127a1c01462ccea67b22d0424cd978d23df68fa5d73ece#npm:1.0.1"]\ ],\ "packagePeers": [\ "@babel/core",\ @@ -11604,33 +11679,33 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["bids-validator", [\ - ["npm:1.14.6", {\ - "packageLocation": "./.yarn/cache/bids-validator-npm-1.14.6-963c647ea0-385ce2c482.zip/node_modules/bids-validator/",\ + ["npm:1.14.8", {\ + "packageLocation": "./.yarn/cache/bids-validator-npm-1.14.8-8605768249-f3fd2eafa3.zip/node_modules/bids-validator/",\ "packageDependencies": [\ - ["bids-validator", "npm:1.14.6"],\ - ["@aws-sdk/client-s3", "npm:3.575.0"],\ + ["bids-validator", "npm:1.14.8"],\ + ["@aws-sdk/client-s3", "npm:3.631.0"],\ ["ajv", "npm:6.12.6"],\ ["bytes", "npm:3.1.2"],\ ["colors", "npm:1.4.0"],\ ["cross-fetch", "npm:4.0.0"],\ ["date-fns", "npm:3.6.0"],\ ["events", "npm:3.3.0"],\ - ["exifreader", "npm:4.23.1"],\ - ["hed-validator", "npm:3.13.5"],\ + ["exifreader", "npm:4.23.3"],\ + ["hed-validator", "npm:3.15.4"],\ ["ignore", "npm:5.3.1"],\ ["is-utf8", "npm:0.2.1"],\ - ["jest", "virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:29.7.0"],\ + ["jest", "virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:29.7.0"],\ ["jshint", "npm:2.13.6"],\ - ["lerna", "npm:8.1.3"],\ + ["lerna", "npm:8.1.8"],\ ["lodash", "npm:4.17.21"],\ ["minimatch", "npm:3.0.5"],\ - ["next", "virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:14.2.3"],\ + ["next", "virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:14.2.5"],\ ["nifti-js", "npm:1.0.1"],\ ["p-limit", "npm:2.3.0"],\ ["pako", "npm:1.0.11"],\ ["path", "npm:0.12.7"],\ ["pluralize", "npm:8.0.0"],\ - ["semver", "npm:7.6.0"],\ + ["semver", "npm:7.6.3"],\ ["stream-browserify", "npm:3.0.0"],\ ["table", "npm:6.8.2"],\ ["util", "npm:0.12.5"],\ @@ -11650,6 +11725,19 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["bin-links", [\ + ["npm:4.0.4", {\ + "packageLocation": "./.yarn/cache/bin-links-npm-4.0.4-d69a54d1b0-58d62143aa.zip/node_modules/bin-links/",\ + "packageDependencies": [\ + ["bin-links", "npm:4.0.4"],\ + ["cmd-shim", "npm:6.0.3"],\ + ["npm-normalize-package-bin", "npm:3.0.1"],\ + ["read-cmd-shim", "npm:4.0.0"],\ + ["write-file-atomic", "npm:5.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["binary-extensions", [\ ["npm:2.2.0", {\ "packageLocation": "./.yarn/cache/binary-extensions-npm-2.2.0-180c33fec7-ccd267956c.zip/node_modules/binary-extensions/",\ @@ -12003,16 +12091,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:17.1.4", {\ - "packageLocation": "./.yarn/cache/cacache-npm-17.1.4-51ef53d0a8-6e26c788bc.zip/node_modules/cacache/",\ + ["npm:18.0.3", {\ + "packageLocation": "./.yarn/cache/cacache-npm-18.0.3-7936f526c3-d4c161f071.zip/node_modules/cacache/",\ "packageDependencies": [\ - ["cacache", "npm:17.1.4"],\ + ["cacache", "npm:18.0.3"],\ ["@npmcli/fs", "npm:3.1.0"],\ ["fs-minipass", "npm:3.0.3"],\ ["glob", "npm:10.3.4"],\ - ["lru-cache", "npm:7.18.3"],\ + ["lru-cache", "npm:10.1.0"],\ ["minipass", "npm:7.0.3"],\ - ["minipass-collect", "npm:1.0.2"],\ + ["minipass-collect", "npm:2.0.1"],\ ["minipass-flush", "npm:1.0.5"],\ ["minipass-pipeline", "npm:1.2.4"],\ ["p-map", "npm:4.0.0"],\ @@ -12022,10 +12110,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:18.0.3", {\ - "packageLocation": "./.yarn/cache/cacache-npm-18.0.3-7936f526c3-d4c161f071.zip/node_modules/cacache/",\ + ["npm:18.0.4", {\ + "packageLocation": "./.yarn/cache/cacache-npm-18.0.4-3dc4edc849-ca2f7b2d30.zip/node_modules/cacache/",\ "packageDependencies": [\ - ["cacache", "npm:18.0.3"],\ + ["cacache", "npm:18.0.4"],\ ["@npmcli/fs", "npm:3.1.0"],\ ["fs-minipass", "npm:3.0.3"],\ ["glob", "npm:10.3.4"],\ @@ -12465,10 +12553,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.8.0", {\ - "packageLocation": "./.yarn/cache/ci-info-npm-3.8.0-d56a0b67d6-b00e9313c1.zip/node_modules/ci-info/",\ + ["npm:4.0.0", {\ + "packageLocation": "./.yarn/cache/ci-info-npm-4.0.0-90a0683096-c983bb7ff1.zip/node_modules/ci-info/",\ "packageDependencies": [\ - ["ci-info", "npm:3.8.0"]\ + ["ci-info", "npm:4.0.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -12709,10 +12797,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["cmd-shim", [\ - ["npm:6.0.1", {\ - "packageLocation": "./.yarn/cache/cmd-shim-npm-6.0.1-87ebf774a0-d0718e4a49.zip/node_modules/cmd-shim/",\ + ["npm:6.0.3", {\ + "packageLocation": "./.yarn/cache/cmd-shim-npm-6.0.3-88c8f0cd90-791c9779cf.zip/node_modules/cmd-shim/",\ "packageDependencies": [\ - ["cmd-shim", "npm:6.0.1"]\ + ["cmd-shim", "npm:6.0.3"]\ ],\ "linkType": "HARD"\ }]\ @@ -12885,6 +12973,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["common-ancestor-path", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/common-ancestor-path-npm-1.0.1-27534e68da-1d2e418606.zip/node_modules/common-ancestor-path/",\ + "packageDependencies": [\ + ["common-ancestor-path", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["commondir", [\ ["npm:1.0.1", {\ "packageLocation": "./.yarn/cache/commondir-npm-1.0.1-291b790340-4620bc4936.zip/node_modules/commondir/",\ @@ -13379,16 +13476,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:8.3.6", {\ - "packageLocation": "./.yarn/__virtual__/cosmiconfig-virtual-bc9b2f567f/0/cache/cosmiconfig-npm-8.3.6-a5566e2779-91d082baca.zip/node_modules/cosmiconfig/",\ + ["virtual:9433a50d2da088d37298dbf6438830eedddc7943fb79d279c75815d354de25a336b55d2f8a94c691776da488c901b1f2676a933b2ce29bd061ac0a8788d8a47d#npm:8.3.6", {\ + "packageLocation": "./.yarn/__virtual__/cosmiconfig-virtual-17b5e84faf/0/cache/cosmiconfig-npm-8.3.6-a5566e2779-91d082baca.zip/node_modules/cosmiconfig/",\ "packageDependencies": [\ - ["cosmiconfig", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:8.3.6"],\ + ["cosmiconfig", "virtual:9433a50d2da088d37298dbf6438830eedddc7943fb79d279c75815d354de25a336b55d2f8a94c691776da488c901b1f2676a933b2ce29bd061ac0a8788d8a47d#npm:8.3.6"],\ ["@types/typescript", null],\ ["import-fresh", "npm:3.3.0"],\ ["js-yaml", "npm:4.1.0"],\ ["parse-json", "npm:5.2.0"],\ ["path-type", "npm:4.0.0"],\ - ["typescript", null]\ + ["typescript", "patch:typescript@npm%3A5.2.2#optional!builtin::version=5.2.2&hash=f3b441"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -13396,16 +13493,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:48f9ae8498438ca8cc7b5946ce00bad482e1d3819f5cf6cb31b22f3bd65e8afe79dac342ace3c8efe70ce03d960bd269a9d17bcc96e05924eb4fa81fbede56dc#npm:8.3.6", {\ - "packageLocation": "./.yarn/__virtual__/cosmiconfig-virtual-eec355557e/0/cache/cosmiconfig-npm-8.3.6-a5566e2779-91d082baca.zip/node_modules/cosmiconfig/",\ + ["virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:8.3.6", {\ + "packageLocation": "./.yarn/__virtual__/cosmiconfig-virtual-7a7bd04aa5/0/cache/cosmiconfig-npm-8.3.6-a5566e2779-91d082baca.zip/node_modules/cosmiconfig/",\ "packageDependencies": [\ - ["cosmiconfig", "virtual:48f9ae8498438ca8cc7b5946ce00bad482e1d3819f5cf6cb31b22f3bd65e8afe79dac342ace3c8efe70ce03d960bd269a9d17bcc96e05924eb4fa81fbede56dc#npm:8.3.6"],\ + ["cosmiconfig", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:8.3.6"],\ ["@types/typescript", null],\ ["import-fresh", "npm:3.3.0"],\ ["js-yaml", "npm:4.1.0"],\ ["parse-json", "npm:5.2.0"],\ ["path-type", "npm:4.0.0"],\ - ["typescript", "patch:typescript@npm%3A5.2.2#optional!builtin::version=5.2.2&hash=f3b441"]\ + ["typescript", null]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -13499,6 +13596,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["cssesc", [\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/cssesc-npm-3.0.0-15ec56f86f-0e161912c1.zip/node_modules/cssesc/",\ + "packageDependencies": [\ + ["cssesc", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["cssstyle", [\ ["npm:4.0.1", {\ "packageLocation": "./.yarn/cache/cssstyle-npm-4.0.1-b3be47925f-180d4e6b40.zip/node_modules/cssstyle/",\ @@ -13925,6 +14031,26 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:1.5.3", {\ + "packageLocation": "./.yarn/cache/dedent-npm-1.5.3-123726df15-e5277f6268.zip/node_modules/dedent/",\ + "packageDependencies": [\ + ["dedent", "npm:1.5.3"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:1.5.3", {\ + "packageLocation": "./.yarn/__virtual__/dedent-virtual-22291228c5/0/cache/dedent-npm-1.5.3-123726df15-e5277f6268.zip/node_modules/dedent/",\ + "packageDependencies": [\ + ["dedent", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:1.5.3"],\ + ["@types/babel-plugin-macros", null],\ + ["babel-plugin-macros", null]\ + ],\ + "packagePeers": [\ + "@types/babel-plugin-macros",\ + "babel-plugin-macros"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:f7679858c638e2e5ade31901dd2b1e5007918fdc7d84fefb11f4200f46ba2e43b9d662fb793507b517bb1e725144e51f6d68f60f9f6100fd52144f042f58f0bc#npm:1.5.1", {\ "packageLocation": "./.yarn/__virtual__/dedent-virtual-b8ac930067/0/cache/dedent-npm-1.5.1-8d0a005200-fc00a8bc3d.zip/node_modules/dedent/",\ "packageDependencies": [\ @@ -14757,13 +14883,6 @@ const RAW_RUNTIME_STATE = ["envinfo", "npm:7.13.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:7.8.1", {\ - "packageLocation": "./.yarn/cache/envinfo-npm-7.8.1-f320033691-e7a2d71c7d.zip/node_modules/envinfo/",\ - "packageDependencies": [\ - ["envinfo", "npm:7.8.1"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["err-code", [\ @@ -15638,10 +15757,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["exifreader", [\ - ["npm:4.23.1", {\ - "packageLocation": "./.yarn/unplugged/exifreader-npm-4.23.1-8444b91e63/node_modules/exifreader/",\ + ["npm:4.23.3", {\ + "packageLocation": "./.yarn/unplugged/exifreader-npm-4.23.3-0f803fe092/node_modules/exifreader/",\ "packageDependencies": [\ - ["exifreader", "npm:4.23.1"],\ + ["exifreader", "npm:4.23.3"],\ ["@xmldom/xmldom", "npm:0.8.10"]\ ],\ "linkType": "HARD"\ @@ -15980,10 +16099,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:4.2.5", {\ - "packageLocation": "./.yarn/cache/fast-xml-parser-npm-4.2.5-342a3689c5-4be7ebe24d.zip/node_modules/fast-xml-parser/",\ + ["npm:4.4.1", {\ + "packageLocation": "./.yarn/cache/fast-xml-parser-npm-4.4.1-b48f31eba7-0c05ab8703.zip/node_modules/fast-xml-parser/",\ "packageDependencies": [\ - ["fast-xml-parser", "npm:4.2.5"],\ + ["fast-xml-parser", "npm:4.4.1"],\ ["strnum", "npm:1.0.5"]\ ],\ "linkType": "HARD"\ @@ -16511,6 +16630,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:11.2.0", {\ + "packageLocation": "./.yarn/cache/fs-extra-npm-11.2.0-6783080799-0579bf6726.zip/node_modules/fs-extra/",\ + "packageDependencies": [\ + ["fs-extra", "npm:11.2.0"],\ + ["graceful-fs", "npm:4.2.8"],\ + ["jsonfile", "npm:6.1.0"],\ + ["universalify", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:8.1.0", {\ "packageLocation": "./.yarn/cache/fs-extra-npm-8.1.0-197473387f-6fb12449f5.zip/node_modules/fs-extra/",\ "packageDependencies": [\ @@ -16661,21 +16790,6 @@ const RAW_RUNTIME_STATE = ["wide-align", "npm:1.1.3"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:4.0.4", {\ - "packageLocation": "./.yarn/cache/gauge-npm-4.0.4-8f878385e9-09535dd53b.zip/node_modules/gauge/",\ - "packageDependencies": [\ - ["gauge", "npm:4.0.4"],\ - ["aproba", "npm:2.0.0"],\ - ["color-support", "npm:1.1.3"],\ - ["console-control-strings", "npm:1.1.0"],\ - ["has-unicode", "npm:2.0.1"],\ - ["signal-exit", "npm:3.0.7"],\ - ["string-width", "npm:4.2.3"],\ - ["strip-ansi", "npm:6.0.1"],\ - ["wide-align", "npm:1.1.5"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["genfun", [\ @@ -17011,10 +17125,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:13.1.0", {\ - "packageLocation": "./.yarn/cache/git-url-parse-npm-13.1.0-724765d793-a088e9b572.zip/node_modules/git-url-parse/",\ + ["npm:14.0.0", {\ + "packageLocation": "./.yarn/cache/git-url-parse-npm-14.0.0-7e16f727c4-c194309478.zip/node_modules/git-url-parse/",\ "packageDependencies": [\ - ["git-url-parse", "npm:13.1.0"],\ + ["git-url-parse", "npm:14.0.0"],\ ["git-up", "npm:7.0.0"]\ ],\ "linkType": "HARD"\ @@ -17077,18 +17191,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:8.1.0", {\ - "packageLocation": "./.yarn/cache/glob-npm-8.1.0-65f64af8b1-9aab1c75eb.zip/node_modules/glob/",\ - "packageDependencies": [\ - ["glob", "npm:8.1.0"],\ - ["fs.realpath", "npm:1.0.0"],\ - ["inflight", "npm:1.0.6"],\ - ["inherits", "npm:2.0.4"],\ - ["minimatch", "npm:5.1.6"],\ - ["once", "npm:1.4.0"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:9.3.5", {\ "packageLocation": "./.yarn/cache/glob-npm-9.3.5-2f602083f0-e5fa8a58ad.zip/node_modules/glob/",\ "packageDependencies": [\ @@ -17118,6 +17220,14 @@ const RAW_RUNTIME_STATE = ["is-glob", "npm:4.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.0.2", {\ + "packageLocation": "./.yarn/cache/glob-parent-npm-6.0.2-2cbef12738-c13ee97978.zip/node_modules/glob-parent/",\ + "packageDependencies": [\ + ["glob-parent", "npm:6.0.2"],\ + ["is-glob", "npm:4.0.3"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["glob-to-regexp", [\ @@ -17727,10 +17837,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["hed-validator", [\ - ["npm:3.13.5", {\ - "packageLocation": "./.yarn/cache/hed-validator-npm-3.13.5-5942bce284-e99c35356a.zip/node_modules/hed-validator/",\ + ["npm:3.15.4", {\ + "packageLocation": "./.yarn/cache/hed-validator-npm-3.15.4-a753b28d1b-4207053360.zip/node_modules/hed-validator/",\ "packageDependencies": [\ - ["hed-validator", "npm:3.13.5"],\ + ["hed-validator", "npm:3.15.4"],\ ["buffer", "npm:6.0.3"],\ ["cross-fetch", "npm:4.0.0"],\ ["date-and-time", "npm:3.2.0"],\ @@ -17782,14 +17892,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:3.0.8", {\ - "packageLocation": "./.yarn/cache/hosted-git-info-npm-3.0.8-e1d95672ef-fac26fe551.zip/node_modules/hosted-git-info/",\ - "packageDependencies": [\ - ["hosted-git-info", "npm:3.0.8"],\ - ["lru-cache", "npm:6.0.0"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:4.0.2", {\ "packageLocation": "./.yarn/cache/hosted-git-info-npm-4.0.2-7330924e0c-cb007a7201.zip/node_modules/hosted-git-info/",\ "packageDependencies": [\ @@ -17806,14 +17908,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:6.1.1", {\ - "packageLocation": "./.yarn/cache/hosted-git-info-npm-6.1.1-d57807f6a5-2e48e3fac7.zip/node_modules/hosted-git-info/",\ - "packageDependencies": [\ - ["hosted-git-info", "npm:6.1.1"],\ - ["lru-cache", "npm:7.18.3"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:7.0.2", {\ "packageLocation": "./.yarn/cache/hosted-git-info-npm-7.0.2-cd527dd33f-8f085df8a4.zip/node_modules/hosted-git-info/",\ "packageDependencies": [\ @@ -17952,16 +18046,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.0.0", {\ - "packageLocation": "./.yarn/cache/http-proxy-agent-npm-5.0.0-7f1f121b83-5ee19423bc.zip/node_modules/http-proxy-agent/",\ - "packageDependencies": [\ - ["http-proxy-agent", "npm:5.0.0"],\ - ["@tootallnate/once", "npm:2.0.0"],\ - ["agent-base", "npm:6.0.2"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:7.0.2", {\ "packageLocation": "./.yarn/cache/http-proxy-agent-npm-7.0.2-643ed7cc33-d062acfa0c.zip/node_modules/http-proxy-agent/",\ "packageDependencies": [\ @@ -18150,14 +18234,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.0.1", {\ - "packageLocation": "./.yarn/cache/ignore-walk-npm-5.0.1-58258fb4ca-a88b3fbda1.zip/node_modules/ignore-walk/",\ - "packageDependencies": [\ - ["ignore-walk", "npm:5.0.1"],\ - ["minimatch", "npm:5.1.6"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:6.0.5", {\ "packageLocation": "./.yarn/cache/ignore-walk-npm-6.0.5-dc11005d4e-08757abff4.zip/node_modules/ignore-walk/",\ "packageDependencies": [\ @@ -18348,14 +18424,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.0.0", {\ - "packageLocation": "./.yarn/cache/init-package-json-npm-5.0.0-0656c8f580-2816821b49.zip/node_modules/init-package-json/",\ + ["npm:6.0.3", {\ + "packageLocation": "./.yarn/cache/init-package-json-npm-6.0.3-2a9f8f943e-1274365e2c.zip/node_modules/init-package-json/",\ "packageDependencies": [\ - ["init-package-json", "npm:5.0.0"],\ - ["npm-package-arg", "npm:10.1.0"],\ + ["init-package-json", "npm:6.0.3"],\ + ["@npmcli/package-json", "npm:5.1.0"],\ + ["npm-package-arg", "npm:11.0.2"],\ ["promzard", "npm:1.0.0"],\ - ["read", "npm:2.1.0"],\ - ["read-package-json", "npm:6.0.4"],\ + ["read", "npm:3.0.1"],\ ["semver", "npm:7.5.4"],\ ["validate-npm-package-license", "npm:3.0.4"],\ ["validate-npm-package-name", "npm:5.0.0"]\ @@ -18960,6 +19036,14 @@ const RAW_RUNTIME_STATE = ["is-extglob", "npm:2.1.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.0.3", {\ + "packageLocation": "./.yarn/cache/is-glob-npm-4.0.3-cb87bf1bdb-3ed74f2b0c.zip/node_modules/is-glob/",\ + "packageDependencies": [\ + ["is-glob", "npm:4.0.3"],\ + ["is-extglob", "npm:2.1.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["is-hexadecimal", [\ @@ -19535,15 +19619,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/jest-virtual-49316054cd/0/cache/jest-npm-29.7.0-d8dd095b81-97023d7844.zip/node_modules/jest/",\ + ["virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/jest-virtual-4dbbc27a19/0/cache/jest-npm-29.7.0-d8dd095b81-97023d7844.zip/node_modules/jest/",\ "packageDependencies": [\ - ["jest", "virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:29.7.0"],\ - ["@jest/core", "virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0"],\ + ["jest", "virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:29.7.0"],\ + ["@jest/core", "virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0"],\ ["@jest/types", "npm:29.6.3"],\ ["@types/node-notifier", null],\ ["import-local", "npm:3.1.0"],\ - ["jest-cli", "virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0"],\ + ["jest-cli", "virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0"],\ ["node-notifier", null]\ ],\ "packagePeers": [\ @@ -19602,11 +19686,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/jest-cli-virtual-ced9ae131e/0/cache/jest-cli-npm-29.7.0-9adb356180-6cc62b34d0.zip/node_modules/jest-cli/",\ + ["virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/jest-cli-virtual-313f874863/0/cache/jest-cli-npm-29.7.0-9adb356180-6cc62b34d0.zip/node_modules/jest-cli/",\ "packageDependencies": [\ - ["jest-cli", "virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0"],\ - ["@jest/core", "virtual:49316054cd7bff615bf5d3f57290200a437c8a6f01070e97f8df569a6ca1b182a1b140b761e01eb7a7e23e10fd80cea9b102526787e63400a46092ca863b52d0#npm:29.7.0"],\ + ["jest-cli", "virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0"],\ + ["@jest/core", "virtual:4dbbc27a193ebf2887c056cf5e82230e9d04e596d9984ad70c2e9cc3ec79f08d4e0bb0bd25b103492d02957b5646d339e837adec83b4a150247be75faa736672#npm:29.7.0"],\ ["@jest/test-result", "npm:29.7.0"],\ ["@jest/types", "npm:29.6.3"],\ ["@types/node-notifier", null],\ @@ -19635,16 +19719,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:3a6a7b993b4c5b60edc037a265ed4617431cf4c75aee76d6fbd0f2ca65ea68cee61c092e9bd306baebd90cc377234b4a525791e6755ee4d2193076de2c2bdfed#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/jest-config-virtual-50f60b8422/0/cache/jest-config-npm-29.7.0-97d8544d74-6bdf570e95.zip/node_modules/jest-config/",\ + ["virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/jest-config-virtual-9187ef4314/0/cache/jest-config-npm-29.7.0-97d8544d74-6bdf570e95.zip/node_modules/jest-config/",\ "packageDependencies": [\ - ["jest-config", "virtual:3a6a7b993b4c5b60edc037a265ed4617431cf4c75aee76d6fbd0f2ca65ea68cee61c092e9bd306baebd90cc377234b4a525791e6755ee4d2193076de2c2bdfed#npm:29.7.0"],\ + ["jest-config", "virtual:174245725bdfbc86814605bb8261ffb9ac091d0a585ccd36c608cfecba2a36712e19f4e66e508ea4e70046b1f5c99507975e791f8237f8026cbcf1ad166e33d0#npm:29.7.0"],\ ["@babel/core", "npm:7.22.17"],\ ["@jest/test-sequencer", "npm:29.7.0"],\ ["@jest/types", "npm:29.6.3"],\ - ["@types/node", null],\ + ["@types/node", "npm:16.9.6"],\ ["@types/ts-node", null],\ - ["babel-jest", "virtual:b278756a522c5a2b833fa7b26fda1dba58349ff098950c76beb604c833e7de837b9c5b74af2d6668937e192e4e2d692b9881f4a9e845577acfe54f9ad8e57a0e#npm:29.7.0"],\ + ["babel-jest", "virtual:9187ef43144ff2ff6cde08072db08b3d7577ff43f25b811bc927c4c6221457cef125553f24b50c614fc75ace5abc210bd1c3df77cad016252dfb06d35e84a04d#npm:29.7.0"],\ ["chalk", "npm:4.1.2"],\ ["ci-info", "npm:3.3.0"],\ ["deepmerge", "npm:4.2.2"],\ @@ -19672,16 +19756,16 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0", {\ - "packageLocation": "./.yarn/__virtual__/jest-config-virtual-b278756a52/0/cache/jest-config-npm-29.7.0-97d8544d74-6bdf570e95.zip/node_modules/jest-config/",\ + ["virtual:3a6a7b993b4c5b60edc037a265ed4617431cf4c75aee76d6fbd0f2ca65ea68cee61c092e9bd306baebd90cc377234b4a525791e6755ee4d2193076de2c2bdfed#npm:29.7.0", {\ + "packageLocation": "./.yarn/__virtual__/jest-config-virtual-50f60b8422/0/cache/jest-config-npm-29.7.0-97d8544d74-6bdf570e95.zip/node_modules/jest-config/",\ "packageDependencies": [\ - ["jest-config", "virtual:93536b146e1c0ae2a89d84dd126c3cd76033ce104d6db478c7788bfcfffdc52e5f9d7d3bcf3ab2a892dd3cb435c9c6dc48870a3809bf9dd8ddbcddd064bc5424#npm:29.7.0"],\ + ["jest-config", "virtual:3a6a7b993b4c5b60edc037a265ed4617431cf4c75aee76d6fbd0f2ca65ea68cee61c092e9bd306baebd90cc377234b4a525791e6755ee4d2193076de2c2bdfed#npm:29.7.0"],\ ["@babel/core", "npm:7.22.17"],\ ["@jest/test-sequencer", "npm:29.7.0"],\ ["@jest/types", "npm:29.6.3"],\ - ["@types/node", "npm:16.9.6"],\ + ["@types/node", null],\ ["@types/ts-node", null],\ - ["babel-jest", "virtual:b278756a522c5a2b833fa7b26fda1dba58349ff098950c76beb604c833e7de837b9c5b74af2d6668937e192e4e2d692b9881f4a9e845577acfe54f9ad8e57a0e#npm:29.7.0"],\ + ["babel-jest", "virtual:9187ef43144ff2ff6cde08072db08b3d7577ff43f25b811bc927c4c6221457cef125553f24b50c614fc75ace5abc210bd1c3df77cad016252dfb06d35e84a04d#npm:29.7.0"],\ ["chalk", "npm:4.1.2"],\ ["ci-info", "npm:3.3.0"],\ ["deepmerge", "npm:4.2.2"],\ @@ -20288,7 +20372,14 @@ const RAW_RUNTIME_STATE = ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/json-parse-even-better-errors-npm-3.0.0-3675833c0a-f1970b5220.zip/node_modules/json-parse-even-better-errors/",\ "packageDependencies": [\ - ["json-parse-even-better-errors", "npm:3.0.0"]\ + ["json-parse-even-better-errors", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:3.0.2", {\ + "packageLocation": "./.yarn/cache/json-parse-even-better-errors-npm-3.0.2-3d985a6781-6f04ea6c9c.zip/node_modules/json-parse-even-better-errors/",\ + "packageDependencies": [\ + ["json-parse-even-better-errors", "npm:3.0.2"]\ ],\ "linkType": "HARD"\ }]\ @@ -20327,6 +20418,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["json-stringify-nice", [\ + ["npm:1.1.4", {\ + "packageLocation": "./.yarn/cache/json-stringify-nice-npm-1.1.4-0b0ddb188b-0e02cae900.zip/node_modules/json-stringify-nice/",\ + "packageDependencies": [\ + ["json-stringify-nice", "npm:1.1.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["json-stringify-safe", [\ ["npm:5.0.1", {\ "packageLocation": "./.yarn/cache/json-stringify-safe-npm-5.0.1-064ddd6ab4-59169a081e.zip/node_modules/json-stringify-safe/",\ @@ -20427,6 +20527,24 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["just-diff", [\ + ["npm:6.0.2", {\ + "packageLocation": "./.yarn/cache/just-diff-npm-6.0.2-f73771d84e-4c6b14d6be.zip/node_modules/just-diff/",\ + "packageDependencies": [\ + ["just-diff", "npm:6.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["just-diff-apply", [\ + ["npm:5.5.0", {\ + "packageLocation": "./.yarn/cache/just-diff-apply-npm-5.5.0-04951e29f4-5515c436c8.zip/node_modules/just-diff-apply/",\ + "packageDependencies": [\ + ["just-diff-apply", "npm:5.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["jwa", [\ ["npm:1.4.1", {\ "packageLocation": "./.yarn/cache/jwa-npm-1.4.1-4f19d6572c-0bc002b71d.zip/node_modules/jwa/",\ @@ -20563,80 +20681,87 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:8.1.3", {\ - "packageLocation": "./.yarn/cache/lerna-npm-8.1.3-48f9ae8498-822268c86f.zip/node_modules/lerna/",\ + ["npm:8.1.8", {\ + "packageLocation": "./.yarn/cache/lerna-npm-8.1.8-9433a50d2d-c058064f07.zip/node_modules/lerna/",\ "packageDependencies": [\ - ["lerna", "npm:8.1.3"],\ - ["@lerna/create", "npm:8.1.3"],\ - ["@npmcli/run-script", "npm:7.0.2"],\ - ["@nx/devkit", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["lerna", "npm:8.1.8"],\ + ["@lerna/create", "npm:8.1.8"],\ + ["@npmcli/arborist", "npm:7.5.4"],\ + ["@npmcli/package-json", "npm:5.2.0"],\ + ["@npmcli/run-script", "npm:8.1.0"],\ + ["@nx/devkit", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["@octokit/plugin-enterprise-rest", "npm:6.0.1"],\ ["@octokit/rest", "npm:19.0.11"],\ + ["aproba", "npm:2.0.0"],\ ["byte-size", "npm:8.1.1"],\ ["chalk", "npm:4.1.0"],\ ["clone-deep", "npm:4.0.1"],\ - ["cmd-shim", "npm:6.0.1"],\ + ["cmd-shim", "npm:6.0.3"],\ + ["color-support", "npm:1.1.3"],\ ["columnify", "npm:1.6.0"],\ + ["console-control-strings", "npm:1.1.0"],\ ["conventional-changelog-angular", "npm:7.0.0"],\ ["conventional-changelog-core", "npm:5.0.1"],\ ["conventional-recommended-bump", "npm:7.0.1"],\ - ["cosmiconfig", "virtual:48f9ae8498438ca8cc7b5946ce00bad482e1d3819f5cf6cb31b22f3bd65e8afe79dac342ace3c8efe70ce03d960bd269a9d17bcc96e05924eb4fa81fbede56dc#npm:8.3.6"],\ - ["dedent", "npm:0.7.0"],\ - ["envinfo", "npm:7.8.1"],\ + ["cosmiconfig", "virtual:9433a50d2da088d37298dbf6438830eedddc7943fb79d279c75815d354de25a336b55d2f8a94c691776da488c901b1f2676a933b2ce29bd061ac0a8788d8a47d#npm:8.3.6"],\ + ["dedent", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:1.5.3"],\ + ["envinfo", "npm:7.13.0"],\ ["execa", "npm:5.0.0"],\ - ["fs-extra", "npm:11.1.1"],\ + ["fs-extra", "npm:11.2.0"],\ ["get-port", "npm:5.1.1"],\ ["get-stream", "npm:6.0.0"],\ - ["git-url-parse", "npm:13.1.0"],\ - ["glob-parent", "npm:5.1.2"],\ + ["git-url-parse", "npm:14.0.0"],\ + ["glob-parent", "npm:6.0.2"],\ ["globby", "npm:11.1.0"],\ ["graceful-fs", "npm:4.2.11"],\ ["has-unicode", "npm:2.0.1"],\ ["import-local", "npm:3.1.0"],\ ["ini", "npm:1.3.8"],\ - ["init-package-json", "npm:5.0.0"],\ + ["init-package-json", "npm:6.0.3"],\ ["inquirer", "npm:8.2.6"],\ ["is-ci", "npm:3.0.1"],\ ["is-stream", "npm:2.0.0"],\ ["jest-diff", "npm:29.7.0"],\ ["js-yaml", "npm:4.1.0"],\ - ["libnpmaccess", "npm:7.0.2"],\ - ["libnpmpublish", "npm:7.3.0"],\ + ["libnpmaccess", "npm:8.0.6"],\ + ["libnpmpublish", "npm:9.0.9"],\ ["load-json-file", "npm:6.2.0"],\ ["lodash", "npm:4.17.21"],\ ["make-dir", "npm:4.0.0"],\ ["minimatch", "npm:3.0.5"],\ ["multimatch", "npm:5.0.0"],\ - ["node-fetch", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:2.6.7"],\ - ["npm-package-arg", "npm:8.1.1"],\ - ["npm-packlist", "npm:5.1.1"],\ - ["npm-registry-fetch", "npm:14.0.5"],\ - ["npmlog", "npm:6.0.2"],\ - ["nx", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["node-fetch", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:2.6.7"],\ + ["npm-package-arg", "npm:11.0.2"],\ + ["npm-packlist", "npm:8.0.2"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ + ["nx", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["p-map", "npm:4.0.0"],\ ["p-map-series", "npm:2.1.0"],\ ["p-pipe", "npm:3.1.0"],\ ["p-queue", "npm:6.6.2"],\ ["p-reduce", "npm:2.1.0"],\ ["p-waterfall", "npm:2.1.1"],\ - ["pacote", "npm:17.0.7"],\ + ["pacote", "npm:18.0.6"],\ ["pify", "npm:5.0.0"],\ ["read-cmd-shim", "npm:4.0.0"],\ - ["read-package-json", "npm:6.0.4"],\ ["resolve-from", "npm:5.0.0"],\ ["rimraf", "npm:4.4.1"],\ ["semver", "npm:7.5.4"],\ + ["set-blocking", "npm:2.0.0"],\ ["signal-exit", "npm:3.0.7"],\ ["slash", "npm:3.0.0"],\ - ["ssri", "npm:9.0.1"],\ + ["ssri", "npm:10.0.6"],\ + ["string-width", "npm:4.2.3"],\ + ["strip-ansi", "npm:6.0.1"],\ ["strong-log-transformer", "npm:2.1.0"],\ ["tar", "npm:6.2.1"],\ ["temp-dir", "npm:1.0.0"],\ ["typescript", "patch:typescript@npm%3A5.2.2#optional!builtin::version=5.2.2&hash=f3b441"],\ ["upath", "npm:2.0.1"],\ - ["uuid", "npm:9.0.0"],\ + ["uuid", "npm:10.0.0"],\ ["validate-npm-package-license", "npm:3.0.4"],\ - ["validate-npm-package-name", "npm:5.0.0"],\ + ["validate-npm-package-name", "npm:5.0.1"],\ + ["wide-align", "npm:1.1.5"],\ ["write-file-atomic", "npm:5.0.1"],\ ["write-pkg", "npm:4.0.0"],\ ["yargs", "npm:17.7.2"],\ @@ -20675,29 +20800,29 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["libnpmaccess", [\ - ["npm:7.0.2", {\ - "packageLocation": "./.yarn/cache/libnpmaccess-npm-7.0.2-57b91bfda5-73d49f3939.zip/node_modules/libnpmaccess/",\ + ["npm:8.0.6", {\ + "packageLocation": "./.yarn/cache/libnpmaccess-npm-8.0.6-614305a214-62fa6a4763.zip/node_modules/libnpmaccess/",\ "packageDependencies": [\ - ["libnpmaccess", "npm:7.0.2"],\ - ["npm-package-arg", "npm:10.1.0"],\ - ["npm-registry-fetch", "npm:14.0.5"]\ + ["libnpmaccess", "npm:8.0.6"],\ + ["npm-package-arg", "npm:11.0.3"],\ + ["npm-registry-fetch", "npm:17.1.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["libnpmpublish", [\ - ["npm:7.3.0", {\ - "packageLocation": "./.yarn/cache/libnpmpublish-npm-7.3.0-006fc4afe8-89c8b88108.zip/node_modules/libnpmpublish/",\ - "packageDependencies": [\ - ["libnpmpublish", "npm:7.3.0"],\ - ["ci-info", "npm:3.8.0"],\ - ["normalize-package-data", "npm:5.0.0"],\ - ["npm-package-arg", "npm:10.1.0"],\ - ["npm-registry-fetch", "npm:14.0.5"],\ - ["proc-log", "npm:3.0.0"],\ + ["npm:9.0.9", {\ + "packageLocation": "./.yarn/cache/libnpmpublish-npm-9.0.9-8ce39eed08-ea1064a727.zip/node_modules/libnpmpublish/",\ + "packageDependencies": [\ + ["libnpmpublish", "npm:9.0.9"],\ + ["ci-info", "npm:4.0.0"],\ + ["normalize-package-data", "npm:6.0.2"],\ + ["npm-package-arg", "npm:11.0.3"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ + ["proc-log", "npm:4.2.0"],\ ["semver", "npm:7.5.4"],\ - ["sigstore", "npm:1.9.0"],\ - ["ssri", "npm:10.0.5"]\ + ["sigstore", "npm:2.3.0"],\ + ["ssri", "npm:10.0.6"]\ ],\ "linkType": "HARD"\ }]\ @@ -21126,6 +21251,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:10.4.3", {\ + "packageLocation": "./.yarn/cache/lru-cache-npm-10.4.3-30c10b861a-e6e9026736.zip/node_modules/lru-cache/",\ + "packageDependencies": [\ + ["lru-cache", "npm:10.4.3"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:5.1.1", {\ "packageLocation": "./.yarn/cache/lru-cache-npm-5.1.1-f475882a51-951d2673dc.zip/node_modules/lru-cache/",\ "packageDependencies": [\ @@ -21259,28 +21391,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["make-fetch-happen", [\ - ["npm:11.1.1", {\ - "packageLocation": "./.yarn/cache/make-fetch-happen-npm-11.1.1-f32b79aaaa-b4b442cfaa.zip/node_modules/make-fetch-happen/",\ - "packageDependencies": [\ - ["make-fetch-happen", "npm:11.1.1"],\ - ["agentkeepalive", "npm:4.2.1"],\ - ["cacache", "npm:17.1.4"],\ - ["http-cache-semantics", "npm:4.1.1"],\ - ["http-proxy-agent", "npm:5.0.0"],\ - ["https-proxy-agent", "npm:5.0.0"],\ - ["is-lambda", "npm:1.0.1"],\ - ["lru-cache", "npm:7.18.3"],\ - ["minipass", "npm:5.0.0"],\ - ["minipass-fetch", "npm:3.0.4"],\ - ["minipass-flush", "npm:1.0.5"],\ - ["minipass-pipeline", "npm:1.2.4"],\ - ["negotiator", "npm:0.6.3"],\ - ["promise-retry", "npm:2.0.1"],\ - ["socks-proxy-agent", "npm:7.0.0"],\ - ["ssri", "npm:10.0.5"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:13.0.1", {\ "packageLocation": "./.yarn/cache/make-fetch-happen-npm-13.0.1-4180f2aaa8-11bae5ad6a.zip/node_modules/make-fetch-happen/",\ "packageDependencies": [\ @@ -22447,17 +22557,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["minipass-json-stream", [\ - ["npm:1.0.1", {\ - "packageLocation": "./.yarn/cache/minipass-json-stream-npm-1.0.1-96490706d6-3c65482c63.zip/node_modules/minipass-json-stream/",\ - "packageDependencies": [\ - ["minipass-json-stream", "npm:1.0.1"],\ - ["jsonparse", "npm:1.3.1"],\ - ["minipass", "npm:3.1.5"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["minipass-pipeline", [\ ["npm:1.2.4", {\ "packageLocation": "./.yarn/cache/minipass-pipeline-npm-1.2.4-5924cb077f-b14240dac0.zip/node_modules/minipass-pipeline/",\ @@ -22938,27 +23037,27 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["next", [\ - ["npm:14.2.3", {\ - "packageLocation": "./.yarn/cache/next-npm-14.2.3-7770cdfada-666c977020.zip/node_modules/next/",\ + ["npm:14.2.5", {\ + "packageLocation": "./.yarn/cache/next-npm-14.2.5-ce63d89d89-c107b45ffe.zip/node_modules/next/",\ "packageDependencies": [\ - ["next", "npm:14.2.3"]\ + ["next", "npm:14.2.5"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:14.2.3", {\ - "packageLocation": "./.yarn/__virtual__/next-virtual-94cb705d8f/0/cache/next-npm-14.2.3-7770cdfada-666c977020.zip/node_modules/next/",\ - "packageDependencies": [\ - ["next", "virtual:963c647ea051efd8c590d2c7557349f3372ef2d1a56b4124e7863ebca3fab4680c0f4b8ecbd49d0371d65f2281579c5841fe1dd9c8c0a863c6e96966933908e0#npm:14.2.3"],\ - ["@next/env", "npm:14.2.3"],\ - ["@next/swc-darwin-arm64", "npm:14.2.3"],\ - ["@next/swc-darwin-x64", "npm:14.2.3"],\ - ["@next/swc-linux-arm64-gnu", "npm:14.2.3"],\ - ["@next/swc-linux-arm64-musl", "npm:14.2.3"],\ - ["@next/swc-linux-x64-gnu", "npm:14.2.3"],\ - ["@next/swc-linux-x64-musl", "npm:14.2.3"],\ - ["@next/swc-win32-arm64-msvc", "npm:14.2.3"],\ - ["@next/swc-win32-ia32-msvc", "npm:14.2.3"],\ - ["@next/swc-win32-x64-msvc", "npm:14.2.3"],\ + ["virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:14.2.5", {\ + "packageLocation": "./.yarn/__virtual__/next-virtual-c488025ee5/0/cache/next-npm-14.2.5-ce63d89d89-c107b45ffe.zip/node_modules/next/",\ + "packageDependencies": [\ + ["next", "virtual:8605768249a27b0db64f79f77874f810b70725d43c46e5f9be1c0452579ea3cc4108455ffe302a52c2ff235266cbe0faf22b152d5c051b3307ac69f2ebf3a153#npm:14.2.5"],\ + ["@next/env", "npm:14.2.5"],\ + ["@next/swc-darwin-arm64", "npm:14.2.5"],\ + ["@next/swc-darwin-x64", "npm:14.2.5"],\ + ["@next/swc-linux-arm64-gnu", "npm:14.2.5"],\ + ["@next/swc-linux-arm64-musl", "npm:14.2.5"],\ + ["@next/swc-linux-x64-gnu", "npm:14.2.5"],\ + ["@next/swc-linux-x64-musl", "npm:14.2.5"],\ + ["@next/swc-win32-arm64-msvc", "npm:14.2.5"],\ + ["@next/swc-win32-ia32-msvc", "npm:14.2.5"],\ + ["@next/swc-win32-x64-msvc", "npm:14.2.5"],\ ["@opentelemetry/api", null],\ ["@playwright/test", null],\ ["@swc/helpers", "npm:0.5.5"],\ @@ -22974,7 +23073,7 @@ const RAW_RUNTIME_STATE = ["react", null],\ ["react-dom", null],\ ["sass", null],\ - ["styled-jsx", "virtual:94cb705d8f2a2b1109015646a11175be495adda31bbc645b083cc9bbf85fc1d13ff9fe785e01febf7a450c2bbcd01c45cf8a80da31422991f38abefcc7e33718#npm:5.1.1"]\ + ["styled-jsx", "virtual:c488025ee5b66df585b20883f98941d680374b93daff161e9fbe70941e3b0e075e7a8eb5b060233a143a171b691c3b1155602c859343ff3617d1420ade108d6e#npm:5.1.1"]\ ],\ "packagePeers": [\ "@opentelemetry/api",\ @@ -23092,10 +23191,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:2.6.7", {\ - "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-33259e39e2/0/cache/node-fetch-npm-2.6.7-777aa2a6df-4bc9245383.zip/node_modules/node-fetch/",\ + ["virtual:25a5f5382d53dbf298bf7a1191760bc2e0a523a619eeb0e667b99a8649e8ad183f9e2e0b45f6fb831b92f4078b61622aa567cf79565f6aa5af9597e3c84864f6#npm:2.6.12", {\ + "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-3e93d26fc0/0/cache/node-fetch-npm-2.6.12-48619ce9d6-370ed4d906.zip/node_modules/node-fetch/",\ "packageDependencies": [\ - ["node-fetch", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:2.6.7"],\ + ["node-fetch", "virtual:25a5f5382d53dbf298bf7a1191760bc2e0a523a619eeb0e667b99a8649e8ad183f9e2e0b45f6fb831b92f4078b61622aa567cf79565f6aa5af9597e3c84864f6#npm:2.6.12"],\ ["@types/encoding", null],\ ["encoding", null],\ ["whatwg-url", "npm:5.0.0"]\ @@ -23106,10 +23205,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:25a5f5382d53dbf298bf7a1191760bc2e0a523a619eeb0e667b99a8649e8ad183f9e2e0b45f6fb831b92f4078b61622aa567cf79565f6aa5af9597e3c84864f6#npm:2.6.12", {\ - "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-3e93d26fc0/0/cache/node-fetch-npm-2.6.12-48619ce9d6-370ed4d906.zip/node_modules/node-fetch/",\ + ["virtual:31e5022314c826bb81c193fd05fa764713ff5829d7aaa4eafccd987b7a9966e626130fd206f6e1e06a05443bc9d9799b81844c7e860e8e59c42b44aa1294e40f#npm:2.7.0", {\ + "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-3c8a9fb2ba/0/cache/node-fetch-npm-2.7.0-587d57004e-b24f8a3dc9.zip/node_modules/node-fetch/",\ "packageDependencies": [\ - ["node-fetch", "virtual:25a5f5382d53dbf298bf7a1191760bc2e0a523a619eeb0e667b99a8649e8ad183f9e2e0b45f6fb831b92f4078b61622aa567cf79565f6aa5af9597e3c84864f6#npm:2.6.12"],\ + ["node-fetch", "virtual:31e5022314c826bb81c193fd05fa764713ff5829d7aaa4eafccd987b7a9966e626130fd206f6e1e06a05443bc9d9799b81844c7e860e8e59c42b44aa1294e40f#npm:2.7.0"],\ ["@types/encoding", null],\ ["encoding", null],\ ["whatwg-url", "npm:5.0.0"]\ @@ -23120,10 +23219,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:31e5022314c826bb81c193fd05fa764713ff5829d7aaa4eafccd987b7a9966e626130fd206f6e1e06a05443bc9d9799b81844c7e860e8e59c42b44aa1294e40f#npm:2.7.0", {\ - "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-3c8a9fb2ba/0/cache/node-fetch-npm-2.7.0-587d57004e-b24f8a3dc9.zip/node_modules/node-fetch/",\ + ["virtual:90f6a129d8adfee793b93ece48b319375c46f70206be38f532b28e127912d214b54604b30e8cb269ad6cd82b0db01373baefbe471fefa8ff4f96f22e6afba034#npm:2.6.9", {\ + "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-e65c32dbfb/0/cache/node-fetch-npm-2.6.9-9fc9a54529-4d04273c97.zip/node_modules/node-fetch/",\ "packageDependencies": [\ - ["node-fetch", "virtual:31e5022314c826bb81c193fd05fa764713ff5829d7aaa4eafccd987b7a9966e626130fd206f6e1e06a05443bc9d9799b81844c7e860e8e59c42b44aa1294e40f#npm:2.7.0"],\ + ["node-fetch", "virtual:90f6a129d8adfee793b93ece48b319375c46f70206be38f532b28e127912d214b54604b30e8cb269ad6cd82b0db01373baefbe471fefa8ff4f96f22e6afba034#npm:2.6.9"],\ ["@types/encoding", null],\ ["encoding", null],\ ["whatwg-url", "npm:5.0.0"]\ @@ -23134,10 +23233,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:90f6a129d8adfee793b93ece48b319375c46f70206be38f532b28e127912d214b54604b30e8cb269ad6cd82b0db01373baefbe471fefa8ff4f96f22e6afba034#npm:2.6.9", {\ - "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-e65c32dbfb/0/cache/node-fetch-npm-2.6.9-9fc9a54529-4d04273c97.zip/node_modules/node-fetch/",\ + ["virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:2.6.7", {\ + "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-1d5c9d87db/0/cache/node-fetch-npm-2.6.7-777aa2a6df-4bc9245383.zip/node_modules/node-fetch/",\ "packageDependencies": [\ - ["node-fetch", "virtual:90f6a129d8adfee793b93ece48b319375c46f70206be38f532b28e127912d214b54604b30e8cb269ad6cd82b0db01373baefbe471fefa8ff4f96f22e6afba034#npm:2.6.9"],\ + ["node-fetch", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:2.6.7"],\ ["@types/encoding", null],\ ["encoding", null],\ ["whatwg-url", "npm:5.0.0"]\ @@ -23344,23 +23443,22 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.0.0", {\ - "packageLocation": "./.yarn/cache/normalize-package-data-npm-5.0.0-6327e2af68-477344ee99.zip/node_modules/normalize-package-data/",\ + ["npm:6.0.1", {\ + "packageLocation": "./.yarn/cache/normalize-package-data-npm-6.0.1-00cae3fa86-eb0b1815a1.zip/node_modules/normalize-package-data/",\ "packageDependencies": [\ - ["normalize-package-data", "npm:5.0.0"],\ - ["hosted-git-info", "npm:6.1.1"],\ + ["normalize-package-data", "npm:6.0.1"],\ + ["hosted-git-info", "npm:7.0.2"],\ ["is-core-module", "npm:2.13.0"],\ ["semver", "npm:7.5.4"],\ ["validate-npm-package-license", "npm:3.0.4"]\ ],\ "linkType": "HARD"\ }],\ - ["npm:6.0.1", {\ - "packageLocation": "./.yarn/cache/normalize-package-data-npm-6.0.1-00cae3fa86-eb0b1815a1.zip/node_modules/normalize-package-data/",\ + ["npm:6.0.2", {\ + "packageLocation": "./.yarn/cache/normalize-package-data-npm-6.0.2-dc1f732439-7c4216a242.zip/node_modules/normalize-package-data/",\ "packageDependencies": [\ - ["normalize-package-data", "npm:6.0.1"],\ + ["normalize-package-data", "npm:6.0.2"],\ ["hosted-git-info", "npm:7.0.2"],\ - ["is-core-module", "npm:2.13.0"],\ ["semver", "npm:7.5.4"],\ ["validate-npm-package-license", "npm:3.0.4"]\ ],\ @@ -23411,6 +23509,14 @@ const RAW_RUNTIME_STATE = ["semver", "npm:7.5.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.3.0", {\ + "packageLocation": "./.yarn/cache/npm-install-checks-npm-6.3.0-d093d4e008-6c20dadb87.zip/node_modules/npm-install-checks/",\ + "packageDependencies": [\ + ["npm-install-checks", "npm:6.3.0"],\ + ["semver", "npm:7.5.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["npm-lifecycle", [\ @@ -23447,21 +23553,21 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["npm-package-arg", [\ - ["npm:10.1.0", {\ - "packageLocation": "./.yarn/cache/npm-package-arg-npm-10.1.0-e9f0aaa69d-3bbb5f0810.zip/node_modules/npm-package-arg/",\ + ["npm:11.0.2", {\ + "packageLocation": "./.yarn/cache/npm-package-arg-npm-11.0.2-bd9cd2ed92-ce4c51900a.zip/node_modules/npm-package-arg/",\ "packageDependencies": [\ - ["npm-package-arg", "npm:10.1.0"],\ - ["hosted-git-info", "npm:6.1.1"],\ - ["proc-log", "npm:3.0.0"],\ + ["npm-package-arg", "npm:11.0.2"],\ + ["hosted-git-info", "npm:7.0.2"],\ + ["proc-log", "npm:4.2.0"],\ ["semver", "npm:7.5.4"],\ ["validate-npm-package-name", "npm:5.0.0"]\ ],\ "linkType": "HARD"\ }],\ - ["npm:11.0.2", {\ - "packageLocation": "./.yarn/cache/npm-package-arg-npm-11.0.2-bd9cd2ed92-ce4c51900a.zip/node_modules/npm-package-arg/",\ + ["npm:11.0.3", {\ + "packageLocation": "./.yarn/cache/npm-package-arg-npm-11.0.3-7ba5df96a1-bacc863907.zip/node_modules/npm-package-arg/",\ "packageDependencies": [\ - ["npm-package-arg", "npm:11.0.2"],\ + ["npm-package-arg", "npm:11.0.3"],\ ["hosted-git-info", "npm:7.0.2"],\ ["proc-log", "npm:4.2.0"],\ ["semver", "npm:7.5.4"],\ @@ -23479,16 +23585,6 @@ const RAW_RUNTIME_STATE = ["validate-npm-package-name", "npm:3.0.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:8.1.1", {\ - "packageLocation": "./.yarn/cache/npm-package-arg-npm-8.1.1-044819f446-b50b130680.zip/node_modules/npm-package-arg/",\ - "packageDependencies": [\ - ["npm-package-arg", "npm:8.1.1"],\ - ["hosted-git-info", "npm:3.0.8"],\ - ["semver", "npm:7.5.4"],\ - ["validate-npm-package-name", "npm:3.0.0"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["npm-packlist", [\ @@ -23502,17 +23598,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.1.1", {\ - "packageLocation": "./.yarn/cache/npm-packlist-npm-5.1.1-38389ac20f-938299a48c.zip/node_modules/npm-packlist/",\ - "packageDependencies": [\ - ["npm-packlist", "npm:5.1.1"],\ - ["glob", "npm:8.1.0"],\ - ["ignore-walk", "npm:5.0.1"],\ - ["npm-bundled", "npm:1.1.2"],\ - ["npm-normalize-package-bin", "npm:1.0.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:8.0.2", {\ "packageLocation": "./.yarn/cache/npm-packlist-npm-8.0.2-f975a473a6-707206e5c0.zip/node_modules/npm-packlist/",\ "packageDependencies": [\ @@ -23543,32 +23628,29 @@ const RAW_RUNTIME_STATE = ["semver", "npm:7.5.4"]\ ],\ "linkType": "HARD"\ - }]\ - ]],\ - ["npm-registry-fetch", [\ - ["npm:14.0.5", {\ - "packageLocation": "./.yarn/cache/npm-registry-fetch-npm-14.0.5-6b3e6c0dd0-63026b22d6.zip/node_modules/npm-registry-fetch/",\ + }],\ + ["npm:9.1.0", {\ + "packageLocation": "./.yarn/cache/npm-pick-manifest-npm-9.1.0-38ecc59c15-e759e4fe40.zip/node_modules/npm-pick-manifest/",\ "packageDependencies": [\ - ["npm-registry-fetch", "npm:14.0.5"],\ - ["make-fetch-happen", "npm:11.1.1"],\ - ["minipass", "npm:5.0.0"],\ - ["minipass-fetch", "npm:3.0.4"],\ - ["minipass-json-stream", "npm:1.0.1"],\ - ["minizlib", "npm:2.1.2"],\ - ["npm-package-arg", "npm:10.1.0"],\ - ["proc-log", "npm:3.0.0"]\ + ["npm-pick-manifest", "npm:9.1.0"],\ + ["npm-install-checks", "npm:6.2.0"],\ + ["npm-normalize-package-bin", "npm:3.0.1"],\ + ["npm-package-arg", "npm:11.0.2"],\ + ["semver", "npm:7.5.4"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:16.2.1", {\ - "packageLocation": "./.yarn/cache/npm-registry-fetch-npm-16.2.1-f5790ad261-eb5a939f8f.zip/node_modules/npm-registry-fetch/",\ + }]\ + ]],\ + ["npm-registry-fetch", [\ + ["npm:17.1.0", {\ + "packageLocation": "./.yarn/cache/npm-registry-fetch-npm-17.1.0-8eabd327ea-b9b2a73907.zip/node_modules/npm-registry-fetch/",\ "packageDependencies": [\ - ["npm-registry-fetch", "npm:16.2.1"],\ - ["@npmcli/redact", "npm:1.1.0"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ + ["@npmcli/redact", "npm:2.0.1"],\ + ["jsonparse", "npm:1.3.1"],\ ["make-fetch-happen", "npm:13.0.1"],\ ["minipass", "npm:7.1.1"],\ ["minipass-fetch", "npm:3.0.4"],\ - ["minipass-json-stream", "npm:1.0.1"],\ ["minizlib", "npm:2.1.2"],\ ["npm-package-arg", "npm:11.0.2"],\ ["proc-log", "npm:4.2.0"]\ @@ -23613,17 +23695,6 @@ const RAW_RUNTIME_STATE = ["set-blocking", "npm:2.0.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:6.0.2", {\ - "packageLocation": "./.yarn/cache/npmlog-npm-6.0.2-e0e69455c7-82b123677e.zip/node_modules/npmlog/",\ - "packageDependencies": [\ - ["npmlog", "npm:6.0.2"],\ - ["are-we-there-yet", "npm:3.0.1"],\ - ["console-control-strings", "npm:1.1.0"],\ - ["gauge", "npm:4.0.4"],\ - ["set-blocking", "npm:2.0.0"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["number-is-nan", [\ @@ -23646,16 +23717,16 @@ const RAW_RUNTIME_STATE = ]],\ ["nx", [\ ["npm:19.0.3", {\ - "packageLocation": "./.yarn/unplugged/nx-virtual-3a9a7cef34/node_modules/nx/",\ + "packageLocation": "./.yarn/unplugged/nx-virtual-d8eda74154/node_modules/nx/",\ "packageDependencies": [\ ["nx", "npm:19.0.3"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3", {\ - "packageLocation": "./.yarn/unplugged/nx-virtual-3a9a7cef34/node_modules/nx/",\ + ["virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3", {\ + "packageLocation": "./.yarn/unplugged/nx-virtual-d8eda74154/node_modules/nx/",\ "packageDependencies": [\ - ["nx", "virtual:231b41c796fb4c3a1878ccc2b284d7acc71e342654f1dcf3bec9e756c379469380938482d22d651d850cf92850f594f3b751114f8c7660ab24c8aee2d7081537#npm:19.0.3"],\ + ["nx", "virtual:b6dc6c605403fce2c92831eb2a3b5e7f49f6f5101698e922a8b4f46edd858ef3f5899e8fc06e81f2e0e2e7e53b4e9069a955e3d11a51e7be76e0f8ae20cfb675#npm:19.0.3"],\ ["@nrwl/tao", "npm:19.0.3"],\ ["@nx/nx-darwin-arm64", "npm:19.0.3"],\ ["@nx/nx-darwin-x64", "npm:19.0.3"],\ @@ -24427,25 +24498,24 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["pacote", [\ - ["npm:17.0.7", {\ - "packageLocation": "./.yarn/cache/pacote-npm-17.0.7-1576d29aec-6aa223428e.zip/node_modules/pacote/",\ + ["npm:18.0.6", {\ + "packageLocation": "./.yarn/cache/pacote-npm-18.0.6-42b2ba9f9c-48cbcb3c20.zip/node_modules/pacote/",\ "packageDependencies": [\ - ["pacote", "npm:17.0.7"],\ + ["pacote", "npm:18.0.6"],\ ["@npmcli/git", "npm:5.0.7"],\ ["@npmcli/installed-package-contents", "npm:2.0.2"],\ + ["@npmcli/package-json", "npm:5.2.0"],\ ["@npmcli/promise-spawn", "npm:7.0.2"],\ - ["@npmcli/run-script", "npm:7.0.4"],\ + ["@npmcli/run-script", "npm:8.1.0"],\ ["cacache", "npm:18.0.3"],\ ["fs-minipass", "npm:3.0.3"],\ ["minipass", "npm:7.1.1"],\ ["npm-package-arg", "npm:11.0.2"],\ ["npm-packlist", "npm:8.0.2"],\ ["npm-pick-manifest", "npm:9.0.1"],\ - ["npm-registry-fetch", "npm:16.2.1"],\ + ["npm-registry-fetch", "npm:17.1.0"],\ ["proc-log", "npm:4.2.0"],\ ["promise-retry", "npm:2.0.1"],\ - ["read-package-json", "npm:7.0.1"],\ - ["read-package-json-fast", "npm:3.0.2"],\ ["sigstore", "npm:2.3.0"],\ ["ssri", "npm:10.0.5"],\ ["tar", "npm:6.2.0"]\ @@ -24484,6 +24554,18 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["parse-conflict-json", [\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/parse-conflict-json-npm-3.0.1-9455a1ad04-ceb13ca90b.zip/node_modules/parse-conflict-json/",\ + "packageDependencies": [\ + ["parse-conflict-json", "npm:3.0.1"],\ + ["json-parse-even-better-errors", "npm:3.0.0"],\ + ["just-diff", "npm:6.0.2"],\ + ["just-diff-apply", "npm:5.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["parse-entities", [\ ["npm:4.0.1", {\ "packageLocation": "./.yarn/cache/parse-entities-npm-4.0.1-2c4b4091f8-71314312d2.zip/node_modules/parse-entities/",\ @@ -25162,6 +25244,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["postcss-selector-parser", [\ + ["npm:6.1.2", {\ + "packageLocation": "./.yarn/cache/postcss-selector-parser-npm-6.1.2-46a8e03b00-190034c94d.zip/node_modules/postcss-selector-parser/",\ + "packageDependencies": [\ + ["postcss-selector-parser", "npm:6.1.2"],\ + ["cssesc", "npm:3.0.0"],\ + ["util-deprecate", "npm:1.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["postgres-array", [\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/postgres-array-npm-2.0.0-4f49dc1389-aff99e7971.zip/node_modules/postgres-array/",\ @@ -25347,6 +25440,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["proggy", [\ + ["npm:2.0.0", {\ + "packageLocation": "./.yarn/cache/proggy-npm-2.0.0-be7a9905d6-9c96830d30.zip/node_modules/proggy/",\ + "packageDependencies": [\ + ["proggy", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["progress", [\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/progress-npm-2.0.0-1d9869bcd0-858d086e3b.zip/node_modules/progress/",\ @@ -25373,6 +25475,24 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["promise-all-reject-late", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/promise-all-reject-late-npm-1.0.1-19ba0dce9c-f5e5c1bfed.zip/node_modules/promise-all-reject-late/",\ + "packageDependencies": [\ + ["promise-all-reject-late", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["promise-call-limit", [\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/promise-call-limit-npm-3.0.1-a7188a35c3-f1b3c4d3a9.zip/node_modules/promise-call-limit/",\ + "packageDependencies": [\ + ["promise-call-limit", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["promise-deferred", [\ ["npm:2.0.3", {\ "packageLocation": "./.yarn/cache/promise-deferred-npm-2.0.3-0b6eb75898-378f0dfa8d.zip/node_modules/promise-deferred/",\ @@ -26356,6 +26476,14 @@ const RAW_RUNTIME_STATE = ["mute-stream", "npm:1.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/read-npm-3.0.1-895fc96715-446b463d04.zip/node_modules/read/",\ + "packageDependencies": [\ + ["read", "npm:3.0.1"],\ + ["mute-stream", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["read-cmd-shim", [\ @@ -26386,28 +26514,6 @@ const RAW_RUNTIME_STATE = ["npm-normalize-package-bin", "npm:1.0.1"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:6.0.4", {\ - "packageLocation": "./.yarn/cache/read-package-json-npm-6.0.4-bf5c705b94-2c72fc8674.zip/node_modules/read-package-json/",\ - "packageDependencies": [\ - ["read-package-json", "npm:6.0.4"],\ - ["glob", "npm:10.3.4"],\ - ["json-parse-even-better-errors", "npm:3.0.0"],\ - ["normalize-package-data", "npm:5.0.0"],\ - ["npm-normalize-package-bin", "npm:3.0.1"]\ - ],\ - "linkType": "HARD"\ - }],\ - ["npm:7.0.1", {\ - "packageLocation": "./.yarn/cache/read-package-json-npm-7.0.1-94653faf6b-4b5684f4ee.zip/node_modules/read-package-json/",\ - "packageDependencies": [\ - ["read-package-json", "npm:7.0.1"],\ - ["glob", "npm:10.3.4"],\ - ["json-parse-even-better-errors", "npm:3.0.0"],\ - ["normalize-package-data", "npm:6.0.1"],\ - ["npm-normalize-package-bin", "npm:3.0.1"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["read-package-json-fast", [\ @@ -27697,18 +27803,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["sigstore", [\ - ["npm:1.9.0", {\ - "packageLocation": "./.yarn/cache/sigstore-npm-1.9.0-bf939b66bb-7ff59f6bbc.zip/node_modules/sigstore/",\ - "packageDependencies": [\ - ["sigstore", "npm:1.9.0"],\ - ["@sigstore/bundle", "npm:1.1.0"],\ - ["@sigstore/protobuf-specs", "npm:0.2.1"],\ - ["@sigstore/sign", "npm:1.0.0"],\ - ["@sigstore/tuf", "npm:1.0.3"],\ - ["make-fetch-happen", "npm:11.1.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.3.0", {\ "packageLocation": "./.yarn/cache/sigstore-npm-2.3.0-16da955c8d-881c6ee139.zip/node_modules/sigstore/",\ "packageDependencies": [\ @@ -27898,16 +27992,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:7.0.0", {\ - "packageLocation": "./.yarn/cache/socks-proxy-agent-npm-7.0.0-7aacf32ea0-26c75d9c62.zip/node_modules/socks-proxy-agent/",\ - "packageDependencies": [\ - ["socks-proxy-agent", "npm:7.0.0"],\ - ["agent-base", "npm:6.0.2"],\ - ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ - ["socks", "npm:2.7.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:8.0.3", {\ "packageLocation": "./.yarn/cache/socks-proxy-agent-npm-8.0.3-30471cff1b-c2112c66d6.zip/node_modules/socks-proxy-agent/",\ "packageDependencies": [\ @@ -28161,6 +28245,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:10.0.6", {\ + "packageLocation": "./.yarn/cache/ssri-npm-10.0.6-6b8eaec5ce-f92c1b3cc9.zip/node_modules/ssri/",\ + "packageDependencies": [\ + ["ssri", "npm:10.0.6"],\ + ["minipass", "npm:7.0.3"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:6.0.2", {\ "packageLocation": "./.yarn/cache/ssri-npm-6.0.2-4b770f07fd-7f8062604b.zip/node_modules/ssri/",\ "packageDependencies": [\ @@ -28176,14 +28268,6 @@ const RAW_RUNTIME_STATE = ["minipass", "npm:3.1.5"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:9.0.1", {\ - "packageLocation": "./.yarn/cache/ssri-npm-9.0.1-33ce27f4f8-7638a61e91.zip/node_modules/ssri/",\ - "packageDependencies": [\ - ["ssri", "npm:9.0.1"],\ - ["minipass", "npm:3.1.5"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["stack-utils", [\ @@ -28772,10 +28856,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:94cb705d8f2a2b1109015646a11175be495adda31bbc645b083cc9bbf85fc1d13ff9fe785e01febf7a450c2bbcd01c45cf8a80da31422991f38abefcc7e33718#npm:5.1.1", {\ - "packageLocation": "./.yarn/__virtual__/styled-jsx-virtual-425467e625/0/cache/styled-jsx-npm-5.1.1-2557a209ba-4f6a5d0010.zip/node_modules/styled-jsx/",\ + ["virtual:c488025ee5b66df585b20883f98941d680374b93daff161e9fbe70941e3b0e075e7a8eb5b060233a143a171b691c3b1155602c859343ff3617d1420ade108d6e#npm:5.1.1", {\ + "packageLocation": "./.yarn/__virtual__/styled-jsx-virtual-0d5b89c33e/0/cache/styled-jsx-npm-5.1.1-2557a209ba-4f6a5d0010.zip/node_modules/styled-jsx/",\ "packageDependencies": [\ - ["styled-jsx", "virtual:94cb705d8f2a2b1109015646a11175be495adda31bbc645b083cc9bbf85fc1d13ff9fe785e01febf7a450c2bbcd01c45cf8a80da31422991f38abefcc7e33718#npm:5.1.1"],\ + ["styled-jsx", "virtual:c488025ee5b66df585b20883f98941d680374b93daff161e9fbe70941e3b0e075e7a8eb5b060233a143a171b691c3b1155602c859343ff3617d1420ade108d6e#npm:5.1.1"],\ ["@babel/core", null],\ ["@types/babel-plugin-macros", null],\ ["@types/babel__core", null],\ @@ -29425,6 +29509,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["treeverse", [\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/treeverse-npm-3.0.0-6c6d119afd-a053ad73f8.zip/node_modules/treeverse/",\ + "packageDependencies": [\ + ["treeverse", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["trim-lines", [\ ["npm:3.0.1", {\ "packageLocation": "./.yarn/cache/trim-lines-npm-3.0.1-24471f7e84-7a1325e4ce.zip/node_modules/trim-lines/",\ @@ -29703,16 +29796,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["tuf-js", [\ - ["npm:1.1.7", {\ - "packageLocation": "./.yarn/cache/tuf-js-npm-1.1.7-045f70823d-8ce0061b76.zip/node_modules/tuf-js/",\ - "packageDependencies": [\ - ["tuf-js", "npm:1.1.7"],\ - ["@tufjs/models", "npm:1.0.4"],\ - ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ - ["make-fetch-happen", "npm:11.1.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.2.1", {\ "packageLocation": "./.yarn/cache/tuf-js-npm-2.2.1-3baf642bf9-4c057f4f0c.zip/node_modules/tuf-js/",\ "packageDependencies": [\ @@ -30495,6 +30578,13 @@ const RAW_RUNTIME_STATE = ["builtins", "npm:5.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.1", {\ + "packageLocation": "./.yarn/cache/validate-npm-package-name-npm-5.0.1-5af9a082cd-0d583a1af2.zip/node_modules/validate-npm-package-name/",\ + "packageDependencies": [\ + ["validate-npm-package-name", "npm:5.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["value-or-promise", [\ @@ -31069,6 +31159,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["walk-up-path", [\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/walk-up-path-npm-3.0.1-67ab100d5d-9ffca02fe3.zip/node_modules/walk-up-path/",\ + "packageDependencies": [\ + ["walk-up-path", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["walker", [\ ["npm:1.0.8", {\ "packageLocation": "./.yarn/cache/walker-npm-1.0.8-b0a05b9478-ad7a257ea1.zip/node_modules/walker/",\ diff --git a/packages/openneuro-app/package.json b/packages/openneuro-app/package.json index bce2cfa9e..abba20778 100644 --- a/packages/openneuro-app/package.json +++ b/packages/openneuro-app/package.json @@ -23,7 +23,8 @@ "@openneuro/components": "^4.26.1", "@sentry/react": "^8.25.0", "@tanstack/react-table": "^8.9.3", - "bids-validator": "1.14.6", + "bids-validator": "1.14.8", + "buffer": "^6.0.3", "bytes": "^3.0.0", "comlink": "^4.0.5", "date-fns": "^2.16.1", diff --git a/packages/openneuro-app/src/scripts/utils/schema-validator.js b/packages/openneuro-app/src/scripts/utils/schema-validator.js index aedec36ed..662a6adf5 100644 --- a/packages/openneuro-app/src/scripts/utils/schema-validator.js +++ b/packages/openneuro-app/src/scripts/utils/schema-validator.js @@ -1,55 +1,440 @@ // @ts-nocheck +var __create = Object.create; var __defProp = Object.defineProperty; -var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, { - get: (a, b) => (typeof require !== "undefined" ? require : a)[b] -}) : x)(function(x) { +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __require = /* @__PURE__ */ ((x2) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x2, { + get: (a3, b2) => (typeof require !== "undefined" ? require : a3)[b2] +}) : x2)(function(x2) { if (typeof require !== "undefined") return require.apply(this, arguments); - throw new Error('Dynamic require of "' + x + '" is not supported'); + throw Error('Dynamic require of "' + x2 + '" is not supported'); }); +var __commonJS = (cb, mod) => function __require2() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; +var __copyProps = (to3, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to3, key) && key !== except) + __defProp(to3, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to3; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); + +// ../../../.var/app/com.visualstudio.code/cache/deno/deno_esbuild/ignore@5.2.4/node_modules/ignore/index.js +var require_ignore = __commonJS({ + "../../../.var/app/com.visualstudio.code/cache/deno/deno_esbuild/ignore@5.2.4/node_modules/ignore/index.js"(exports, module) { + function makeArray(subject) { + return Array.isArray(subject) ? subject : [subject]; + } + var EMPTY = ""; + var SPACE = " "; + var ESCAPE = "\\"; + var REGEX_TEST_BLANK_LINE = /^\s+$/; + var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/; + var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; + var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; + var REGEX_SPLITALL_CRLF = /\r?\n/g; + var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; + var SLASH = "/"; + var TMP_KEY_IGNORE = "node-ignore"; + if (typeof Symbol !== "undefined") { + TMP_KEY_IGNORE = Symbol.for("node-ignore"); + } + var KEY_IGNORE = TMP_KEY_IGNORE; + var define2 = (object, key, value) => Object.defineProperty(object, key, { value }); + var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; + var RETURN_FALSE = () => false; + var sanitizeRange = (range) => range.replace( + REGEX_REGEXP_RANGE, + (match, from, to3) => from.charCodeAt(0) <= to3.charCodeAt(0) ? match : EMPTY + ); + var cleanRangeBackSlash = (slashes) => { + const { length } = slashes; + return slashes.slice(0, length - length % 2); + }; + var REPLACERS = [ + // > Trailing spaces are ignored unless they are quoted with backslash ("\") + [ + // (a\ ) -> (a ) + // (a ) -> (a) + // (a \ ) -> (a ) + /\\?\s+$/, + (match) => match.indexOf("\\") === 0 ? SPACE : EMPTY + ], + // replace (\ ) with ' ' + [ + /\\\s/g, + () => SPACE + ], + // Escape metacharacters + // which is written down by users but means special for regular expressions. + // > There are 12 characters with special meanings: + // > - the backslash \, + // > - the caret ^, + // > - the dollar sign $, + // > - the period or dot ., + // > - the vertical bar or pipe symbol |, + // > - the question mark ?, + // > - the asterisk or star *, + // > - the plus sign +, + // > - the opening parenthesis (, + // > - the closing parenthesis ), + // > - and the opening square bracket [, + // > - the opening curly brace {, + // > These special characters are often called "metacharacters". + [ + /[\\$.|*+(){^]/g, + (match) => `\\${match}` + ], + [ + // > a question mark (?) matches a single character + /(?!\\)\?/g, + () => "[^/]" + ], + // leading slash + [ + // > A leading slash matches the beginning of the pathname. + // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". + // A leading slash matches the beginning of the pathname + /^\//, + () => "^" + ], + // replace special metacharacter slash after the leading slash + [ + /\//g, + () => "\\/" + ], + [ + // > A leading "**" followed by a slash means match in all directories. + // > For example, "**/foo" matches file or directory "foo" anywhere, + // > the same as pattern "foo". + // > "**/foo/bar" matches file or directory "bar" anywhere that is directly + // > under directory "foo". + // Notice that the '*'s have been replaced as '\\*' + /^\^*\\\*\\\*\\\//, + // '**/foo' <-> 'foo' + () => "^(?:.*\\/)?" + ], + // starting + [ + // there will be no leading '/' + // (which has been replaced by section "leading slash") + // If starts with '**', adding a '^' to the regular expression also works + /^(?=[^^])/, + function startingReplacer() { + return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^"; + } + ], + // two globstars + [ + // Use lookahead assertions so that we could match more than one `'/**'` + /\\\/\\\*\\\*(?=\\\/|$)/g, + // Zero, one or several directories + // should not use '*', or it will be replaced by the next replacer + // Check if it is not the last `'/**'` + (_3, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+" + ], + // normal intermediate wildcards + [ + // Never replace escaped '*' + // ignore rule '\*' will match the path '*' + // 'abc.*/' -> go + // 'abc.*' -> skip this rule, + // coz trailing single wildcard will be handed by [trailing wildcard] + /(^|[^\\]+)(\\\*)+(?=.+)/g, + // '*.js' matches '.js' + // '*.js' doesn't match 'abc' + (_3, p1, p22) => { + const unescaped = p22.replace(/\\\*/g, "[^\\/]*"); + return p1 + unescaped; + } + ], + [ + // unescape, revert step 3 except for back slash + // For example, if a user escape a '\\*', + // after step 3, the result will be '\\\\\\*' + /\\\\\\(?=[$.|*+(){^])/g, + () => ESCAPE + ], + [ + // '\\\\' -> '\\' + /\\\\/g, + () => ESCAPE + ], + [ + // > The range notation, e.g. [a-zA-Z], + // > can be used to match one of the characters in a range. + // `\` is escaped by step 3 + /(\\)?\[([^\]/]*?)(\\*)($|\])/g, + (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE ? `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range)}${endEscape}]` : "[]" : "[]" + ], + // ending + [ + // 'js' will not match 'js.' + // 'ab' will not match 'abc' + /(?:[^*])$/, + // WTF! + // https://git-scm.com/docs/gitignore + // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) + // which re-fixes #24, #38 + // > If there is a separator at the end of the pattern then the pattern + // > will only match directories, otherwise the pattern can match both + // > files and directories. + // 'js*' will not match 'a.js' + // 'js/' will not match 'a.js' + // 'js' will match 'a.js' and 'a.js/' + (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)` + ], + // trailing wildcard + [ + /(\^|\\\/)?\\\*$/, + (_3, p1) => { + const prefix = p1 ? `${p1}[^/]+` : "[^/]*"; + return `${prefix}(?=$|\\/$)`; + } + ] + ]; + var regexCache = /* @__PURE__ */ Object.create(null); + var makeRegex = (pattern, ignoreCase) => { + let source = regexCache[pattern]; + if (!source) { + source = REPLACERS.reduce( + (prev, current) => prev.replace(current[0], current[1].bind(pattern)), + pattern + ); + regexCache[pattern] = source; + } + return ignoreCase ? new RegExp(source, "i") : new RegExp(source); + }; + var isString = (subject) => typeof subject === "string"; + var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0; + var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); + var IgnoreRule = class { + constructor(origin, pattern, negative, regex) { + this.origin = origin; + this.pattern = pattern; + this.negative = negative; + this.regex = regex; + } + }; + var createRule = (pattern, ignoreCase) => { + const origin = pattern; + let negative = false; + if (pattern.indexOf("!") === 0) { + negative = true; + pattern = pattern.substr(1); + } + pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); + const regex = makeRegex(pattern, ignoreCase); + return new IgnoreRule( + origin, + pattern, + negative, + regex + ); + }; + var throwError = (message, Ctor) => { + throw new Ctor(message); + }; + var checkPath = (path, originalPath, doThrow) => { + if (!isString(path)) { + return doThrow( + `path must be a string, but got \`${originalPath}\``, + TypeError + ); + } + if (!path) { + return doThrow(`path must not be empty`, TypeError); + } + if (checkPath.isNotRelative(path)) { + const r = "`path.relative()`d"; + return doThrow( + `path should be a ${r} string, but got "${originalPath}"`, + RangeError + ); + } + return true; + }; + var isNotRelative = (path) => REGEX_TEST_INVALID_PATH.test(path); + checkPath.isNotRelative = isNotRelative; + checkPath.convert = (p3) => p3; + var Ignore = class { + constructor({ + ignorecase = true, + ignoreCase = ignorecase, + allowRelativePaths = false + } = {}) { + define2(this, KEY_IGNORE, true); + this._rules = []; + this._ignoreCase = ignoreCase; + this._allowRelativePaths = allowRelativePaths; + this._initCache(); + } + _initCache() { + this._ignoreCache = /* @__PURE__ */ Object.create(null); + this._testCache = /* @__PURE__ */ Object.create(null); + } + _addPattern(pattern) { + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (checkPattern(pattern)) { + const rule = createRule(pattern, this._ignoreCase); + this._added = true; + this._rules.push(rule); + } + } + // @param {Array | string | Ignore} pattern + add(pattern) { + this._added = false; + makeArray( + isString(pattern) ? splitPattern(pattern) : pattern + ).forEach(this._addPattern, this); + if (this._added) { + this._initCache(); + } + return this; + } + // legacy + addPattern(pattern) { + return this.add(pattern); + } + // | ignored : unignored + // negative | 0:0 | 0:1 | 1:0 | 1:1 + // -------- | ------- | ------- | ------- | -------- + // 0 | TEST | TEST | SKIP | X + // 1 | TESTIF | SKIP | TEST | X + // - SKIP: always skip + // - TEST: always test + // - TESTIF: only test if checkUnignored + // - X: that never happen + // @param {boolean} whether should check if the path is unignored, + // setting `checkUnignored` to `false` could reduce additional + // path matching. + // @returns {TestResult} true if a file is ignored + _testOne(path, checkUnignored) { + let ignored = false; + let unignored = false; + this._rules.forEach((rule) => { + const { negative } = rule; + if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { + return; + } + const matched = rule.regex.test(path); + if (matched) { + ignored = !negative; + unignored = negative; + } + }); + return { + ignored, + unignored + }; + } + // @returns {TestResult} + _test(originalPath, cache2, checkUnignored, slices) { + const path = originalPath && checkPath.convert(originalPath); + checkPath( + path, + originalPath, + this._allowRelativePaths ? RETURN_FALSE : throwError + ); + return this._t(path, cache2, checkUnignored, slices); + } + _t(path, cache2, checkUnignored, slices) { + if (path in cache2) { + return cache2[path]; + } + if (!slices) { + slices = path.split(SLASH); + } + slices.pop(); + if (!slices.length) { + return cache2[path] = this._testOne(path, checkUnignored); + } + const parent = this._t( + slices.join(SLASH) + SLASH, + cache2, + checkUnignored, + slices + ); + return cache2[path] = parent.ignored ? parent : this._testOne(path, checkUnignored); + } + ignores(path) { + return this._test(path, this._ignoreCache, false).ignored; + } + createFilter() { + return (path) => !this.ignores(path); + } + filter(paths) { + return makeArray(paths).filter(this.createFilter()); + } + // @returns {TestResult} + test(path) { + return this._test(path, this._testCache, true); + } + }; + var factory = (options) => new Ignore(options); + var isPathValid = (path) => checkPath(path && checkPath.convert(path), path, RETURN_FALSE); + factory.isPathValid = isPathValid; + factory.default = factory; + module.exports = factory; + if ( + // Detect `process` so that it can run in browsers. + typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32") + ) { + const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/"); + checkPath.convert = makePosix; + const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; + checkPath.isNotRelative = (path) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path) || isNotRelative(path); + } + } +}); -// http-url:https://deno.land/std@0.177.0/log/levels.ts -var LogLevels = /* @__PURE__ */ ((LogLevels2) => { - LogLevels2[LogLevels2["NOTSET"] = 0] = "NOTSET"; - LogLevels2[LogLevels2["DEBUG"] = 10] = "DEBUG"; - LogLevels2[LogLevels2["INFO"] = 20] = "INFO"; - LogLevels2[LogLevels2["WARNING"] = 30] = "WARNING"; - LogLevels2[LogLevels2["ERROR"] = 40] = "ERROR"; - LogLevels2[LogLevels2["CRITICAL"] = 50] = "CRITICAL"; - return LogLevels2; -})(LogLevels || {}); +// https://deno.land/std@0.217.0/log/levels.ts +var LogLevels = { + NOTSET: 0, + DEBUG: 10, + INFO: 20, + WARN: 30, + ERROR: 40, + CRITICAL: 50 +}; var LogLevelNames = Object.keys(LogLevels).filter( (key) => isNaN(Number(key)) ); var byLevel = { - [String(0 /* NOTSET */)]: "NOTSET", - [String(10 /* DEBUG */)]: "DEBUG", - [String(20 /* INFO */)]: "INFO", - [String(30 /* WARNING */)]: "WARNING", - [String(40 /* ERROR */)]: "ERROR", - [String(50 /* CRITICAL */)]: "CRITICAL" + [LogLevels.NOTSET]: "NOTSET", + [LogLevels.DEBUG]: "DEBUG", + [LogLevels.INFO]: "INFO", + [LogLevels.WARN]: "WARN", + [LogLevels.ERROR]: "ERROR", + [LogLevels.CRITICAL]: "CRITICAL" }; function getLevelByName(name) { - switch (name) { - case "NOTSET": - return 0 /* NOTSET */; - case "DEBUG": - return 10 /* DEBUG */; - case "INFO": - return 20 /* INFO */; - case "WARNING": - return 30 /* WARNING */; - case "ERROR": - return 40 /* ERROR */; - case "CRITICAL": - return 50 /* CRITICAL */; - default: - throw new Error(`no log level found for "${name}"`); + const level = LogLevels[name]; + if (level !== void 0) { + return level; } + throw new Error(`no log level found for name: ${name}`); } function getLevelName(level) { const levelName = byLevel[level]; @@ -59,115 +444,38 @@ function getLevelName(level) { throw new Error(`no level name found for level: ${level}`); } -// http-url:https://deno.land/std@0.177.0/log/logger.ts -var LogRecord = class { - #args; - #datetime; - constructor(options) { - this.msg = options.msg; - this.#args = [...options.args]; - this.level = options.level; - this.loggerName = options.loggerName; - this.#datetime = /* @__PURE__ */ new Date(); - this.levelName = getLevelName(options.level); - } - get args() { - return [...this.#args]; - } - get datetime() { - return new Date(this.#datetime.getTime()); - } -}; -var Logger = class { - #level; - #handlers; - #loggerName; - constructor(loggerName, levelName, options = {}) { - this.#loggerName = loggerName; - this.#level = getLevelByName(levelName); - this.#handlers = options.handlers || []; - } - get level() { - return this.#level; - } - set level(level) { - this.#level = level; - } - get levelName() { - return getLevelName(this.#level); - } - set levelName(levelName) { - this.#level = getLevelByName(levelName); - } - get loggerName() { - return this.#loggerName; - } - set handlers(hndls) { - this.#handlers = hndls; - } - get handlers() { - return this.#handlers; - } - /** If the level of the logger is greater than the level to log, then nothing - * is logged, otherwise a log record is passed to each log handler. `msg` data - * passed in is returned. If a function is passed in, it is only evaluated - * if the msg will be logged and the return value will be the result of the - * function, not the function itself, unless the function isn't called, in which - * case undefined is returned. All types are coerced to strings for logging. - */ - #_log(level, msg, ...args) { - if (this.level > level) { - return msg instanceof Function ? void 0 : msg; - } - let fnResult; - let logMessage; - if (msg instanceof Function) { - fnResult = msg(); - logMessage = this.asString(fnResult); - } else { - logMessage = this.asString(msg); - } - const record = new LogRecord({ - msg: logMessage, - args, - level, - loggerName: this.loggerName - }); - this.#handlers.forEach((handler) => { - handler.handle(record); - }); - return msg instanceof Function ? fnResult : msg; +// https://deno.land/std@0.217.0/log/base_handler.ts +var DEFAULT_FORMATTER = ({ levelName, msg }) => `${levelName} ${msg}`; +var BaseHandler = class { + level; + levelName; + formatter; + constructor(levelName, options = {}) { + this.level = getLevelByName(levelName); + this.levelName = levelName; + this.formatter = options.formatter || DEFAULT_FORMATTER; } - asString(data) { - if (typeof data === "string") { - return data; - } else if (data === null || typeof data === "number" || typeof data === "bigint" || typeof data === "boolean" || typeof data === "undefined" || typeof data === "symbol") { - return String(data); - } else if (data instanceof Error) { - return data.stack; - } else if (typeof data === "object") { - return JSON.stringify(data); - } - return "undefined"; + handle(logRecord) { + if (this.level > logRecord.level) + return; + const msg = this.format(logRecord); + this.log(msg); } - debug(msg, ...args) { - return this.#_log(10 /* DEBUG */, msg, ...args); + format(logRecord) { + return this.formatter(logRecord); } - info(msg, ...args) { - return this.#_log(20 /* INFO */, msg, ...args); + log(_msg) { } - warning(msg, ...args) { - return this.#_log(30 /* WARNING */, msg, ...args); + setup() { } - error(msg, ...args) { - return this.#_log(40 /* ERROR */, msg, ...args); + destroy() { } - critical(msg, ...args) { - return this.#_log(50 /* CRITICAL */, msg, ...args); + [Symbol.dispose]() { + this.destroy(); } }; -// http-url:https://deno.land/std@0.177.0/fmt/colors.ts +// https://deno.land/std@0.217.0/fmt/colors.ts var colors_exports = {}; __export(colors_exports, { bgBlack: () => bgBlack, @@ -214,16 +522,17 @@ __export(colors_exports, { rgb8: () => rgb8, setColorEnabled: () => setColorEnabled, strikethrough: () => strikethrough, + stripAnsiCode: () => stripAnsiCode, stripColor: () => stripColor, underline: () => underline, white: () => white, yellow: () => yellow }); var { Deno: Deno2 } = globalThis; -var noColor = typeof Deno2?.noColor === "boolean" ? Deno2.noColor : true; +var noColor = typeof Deno2?.noColor === "boolean" ? Deno2.noColor : false; var enabled = !noColor; function setColorEnabled(value) { - if (noColor) { + if (Deno2?.noColor) { return; } enabled = value; @@ -364,8 +673,8 @@ function bgBrightCyan(str) { function bgBrightWhite(str) { return run(str, code([107], 49)); } -function clampAndTruncate(n, max = 255, min = 0) { - return Math.trunc(Math.max(Math.min(n, max), min)); +function clampAndTruncate(n2, max = 255, min = 0) { + return Math.trunc(Math.max(Math.min(n2, max), min)); } function rgb8(str, color) { return run(str, code([38, 5, clampAndTruncate(color)], 39)); @@ -424,197 +733,43 @@ function bgRgb24(str, color) { var ANSI_PATTERN = new RegExp( [ "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))" + "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TXZcf-nq-uy=><~]))" ].join("|"), "g" ); function stripColor(string2) { - return string2.replace(ANSI_PATTERN, ""); -} - -// http-url:https://deno.land/std@0.177.0/fs/exists.ts -async function exists(filePath) { - try { - await Deno.lstat(filePath); - return true; - } catch (error2) { - if (error2 instanceof Deno.errors.NotFound) { - return false; - } - throw error2; - } -} -function existsSync(filePath) { - try { - Deno.lstatSync(filePath); - return true; - } catch (error2) { - if (error2 instanceof Deno.errors.NotFound) { - return false; - } - throw error2; - } + return stripAnsiCode(string2); } - -// http-url:https://deno.land/std@0.177.0/bytes/copy.ts -function copy(src, dst, off = 0) { - off = Math.max(0, Math.min(off, dst.byteLength)); - const dstBytesAvailable = dst.byteLength - off; - if (src.byteLength > dstBytesAvailable) { - src = src.subarray(0, dstBytesAvailable); - } - dst.set(src, off); - return src.byteLength; +function stripAnsiCode(string2) { + return string2.replace(ANSI_PATTERN, ""); } -// http-url:https://deno.land/std@0.177.0/io/buf_writer.ts -var DEFAULT_BUF_SIZE = 4096; -var AbstractBufBase = class { - constructor(buf) { - this.usedBufferBytes = 0; - this.err = null; - this.buf = buf; - } - /** Size returns the size of the underlying buffer in bytes. */ - size() { - return this.buf.byteLength; - } - /** Returns how many bytes are unused in the buffer. */ - available() { - return this.buf.byteLength - this.usedBufferBytes; - } - /** buffered returns the number of bytes that have been written into the - * current buffer. - */ - buffered() { - return this.usedBufferBytes; - } -}; -var BufWriterSync = class extends AbstractBufBase { - #writer; - /** return new BufWriterSync unless writer is BufWriterSync */ - static create(writer, size = DEFAULT_BUF_SIZE) { - return writer instanceof BufWriterSync ? writer : new BufWriterSync(writer, size); - } - constructor(writer, size = DEFAULT_BUF_SIZE) { - super(new Uint8Array(size <= 0 ? DEFAULT_BUF_SIZE : size)); - this.#writer = writer; - } - /** Discards any unflushed buffered data, clears any error, and - * resets buffer to write its output to w. - */ - reset(w) { - this.err = null; - this.usedBufferBytes = 0; - this.#writer = w; - } - /** Flush writes any buffered data to the underlying io.WriterSync. */ - flush() { - if (this.err !== null) - throw this.err; - if (this.usedBufferBytes === 0) - return; - try { - const p = this.buf.subarray(0, this.usedBufferBytes); - let nwritten = 0; - while (nwritten < p.length) { - nwritten += this.#writer.writeSync(p.subarray(nwritten)); - } - } catch (e) { - if (e instanceof Error) { - this.err = e; - } - throw e; - } - this.buf = new Uint8Array(this.buf.length); - this.usedBufferBytes = 0; - } - /** Writes the contents of `data` into the buffer. If the contents won't fully - * fit into the buffer, those bytes that can are copied into the buffer, the - * buffer is the flushed to the writer and the remaining bytes are copied into - * the now empty buffer. - * - * @return the number of bytes written to the buffer. - */ - writeSync(data) { - if (this.err !== null) - throw this.err; - if (data.length === 0) - return 0; - let totalBytesWritten = 0; - let numBytesWritten = 0; - while (data.byteLength > this.available()) { - if (this.buffered() === 0) { - try { - numBytesWritten = this.#writer.writeSync(data); - } catch (e) { - if (e instanceof Error) { - this.err = e; - } - throw e; - } - } else { - numBytesWritten = copy(data, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - this.flush(); - } - totalBytesWritten += numBytesWritten; - data = data.subarray(numBytesWritten); - } - numBytesWritten = copy(data, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - totalBytesWritten += numBytesWritten; - return totalBytesWritten; - } -}; - -// http-url:https://deno.land/std@0.177.0/log/handlers.ts -var DEFAULT_FORMATTER = "{levelName} {msg}"; -var BaseHandler = class { +// https://deno.land/std@0.217.0/log/console_handler.ts +var ConsoleHandler = class extends BaseHandler { + #useColors; constructor(levelName, options = {}) { - this.level = getLevelByName(levelName); - this.levelName = levelName; - this.formatter = options.formatter || DEFAULT_FORMATTER; - } - handle(logRecord) { - if (this.level > logRecord.level) - return; - const msg = this.format(logRecord); - return this.log(msg); + super(levelName, options); + this.#useColors = options.useColors ?? true; } format(logRecord) { - if (this.formatter instanceof Function) { - return this.formatter(logRecord); + let msg = super.format(logRecord); + if (this.#useColors) { + msg = this.applyColors(msg, logRecord.level); } - return this.formatter.replace(/{([^\s}]+)}/g, (match, p1) => { - const value = logRecord[p1]; - if (value == null) { - return match; - } - return String(value); - }); - } - log(_msg) { - } - setup() { - } - destroy() { + return msg; } -}; -var ConsoleHandler = class extends BaseHandler { - format(logRecord) { - let msg = super.format(logRecord); - switch (logRecord.level) { - case 20 /* INFO */: + applyColors(msg, level) { + switch (level) { + case LogLevels.INFO: msg = blue(msg); break; - case 30 /* WARNING */: + case LogLevels.WARN: msg = yellow(msg); break; - case 40 /* ERROR */: + case LogLevels.ERROR: msg = red(msg); break; - case 50 /* CRITICAL */: + case LogLevels.CRITICAL: msg = bold(red(msg)); break; default: @@ -626,142 +781,139 @@ var ConsoleHandler = class extends BaseHandler { console.log(msg); } }; -var WriterHandler = class extends BaseHandler { - constructor() { - super(...arguments); - this.#encoder = new TextEncoder(); + +// https://deno.land/std@0.217.0/log/logger.ts +var LogRecord = class { + msg; + #args; + #datetime; + level; + levelName; + loggerName; + constructor(options) { + this.msg = options.msg; + this.#args = [...options.args]; + this.level = options.level; + this.loggerName = options.loggerName; + this.#datetime = /* @__PURE__ */ new Date(); + this.levelName = getLevelName(options.level); } - #encoder; -}; -var FileHandler = class extends WriterHandler { - constructor(levelName, options) { - super(levelName, options); - this._encoder = new TextEncoder(); - this.#unloadCallback = (() => { - this.destroy(); - }).bind(this); - this._filename = options.filename; - this._mode = options.mode ? options.mode : "a"; - this._openOptions = { - createNew: this._mode === "x", - create: this._mode !== "x", - append: this._mode === "a", - truncate: this._mode !== "a", - write: true - }; + get args() { + return [...this.#args]; } - #unloadCallback; - setup() { - this._file = Deno.openSync(this._filename, this._openOptions); - this._writer = this._file; - this._buf = new BufWriterSync(this._file); - addEventListener("unload", this.#unloadCallback); + get datetime() { + return new Date(this.#datetime.getTime()); } - handle(logRecord) { - super.handle(logRecord); - if (logRecord.level > 40 /* ERROR */) { - this.flush(); - } +}; +var Logger = class { + #level; + handlers; + #loggerName; + constructor(loggerName, levelName, options = {}) { + this.#loggerName = loggerName; + this.#level = getLevelByName(levelName); + this.handlers = options.handlers || []; } - log(msg) { - if (this._encoder.encode(msg).byteLength + 1 > this._buf.available()) { - this.flush(); - } - this._buf.writeSync(this._encoder.encode(msg + "\n")); + /** Use this to retrieve the current numeric log level. */ + get level() { + return this.#level; } - flush() { - if (this._buf?.buffered() > 0) { - this._buf.flush(); + /** Use this to set the numeric log level. */ + set level(level) { + try { + this.#level = getLevelByName(getLevelName(level)); + } catch (_3) { + throw new TypeError(`Invalid log level: ${level}`); } } - destroy() { - this.flush(); - this._file?.close(); - this._file = void 0; - removeEventListener("unload", this.#unloadCallback); + get levelName() { + return getLevelName(this.#level); } -}; -var RotatingFileHandler = class extends FileHandler { - #maxBytes; - #maxBackupCount; - #currentFileSize = 0; - constructor(levelName, options) { - super(levelName, options); - this.#maxBytes = options.maxBytes; - this.#maxBackupCount = options.maxBackupCount; + set levelName(levelName) { + this.#level = getLevelByName(levelName); } - async setup() { - if (this.#maxBytes < 1) { - this.destroy(); - throw new Error("maxBytes cannot be less than 1"); - } - if (this.#maxBackupCount < 1) { - this.destroy(); - throw new Error("maxBackupCount cannot be less than 1"); + get loggerName() { + return this.#loggerName; + } + /** + * If the level of the logger is greater than the level to log, then nothing + * is logged, otherwise a log record is passed to each log handler. `msg` data + * passed in is returned. If a function is passed in, it is only evaluated + * if the msg will be logged and the return value will be the result of the + * function, not the function itself, unless the function isn't called, in which + * case undefined is returned. All types are coerced to strings for logging. + */ + #log(level, msg, ...args) { + if (this.level > level) { + return msg instanceof Function ? void 0 : msg; } - await super.setup(); - if (this._mode === "w") { - for (let i = 1; i <= this.#maxBackupCount; i++) { - try { - await Deno.remove(this._filename + "." + i); - } catch (error2) { - if (!(error2 instanceof Deno.errors.NotFound)) { - throw error2; - } - } - } - } else if (this._mode === "x") { - for (let i = 1; i <= this.#maxBackupCount; i++) { - if (await exists(this._filename + "." + i)) { - this.destroy(); - throw new Deno.errors.AlreadyExists( - "Backup log file " + this._filename + "." + i + " already exists" - ); - } - } + let fnResult; + let logMessage; + if (msg instanceof Function) { + fnResult = msg(); + logMessage = this.asString(fnResult); } else { - this.#currentFileSize = (await Deno.stat(this._filename)).size; + logMessage = this.asString(msg); } + const record = new LogRecord({ + msg: logMessage, + args, + level, + loggerName: this.loggerName + }); + this.handlers.forEach((handler) => { + handler.handle(record); + }); + return msg instanceof Function ? fnResult : msg; } - log(msg) { - const msgByteLength = this._encoder.encode(msg).byteLength + 1; - if (this.#currentFileSize + msgByteLength > this.#maxBytes) { - this.rotateLogFiles(); - this.#currentFileSize = 0; + asString(data, isProperty = false) { + if (typeof data === "string") { + if (isProperty) + return `"${data}"`; + return data; + } else if (data === null || typeof data === "number" || typeof data === "bigint" || typeof data === "boolean" || typeof data === "undefined" || typeof data === "symbol") { + return String(data); + } else if (data instanceof Error) { + return data.stack; + } else if (typeof data === "object") { + return `{${Object.entries(data).map(([k3, v4]) => `"${k3}":${this.asString(v4, true)}`).join(",")}}`; } - super.log(msg); - this.#currentFileSize += msgByteLength; + return "undefined"; } - rotateLogFiles() { - this._buf.flush(); - this._file.close(); - for (let i = this.#maxBackupCount - 1; i >= 0; i--) { - const source = this._filename + (i === 0 ? "" : "." + i); - const dest = this._filename + "." + (i + 1); - if (existsSync(source)) { - Deno.renameSync(source, dest); - } - } - this._file = Deno.openSync(this._filename, this._openOptions); - this._writer = this._file; - this._buf = new BufWriterSync(this._file); + debug(msg, ...args) { + return this.#log(LogLevels.DEBUG, msg, ...args); + } + info(msg, ...args) { + return this.#log(LogLevels.INFO, msg, ...args); + } + warn(msg, ...args) { + return this.#log(LogLevels.WARN, msg, ...args); + } + error(msg, ...args) { + return this.#log(LogLevels.ERROR, msg, ...args); + } + critical(msg, ...args) { + return this.#log(LogLevels.CRITICAL, msg, ...args); } }; -// http-url:https://deno.land/std@0.177.0/_util/asserts.ts -var DenoStdInternalError = class extends Error { +// https://deno.land/std@0.217.0/assert/assertion_error.ts +var AssertionError = class extends Error { + /** Constructs a new instance. */ constructor(message) { super(message); - this.name = "DenoStdInternalError"; + this.name = "AssertionError"; } }; + +// https://deno.land/std@0.217.0/assert/assert.ts function assert(expr, msg = "") { if (!expr) { - throw new DenoStdInternalError(msg); + throw new AssertionError(msg); } } -// http-url:https://deno.land/std@0.177.0/log/mod.ts +// https://deno.land/std@0.217.0/log/_config.ts var DEFAULT_LEVEL = "INFO"; var DEFAULT_CONFIG = { handlers: { @@ -774,26 +926,23 @@ var DEFAULT_CONFIG = { } } }; + +// https://deno.land/std@0.217.0/log/_state.ts var state = { handlers: /* @__PURE__ */ new Map(), loggers: /* @__PURE__ */ new Map(), config: DEFAULT_CONFIG }; -var handlers = { - BaseHandler, - ConsoleHandler, - WriterHandler, - FileHandler, - RotatingFileHandler -}; + +// https://deno.land/std@0.217.0/log/get_logger.ts function getLogger(name) { if (!name) { - const d = state.loggers.get("default"); + const d5 = state.loggers.get("default"); assert( - d != null, + d5 !== void 0, `"default" logger must be set for getting logger without name` ); - return d; + return d5; } const result = state.loggers.get(name); if (!result) { @@ -803,6 +952,8 @@ function getLogger(name) { } return result; } + +// https://deno.land/std@0.217.0/log/setup.ts function setup(config) { state.config = { handlers: { ...DEFAULT_CONFIG.handlers, ...config.handlers }, @@ -812,41 +963,59 @@ function setup(config) { handler.destroy(); }); state.handlers.clear(); - const handlers2 = state.config.handlers || {}; - for (const handlerName in handlers2) { - const handler = handlers2[handlerName]; + const handlers = state.config.handlers || {}; + for (const [handlerName, handler] of Object.entries(handlers)) { handler.setup(); state.handlers.set(handlerName, handler); } state.loggers.clear(); const loggers = state.config.loggers || {}; - for (const loggerName in loggers) { - const loggerConfig = loggers[loggerName]; + for (const [loggerName, loggerConfig] of Object.entries(loggers)) { const handlerNames = loggerConfig.handlers || []; - const handlers3 = []; + const handlers2 = []; handlerNames.forEach((handlerName) => { const handler = state.handlers.get(handlerName); if (handler) { - handlers3.push(handler); + handlers2.push(handler); } }); const levelName = loggerConfig.level || DEFAULT_LEVEL; - const logger2 = new Logger(loggerName, levelName, { handlers: handlers3 }); + const logger2 = new Logger(loggerName, levelName, { handlers: handlers2 }); state.loggers.set(loggerName, logger2); } } setup(DEFAULT_CONFIG); -// http-url:https://deno.land/x/cliffy@v0.25.7/table/cell.ts -var Cell = class { +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/border.ts +var border = { + top: "\u2500", + topMid: "\u252C", + topLeft: "\u250C", + topRight: "\u2510", + bottom: "\u2500", + bottomMid: "\u2534", + bottomLeft: "\u2514", + bottomRight: "\u2518", + left: "\u2502", + leftMid: "\u251C", + mid: "\u2500", + midMid: "\u253C", + right: "\u2502", + rightMid: "\u2524", + middle: "\u2502" +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/cell.ts +var Cell = class _Cell { /** * Cell constructor. + * * @param value Cell value. */ constructor(value) { this.value = value; - this.options = {}; } + options = {}; /** Get cell length. */ get length() { return this.toString().length; @@ -854,21 +1023,30 @@ var Cell = class { /** * Create a new cell. If value is a cell, the value and all options of the cell * will be copied to the new cell. + * * @param value Cell or cell value. */ static from(value) { - const cell = new this(value); - if (value instanceof Cell) { + let cell; + if (value instanceof _Cell) { + cell = new this(value.getValue()); cell.options = { ...value.options }; + } else { + cell = new this(value); } return cell; } - /** Get cell value. */ + /** Get cell string value. */ toString() { return this.value.toString(); } + /** Get cell value. */ + getValue() { + return this.value; + } /** * Set cell value. + * * @param value Cell or cell value. */ setValue(value) { @@ -877,22 +1055,22 @@ var Cell = class { } /** * Clone cell with all options. + * * @param value Cell or cell value. */ clone(value) { - const cell = new Cell(value ?? this); - cell.options = { ...this.options }; - return cell; + return _Cell.from(value ?? this); } /** * Setter: */ /** * Enable/disable cell border. + * * @param enable Enable/disable cell border. * @param override Override existing value. */ - border(enable, override = true) { + border(enable = true, override = true) { if (override || typeof this.options.border === "undefined") { this.options.border = enable; } @@ -900,6 +1078,23 @@ var Cell = class { } /** * Set col span. + * + * ```ts + * import { Cell, Table } from "./mod.ts"; + * + * new Table() + * .body([ + * [ + * new Cell("Row 1 & 2 Column 1").rowSpan(2), + * "Row 1 Column 2", + * "Row 1 Column 3", + * ], + * [new Cell("Row 2 Column 2 & 3").colSpan(2)], + * ]) + * .border() + * .render(); + * ``` + * * @param span Number of cols to span. * @param override Override existing value. */ @@ -911,6 +1106,23 @@ var Cell = class { } /** * Set row span. + * + * ```ts + * import { Cell, Table } from "./mod.ts"; + * + * new Table() + * .body([ + * [ + * new Cell("Row 1 & 2 Column 1").rowSpan(2), + * "Row 1 Column 2", + * "Row 1 Column 3", + * ], + * [new Cell("Row 2 Column 2 & 3").colSpan(2)], + * ]) + * .border() + * .render(); + * ``` + * * @param span Number of rows to span. * @param override Override existing value. */ @@ -922,6 +1134,7 @@ var Cell = class { } /** * Align cell content. + * * @param direction Align direction. * @param override Override existing value. */ @@ -952,99 +1165,75 @@ var Cell = class { } }; -// http-url:https://deno.land/x/cliffy@v0.25.7/table/row.ts -var Row = class extends Array { - constructor() { - super(...arguments); - this.options = {}; - } +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/column.ts +var Column = class _Column { /** - * Create a new row. If cells is a row, all cells and options of the row will - * be copied to the new row. - * @param cells Cells or row. + * Create a new cell from column options or an existing column. + * @param options */ - static from(cells) { - const row = new this(...cells); - if (cells instanceof Row) { - row.options = { ...cells.options }; - } - return row; + static from(options) { + const opts = options instanceof _Column ? options.opts : options; + return new _Column().options(opts); + } + opts = {}; + /** Set column options. */ + options(options) { + Object.assign(this.opts, options); + return this; } - /** Clone row recursively with all options. */ - clone() { - const row = new Row( - ...this.map((cell) => cell instanceof Cell ? cell.clone() : cell) - ); - row.options = { ...this.options }; - return row; + /** Set min column width. */ + minWidth(width) { + this.opts.minWidth = width; + return this; } - /** - * Setter: - */ - /** - * Enable/disable cell border. - * @param enable Enable/disable cell border. - * @param override Override existing value. - */ - border(enable, override = true) { - if (override || typeof this.options.border === "undefined") { - this.options.border = enable; - } + /** Set max column width. */ + maxWidth(width) { + this.opts.maxWidth = width; return this; } - /** - * Align row content. - * @param direction Align direction. - * @param override Override existing value. - */ - align(direction, override = true) { - if (override || typeof this.options.align === "undefined") { - this.options.align = direction; - } + /** Set column border. */ + border(border2 = true) { + this.opts.border = border2; return this; } - /** - * Getter: - */ - /** Check if row has border. */ + /** Set column padding. */ + padding(padding) { + this.opts.padding = padding; + return this; + } + /** Set column alignment. */ + align(direction) { + this.opts.align = direction; + return this; + } + /** Get min column width. */ + getMinWidth() { + return this.opts.minWidth; + } + /** Get max column width. */ + getMaxWidth() { + return this.opts.maxWidth; + } + /** Get column border. */ getBorder() { - return this.options.border === true; + return this.opts.border; } - /** Check if row or any child cell has border. */ - hasBorder() { - return this.getBorder() || this.some((cell) => cell instanceof Cell && cell.getBorder()); + /** Get column padding. */ + getPadding() { + return this.opts.padding; } - /** Get row alignment. */ + /** Get column alignment. */ getAlign() { - return this.options.align ?? "left"; + return this.opts.align; } }; -// http-url:https://deno.land/x/cliffy@v0.25.7/table/border.ts -var border = { - top: "\u2500", - topMid: "\u252C", - topLeft: "\u250C", - topRight: "\u2510", - bottom: "\u2500", - bottomMid: "\u2534", - bottomLeft: "\u2514", - bottomRight: "\u2518", - left: "\u2502", - leftMid: "\u251C", - mid: "\u2500", - midMid: "\u253C", - right: "\u2502", - rightMid: "\u2524", - middle: "\u2502" -}; - -// http-url:https://deno.land/std@0.170.0/fmt/colors.ts +// https://deno.land/std@0.196.0/fmt/colors.ts var { Deno: Deno3 } = globalThis; -var noColor2 = typeof Deno3?.noColor === "boolean" ? Deno3.noColor : true; +var noColor2 = typeof Deno3?.noColor === "boolean" ? Deno3.noColor : false; var enabled2 = !noColor2; function setColorEnabled2(value) { - if (noColor2) { + if (Deno3?.noColor) { return; } enabled2 = value; @@ -1097,23 +1286,68 @@ function stripColor2(string2) { return string2.replace(ANSI_PATTERN2, ""); } -// http-url:https://deno.land/x/cliffy@v0.25.7/table/utils.ts -function consumeWords(length, content) { - let consumed = ""; - const words = content.split("\n")[0]?.split(/ /g); - for (let i = 0; i < words.length; i++) { - const word = words[i]; - if (consumed) { - const nextLength = strLength(word); - const consumedLength = strLength(consumed); - if (consumedLength + nextLength >= length) { - break; - } +// https://deno.land/std@0.196.0/console/_data.json +var data_default = { + UNICODE_VERSION: "15.0.0", + tables: [ + { + d: "AAECAwQFBgcICQoLDA0OAw8DDwkQCRESERIA", + r: "AQEBAgEBAQEBAQEBAQEBBwEHAVABBwcBBwF4" + }, + { + d: "AAECAwQFBgcGCAYJCgsMDQ4PEAYREhMUBhUWFxgZGhscHR4fICEiIyIkJSYnKCkqJSssLS4vMDEyMzQ1Njc4OToGOzwKBj0GPj9AQUIGQwZEBkVGR0hJSktMTQZOBgoGT1BRUlNUVVZXWFkGWgZbBlxdXl1fYGFiY2RlZmdoBmlqBmsGAQZsBm1uO29wcXI7czt0dXZ3OwY7eHkGent8Bn0Gfn+AgYKDhIWGBoc7iAZdO4kGiosGAXGMBo0GjgaPBpAGkQaSBpMGlJUGlpcGmJmam5ydnp+gLgahLKIGo6SlpganqKmqqwasBq0Grq8GsLGyswa0BrUGtre4Brm6uwZHvAa9vga/wME7wjvDxAbFO8bHO8gGyQbKywbMzQbOBs/Q0QbSBr8GvgbT1AbUBtUG1gbXBtjZ2tsG3N0G3t/g4eLjO+Tl5ufoO+k76gbrBuztOwbu7/AGO+XxCgYKCwZd8g==", + r: "AQEBAQEBAQEBAQEBAQEBAQEBAQMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECBQEOAQEBAQEBAQEBAwEBAQEBAQEBAQIBAwEIAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBDQEBBQEBAQEBAgEBAwEBAQEBAQEBAQEBbQHaAQEFAQEBBAECAQEBAQEBAQEBAwGuASFkCAELAQEBAQEBAQEHAQMBAQEaAQIBCAEFAQEBAQEBAQEBAQEBAQEBAQEBAQECAQEBAQIBAQEBAQEBAwEDAQEBAQEBAQUBAQEBAQEBBAEBAVIBAdkBARABAQFfARMBAYoBBAEBBQEmAUkBAQcBAQIBHgEBARUBAQEBAQUBAQcBDwEBARoBAgEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQMBBAEBAgEBAQEUfwEBAQIDAXj/AQ==" + }, + { + d: "AFUVAF3Xd3X/93//VXVVV9VX9V91f1/31X93XVXdVdVV9dVV/VVX1X9X/131VfXVVXV3V1VdVV1V1/1dV1X/3VUAVf3/3/9fVf3/3/9fVV1V/11VFQBQVQEAEEEQVQBQVQBAVFUVAFVUVQUAEAAUBFBVFVFVAEBVBQBUVRUAVVFVBRAAAVBVAVVQVQBVBQBAVUVUAQBUUQEAVQVVUVVUAVRVUVUFVUVBVVRBFRRQUVVQUVUBEFRRVQVVBQBRVRQBVFVRVUFVBVVFVVRVUVVUVQRUBQRQVUFVBVVFVVBVBVVQVRVUAVRVUVUFVVFVRVUFRFVRAEBVFQBAVVEAVFUAQFVQVRFRVQEAQAAEVQEAAQBUVUVVAQQAQVVQBVRVAVRVRUFVUVVRVaoAVQFVBVRVBVUFVQVVEABQVUUBAFVRVRUAVUFVUVVAFVRVRVUBVRUUVUUAQEQBAFQVABRVAEBVAFUEQFRFVRUAVVBVBVAQUFVFUBFQVQAFVUAABABUUVVUUFUVANd/X3//BUD3XdV1VQAEAFVXVdX9V1VXVQBUVdVdVdV1VX111VXVV9V//1X/X1VdVf9fVV9VdVdV1VX31dfVXXX9193/d1X/VV9VV3VVX//1VfVVXVVdVdVVdVWlVWlVqVaWVf/f/1X/Vf/1X1Xf/19V9VVf9df1X1X1X1XVVWlVfV31VVpVd1V3VapV33/fVZVVlVX1WVWlVelV+v/v//7/31Xv/6/77/tVWaVVVlVdVWaVmlX1/1WpVVZVlVWVVlVW+V9VFVBVAKqaqlWqWlWqVaoKoKpqqapqgapVqaqpqmqqVapqqv+qVqpqVRVAAFBVBVVQVUUVVUFVVFVQVQBQVRVVBQBQVRUAUFWqVkBVFQVQVVFVAUBBVRVVVFVUVQQUVAVRVVBVRVVRVFFVqlVFVQCqWlUAqmqqaqpVqlZVqmpVAV1VUVVUVQVAVQFBVQBVQBVVQVUAVRVUVQFVBQBUVQVQVVFVAEBVFFRVFVBVFUBBUUVVUVVAVRUAAQBUVRVVUFUFAEBVARRVFVAEVUVVFQBAVVRVBQBUAFRVAAVEVUVVFQBEFQRVBVBVEFRVUFUVAEARVFUVUQAQVQEFEABVFQBBVRVEFVUABVVUVQEAQFUVABRAVRVVAUABVQUAQFBVAEAAEFUFAAUABEFVAUBFEAAQVVARVRVUVVBVBUBVRFVUFQBQVQBUVQBAVRVVFUBVqlRVWlWqVapaVapWVaqpqmmqalVlVWpZVapVqlVBAFUAUABAVRVQVRUAQAEAVQVQVQVUVQBAFQBUVVFVVFUVAAEAVQBAABQAEARAVUVVAFUAQFUAQFVWVZVV/39V/1//X1X/76uq6v9XVWpVqlWqVlVaVapaVapWVamqmqqmqlWqapWqVapWqmqmqpaqWlWVaqpVZVVpVVZVlapVqlpVVmqpVapVlVZVqlZVqlVWVapqqpqqVapWqlZVqpqqWlWlqlWqVlWqVlVRVQD/Xw==", + r: "CBcBCAEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQMBAQECAQEBAQEBAQEBAQEBBAEBGAEDAQwBAwEIAQEBAQEBAQgcCAEDAQEBAQEDAQEBDQEDEAELAQEBEQEKAQEBDgEBAgIBAQoBBQQBCAEBAQEBAQEHAQEHBgEWAQIBDQECAgEFAQECAgEKAQ0BAQIKAQ0BDQEBAQEBAQEBAgEHAQ4BAQEBAQQBBgEBDgEBAQEBAQcBAQIBAQEBBAEFAQEBDgEBAQEBAQECAQcBDwECAQwCDQEBAQEBAQECAQgBAQEEAQcBDQEBAQEBAQQBBwERAQEBARYBAQECAQEBGAECAQIBARIBBgEBDQECAQEBAQECAQgBAQEZAQEBAgYBAQEDAQECAQEBAQMBCBgIBwEMAQEGAQcBBwEQAQEBAQEBAgIBCgEBDQEIAQ0BAQEBAQEBBgEBDgEBAQEBAQEBAgEMBwEMAQwBAQEBCQECAwEHAQEBAQ0BAQEBDgIBBgEDAQEBAQEBAQMBAQEBAgEBAQEBAQEBCAEBAgEBAQEBAQkBCAgBAwECAQEBAgEBAQkBAQEBAwECAQMBAQIBBwEFAQEDAQYBAQEBAgEBAQEBAQEBAQECAgEDAQECBAIDAgIBBQEEAQEBAwEPAQEBCyIBCAEJAwQBAQIBAQEBAgECAQEBAQMBAQEBAwEBAQEBAQEBAQgBAQMDAgEBAwEEAQIBAQEBBAEBAQEBAQECAQEBAQEBAQEBAQEHAQQBAwEBAQcBAgUBBgECAQYBAQwBAQEUAQELCAYBFgMFAQYDAQoBAQMBARQBAQkBAQoBBgEVAwsBCgIPAQ0BGQEBAgEHARQBAwIBBgEBAQUBBgQBAgEJAQEBBQECAQMHAQELAQECCQEQAQECAgECAQsBDAEBAQEBCgEBAQsBAQEECQ4BCAQCAQEECAEEAQEFCAEPAQEEAQEPAQgBFAEBAQEBAQEKAQEJAQ8BEAEBEwEBAQIBCwEBDgENAwEKAQEBAQELAQEBAQECAQwBCAEBAQEBDgEDAQwBAQECAQEXAQEBAQEHAgEBBQEIAQEBAQEQAgEBBQEUAQEBAQEbAQEBAQEGARQBAQEBARkBAQEBCQEBAQEQAQIBDwEBARQBAQEBBwEBAQkBAQEBAQECAQEBCwECAQEVAQEBAQQBBQEBAQEOAQEBAQEBEgEBFgEBAgEMAQEBAQ8BAQMBFgEBDgEBBQEPAQETAQECAQMOAgUBCgIBGQEBAQEIAQMBBwEBAwECEwgBAQcLAQUBFwEBAQEDAQEBBwEBBAEBDg0BAQwBAQEDAQQBAQEDBAEBBAEBAQEBEAEPAQgBAQsBAQ4BEQEMAgEBBwEOAQEHAQEBAQQBBAEDCwECAQEBAwEBBggBAgEBAREBBQMKAQEBAwQCEQEBHgEPAQIBAQYEAQYBAwEUAQUMAQEBAQEBAQECAQEBAgEIAwEBBgsBAgEODAMBAgEBCwEBAQEBAwECAQECAQEBBwgPAQ==" } - consumed += (i > 0 ? " " : "") + word; + ] +}; + +// https://deno.land/std@0.196.0/console/_rle.ts +function runLengthDecode({ d: d5, r }) { + const data = atob(d5); + const runLengths = atob(r); + let out = ""; + for (const [i, ch] of [...runLengths].entries()) { + out += data[i].repeat(ch.codePointAt(0)); } - return consumed; + return Uint8Array.from([...out].map((x2) => x2.codePointAt(0))); +} + +// https://deno.land/std@0.196.0/console/unicode_width.ts +var tables = null; +function lookupWidth(cp) { + if (!tables) + tables = data_default.tables.map(runLengthDecode); + const t1Offset = tables[0][cp >> 13 & 255]; + const t2Offset = tables[1][128 * t1Offset + (cp >> 6 & 127)]; + const packedWidths = tables[2][16 * t2Offset + (cp >> 2 & 15)]; + const width = packedWidths >> 2 * (cp & 3) & 3; + return width === 3 ? 1 : width; +} +var cache = /* @__PURE__ */ new Map(); +function charWidth(ch) { + if (cache.has(ch)) + return cache.get(ch); + const cp = ch.codePointAt(0); + let v4 = null; + if (cp < 127) { + v4 = cp >= 32 ? 1 : cp === 0 ? 0 : null; + } else if (cp >= 160) { + v4 = lookupWidth(cp); + } else { + v4 = null; + } + cache.set(ch, v4); + return v4; } +function unicodeWidth(str) { + return [...str].map((ch) => charWidth(ch) ?? 0).reduce((a3, b2) => a3 + b2, 0); +} + +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/_utils.ts function longest(index, rows, maxWidth) { const cellLengths = rows.map((row) => { const cell = row[index]; @@ -1126,33 +1360,109 @@ function longest(index, rows, maxWidth) { return Math.max(...cellLengths); } var strLength = (str) => { - str = stripColor2(str); - let length = 0; - for (let i = 0; i < str.length; i++) { - const charCode = str.charCodeAt(i); - if (charCode >= 19968 && charCode <= 40869) { - length += 2; - } else { - length += 1; - } - } - return length; + return unicodeWidth(stripColor2(str)); }; -// http-url:https://deno.land/x/cliffy@v0.25.7/table/layout.ts -var TableLayout = class { - /** - * Table layout constructor. - * @param table Table instance. - * @param options Render options. - */ - constructor(table, options) { - this.table = table; - this.options = options; - } - /** Generate table string. */ - toString() { - const opts = this.createLayout(); +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/consume_words.ts +function consumeWords(length, content) { + let consumed = ""; + const words = content.split("\n")[0]?.split(/ /g); + for (let i = 0; i < words.length; i++) { + const word = words[i]; + if (consumed) { + const nextLength = strLength(word); + const consumedLength = strLength(consumed); + if (consumedLength + nextLength >= length) { + break; + } + } + consumed += (i > 0 ? " " : "") + word; + } + return consumed; +} + +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/row.ts +var Row = class _Row extends Array { + options = {}; + /** + * Create a new row. If cells is a row, all cells and options of the row will + * be copied to the new row. + * + * @param cells Cells or row. + */ + static from(cells) { + const row = new this(...cells); + if (cells instanceof _Row) { + row.options = { ...cells.options }; + } + return row; + } + /** Clone row recursively with all options. */ + clone() { + const row = new _Row( + ...this.map((cell) => cell instanceof Cell ? cell.clone() : cell) + ); + row.options = { ...this.options }; + return row; + } + /** + * Setter: + */ + /** + * Enable/disable cell border. + * + * @param enable Enable/disable cell border. + * @param override Override existing value. + */ + border(enable = true, override = true) { + if (override || typeof this.options.border === "undefined") { + this.options.border = enable; + } + return this; + } + /** + * Align row content. + * + * @param direction Align direction. + * @param override Override existing value. + */ + align(direction, override = true) { + if (override || typeof this.options.align === "undefined") { + this.options.align = direction; + } + return this; + } + /** + * Getter: + */ + /** Check if row has border. */ + getBorder() { + return this.options.border === true; + } + /** Check if row or any child cell has border. */ + hasBorder() { + return this.getBorder() || this.some((cell) => cell instanceof Cell && cell.getBorder()); + } + /** Get row alignment. */ + getAlign() { + return this.options.align ?? "left"; + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/_layout.ts +var TableLayout = class { + /** + * Table layout constructor. + * @param table Table instance. + * @param options Render options. + */ + constructor(table, options) { + this.table = table; + this.options = options; + } + /** Generate table string. */ + toString() { + const opts = this.createLayout(); return opts.rows.length ? this.renderRows(opts) : ""; } /** @@ -1171,23 +1481,25 @@ var TableLayout = class { const hasBorder = hasHeaderBorder || hasBodyBorder; const rows = this.#getRows(); const columns = Math.max(...rows.map((row) => row.length)); - for (const row of rows) { + for (let rowIndex = 0; rowIndex < rows.length; rowIndex++) { + const row = rows[rowIndex]; const length = row.length; if (length < columns) { const diff = columns - length; for (let i = 0; i < diff; i++) { - row.push(this.createCell(null, row)); + row.push(this.createCell(null, row, rowIndex, length + i)); } } } const padding = []; const width = []; for (let colIndex = 0; colIndex < columns; colIndex++) { - const minColWidth = Array.isArray(this.options.minColWidth) ? this.options.minColWidth[colIndex] : this.options.minColWidth; - const maxColWidth = Array.isArray(this.options.maxColWidth) ? this.options.maxColWidth[colIndex] : this.options.maxColWidth; + const column = this.options.columns.at(colIndex); + const minColWidth = column?.getMinWidth() ?? (Array.isArray(this.options.minColWidth) ? this.options.minColWidth[colIndex] : this.options.minColWidth); + const maxColWidth = column?.getMaxWidth() ?? (Array.isArray(this.options.maxColWidth) ? this.options.maxColWidth[colIndex] : this.options.maxColWidth); const colWidth = longest(colIndex, rows, maxColWidth); width[colIndex] = Math.min(maxColWidth, Math.max(minColWidth, colWidth)); - padding[colIndex] = Array.isArray(this.options.padding) ? this.options.padding[colIndex] : this.options.padding; + padding[colIndex] = column?.getPadding() ?? (Array.isArray(this.options.padding) ? this.options.padding[colIndex] : this.options.padding); } return { padding, @@ -1210,10 +1522,15 @@ var TableLayout = class { if (hasSpan) { return this.spanRows(rows); } - return rows.map((row) => { + return rows.map((row, rowIndex) => { const newRow = this.createRow(row); - for (let i = 0; i < row.length; i++) { - newRow[i] = this.createCell(row[i], newRow); + for (let colIndex = 0; colIndex < row.length; colIndex++) { + newRow[colIndex] = this.createCell( + row[colIndex], + newRow, + rowIndex, + colIndex + ); } return newRow; }); @@ -1259,7 +1576,9 @@ var TableLayout = class { } const cell = row[colIndex] = this.createCell( row[colIndex] || null, - row + row, + rowIndex, + colIndex ); colSpan = cell.getColSpan(); rowSpan[colIndex] = cell.getRowSpan(); @@ -1279,11 +1598,25 @@ var TableLayout = class { } /** * Create a new cell from existing cell or cell value. - * @param cell Original cell. - * @param row Parent row. + * + * @param cell Original cell. + * @param row Parent row. + * @param rowIndex The row index of the cell. + * @param colIndex The column index of the cell. */ - createCell(cell, row) { - return Cell.from(cell ?? "").border(row.getBorder(), false).align(row.getAlign(), false); + createCell(cell, row, rowIndex, colIndex) { + const column = this.options.columns.at(colIndex); + const isHeaderRow = this.isHeaderRow(rowIndex); + return Cell.from(cell ?? "").border( + (isHeaderRow ? null : column?.getBorder()) ?? row.getBorder(), + false + ).align( + (isHeaderRow ? null : column?.getAlign()) ?? row.getAlign(), + false + ); + } + isHeaderRow(rowIndex) { + return rowIndex === 0 && this.table.getHeader() !== void 0; } /** * Render table layout. @@ -1345,7 +1678,7 @@ var TableLayout = class { if (isMultilineRow) { return result + this.renderRow(rowSpan, rowIndex, opts, isMultilineRow); } - if (rowIndex === 0 && opts.hasHeaderBorder || rowIndex < opts.rows.length - 1 && opts.hasBodyBorder) { + if (opts.rows.length > 1 && (rowIndex === 0 && opts.hasHeaderBorder || rowIndex < opts.rows.length - 1 && opts.hasBodyBorder)) { result += this.renderBorderRow(row, nextRow, rowSpan, opts); } if (rowIndex === opts.rows.length - 1 && row.hasBorder()) { @@ -1390,7 +1723,7 @@ var TableLayout = class { } } const { current, next } = this.renderCellValue(cell, maxLength); - row[colIndex].setValue(next); + row[colIndex].setValue(next.getValue()); if (opts.hasBorder) { result += " ".repeat(opts.padding[colIndex]); } @@ -1477,11 +1810,11 @@ var TableLayout = class { */ renderBorderCell(colIndex, prevRow, nextRow, rowSpan, opts) { const a1 = prevRow?.[colIndex - 1]; - const a2 = nextRow?.[colIndex - 1]; + const a22 = nextRow?.[colIndex - 1]; const b1 = prevRow?.[colIndex]; const b2 = nextRow?.[colIndex]; const a1Border = !!a1?.getBorder(); - const a2Border = !!a2?.getBorder(); + const a2Border = !!a22?.getBorder(); const b1Border = !!b1?.getBorder(); const b2Border = !!b2?.getBorder(); const hasColSpan = (cell) => (cell?.getColSpan() ?? 1) > 1; @@ -1506,11 +1839,11 @@ var TableLayout = class { } else if (colIndex < opts.columns) { if (a1Border && b2Border || b1Border && a2Border) { const a1ColSpan = hasColSpan(a1); - const a2ColSpan = hasColSpan(a2); + const a2ColSpan = hasColSpan(a22); const b1ColSpan = hasColSpan(b1); const b2ColSpan = hasColSpan(b2); const a1RowSpan = hasRowSpan(a1); - const a2RowSpan = hasRowSpan(a2); + const a2RowSpan = hasRowSpan(a22); const b1RowSpan = hasRowSpan(b1); const b2RowSpan = hasRowSpan(b2); const hasAllBorder = a1Border && b2Border && b1Border && a2Border; @@ -1518,13 +1851,13 @@ var TableLayout = class { const hasAllColSpan = a1ColSpan && b1ColSpan && a2ColSpan && b2ColSpan; if (hasAllRowSpan && hasAllBorder) { result += this.options.chars.middle; - } else if (hasAllColSpan && hasAllBorder && a1 === b1 && a2 === b2) { + } else if (hasAllColSpan && hasAllBorder && a1 === b1 && a22 === b2) { result += this.options.chars.mid; } else if (a1ColSpan && b1ColSpan && a1 === b1) { result += this.options.chars.topMid; - } else if (a2ColSpan && b2ColSpan && a2 === b2) { + } else if (a2ColSpan && b2ColSpan && a22 === b2) { result += this.options.chars.bottomMid; - } else if (a1RowSpan && a2RowSpan && a1 === a2) { + } else if (a1RowSpan && a2RowSpan && a1 === a22) { result += this.options.chars.leftMid; } else if (b1RowSpan && b2RowSpan && b1 === b2) { result += this.options.chars.rightMid; @@ -1544,13 +1877,13 @@ var TableLayout = class { result += this.options.chars.leftMid; } } else if (b2Border && a2Border) { - if (hasColSpan(a2) && hasColSpan(b2) && a2 === b2) { + if (hasColSpan(a22) && hasColSpan(b2) && a22 === b2) { result += this.options.chars.top; } else { result += this.options.chars.topMid; } } else if (a1Border && a2Border) { - if (hasRowSpan(a1) && a1 === a2) { + if (hasRowSpan(a1) && a1 === a22) { result += this.options.chars.right; } else { result += this.options.chars.rightMid; @@ -1607,23 +1940,24 @@ var TableLayout = class { } }; -// http-url:https://deno.land/x/cliffy@v0.25.7/table/table.ts -var _Table = class extends Array { - constructor() { - super(...arguments); - this.options = { - indent: 0, - border: false, - maxColWidth: Infinity, - minColWidth: 0, - padding: 1, - chars: { ..._Table._chars } - }; - } +// https://deno.land/x/cliffy@v1.0.0-rc.3/table/table.ts +var Table = class _Table extends Array { + static _chars = { ...border }; + options = { + indent: 0, + border: false, + maxColWidth: Infinity, + minColWidth: 0, + padding: 1, + chars: { ..._Table._chars }, + columns: [] + }; + headerRow; /** * Create a new table. If rows is a table, all rows and options of the table * will be copied to the new table. - * @param rows + * + * @param rows An array of rows or a table instance. */ static from(rows) { const table = new this(...rows); @@ -1636,6 +1970,7 @@ var _Table = class extends Array { /** * Create a new table from an array of json objects. An object represents a * row and each property a column. + * * @param rows Array of objects. */ static fromJson(rows) { @@ -1643,6 +1978,7 @@ var _Table = class extends Array { } /** * Set global default border characters. + * * @param chars Border options. */ static chars(chars) { @@ -1651,6 +1987,7 @@ var _Table = class extends Array { } /** * Write table or rows to stdout. + * * @param rows Table or rows. */ static render(rows) { @@ -1659,6 +1996,7 @@ var _Table = class extends Array { /** * Read data from an array of json objects. An object represents a * row and each property a column. + * * @param rows Array of objects. */ fromJson(rows) { @@ -1666,8 +2004,36 @@ var _Table = class extends Array { this.body(rows.map((row) => Object.values(row))); return this; } + /** + * Set column options. + * + * @param columns An array of columns or column options. + */ + columns(columns) { + this.options.columns = columns.map( + (column) => column instanceof Column ? column : Column.from(column) + ); + return this; + } + /** + * Set column options by index. + * + @param index The column index. + @param column Column or column options. + */ + column(index, column) { + if (column instanceof Column) { + this.options.columns[index] = column; + } else if (this.options.columns[index]) { + this.options.columns[index].options(column); + } else { + this.options.columns[index] = Column.from(column); + } + return this; + } /** * Set table header. + * * @param header Header row or cells. */ header(header) { @@ -1676,7 +2042,8 @@ var _Table = class extends Array { } /** * Set table body. - * @param rows Table rows. + * + * @param rows Array of rows. */ body(rows) { this.length = 0; @@ -1704,8 +2071,9 @@ var _Table = class extends Array { return this; } /** - * Set max col with. - * @param width Max col width. + * Set max column width. + * + * @param width Max column width. * @param override Override existing value. */ maxColWidth(width, override = true) { @@ -1715,8 +2083,9 @@ var _Table = class extends Array { return this; } /** - * Set min col width. - * @param width Min col width. + * Set min column width. + * + * @param width Min column width. * @param override Override existing value. */ minColWidth(width, override = true) { @@ -1727,6 +2096,7 @@ var _Table = class extends Array { } /** * Set table indentation. + * * @param width Indent width. * @param override Override existing value. */ @@ -1738,6 +2108,7 @@ var _Table = class extends Array { } /** * Set cell padding. + * * @param padding Cell padding. * @param override Override existing value. */ @@ -1749,10 +2120,11 @@ var _Table = class extends Array { } /** * Enable/disable cell border. + * * @param enable Enable/disable cell border. * @param override Override existing value. */ - border(enable, override = true) { + border(enable = true, override = true) { if (override || typeof this.options.border === "undefined") { this.options.border = enable; } @@ -1760,6 +2132,7 @@ var _Table = class extends Array { } /** * Align table content. + * * @param direction Align direction. * @param override Override existing value. */ @@ -1771,6 +2144,7 @@ var _Table = class extends Array { } /** * Set border characters. + * * @param chars Border options. */ chars(chars) { @@ -1785,11 +2159,11 @@ var _Table = class extends Array { getBody() { return [...this]; } - /** Get mac col widrth. */ + /** Get max column width. */ getMaxColWidth() { return this.options.maxColWidth; } - /** Get min col width. */ + /** Get min column width. */ getMinColWidth() { return this.options.minColWidth; } @@ -1812,8 +2186,8 @@ var _Table = class extends Array { } /** Check if table bordy has border. */ hasBodyBorder() { - return this.getBorder() || this.some( - (row) => row instanceof Row ? row.hasBorder() : row.some((cell) => cell instanceof Cell ? cell.getBorder : false) + return this.getBorder() || this.options.columns.some((column) => column.getBorder()) || this.some( + (row) => row instanceof Row ? row.hasBorder() : row.some((cell) => cell instanceof Cell ? cell.getBorder() : false) ); } /** Check if table header or body has border. */ @@ -1824,51 +2198,57 @@ var _Table = class extends Array { getAlign() { return this.options.align ?? "left"; } + /** Get columns. */ + getColumns() { + return this.options.columns; + } + /** Get column by column index. */ + getColumn(index) { + return this.options.columns[index] ??= new Column(); + } }; -var Table = _Table; -Table._chars = { ...border }; -// http-url:https://deno.land/x/cliffy@v0.25.7/_utils/distance.ts -function distance(a, b) { - if (a.length == 0) { - return b.length; +// https://deno.land/x/cliffy@v1.0.0-rc.3/_utils/distance.ts +function distance(a3, b2) { + if (a3.length == 0) { + return b2.length; } - if (b.length == 0) { - return a.length; + if (b2.length == 0) { + return a3.length; } const matrix = []; - for (let i = 0; i <= b.length; i++) { + for (let i = 0; i <= b2.length; i++) { matrix[i] = [i]; } - for (let j = 0; j <= a.length; j++) { - matrix[0][j] = j; + for (let j3 = 0; j3 <= a3.length; j3++) { + matrix[0][j3] = j3; } - for (let i = 1; i <= b.length; i++) { - for (let j = 1; j <= a.length; j++) { - if (b.charAt(i - 1) == a.charAt(j - 1)) { - matrix[i][j] = matrix[i - 1][j - 1]; + for (let i = 1; i <= b2.length; i++) { + for (let j3 = 1; j3 <= a3.length; j3++) { + if (b2.charAt(i - 1) == a3.charAt(j3 - 1)) { + matrix[i][j3] = matrix[i - 1][j3 - 1]; } else { - matrix[i][j] = Math.min( - matrix[i - 1][j - 1] + 1, - Math.min(matrix[i][j - 1] + 1, matrix[i - 1][j] + 1) + matrix[i][j3] = Math.min( + matrix[i - 1][j3 - 1] + 1, + Math.min(matrix[i][j3 - 1] + 1, matrix[i - 1][j3] + 1) ); } } } - return matrix[b.length][a.length]; + return matrix[b2.length][a3.length]; } -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/_utils.ts +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/_utils.ts function paramCaseToCamelCase(str) { return str.replace( /-([a-z])/g, - (g) => g[1].toUpperCase() + (g2) => g2[1].toUpperCase() ); } function underscoreToCamelCase(str) { return str.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase().replace( /_([a-z])/g, - (g) => g[1].toUpperCase() + (g2) => g2[1].toUpperCase() ); } function getOption(flags, name) { @@ -1948,77 +2328,77 @@ function getDefaultValue(option) { return typeof option.default === "function" ? option.default() : option.default; } -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/_errors.ts -var FlagsError = class extends Error { +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/_errors.ts +var FlagsError = class _FlagsError extends Error { constructor(message) { super(message); - Object.setPrototypeOf(this, FlagsError.prototype); + Object.setPrototypeOf(this, _FlagsError.prototype); } }; -var UnknownRequiredOptionError = class extends FlagsError { +var UnknownRequiredOptionError = class _UnknownRequiredOptionError extends FlagsError { constructor(option, options) { super( `Unknown required option "${getFlag(option)}".${didYouMeanOption(option, options)}` ); - Object.setPrototypeOf(this, UnknownRequiredOptionError.prototype); + Object.setPrototypeOf(this, _UnknownRequiredOptionError.prototype); } }; -var UnknownConflictingOptionError = class extends FlagsError { +var UnknownConflictingOptionError = class _UnknownConflictingOptionError extends FlagsError { constructor(option, options) { super( `Unknown conflicting option "${getFlag(option)}".${didYouMeanOption(option, options)}` ); - Object.setPrototypeOf(this, UnknownConflictingOptionError.prototype); + Object.setPrototypeOf(this, _UnknownConflictingOptionError.prototype); } }; -var UnknownTypeError = class extends FlagsError { +var UnknownTypeError = class _UnknownTypeError extends FlagsError { constructor(type, types) { super(`Unknown type "${type}".${didYouMeanType(type, types)}`); - Object.setPrototypeOf(this, UnknownTypeError.prototype); + Object.setPrototypeOf(this, _UnknownTypeError.prototype); } }; -var ValidationError = class extends FlagsError { +var ValidationError = class _ValidationError extends FlagsError { constructor(message) { super(message); - Object.setPrototypeOf(this, ValidationError.prototype); + Object.setPrototypeOf(this, _ValidationError.prototype); } }; -var DuplicateOptionError = class extends ValidationError { +var DuplicateOptionError = class _DuplicateOptionError extends ValidationError { constructor(name) { super( `Option "${getFlag(name).replace(/^--no-/, "--")}" can only occur once, but was found several times.` ); - Object.setPrototypeOf(this, DuplicateOptionError.prototype); + Object.setPrototypeOf(this, _DuplicateOptionError.prototype); } }; -var InvalidOptionError = class extends ValidationError { +var InvalidOptionError = class _InvalidOptionError extends ValidationError { constructor(option, options) { super( `Invalid option "${getFlag(option)}".${didYouMeanOption(option, options)}` ); - Object.setPrototypeOf(this, InvalidOptionError.prototype); + Object.setPrototypeOf(this, _InvalidOptionError.prototype); } }; -var UnknownOptionError = class extends ValidationError { +var UnknownOptionError = class _UnknownOptionError extends ValidationError { constructor(option, options) { super( `Unknown option "${getFlag(option)}".${didYouMeanOption(option, options)}` ); - Object.setPrototypeOf(this, UnknownOptionError.prototype); + Object.setPrototypeOf(this, _UnknownOptionError.prototype); } }; -var MissingOptionValueError = class extends ValidationError { +var MissingOptionValueError = class _MissingOptionValueError extends ValidationError { constructor(option) { super(`Missing value for option "${getFlag(option)}".`); - Object.setPrototypeOf(this, MissingOptionValueError.prototype); + Object.setPrototypeOf(this, _MissingOptionValueError.prototype); } }; -var InvalidOptionValueError = class extends ValidationError { +var InvalidOptionValueError = class _InvalidOptionValueError extends ValidationError { constructor(option, expected, value) { super( `Option "${getFlag(option)}" must be of type "${expected}", but got "${value}".` ); - Object.setPrototypeOf(this, InvalidOptionValueError.prototype); + Object.setPrototypeOf(this, _InvalidOptionValueError.prototype); } }; var UnexpectedOptionValueError = class extends ValidationError { @@ -2029,51 +2409,51 @@ var UnexpectedOptionValueError = class extends ValidationError { Object.setPrototypeOf(this, InvalidOptionValueError.prototype); } }; -var OptionNotCombinableError = class extends ValidationError { +var OptionNotCombinableError = class _OptionNotCombinableError extends ValidationError { constructor(option) { super(`Option "${getFlag(option)}" cannot be combined with other options.`); - Object.setPrototypeOf(this, OptionNotCombinableError.prototype); + Object.setPrototypeOf(this, _OptionNotCombinableError.prototype); } }; -var ConflictingOptionError = class extends ValidationError { +var ConflictingOptionError = class _ConflictingOptionError extends ValidationError { constructor(option, conflictingOption) { super( `Option "${getFlag(option)}" conflicts with option "${getFlag(conflictingOption)}".` ); - Object.setPrototypeOf(this, ConflictingOptionError.prototype); + Object.setPrototypeOf(this, _ConflictingOptionError.prototype); } }; -var DependingOptionError = class extends ValidationError { +var DependingOptionError = class _DependingOptionError extends ValidationError { constructor(option, dependingOption) { super( `Option "${getFlag(option)}" depends on option "${getFlag(dependingOption)}".` ); - Object.setPrototypeOf(this, DependingOptionError.prototype); + Object.setPrototypeOf(this, _DependingOptionError.prototype); } }; -var MissingRequiredOptionError = class extends ValidationError { +var MissingRequiredOptionError = class _MissingRequiredOptionError extends ValidationError { constructor(option) { super(`Missing required option "${getFlag(option)}".`); - Object.setPrototypeOf(this, MissingRequiredOptionError.prototype); + Object.setPrototypeOf(this, _MissingRequiredOptionError.prototype); } }; -var UnexpectedRequiredArgumentError = class extends ValidationError { +var UnexpectedRequiredArgumentError = class _UnexpectedRequiredArgumentError extends ValidationError { constructor(arg) { super( `An required argument cannot follow an optional argument, but "${arg}" is defined as required.` ); Object.setPrototypeOf( this, - UnexpectedRequiredArgumentError.prototype + _UnexpectedRequiredArgumentError.prototype ); } }; -var UnexpectedArgumentAfterVariadicArgumentError = class extends ValidationError { +var UnexpectedArgumentAfterVariadicArgumentError = class _UnexpectedArgumentAfterVariadicArgumentError extends ValidationError { constructor(arg) { super(`An argument cannot follow an variadic argument, but got "${arg}".`); Object.setPrototypeOf( this, - UnexpectedArgumentAfterVariadicArgumentError.prototype + _UnexpectedArgumentAfterVariadicArgumentError.prototype ); } }; @@ -2086,286 +2466,53 @@ var InvalidTypeError = class extends ValidationError { } }; -// http-url:https://deno.land/x/cliffy@v0.25.7/command/_utils.ts -function didYouMeanCommand(command, commands, excludes = []) { - const commandNames = commands.map((command2) => command2.getName()).filter((command2) => !excludes.includes(command2)); - return didYouMean(" Did you mean command", command, commandNames); -} -var ARGUMENT_REGEX = /^[<\[].+[\]>]$/; -var ARGUMENT_DETAILS_REGEX = /[<\[:>\]]/; -function splitArguments(args) { - const parts = args.trim().split(/[, =] */g); - const typeParts = []; - while (parts[parts.length - 1] && ARGUMENT_REGEX.test(parts[parts.length - 1])) { - typeParts.unshift(parts.pop()); - } - const typeDefinition = typeParts.join(" "); - return { flags: parts, typeDefinition, equalsSign: args.includes("=") }; -} -function parseArgumentsDefinition(argsDefinition, validate2 = true, all) { - const argumentDetails = []; - let hasOptional = false; - let hasVariadic = false; - const parts = argsDefinition.split(/ +/); - for (const arg of parts) { - if (validate2 && hasVariadic) { - throw new UnexpectedArgumentAfterVariadicArgumentError(arg); - } - const parts2 = arg.split(ARGUMENT_DETAILS_REGEX); - if (!parts2[1]) { - if (all) { - argumentDetails.push(parts2[0]); - } - continue; - } - const type = parts2[2] || "string" /* STRING */; - const details = { - optionalValue: arg[0] === "[", - requiredValue: arg[0] === "<", - name: parts2[1], - action: parts2[3] || type, - variadic: false, - list: type ? arg.indexOf(type + "[]") !== -1 : false, - type - }; - if (validate2 && !details.optionalValue && hasOptional) { - throw new UnexpectedRequiredArgumentError(details.name); - } - if (arg[0] === "[") { - hasOptional = true; - } - if (details.name.length > 3) { - const istVariadicLeft = details.name.slice(0, 3) === "..."; - const istVariadicRight = details.name.slice(-3) === "..."; - hasVariadic = details.variadic = istVariadicLeft || istVariadicRight; - if (istVariadicLeft) { - details.name = details.name.slice(3); - } else if (istVariadicRight) { - details.name = details.name.slice(0, -3); - } - } - argumentDetails.push(details); - } - return argumentDetails; -} -function dedent(str) { - const lines = str.split(/\r?\n|\r/g); - let text = ""; - let indent = 0; - for (const line of lines) { - if (text || line.trim()) { - if (!text) { - text = line.trimStart(); - indent = line.length - text.length; - } else { - text += line.slice(indent); - } - text += "\n"; - } - } - return text.trimEnd(); -} -function getDescription(description, short) { - return short ? description.trim().split("\n", 1)[0].trim() : dedent(description); -} - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/_errors.ts -var CommandError = class extends Error { - constructor(message) { - super(message); - Object.setPrototypeOf(this, CommandError.prototype); +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/types/boolean.ts +var boolean = (type) => { + if (~["1", "true"].indexOf(type.value)) { + return true; } -}; -var ValidationError2 = class extends CommandError { - constructor(message, { exitCode } = {}) { - super(message); - Object.setPrototypeOf(this, ValidationError2.prototype); - this.exitCode = exitCode ?? 1; + if (~["0", "false"].indexOf(type.value)) { + return false; } + throw new InvalidTypeError(type, ["true", "false", "1", "0"]); }; -var DuplicateOptionNameError = class extends CommandError { - constructor(name) { - super(`Option with name "${getFlag(name)}" already exists.`); - Object.setPrototypeOf(this, DuplicateOptionNameError.prototype); + +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/types/number.ts +var number = (type) => { + const value = Number(type.value); + if (Number.isFinite(value)) { + return value; } + throw new InvalidTypeError(type); }; -var MissingCommandNameError = class extends CommandError { - constructor() { - super("Missing command name."); - Object.setPrototypeOf(this, MissingCommandNameError.prototype); - } + +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/types/string.ts +var string = ({ value }) => { + return value; }; -var DuplicateCommandNameError = class extends CommandError { - constructor(name) { - super(`Duplicate command name "${name}".`); - Object.setPrototypeOf(this, DuplicateCommandNameError.prototype); + +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/_validate_flags.ts +function validateFlags(ctx, opts, options = /* @__PURE__ */ new Map()) { + if (!opts.flags) { + return; } -}; -var DuplicateCommandAliasError = class extends CommandError { - constructor(alias) { - super(`Duplicate command alias "${alias}".`); - Object.setPrototypeOf(this, DuplicateCommandAliasError.prototype); + setDefaultValues(ctx, opts); + const optionNames = Object.keys(ctx.flags); + if (!optionNames.length && opts.allowEmpty) { + return; } -}; -var CommandNotFoundError = class extends CommandError { - constructor(name, commands, excluded) { - super( - `Unknown command "${name}".${didYouMeanCommand(name, commands, excluded)}` + if (ctx.standalone) { + validateStandaloneOption( + ctx, + options, + optionNames ); - Object.setPrototypeOf(this, CommandNotFoundError.prototype); - } -}; -var DuplicateTypeError = class extends CommandError { - constructor(name) { - super(`Type with name "${name}" already exists.`); - Object.setPrototypeOf(this, DuplicateTypeError.prototype); - } -}; -var DuplicateCompletionError = class extends CommandError { - constructor(name) { - super(`Completion with name "${name}" already exists.`); - Object.setPrototypeOf(this, DuplicateCompletionError.prototype); - } -}; -var DuplicateExampleError = class extends CommandError { - constructor(name) { - super(`Example with name "${name}" already exists.`); - Object.setPrototypeOf(this, DuplicateExampleError.prototype); - } -}; -var DuplicateEnvVarError = class extends CommandError { - constructor(name) { - super(`Environment variable with name "${name}" already exists.`); - Object.setPrototypeOf(this, DuplicateEnvVarError.prototype); - } -}; -var MissingRequiredEnvVarError = class extends ValidationError2 { - constructor(envVar) { - super(`Missing required environment variable "${envVar.names[0]}".`); - Object.setPrototypeOf(this, MissingRequiredEnvVarError.prototype); - } -}; -var TooManyEnvVarValuesError = class extends CommandError { - constructor(name) { - super( - `An environment variable can only have one value, but "${name}" has more than one.` - ); - Object.setPrototypeOf(this, TooManyEnvVarValuesError.prototype); - } -}; -var UnexpectedOptionalEnvVarValueError = class extends CommandError { - constructor(name) { - super( - `An environment variable cannot have an optional value, but "${name}" is defined as optional.` - ); - Object.setPrototypeOf(this, UnexpectedOptionalEnvVarValueError.prototype); - } -}; -var UnexpectedVariadicEnvVarValueError = class extends CommandError { - constructor(name) { - super( - `An environment variable cannot have an variadic value, but "${name}" is defined as variadic.` - ); - Object.setPrototypeOf(this, UnexpectedVariadicEnvVarValueError.prototype); - } -}; -var DefaultCommandNotFoundError = class extends CommandError { - constructor(name, commands) { - super( - `Default command "${name}" not found.${didYouMeanCommand(name, commands)}` - ); - Object.setPrototypeOf(this, DefaultCommandNotFoundError.prototype); - } -}; -var CommandExecutableNotFoundError = class extends CommandError { - constructor(name) { - super( - `Command executable not found: ${name}` - ); - Object.setPrototypeOf(this, CommandExecutableNotFoundError.prototype); - } -}; -var UnknownCommandError = class extends ValidationError2 { - constructor(name, commands, excluded) { - super( - `Unknown command "${name}".${didYouMeanCommand(name, commands, excluded)}` - ); - Object.setPrototypeOf(this, UnknownCommandError.prototype); - } -}; -var NoArgumentsAllowedError = class extends ValidationError2 { - constructor(name) { - super(`No arguments allowed for command "${name}".`); - Object.setPrototypeOf(this, NoArgumentsAllowedError.prototype); - } -}; -var MissingArgumentsError = class extends ValidationError2 { - constructor(names) { - super(`Missing argument(s): ${names.join(", ")}`); - Object.setPrototypeOf(this, MissingArgumentsError.prototype); - } -}; -var MissingArgumentError = class extends ValidationError2 { - constructor(name) { - super(`Missing argument: ${name}`); - Object.setPrototypeOf(this, MissingArgumentError.prototype); - } -}; -var TooManyArgumentsError = class extends ValidationError2 { - constructor(args) { - super(`Too many arguments: ${args.join(" ")}`); - Object.setPrototypeOf(this, TooManyArgumentsError.prototype); - } -}; - -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/types/boolean.ts -var boolean = (type) => { - if (~["1", "true"].indexOf(type.value)) { - return true; - } - if (~["0", "false"].indexOf(type.value)) { - return false; - } - throw new InvalidTypeError(type, ["true", "false", "1", "0"]); -}; - -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/types/number.ts -var number = (type) => { - const value = Number(type.value); - if (Number.isFinite(value)) { - return value; - } - throw new InvalidTypeError(type); -}; - -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/types/string.ts -var string = ({ value }) => { - return value; -}; - -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/_validate_flags.ts -function validateFlags(ctx, opts, options = /* @__PURE__ */ new Map()) { - if (!opts.flags) { - return; - } - const defaultValues = setDefaultValues(ctx, opts); - const optionNames = Object.keys(ctx.flags); - if (!optionNames.length && opts.allowEmpty) { - return; - } - if (ctx.standalone) { - validateStandaloneOption( - ctx, - options, - optionNames, - defaultValues - ); - return; + return; } for (const [name, option] of options) { validateUnknownOption(option, opts); validateConflictingOptions(ctx, option); - validateDependingOptions(ctx, option, defaultValues); + validateDependingOptions(ctx, option); validateRequiredValues(ctx, option, name); } validateRequiredOptions(ctx, options, opts); @@ -2376,9 +2523,8 @@ function validateUnknownOption(option, opts) { } } function setDefaultValues(ctx, opts) { - const defaultValues = {}; if (!opts.flags?.length) { - return defaultValues; + return; } for (const option of opts.flags) { let name; @@ -2401,20 +2547,19 @@ function setDefaultValues(ctx, opts) { const hasDefaultValue = (!opts.ignoreDefaults || typeof opts.ignoreDefaults[name] === "undefined") && typeof ctx.flags[name] === "undefined" && (typeof option.default !== "undefined" || typeof defaultValue !== "undefined"); if (hasDefaultValue) { ctx.flags[name] = getDefaultValue(option) ?? defaultValue; - defaultValues[option.name] = true; + ctx.defaults[option.name] = true; if (typeof option.value === "function") { ctx.flags[name] = option.value(ctx.flags[name]); } } } - return defaultValues; } -function validateStandaloneOption(ctx, options, optionNames, defaultValues) { +function validateStandaloneOption(ctx, options, optionNames) { if (!ctx.standalone || optionNames.length === 1) { return; } - for (const [_, opt] of options) { - if (!defaultValues[opt.name] && opt !== ctx.standalone) { + for (const [_3, opt] of options) { + if (!ctx.defaults[opt.name] && opt !== ctx.standalone) { throw new OptionNotCombinableError(ctx.standalone.name); } } @@ -2429,12 +2574,12 @@ function validateConflictingOptions(ctx, option) { } } } -function validateDependingOptions(ctx, option, defaultValues) { +function validateDependingOptions(ctx, option) { if (!option.depends) { return; } for (const flag of option.depends) { - if (!isset(flag, ctx.flags) && !defaultValues[option.name]) { + if (!isset(flag, ctx.flags) && !ctx.defaults[option.name]) { throw new DependingOptionError(option.name, flag); } } @@ -2446,7 +2591,7 @@ function validateRequiredValues(ctx, option, name) { const isArray = option.args.length > 1; for (let i = 0; i < option.args.length; i++) { const arg = option.args[i]; - if (!arg.requiredValue) { + if (arg.optional) { continue; } const hasValue = isArray ? typeof ctx.flags[name][i] !== "undefined" : typeof ctx.flags[name] !== "undefined"; @@ -2480,7 +2625,7 @@ function isset(flagName, flags) { return typeof flags[name] !== "undefined"; } -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/types/integer.ts +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/types/integer.ts var integer = (type) => { const value = Number(type.value); if (Number.isInteger(value)) { @@ -2489,7 +2634,7 @@ var integer = (type) => { throw new InvalidTypeError(type); }; -// http-url:https://deno.land/x/cliffy@v0.25.7/flags/flags.ts +// https://deno.land/x/cliffy@v1.0.0-rc.3/flags/flags.ts var DefaultTypes = { string, number, @@ -2513,6 +2658,7 @@ function parseFlags(argsOrCtx, opts = {}) { ctx.unknown ??= []; ctx.stopEarly = false; ctx.stopOnUnknown = false; + ctx.defaults ??= {}; opts.dotted ??= true; validateOptions(opts); const options = parseArgs(ctx, args, opts); @@ -2542,10 +2688,10 @@ function parseArgs(ctx, args, opts) { for (let argsIndex = 0; argsIndex < args.length; argsIndex++) { let parseNext = function(option2) { if (negate) { - ctx.flags[propName] = false; + setFlagValue(false); return; } else if (!option2.args?.length) { - ctx.flags[propName] = void 0; + setFlagValue(void 0); return; } const arg = option2.args[optionArgsIndex]; @@ -2556,16 +2702,10 @@ function parseArgs(ctx, args, opts) { if (!arg.type) { arg.type = "boolean" /* BOOLEAN */; } - if (option2.args?.length && !option2.type) { - if ((typeof arg.optionalValue === "undefined" || arg.optionalValue === false) && typeof arg.requiredValue === "undefined") { - arg.requiredValue = true; - } - } else { - if (arg.type !== "boolean" /* BOOLEAN */ && (typeof arg.optionalValue === "undefined" || arg.optionalValue === false) && typeof arg.requiredValue === "undefined") { - arg.requiredValue = true; - } + if (!option2.args?.length && arg.type === "boolean" /* BOOLEAN */ && arg.optional === void 0) { + arg.optional = true; } - if (!arg.requiredValue) { + if (arg.optional) { inOptionalArg = true; } else if (inOptionalArg) { throw new UnexpectedRequiredArgumentError(option2.name); @@ -2590,7 +2730,7 @@ function parseArgs(ctx, args, opts) { } else { if (hasNext(arg)) { result = parseValue(option2, arg, next()); - } else if (arg.optionalValue && arg.type === "boolean" /* BOOLEAN */) { + } else if (arg.optional && arg.type === "boolean" /* BOOLEAN */) { result = true; } } @@ -2604,14 +2744,14 @@ function parseArgs(ctx, args, opts) { } if (typeof result !== "undefined" && (option2.args.length > 1 || arg.variadic)) { if (!ctx.flags[propName]) { - ctx.flags[propName] = []; + setFlagValue([]); } ctx.flags[propName].push(result); if (hasNext(arg)) { parseNext(option2); } } else { - ctx.flags[propName] = result; + setFlagValue(result); } function hasNext(arg2) { if (!option2.args?.length) { @@ -2624,13 +2764,13 @@ function parseArgs(ctx, args, opts) { if (option2.args.length > 1 && optionArgsIndex >= option2.args.length) { return false; } - if (arg2.requiredValue) { + if (!arg2.optional) { return true; } - if (option2.equalsSign && arg2.optionalValue && !arg2.variadic && typeof currentValue === "undefined") { + if (option2.equalsSign && arg2.optional && !arg2.variadic && typeof currentValue === "undefined") { return false; } - if (arg2.optionalValue || arg2.variadic) { + if (arg2.optional || arg2.variadic) { return nextValue[0] !== "-" || typeof currentValue !== "undefined" || arg2.type === "number" /* NUMBER */ && !isNaN(Number(nextValue)); } return false; @@ -2647,6 +2787,11 @@ function parseArgs(ctx, args, opts) { } return result2; } + }, setFlagValue = function(value) { + ctx.flags[propName] = value; + if (ctx.defaults[propName]) { + delete ctx.defaults[propName]; + } }; let option; let current = args[argsIndex]; @@ -2715,15 +2860,14 @@ function parseArgs(ctx, args, opts) { if (typeof ctx.flags[propName] !== "undefined") { if (!opts.flags?.length) { option.collect = true; - } else if (!option.collect) { + } else if (!option.collect && !ctx.defaults[option.name]) { throw new DuplicateOptionError(current); } } if (option.type && !option.args?.length) { option.args = [{ type: option.type, - requiredValue: option.requiredValue, - optionalValue: option.optionalValue, + optional: option.optionalValue, variadic: option.variadic, list: option.list, separator: option.separator @@ -2738,20 +2882,21 @@ function parseArgs(ctx, args, opts) { const previous = ctx.flags[propName]; parseNext(option); if (typeof ctx.flags[propName] === "undefined") { - if (option.args?.[optionArgsIndex]?.requiredValue) { + if (option.args?.length && !option.args?.[optionArgsIndex].optional) { throw new MissingOptionValueError(option.name); - } else if (typeof option.default !== "undefined") { + } else if (typeof option.default !== "undefined" && (option.type || option.value || option.args?.length)) { ctx.flags[propName] = getDefaultValue(option); } else { - ctx.flags[propName] = true; + setFlagValue(true); } } if (option.value) { - ctx.flags[propName] = option.value(ctx.flags[propName], previous); + const value = option.value(ctx.flags[propName], previous); + setFlagValue(value); } else if (option.collect) { const value = typeof previous !== "undefined" ? Array.isArray(previous) ? previous : [previous] : []; value.push(ctx.flags[propName]); - ctx.flags[propName] = value; + setFlagValue(value); } optionsMap.set(propName, option); opts.option?.(option, ctx.flags[propName]); @@ -2813,71 +2958,315 @@ function parseDefaultType(option, arg, value) { }); } -// http-url:https://deno.land/x/cliffy@v0.25.7/command/type.ts -var Type = class { -}; +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/_utils.ts +function didYouMeanCommand(command, commands, excludes = []) { + const commandNames = commands.map((command2) => command2.getName()).filter((command2) => !excludes.includes(command2)); + return didYouMean(" Did you mean command", command, commandNames); +} +var ARGUMENT_REGEX = /^[<\[].+[\]>]$/; +var ARGUMENT_DETAILS_REGEX = /[<\[:>\]]/; +function splitArguments(args) { + const parts = args.trim().split(/[, =] */g); + const typeParts = []; + while (parts[parts.length - 1] && ARGUMENT_REGEX.test(parts[parts.length - 1])) { + typeParts.unshift(parts.pop()); + } + const typeDefinition = typeParts.join(" "); + return { flags: parts, typeDefinition, equalsSign: args.includes("=") }; +} +function parseArgumentsDefinition(argsDefinition, validate2 = true, all) { + const argumentDetails = []; + let hasOptional = false; + let hasVariadic = false; + const parts = argsDefinition.split(/ +/); + for (const arg of parts) { + if (validate2 && hasVariadic) { + throw new UnexpectedArgumentAfterVariadicArgumentError(arg); + } + const parts2 = arg.split(ARGUMENT_DETAILS_REGEX); + if (!parts2[1]) { + if (all) { + argumentDetails.push(parts2[0]); + } + continue; + } + const type = parts2[2] || "string" /* STRING */; + const details = { + optional: arg[0] === "[", + name: parts2[1], + action: parts2[3] || type, + variadic: false, + list: type ? arg.indexOf(type + "[]") !== -1 : false, + type + }; + if (validate2 && !details.optional && hasOptional) { + throw new UnexpectedRequiredArgumentError(details.name); + } + if (arg[0] === "[") { + hasOptional = true; + } + if (details.name.length > 3) { + const istVariadicLeft = details.name.slice(0, 3) === "..."; + const istVariadicRight = details.name.slice(-3) === "..."; + hasVariadic = details.variadic = istVariadicLeft || istVariadicRight; + if (istVariadicLeft) { + details.name = details.name.slice(3); + } else if (istVariadicRight) { + details.name = details.name.slice(0, -3); + } + } + argumentDetails.push(details); + } + return argumentDetails; +} +function dedent(str) { + const lines = str.split(/\r?\n|\r/g); + let text = ""; + let indent = 0; + for (const line of lines) { + if (text || line.trim()) { + if (!text) { + text = line.trimStart(); + indent = line.length - text.length; + } else { + text += line.slice(indent); + } + text += "\n"; + } + } + return text.trimEnd(); +} +function getDescription(description, short) { + return short ? description.trim().split("\n", 1)[0].trim() : dedent(description); +} -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/boolean.ts -var BooleanType = class extends Type { - /** Parse boolean type. */ - parse(type) { - return boolean(type); +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/_errors.ts +var CommandError = class _CommandError extends Error { + constructor(message) { + super(message); + Object.setPrototypeOf(this, _CommandError.prototype); } - /** Complete boolean type. */ - complete() { - return ["true", "false"]; +}; +var ValidationError2 = class _ValidationError extends CommandError { + exitCode; + cmd; + constructor(message, { exitCode } = {}) { + super(message); + Object.setPrototypeOf(this, _ValidationError.prototype); + this.exitCode = exitCode ?? 2; } }; - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/string.ts -var StringType = class extends Type { - /** Complete string type. */ - parse(type) { - return string(type); +var DuplicateOptionNameError = class _DuplicateOptionNameError extends CommandError { + constructor(optionName, commandName) { + super( + `An option with name '${bold2(getFlag(optionName))}' is already registered on command '${bold2(commandName)}'. If it is intended to override the option, set the '${bold2("override")}' option of the '${bold2("option")}' method to true.` + ); + Object.setPrototypeOf(this, _DuplicateOptionNameError.prototype); } }; - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/file.ts -var FileType = class extends StringType { +var MissingCommandNameError = class _MissingCommandNameError extends CommandError { constructor() { - super(); + super("Missing command name."); + Object.setPrototypeOf(this, _MissingCommandNameError.prototype); } - // getOptions(): FileTypeOptions { - // return this.opts; - // } }; - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/number.ts -var NumberType = class extends Type { - /** Parse number type. */ - parse(type) { - return number(type); +var DuplicateCommandNameError = class _DuplicateCommandNameError extends CommandError { + constructor(name) { + super(`Duplicate command name "${name}".`); + Object.setPrototypeOf(this, _DuplicateCommandNameError.prototype); } }; - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/help/_help_generator.ts -var HelpGenerator = class { - constructor(cmd, options = {}) { - this.cmd = cmd; - this.indent = 2; - this.options = { - types: false, - hints: true, - colors: true, - long: false, - ...options - }; +var DuplicateCommandAliasError = class _DuplicateCommandAliasError extends CommandError { + constructor(alias) { + super(`Duplicate command alias "${alias}".`); + Object.setPrototypeOf(this, _DuplicateCommandAliasError.prototype); } - /** Generate help text for given command. */ - static generate(cmd, options) { - return new HelpGenerator(cmd, options).generate(); +}; +var CommandNotFoundError = class _CommandNotFoundError extends CommandError { + constructor(name, commands, excluded) { + super( + `Unknown command "${name}".${didYouMeanCommand(name, commands, excluded)}` + ); + Object.setPrototypeOf(this, _CommandNotFoundError.prototype); } - generate() { - const areColorsEnabled = getColorEnabled2(); - setColorEnabled2(this.options.colors); - const result = this.generateHeader() + this.generateMeta() + this.generateDescription() + this.generateOptions() + this.generateCommands() + this.generateEnvironmentVariables() + this.generateExamples(); - setColorEnabled2(areColorsEnabled); - return result; +}; +var DuplicateTypeError = class _DuplicateTypeError extends CommandError { + constructor(name) { + super(`Type with name "${name}" already exists.`); + Object.setPrototypeOf(this, _DuplicateTypeError.prototype); + } +}; +var DuplicateCompletionError = class _DuplicateCompletionError extends CommandError { + constructor(name) { + super(`Completion with name "${name}" already exists.`); + Object.setPrototypeOf(this, _DuplicateCompletionError.prototype); + } +}; +var DuplicateExampleError = class _DuplicateExampleError extends CommandError { + constructor(name) { + super(`Example with name "${name}" already exists.`); + Object.setPrototypeOf(this, _DuplicateExampleError.prototype); + } +}; +var DuplicateEnvVarError = class _DuplicateEnvVarError extends CommandError { + constructor(name) { + super(`Environment variable with name "${name}" already exists.`); + Object.setPrototypeOf(this, _DuplicateEnvVarError.prototype); + } +}; +var MissingRequiredEnvVarError = class _MissingRequiredEnvVarError extends ValidationError2 { + constructor(envVar) { + super(`Missing required environment variable "${envVar.names[0]}".`); + Object.setPrototypeOf(this, _MissingRequiredEnvVarError.prototype); + } +}; +var TooManyEnvVarValuesError = class _TooManyEnvVarValuesError extends CommandError { + constructor(name) { + super( + `An environment variable can only have one value, but "${name}" has more than one.` + ); + Object.setPrototypeOf(this, _TooManyEnvVarValuesError.prototype); + } +}; +var UnexpectedOptionalEnvVarValueError = class _UnexpectedOptionalEnvVarValueError extends CommandError { + constructor(name) { + super( + `An environment variable cannot have an optional value, but "${name}" is defined as optional.` + ); + Object.setPrototypeOf(this, _UnexpectedOptionalEnvVarValueError.prototype); + } +}; +var UnexpectedVariadicEnvVarValueError = class _UnexpectedVariadicEnvVarValueError extends CommandError { + constructor(name) { + super( + `An environment variable cannot have an variadic value, but "${name}" is defined as variadic.` + ); + Object.setPrototypeOf(this, _UnexpectedVariadicEnvVarValueError.prototype); + } +}; +var DefaultCommandNotFoundError = class _DefaultCommandNotFoundError extends CommandError { + constructor(name, commands) { + super( + `Default command "${name}" not found.${didYouMeanCommand(name, commands)}` + ); + Object.setPrototypeOf(this, _DefaultCommandNotFoundError.prototype); + } +}; +var CommandExecutableNotFoundError = class _CommandExecutableNotFoundError extends CommandError { + constructor(name) { + super( + `Command executable not found: ${name}` + ); + Object.setPrototypeOf(this, _CommandExecutableNotFoundError.prototype); + } +}; +var UnknownCommandError = class _UnknownCommandError extends ValidationError2 { + constructor(name, commands, excluded) { + super( + `Unknown command "${name}".${didYouMeanCommand(name, commands, excluded)}` + ); + Object.setPrototypeOf(this, _UnknownCommandError.prototype); + } +}; +var NoArgumentsAllowedError = class _NoArgumentsAllowedError extends ValidationError2 { + constructor(name) { + super(`No arguments allowed for command "${name}".`); + Object.setPrototypeOf(this, _NoArgumentsAllowedError.prototype); + } +}; +var MissingArgumentsError = class _MissingArgumentsError extends ValidationError2 { + constructor(names) { + super(`Missing argument(s): ${names.join(", ")}`); + Object.setPrototypeOf(this, _MissingArgumentsError.prototype); + } +}; +var MissingArgumentError = class _MissingArgumentError extends ValidationError2 { + constructor(name) { + super(`Missing argument: ${name}`); + Object.setPrototypeOf(this, _MissingArgumentError.prototype); + } +}; +var TooManyArgumentsError = class _TooManyArgumentsError extends ValidationError2 { + constructor(args) { + super(`Too many arguments: ${args.join(" ")}`); + Object.setPrototypeOf(this, _TooManyArgumentsError.prototype); + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/type.ts +var Type = class { +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/boolean.ts +var BooleanType = class extends Type { + /** Parse boolean type. */ + parse(type) { + return boolean(type); + } + /** Complete boolean type. */ + complete() { + return ["true", "false"]; + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/string.ts +var StringType = class extends Type { + /** Complete string type. */ + parse(type) { + return string(type); + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/file.ts +var FileType = class extends StringType { + constructor() { + super(); + } + // getOptions(): FileTypeOptions { + // return this.opts; + // } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/integer.ts +var IntegerType = class extends Type { + /** Parse integer type. */ + parse(type) { + return integer(type); + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/number.ts +var NumberType = class extends Type { + /** Parse number type. */ + parse(type) { + return number(type); + } +}; + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/help/_help_generator.ts +var HelpGenerator = class _HelpGenerator { + constructor(cmd, options = {}) { + this.cmd = cmd; + this.options = { + types: false, + hints: true, + colors: true, + long: false, + ...options + }; + } + indent = 2; + options; + /** Generate help text for given command. */ + static generate(cmd, options) { + return new _HelpGenerator(cmd, options).generate(); + } + generate() { + const areColorsEnabled = getColorEnabled2(); + setColorEnabled2(this.options.colors); + const result = this.generateHeader() + this.generateMeta() + this.generateDescription() + this.generateOptions() + this.generateCommands() + this.generateEnvironmentVariables() + this.generateExamples(); + setColorEnabled2(areColorsEnabled); + return result; } generateHeader() { const usage = this.cmd.getUsage(); @@ -2893,7 +3282,7 @@ var HelpGenerator = class { if (version) { rows.push([bold2("Version:"), yellow2(`${this.cmd.getVersion()}`)]); } - return "\n" + Table.from(rows).indent(this.indent).padding(1).toString() + "\n"; + return "\n" + Table.from(rows).padding(1).toString() + "\n"; } generateMeta() { const meta = Object.entries(this.cmd.getMeta()); @@ -2904,7 +3293,7 @@ var HelpGenerator = class { for (const [name, value] of meta) { rows.push([bold2(`${name}: `) + value]); } - return "\n" + Table.from(rows).indent(this.indent).padding(1).toString() + "\n"; + return "\n" + Table.from(rows).padding(1).toString() + "\n"; } generateDescription() { if (!this.cmd.getDescription()) { @@ -2912,7 +3301,7 @@ var HelpGenerator = class { } return this.label("Description") + Table.from([ [dedent(this.cmd.getDescription())] - ]).indent(this.indent * 2).maxColWidth(140).padding(1).toString() + "\n"; + ]).indent(this.indent).maxColWidth(140).padding(1).toString() + "\n"; } generateOptions() { const options = this.cmd.getOptions(false); @@ -2964,7 +3353,7 @@ var HelpGenerator = class { getDescription(option.description, !this.options.long), this.generateHints(option) ]) - ]).padding([2, 2, 1, 2]).indent(this.indent * 2).maxColWidth([60, 60, 1, 80, 60]).toString() + "\n"; + ]).padding([2, 2, 1, 2]).indent(this.indent).maxColWidth([60, 60, 1, 80, 60]).toString() + "\n"; } return this.label(group.name ?? "Options") + Table.from([ ...group.options.map((option) => [ @@ -2973,7 +3362,7 @@ var HelpGenerator = class { getDescription(option.description, !this.options.long), this.generateHints(option) ]) - ]).indent(this.indent * 2).maxColWidth([60, 1, 80, 60]).padding([2, 1, 2]).toString() + "\n"; + ]).indent(this.indent).maxColWidth([60, 1, 80, 60]).padding([2, 1, 2]).toString() + "\n"; } generateCommands() { const commands = this.cmd.getCommands(false); @@ -2996,7 +3385,7 @@ var HelpGenerator = class { red2(bold2("-")), command.getShortDescription() ]) - ]).indent(this.indent * 2).maxColWidth([60, 60, 1, 80]).padding([2, 2, 1, 2]).toString() + "\n"; + ]).indent(this.indent).maxColWidth([60, 60, 1, 80]).padding([2, 2, 1, 2]).toString() + "\n"; } return this.label("Commands") + Table.from([ ...commands.map((command) => [ @@ -3006,7 +3395,7 @@ var HelpGenerator = class { red2(bold2("-")), command.getShortDescription() ]) - ]).maxColWidth([60, 1, 80]).padding([2, 1, 2]).indent(this.indent * 2).toString() + "\n"; + ]).maxColWidth([60, 1, 80]).padding([2, 1, 2]).indent(this.indent).toString() + "\n"; } generateEnvironmentVariables() { const envVars = this.cmd.getEnvVars(false); @@ -3024,7 +3413,7 @@ var HelpGenerator = class { this.options.long ? dedent(envVar.description) : envVar.description.trim().split("\n", 1)[0], envVar.required ? `(${yellow2(`required`)})` : "" ]) - ]).padding([2, 2, 1, 2]).indent(this.indent * 2).maxColWidth([60, 60, 1, 80, 10]).toString() + "\n"; + ]).padding([2, 2, 1, 2]).indent(this.indent).maxColWidth([60, 60, 1, 80, 10]).toString() + "\n"; } generateExamples() { const examples = this.cmd.getExamples(); @@ -3034,7 +3423,7 @@ var HelpGenerator = class { return this.label("Examples") + Table.from(examples.map((example) => [ dim2(bold2(`${capitalize(example.name)}:`)), dedent(example.description) - ])).padding(1).indent(this.indent * 2).maxColWidth(150).toString() + "\n"; + ])).padding(1).indent(this.indent).maxColWidth(150).toString() + "\n"; } generateHints(option) { if (!this.options.hints) { @@ -3042,9 +3431,14 @@ var HelpGenerator = class { } const hints = []; option.required && hints.push(yellow2(`required`)); - typeof option.default !== "undefined" && hints.push( - bold2(`Default: `) + inspect(option.default, this.options.colors) - ); + if (typeof option.default !== "undefined") { + const defaultValue = getDefaultValue(option); + if (typeof defaultValue !== "undefined") { + hints.push( + bold2(`Default: `) + inspect(defaultValue, this.options.colors) + ); + } + } option.depends?.length && hints.push( yellow2(bold2(`Depends: `)) + italic2(option.depends.map(getFlag).join(", ")) ); @@ -3068,7 +3462,7 @@ var HelpGenerator = class { return ""; } label(label) { - return "\n" + " ".repeat(this.indent) + bold2(`${label}:`) + "\n\n"; + return "\n" + bold2(`${label}:`) + "\n\n"; } }; function capitalize(string2) { @@ -3091,7 +3485,7 @@ function highlightArguments(argsDefinition, types = true) { } function highlightArgumentDetails(arg, types = true) { let str = ""; - str += yellow2(arg.optionalValue ? "[" : "<"); + str += yellow2(arg.optional ? "[" : "<"); let name = ""; name += arg.name; if (arg.variadic) { @@ -3106,47 +3500,70 @@ function highlightArgumentDetails(arg, types = true) { str += green2("[]"); } } - str += yellow2(arg.optionalValue ? "]" : ">"); + str += yellow2(arg.optional ? "]" : ">"); return str; } -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/integer.ts -var IntegerType = class extends Type { - /** Parse integer type. */ - parse(type) { - return integer(type); +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/upgrade/_check_version.ts +async function checkVersion(cmd) { + const mainCommand = cmd.getMainCommand(); + const upgradeCommand = mainCommand.getCommand("upgrade"); + if (!isUpgradeCommand(upgradeCommand)) { + return; } -}; - -// http-url:https://deno.land/x/cliffy@v0.25.7/command/command.ts -var Command = class { - constructor() { - this.types = /* @__PURE__ */ new Map(); - this.rawArgs = []; - this.literalArgs = []; - // @TODO: get script name: https://github.com/denoland/deno/pull/5034 - // private name: string = location.pathname.split( '/' ).pop() as string; - this._name = "COMMAND"; - this.desc = ""; - this.options = []; - this.commands = /* @__PURE__ */ new Map(); - this.examples = []; - this.envVars = []; - this.aliases = []; - this.completions = /* @__PURE__ */ new Map(); - this.cmd = this; - this.isExecutable = false; - this.throwOnError = false; - this._allowEmpty = false; - this._stopEarly = false; - this._useRawArgs = false; - this.args = []; - this.isHidden = false; - this.isGlobal = false; - this.hasDefaults = false; - this._meta = {}; - this._noGlobals = false; + const latestVersion = await upgradeCommand.getLatestVersion(); + const currentVersion = mainCommand.getVersion(); + if (currentVersion === latestVersion) { + return; } + const versionHelpText = `(New version available: ${latestVersion}. Run '${mainCommand.getName()} upgrade' to upgrade to the latest version!)`; + mainCommand.version(`${currentVersion} ${bold2(yellow2(versionHelpText))}`); +} +function isUpgradeCommand(command) { + return command instanceof Command && "getLatestVersion" in command; +} + +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/command.ts +var Command = class _Command { + types = /* @__PURE__ */ new Map(); + rawArgs = []; + literalArgs = []; + _name = "COMMAND"; + _parent; + _globalParent; + ver; + desc = ""; + _usage; + actionHandler; + globalActionHandler; + options = []; + commands = /* @__PURE__ */ new Map(); + examples = []; + envVars = []; + aliases = []; + completions = /* @__PURE__ */ new Map(); + cmd = this; + argsDefinition; + isExecutable = false; + throwOnError = false; + _allowEmpty = false; + _stopEarly = false; + defaultCommand; + _useRawArgs = false; + args = []; + isHidden = false; + isGlobal = false; + hasDefaults = false; + _versionOptions; + _helpOptions; + _versionOption; + _helpOption; + _help; + _shouldExit; + _meta = {}; + _groupName = null; + _noGlobals = false; + errorHandler; versionOption(flags, desc, opts) { this._versionOptions = flags === false ? flags : { flags, @@ -3188,10 +3605,10 @@ var Command = class { if (typeof cmdOrDescription === "string") { description = cmdOrDescription; } - if (cmdOrDescription instanceof Command) { + if (cmdOrDescription instanceof _Command) { cmd = cmdOrDescription.reset(); } else { - cmd = new Command(); + cmd = new _Command(); } cmd._name = name; cmd._parent = this; @@ -3208,6 +3625,7 @@ var Command = class { } /** * Add new command alias. + * * @param alias Tha name of the alias. */ alias(alias) { @@ -3219,7 +3637,7 @@ var Command = class { } /** Reset internal command reference to main command. */ reset() { - this._groupName = void 0; + this._groupName = null; this.cmd = this; return this; } @@ -3238,13 +3656,14 @@ var Command = class { /***************************************************************************** **** SUB HANDLER ************************************************************ *****************************************************************************/ - /** Set command name. */ + /** Set command name. Used in auto generated help and shell completions */ name(name) { this.cmd._name = name; return this; } /** * Set command version. + * * @param version Semantic version string string or method that returns the version string. */ version(version) { @@ -3255,6 +3674,13 @@ var Command = class { } return this; } + /** + * Add meta data. Will be displayed in the auto generated help and in the + * output of the long version. + * + * @param name The name/label of the metadata. + * @param value The value of the metadata. + */ meta(name, value) { this.cmd._meta[name] = value; return this; @@ -3264,6 +3690,7 @@ var Command = class { } /** * Set command help. + * * @param help Help string, method, or config for generator that returns the help string. */ help(help) { @@ -3278,6 +3705,7 @@ var Command = class { } /** * Set the long command description. + * * @param description The command description. */ description(description) { @@ -3286,15 +3714,14 @@ var Command = class { } /** * Set the command usage. Defaults to arguments. + * * @param usage The command usage. */ usage(usage) { this.cmd._usage = usage; return this; } - /** - * Hide command from help, completions, etc. - */ + /** Hide command from help, completions, etc. */ hidden() { this.cmd.isHidden = true; return this; @@ -3320,32 +3747,27 @@ var Command = class { } /** * Set command callback method. + * + * @param fn Command action handler. + */ + action(fn4) { + this.cmd.actionHandler = fn4; + return this; + } + /** + * Set command callback method. + * * @param fn Command action handler. */ - action(fn) { - this.cmd.fn = fn; + globalAction(fn4) { + this.cmd.globalActionHandler = fn4; return this; } /** * Don't throw an error if the command was called without arguments. + * * @param allowEmpty Enable/disable allow empty. */ - // public allowEmpty( - // allowEmpty?: TAllowEmpty, - // ): false extends TAllowEmpty ? this - // : Command< - // Partial, - // TParentCommandTypes, - // Partial, - // TCommandArguments, - // TCommandGlobals, - // TCommandTypes, - // TCommandGlobalTypes, - // TParentCommand - // > { - // this.cmd._allowEmpty = allowEmpty !== false; - // return this; - // } allowEmpty(allowEmpty) { this.cmd._allowEmpty = allowEmpty !== false; return this; @@ -3359,7 +3781,7 @@ var Command = class { * `command --debug-level warning server --port 80` * * Will result in: - * - options: `{debugLevel: 'warning'}` + * - options: `{ debugLevel: 'warning' }` * - args: `['server', '--port', '80']` * * @param stopEarly Enable/disable stop early. @@ -3372,6 +3794,7 @@ var Command = class { * Disable parsing arguments. If enabled the raw arguments will be passed to * the action handler. This has no effect for parent or child commands. Only * for the command on which this method was called. + * * @param useRawArgs Enable/disable raw arguments. */ useRawArgs(useRawArgs = true) { @@ -3381,6 +3804,7 @@ var Command = class { /** * Set default command. The default command is executed when the program * was called without any argument and if no action handler is registered. + * * @param name Name of the default command. */ default(name) { @@ -3392,6 +3816,7 @@ var Command = class { } /** * Register custom type. + * * @param name The name of the type. * @param handler The callback method to parse the type. * @param options Type options. @@ -3411,6 +3836,13 @@ var Command = class { } return this; } + /** + * Register global complete handler. + * + * @param name The name of the completion. + * @param complete The callback method to complete the type. + * @param options Complete options. + */ globalComplete(name, complete, options) { return this.complete(name, complete, { ...options, global: true }); } @@ -3438,7 +3870,12 @@ var Command = class { * * **Example:** * - * ``` + * ```ts + * import { Command, ValidationError } from "./mod.ts"; + * + * const cmd = new Command(); + * // ... + * * try { * cmd.parse(); * } catch(error) { @@ -3456,10 +3893,16 @@ var Command = class { this.cmd.throwOnError = true; return this; } + /** + * Set custom error handler. + * + * @param handler Error handler callback function. + */ error(handler) { this.cmd.errorHandler = handler; return this; } + /** Get error handler callback function. */ getErrorHandler() { return this.errorHandler ?? this._parent?.errorHandler; } @@ -3488,6 +3931,25 @@ var Command = class { shouldExit() { return this._shouldExit ?? this._parent?.shouldExit() ?? true; } + /** + * Enable grouping of options and set the name of the group. + * All option which are added after calling the `.group()` method will be + * grouped in the help output. If the `.group()` method can be use multiple + * times to create more groups. + * + * @param name The name of the option group. + */ + group(name) { + this.cmd._groupName = name; + return this; + } + /** + * Register a global option. + * + * @param flags Flags string e.g: -h, --help, --manual [optionalArg:number] [...restArgs:string] + * @param desc Flag description. + * @param opts Flag options or custom handler for processing flag value. + */ globalOption(flags, desc, opts) { if (typeof opts === "function") { return this.option( @@ -3502,21 +3964,9 @@ var Command = class { { ...opts, global: true } ); } - /** - * Enable grouping of options and set the name of the group. - * All option which are added after calling the `.group()` method will be - * grouped in the help output. If the `.group()` method can be use multiple - * times to create more groups. - * - * @param name The name of the option group. - */ - group(name) { - this.cmd._groupName = name; - return this; - } option(flags, desc, opts) { if (typeof opts === "function") { - return this.option(flags, desc, { value: opts }); + opts = { value: opts }; } const result = splitArguments(flags); const args = result.typeDefinition ? parseArgumentsDefinition(result.typeDefinition) : []; @@ -3528,7 +3978,7 @@ var Command = class { flags: result.flags, equalsSign: result.equalsSign, typeDefinition: result.typeDefinition, - groupName: this._groupName + groupName: this._groupName ?? void 0 }; if (option.separator) { for (const arg of args) { @@ -3545,7 +3995,7 @@ var Command = class { if (opts?.override) { this.removeOption(name); } else { - throw new DuplicateOptionNameError(name); + throw new DuplicateOptionNameError(name, this.getPath()); } } if (!option.name && isLong) { @@ -3564,7 +4014,8 @@ var Command = class { return this; } /** - * Add new command example. + * Register command example. + * * @param name Name of the example. * @param description The content of the example. */ @@ -3575,6 +4026,18 @@ var Command = class { this.cmd.examples.push({ name, description }); return this; } + /** + * @param flags Flags string e.g: -h, --help, --manual [optionalArg:number] [...restArgs:string] + * @param desc Flag description. + * @param opts Flag options or custom handler for processing flag value. + */ + /** + * Register a global environment variable. + * + * @param name Name of the environment variable. + * @param description The description of the environment variable. + * @param options Environment variable options. + */ globalEnv(name, description, options) { return this.env( name, @@ -3595,7 +4058,7 @@ var Command = class { ); if (details.length > 1) { throw new TooManyEnvVarValuesError(name); - } else if (details.length && details[0].optionalValue) { + } else if (details.length && details[0].optional) { throw new UnexpectedOptionalEnvVarValueError(name); } else if (details.length && details[0].variadic) { throw new UnexpectedVariadicEnvVarValueError(name); @@ -3615,6 +4078,7 @@ var Command = class { *****************************************************************************/ /** * Parse command line arguments and execute matched command. + * * @param args Command line args to parse. Ex: `cmd.parse( Deno.args )` */ parse(args = Deno.args) { @@ -3624,7 +4088,9 @@ var Command = class { env: {}, literal: [], stopEarly: false, - stopOnUnknown: false + stopOnUnknown: false, + defaults: {}, + actions: [] }; return this.parseCommand(ctx); } @@ -3638,7 +4104,7 @@ var Command = class { return { options: {}, args: [], cmd: this, literal: [] }; } else if (this._useRawArgs) { await this.parseEnvVars(ctx, this.envVars); - return this.execute(ctx.env, ...ctx.unknown); + return await this.execute(ctx.env, ctx.unknown); } let preParseGlobals = false; let subCommand; @@ -3664,18 +4130,20 @@ var Command = class { const options = { ...ctx.env, ...ctx.flags }; const args = this.parseArguments(ctx, options); this.literalArgs = ctx.literal; - if (ctx.action) { - await ctx.action.action.call(this, options, ...args); - if (ctx.action.standalone) { - return { - options, - args, - cmd: this, - literal: this.literalArgs - }; - } + if (ctx.actions.length) { + await Promise.all( + ctx.actions.map((action) => action.call(this, options, ...args)) + ); + } + if (ctx.standalone) { + return { + options, + args, + cmd: this, + literal: this.literalArgs + }; } - return await this.execute(options, ...args); + return await this.execute(options, args); } catch (error2) { this.handleError(error2); } @@ -3730,10 +4198,7 @@ var Command = class { !this.types.has("boolean") && this.type("boolean", new BooleanType(), { global: true }); !this.types.has("file") && this.type("file", new FileType(), { global: true }); if (!this._help) { - this.help({ - hints: true, - types: false - }); + this.help({}); } if (this._versionOptions !== false && (this._versionOptions || this.ver)) { this.option( @@ -3747,7 +4212,7 @@ var Command = class { `--${this._versionOption?.name}` ); if (long) { - await this.checkVersion(); + await checkVersion(this); this.showLongVersion(); } else { this.showVersion(); @@ -3771,7 +4236,7 @@ var Command = class { const long = this.getRawArgs().includes( `--${this.getHelpOption()?.name}` ); - await this.checkVersion(); + await checkVersion(this); this.showHelp({ long }); this.exit(); }, @@ -3787,10 +4252,8 @@ var Command = class { * @param options A map of options. * @param args Command arguments. */ - async execute(options, ...args) { - if (this.fn) { - await this.fn(options, ...args); - } else if (this.defaultCommand) { + async execute(options, args) { + if (this.defaultCommand) { const cmd = this.getCommand(this.defaultCommand, true); if (!cmd) { throw new DefaultCommandNotFoundError( @@ -3799,7 +4262,11 @@ var Command = class { ); } cmd._globalParent = this; - return cmd.execute(options, ...args); + return cmd.execute(options, args); + } + await this.executeGlobalAction(options, args); + if (this.actionHandler) { + await this.actionHandler(options, ...args); } return { options, @@ -3808,6 +4275,12 @@ var Command = class { literal: this.literalArgs }; } + async executeGlobalAction(options, args) { + if (!this._noGlobals) { + await this._parent?.executeGlobalAction(options, args); + } + await this.globalActionHandler?.(options, ...args); + } /** * Execute external sub-command. * @param args Raw command line arguments. @@ -3816,12 +4289,12 @@ var Command = class { const command = this.getPath().replace(/\s+/g, "-"); await Deno.permissions.request({ name: "run", command }); try { - const process = Deno.run({ - cmd: [command, ...args] + const cmd = new Deno.Command(command, { + args }); - const status = await process.status(); - if (!status.success) { - Deno.exit(status.code); + const output = await cmd.output(); + if (!output.success) { + Deno.exit(output.code); } } catch (error2) { if (error2 instanceof Deno.errors.NotFound) { @@ -3845,8 +4318,8 @@ var Command = class { ignoreDefaults: ctx.env, parse: (type) => this.parseType(type), option: (option) => { - if (!ctx.action && option.action) { - ctx.action = option; + if (option.action) { + ctx.actions.push(option.action); } } }); @@ -3933,7 +4406,7 @@ var Command = class { } } else { if (!args.length) { - const required = this.getArguments().filter((expectedArg) => !expectedArg.optionalValue).map((expectedArg) => expectedArg.name); + const required = this.getArguments().filter((expectedArg) => !expectedArg.optional).map((expectedArg) => expectedArg.name); if (required.length) { const optionNames = Object.keys(options); const hasStandaloneOption = !!optionNames.find( @@ -3946,7 +4419,7 @@ var Command = class { } else { for (const expectedArg of this.getArguments()) { if (!args.length) { - if (expectedArg.optionalValue) { + if (expectedArg.optional) { break; } throw new MissingArgumentError(expectedArg.name); @@ -4035,9 +4508,13 @@ var Command = class { getAliases() { return this.aliases; } - /** Get full command path. */ - getPath() { - return this._parent ? this._parent.getPath() + " " + this._name : this._name; + /** + * Get full command path. + * + * @param name Override the main command name. + */ + getPath(name) { + return this._parent ? this._parent.getPath(name) + " " + this._name : name || this._name; } /** Get arguments definition. E.g: */ getArgsDefinition() { @@ -4045,6 +4522,7 @@ var Command = class { } /** * Get argument by name. + * * @param name Name of the argument. */ getArgument(name) { @@ -4073,8 +4551,14 @@ var Command = class { getDescription() { return typeof this.desc === "function" ? this.desc = this.desc() : this.desc; } + /** Get auto generated command usage. */ getUsage() { - return this._usage ?? this.getArgsDefinition(); + return this._usage ?? [this.getArgsDefinition(), this.getRequiredOptionsDefinition()].join(" ").trim(); + } + getRequiredOptionsDefinition() { + return this.getOptions().filter((option) => option.required).map( + (option) => [findFlag(option.flags), option.typeDefinition].filter((v4) => v4).join(" ").trim() + ).join(" "); } /** Get short command description. This is the first line of the description. */ getShortDescription() { @@ -4095,8 +4579,8 @@ var Command = class { /** Returns command name, version and meta data. */ getLongVersion() { return `${bold2(this.getMainCommand().getName())} ${brightBlue2(this.getVersion() ?? "")}` + Object.entries(this.getMeta()).map( - ([k, v]) => ` -${bold2(k)} ${brightBlue2(v)}` + ([k3, v4]) => ` +${bold2(k3)} ${brightBlue2(v4)}` ).join(""); } /** Outputs command name, version and meta data. */ @@ -4121,26 +4605,12 @@ ${bold2(k)} ${brightBlue2(v)}` Deno.exit(code3); } } - /** Check if new version is available and add hint to version. */ - async checkVersion() { - const mainCommand = this.getMainCommand(); - const upgradeCommand = mainCommand.getCommand("upgrade"); - if (!isUpgradeCommand(upgradeCommand)) { - return; - } - const latestVersion = await upgradeCommand.getLatestVersion(); - const currentVersion = mainCommand.getVersion(); - if (currentVersion === latestVersion) { - return; - } - const versionHelpText = `(New version available: ${latestVersion}. Run '${mainCommand.getName()} upgrade' to upgrade to the latest version!)`; - mainCommand.version(`${currentVersion} ${bold2(yellow2(versionHelpText))}`); - } /***************************************************************************** **** Options GETTER ********************************************************* *****************************************************************************/ /** * Checks whether the command has options or not. + * * @param hidden Include hidden options. */ hasOptions(hidden2) { @@ -4148,6 +4618,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get options. + * * @param hidden Include hidden options. */ getOptions(hidden2) { @@ -4155,6 +4626,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base options. + * * @param hidden Include hidden options. */ getBaseOptions(hidden2) { @@ -4165,6 +4637,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global options. + * * @param hidden Include hidden options. */ getGlobalOptions(hidden2) { @@ -4192,6 +4665,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Checks whether the command has an option with given name or not. + * * @param name Name of the option. Must be in param-case. * @param hidden Include hidden options. */ @@ -4200,6 +4674,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get option by name. + * * @param name Name of the option. Must be in param-case. * @param hidden Include hidden options. */ @@ -4208,6 +4683,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base option by name. + * * @param name Name of the option. Must be in param-case. * @param hidden Include hidden options. */ @@ -4219,6 +4695,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global option from parent commands by name. + * * @param name Name of the option. Must be in param-case. * @param hidden Include hidden options. */ @@ -4247,6 +4724,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Remove option by name. + * * @param name Name of the option. Must be in param-case. */ removeOption(name) { @@ -4258,6 +4736,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Checks whether the command has sub-commands or not. + * * @param hidden Include hidden commands. */ hasCommands(hidden2) { @@ -4265,6 +4744,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get commands. + * * @param hidden Include hidden commands. */ getCommands(hidden2) { @@ -4272,6 +4752,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base commands. + * * @param hidden Include hidden commands. */ getBaseCommands(hidden2) { @@ -4280,12 +4761,13 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global commands. + * * @param hidden Include hidden commands. */ getGlobalCommands(hidden2) { const getCommands = (command, noGlobals, commands = [], names = []) => { if (command.commands.size) { - for (const [_, cmd] of command.commands) { + for (const [_3, cmd] of command.commands) { if (cmd.isGlobal && this !== cmd && !this.commands.has(cmd._name) && names.indexOf(cmd._name) === -1 && (hidden2 || !cmd.isHidden)) { if (noGlobals && cmd?.getName() !== "help") { continue; @@ -4306,6 +4788,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Checks whether a child command exists by given name or alias. + * * @param name Name or alias of the command. * @param hidden Include hidden commands. */ @@ -4314,6 +4797,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get command by name or alias. + * * @param name Name or alias of the command. * @param hidden Include hidden commands. */ @@ -4322,6 +4806,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base command by name or alias. + * * @param name Name or alias of the command. * @param hidden Include hidden commands. */ @@ -4334,6 +4819,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global command by name or alias. + * * @param name Name or alias of the command. * @param hidden Include hidden commands. */ @@ -4352,6 +4838,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Remove sub-command by name or alias. + * * @param name Name or alias of the command. */ removeCommand(name) { @@ -4389,6 +4876,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get type by name. + * * @param name Name of the type. */ getType(name) { @@ -4396,6 +4884,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base type by name. + * * @param name Name of the type. */ getBaseType(name) { @@ -4403,6 +4892,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global type by name. + * * @param name Name of the type. */ getGlobalType(name) { @@ -4443,6 +4933,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get completion by name. + * * @param name Name of the completion. */ getCompletion(name) { @@ -4450,6 +4941,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base completion by name. + * * @param name Name of the completion. */ getBaseCompletion(name) { @@ -4457,6 +4949,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global completions by name. + * * @param name Name of the completion. */ getGlobalCompletion(name) { @@ -4473,6 +4966,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Checks whether the command has environment variables or not. + * * @param hidden Include hidden environment variable. */ hasEnvVars(hidden2) { @@ -4480,6 +4974,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get environment variables. + * * @param hidden Include hidden environment variable. */ getEnvVars(hidden2) { @@ -4487,6 +4982,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base environment variables. + * * @param hidden Include hidden environment variable. */ getBaseEnvVars(hidden2) { @@ -4497,6 +4993,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global environment variables. + * * @param hidden Include hidden environment variable. */ getGlobalEnvVars(hidden2) { @@ -4521,6 +5018,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Checks whether the command has an environment variable with given name or not. + * * @param name Name of the environment variable. * @param hidden Include hidden environment variable. */ @@ -4529,6 +5027,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get environment variable by name. + * * @param name Name of the environment variable. * @param hidden Include hidden environment variable. */ @@ -4537,6 +5036,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get base environment variable by name. + * * @param name Name of the environment variable. * @param hidden Include hidden environment variable. */ @@ -4548,6 +5048,7 @@ ${bold2(k)} ${brightBlue2(v)}` } /** * Get global environment variable by name. + * * @param name Name of the environment variable. * @param hidden Include hidden environment variable. */ @@ -4584,12 +5085,18 @@ ${bold2(k)} ${brightBlue2(v)}` return this._helpOption ?? this._parent?.getHelpOption(); } }; -function isUpgradeCommand(command) { - return command instanceof Command && "getLatestVersion" in command; +function findFlag(flags) { + for (const flag of flags) { + if (flag.startsWith("--")) { + return flag; + } + } + return flags[0]; } -// http-url:https://deno.land/x/cliffy@v0.25.7/command/types/enum.ts +// https://deno.land/x/cliffy@v1.0.0-rc.3/command/types/enum.ts var EnumType = class extends Type { + allowedValues; constructor(values) { super(); this.allowedValues = Array.isArray(values) ? values : Object.values(values); @@ -4610,67 +5117,59 @@ var EnumType = class extends Type { } }; -// src/setup/options.ts -async function parseOptions(argumentOverride = Deno.args) { - const { args, options } = await new Command().name("bids-validator").type("debugLevel", new EnumType(LogLevelNames)).description( - "This tool checks if a dataset in a given directory is compatible with the Brain Imaging Data Structure specification. To learn more about Brain Imaging Data Structure visit http://bids.neuroimaging.io" - ).arguments("").version("alpha").option("--json", "Output machine readable JSON").option( - "-s, --schema ", - "Specify a schema version to use for validation", - { - default: "latest" - } - ).option("-v, --verbose", "Log more extensive information about issues").option( - "--ignoreNiftiHeaders", - "Disregard NIfTI header content during validation" - ).option("--debug ", "Enable debug output", { - default: "ERROR" - }).option( - "--filenameMode", - "Enable filename checks for newline separated filenames read from stdin" - ).parse(argumentOverride); - return { - datasetPath: args[0], - ...options, - debug: options.debug - }; +// version-ns:./.git-meta.json +var git_meta_default = { description: "v1.14.8" }; + +// https://deno.land/std@0.217.0/path/_common/assert_path.ts +function assertPath(path) { + if (typeof path !== "string") { + throw new TypeError( + `Path must be a string. Received ${JSON.stringify(path)}` + ); + } } -// http-url:https://deno.land/std@0.177.0/_util/os.ts -var osType = (() => { - const { Deno: Deno4 } = globalThis; - if (typeof Deno4?.build?.os === "string") { - return Deno4.build.os; +// https://deno.land/std@0.217.0/path/_common/basename.ts +function stripSuffix(name, suffix) { + if (suffix.length >= name.length) { + return name; } - const { navigator } = globalThis; - if (navigator?.appVersion?.includes?.("Win")) { - return "windows"; + const lenDiff = name.length - suffix.length; + for (let i = suffix.length - 1; i >= 0; --i) { + if (name.charCodeAt(lenDiff + i) !== suffix.charCodeAt(i)) { + return name; + } } - return "linux"; -})(); -var isWindows = osType === "windows"; - -// http-url:https://deno.land/std@0.177.0/path/win32.ts -var win32_exports = {}; -__export(win32_exports, { - basename: () => basename, - delimiter: () => delimiter, - dirname: () => dirname, - extname: () => extname, - format: () => format, - fromFileUrl: () => fromFileUrl, - isAbsolute: () => isAbsolute, - join: () => join, - normalize: () => normalize, - parse: () => parse, - relative: () => relative, - resolve: () => resolve, - sep: () => sep, - toFileUrl: () => toFileUrl, - toNamespacedPath: () => toNamespacedPath -}); + return name.slice(0, -suffix.length); +} +function lastPathSegment(path, isSep, start = 0) { + let matchedNonSeparator = false; + let end = path.length; + for (let i = path.length - 1; i >= start; --i) { + if (isSep(path.charCodeAt(i))) { + if (matchedNonSeparator) { + start = i + 1; + break; + } + } else if (!matchedNonSeparator) { + matchedNonSeparator = true; + end = i + 1; + } + } + return path.slice(start, end); +} +function assertArgs(path, suffix) { + assertPath(path); + if (path.length === 0) + return path; + if (typeof suffix !== "string") { + throw new TypeError( + `Suffix must be a string. Received ${JSON.stringify(suffix)}` + ); + } +} -// http-url:https://deno.land/std@0.177.0/path/_constants.ts +// https://deno.land/std@0.217.0/path/_common/constants.ts var CHAR_UPPERCASE_A = 65; var CHAR_LOWERCASE_A = 97; var CHAR_UPPERCASE_Z = 90; @@ -4679,34 +5178,174 @@ var CHAR_DOT = 46; var CHAR_FORWARD_SLASH = 47; var CHAR_BACKWARD_SLASH = 92; var CHAR_COLON = 58; -var CHAR_QUESTION_MARK = 63; -// http-url:https://deno.land/std@0.177.0/path/_util.ts -function assertPath(path3) { - if (typeof path3 !== "string") { - throw new TypeError( - `Path must be a string. Received ${JSON.stringify(path3)}` - ); +// https://deno.land/std@0.217.0/path/_common/strip_trailing_separators.ts +function stripTrailingSeparators(segment, isSep) { + if (segment.length <= 1) { + return segment; + } + let end = segment.length; + for (let i = segment.length - 1; i > 0; i--) { + if (isSep(segment.charCodeAt(i))) { + end = i; + } else { + break; + } } + return segment.slice(0, end); } + +// https://deno.land/std@0.217.0/path/windows/_util.ts function isPosixPathSeparator(code3) { return code3 === CHAR_FORWARD_SLASH; } function isPathSeparator(code3) { - return isPosixPathSeparator(code3) || code3 === CHAR_BACKWARD_SLASH; + return code3 === CHAR_FORWARD_SLASH || code3 === CHAR_BACKWARD_SLASH; } function isWindowsDeviceRoot(code3) { return code3 >= CHAR_LOWERCASE_A && code3 <= CHAR_LOWERCASE_Z || code3 >= CHAR_UPPERCASE_A && code3 <= CHAR_UPPERCASE_Z; } -function normalizeString(path3, allowAboveRoot, separator, isPathSeparator2) { + +// https://deno.land/std@0.217.0/path/windows/basename.ts +function basename(path, suffix = "") { + assertArgs(path, suffix); + let start = 0; + if (path.length >= 2) { + const drive = path.charCodeAt(0); + if (isWindowsDeviceRoot(drive)) { + if (path.charCodeAt(1) === CHAR_COLON) + start = 2; + } + } + const lastSegment = lastPathSegment(path, isPathSeparator, start); + const strippedSegment = stripTrailingSeparators(lastSegment, isPathSeparator); + return suffix ? stripSuffix(strippedSegment, suffix) : strippedSegment; +} + +// https://deno.land/std@0.217.0/path/_common/dirname.ts +function assertArg(path) { + assertPath(path); + if (path.length === 0) + return "."; +} + +// https://deno.land/std@0.217.0/path/windows/dirname.ts +function dirname(path) { + assertArg(path); + const len = path.length; + let rootEnd = -1; + let end = -1; + let matchedSlash = true; + let offset = 0; + const code3 = path.charCodeAt(0); + if (len > 1) { + if (isPathSeparator(code3)) { + rootEnd = offset = 1; + if (isPathSeparator(path.charCodeAt(1))) { + let j3 = 2; + let last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (!isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 === len) { + return path; + } + if (j3 !== last) { + rootEnd = offset = j3 + 1; + } + } + } + } + } else if (isWindowsDeviceRoot(code3)) { + if (path.charCodeAt(1) === CHAR_COLON) { + rootEnd = offset = 2; + if (len > 2) { + if (isPathSeparator(path.charCodeAt(2))) + rootEnd = offset = 3; + } + } + } + } else if (isPathSeparator(code3)) { + return path; + } + for (let i = len - 1; i >= offset; --i) { + if (isPathSeparator(path.charCodeAt(i))) { + if (!matchedSlash) { + end = i; + break; + } + } else { + matchedSlash = false; + } + } + if (end === -1) { + if (rootEnd === -1) + return "."; + else + end = rootEnd; + } + return stripTrailingSeparators(path.slice(0, end), isPosixPathSeparator); +} + +// https://deno.land/std@0.217.0/path/_common/format.ts +function _format(sep, pathObject) { + const dir = pathObject.dir || pathObject.root; + const base = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); + if (!dir) + return base; + if (base === sep) + return dir; + if (dir === pathObject.root) + return dir + base; + return dir + sep + base; +} +function assertArg2(pathObject) { + if (pathObject === null || typeof pathObject !== "object") { + throw new TypeError( + `The "pathObject" argument must be of type Object. Received type ${typeof pathObject}` + ); + } +} + +// https://deno.land/std@0.217.0/path/_common/from_file_url.ts +function assertArg3(url) { + url = url instanceof URL ? url : new URL(url); + if (url.protocol !== "file:") { + throw new TypeError("Must be a file URL."); + } + return url; +} + +// https://deno.land/std@0.217.0/path/_common/normalize.ts +function assertArg4(path) { + assertPath(path); + if (path.length === 0) + return "."; +} + +// https://deno.land/std@0.217.0/path/_common/normalize_string.ts +function normalizeString(path, allowAboveRoot, separator, isPathSeparator2) { let res = ""; let lastSegmentLength = 0; let lastSlash = -1; let dots = 0; let code3; - for (let i = 0, len = path3.length; i <= len; ++i) { + for (let i = 0, len = path.length; i <= len; ++i) { if (i < len) - code3 = path3.charCodeAt(i); + code3 = path.charCodeAt(i); else if (isPathSeparator2(code3)) break; else @@ -4744,9 +5383,9 @@ function normalizeString(path3, allowAboveRoot, separator, isPathSeparator2) { } } else { if (res.length > 0) - res += separator + path3.slice(lastSlash + 1, i); + res += separator + path.slice(lastSlash + 1, i); else - res = path3.slice(lastSlash + 1, i); + res = path.slice(lastSlash + 1, i); lastSegmentLength = i - lastSlash - 1; } lastSlash = i; @@ -4759,265 +5398,92 @@ function normalizeString(path3, allowAboveRoot, separator, isPathSeparator2) { } return res; } -function _format(sep4, pathObject) { - const dir = pathObject.dir || pathObject.root; - const base = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); - if (!dir) - return base; - if (base === sep4) - return dir; - if (dir === pathObject.root) - return dir + base; - return dir + sep4 + base; -} -var WHITESPACE_ENCODINGS = { - " ": "%09", - "\n": "%0A", - "\v": "%0B", - "\f": "%0C", - "\r": "%0D", - " ": "%20" -}; -function encodeWhitespace(string2) { - return string2.replaceAll(/[\s]/g, (c) => { - return WHITESPACE_ENCODINGS[c] ?? c; - }); -} -function lastPathSegment(path3, isSep, start = 0) { - let matchedNonSeparator = false; - let end = path3.length; - for (let i = path3.length - 1; i >= start; --i) { - if (isSep(path3.charCodeAt(i))) { - if (matchedNonSeparator) { - start = i + 1; - break; + +// https://deno.land/std@0.217.0/path/windows/normalize.ts +function normalize(path) { + assertArg4(path); + const len = path.length; + let rootEnd = 0; + let device; + let isAbsolute3 = false; + const code3 = path.charCodeAt(0); + if (len > 1) { + if (isPathSeparator(code3)) { + isAbsolute3 = true; + if (isPathSeparator(path.charCodeAt(1))) { + let j3 = 2; + let last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 < len && j3 !== last) { + const firstPart = path.slice(last, j3); + last = j3; + for (; j3 < len; ++j3) { + if (!isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 === len) { + return `\\\\${firstPart}\\${path.slice(last)}\\`; + } else if (j3 !== last) { + device = `\\\\${firstPart}\\${path.slice(last, j3)}`; + rootEnd = j3; + } + } + } + } else { + rootEnd = 1; + } + } else if (isWindowsDeviceRoot(code3)) { + if (path.charCodeAt(1) === CHAR_COLON) { + device = path.slice(0, 2); + rootEnd = 2; + if (len > 2) { + if (isPathSeparator(path.charCodeAt(2))) { + isAbsolute3 = true; + rootEnd = 3; + } + } } - } else if (!matchedNonSeparator) { - matchedNonSeparator = true; - end = i + 1; } + } else if (isPathSeparator(code3)) { + return "\\"; } - return path3.slice(start, end); -} -function stripTrailingSeparators(segment, isSep) { - if (segment.length <= 1) { - return segment; + let tail; + if (rootEnd < len) { + tail = normalizeString( + path.slice(rootEnd), + !isAbsolute3, + "\\", + isPathSeparator + ); + } else { + tail = ""; } - let end = segment.length; - for (let i = segment.length - 1; i > 0; i--) { - if (isSep(segment.charCodeAt(i))) { - end = i; + if (tail.length === 0 && !isAbsolute3) + tail = "."; + if (tail.length > 0 && isPathSeparator(path.charCodeAt(len - 1))) { + tail += "\\"; + } + if (device === void 0) { + if (isAbsolute3) { + if (tail.length > 0) + return `\\${tail}`; + else + return "\\"; + } else if (tail.length > 0) { + return tail; } else { - break; + return ""; } - } - return segment.slice(0, end); -} -function stripSuffix(name, suffix) { - if (suffix.length >= name.length) { - return name; - } - const lenDiff = name.length - suffix.length; - for (let i = suffix.length - 1; i >= 0; --i) { - if (name.charCodeAt(lenDiff + i) !== suffix.charCodeAt(i)) { - return name; - } - } - return name.slice(0, -suffix.length); -} - -// http-url:https://deno.land/std@0.177.0/path/win32.ts -var sep = "\\"; -var delimiter = ";"; -function resolve(...pathSegments) { - let resolvedDevice = ""; - let resolvedTail = ""; - let resolvedAbsolute = false; - for (let i = pathSegments.length - 1; i >= -1; i--) { - let path3; - const { Deno: Deno4 } = globalThis; - if (i >= 0) { - path3 = pathSegments[i]; - } else if (!resolvedDevice) { - if (typeof Deno4?.cwd !== "function") { - throw new TypeError("Resolved a drive-letter-less path without a CWD."); - } - path3 = Deno4.cwd(); - } else { - if (typeof Deno4?.env?.get !== "function" || typeof Deno4?.cwd !== "function") { - throw new TypeError("Resolved a relative path without a CWD."); - } - path3 = Deno4.cwd(); - if (path3 === void 0 || path3.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { - path3 = `${resolvedDevice}\\`; - } - } - assertPath(path3); - const len = path3.length; - if (len === 0) - continue; - let rootEnd = 0; - let device = ""; - let isAbsolute4 = false; - const code3 = path3.charCodeAt(0); - if (len > 1) { - if (isPathSeparator(code3)) { - isAbsolute4 = true; - if (isPathSeparator(path3.charCodeAt(1))) { - let j = 2; - let last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j < len && j !== last) { - const firstPart = path3.slice(last, j); - last = j; - for (; j < len; ++j) { - if (!isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j === len) { - device = `\\\\${firstPart}\\${path3.slice(last)}`; - rootEnd = j; - } else if (j !== last) { - device = `\\\\${firstPart}\\${path3.slice(last, j)}`; - rootEnd = j; - } - } - } - } else { - rootEnd = 1; - } - } else if (isWindowsDeviceRoot(code3)) { - if (path3.charCodeAt(1) === CHAR_COLON) { - device = path3.slice(0, 2); - rootEnd = 2; - if (len > 2) { - if (isPathSeparator(path3.charCodeAt(2))) { - isAbsolute4 = true; - rootEnd = 3; - } - } - } - } - } else if (isPathSeparator(code3)) { - rootEnd = 1; - isAbsolute4 = true; - } - if (device.length > 0 && resolvedDevice.length > 0 && device.toLowerCase() !== resolvedDevice.toLowerCase()) { - continue; - } - if (resolvedDevice.length === 0 && device.length > 0) { - resolvedDevice = device; - } - if (!resolvedAbsolute) { - resolvedTail = `${path3.slice(rootEnd)}\\${resolvedTail}`; - resolvedAbsolute = isAbsolute4; - } - if (resolvedAbsolute && resolvedDevice.length > 0) - break; - } - resolvedTail = normalizeString( - resolvedTail, - !resolvedAbsolute, - "\\", - isPathSeparator - ); - return resolvedDevice + (resolvedAbsolute ? "\\" : "") + resolvedTail || "."; -} -function normalize(path3) { - assertPath(path3); - const len = path3.length; - if (len === 0) - return "."; - let rootEnd = 0; - let device; - let isAbsolute4 = false; - const code3 = path3.charCodeAt(0); - if (len > 1) { - if (isPathSeparator(code3)) { - isAbsolute4 = true; - if (isPathSeparator(path3.charCodeAt(1))) { - let j = 2; - let last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j < len && j !== last) { - const firstPart = path3.slice(last, j); - last = j; - for (; j < len; ++j) { - if (!isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j === len) { - return `\\\\${firstPart}\\${path3.slice(last)}\\`; - } else if (j !== last) { - device = `\\\\${firstPart}\\${path3.slice(last, j)}`; - rootEnd = j; - } - } - } - } else { - rootEnd = 1; - } - } else if (isWindowsDeviceRoot(code3)) { - if (path3.charCodeAt(1) === CHAR_COLON) { - device = path3.slice(0, 2); - rootEnd = 2; - if (len > 2) { - if (isPathSeparator(path3.charCodeAt(2))) { - isAbsolute4 = true; - rootEnd = 3; - } - } - } - } - } else if (isPathSeparator(code3)) { - return "\\"; - } - let tail; - if (rootEnd < len) { - tail = normalizeString( - path3.slice(rootEnd), - !isAbsolute4, - "\\", - isPathSeparator - ); - } else { - tail = ""; - } - if (tail.length === 0 && !isAbsolute4) - tail = "."; - if (tail.length > 0 && isPathSeparator(path3.charCodeAt(len - 1))) { - tail += "\\"; - } - if (device === void 0) { - if (isAbsolute4) { - if (tail.length > 0) - return `\\${tail}`; - else - return "\\"; - } else if (tail.length > 0) { - return tail; - } else { - return ""; - } - } else if (isAbsolute4) { + } else if (isAbsolute3) { if (tail.length > 0) return `${device}\\${tail}`; else @@ -5028,43 +5494,28 @@ function normalize(path3) { return device; } } -function isAbsolute(path3) { - assertPath(path3); - const len = path3.length; - if (len === 0) - return false; - const code3 = path3.charCodeAt(0); - if (isPathSeparator(code3)) { - return true; - } else if (isWindowsDeviceRoot(code3)) { - if (len > 2 && path3.charCodeAt(1) === CHAR_COLON) { - if (isPathSeparator(path3.charCodeAt(2))) - return true; - } - } - return false; -} + +// https://deno.land/std@0.217.0/path/windows/join.ts function join(...paths) { - const pathsCount = paths.length; - if (pathsCount === 0) + if (paths.length === 0) return "."; let joined; let firstPart = null; - for (let i = 0; i < pathsCount; ++i) { - const path3 = paths[i]; - assertPath(path3); - if (path3.length > 0) { + for (let i = 0; i < paths.length; ++i) { + const path = paths[i]; + assertPath(path); + if (path.length > 0) { if (joined === void 0) - joined = firstPart = path3; + joined = firstPart = path; else - joined += `\\${path3}`; + joined += `\\${path}`; } } if (joined === void 0) return "."; let needsReplace = true; let slashCount = 0; - assert(firstPart != null); + assert(firstPart !== null); if (isPathSeparator(firstPart.charCodeAt(0))) { ++slashCount; const firstLen = firstPart.length; @@ -5091,219 +5542,79 @@ function join(...paths) { } return normalize(joined); } -function relative(from, to) { - assertPath(from); - assertPath(to); - if (from === to) - return ""; - const fromOrig = resolve(from); - const toOrig = resolve(to); - if (fromOrig === toOrig) - return ""; - from = fromOrig.toLowerCase(); - to = toOrig.toLowerCase(); - if (from === to) - return ""; - let fromStart = 0; - let fromEnd = from.length; - for (; fromStart < fromEnd; ++fromStart) { - if (from.charCodeAt(fromStart) !== CHAR_BACKWARD_SLASH) - break; - } - for (; fromEnd - 1 > fromStart; --fromEnd) { - if (from.charCodeAt(fromEnd - 1) !== CHAR_BACKWARD_SLASH) - break; - } - const fromLen = fromEnd - fromStart; - let toStart = 0; - let toEnd = to.length; - for (; toStart < toEnd; ++toStart) { - if (to.charCodeAt(toStart) !== CHAR_BACKWARD_SLASH) - break; - } - for (; toEnd - 1 > toStart; --toEnd) { - if (to.charCodeAt(toEnd - 1) !== CHAR_BACKWARD_SLASH) - break; - } - const toLen = toEnd - toStart; - const length = fromLen < toLen ? fromLen : toLen; - let lastCommonSep = -1; - let i = 0; - for (; i <= length; ++i) { - if (i === length) { - if (toLen > length) { - if (to.charCodeAt(toStart + i) === CHAR_BACKWARD_SLASH) { - return toOrig.slice(toStart + i + 1); - } else if (i === 2) { - return toOrig.slice(toStart + i); - } - } - if (fromLen > length) { - if (from.charCodeAt(fromStart + i) === CHAR_BACKWARD_SLASH) { - lastCommonSep = i; - } else if (i === 2) { - lastCommonSep = 3; - } - } - break; - } - const fromCode = from.charCodeAt(fromStart + i); - const toCode = to.charCodeAt(toStart + i); - if (fromCode !== toCode) - break; - else if (fromCode === CHAR_BACKWARD_SLASH) - lastCommonSep = i; - } - if (i !== length && lastCommonSep === -1) { - return toOrig; - } - let out = ""; - if (lastCommonSep === -1) - lastCommonSep = 0; - for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) { - if (i === fromEnd || from.charCodeAt(i) === CHAR_BACKWARD_SLASH) { - if (out.length === 0) - out += ".."; - else - out += "\\.."; - } - } - if (out.length > 0) { - return out + toOrig.slice(toStart + lastCommonSep, toEnd); - } else { - toStart += lastCommonSep; - if (toOrig.charCodeAt(toStart) === CHAR_BACKWARD_SLASH) - ++toStart; - return toOrig.slice(toStart, toEnd); - } -} -function toNamespacedPath(path3) { - if (typeof path3 !== "string") - return path3; - if (path3.length === 0) - return ""; - const resolvedPath = resolve(path3); - if (resolvedPath.length >= 3) { - if (resolvedPath.charCodeAt(0) === CHAR_BACKWARD_SLASH) { - if (resolvedPath.charCodeAt(1) === CHAR_BACKWARD_SLASH) { - const code3 = resolvedPath.charCodeAt(2); - if (code3 !== CHAR_QUESTION_MARK && code3 !== CHAR_DOT) { - return `\\\\?\\UNC\\${resolvedPath.slice(2)}`; - } - } - } else if (isWindowsDeviceRoot(resolvedPath.charCodeAt(0))) { - if (resolvedPath.charCodeAt(1) === CHAR_COLON && resolvedPath.charCodeAt(2) === CHAR_BACKWARD_SLASH) { - return `\\\\?\\${resolvedPath}`; - } - } - } - return path3; -} -function dirname(path3) { - assertPath(path3); - const len = path3.length; + +// https://deno.land/std@0.217.0/path/windows/parse.ts +function parse(path) { + assertPath(path); + const ret = { root: "", dir: "", base: "", ext: "", name: "" }; + const len = path.length; if (len === 0) - return "."; - let rootEnd = -1; - let end = -1; - let matchedSlash = true; - let offset = 0; - const code3 = path3.charCodeAt(0); + return ret; + let rootEnd = 0; + let code3 = path.charCodeAt(0); if (len > 1) { if (isPathSeparator(code3)) { - rootEnd = offset = 1; - if (isPathSeparator(path3.charCodeAt(1))) { - let j = 2; - let last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) + rootEnd = 1; + if (isPathSeparator(path.charCodeAt(1))) { + let j3 = 2; + let last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) break; } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (!isPathSeparator(path3.charCodeAt(j))) + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (!isPathSeparator(path.charCodeAt(j3))) break; } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) break; } - if (j === len) { - return path3; - } - if (j !== last) { - rootEnd = offset = j + 1; + if (j3 === len) { + rootEnd = j3; + } else if (j3 !== last) { + rootEnd = j3 + 1; } } } } } else if (isWindowsDeviceRoot(code3)) { - if (path3.charCodeAt(1) === CHAR_COLON) { - rootEnd = offset = 2; + if (path.charCodeAt(1) === CHAR_COLON) { + rootEnd = 2; if (len > 2) { - if (isPathSeparator(path3.charCodeAt(2))) - rootEnd = offset = 3; + if (isPathSeparator(path.charCodeAt(2))) { + if (len === 3) { + ret.root = ret.dir = path; + ret.base = "\\"; + return ret; + } + rootEnd = 3; + } + } else { + ret.root = ret.dir = path; + return ret; } } } } else if (isPathSeparator(code3)) { - return path3; - } - for (let i = len - 1; i >= offset; --i) { - if (isPathSeparator(path3.charCodeAt(i))) { - if (!matchedSlash) { - end = i; - break; - } - } else { - matchedSlash = false; - } - } - if (end === -1) { - if (rootEnd === -1) - return "."; - else - end = rootEnd; - } - return stripTrailingSeparators(path3.slice(0, end), isPosixPathSeparator); -} -function basename(path3, suffix = "") { - assertPath(path3); - if (path3.length === 0) - return path3; - if (typeof suffix !== "string") { - throw new TypeError( - `Suffix must be a string. Received ${JSON.stringify(suffix)}` - ); - } - let start = 0; - if (path3.length >= 2) { - const drive = path3.charCodeAt(0); - if (isWindowsDeviceRoot(drive)) { - if (path3.charCodeAt(1) === CHAR_COLON) - start = 2; - } + ret.root = ret.dir = path; + ret.base = "\\"; + return ret; } - const lastSegment = lastPathSegment(path3, isPathSeparator, start); - const strippedSegment = stripTrailingSeparators(lastSegment, isPathSeparator); - return suffix ? stripSuffix(strippedSegment, suffix) : strippedSegment; -} -function extname(path3) { - assertPath(path3); - let start = 0; + if (rootEnd > 0) + ret.root = path.slice(0, rootEnd); let startDot = -1; - let startPart = 0; + let startPart = rootEnd; let end = -1; let matchedSlash = true; + let i = path.length - 1; let preDotState = 0; - if (path3.length >= 2 && path3.charCodeAt(1) === CHAR_COLON && isWindowsDeviceRoot(path3.charCodeAt(0))) { - start = startPart = 2; - } - for (let i = path3.length - 1; i >= start; --i) { - const code3 = path3.charCodeAt(i); + for (; i >= rootEnd; --i) { + code3 = path.charCodeAt(i); if (isPathSeparator(code3)) { if (!matchedSlash) { startPart = i + 1; @@ -5327,90 +5638,512 @@ function extname(path3) { if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot preDotState === 0 || // The (right-most) trimmed path component is exactly '..' preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { - return ""; - } - return path3.slice(startDot, end); -} -function format(pathObject) { - if (pathObject === null || typeof pathObject !== "object") { - throw new TypeError( - `The "pathObject" argument must be of type Object. Received type ${typeof pathObject}` - ); + if (end !== -1) { + ret.base = ret.name = path.slice(startPart, end); + } + } else { + ret.name = path.slice(startPart, startDot); + ret.base = path.slice(startPart, end); + ret.ext = path.slice(startDot, end); } - return _format("\\", pathObject); + ret.base = ret.base || "\\"; + if (startPart > 0 && startPart !== rootEnd) { + ret.dir = path.slice(0, startPart - 1); + } else + ret.dir = ret.root; + return ret; } -function parse(path3) { - assertPath(path3); - const ret = { root: "", dir: "", base: "", ext: "", name: "" }; - const len = path3.length; - if (len === 0) - return ret; - let rootEnd = 0; - let code3 = path3.charCodeAt(0); - if (len > 1) { - if (isPathSeparator(code3)) { - rootEnd = 1; - if (isPathSeparator(path3.charCodeAt(1))) { - let j = 2; - let last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) - break; - } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (!isPathSeparator(path3.charCodeAt(j))) + +// https://deno.land/std@0.217.0/path/windows/resolve.ts +function resolve(...pathSegments) { + let resolvedDevice = ""; + let resolvedTail = ""; + let resolvedAbsolute = false; + for (let i = pathSegments.length - 1; i >= -1; i--) { + let path; + const { Deno: Deno4 } = globalThis; + if (i >= 0) { + path = pathSegments[i]; + } else if (!resolvedDevice) { + if (typeof Deno4?.cwd !== "function") { + throw new TypeError("Resolved a drive-letter-less path without a CWD."); + } + path = Deno4.cwd(); + } else { + if (typeof Deno4?.env?.get !== "function" || typeof Deno4?.cwd !== "function") { + throw new TypeError("Resolved a relative path without a CWD."); + } + path = Deno4.cwd(); + if (path === void 0 || path.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { + path = `${resolvedDevice}\\`; + } + } + assertPath(path); + const len = path.length; + if (len === 0) + continue; + let rootEnd = 0; + let device = ""; + let isAbsolute3 = false; + const code3 = path.charCodeAt(0); + if (len > 1) { + if (isPathSeparator(code3)) { + isAbsolute3 = true; + if (isPathSeparator(path.charCodeAt(1))) { + let j3 = 2; + let last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) break; } - if (j < len && j !== last) { - last = j; - for (; j < len; ++j) { - if (isPathSeparator(path3.charCodeAt(j))) + if (j3 < len && j3 !== last) { + const firstPart = path.slice(last, j3); + last = j3; + for (; j3 < len; ++j3) { + if (!isPathSeparator(path.charCodeAt(j3))) break; } - if (j === len) { - rootEnd = j; - } else if (j !== last) { - rootEnd = j + 1; + if (j3 < len && j3 !== last) { + last = j3; + for (; j3 < len; ++j3) { + if (isPathSeparator(path.charCodeAt(j3))) + break; + } + if (j3 === len) { + device = `\\\\${firstPart}\\${path.slice(last)}`; + rootEnd = j3; + } else if (j3 !== last) { + device = `\\\\${firstPart}\\${path.slice(last, j3)}`; + rootEnd = j3; + } } } + } else { + rootEnd = 1; } - } - } else if (isWindowsDeviceRoot(code3)) { - if (path3.charCodeAt(1) === CHAR_COLON) { - rootEnd = 2; - if (len > 2) { - if (isPathSeparator(path3.charCodeAt(2))) { - if (len === 3) { - ret.root = ret.dir = path3; - ret.base = "\\"; - return ret; + } else if (isWindowsDeviceRoot(code3)) { + if (path.charCodeAt(1) === CHAR_COLON) { + device = path.slice(0, 2); + rootEnd = 2; + if (len > 2) { + if (isPathSeparator(path.charCodeAt(2))) { + isAbsolute3 = true; + rootEnd = 3; } - rootEnd = 3; } + } + } + } else if (isPathSeparator(code3)) { + rootEnd = 1; + isAbsolute3 = true; + } + if (device.length > 0 && resolvedDevice.length > 0 && device.toLowerCase() !== resolvedDevice.toLowerCase()) { + continue; + } + if (resolvedDevice.length === 0 && device.length > 0) { + resolvedDevice = device; + } + if (!resolvedAbsolute) { + resolvedTail = `${path.slice(rootEnd)}\\${resolvedTail}`; + resolvedAbsolute = isAbsolute3; + } + if (resolvedAbsolute && resolvedDevice.length > 0) + break; + } + resolvedTail = normalizeString( + resolvedTail, + !resolvedAbsolute, + "\\", + isPathSeparator + ); + return resolvedDevice + (resolvedAbsolute ? "\\" : "") + resolvedTail || "."; +} + +// https://deno.land/std@0.217.0/path/_common/relative.ts +function assertArgs2(from, to3) { + assertPath(from); + assertPath(to3); + if (from === to3) + return ""; +} + +// https://deno.land/std@0.217.0/path/_common/to_file_url.ts +var WHITESPACE_ENCODINGS = { + " ": "%09", + "\n": "%0A", + "\v": "%0B", + "\f": "%0C", + "\r": "%0D", + " ": "%20" +}; +function encodeWhitespace(string2) { + return string2.replaceAll(/[\s]/g, (c3) => { + return WHITESPACE_ENCODINGS[c3] ?? c3; + }); +} + +// https://deno.land/std@0.217.0/path/_common/common.ts +function _common(paths, sep) { + const [first = "", ...remaining] = paths; + if (first === "" || remaining.length === 0) { + return first.substring(0, first.lastIndexOf(sep) + 1); + } + const parts = first.split(sep); + let endOfPrefix = parts.length; + for (const path of remaining) { + const compare = path.split(sep); + for (let i = 0; i < endOfPrefix; i++) { + if (compare[i] !== parts[i]) { + endOfPrefix = i; + } + } + if (endOfPrefix === 0) { + return ""; + } + } + const prefix = parts.slice(0, endOfPrefix).join(sep); + return prefix.endsWith(sep) ? prefix : `${prefix}${sep}`; +} + +// https://deno.land/std@0.217.0/path/_common/glob_to_reg_exp.ts +var regExpEscapeChars = [ + "!", + "$", + "(", + ")", + "*", + "+", + ".", + "=", + "?", + "[", + "\\", + "^", + "{", + "|" +]; +var rangeEscapeChars = ["-", "\\", "]"]; +function _globToRegExp(c3, glob, { + extended = true, + globstar: globstarOption = true, + // os = osType, + caseInsensitive = false +} = {}) { + if (glob === "") { + return /(?!)/; + } + let newLength = glob.length; + for (; newLength > 1 && c3.seps.includes(glob[newLength - 1]); newLength--) + ; + glob = glob.slice(0, newLength); + let regExpString = ""; + for (let j3 = 0; j3 < glob.length; ) { + let segment = ""; + const groupStack = []; + let inRange = false; + let inEscape = false; + let endsWithSep = false; + let i = j3; + for (; i < glob.length && !c3.seps.includes(glob[i]); i++) { + if (inEscape) { + inEscape = false; + const escapeChars = inRange ? rangeEscapeChars : regExpEscapeChars; + segment += escapeChars.includes(glob[i]) ? `\\${glob[i]}` : glob[i]; + continue; + } + if (glob[i] === c3.escapePrefix) { + inEscape = true; + continue; + } + if (glob[i] === "[") { + if (!inRange) { + inRange = true; + segment += "["; + if (glob[i + 1] === "!") { + i++; + segment += "^"; + } else if (glob[i + 1] === "^") { + i++; + segment += "\\^"; + } + continue; + } else if (glob[i + 1] === ":") { + let k3 = i + 1; + let value = ""; + while (glob[k3 + 1] !== void 0 && glob[k3 + 1] !== ":") { + value += glob[k3 + 1]; + k3++; + } + if (glob[k3 + 1] === ":" && glob[k3 + 2] === "]") { + i = k3 + 2; + if (value === "alnum") + segment += "\\dA-Za-z"; + else if (value === "alpha") + segment += "A-Za-z"; + else if (value === "ascii") + segment += "\0-\x7F"; + else if (value === "blank") + segment += " "; + else if (value === "cntrl") + segment += "\0-\x7F"; + else if (value === "digit") + segment += "\\d"; + else if (value === "graph") + segment += "!-~"; + else if (value === "lower") + segment += "a-z"; + else if (value === "print") + segment += " -~"; + else if (value === "punct") { + segment += `!"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^_\u2018{|}~`; + } else if (value === "space") + segment += "\\s\v"; + else if (value === "upper") + segment += "A-Z"; + else if (value === "word") + segment += "\\w"; + else if (value === "xdigit") + segment += "\\dA-Fa-f"; + continue; + } + } + } + if (glob[i] === "]" && inRange) { + inRange = false; + segment += "]"; + continue; + } + if (inRange) { + if (glob[i] === "\\") { + segment += `\\\\`; } else { - ret.root = ret.dir = path3; - return ret; + segment += glob[i]; + } + continue; + } + if (glob[i] === ")" && groupStack.length > 0 && groupStack[groupStack.length - 1] !== "BRACE") { + segment += ")"; + const type = groupStack.pop(); + if (type === "!") { + segment += c3.wildcard; + } else if (type !== "@") { + segment += type; + } + continue; + } + if (glob[i] === "|" && groupStack.length > 0 && groupStack[groupStack.length - 1] !== "BRACE") { + segment += "|"; + continue; + } + if (glob[i] === "+" && extended && glob[i + 1] === "(") { + i++; + groupStack.push("+"); + segment += "(?:"; + continue; + } + if (glob[i] === "@" && extended && glob[i + 1] === "(") { + i++; + groupStack.push("@"); + segment += "(?:"; + continue; + } + if (glob[i] === "?") { + if (extended && glob[i + 1] === "(") { + i++; + groupStack.push("?"); + segment += "(?:"; + } else { + segment += "."; + } + continue; + } + if (glob[i] === "!" && extended && glob[i + 1] === "(") { + i++; + groupStack.push("!"); + segment += "(?!"; + continue; + } + if (glob[i] === "{") { + groupStack.push("BRACE"); + segment += "(?:"; + continue; + } + if (glob[i] === "}" && groupStack[groupStack.length - 1] === "BRACE") { + groupStack.pop(); + segment += ")"; + continue; + } + if (glob[i] === "," && groupStack[groupStack.length - 1] === "BRACE") { + segment += "|"; + continue; + } + if (glob[i] === "*") { + if (extended && glob[i + 1] === "(") { + i++; + groupStack.push("*"); + segment += "(?:"; + } else { + const prevChar = glob[i - 1]; + let numStars = 1; + while (glob[i + 1] === "*") { + i++; + numStars++; + } + const nextChar = glob[i + 1]; + if (globstarOption && numStars === 2 && [...c3.seps, void 0].includes(prevChar) && [...c3.seps, void 0].includes(nextChar)) { + segment += c3.globstar; + endsWithSep = true; + } else { + segment += c3.wildcard; + } } + continue; } + segment += regExpEscapeChars.includes(glob[i]) ? `\\${glob[i]}` : glob[i]; } - } else if (isPathSeparator(code3)) { - ret.root = ret.dir = path3; - ret.base = "\\"; - return ret; + if (groupStack.length > 0 || inRange || inEscape) { + segment = ""; + for (const c4 of glob.slice(j3, i)) { + segment += regExpEscapeChars.includes(c4) ? `\\${c4}` : c4; + endsWithSep = false; + } + } + regExpString += segment; + if (!endsWithSep) { + regExpString += i < glob.length ? c3.sep : c3.sepMaybe; + endsWithSep = true; + } + while (c3.seps.includes(glob[i])) + i++; + if (!(i > j3)) { + throw new Error("Assertion failure: i > j (potential infinite loop)"); + } + j3 = i; } - if (rootEnd > 0) - ret.root = path3.slice(0, rootEnd); + regExpString = `^${regExpString}$`; + return new RegExp(regExpString, caseInsensitive ? "i" : ""); +} + +// https://deno.land/std@0.217.0/path/windows/glob_to_regexp.ts +var constants = { + sep: "(?:\\\\|/)+", + sepMaybe: "(?:\\\\|/)*", + seps: ["\\", "/"], + globstar: "(?:[^\\\\/]*(?:\\\\|/|$)+)*", + wildcard: "[^\\\\/]*", + escapePrefix: "`" +}; +function globToRegExp(glob, options = {}) { + return _globToRegExp(constants, glob, options); +} + +// https://deno.land/std@0.217.0/path/is_glob.ts +function isGlob(str) { + const chars = { "{": "}", "(": ")", "[": "]" }; + const regex = /\\(.)|(^!|\*|\?|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/; + if (str === "") { + return false; + } + let match; + while (match = regex.exec(str)) { + if (match[2]) + return true; + let idx = match.index + match[0].length; + const open = match[1]; + const close = open ? chars[open] : null; + if (open && close) { + const n2 = str.indexOf(close, idx); + if (n2 !== -1) { + idx = n2 + 1; + } + } + str = str.slice(idx); + } + return false; +} + +// https://deno.land/std@0.217.0/path/posix/mod.ts +var mod_exports = {}; +__export(mod_exports, { + DELIMITER: () => DELIMITER, + SEPARATOR: () => SEPARATOR2, + SEPARATOR_PATTERN: () => SEPARATOR_PATTERN2, + basename: () => basename2, + common: () => common, + dirname: () => dirname2, + extname: () => extname, + format: () => format, + fromFileUrl: () => fromFileUrl, + globToRegExp: () => globToRegExp2, + isAbsolute: () => isAbsolute2, + isGlob: () => isGlob, + join: () => join2, + joinGlobs: () => joinGlobs, + normalize: () => normalize2, + normalizeGlob: () => normalizeGlob2, + parse: () => parse2, + relative: () => relative, + resolve: () => resolve2, + toFileUrl: () => toFileUrl, + toNamespacedPath: () => toNamespacedPath +}); + +// https://deno.land/std@0.217.0/path/posix/_util.ts +function isPosixPathSeparator2(code3) { + return code3 === CHAR_FORWARD_SLASH; +} + +// https://deno.land/std@0.217.0/path/posix/basename.ts +function basename2(path, suffix = "") { + assertArgs(path, suffix); + const lastSegment = lastPathSegment(path, isPosixPathSeparator2); + const strippedSegment = stripTrailingSeparators( + lastSegment, + isPosixPathSeparator2 + ); + return suffix ? stripSuffix(strippedSegment, suffix) : strippedSegment; +} + +// https://deno.land/std@0.217.0/path/posix/constants.ts +var DELIMITER = ":"; +var SEPARATOR2 = "/"; +var SEPARATOR_PATTERN2 = /\/+/; + +// https://deno.land/std@0.217.0/path/posix/dirname.ts +function dirname2(path) { + assertArg(path); + let end = -1; + let matchedNonSeparator = false; + for (let i = path.length - 1; i >= 1; --i) { + if (isPosixPathSeparator2(path.charCodeAt(i))) { + if (matchedNonSeparator) { + end = i; + break; + } + } else { + matchedNonSeparator = true; + } + } + if (end === -1) { + return isPosixPathSeparator2(path.charCodeAt(0)) ? "/" : "."; + } + return stripTrailingSeparators( + path.slice(0, end), + isPosixPathSeparator2 + ); +} + +// https://deno.land/std@0.217.0/path/posix/extname.ts +function extname(path) { + assertPath(path); let startDot = -1; - let startPart = rootEnd; + let startPart = 0; let end = -1; let matchedSlash = true; - let i = path3.length - 1; let preDotState = 0; - for (; i >= rootEnd; --i) { - code3 = path3.charCodeAt(i); - if (isPathSeparator(code3)) { + for (let i = path.length - 1; i >= 0; --i) { + const code3 = path.charCodeAt(i); + if (isPosixPathSeparator2(code3)) { if (!matchedSlash) { startPart = i + 1; break; @@ -5433,99 +6166,168 @@ function parse(path3) { if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot preDotState === 0 || // The (right-most) trimmed path component is exactly '..' preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { - if (end !== -1) { - ret.base = ret.name = path3.slice(startPart, end); - } - } else { - ret.name = path3.slice(startPart, startDot); - ret.base = path3.slice(startPart, end); - ret.ext = path3.slice(startDot, end); + return ""; } - ret.base = ret.base || "\\"; - if (startPart > 0 && startPart !== rootEnd) { - ret.dir = path3.slice(0, startPart - 1); - } else - ret.dir = ret.root; - return ret; + return path.slice(startDot, end); +} + +// https://deno.land/std@0.217.0/path/posix/format.ts +function format(pathObject) { + assertArg2(pathObject); + return _format("/", pathObject); } + +// https://deno.land/std@0.217.0/path/posix/from_file_url.ts function fromFileUrl(url) { - url = url instanceof URL ? url : new URL(url); - if (url.protocol != "file:") { - throw new TypeError("Must be a file URL."); - } - let path3 = decodeURIComponent( - url.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25") - ).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\"); - if (url.hostname != "") { - path3 = `\\\\${url.hostname}${path3}`; - } - return path3; + url = assertArg3(url); + return decodeURIComponent( + url.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25") + ); } -function toFileUrl(path3) { - if (!isAbsolute(path3)) { - throw new TypeError("Must be an absolute path."); - } - const [, hostname, pathname] = path3.match( - /^(?:[/\\]{2}([^/\\]+)(?=[/\\](?:[^/\\]|$)))?(.*)/ + +// https://deno.land/std@0.217.0/path/posix/is_absolute.ts +function isAbsolute2(path) { + assertPath(path); + return path.length > 0 && isPosixPathSeparator2(path.charCodeAt(0)); +} + +// https://deno.land/std@0.217.0/path/posix/normalize.ts +function normalize2(path) { + assertArg4(path); + const isAbsolute3 = isPosixPathSeparator2(path.charCodeAt(0)); + const trailingSeparator = isPosixPathSeparator2( + path.charCodeAt(path.length - 1) ); - const url = new URL("file:///"); - url.pathname = encodeWhitespace(pathname.replace(/%/g, "%25")); - if (hostname != null && hostname != "localhost") { - url.hostname = hostname; - if (!url.hostname) { - throw new TypeError("Invalid hostname."); - } - } - return url; + path = normalizeString(path, !isAbsolute3, "/", isPosixPathSeparator2); + if (path.length === 0 && !isAbsolute3) + path = "."; + if (path.length > 0 && trailingSeparator) + path += "/"; + if (isAbsolute3) + return `/${path}`; + return path; } -// http-url:https://deno.land/std@0.177.0/path/posix.ts -var posix_exports = {}; -__export(posix_exports, { - basename: () => basename2, - delimiter: () => delimiter2, - dirname: () => dirname2, - extname: () => extname2, - format: () => format2, - fromFileUrl: () => fromFileUrl2, - isAbsolute: () => isAbsolute2, - join: () => join2, - normalize: () => normalize2, - parse: () => parse2, - relative: () => relative2, - resolve: () => resolve2, - sep: () => sep2, - toFileUrl: () => toFileUrl2, - toNamespacedPath: () => toNamespacedPath2 -}); -var sep2 = "/"; -var delimiter2 = ":"; +// https://deno.land/std@0.217.0/path/posix/join.ts +function join2(...paths) { + if (paths.length === 0) + return "."; + let joined; + for (let i = 0, len = paths.length; i < len; ++i) { + const path = paths[i]; + assertPath(path); + if (path.length > 0) { + if (!joined) + joined = path; + else + joined += `/${path}`; + } + } + if (!joined) + return "."; + return normalize2(joined); +} + +// https://deno.land/std@0.217.0/path/posix/parse.ts +function parse2(path) { + assertPath(path); + const ret = { root: "", dir: "", base: "", ext: "", name: "" }; + if (path.length === 0) + return ret; + const isAbsolute3 = isPosixPathSeparator2(path.charCodeAt(0)); + let start; + if (isAbsolute3) { + ret.root = "/"; + start = 1; + } else { + start = 0; + } + let startDot = -1; + let startPart = 0; + let end = -1; + let matchedSlash = true; + let i = path.length - 1; + let preDotState = 0; + for (; i >= start; --i) { + const code3 = path.charCodeAt(i); + if (isPosixPathSeparator2(code3)) { + if (!matchedSlash) { + startPart = i + 1; + break; + } + continue; + } + if (end === -1) { + matchedSlash = false; + end = i + 1; + } + if (code3 === CHAR_DOT) { + if (startDot === -1) + startDot = i; + else if (preDotState !== 1) + preDotState = 1; + } else if (startDot !== -1) { + preDotState = -1; + } + } + if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot + preDotState === 0 || // The (right-most) trimmed path component is exactly '..' + preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { + if (end !== -1) { + if (startPart === 0 && isAbsolute3) { + ret.base = ret.name = path.slice(1, end); + } else { + ret.base = ret.name = path.slice(startPart, end); + } + } + ret.base = ret.base || "/"; + } else { + if (startPart === 0 && isAbsolute3) { + ret.name = path.slice(1, startDot); + ret.base = path.slice(1, end); + } else { + ret.name = path.slice(startPart, startDot); + ret.base = path.slice(startPart, end); + } + ret.ext = path.slice(startDot, end); + } + if (startPart > 0) { + ret.dir = stripTrailingSeparators( + path.slice(0, startPart - 1), + isPosixPathSeparator2 + ); + } else if (isAbsolute3) + ret.dir = "/"; + return ret; +} + +// https://deno.land/std@0.217.0/path/posix/resolve.ts function resolve2(...pathSegments) { let resolvedPath = ""; let resolvedAbsolute = false; for (let i = pathSegments.length - 1; i >= -1 && !resolvedAbsolute; i--) { - let path3; + let path; if (i >= 0) - path3 = pathSegments[i]; + path = pathSegments[i]; else { const { Deno: Deno4 } = globalThis; if (typeof Deno4?.cwd !== "function") { throw new TypeError("Resolved a relative path without a CWD."); } - path3 = Deno4.cwd(); + path = Deno4.cwd(); } - assertPath(path3); - if (path3.length === 0) { + assertPath(path); + if (path.length === 0) { continue; } - resolvedPath = `${path3}/${resolvedPath}`; - resolvedAbsolute = isPosixPathSeparator(path3.charCodeAt(0)); + resolvedPath = `${path}/${resolvedPath}`; + resolvedAbsolute = isPosixPathSeparator2(path.charCodeAt(0)); } resolvedPath = normalizeString( resolvedPath, !resolvedAbsolute, "/", - isPosixPathSeparator + isPosixPathSeparator2 ); if (resolvedAbsolute) { if (resolvedPath.length > 0) @@ -5537,65 +6339,25 @@ function resolve2(...pathSegments) { else return "."; } -function normalize2(path3) { - assertPath(path3); - if (path3.length === 0) - return "."; - const isAbsolute4 = isPosixPathSeparator(path3.charCodeAt(0)); - const trailingSeparator = isPosixPathSeparator( - path3.charCodeAt(path3.length - 1) - ); - path3 = normalizeString(path3, !isAbsolute4, "/", isPosixPathSeparator); - if (path3.length === 0 && !isAbsolute4) - path3 = "."; - if (path3.length > 0 && trailingSeparator) - path3 += "/"; - if (isAbsolute4) - return `/${path3}`; - return path3; -} -function isAbsolute2(path3) { - assertPath(path3); - return path3.length > 0 && isPosixPathSeparator(path3.charCodeAt(0)); -} -function join2(...paths) { - if (paths.length === 0) - return "."; - let joined; - for (let i = 0, len = paths.length; i < len; ++i) { - const path3 = paths[i]; - assertPath(path3); - if (path3.length > 0) { - if (!joined) - joined = path3; - else - joined += `/${path3}`; - } - } - if (!joined) - return "."; - return normalize2(joined); -} -function relative2(from, to) { - assertPath(from); - assertPath(to); - if (from === to) - return ""; + +// https://deno.land/std@0.217.0/path/posix/relative.ts +function relative(from, to3) { + assertArgs2(from, to3); from = resolve2(from); - to = resolve2(to); - if (from === to) + to3 = resolve2(to3); + if (from === to3) return ""; let fromStart = 1; const fromEnd = from.length; for (; fromStart < fromEnd; ++fromStart) { - if (!isPosixPathSeparator(from.charCodeAt(fromStart))) + if (!isPosixPathSeparator2(from.charCodeAt(fromStart))) break; } const fromLen = fromEnd - fromStart; let toStart = 1; - const toEnd = to.length; + const toEnd = to3.length; for (; toStart < toEnd; ++toStart) { - if (!isPosixPathSeparator(to.charCodeAt(toStart))) + if (!isPosixPathSeparator2(to3.charCodeAt(toStart))) break; } const toLen = toEnd - toStart; @@ -5605,13 +6367,13 @@ function relative2(from, to) { for (; i <= length; ++i) { if (i === length) { if (toLen > length) { - if (isPosixPathSeparator(to.charCodeAt(toStart + i))) { - return to.slice(toStart + i + 1); + if (isPosixPathSeparator2(to3.charCodeAt(toStart + i))) { + return to3.slice(toStart + i + 1); } else if (i === 0) { - return to.slice(toStart + i); + return to3.slice(toStart + i); } } else if (fromLen > length) { - if (isPosixPathSeparator(from.charCodeAt(fromStart + i))) { + if (isPosixPathSeparator2(from.charCodeAt(fromStart + i))) { lastCommonSep = i; } else if (i === 0) { lastCommonSep = 0; @@ -5620,15 +6382,15 @@ function relative2(from, to) { break; } const fromCode = from.charCodeAt(fromStart + i); - const toCode = to.charCodeAt(toStart + i); + const toCode = to3.charCodeAt(toStart + i); if (fromCode !== toCode) break; - else if (isPosixPathSeparator(fromCode)) + else if (isPosixPathSeparator2(fromCode)) lastCommonSep = i; } let out = ""; for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) { - if (i === fromEnd || isPosixPathSeparator(from.charCodeAt(i))) { + if (i === fromEnd || isPosixPathSeparator2(from.charCodeAt(i))) { if (out.length === 0) out += ".."; else @@ -5636,222 +6398,216 @@ function relative2(from, to) { } } if (out.length > 0) - return out + to.slice(toStart + lastCommonSep); + return out + to3.slice(toStart + lastCommonSep); else { toStart += lastCommonSep; - if (isPosixPathSeparator(to.charCodeAt(toStart))) + if (isPosixPathSeparator2(to3.charCodeAt(toStart))) ++toStart; - return to.slice(toStart); + return to3.slice(toStart); } } -function toNamespacedPath2(path3) { - return path3; -} -function dirname2(path3) { - if (path3.length === 0) - return "."; - let end = -1; - let matchedNonSeparator = false; - for (let i = path3.length - 1; i >= 1; --i) { - if (isPosixPathSeparator(path3.charCodeAt(i))) { - if (matchedNonSeparator) { - end = i; - break; - } - } else { - matchedNonSeparator = true; - } - } - if (end === -1) { - return isPosixPathSeparator(path3.charCodeAt(0)) ? "/" : "."; + +// https://deno.land/std@0.217.0/path/posix/to_file_url.ts +function toFileUrl(path) { + if (!isAbsolute2(path)) { + throw new TypeError("Must be an absolute path."); } - return stripTrailingSeparators( - path3.slice(0, end), - isPosixPathSeparator + const url = new URL("file:///"); + url.pathname = encodeWhitespace( + path.replace(/%/g, "%25").replace(/\\/g, "%5C") ); + return url; } -function basename2(path3, suffix = "") { - assertPath(path3); - if (path3.length === 0) - return path3; - if (typeof suffix !== "string") { - throw new TypeError( - `Suffix must be a string. Received ${JSON.stringify(suffix)}` - ); - } - const lastSegment = lastPathSegment(path3, isPosixPathSeparator); - const strippedSegment = stripTrailingSeparators( - lastSegment, - isPosixPathSeparator - ); - return suffix ? stripSuffix(strippedSegment, suffix) : strippedSegment; + +// https://deno.land/std@0.217.0/path/posix/to_namespaced_path.ts +function toNamespacedPath(path) { + return path; } -function extname2(path3) { - assertPath(path3); - let startDot = -1; - let startPart = 0; - let end = -1; - let matchedSlash = true; - let preDotState = 0; - for (let i = path3.length - 1; i >= 0; --i) { - const code3 = path3.charCodeAt(i); - if (isPosixPathSeparator(code3)) { - if (!matchedSlash) { - startPart = i + 1; - break; - } - continue; - } - if (end === -1) { - matchedSlash = false; - end = i + 1; - } - if (code3 === CHAR_DOT) { - if (startDot === -1) - startDot = i; - else if (preDotState !== 1) - preDotState = 1; - } else if (startDot !== -1) { - preDotState = -1; - } - } - if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot - preDotState === 0 || // The (right-most) trimmed path component is exactly '..' - preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { - return ""; - } - return path3.slice(startDot, end); + +// https://deno.land/std@0.217.0/path/posix/common.ts +function common(paths, sep = SEPARATOR2) { + return _common(paths, sep); } -function format2(pathObject) { - if (pathObject === null || typeof pathObject !== "object") { - throw new TypeError( - `The "pathObject" argument must be of type Object. Received type ${typeof pathObject}` - ); - } - return _format("/", pathObject); + +// https://deno.land/std@0.217.0/path/posix/glob_to_regexp.ts +var constants2 = { + sep: "/+", + sepMaybe: "/*", + seps: ["/"], + globstar: "(?:[^/]*(?:/|$)+)*", + wildcard: "[^/]*", + escapePrefix: "\\" +}; +function globToRegExp2(glob, options = {}) { + return _globToRegExp(constants2, glob, options); } -function parse2(path3) { - assertPath(path3); - const ret = { root: "", dir: "", base: "", ext: "", name: "" }; - if (path3.length === 0) - return ret; - const isAbsolute4 = isPosixPathSeparator(path3.charCodeAt(0)); - let start; - if (isAbsolute4) { - ret.root = "/"; - start = 1; - } else { - start = 0; + +// https://deno.land/std@0.217.0/path/posix/normalize_glob.ts +function normalizeGlob2(glob, { globstar = false } = {}) { + if (glob.match(/\0/g)) { + throw new Error(`Glob contains invalid characters: "${glob}"`); + } + if (!globstar) { + return normalize2(glob); + } + const s = SEPARATOR_PATTERN2.source; + const badParentPattern = new RegExp( + `(?<=(${s}|^)\\*\\*${s})\\.\\.(?=${s}|$)`, + "g" + ); + return normalize2(glob.replace(badParentPattern, "\0")).replace(/\0/g, ".."); +} + +// https://deno.land/std@0.217.0/path/posix/join_globs.ts +function joinGlobs(globs, { extended = true, globstar = false } = {}) { + if (!globstar || globs.length === 0) { + return join2(...globs); } - let startDot = -1; - let startPart = 0; - let end = -1; - let matchedSlash = true; - let i = path3.length - 1; - let preDotState = 0; - for (; i >= start; --i) { - const code3 = path3.charCodeAt(i); - if (isPosixPathSeparator(code3)) { - if (!matchedSlash) { - startPart = i + 1; - break; - } - continue; - } - if (end === -1) { - matchedSlash = false; - end = i + 1; - } - if (code3 === CHAR_DOT) { - if (startDot === -1) - startDot = i; - else if (preDotState !== 1) - preDotState = 1; - } else if (startDot !== -1) { - preDotState = -1; + if (globs.length === 0) + return "."; + let joined; + for (const glob of globs) { + const path = glob; + if (path.length > 0) { + if (!joined) + joined = path; + else + joined += `${SEPARATOR2}${path}`; } } - if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot - preDotState === 0 || // The (right-most) trimmed path component is exactly '..' - preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { - if (end !== -1) { - if (startPart === 0 && isAbsolute4) { - ret.base = ret.name = path3.slice(1, end); - } else { - ret.base = ret.name = path3.slice(startPart, end); - } - } - ret.base = ret.base || "/"; - } else { - if (startPart === 0 && isAbsolute4) { - ret.name = path3.slice(1, startDot); - ret.base = path3.slice(1, end); - } else { - ret.name = path3.slice(startPart, startDot); - ret.base = path3.slice(startPart, end); - } - ret.ext = path3.slice(startDot, end); + if (!joined) + return "."; + return normalizeGlob2(joined, { extended, globstar }); +} + +// https://deno.land/std@0.217.0/path/_os.ts +var osType = (() => { + const { Deno: Deno4 } = globalThis; + if (typeof Deno4?.build?.os === "string") { + return Deno4.build.os; } - if (startPart > 0) { - ret.dir = stripTrailingSeparators( - path3.slice(0, startPart - 1), - isPosixPathSeparator - ); - } else if (isAbsolute4) - ret.dir = "/"; - return ret; + const { navigator } = globalThis; + if (navigator?.appVersion?.includes?.("Win")) { + return "windows"; + } + return "linux"; +})(); +var isWindows = osType === "windows"; + +// https://deno.land/std@0.217.0/path/basename.ts +function basename3(path, suffix = "") { + return isWindows ? basename(path, suffix) : basename2(path, suffix); } -function fromFileUrl2(url) { - url = url instanceof URL ? url : new URL(url); - if (url.protocol != "file:") { - throw new TypeError("Must be a file URL."); + +// https://deno.land/std@0.217.0/path/constants.ts +var SEPARATOR_PATTERN3 = isWindows ? /[\\/]+/ : /\/+/; + +// https://deno.land/std@0.217.0/path/dirname.ts +function dirname3(path) { + return isWindows ? dirname(path) : dirname2(path); +} + +// https://deno.land/std@0.217.0/path/join.ts +function join3(...paths) { + return isWindows ? join(...paths) : join2(...paths); +} + +// https://deno.land/std@0.217.0/path/parse.ts +function parse3(path) { + return isWindows ? parse(path) : parse2(path); +} + +// https://deno.land/std@0.217.0/path/resolve.ts +function resolve3(...pathSegments) { + return isWindows ? resolve(...pathSegments) : resolve2(...pathSegments); +} + +// https://deno.land/std@0.217.0/path/glob_to_regexp.ts +function globToRegExp3(glob, options = {}) { + return options.os === "windows" || !options.os && isWindows ? globToRegExp(glob, options) : globToRegExp2(glob, options); +} + +// src/version.ts +async function getVersion() { + let version = getArchiveVersion(); + if (version) + return version; + const url = new URL(Deno.mainModule); + if (url.protocol === "file:") { + version = await getLocalVersion(dirname3(url.pathname)); + if (version) + return version; + } else if (url.protocol === "https:" || url.protocol === "http:") { + version = getRemoteVersion(url); + if (version) + return version; + } + return url.href; +} +async function getLocalVersion(path) { + const p3 = Deno.run({ + // safe.directory setting so we could still operate from another user + cmd: ["git", "-C", path, "-c", "safe.directory=*", "describe", "--tags", "--always"], + stdout: "piped" + }); + const description = new TextDecoder().decode(await p3.output()).trim(); + p3.close(); + return description; +} +function getRemoteVersion(url) { + if (url.hostname === "deno.land") { + return url.pathname.split("@")[1].split("/")[0]; + } else if (url.hostname === "raw.githubusercontent.com") { + return url.pathname.split("/bids-validator/")[1]; } - return decodeURIComponent( - url.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25") - ); + return void 0; } -function toFileUrl2(path3) { - if (!isAbsolute2(path3)) { - throw new TypeError("Must be an absolute path."); +function getArchiveVersion() { + if (!git_meta_default.description.startsWith("$Format:")) { + return git_meta_default.description; } - const url = new URL("file:///"); - url.pathname = encodeWhitespace( - path3.replace(/%/g, "%25").replace(/\\/g, "%5C") - ); - return url; + return void 0; } -// http-url:https://deno.land/std@0.177.0/path/separator.ts -var SEP = isWindows ? "\\" : "/"; - -// http-url:https://deno.land/std@0.177.0/path/glob.ts -var path = isWindows ? win32_exports : posix_exports; -var { join: join3, normalize: normalize3 } = path; - -// http-url:https://deno.land/std@0.177.0/path/mod.ts -var path2 = isWindows ? win32_exports : posix_exports; -var { - basename: basename3, - delimiter: delimiter3, - dirname: dirname3, - extname: extname3, - format: format3, - fromFileUrl: fromFileUrl3, - isAbsolute: isAbsolute3, - join: join4, - normalize: normalize4, - parse: parse3, - relative: relative3, - resolve: resolve3, - sep: sep3, - toFileUrl: toFileUrl3, - toNamespacedPath: toNamespacedPath3 -} = path2; - -// src/types/filetree.ts +// src/setup/options.ts +var validateCommand = new Command().name("bids-validator").type("debugLevel", new EnumType(LogLevelNames)).description( + "This tool checks if a dataset in a given directory is compatible with the Brain Imaging Data Structure specification. To learn more about Brain Imaging Data Structure visit http://bids.neuroimaging.io" +).arguments("").option("--json", "Output machine readable JSON").option( + "-s, --schema ", + "Specify a schema version to use for validation", + { + default: "latest" + } +).option("-v, --verbose", "Log more extensive information about issues").option( + "--ignoreNiftiHeaders", + "Disregard NIfTI header content during validation" +).option("--debug ", "Enable debug output", { + default: "ERROR" +}).option( + "--filenameMode", + "Enable filename checks for newline separated filenames read from stdin" +); +async function parseOptions(argumentOverride = Deno.args) { + const version = await getVersion(); + const { args, options } = await validateCommand.version(version).parse(argumentOverride); + return { + datasetPath: args[0], + ...options, + debug: options.debug + }; +} + +// src/types/filetree.ts var FileTree = class { - constructor(path3, name, parent) { - this.path = path3; + // Relative path to this FileTree location + path; + // Name of this directory level + name; + files; + directories; + parent; + constructor(path, name, parent) { + this.path = path; this.files = []; this.directories = []; this.name = name; @@ -5861,9 +6617,9 @@ var FileTree = class { if (parts.length === 0) { return false; } else if (parts.length === 1) { - return this.files.some((x) => x.name === parts[0]); + return this.files.some((x2) => x2.name === parts[0]) || this.directories.some((x2) => x2.name === parts[0]); } else if (parts.length > 1) { - const nextDir = this.directories.find((x) => x.name === parts[0]); + const nextDir = this.directories.find((x2) => x2.name === parts[0]); if (nextDir) { return nextDir.contains(parts.slice(1, parts.length)); } else { @@ -5887,420 +6643,8 @@ async function requestPermission(permission) { } var requestReadPermission = () => requestPermission(globalRead); -// src/deps/ignore.ts -function makeArray(subject) { - return Array.isArray(subject) ? subject : [subject]; -} -var EMPTY = ""; -var SPACE = " "; -var ESCAPE = "\\"; -var REGEX_TEST_BLANK_LINE = /^\s+$/; -var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/; -var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; -var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; -var REGEX_SPLITALL_CRLF = /\r?\n/g; -var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; -var SLASH = "/"; -var TMP_KEY_IGNORE = "node-ignore"; -if (typeof Symbol !== "undefined") { - TMP_KEY_IGNORE = Symbol.for("node-ignore"); -} -var KEY_IGNORE = TMP_KEY_IGNORE; -var define = (object, key, value) => Object.defineProperty(object, key, { value }); -var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; -var RETURN_FALSE = () => false; -var sanitizeRange = (range) => range.replace( - REGEX_REGEXP_RANGE, - (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : ( - // Invalid range (out of order) which is ok for gitignore rules but - // fatal for JavaScript regular expression, so eliminate it. - EMPTY - ) -); -var cleanRangeBackSlash = (slashes) => { - const { length } = slashes; - return slashes.slice(0, length - length % 2); -}; -var REPLACERS = [ - // > Trailing spaces are ignored unless they are quoted with backslash ("\") - [ - // (a\ ) -> (a ) - // (a ) -> (a) - // (a \ ) -> (a ) - /\\?\s+$/, - (match) => match.indexOf("\\") === 0 ? SPACE : EMPTY - ], - // replace (\ ) with ' ' - [/\\\s/g, () => SPACE], - // Escape metacharacters - // which is written down by users but means special for regular expressions. - // > There are 12 characters with special meanings: - // > - the backslash \, - // > - the caret ^, - // > - the dollar sign $, - // > - the period or dot ., - // > - the vertical bar or pipe symbol |, - // > - the question mark ?, - // > - the asterisk or star *, - // > - the plus sign +, - // > - the opening parenthesis (, - // > - the closing parenthesis ), - // > - and the opening square bracket [, - // > - the opening curly brace {, - // > These special characters are often called "metacharacters". - [/[\\$.|*+(){^]/g, (match) => `\\${match}`], - [ - // > a question mark (?) matches a single character - /(?!\\)\?/g, - () => "[^/]" - ], - // leading slash - [ - // > A leading slash matches the beginning of the pathname. - // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". - // A leading slash matches the beginning of the pathname - /^\//, - () => "^" - ], - // replace special metacharacter slash after the leading slash - [/\//g, () => "\\/"], - [ - // > A leading "**" followed by a slash means match in all directories. - // > For example, "**/foo" matches file or directory "foo" anywhere, - // > the same as pattern "foo". - // > "**/foo/bar" matches file or directory "bar" anywhere that is directly - // > under directory "foo". - // Notice that the '*'s have been replaced as '\\*' - /^\^*\\\*\\\*\\\//, - // '**/foo' <-> 'foo' - () => "^(?:.*\\/)?" - ], - // starting - [ - // there will be no leading '/' - // (which has been replaced by section "leading slash") - // If starts with '**', adding a '^' to the regular expression also works - /^(?=[^^])/, - function startingReplacer() { - return !/\/(?!$)/.test(this) ? ( - // > Prior to 2.22.1 - // > If the pattern does not contain a slash /, - // > Git treats it as a shell glob pattern - // Actually, if there is only a trailing slash, - // git also treats it as a shell glob pattern - // After 2.22.1 (compatible but clearer) - // > If there is a separator at the beginning or middle (or both) - // > of the pattern, then the pattern is relative to the directory - // > level of the particular .gitignore file itself. - // > Otherwise the pattern may also match at any level below - // > the .gitignore level. - "(?:^|\\/)" - ) : ( - // > Otherwise, Git treats the pattern as a shell glob suitable for - // > consumption by fnmatch(3) - "^" - ); - } - ], - // two globstars - [ - // Use lookahead assertions so that we could match more than one `'/**'` - /\\\/\\\*\\\*(?=\\\/|$)/g, - // Zero, one or several directories - // should not use '*', or it will be replaced by the next replacer - // Check if it is not the last `'/**'` - (_, index, str) => index + 6 < str.length ? ( - // case: /**/ - // > A slash followed by two consecutive asterisks then a slash matches - // > zero or more directories. - // > For example, "a/**/b" matches "a/b", "a/x/b", "a/x/y/b" and so on. - // '/**/' - "(?:\\/[^\\/]+)*" - ) : ( - // case: /** - // > A trailing `"/**"` matches everything inside. - // #21: everything inside but it should not include the current folder - "\\/.+" - ) - ], - // normal intermediate wildcards - [ - // Never replace escaped '*' - // ignore rule '\*' will match the path '*' - // 'abc.*/' -> go - // 'abc.*' -> skip this rule, - // coz trailing single wildcard will be handed by [trailing wildcard] - /(^|[^\\]+)(\\\*)+(?=.+)/g, - // '*.js' matches '.js' - // '*.js' doesn't match 'abc' - (_, p1, p2) => { - const unescaped = p2.replace(/\\\*/g, "[^\\/]*"); - return p1 + unescaped; - } - ], - [ - // unescape, revert step 3 except for back slash - // For example, if a user escape a '\\*', - // after step 3, the result will be '\\\\\\*' - /\\\\\\(?=[$.|*+(){^])/g, - () => ESCAPE - ], - [ - // '\\\\' -> '\\' - /\\\\/g, - () => ESCAPE - ], - [ - // > The range notation, e.g. [a-zA-Z], - // > can be used to match one of the characters in a range. - // `\` is escaped by step 3 - /(\\)?\[([^\]/]*?)(\\*)($|\])/g, - (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE ? ( - // '\\[bar]' -> '\\\\[bar\\]' - `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` - ) : close === "]" ? endEscape.length % 2 === 0 ? ( - // A normal case, and it is a range notation - // '[bar]' - // '[bar\\\\]' - `[${sanitizeRange(range)}${endEscape}]` - ) : ( - // Invalid range notaton - // '[bar\\]' -> '[bar\\\\]' - "[]" - ) : "[]" - ], - // ending - [ - // 'js' will not match 'js.' - // 'ab' will not match 'abc' - /(?:[^*])$/, - // WTF! - // https://git-scm.com/docs/gitignore - // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) - // which re-fixes #24, #38 - // > If there is a separator at the end of the pattern then the pattern - // > will only match directories, otherwise the pattern can match both - // > files and directories. - // 'js*' will not match 'a.js' - // 'js/' will not match 'a.js' - // 'js' will match 'a.js' and 'a.js/' - (match) => /\/$/.test(match) ? ( - // foo/ will not match 'foo' - `${match}$` - ) : ( - // foo matches 'foo' and 'foo/' - `${match}(?=$|\\/$)` - ) - ], - // trailing wildcard - [ - /(\^|\\\/)?\\\*$/, - (_, p1) => { - const prefix = p1 ? ( - // '\^': - // '/*' does not match EMPTY - // '/*' does not match everything - // '\\\/': - // 'abc/*' does not match 'abc/' - `${p1}[^/]+` - ) : ( - // 'a*' matches 'a' - // 'a*' matches 'aa' - "[^/]*" - ); - return `${prefix}(?=$|\\/$)`; - } - ] -]; -var regexCache = /* @__PURE__ */ Object.create(null); -var makeRegex = (pattern, ignoreCase) => { - let source = regexCache[pattern]; - if (!source) { - source = REPLACERS.reduce( - (prev, current) => prev.replace(current[0], current[1].bind(pattern)), - pattern - ); - regexCache[pattern] = source; - } - return ignoreCase ? new RegExp(source, "i") : new RegExp(source); -}; -var isString = (subject) => typeof subject === "string"; -var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && // > A line starting with # serves as a comment. -pattern.indexOf("#") !== 0; -var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); -var IgnoreRule = class { - constructor(origin, pattern, negative, regex) { - this.origin = origin; - this.pattern = pattern; - this.negative = negative; - this.regex = regex; - } -}; -var createRule = (pattern, ignoreCase) => { - const origin = pattern; - let negative = false; - if (pattern.indexOf("!") === 0) { - negative = true; - pattern = pattern.substr(1); - } - pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); - const regex = makeRegex(pattern, ignoreCase); - return new IgnoreRule(origin, pattern, negative, regex); -}; -var throwError = (message, Ctor) => { - throw new Ctor(message); -}; -var checkPath = (path3, originalPath, doThrow) => { - if (!isString(path3)) { - return doThrow( - `path must be a string, but got \`${originalPath}\``, - TypeError - ); - } - if (!path3) { - return doThrow(`path must not be empty`, TypeError); - } - if (checkPath.isNotRelative(path3)) { - const r = "`path.relative()`d"; - return doThrow( - `path should be a ${r} string, but got "${originalPath}"`, - RangeError - ); - } - return true; -}; -var isNotRelative = (path3) => REGEX_TEST_INVALID_PATH.test(path3); -checkPath.isNotRelative = isNotRelative; -checkPath.convert = (p) => p; -var Ignore = class { - constructor({ - ignorecase = true, - ignoreCase = ignorecase, - allowRelativePaths = false - } = {}) { - define(this, KEY_IGNORE, true); - this._rules = []; - this._ignoreCase = ignoreCase; - this._allowRelativePaths = allowRelativePaths; - this._initCache(); - } - _initCache() { - this._ignoreCache = /* @__PURE__ */ Object.create(null); - this._testCache = /* @__PURE__ */ Object.create(null); - } - _addPattern(pattern) { - if (pattern && pattern[KEY_IGNORE]) { - this._rules = this._rules.concat(pattern._rules); - this._added = true; - return; - } - if (checkPattern(pattern)) { - const rule = createRule(pattern, this._ignoreCase); - this._added = true; - this._rules.push(rule); - } - } - // @param {Array | string | Ignore} pattern - add(pattern) { - this._added = false; - makeArray(isString(pattern) ? splitPattern(pattern) : pattern).forEach( - this._addPattern, - this - ); - if (this._added) { - this._initCache(); - } - return this; - } - // legacy - addPattern(pattern) { - return this.add(pattern); - } - // | ignored : unignored - // negative | 0:0 | 0:1 | 1:0 | 1:1 - // -------- | ------- | ------- | ------- | -------- - // 0 | TEST | TEST | SKIP | X - // 1 | TESTIF | SKIP | TEST | X - // - SKIP: always skip - // - TEST: always test - // - TESTIF: only test if checkUnignored - // - X: that never happen - // @param {boolean} whether should check if the path is unignored, - // setting `checkUnignored` to `false` could reduce additional - // path matching. - // @returns {TestResult} true if a file is ignored - _testOne(path3, checkUnignored) { - let ignored = false; - let unignored = false; - this._rules.forEach((rule) => { - const { negative } = rule; - if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { - return; - } - const matched = rule.regex.test(path3); - if (matched) { - ignored = !negative; - unignored = negative; - } - }); - return { - ignored, - unignored - }; - } - // @returns {TestResult} - _test(originalPath, cache, checkUnignored, slices) { - const path3 = originalPath && // Supports nullable path - checkPath.convert(originalPath); - checkPath( - path3, - originalPath, - this._allowRelativePaths ? RETURN_FALSE : throwError - ); - return this._t(path3, cache, checkUnignored, slices); - } - _t(path3, cache, checkUnignored, slices) { - if (path3 in cache) { - return cache[path3]; - } - if (!slices) { - slices = path3.split(SLASH); - } - slices.pop(); - if (!slices.length) { - return cache[path3] = this._testOne(path3, checkUnignored); - } - const parent = this._t( - slices.join(SLASH) + SLASH, - cache, - checkUnignored, - slices - ); - return cache[path3] = parent.ignored ? ( - // > It is not possible to re-include a file if a parent directory of - // > that file is excluded. - parent - ) : this._testOne(path3, checkUnignored); - } - ignores(path3) { - return this._test(path3, this._ignoreCache, false).ignored; - } - createFilter() { - return (path3) => !this.ignores(path3); - } - filter(paths) { - return makeArray(paths).filter(this.createFilter()); - } - // @returns {TestResult} - test(path3) { - return this._test(path3, this._testCache, true); - } -}; -var ignore = (options) => new Ignore(options); -var isPathValid = (path3) => checkPath(path3 && checkPath.convert(path3), path3, RETURN_FALSE); -ignore.isPathValid = isPathValid; - // src/files/ignore.ts +var import_npm_ignore_5_2 = __toESM(require_ignore()); async function readBidsIgnore(file) { const value = await file.text(); if (value) { @@ -6312,8 +6656,7 @@ async function readBidsIgnore(file) { } var defaultIgnores = [ ".git**", - ".datalad/", - ".reproman/", + ".*", "sourcedata/", "code/", "stimuli/", @@ -6324,7 +6667,7 @@ var defaultIgnores = [ var FileIgnoreRules = class { #ignore; constructor(config) { - this.#ignore = ignore({ allowRelativePaths: true }); + this.#ignore = (0, import_npm_ignore_5_2.default)(); this.#ignore.add(defaultIgnores); this.#ignore.add(config); } @@ -6332,8 +6675,8 @@ var FileIgnoreRules = class { this.#ignore.add(config); } /** Test if a dataset relative path should be ignored given configured rules */ - test(path3) { - return this.#ignore.ignores(path3); + test(path) { + return this.#ignore.ignores(path.slice(1, path.length)); } }; @@ -6346,12 +6689,15 @@ var UnicodeDecodeError = class extends Error { }; var BIDSFileDeno = class { #ignore; + name; + path; + parent; #fileInfo; #datasetAbsPath; - constructor(datasetPath, path3, ignore2) { + constructor(datasetPath, path, ignore2, parent) { this.#datasetAbsPath = datasetPath; - this.path = path3; - this.name = basename3(path3); + this.path = path; + this.name = basename3(path); this.#ignore = ignore2; try { this.#fileInfo = Deno.statSync(this._getPath()); @@ -6360,9 +6706,10 @@ var BIDSFileDeno = class { this.#fileInfo = Deno.lstatSync(this._getPath()); } } + this.parent = parent ?? new FileTree("", "/", void 0); } _getPath() { - return join4(this.#datasetAbsPath, this.path); + return join3(this.#datasetAbsPath, this.path); } get size() { return this.#fileInfo ? this.#fileInfo.size : -1; @@ -6421,13 +6768,14 @@ async function _readFileTree(rootPath, relativePath, ignore2, parent) { await requestReadPermission(); const name = basename3(relativePath); const tree = new FileTree(relativePath, name, parent); - for await (const dirEntry of Deno.readDir(join4(rootPath, relativePath))) { + for await (const dirEntry of Deno.readDir(join3(rootPath, relativePath))) { if (dirEntry.isFile || dirEntry.isSymlink) { const file = new BIDSFileDeno( rootPath, - join4(relativePath, dirEntry.name), + mod_exports.join(relativePath, dirEntry.name), ignore2 ); + file.parent = tree; if (dirEntry.name === ".bidsignore") { ignore2.add(await readBidsIgnore(file)); } @@ -6436,7 +6784,7 @@ async function _readFileTree(rootPath, relativePath, ignore2, parent) { if (dirEntry.isDirectory) { const dirTree = await _readFileTree( rootPath, - join4(relativePath, dirEntry.name), + mod_exports.join(relativePath, dirEntry.name), ignore2, tree ); @@ -6454,17 +6802,17 @@ function readFileTree(rootPath) { var BIDSFileBrowser = class { #ignore; #file; - constructor(file, ignore2) { + name; + path; + parent; + constructor(file, ignore2, parent) { this.#file = file; this.#ignore = ignore2; - } - get name() { - return this.#file.name; - } - get path() { + this.name = file.name; const relativePath = this.#file.webkitRelativePath; const prefixLength = relativePath.indexOf("/"); - return relativePath.substring(prefixLength); + this.path = relativePath.substring(prefixLength); + this.parent = parent ?? new FileTree("", "/", void 0); } get size() { return this.#file.size; @@ -6486,22 +6834,22 @@ function fileListToTree(files) { const ignore2 = new FileIgnoreRules([]); const tree = new FileTree("", "/", void 0); for (const f of files) { - const file = new BIDSFileBrowser(f, ignore2); + const file = new BIDSFileBrowser(f, ignore2, tree); const fPath = parse3(file.path); if (fPath.dir === "/") { tree.files.push(file); } else { - const levels = fPath.dir.split(SEP).slice(1); + const levels = fPath.dir.split(SEPARATOR_PATTERN3).slice(1); let currentLevelTree = tree; for (const level of levels) { - const exists3 = currentLevelTree.directories.find( - (d) => d.name === level + const exists2 = currentLevelTree.directories.find( + (d5) => d5.name === level ); - if (exists3) { - currentLevelTree = exists3; + if (exists2) { + currentLevelTree = exists2; } else { const newTree = new FileTree( - join4(currentLevelTree.path, level), + mod_exports.join(currentLevelTree.path, level), level, currentLevelTree ); @@ -6509,6 +6857,7 @@ function fileListToTree(files) { currentLevelTree = newTree; } } + file.parent = currentLevelTree; currentLevelTree.files.push(file); } } @@ -6516,22 +6865,31 @@ function fileListToTree(files) { } // src/schema/expressionLanguage.ts -function exists2(list, rule = "dataset") { +function exists(list, rule = "dataset") { + if (list == null) { + return 0; + } const prefix = []; + const fileTree = rule == "file" ? this.file.parent : this.fileTree; if (rule == "stimuli") { prefix.push("stimuli"); } else if (rule == "subject") { - prefix.push("sub-" + this.entities.subject); + prefix.push("sub-" + this.entities.sub); } if (!Array.isArray(list)) { list = [list]; } if (rule == "bids-uri") { - return list.length; + return list.filter((x2) => { + if (x2.startsWith("bids:")) { + return true; + } + return false; + }).length; } else { - return list.filter((x) => { - const parts = prefix.concat(x.split("/")); - return this.fileTree.contains(parts); + return list.filter((x2) => { + const parts = prefix.concat(x2.split("/")); + return fileTree.contains(parts); }).length; } } @@ -6540,14 +6898,14 @@ var expressionFunctions = { const index = list.indexOf(item); return index != -1 ? index : null; }, - intersects: (a, b) => { - if (!Array.isArray(a)) { - a = [a]; + intersects: (a3, b2) => { + if (!Array.isArray(a3)) { + a3 = [a3]; } - if (!Array.isArray(b)) { - b = [b]; + if (!Array.isArray(b2)) { + b2 = [b2]; } - return a.some((x) => b.includes(x)); + return a3.some((x2) => b2.includes(x2)); }, match: (target, regex) => { let re = RegExp(regex); @@ -6557,16 +6915,16 @@ var expressionFunctions = { if (Array.isArray(operand)) { return "array"; } - if (typeof operand === "undefined") { + if (typeof operand === "undefined" || operand === null) { return "null"; } return typeof operand; }, min: (list) => { - return Math.min(...list); + return list != null ? Math.min(...list.map(Number).filter((x2) => !isNaN(x2))) : null; }, max: (list) => { - return Math.max(...list); + return list != null ? Math.max(...list.map(Number).filter((x2) => !isNaN(x2))) : null; }, length: (list) => { if (Array.isArray(list) || typeof list == "string") { @@ -6575,15 +6933,31 @@ var expressionFunctions = { return null; }, count: (list, val) => { - return list.filter((x) => x === val).length; + return list.filter((x2) => x2 === val).length; }, - exists: exists2, + exists, substr: (arg, start, end) => { + if (arg == null || start == null || end == null) { + return null; + } return arg.substr(start, end - start); }, - sorted: (list) => { - list.sort(); - return list; + sorted: (list, method = "auto") => { + const cmp = { + numeric: (a3, b2) => { + return Number(a3) - Number(b2); + }, + lexical: (a3, b2) => { + return String(a3).localeCompare(String(b2)); + }, + auto: (a3, b2) => { + return +(a3 > b2) - +(a3 < b2); + } + }[method]; + return list.toSorted(cmp); + }, + allequal: (a3, b2) => { + return a3 != null && b2 != null && a3.length === b2.length && a3.every((v4, i) => v4 === b2[i]); } }; @@ -6591,7 +6965,7 @@ var expressionFunctions = { function setupLogging(level) { setup({ handlers: { - console: new handlers.ConsoleHandler(level) + console: new ConsoleHandler(level) }, loggers: { "@bids/validator": { @@ -6609,7 +6983,7 @@ function parseStack(stack) { } var loggerProxyHandler = { // deno-lint-ignore no-explicit-any - get: function(_, prop) { + get: function(_3, prop) { const logger2 = getLogger("@bids/validator"); const stack = new Error().stack; if (stack) { @@ -6623,3155 +6997,91564 @@ var loggerProxyHandler = { var logger = new Proxy(getLogger("@bids/validator"), loggerProxyHandler); // src/utils/memoize.ts -var memoize = (fn) => { - const cache = /* @__PURE__ */ new Map(); +var memoize = (fn4) => { + const cache2 = /* @__PURE__ */ new Map(); const cached = function(val) { - return cache.has(val) ? cache.get(val) : cache.set(val, fn.call(this, val)) && cache.get(val); + return cache2.has(val) ? cache2.get(val) : cache2.set(val, fn4.call(this, val)) && cache2.get(val); }; - cached.cache = cache; + cached.cache = cache2; return cached; }; - -// src/schema/applyRules.ts -function applyRules(schema, context, rootSchema, schemaPath) { - if (!rootSchema) { - rootSchema = schema; - } - if (!schemaPath) { - schemaPath = "schema"; - } - Object.assign(context, expressionFunctions); - context.exists.bind(context); - for (const key in schema) { - if (!(schema[key].constructor === Object)) { - continue; +function filememoizeAsync(fn4) { + const cache2 = /* @__PURE__ */ new Map(); + const cached = async function(file) { + let subcache = cache2.get(file.parent.path); + if (!subcache) { + subcache = /* @__PURE__ */ new Map(); + cache2.set(file.parent.path, subcache); } - if ("selectors" in schema[key]) { - evalRule( - schema[key], - context, - rootSchema, - `${schemaPath}.${key}` - ); - } else if (schema[key].constructor === Object) { - applyRules( - schema[key], - context, - rootSchema, - `${schemaPath}.${key}` - ); + let val = subcache.get(file); + if (!val) { + val = await fn4.call(this, file); + subcache.set(file, val); } - } - return Promise.resolve(); -} -var evalConstructor = (src) => new Function("context", `with (context) { return ${src} }`); -var safeHas = () => true; -var safeGet = (target, prop) => prop === Symbol.unscopables ? void 0 : target[prop]; -var memoizedEvalConstructor = memoize(evalConstructor); -function evalCheck(src, context) { - const test = memoizedEvalConstructor(src); - const safeContext = new Proxy(context, { has: safeHas, get: safeGet }); - try { - return test(safeContext); - } catch (error2) { - logger.debug(error2); - return false; - } + return val; + }; + cached.cache = cache2; + return cached; } -var evalMap = { - checks: evalRuleChecks, - columns: evalColumns, - additional_columns: evalAdditionalColumns, - initial_columns: evalInitialColumns, - index_columns: evalIndexColumns, - fields: evalJsonCheck + +// https://esm.sh/v135/fast-deep-equal@3.1.3/denonext/fast-deep-equal.mjs +var fast_deep_equal_exports = {}; +__export(fast_deep_equal_exports, { + default: () => q +}); +var d = Object.create; +var l = Object.defineProperty; +var v = Object.getOwnPropertyDescriptor; +var y = Object.getOwnPropertyNames; +var _ = Object.getPrototypeOf; +var g = Object.prototype.hasOwnProperty; +var m = (e, r) => () => (r || e((r = { exports: {} }).exports, r), r.exports); +var x = (e, r) => { + for (var t in r) + l(e, t, { get: r[t], enumerable: true }); }; -function evalRule(rule, context, schema, schemaPath) { - if (rule.selectors && !mapEvalCheck(rule.selectors, context)) { - return; - } - Object.keys(rule).filter((key) => key in evalMap).map((key) => { - evalMap[key](rule, context, schema, schemaPath); - }); -} -function mapEvalCheck(statements, context) { - return statements.every((x) => evalCheck(x, context)); -} -function evalRuleChecks(rule, context, schema, schemaPath) { - if (rule.checks && !mapEvalCheck(rule.checks, context)) { - if (rule.issue?.code && rule.issue?.message) { - context.issues.add({ - key: rule.issue.code, - reason: rule.issue.message, - files: [{ ...context.file, evidence: schemaPath }], - severity: rule.issue.level - }); - } else { - context.issues.addNonSchemaIssue("CHECK_ERROR", [ - { ...context.file, evidence: schemaPath } - ]); +var c = (e, r, t, o) => { + if (r && typeof r == "object" || typeof r == "function") + for (let f of y(r)) + !g.call(e, f) && f !== t && l(e, f, { get: () => r[f], enumerable: !(o = v(r, f)) || o.enumerable }); + return e; +}; +var n = (e, r, t) => (c(e, r, "default"), t && c(t, r, "default")); +var O = (e, r, t) => (t = e != null ? d(_(e)) : {}, c(r || !e || !e.__esModule ? l(t, "default", { value: e, enumerable: true }) : t, e)); +var p = m((E4, j3) => { + "use strict"; + j3.exports = function e(r, t) { + if (r === t) + return true; + if (r && t && typeof r == "object" && typeof t == "object") { + if (r.constructor !== t.constructor) + return false; + var o, f, s; + if (Array.isArray(r)) { + if (o = r.length, o != t.length) + return false; + for (f = o; f-- !== 0; ) + if (!e(r[f], t[f])) + return false; + return true; + } + if (r.constructor === RegExp) + return r.source === t.source && r.flags === t.flags; + if (r.valueOf !== Object.prototype.valueOf) + return r.valueOf() === t.valueOf(); + if (r.toString !== Object.prototype.toString) + return r.toString() === t.toString(); + if (s = Object.keys(r), o = s.length, o !== Object.keys(t).length) + return false; + for (f = o; f-- !== 0; ) + if (!Object.prototype.hasOwnProperty.call(t, s[f])) + return false; + for (f = o; f-- !== 0; ) { + var i = s[f]; + if (!e(r[i], t[i])) + return false; + } + return true; + } + return r !== r && t !== t; + }; +}); +var u = {}; +x(u, { default: () => q }); +var S = O(p()); +n(u, O(p())); +var { default: a, ...A } = S; +var q = a !== void 0 ? a : A; + +// https://esm.sh/v135/json-schema-traverse@1.0.0/denonext/json-schema-traverse.mjs +var json_schema_traverse_exports = {}; +__export(json_schema_traverse_exports, { + arrayKeywords: () => F, + default: () => Q, + keywords: () => E, + propsKeywords: () => G, + skipKeywords: () => H +}); +var L = Object.create; +var v2 = Object.defineProperty; +var M = Object.getOwnPropertyDescriptor; +var N = Object.getOwnPropertyNames; +var $ = Object.getPrototypeOf; +var z = Object.prototype.hasOwnProperty; +var B = (r, e) => () => (e || r((e = { exports: {} }).exports, e), e.exports); +var C = (r, e) => { + for (var t in e) + v2(r, t, { get: e[t], enumerable: true }); +}; +var y2 = (r, e, t, i) => { + if (e && typeof e == "object" || typeof e == "function") + for (let u2 of N(e)) + !z.call(r, u2) && u2 !== t && v2(r, u2, { get: () => e[u2], enumerable: !(i = M(e, u2)) || i.enumerable }); + return r; +}; +var d2 = (r, e, t) => (y2(r, e, "default"), t && y2(t, e, "default")); +var A2 = (r, e, t) => (t = r != null ? L($(r)) : {}, y2(e || !r || !r.__esModule ? v2(t, "default", { value: r, enumerable: true }) : t, r)); +var w = B((T2, O4) => { + "use strict"; + var o = O4.exports = function(r, e, t) { + typeof e == "function" && (t = e, e = {}), t = e.cb || t; + var i = typeof t == "function" ? t : t.pre || function() { + }, u2 = t.post || function() { + }; + p3(e, i, u2, r, "", r); + }; + o.keywords = { additionalItems: true, items: true, contains: true, additionalProperties: true, propertyNames: true, not: true, if: true, then: true, else: true }; + o.arrayKeywords = { items: true, allOf: true, anyOf: true, oneOf: true }; + o.propsKeywords = { $defs: true, definitions: true, properties: true, patternProperties: true, dependencies: true }; + o.skipKeywords = { default: true, enum: true, const: true, required: true, maximum: true, minimum: true, exclusiveMaximum: true, exclusiveMinimum: true, multipleOf: true, maxLength: true, minLength: true, pattern: true, format: true, maxItems: true, minItems: true, uniqueItems: true, maxProperties: true, minProperties: true }; + function p3(r, e, t, i, u2, l2, x2, K2, _3, g2) { + if (i && typeof i == "object" && !Array.isArray(i)) { + e(i, u2, l2, x2, K2, _3, g2); + for (var n2 in i) { + var f = i[n2]; + if (Array.isArray(f)) { + if (n2 in o.arrayKeywords) + for (var s = 0; s < f.length; s++) + p3(r, e, t, f[s], u2 + "/" + n2 + "/" + s, l2, u2, n2, i, s); + } else if (n2 in o.propsKeywords) { + if (f && typeof f == "object") + for (var m3 in f) + p3(r, e, t, f[m3], u2 + "/" + n2 + "/" + D(m3), l2, u2, n2, i, m3); + } else + (n2 in o.keywords || r.allKeys && !(n2 in o.skipKeywords)) && p3(r, e, t, f, u2 + "/" + n2, l2, u2, n2, i); + } + t(i, u2, l2, x2, K2, _3, g2); } } - return true; -} -function schemaObjectTypeCheck(schemaObject, value, schema) { - if (value === "n/a") { - return true; - } - if ("anyOf" in schemaObject) { - return schemaObject.anyOf.some( - (x) => schemaObjectTypeCheck(x, value, schema) - ); - } - if ("enum" in schemaObject && schemaObject.enum) { - return schemaObject.enum.some((x) => x === value); + function D(r) { + return r.replace(/~/g, "~0").replace(/\//g, "~1"); } - const format4 = schema.objects.formats[schemaObject.type]; - const re = new RegExp(`^${format4.pattern}$`); - return re.test(value); -} -function evalColumns(rule, context, schema, schemaPath) { - if (!rule.columns || context.extension !== ".tsv") - return; - const headers = [...Object.keys(context.columns)]; - for (const [ruleHeader, requirement] of Object.entries(rule.columns)) { - const columnObject = schema.objects.columns[ruleHeader]; - const name = columnObject.name; - if (!headers.includes(name) && requirement === "required") { - context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ - { - ...context.file, - evidence: `Column with header ${name} listed as required. ${schemaPath}` - } - ]); +}); +var a2 = {}; +C(a2, { arrayKeywords: () => F, default: () => Q, keywords: () => E, propsKeywords: () => G, skipKeywords: () => H }); +var q2 = A2(w()); +d2(a2, A2(w())); +var { keywords: E, arrayKeywords: F, propsKeywords: G, skipKeywords: H } = q2; +var { default: I, ...J } = q2; +var Q = I !== void 0 ? I : J; + +// https://esm.sh/v135/uri-js@4.4.1/denonext/uri-js.mjs +var uri_js_exports = {}; +__export(uri_js_exports, { + SCHEMES: () => ea, + __esModule: () => Ea, + default: () => oa, + equal: () => sa, + escapeComponent: () => ca, + normalize: () => ha, + parse: () => na, + pctDecChars: () => aa, + pctEncChar: () => ra, + removeDotSegments: () => ta, + resolve: () => ua, + resolveComponents: () => fa, + serialize: () => ia, + unescapeComponent: () => va +}); +var Zr = Object.create; +var Oe = Object.defineProperty; +var Qr = Object.getOwnPropertyDescriptor; +var Br = Object.getOwnPropertyNames; +var kr = Object.getPrototypeOf; +var Jr = Object.prototype.hasOwnProperty; +var Kr = (c3, u2) => () => (u2 || c3((u2 = { exports: {} }).exports, u2), u2.exports); +var Wr = (c3, u2) => { + for (var i in u2) + Oe(c3, i, { get: u2[i], enumerable: true }); +}; +var ye = (c3, u2, i, G2) => { + if (u2 && typeof u2 == "object" || typeof u2 == "function") + for (let R2 of Br(u2)) + !Jr.call(c3, R2) && R2 !== i && Oe(c3, R2, { get: () => u2[R2], enumerable: !(G2 = Qr(u2, R2)) || G2.enumerable }); + return c3; +}; +var j = (c3, u2, i) => (ye(c3, u2, "default"), i && ye(i, u2, "default")); +var ar = (c3, u2, i) => (i = c3 != null ? Zr(kr(c3)) : {}, ye(u2 || !c3 || !c3.__esModule ? Oe(i, "default", { value: c3, enumerable: true }) : i, c3)); +var Ne = Kr((pe2, nr3) => { + (function(c3, u2) { + typeof pe2 == "object" && typeof nr3 < "u" ? u2(pe2) : typeof define == "function" && define.amd ? define(["exports"], u2) : u2(c3.URI = c3.URI || {}); + })(pe2, function(c3) { + "use strict"; + function u2() { + for (var r = arguments.length, e = Array(r), a3 = 0; a3 < r; a3++) + e[a3] = arguments[a3]; + if (e.length > 1) { + e[0] = e[0].slice(0, -1); + for (var n2 = e.length - 1, t = 1; t < n2; ++t) + e[t] = e[t].slice(1, -1); + return e[n2] = e[n2].slice(1), e.join(""); + } else + return e[0]; } - if (headers.includes(name)) { - for (const value of context.columns[name]) { - if (!schemaObjectTypeCheck(columnObject, value, schema)) { - context.issues.addNonSchemaIssue("TSV_VALUE_INCORRECT_TYPE", [ - { - ...context.file, - evidence: `'${value}' ${JSON.stringify(columnObject)}` - } - ]); - break; + function i(r) { + return "(?:" + r + ")"; + } + function G2(r) { + return r === void 0 ? "undefined" : r === null ? "null" : Object.prototype.toString.call(r).split(" ").pop().split("]").shift().toLowerCase(); + } + function R2(r) { + return r.toUpperCase(); + } + function fr3(r) { + return r != null ? r instanceof Array ? r : typeof r.length != "number" || r.split || r.setInterval || r.call ? [r] : Array.prototype.slice.call(r) : []; + } + function ur3(r, e) { + var a3 = r; + if (e) + for (var n2 in e) + a3[n2] = e[n2]; + return a3; + } + function Pe(r) { + var e = "[A-Za-z]", a3 = "[\\x0D]", n2 = "[0-9]", t = "[\\x22]", f = u2(n2, "[A-Fa-f]"), h2 = "[\\x0A]", v4 = "[\\x20]", d5 = i(i("%[EFef]" + f + "%" + f + f + "%" + f + f) + "|" + i("%[89A-Fa-f]" + f + "%" + f + f) + "|" + i("%" + f + f)), g2 = "[\\:\\/\\?\\#\\[\\]\\@]", s = "[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]", S4 = u2(g2, s), $4 = r ? "[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]" : "[]", p3 = r ? "[\\uE000-\\uF8FF]" : "[]", E4 = u2(e, n2, "[\\-\\.\\_\\~]", $4), D = i(e + u2(e, n2, "[\\+\\-\\.]") + "*"), o = i(i(d5 + "|" + u2(E4, s, "[\\:]")) + "*"), V2 = i(i("25[0-5]") + "|" + i("2[0-4]" + n2) + "|" + i("1" + n2 + n2) + "|" + i("[1-9]" + n2) + "|" + n2), C3 = i(i("25[0-5]") + "|" + i("2[0-4]" + n2) + "|" + i("1" + n2 + n2) + "|" + i("0?[1-9]" + n2) + "|0?0?" + n2), T2 = i(C3 + "\\." + C3 + "\\." + C3 + "\\." + C3), l2 = i(f + "{1,4}"), A4 = i(i(l2 + "\\:" + l2) + "|" + T2), y4 = i(i(l2 + "\\:") + "{6}" + A4), U2 = i("\\:\\:" + i(l2 + "\\:") + "{5}" + A4), M3 = i(i(l2) + "?\\:\\:" + i(l2 + "\\:") + "{4}" + A4), H2 = i(i(i(l2 + "\\:") + "{0,1}" + l2) + "?\\:\\:" + i(l2 + "\\:") + "{3}" + A4), ue = i(i(i(l2 + "\\:") + "{0,2}" + l2) + "?\\:\\:" + i(l2 + "\\:") + "{2}" + A4), de = i(i(i(l2 + "\\:") + "{0,3}" + l2) + "?\\:\\:" + l2 + "\\:" + A4), oe = i(i(i(l2 + "\\:") + "{0,4}" + l2) + "?\\:\\:" + A4), J4 = i(i(i(l2 + "\\:") + "{0,5}" + l2) + "?\\:\\:" + l2), K2 = i(i(i(l2 + "\\:") + "{0,6}" + l2) + "?\\:\\:"), b2 = i([y4, U2, M3, H2, ue, de, oe, J4, K2].join("|")), W4 = i(i(E4 + "|" + d5) + "+"), Ie2 = i(b2 + "\\%25" + W4), q4 = i(b2 + i("\\%25|\\%(?!" + f + "{2})") + W4), Vr3 = i("[vV]" + f + "+\\." + u2(E4, s, "[\\:]") + "+"), Mr3 = i("\\[" + i(q4 + "|" + b2 + "|" + Vr3) + "\\]"), Ke2 = i(i(d5 + "|" + u2(E4, s)) + "*"), he = i(Mr3 + "|" + T2 + "(?!" + Ke2 + ")|" + Ke2), se = i(n2 + "*"), We2 = i(i(o + "@") + "?" + he + i("\\:" + se) + "?"), ce = i(d5 + "|" + u2(E4, s, "[\\:\\@]")), qr2 = i(ce + "*"), er3 = i(ce + "+"), jr3 = i(i(d5 + "|" + u2(E4, s, "[\\@]")) + "+"), w2 = i(i("\\/" + qr2) + "*"), ee = i("\\/" + i(er3 + w2) + "?"), Te = i(jr3 + w2), le2 = i(er3 + w2), re = "(?!" + ce + ")", la2 = i(w2 + "|" + ee + "|" + Te + "|" + le2 + "|" + re), ae = i(i(ce + "|" + u2("[\\/\\?]", p3)) + "*"), ve2 = i(i(ce + "|[\\/\\?]") + "*"), rr3 = i(i("\\/\\/" + We2 + w2) + "|" + ee + "|" + le2 + "|" + re), Gr3 = i(D + "\\:" + rr3 + i("\\?" + ae) + "?" + i("\\#" + ve2) + "?"), Yr3 = i(i("\\/\\/" + We2 + w2) + "|" + ee + "|" + Te + "|" + re), Xr3 = i(Yr3 + i("\\?" + ae) + "?" + i("\\#" + ve2) + "?"), pa2 = i(Gr3 + "|" + Xr3), Sa2 = i(D + "\\:" + rr3 + i("\\?" + ae) + "?"), Da2 = "^(" + D + ")\\:" + i(i("\\/\\/(" + i("(" + o + ")@") + "?(" + he + ")" + i("\\:(" + se + ")") + "?)") + "?(" + w2 + "|" + ee + "|" + le2 + "|" + re + ")") + i("\\?(" + ae + ")") + "?" + i("\\#(" + ve2 + ")") + "?$", ga2 = "^(){0}" + i(i("\\/\\/(" + i("(" + o + ")@") + "?(" + he + ")" + i("\\:(" + se + ")") + "?)") + "?(" + w2 + "|" + ee + "|" + Te + "|" + re + ")") + i("\\?(" + ae + ")") + "?" + i("\\#(" + ve2 + ")") + "?$", $a2 = "^(" + D + ")\\:" + i(i("\\/\\/(" + i("(" + o + ")@") + "?(" + he + ")" + i("\\:(" + se + ")") + "?)") + "?(" + w2 + "|" + ee + "|" + le2 + "|" + re + ")") + i("\\?(" + ae + ")") + "?$", Ra2 = "^" + i("\\#(" + ve2 + ")") + "?$", Ca2 = "^" + i("(" + o + ")@") + "?(" + he + ")" + i("\\:(" + se + ")") + "?$"; + return { NOT_SCHEME: new RegExp(u2("[^]", e, n2, "[\\+\\-\\.]"), "g"), NOT_USERINFO: new RegExp(u2("[^\\%\\:]", E4, s), "g"), NOT_HOST: new RegExp(u2("[^\\%\\[\\]\\:]", E4, s), "g"), NOT_PATH: new RegExp(u2("[^\\%\\/\\:\\@]", E4, s), "g"), NOT_PATH_NOSCHEME: new RegExp(u2("[^\\%\\/\\@]", E4, s), "g"), NOT_QUERY: new RegExp(u2("[^\\%]", E4, s, "[\\:\\@\\/\\?]", p3), "g"), NOT_FRAGMENT: new RegExp(u2("[^\\%]", E4, s, "[\\:\\@\\/\\?]"), "g"), ESCAPE: new RegExp(u2("[^]", E4, s), "g"), UNRESERVED: new RegExp(E4, "g"), OTHER_CHARS: new RegExp(u2("[^\\%]", E4, S4), "g"), PCT_ENCODED: new RegExp(d5, "g"), IPV4ADDRESS: new RegExp("^(" + T2 + ")$"), IPV6ADDRESS: new RegExp("^\\[?(" + b2 + ")" + i(i("\\%25|\\%(?!" + f + "{2})") + "(" + W4 + ")") + "?\\]?$") }; + } + var Y2 = Pe(false), ne2 = Pe(true), Ee2 = /* @__PURE__ */ function() { + function r(e, a3) { + var n2 = [], t = true, f = false, h2 = void 0; + try { + for (var v4 = e[Symbol.iterator](), d5; !(t = (d5 = v4.next()).done) && (n2.push(d5.value), !(a3 && n2.length === a3)); t = true) + ; + } catch (g2) { + f = true, h2 = g2; + } finally { + try { + !t && v4.return && v4.return(); + } finally { + if (f) + throw h2; + } } + return n2; } + return function(e, a3) { + if (Array.isArray(e)) + return e; + if (Symbol.iterator in Object(e)) + return r(e, a3); + throw new TypeError("Invalid attempt to destructure non-iterable instance"); + }; + }(), hr3 = function(r) { + if (Array.isArray(r)) { + for (var e = 0, a3 = Array(r.length); e < r.length; e++) + a3[e] = r[e]; + return a3; + } else + return Array.from(r); + }, X2 = 2147483647, O4 = 36, Se2 = 1, te = 26, sr2 = 38, cr2 = 700, _e2 = 72, me = 128, Ue = "-", vr2 = /^xn--/, Er3 = /[^\0-\x7E]/, dr3 = /[\x2E\u3002\uFF0E\uFF61]/g, or3 = { overflow: "Overflow: input needs wider integers to process", "not-basic": "Illegal input >= 0x80 (not a basic code point)", "invalid-input": "Invalid input" }, De = O4 - Se2, N2 = Math.floor, ge3 = String.fromCharCode; + function z4(r) { + throw new RangeError(or3[r]); } - } -} -function evalInitialColumns(rule, context, schema, schemaPath) { - if (!rule?.columns || !rule?.initial_columns || context.extension !== ".tsv") - return; - const headers = [...Object.keys(context.columns)]; - rule.initial_columns.map((ruleHeader, ruleIndex) => { - const ruleHeaderName = schema.objects.columns[ruleHeader].name; - const contextIndex = headers.findIndex((x) => x === ruleHeaderName); - if (contextIndex === -1) { - const evidence = `Column with header ${ruleHeaderName} not found, indexed from 0 it should appear in column ${ruleIndex}. ${schemaPath}`; - context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ - { ...context.file, evidence } - ]); - } else if (ruleIndex !== contextIndex) { - const evidence = `Column with header ${ruleHeaderName} found at index ${contextIndex} while rule specifies, indexed from 0, it should be in column ${ruleIndex}. ${schemaPath}`; - context.issues.addNonSchemaIssue("TSV_COLUMN_ORDER_INCORRECT", [ - { ...context.file, evidence } - ]); + function lr2(r, e) { + for (var a3 = [], n2 = r.length; n2--; ) + a3[n2] = e(r[n2]); + return a3; } - }); -} -function evalAdditionalColumns(rule, context, schema, schemaPath) { - if (context.extension !== ".tsv") - return; - const headers = Object.keys(context?.columns); - if (!(rule.additional_columns === "allowed") && rule.columns) { - const ruleHeadersNames = Object.keys(rule.columns).map( - // @ts-expect-error - (x) => schema.objects.columns[x].name - ); - let extraCols = headers.filter( - (header) => !ruleHeadersNames.includes(header) - ); - if (rule.additional_columns === "allowed_if_defined") { - extraCols = extraCols.filter((header) => !(header in context.sidecar)); + function Fe(r, e) { + var a3 = r.split("@"), n2 = ""; + a3.length > 1 && (n2 = a3[0] + "@", r = a3[1]), r = r.replace(dr3, "."); + var t = r.split("."), f = lr2(t, e).join("."); + return n2 + f; } - if (extraCols.length) { - context.issues.addNonSchemaIssue("TSV_ADDITIONAL_COLUMNS_NOT_ALLOWED", [ - { ...context.file, evidence: `Disallowed columns found ${extraCols}` } - ]); + function xe2(r) { + for (var e = [], a3 = 0, n2 = r.length; a3 < n2; ) { + var t = r.charCodeAt(a3++); + if (t >= 55296 && t <= 56319 && a3 < n2) { + var f = r.charCodeAt(a3++); + (f & 64512) == 56320 ? e.push(((t & 1023) << 10) + (f & 1023) + 65536) : (e.push(t), a3--); + } else + e.push(t); + } + return e; } - } -} -function evalIndexColumns(rule, context, schema, schemaPath) { - if (!rule?.columns || !rule?.index_columns || !rule?.index_columns.length || context.extension !== ".tsv") - return; - const headers = Object.keys(context?.columns); - const uniqueIndexValues = /* @__PURE__ */ new Set(); - const index_columns = rule.index_columns.map((col) => { - return schema.objects.columns[col].name; - }); - const missing = index_columns.filter((col) => !headers.includes(col)); - if (missing.length) { - context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ - { - ...context.file, - evidence: `Columns cited as index columns not in file: ${missing}. ${schemaPath}` + var pr3 = function(e) { + return String.fromCodePoint.apply(String, hr3(e)); + }, Sr3 = function(e) { + return e - 48 < 10 ? e - 22 : e - 65 < 26 ? e - 65 : e - 97 < 26 ? e - 97 : O4; + }, He2 = function(e, a3) { + return e + 22 + 75 * (e < 26) - ((a3 != 0) << 5); + }, be = function(e, a3, n2) { + var t = 0; + for (e = n2 ? N2(e / cr2) : e >> 1, e += N2(e / a3); e > De * te >> 1; t += O4) + e = N2(e / De); + return N2(t + (De + 1) * e / (e + sr2)); + }, we2 = function(e) { + var a3 = [], n2 = e.length, t = 0, f = me, h2 = _e2, v4 = e.lastIndexOf(Ue); + v4 < 0 && (v4 = 0); + for (var d5 = 0; d5 < v4; ++d5) + e.charCodeAt(d5) >= 128 && z4("not-basic"), a3.push(e.charCodeAt(d5)); + for (var g2 = v4 > 0 ? v4 + 1 : 0; g2 < n2; ) { + for (var s = t, S4 = 1, $4 = O4; ; $4 += O4) { + g2 >= n2 && z4("invalid-input"); + var p3 = Sr3(e.charCodeAt(g2++)); + (p3 >= O4 || p3 > N2((X2 - t) / S4)) && z4("overflow"), t += p3 * S4; + var E4 = $4 <= h2 ? Se2 : $4 >= h2 + te ? te : $4 - h2; + if (p3 < E4) + break; + var D = O4 - E4; + S4 > N2(X2 / D) && z4("overflow"), S4 *= D; + } + var o = a3.length + 1; + h2 = be(t - s, o, s == 0), N2(t / o) > X2 - f && z4("overflow"), f += N2(t / o), t %= o, a3.splice(t++, 0, f); } - ]); - return; - } - const rowCount = context.columns[index_columns[0]]?.length || 0; - for (let i = 0; i < rowCount; i++) { - let indexValue = ""; - index_columns.map((col) => { - indexValue = indexValue.concat( - context.columns[col]?.[i] || "" - ); - }); - if (uniqueIndexValues.has(indexValue)) { - context.issues.addNonSchemaIssue("TSV_INDEX_VALUE_NOT_UNIQUE", [ - { ...context.file, evidence: `Row: ${i + 2}, Value: ${indexValue}` } - ]); - } else { - uniqueIndexValues.add(indexValue); + return String.fromCodePoint.apply(String, a3); + }, Le2 = function(e) { + var a3 = []; + e = xe2(e); + var n2 = e.length, t = me, f = 0, h2 = _e2, v4 = true, d5 = false, g2 = void 0; + try { + for (var s = e[Symbol.iterator](), S4; !(v4 = (S4 = s.next()).done); v4 = true) { + var $4 = S4.value; + $4 < 128 && a3.push(ge3($4)); + } + } catch (q4) { + d5 = true, g2 = q4; + } finally { + try { + !v4 && s.return && s.return(); + } finally { + if (d5) + throw g2; + } + } + var p3 = a3.length, E4 = p3; + for (p3 && a3.push(Ue); E4 < n2; ) { + var D = X2, o = true, V2 = false, C3 = void 0; + try { + for (var T2 = e[Symbol.iterator](), l2; !(o = (l2 = T2.next()).done); o = true) { + var A4 = l2.value; + A4 >= t && A4 < D && (D = A4); + } + } catch (q4) { + V2 = true, C3 = q4; + } finally { + try { + !o && T2.return && T2.return(); + } finally { + if (V2) + throw C3; + } + } + var y4 = E4 + 1; + D - t > N2((X2 - f) / y4) && z4("overflow"), f += (D - t) * y4, t = D; + var U2 = true, M3 = false, H2 = void 0; + try { + for (var ue = e[Symbol.iterator](), de; !(U2 = (de = ue.next()).done); U2 = true) { + var oe = de.value; + if (oe < t && ++f > X2 && z4("overflow"), oe == t) { + for (var J4 = f, K2 = O4; ; K2 += O4) { + var b2 = K2 <= h2 ? Se2 : K2 >= h2 + te ? te : K2 - h2; + if (J4 < b2) + break; + var W4 = J4 - b2, Ie2 = O4 - b2; + a3.push(ge3(He2(b2 + W4 % Ie2, 0))), J4 = N2(W4 / Ie2); + } + a3.push(ge3(He2(J4, 0))), h2 = be(f, y4, E4 == p3), f = 0, ++E4; + } + } + } catch (q4) { + M3 = true, H2 = q4; + } finally { + try { + !U2 && ue.return && ue.return(); + } finally { + if (M3) + throw H2; + } + } + ++f, ++t; + } + return a3.join(""); + }, Dr2 = function(e) { + return Fe(e, function(a3) { + return vr2.test(a3) ? we2(a3.slice(4).toLowerCase()) : a3; + }); + }, gr3 = function(e) { + return Fe(e, function(a3) { + return Er3.test(a3) ? "xn--" + Le2(a3) : a3; + }); + }, Z = { version: "2.1.0", ucs2: { decode: xe2, encode: pr3 }, decode: we2, encode: Le2, toASCII: gr3, toUnicode: Dr2 }, I4 = {}; + function P2(r) { + var e = r.charCodeAt(0), a3 = void 0; + return e < 16 ? a3 = "%0" + e.toString(16).toUpperCase() : e < 128 ? a3 = "%" + e.toString(16).toUpperCase() : e < 2048 ? a3 = "%" + (e >> 6 | 192).toString(16).toUpperCase() + "%" + (e & 63 | 128).toString(16).toUpperCase() : a3 = "%" + (e >> 12 | 224).toString(16).toUpperCase() + "%" + (e >> 6 & 63 | 128).toString(16).toUpperCase() + "%" + (e & 63 | 128).toString(16).toUpperCase(), a3; } - } -} -function evalJsonCheck(rule, context, schema, schemaPath) { - for (const [key, requirement] of Object.entries(rule.fields)) { - const severity = getFieldSeverity(requirement, context); - const keyName = schema.objects.metadata[key].name; - if (severity && severity !== "ignore" && !(keyName in context.sidecar)) { - if (requirement.issue?.code && requirement.issue?.message) { - context.issues.add({ - key: requirement.issue.code, - reason: requirement.issue.message, - severity, - files: [{ ...context.file }] - }); - } else { - context.issues.addNonSchemaIssue("JSON_KEY_REQUIRED", [ - { - ...context.file, - evidence: `missing ${keyName} as per ${schemaPath}` + function Q4(r) { + for (var e = "", a3 = 0, n2 = r.length; a3 < n2; ) { + var t = parseInt(r.substr(a3 + 1, 2), 16); + if (t < 128) + e += String.fromCharCode(t), a3 += 3; + else if (t >= 194 && t < 224) { + if (n2 - a3 >= 6) { + var f = parseInt(r.substr(a3 + 4, 2), 16); + e += String.fromCharCode((t & 31) << 6 | f & 63); + } else + e += r.substr(a3, 6); + a3 += 6; + } else if (t >= 224) { + if (n2 - a3 >= 9) { + var h2 = parseInt(r.substr(a3 + 4, 2), 16), v4 = parseInt(r.substr(a3 + 7, 2), 16); + e += String.fromCharCode((t & 15) << 12 | (h2 & 63) << 6 | v4 & 63); + } else + e += r.substr(a3, 9); + a3 += 9; + } else + e += r.substr(a3, 3), a3 += 3; + } + return e; + } + function $e3(r, e) { + function a3(n2) { + var t = Q4(n2); + return t.match(e.UNRESERVED) ? t : n2; + } + return r.scheme && (r.scheme = String(r.scheme).replace(e.PCT_ENCODED, a3).toLowerCase().replace(e.NOT_SCHEME, "")), r.userinfo !== void 0 && (r.userinfo = String(r.userinfo).replace(e.PCT_ENCODED, a3).replace(e.NOT_USERINFO, P2).replace(e.PCT_ENCODED, R2)), r.host !== void 0 && (r.host = String(r.host).replace(e.PCT_ENCODED, a3).toLowerCase().replace(e.NOT_HOST, P2).replace(e.PCT_ENCODED, R2)), r.path !== void 0 && (r.path = String(r.path).replace(e.PCT_ENCODED, a3).replace(r.scheme ? e.NOT_PATH : e.NOT_PATH_NOSCHEME, P2).replace(e.PCT_ENCODED, R2)), r.query !== void 0 && (r.query = String(r.query).replace(e.PCT_ENCODED, a3).replace(e.NOT_QUERY, P2).replace(e.PCT_ENCODED, R2)), r.fragment !== void 0 && (r.fragment = String(r.fragment).replace(e.PCT_ENCODED, a3).replace(e.NOT_FRAGMENT, P2).replace(e.PCT_ENCODED, R2)), r; + } + function Re2(r) { + return r.replace(/^0*(.*)/, "$1") || "0"; + } + function Ce(r, e) { + var a3 = r.match(e.IPV4ADDRESS) || [], n2 = Ee2(a3, 2), t = n2[1]; + return t ? t.split(".").map(Re2).join(".") : r; + } + function ze2(r, e) { + var a3 = r.match(e.IPV6ADDRESS) || [], n2 = Ee2(a3, 3), t = n2[1], f = n2[2]; + if (t) { + for (var h2 = t.toLowerCase().split("::").reverse(), v4 = Ee2(h2, 2), d5 = v4[0], g2 = v4[1], s = g2 ? g2.split(":").map(Re2) : [], S4 = d5.split(":").map(Re2), $4 = e.IPV4ADDRESS.test(S4[S4.length - 1]), p3 = $4 ? 7 : 8, E4 = S4.length - p3, D = Array(p3), o = 0; o < p3; ++o) + D[o] = s[o] || S4[E4 + o] || ""; + $4 && (D[p3 - 1] = Ce(D[p3 - 1], e)); + var V2 = D.reduce(function(y4, U2, M3) { + if (!U2 || U2 === "0") { + var H2 = y4[y4.length - 1]; + H2 && H2.index + H2.length === M3 ? H2.length++ : y4.push({ index: M3, length: 1 }); } - ]); + return y4; + }, []), C3 = V2.sort(function(y4, U2) { + return U2.length - y4.length; + })[0], T2 = void 0; + if (C3 && C3.length > 1) { + var l2 = D.slice(0, C3.index), A4 = D.slice(C3.index + C3.length); + T2 = l2.join(":") + "::" + A4.join(":"); + } else + T2 = D.join(":"); + return f && (T2 += "%" + f), T2; + } else + return r; + } + var $r3 = /^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i, Rr3 = "".match(/(){0}/)[1] === void 0; + function F2(r) { + var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, a3 = {}, n2 = e.iri !== false ? ne2 : Y2; + e.reference === "suffix" && (r = (e.scheme ? e.scheme + ":" : "") + "//" + r); + var t = r.match($r3); + if (t) { + Rr3 ? (a3.scheme = t[1], a3.userinfo = t[3], a3.host = t[4], a3.port = parseInt(t[5], 10), a3.path = t[6] || "", a3.query = t[7], a3.fragment = t[8], isNaN(a3.port) && (a3.port = t[5])) : (a3.scheme = t[1] || void 0, a3.userinfo = r.indexOf("@") !== -1 ? t[3] : void 0, a3.host = r.indexOf("//") !== -1 ? t[4] : void 0, a3.port = parseInt(t[5], 10), a3.path = t[6] || "", a3.query = r.indexOf("?") !== -1 ? t[7] : void 0, a3.fragment = r.indexOf("#") !== -1 ? t[8] : void 0, isNaN(a3.port) && (a3.port = r.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/) ? t[4] : void 0)), a3.host && (a3.host = ze2(Ce(a3.host, n2), n2)), a3.scheme === void 0 && a3.userinfo === void 0 && a3.host === void 0 && a3.port === void 0 && !a3.path && a3.query === void 0 ? a3.reference = "same-document" : a3.scheme === void 0 ? a3.reference = "relative" : a3.fragment === void 0 ? a3.reference = "absolute" : a3.reference = "uri", e.reference && e.reference !== "suffix" && e.reference !== a3.reference && (a3.error = a3.error || "URI is not a " + e.reference + " reference."); + var f = I4[(e.scheme || a3.scheme || "").toLowerCase()]; + if (!e.unicodeSupport && (!f || !f.unicodeSupport)) { + if (a3.host && (e.domainHost || f && f.domainHost)) + try { + a3.host = Z.toASCII(a3.host.replace(n2.PCT_ENCODED, Q4).toLowerCase()); + } catch (h2) { + a3.error = a3.error || "Host's domain name can not be converted to ASCII via punycode: " + h2; + } + $e3(a3, Y2); + } else + $e3(a3, n2); + f && f.parse && f.parse(a3, e); + } else + a3.error = a3.error || "URI can not be parsed."; + return a3; + } + function Cr3(r, e) { + var a3 = e.iri !== false ? ne2 : Y2, n2 = []; + return r.userinfo !== void 0 && (n2.push(r.userinfo), n2.push("@")), r.host !== void 0 && n2.push(ze2(Ce(String(r.host), a3), a3).replace(a3.IPV6ADDRESS, function(t, f, h2) { + return "[" + f + (h2 ? "%25" + h2 : "") + "]"; + })), (typeof r.port == "number" || typeof r.port == "string") && (n2.push(":"), n2.push(String(r.port))), n2.length ? n2.join("") : void 0; + } + var Ve2 = /^\.\.?\//, Me2 = /^\/\.(\/|$)/, qe2 = /^\/\.\.(\/|$)/, Ar3 = /^\/?(?:.|\n)*?(?=\/|$)/; + function B3(r) { + for (var e = []; r.length; ) + if (r.match(Ve2)) + r = r.replace(Ve2, ""); + else if (r.match(Me2)) + r = r.replace(Me2, "/"); + else if (r.match(qe2)) + r = r.replace(qe2, "/"), e.pop(); + else if (r === "." || r === "..") + r = ""; + else { + var a3 = r.match(Ar3); + if (a3) { + var n2 = a3[0]; + r = r.slice(n2.length), e.push(n2); + } else + throw new Error("Unexpected dot segment condition"); + } + return e.join(""); + } + function _3(r) { + var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, a3 = e.iri ? ne2 : Y2, n2 = [], t = I4[(e.scheme || r.scheme || "").toLowerCase()]; + if (t && t.serialize && t.serialize(r, e), r.host && !a3.IPV6ADDRESS.test(r.host)) { + if (e.domainHost || t && t.domainHost) + try { + r.host = e.iri ? Z.toUnicode(r.host) : Z.toASCII(r.host.replace(a3.PCT_ENCODED, Q4).toLowerCase()); + } catch (v4) { + r.error = r.error || "Host's domain name can not be converted to " + (e.iri ? "Unicode" : "ASCII") + " via punycode: " + v4; + } + } + $e3(r, a3), e.reference !== "suffix" && r.scheme && (n2.push(r.scheme), n2.push(":")); + var f = Cr3(r, e); + if (f !== void 0 && (e.reference !== "suffix" && n2.push("//"), n2.push(f), r.path && r.path.charAt(0) !== "/" && n2.push("/")), r.path !== void 0) { + var h2 = r.path; + !e.absolutePath && (!t || !t.absolutePath) && (h2 = B3(h2)), f === void 0 && (h2 = h2.replace(/^\/\//, "/%2F")), n2.push(h2); + } + return r.query !== void 0 && (n2.push("?"), n2.push(r.query)), r.fragment !== void 0 && (n2.push("#"), n2.push(r.fragment)), n2.join(""); + } + function je2(r, e) { + var a3 = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, n2 = arguments[3], t = {}; + return n2 || (r = F2(_3(r, a3), a3), e = F2(_3(e, a3), a3)), a3 = a3 || {}, !a3.tolerant && e.scheme ? (t.scheme = e.scheme, t.userinfo = e.userinfo, t.host = e.host, t.port = e.port, t.path = B3(e.path || ""), t.query = e.query) : (e.userinfo !== void 0 || e.host !== void 0 || e.port !== void 0 ? (t.userinfo = e.userinfo, t.host = e.host, t.port = e.port, t.path = B3(e.path || ""), t.query = e.query) : (e.path ? (e.path.charAt(0) === "/" ? t.path = B3(e.path) : ((r.userinfo !== void 0 || r.host !== void 0 || r.port !== void 0) && !r.path ? t.path = "/" + e.path : r.path ? t.path = r.path.slice(0, r.path.lastIndexOf("/") + 1) + e.path : t.path = e.path, t.path = B3(t.path)), t.query = e.query) : (t.path = r.path, e.query !== void 0 ? t.query = e.query : t.query = r.query), t.userinfo = r.userinfo, t.host = r.host, t.port = r.port), t.scheme = r.scheme), t.fragment = e.fragment, t; + } + function Ir3(r, e, a3) { + var n2 = ur3({ scheme: "null" }, a3); + return _3(je2(F2(r, n2), F2(e, n2), n2, true), n2); + } + function Tr2(r, e) { + return typeof r == "string" ? r = _3(F2(r, e), e) : G2(r) === "object" && (r = F2(_3(r, e), e)), r; + } + function yr3(r, e, a3) { + return typeof r == "string" ? r = _3(F2(r, a3), a3) : G2(r) === "object" && (r = _3(r, a3)), typeof e == "string" ? e = _3(F2(e, a3), a3) : G2(e) === "object" && (e = _3(e, a3)), r === e; + } + function Or2(r, e) { + return r && r.toString().replace(!e || !e.iri ? Y2.ESCAPE : ne2.ESCAPE, P2); + } + function x2(r, e) { + return r && r.toString().replace(!e || !e.iri ? Y2.PCT_ENCODED : ne2.PCT_ENCODED, Q4); + } + var ie2 = { scheme: "http", domainHost: true, parse: function(e, a3) { + return e.host || (e.error = e.error || "HTTP URIs must have a host."), e; + }, serialize: function(e, a3) { + var n2 = String(e.scheme).toLowerCase() === "https"; + return (e.port === (n2 ? 443 : 80) || e.port === "") && (e.port = void 0), e.path || (e.path = "/"), e; + } }, Ge2 = { scheme: "https", domainHost: ie2.domainHost, parse: ie2.parse, serialize: ie2.serialize }; + function Ye2(r) { + return typeof r.secure == "boolean" ? r.secure : String(r.scheme).toLowerCase() === "wss"; + } + var fe2 = { scheme: "ws", domainHost: true, parse: function(e, a3) { + var n2 = e; + return n2.secure = Ye2(n2), n2.resourceName = (n2.path || "/") + (n2.query ? "?" + n2.query : ""), n2.path = void 0, n2.query = void 0, n2; + }, serialize: function(e, a3) { + if ((e.port === (Ye2(e) ? 443 : 80) || e.port === "") && (e.port = void 0), typeof e.secure == "boolean" && (e.scheme = e.secure ? "wss" : "ws", e.secure = void 0), e.resourceName) { + var n2 = e.resourceName.split("?"), t = Ee2(n2, 2), f = t[0], h2 = t[1]; + e.path = f && f !== "/" ? f : void 0, e.query = h2, e.resourceName = void 0; } + return e.fragment = void 0, e; + } }, Xe2 = { scheme: "wss", domainHost: fe2.domainHost, parse: fe2.parse, serialize: fe2.serialize }, Nr3 = {}, Pr3 = true, Ze2 = "[A-Za-z0-9\\-\\.\\_\\~" + (Pr3 ? "\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF" : "") + "]", m3 = "[0-9A-Fa-f]", _r3 = i(i("%[EFef]" + m3 + "%" + m3 + m3 + "%" + m3 + m3) + "|" + i("%[89A-Fa-f]" + m3 + "%" + m3 + m3) + "|" + i("%" + m3 + m3)), mr3 = "[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]", Ur3 = "[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]", Fr3 = u2(Ur3, '[\\"\\\\]'), xr3 = "[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]", Hr3 = new RegExp(Ze2, "g"), k3 = new RegExp(_r3, "g"), br4 = new RegExp(u2("[^]", mr3, "[\\.]", '[\\"]', Fr3), "g"), Qe2 = new RegExp(u2("[^]", Ze2, xr3), "g"), wr4 = Qe2; + function Ae2(r) { + var e = Q4(r); + return e.match(Hr3) ? e : r; } + var Be2 = { scheme: "mailto", parse: function(e, a3) { + var n2 = e, t = n2.to = n2.path ? n2.path.split(",") : []; + if (n2.path = void 0, n2.query) { + for (var f = false, h2 = {}, v4 = n2.query.split("&"), d5 = 0, g2 = v4.length; d5 < g2; ++d5) { + var s = v4[d5].split("="); + switch (s[0]) { + case "to": + for (var S4 = s[1].split(","), $4 = 0, p3 = S4.length; $4 < p3; ++$4) + t.push(S4[$4]); + break; + case "subject": + n2.subject = x2(s[1], a3); + break; + case "body": + n2.body = x2(s[1], a3); + break; + default: + f = true, h2[x2(s[0], a3)] = x2(s[1], a3); + break; + } + } + f && (n2.headers = h2); + } + n2.query = void 0; + for (var E4 = 0, D = t.length; E4 < D; ++E4) { + var o = t[E4].split("@"); + if (o[0] = x2(o[0]), a3.unicodeSupport) + o[1] = x2(o[1], a3).toLowerCase(); + else + try { + o[1] = Z.toASCII(x2(o[1], a3).toLowerCase()); + } catch (V2) { + n2.error = n2.error || "Email address's domain name can not be converted to ASCII via punycode: " + V2; + } + t[E4] = o.join("@"); + } + return n2; + }, serialize: function(e, a3) { + var n2 = e, t = fr3(e.to); + if (t) { + for (var f = 0, h2 = t.length; f < h2; ++f) { + var v4 = String(t[f]), d5 = v4.lastIndexOf("@"), g2 = v4.slice(0, d5).replace(k3, Ae2).replace(k3, R2).replace(br4, P2), s = v4.slice(d5 + 1); + try { + s = a3.iri ? Z.toUnicode(s) : Z.toASCII(x2(s, a3).toLowerCase()); + } catch (E4) { + n2.error = n2.error || "Email address's domain name can not be converted to " + (a3.iri ? "Unicode" : "ASCII") + " via punycode: " + E4; + } + t[f] = g2 + "@" + s; + } + n2.path = t.join(","); + } + var S4 = e.headers = e.headers || {}; + e.subject && (S4.subject = e.subject), e.body && (S4.body = e.body); + var $4 = []; + for (var p3 in S4) + S4[p3] !== Nr3[p3] && $4.push(p3.replace(k3, Ae2).replace(k3, R2).replace(Qe2, P2) + "=" + S4[p3].replace(k3, Ae2).replace(k3, R2).replace(wr4, P2)); + return $4.length && (n2.query = $4.join("&")), n2; + } }, Lr3 = /^([^\:]+)\:(.*)/, ke2 = { scheme: "urn", parse: function(e, a3) { + var n2 = e.path && e.path.match(Lr3), t = e; + if (n2) { + var f = a3.scheme || t.scheme || "urn", h2 = n2[1].toLowerCase(), v4 = n2[2], d5 = f + ":" + (a3.nid || h2), g2 = I4[d5]; + t.nid = h2, t.nss = v4, t.path = void 0, g2 && (t = g2.parse(t, a3)); + } else + t.error = t.error || "URN can not be parsed."; + return t; + }, serialize: function(e, a3) { + var n2 = a3.scheme || e.scheme || "urn", t = e.nid, f = n2 + ":" + (a3.nid || t), h2 = I4[f]; + h2 && (e = h2.serialize(e, a3)); + var v4 = e, d5 = e.nss; + return v4.path = (t || a3.nid) + ":" + d5, v4; + } }, zr3 = /^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/, Je2 = { scheme: "urn:uuid", parse: function(e, a3) { + var n2 = e; + return n2.uuid = n2.nss, n2.nss = void 0, !a3.tolerant && (!n2.uuid || !n2.uuid.match(zr3)) && (n2.error = n2.error || "UUID is not valid."), n2; + }, serialize: function(e, a3) { + var n2 = e; + return n2.nss = (e.uuid || "").toLowerCase(), n2; + } }; + I4[ie2.scheme] = ie2, I4[Ge2.scheme] = Ge2, I4[fe2.scheme] = fe2, I4[Xe2.scheme] = Xe2, I4[Be2.scheme] = Be2, I4[ke2.scheme] = ke2, I4[Je2.scheme] = Je2, c3.SCHEMES = I4, c3.pctEncChar = P2, c3.pctDecChars = Q4, c3.parse = F2, c3.removeDotSegments = B3, c3.serialize = _3, c3.resolveComponents = je2, c3.resolve = Ir3, c3.normalize = Tr2, c3.equal = yr3, c3.escapeComponent = Or2, c3.unescapeComponent = x2, Object.defineProperty(c3, "__esModule", { value: true }); + }); +}); +var L2 = {}; +Wr(L2, { SCHEMES: () => ea, __esModule: () => Ea, default: () => oa, equal: () => sa, escapeComponent: () => ca, normalize: () => ha, parse: () => na, pctDecChars: () => aa, pctEncChar: () => ra, removeDotSegments: () => ta, resolve: () => ua, resolveComponents: () => fa, serialize: () => ia, unescapeComponent: () => va }); +var ir = ar(Ne()); +j(L2, ar(Ne())); +var { SCHEMES: ea, pctEncChar: ra, pctDecChars: aa, parse: na, removeDotSegments: ta, serialize: ia, resolveComponents: fa, resolve: ua, normalize: ha, equal: sa, escapeComponent: ca, unescapeComponent: va, __esModule: Ea } = ir; +var { default: tr, ...da } = ir; +var oa = tr !== void 0 ? tr : da; + +// https://esm.sh/v135/ajv@8.16.0/denonext/ajv.mjs +var require2 = (n2) => { + const e = (m3) => typeof m3.default < "u" ? m3.default : m3, c3 = (m3) => Object.assign({ __esModule: true }, m3); + switch (n2) { + case "fast-deep-equal": + return e(fast_deep_equal_exports); + case "json-schema-traverse": + return e(json_schema_traverse_exports); + case "uri-js": + return c3(uri_js_exports); + default: + throw new Error('module "' + n2 + '" not found'); } -} -function getFieldSeverity(requirement, context) { - const levelToSeverity = { - recommended: "ignore", - required: "error", - optional: "ignore", - prohibited: "ignore" +}; +var Yo = Object.create; +var Zt = Object.defineProperty; +var Zo = Object.getOwnPropertyDescriptor; +var ea2 = Object.getOwnPropertyNames; +var ta2 = Object.getPrototypeOf; +var ra2 = Object.prototype.hasOwnProperty; +var $t = ((t) => typeof require2 < "u" ? require2 : typeof Proxy < "u" ? new Proxy(t, { get: (e, r) => (typeof require2 < "u" ? require2 : e)[r] }) : t)(function(t) { + if (typeof require2 < "u") + return require2.apply(this, arguments); + throw Error('Dynamic require of "' + t + '" is not supported'); +}); +var $2 = (t, e) => () => (e || t((e = { exports: {} }).exports, e), e.exports); +var sa2 = (t, e) => { + for (var r in e) + Zt(t, r, { get: e[r], enumerable: true }); +}; +var Yt = (t, e, r, s) => { + if (e && typeof e == "object" || typeof e == "function") + for (let n2 of ea2(e)) + !ra2.call(t, n2) && n2 !== r && Zt(t, n2, { get: () => e[n2], enumerable: !(s = Zo(e, n2)) || s.enumerable }); + return t; +}; +var ge = (t, e, r) => (Yt(t, e, "default"), r && Yt(r, e, "default")); +var Ms = (t, e, r) => (r = t != null ? Yo(ta2(t)) : {}, Yt(e || !t || !t.__esModule ? Zt(r, "default", { value: t, enumerable: true }) : r, t)); +var He = $2((O4) => { + "use strict"; + Object.defineProperty(O4, "__esModule", { value: true }); + O4.regexpCode = O4.getEsmExportName = O4.getProperty = O4.safeStringify = O4.stringify = O4.strConcat = O4.addCodeArg = O4.str = O4._ = O4.nil = O4._Code = O4.Name = O4.IDENTIFIER = O4._CodeOrName = void 0; + var xe2 = class { }; - let severity = "ignore"; - if (typeof requirement === "string" && requirement in levelToSeverity) { - severity = levelToSeverity[requirement]; - } else if (typeof requirement === "object" && requirement.level) { - severity = levelToSeverity[requirement.level]; - const addendumRegex = /(required|recommended) if \`(\w+)\` is \`(\w+)\`/; - if (requirement.level_addendum) { - const match = addendumRegex.exec(requirement.level_addendum); - if (match && match.length === 4) { - const [_, addendumLevel, key, value] = match; - if (key in context.sidecar && context.sidecar[key] === value) { - severity = levelToSeverity[addendumLevel]; + O4._CodeOrName = xe2; + O4.IDENTIFIER = /^[a-z$_][a-z$_0-9]*$/i; + var ve2 = class extends xe2 { + constructor(e) { + if (super(), !O4.IDENTIFIER.test(e)) + throw new Error("CodeGen: name must be a valid identifier"); + this.str = e; + } + toString() { + return this.str; + } + emptyStr() { + return false; + } + get names() { + return { [this.str]: 1 }; + } + }; + O4.Name = ve2; + var B3 = class extends xe2 { + constructor(e) { + super(), this._items = typeof e == "string" ? [e] : e; + } + toString() { + return this.str; + } + emptyStr() { + if (this._items.length > 1) + return false; + let e = this._items[0]; + return e === "" || e === '""'; + } + get str() { + var e; + return (e = this._str) !== null && e !== void 0 ? e : this._str = this._items.reduce((r, s) => `${r}${s}`, ""); + } + get names() { + var e; + return (e = this._names) !== null && e !== void 0 ? e : this._names = this._items.reduce((r, s) => (s instanceof ve2 && (r[s.str] = (r[s.str] || 0) + 1), r), {}); + } + }; + O4._Code = B3; + O4.nil = new B3(""); + function As2(t, ...e) { + let r = [t[0]], s = 0; + for (; s < e.length; ) + tr4(r, e[s]), r.push(t[++s]); + return new B3(r); + } + O4._ = As2; + var er3 = new B3("+"); + function Ds2(t, ...e) { + let r = [Je2(t[0])], s = 0; + for (; s < e.length; ) + r.push(er3), tr4(r, e[s]), r.push(er3, Je2(t[++s])); + return na3(r), new B3(r); + } + O4.str = Ds2; + function tr4(t, e) { + e instanceof B3 ? t.push(...e._items) : e instanceof ve2 ? t.push(e) : t.push(ia3(e)); + } + O4.addCodeArg = tr4; + function na3(t) { + let e = 1; + for (; e < t.length - 1; ) { + if (t[e] === er3) { + let r = oa3(t[e - 1], t[e + 1]); + if (r !== void 0) { + t.splice(e - 1, 3, r); + continue; } + t[e++] = "+"; } + e++; } } - return severity; -} - -// src/types/columns.ts -var ColumnsMap = class extends Map { - constructor() { - super(); - const columns = /* @__PURE__ */ new Map(); - return new Proxy(columns, columnMapAccessorProxy); + function oa3(t, e) { + if (e === '""') + return t; + if (t === '""') + return e; + if (typeof t == "string") + return e instanceof ve2 || t[t.length - 1] !== '"' ? void 0 : typeof e != "string" ? `${t.slice(0, -1)}${e}"` : e[0] === '"' ? t.slice(0, -1) + e.slice(1) : void 0; + if (typeof e == "string" && e[0] === '"' && !(t instanceof ve2)) + return `"${t}${e.slice(1)}`; } -}; -var columnMapAccessorProxy = { - get: function(target, prop, receiver) { - const value = Reflect.get(target, prop, receiver); - if (typeof value === "function") - return value.bind(target); - if (prop === Symbol.iterator) - return target[Symbol.iterator].bind(target); - if (value === void 0) - return target.get(prop); - return value; - }, - set: function(target, prop, value) { - target.set(prop, value); - return true; - }, - has: function(target, prop) { - return Reflect.has(target, prop); - }, - ownKeys: function(target) { - return Array.from(target.keys()); - }, - getOwnPropertyDescriptor: function(target, prop) { - return { enumerable: true, configurable: true, value: target.get(prop) }; + function aa3(t, e) { + return e.emptyStr() ? t : t.emptyStr() ? e : Ds2`${t}${e}`; } -}; - -// src/schema/entities.ts -function _readEntities(filename) { - let suffix = ""; - let extension = ""; - const entities = {}; - const parts = filename.split("_"); - for (let i = 0; i < parts.length - 1; i++) { - const [entity, label] = parts[i].split("-"); - entities[entity] = label || "NOENTITY"; + O4.strConcat = aa3; + function ia3(t) { + return typeof t == "number" || typeof t == "boolean" || t === null ? t : Je2(Array.isArray(t) ? t.join(",") : t); } - const lastPart = parts[parts.length - 1]; - const extStart = lastPart.indexOf("."); - if (extStart === -1) { - suffix = lastPart; - } else { - suffix = lastPart.slice(0, extStart); - extension = lastPart.slice(extStart); + function ca3(t) { + return new B3(Je2(t)); } - return { suffix, extension, entities }; -} -var readEntities = memoize(_readEntities); - -// src/files/tsv.ts -var normalizeEOL = (str) => str.replace(/\r\n/g, "\n").replace(/\r/g, "\n"); -var isContentfulRow = (row) => !!(row && !/^\s*$/.test(row)); -function parseTSV(contents) { - const columns = new ColumnsMap(); - const rows = normalizeEOL(contents).split("\n").filter(isContentfulRow).map((str) => str.split(" ")); - const headers = rows.length ? rows[0] : []; - headers.map((x) => { - columns[x] = []; - }); - for (let i = 1; i < rows.length; i++) { - for (let j = 0; j < headers.length; j++) { - const col = columns[headers[j]]; - col.push(rows[i][j]); - } + O4.stringify = ca3; + function Je2(t) { + return JSON.stringify(t).replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029"); } - return columns; -} - -// http-url:https://raw.githubusercontent.com/rii-mango/NIFTI-Reader-JS/v0.6.4/release/current/nifti-reader-min.js -(() => { - var H = ((i) => typeof __require < "u" ? __require : typeof Proxy < "u" ? new Proxy(i, { get: (t, e) => (typeof __require < "u" ? __require : t)[e] }) : i)(function(i) { - if (typeof __require < "u") - return __require.apply(this, arguments); - throw new Error('Dynamic require of "' + i + '" is not supported'); - }); - var vt = (i, t) => () => (t || i((t = { exports: {} }).exports, t), t.exports); - var Tt = vt((He, bt) => { - "use strict"; - var zt = zt || {}; - zt.NIFTIEXTENSION = zt.NIFTIEXTENSION || function(i, t, e, n) { - if (i % 16 != 0) - throw new Error("This does not appear to be a NIFTI extension"); - this.esize = i, this.ecode = t, this.edata = e, this.littleEndian = n; - }; - zt.NIFTIEXTENSION.prototype.toArrayBuffer = function() { - let i = new Uint8Array(this.esize); - i.set(this.data.buffer, 8); - let t = new DataView(i.buffer); - return t.setInt32(0, this.esize, this.littleEndian), t.setInt32(4, this.ecode, this.littleEndian), i.buffer; - }; - var _e = typeof bt; - _e !== "undefined" && bt.exports && (bt.exports = zt.NIFTIEXTENSION); - }); - var kt = vt((Qe, Zt) => { - "use strict"; - var P = P || {}; - P.Utils = P.Utils || {}; - P.NIFTIEXTENSION = P.NIFTIEXTENSION || (typeof H < "u" ? Tt() : null); - P.Utils.crcTable = null; - P.Utils.GUNZIP_MAGIC_COOKIE1 = 31; - P.Utils.GUNZIP_MAGIC_COOKIE2 = 139; - P.Utils.getStringAt = function(i, t, e) { - var n = "", r, s; - for (r = t; r < e; r += 1) - s = i.getUint8(r), s !== 0 && (n += String.fromCharCode(s)); - return n; - }; - P.Utils.getByteAt = function(i, t) { - return i.getInt8(t); - }; - P.Utils.getShortAt = function(i, t, e) { - return i.getInt16(t, e); + O4.safeStringify = Je2; + function ua3(t) { + return typeof t == "string" && O4.IDENTIFIER.test(t) ? new B3(`.${t}`) : As2`[${t}]`; + } + O4.getProperty = ua3; + function la2(t) { + if (typeof t == "string" && O4.IDENTIFIER.test(t)) + return new B3(`${t}`); + throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`); + } + O4.getEsmExportName = la2; + function da3(t) { + return new B3(t.toString()); + } + O4.regexpCode = da3; +}); +var nr = $2((J4) => { + "use strict"; + Object.defineProperty(J4, "__esModule", { value: true }); + J4.ValueScope = J4.ValueScopeName = J4.Scope = J4.varKinds = J4.UsedValueState = void 0; + var x2 = He(), rr3 = class extends Error { + constructor(e) { + super(`CodeGen: "code" for ${e} not defined`), this.value = e.value; + } + }, gt4; + (function(t) { + t[t.Started = 0] = "Started", t[t.Completed = 1] = "Completed"; + })(gt4 || (J4.UsedValueState = gt4 = {})); + J4.varKinds = { const: new x2.Name("const"), let: new x2.Name("let"), var: new x2.Name("var") }; + var vt4 = class { + constructor({ prefixes: e, parent: r } = {}) { + this._names = {}, this._prefixes = e, this._parent = r; + } + toName(e) { + return e instanceof x2.Name ? e : this.name(e); + } + name(e) { + return new x2.Name(this._newName(e)); + } + _newName(e) { + let r = this._names[e] || this._nameGroup(e); + return `${e}${r.index++}`; + } + _nameGroup(e) { + var r, s; + if (!((s = (r = this._parent) === null || r === void 0 ? void 0 : r._prefixes) === null || s === void 0) && s.has(e) || this._prefixes && !this._prefixes.has(e)) + throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`); + return this._names[e] = { prefix: e, index: 0 }; + } + }; + J4.Scope = vt4; + var wt4 = class extends x2.Name { + constructor(e, r) { + super(r), this.prefix = e; + } + setValue(e, { property: r, itemIndex: s }) { + this.value = e, this.scopePath = (0, x2._)`.${new x2.Name(r)}[${s}]`; + } + }; + J4.ValueScopeName = wt4; + var fa3 = (0, x2._)`\n`, sr2 = class extends vt4 { + constructor(e) { + super(e), this._values = {}, this._scope = e.scope, this.opts = { ...e, _n: e.lines ? fa3 : x2.nil }; + } + get() { + return this._scope; + } + name(e) { + return new wt4(e, this._newName(e)); + } + value(e, r) { + var s; + if (r.ref === void 0) + throw new Error("CodeGen: ref must be passed in value"); + let n2 = this.toName(e), { prefix: o } = n2, a3 = (s = r.key) !== null && s !== void 0 ? s : r.ref, i = this._values[o]; + if (i) { + let l2 = i.get(a3); + if (l2) + return l2; + } else + i = this._values[o] = /* @__PURE__ */ new Map(); + i.set(a3, n2); + let c3 = this._scope[o] || (this._scope[o] = []), u2 = c3.length; + return c3[u2] = r.ref, n2.setValue(r, { property: o, itemIndex: u2 }), n2; + } + getValue(e, r) { + let s = this._values[e]; + if (s) + return s.get(r); + } + scopeRefs(e, r = this._values) { + return this._reduceValues(r, (s) => { + if (s.scopePath === void 0) + throw new Error(`CodeGen: name "${s}" has no value`); + return (0, x2._)`${e}${s.scopePath}`; + }); + } + scopeCode(e = this._values, r, s) { + return this._reduceValues(e, (n2) => { + if (n2.value === void 0) + throw new Error(`CodeGen: name "${n2}" has no value`); + return n2.value.code; + }, r, s); + } + _reduceValues(e, r, s = {}, n2) { + let o = x2.nil; + for (let a3 in e) { + let i = e[a3]; + if (!i) + continue; + let c3 = s[a3] = s[a3] || /* @__PURE__ */ new Map(); + i.forEach((u2) => { + if (c3.has(u2)) + return; + c3.set(u2, gt4.Started); + let l2 = r(u2); + if (l2) { + let d5 = this.opts.es5 ? J4.varKinds.var : J4.varKinds.const; + o = (0, x2._)`${o}${d5} ${u2} = ${l2};${this.opts._n}`; + } else if (l2 = n2?.(u2)) + o = (0, x2._)`${o}${l2}${this.opts._n}`; + else + throw new rr3(u2); + c3.set(u2, gt4.Completed); + }); + } + return o; + } + }; + J4.ValueScope = sr2; +}); +var P = $2((E4) => { + "use strict"; + Object.defineProperty(E4, "__esModule", { value: true }); + E4.or = E4.and = E4.not = E4.CodeGen = E4.operators = E4.varKinds = E4.ValueScopeName = E4.ValueScope = E4.Scope = E4.Name = E4.regexpCode = E4.stringify = E4.getProperty = E4.nil = E4.strConcat = E4.str = E4._ = void 0; + var k3 = He(), Z = nr(), fe2 = He(); + Object.defineProperty(E4, "_", { enumerable: true, get: function() { + return fe2._; + } }); + Object.defineProperty(E4, "str", { enumerable: true, get: function() { + return fe2.str; + } }); + Object.defineProperty(E4, "strConcat", { enumerable: true, get: function() { + return fe2.strConcat; + } }); + Object.defineProperty(E4, "nil", { enumerable: true, get: function() { + return fe2.nil; + } }); + Object.defineProperty(E4, "getProperty", { enumerable: true, get: function() { + return fe2.getProperty; + } }); + Object.defineProperty(E4, "stringify", { enumerable: true, get: function() { + return fe2.stringify; + } }); + Object.defineProperty(E4, "regexpCode", { enumerable: true, get: function() { + return fe2.regexpCode; + } }); + Object.defineProperty(E4, "Name", { enumerable: true, get: function() { + return fe2.Name; + } }); + var St2 = nr(); + Object.defineProperty(E4, "Scope", { enumerable: true, get: function() { + return St2.Scope; + } }); + Object.defineProperty(E4, "ValueScope", { enumerable: true, get: function() { + return St2.ValueScope; + } }); + Object.defineProperty(E4, "ValueScopeName", { enumerable: true, get: function() { + return St2.ValueScopeName; + } }); + Object.defineProperty(E4, "varKinds", { enumerable: true, get: function() { + return St2.varKinds; + } }); + E4.operators = { GT: new k3._Code(">"), GTE: new k3._Code(">="), LT: new k3._Code("<"), LTE: new k3._Code("<="), EQ: new k3._Code("==="), NEQ: new k3._Code("!=="), NOT: new k3._Code("!"), OR: new k3._Code("||"), AND: new k3._Code("&&"), ADD: new k3._Code("+") }; + var ce = class { + optimizeNodes() { + return this; + } + optimizeNames(e, r) { + return this; + } + }, or3 = class extends ce { + constructor(e, r, s) { + super(), this.varKind = e, this.name = r, this.rhs = s; + } + render({ es5: e, _n: r }) { + let s = e ? Z.varKinds.var : this.varKind, n2 = this.rhs === void 0 ? "" : ` = ${this.rhs}`; + return `${s} ${this.name}${n2};` + r; + } + optimizeNames(e, r) { + if (e[this.name.str]) + return this.rhs && (this.rhs = Te(this.rhs, e, r)), this; + } + get names() { + return this.rhs instanceof k3._CodeOrName ? this.rhs.names : {}; + } + }, bt2 = class extends ce { + constructor(e, r, s) { + super(), this.lhs = e, this.rhs = r, this.sideEffects = s; + } + render({ _n: e }) { + return `${this.lhs} = ${this.rhs};` + e; + } + optimizeNames(e, r) { + if (!(this.lhs instanceof k3.Name && !e[this.lhs.str] && !this.sideEffects)) + return this.rhs = Te(this.rhs, e, r), this; + } + get names() { + let e = this.lhs instanceof k3.Name ? {} : { ...this.lhs.names }; + return Pt2(e, this.rhs); + } + }, ar4 = class extends bt2 { + constructor(e, r, s, n2) { + super(e, s, n2), this.op = r; + } + render({ _n: e }) { + return `${this.lhs} ${this.op}= ${this.rhs};` + e; + } + }, ir4 = class extends ce { + constructor(e) { + super(), this.label = e, this.names = {}; + } + render({ _n: e }) { + return `${this.label}:` + e; + } + }, cr2 = class extends ce { + constructor(e) { + super(), this.label = e, this.names = {}; + } + render({ _n: e }) { + return `break${this.label ? ` ${this.label}` : ""};` + e; + } + }, ur3 = class extends ce { + constructor(e) { + super(), this.error = e; + } + render({ _n: e }) { + return `throw ${this.error};` + e; + } + get names() { + return this.error.names; + } + }, lr2 = class extends ce { + constructor(e) { + super(), this.code = e; + } + render({ _n: e }) { + return `${this.code};` + e; + } + optimizeNodes() { + return `${this.code}` ? this : void 0; + } + optimizeNames(e, r) { + return this.code = Te(this.code, e, r), this; + } + get names() { + return this.code instanceof k3._CodeOrName ? this.code.names : {}; + } + }, We2 = class extends ce { + constructor(e = []) { + super(), this.nodes = e; + } + render(e) { + return this.nodes.reduce((r, s) => r + s.render(e), ""); + } + optimizeNodes() { + let { nodes: e } = this, r = e.length; + for (; r--; ) { + let s = e[r].optimizeNodes(); + Array.isArray(s) ? e.splice(r, 1, ...s) : s ? e[r] = s : e.splice(r, 1); + } + return e.length > 0 ? this : void 0; + } + optimizeNames(e, r) { + let { nodes: s } = this, n2 = s.length; + for (; n2--; ) { + let o = s[n2]; + o.optimizeNames(e, r) || (ha3(e, o.names), s.splice(n2, 1)); + } + return s.length > 0 ? this : void 0; + } + get names() { + return this.nodes.reduce((e, r) => Ee2(e, r.names), {}); + } + }, ue = class extends We2 { + render(e) { + return "{" + e._n + super.render(e) + "}" + e._n; + } + }, dr3 = class extends We2 { + }, Oe3 = class extends ue { + }; + Oe3.kind = "else"; + var we2 = class t extends ue { + constructor(e, r) { + super(r), this.condition = e; + } + render(e) { + let r = `if(${this.condition})` + super.render(e); + return this.else && (r += "else " + this.else.render(e)), r; + } + optimizeNodes() { + super.optimizeNodes(); + let e = this.condition; + if (e === true) + return this.nodes; + let r = this.else; + if (r) { + let s = r.optimizeNodes(); + r = this.else = Array.isArray(s) ? new Oe3(s) : s; + } + if (r) + return e === false ? r instanceof t ? r : r.nodes : this.nodes.length ? this : new t(Vs2(e), r instanceof t ? [r] : r.nodes); + if (!(e === false || !this.nodes.length)) + return this; + } + optimizeNames(e, r) { + var s; + if (this.else = (s = this.else) === null || s === void 0 ? void 0 : s.optimizeNames(e, r), !!(super.optimizeNames(e, r) || this.else)) + return this.condition = Te(this.condition, e, r), this; + } + get names() { + let e = super.names; + return Pt2(e, this.condition), this.else && Ee2(e, this.else.names), e; + } + }; + we2.kind = "if"; + var be = class extends ue { + }; + be.kind = "for"; + var fr3 = class extends be { + constructor(e) { + super(), this.iteration = e; + } + render(e) { + return `for(${this.iteration})` + super.render(e); + } + optimizeNames(e, r) { + if (super.optimizeNames(e, r)) + return this.iteration = Te(this.iteration, e, r), this; + } + get names() { + return Ee2(super.names, this.iteration.names); + } + }, hr3 = class extends be { + constructor(e, r, s, n2) { + super(), this.varKind = e, this.name = r, this.from = s, this.to = n2; + } + render(e) { + let r = e.es5 ? Z.varKinds.var : this.varKind, { name: s, from: n2, to: o } = this; + return `for(${r} ${s}=${n2}; ${s}<${o}; ${s}++)` + super.render(e); + } + get names() { + let e = Pt2(super.names, this.from); + return Pt2(e, this.to); + } + }, Et3 = class extends be { + constructor(e, r, s, n2) { + super(), this.loop = e, this.varKind = r, this.name = s, this.iterable = n2; + } + render(e) { + return `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})` + super.render(e); + } + optimizeNames(e, r) { + if (super.optimizeNames(e, r)) + return this.iterable = Te(this.iterable, e, r), this; + } + get names() { + return Ee2(super.names, this.iterable.names); + } + }, Be2 = class extends ue { + constructor(e, r, s) { + super(), this.name = e, this.args = r, this.async = s; + } + render(e) { + return `${this.async ? "async " : ""}function ${this.name}(${this.args})` + super.render(e); + } + }; + Be2.kind = "func"; + var Qe2 = class extends We2 { + render(e) { + return "return " + super.render(e); + } + }; + Qe2.kind = "return"; + var pr3 = class extends ue { + render(e) { + let r = "try" + super.render(e); + return this.catch && (r += this.catch.render(e)), this.finally && (r += this.finally.render(e)), r; + } + optimizeNodes() { + var e, r; + return super.optimizeNodes(), (e = this.catch) === null || e === void 0 || e.optimizeNodes(), (r = this.finally) === null || r === void 0 || r.optimizeNodes(), this; + } + optimizeNames(e, r) { + var s, n2; + return super.optimizeNames(e, r), (s = this.catch) === null || s === void 0 || s.optimizeNames(e, r), (n2 = this.finally) === null || n2 === void 0 || n2.optimizeNames(e, r), this; + } + get names() { + let e = super.names; + return this.catch && Ee2(e, this.catch.names), this.finally && Ee2(e, this.finally.names), e; + } + }, Xe2 = class extends ue { + constructor(e) { + super(), this.error = e; + } + render(e) { + return `catch(${this.error})` + super.render(e); + } + }; + Xe2.kind = "catch"; + var Ye2 = class extends ue { + render(e) { + return "finally" + super.render(e); + } + }; + Ye2.kind = "finally"; + var mr3 = class { + constructor(e, r = {}) { + this._values = {}, this._blockStarts = [], this._constants = {}, this.opts = { ...r, _n: r.lines ? ` +` : "" }, this._extScope = e, this._scope = new Z.Scope({ parent: e }), this._nodes = [new dr3()]; + } + toString() { + return this._root.render(this.opts); + } + name(e) { + return this._scope.name(e); + } + scopeName(e) { + return this._extScope.name(e); + } + scopeValue(e, r) { + let s = this._extScope.value(e, r); + return (this._values[s.prefix] || (this._values[s.prefix] = /* @__PURE__ */ new Set())).add(s), s; + } + getScopeValue(e, r) { + return this._extScope.getValue(e, r); + } + scopeRefs(e) { + return this._extScope.scopeRefs(e, this._values); + } + scopeCode() { + return this._extScope.scopeCode(this._values); + } + _def(e, r, s, n2) { + let o = this._scope.toName(r); + return s !== void 0 && n2 && (this._constants[o.str] = s), this._leafNode(new or3(e, o, s)), o; + } + const(e, r, s) { + return this._def(Z.varKinds.const, e, r, s); + } + let(e, r, s) { + return this._def(Z.varKinds.let, e, r, s); + } + var(e, r, s) { + return this._def(Z.varKinds.var, e, r, s); + } + assign(e, r, s) { + return this._leafNode(new bt2(e, r, s)); + } + add(e, r) { + return this._leafNode(new ar4(e, E4.operators.ADD, r)); + } + code(e) { + return typeof e == "function" ? e() : e !== k3.nil && this._leafNode(new lr2(e)), this; + } + object(...e) { + let r = ["{"]; + for (let [s, n2] of e) + r.length > 1 && r.push(","), r.push(s), (s !== n2 || this.opts.es5) && (r.push(":"), (0, k3.addCodeArg)(r, n2)); + return r.push("}"), new k3._Code(r); + } + if(e, r, s) { + if (this._blockNode(new we2(e)), r && s) + this.code(r).else().code(s).endIf(); + else if (r) + this.code(r).endIf(); + else if (s) + throw new Error('CodeGen: "else" body without "then" body'); + return this; + } + elseIf(e) { + return this._elseNode(new we2(e)); + } + else() { + return this._elseNode(new Oe3()); + } + endIf() { + return this._endBlockNode(we2, Oe3); + } + _for(e, r) { + return this._blockNode(e), r && this.code(r).endFor(), this; + } + for(e, r) { + return this._for(new fr3(e), r); + } + forRange(e, r, s, n2, o = this.opts.es5 ? Z.varKinds.var : Z.varKinds.let) { + let a3 = this._scope.toName(e); + return this._for(new hr3(o, a3, r, s), () => n2(a3)); + } + forOf(e, r, s, n2 = Z.varKinds.const) { + let o = this._scope.toName(e); + if (this.opts.es5) { + let a3 = r instanceof k3.Name ? r : this.var("_arr", r); + return this.forRange("_i", 0, (0, k3._)`${a3}.length`, (i) => { + this.var(o, (0, k3._)`${a3}[${i}]`), s(o); + }); + } + return this._for(new Et3("of", n2, o, r), () => s(o)); + } + forIn(e, r, s, n2 = this.opts.es5 ? Z.varKinds.var : Z.varKinds.const) { + if (this.opts.ownProperties) + return this.forOf(e, (0, k3._)`Object.keys(${r})`, s); + let o = this._scope.toName(e); + return this._for(new Et3("in", n2, o, r), () => s(o)); + } + endFor() { + return this._endBlockNode(be); + } + label(e) { + return this._leafNode(new ir4(e)); + } + break(e) { + return this._leafNode(new cr2(e)); + } + return(e) { + let r = new Qe2(); + if (this._blockNode(r), this.code(e), r.nodes.length !== 1) + throw new Error('CodeGen: "return" should have one node'); + return this._endBlockNode(Qe2); + } + try(e, r, s) { + if (!r && !s) + throw new Error('CodeGen: "try" without "catch" and "finally"'); + let n2 = new pr3(); + if (this._blockNode(n2), this.code(e), r) { + let o = this.name("e"); + this._currNode = n2.catch = new Xe2(o), r(o); + } + return s && (this._currNode = n2.finally = new Ye2(), this.code(s)), this._endBlockNode(Xe2, Ye2); + } + throw(e) { + return this._leafNode(new ur3(e)); + } + block(e, r) { + return this._blockStarts.push(this._nodes.length), e && this.code(e).endBlock(r), this; + } + endBlock(e) { + let r = this._blockStarts.pop(); + if (r === void 0) + throw new Error("CodeGen: not in self-balancing block"); + let s = this._nodes.length - r; + if (s < 0 || e !== void 0 && s !== e) + throw new Error(`CodeGen: wrong number of nodes: ${s} vs ${e} expected`); + return this._nodes.length = r, this; + } + func(e, r = k3.nil, s, n2) { + return this._blockNode(new Be2(e, r, s)), n2 && this.code(n2).endFunc(), this; + } + endFunc() { + return this._endBlockNode(Be2); + } + optimize(e = 1) { + for (; e-- > 0; ) + this._root.optimizeNodes(), this._root.optimizeNames(this._root.names, this._constants); + } + _leafNode(e) { + return this._currNode.nodes.push(e), this; + } + _blockNode(e) { + this._currNode.nodes.push(e), this._nodes.push(e); + } + _endBlockNode(e, r) { + let s = this._currNode; + if (s instanceof e || r && s instanceof r) + return this._nodes.pop(), this; + throw new Error(`CodeGen: not in block "${r ? `${e.kind}/${r.kind}` : e.kind}"`); + } + _elseNode(e) { + let r = this._currNode; + if (!(r instanceof we2)) + throw new Error('CodeGen: "else" without "if"'); + return this._currNode = r.else = e, this; + } + get _root() { + return this._nodes[0]; + } + get _currNode() { + let e = this._nodes; + return e[e.length - 1]; + } + set _currNode(e) { + let r = this._nodes; + r[r.length - 1] = e; + } + }; + E4.CodeGen = mr3; + function Ee2(t, e) { + for (let r in e) + t[r] = (t[r] || 0) + (e[r] || 0); + return t; + } + function Pt2(t, e) { + return e instanceof k3._CodeOrName ? Ee2(t, e.names) : t; + } + function Te(t, e, r) { + if (t instanceof k3.Name) + return s(t); + if (!n2(t)) + return t; + return new k3._Code(t._items.reduce((o, a3) => (a3 instanceof k3.Name && (a3 = s(a3)), a3 instanceof k3._Code ? o.push(...a3._items) : o.push(a3), o), [])); + function s(o) { + let a3 = r[o.str]; + return a3 === void 0 || e[o.str] !== 1 ? o : (delete e[o.str], a3); + } + function n2(o) { + return o instanceof k3._Code && o._items.some((a3) => a3 instanceof k3.Name && e[a3.str] === 1 && r[a3.str] !== void 0); + } + } + function ha3(t, e) { + for (let r in e) + t[r] = (t[r] || 0) - (e[r] || 0); + } + function Vs2(t) { + return typeof t == "boolean" || typeof t == "number" || t === null ? !t : (0, k3._)`!${yr3(t)}`; + } + E4.not = Vs2; + var pa2 = Ks2(E4.operators.AND); + function ma2(...t) { + return t.reduce(pa2); + } + E4.and = ma2; + var ya2 = Ks2(E4.operators.OR); + function _a2(...t) { + return t.reduce(ya2); + } + E4.or = _a2; + function Ks2(t) { + return (e, r) => e === k3.nil ? r : r === k3.nil ? e : (0, k3._)`${yr3(e)} ${t} ${yr3(r)}`; + } + function yr3(t) { + return t instanceof k3.Name ? t : (0, k3._)`(${t})`; + } +}); +var T = $2((S4) => { + "use strict"; + Object.defineProperty(S4, "__esModule", { value: true }); + S4.checkStrictMode = S4.getErrorPath = S4.Type = S4.useFunc = S4.setEvaluated = S4.evaluatedPropsToName = S4.mergeEvaluated = S4.eachItem = S4.unescapeJsonPointer = S4.escapeJsonPointer = S4.escapeFragment = S4.unescapeFragment = S4.schemaRefOrVal = S4.schemaHasRulesButRef = S4.schemaHasRules = S4.checkUnknownRules = S4.alwaysValidSchema = S4.toHash = void 0; + var C3 = P(), $a2 = He(); + function ga2(t) { + let e = {}; + for (let r of t) + e[r] = true; + return e; + } + S4.toHash = ga2; + function va3(t, e) { + return typeof e == "boolean" ? e : Object.keys(e).length === 0 ? true : (zs2(t, e), !Ls2(e, t.self.RULES.all)); + } + S4.alwaysValidSchema = va3; + function zs2(t, e = t.schema) { + let { opts: r, self: s } = t; + if (!r.strictSchema || typeof e == "boolean") + return; + let n2 = s.RULES.keywords; + for (let o in e) + n2[o] || Js2(t, `unknown keyword: "${o}"`); + } + S4.checkUnknownRules = zs2; + function Ls2(t, e) { + if (typeof t == "boolean") + return !t; + for (let r in t) + if (e[r]) + return true; + return false; + } + S4.schemaHasRules = Ls2; + function wa2(t, e) { + if (typeof t == "boolean") + return !t; + for (let r in t) + if (r !== "$ref" && e.all[r]) + return true; + return false; + } + S4.schemaHasRulesButRef = wa2; + function ba2({ topSchemaRef: t, schemaPath: e }, r, s, n2) { + if (!n2) { + if (typeof r == "number" || typeof r == "boolean") + return r; + if (typeof r == "string") + return (0, C3._)`${r}`; + } + return (0, C3._)`${t}${e}${(0, C3.getProperty)(s)}`; + } + S4.schemaRefOrVal = ba2; + function Ea3(t) { + return Gs2(decodeURIComponent(t)); + } + S4.unescapeFragment = Ea3; + function Pa2(t) { + return encodeURIComponent($r3(t)); + } + S4.escapeFragment = Pa2; + function $r3(t) { + return typeof t == "number" ? `${t}` : t.replace(/~/g, "~0").replace(/\//g, "~1"); + } + S4.escapeJsonPointer = $r3; + function Gs2(t) { + return t.replace(/~1/g, "/").replace(/~0/g, "~"); + } + S4.unescapeJsonPointer = Gs2; + function Sa2(t, e) { + if (Array.isArray(t)) + for (let r of t) + e(r); + else + e(t); + } + S4.eachItem = Sa2; + function Fs2({ mergeNames: t, mergeToName: e, mergeValues: r, resultToName: s }) { + return (n2, o, a3, i) => { + let c3 = a3 === void 0 ? o : a3 instanceof C3.Name ? (o instanceof C3.Name ? t(n2, o, a3) : e(n2, o, a3), a3) : o instanceof C3.Name ? (e(n2, a3, o), o) : r(o, a3); + return i === C3.Name && !(c3 instanceof C3.Name) ? s(n2, c3) : c3; }; - P.Utils.getIntAt = function(i, t, e) { - return i.getInt32(t, e); + } + S4.mergeEvaluated = { props: Fs2({ mergeNames: (t, e, r) => t.if((0, C3._)`${r} !== true && ${e} !== undefined`, () => { + t.if((0, C3._)`${e} === true`, () => t.assign(r, true), () => t.assign(r, (0, C3._)`${r} || {}`).code((0, C3._)`Object.assign(${r}, ${e})`)); + }), mergeToName: (t, e, r) => t.if((0, C3._)`${r} !== true`, () => { + e === true ? t.assign(r, true) : (t.assign(r, (0, C3._)`${r} || {}`), gr3(t, r, e)); + }), mergeValues: (t, e) => t === true ? true : { ...t, ...e }, resultToName: xs2 }), items: Fs2({ mergeNames: (t, e, r) => t.if((0, C3._)`${r} !== true && ${e} !== undefined`, () => t.assign(r, (0, C3._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)), mergeToName: (t, e, r) => t.if((0, C3._)`${r} !== true`, () => t.assign(r, e === true ? true : (0, C3._)`${r} > ${e} ? ${r} : ${e}`)), mergeValues: (t, e) => t === true ? true : Math.max(t, e), resultToName: (t, e) => t.var("items", e) }) }; + function xs2(t, e) { + if (e === true) + return t.var("props", true); + let r = t.var("props", (0, C3._)`{}`); + return e !== void 0 && gr3(t, r, e), r; + } + S4.evaluatedPropsToName = xs2; + function gr3(t, e, r) { + Object.keys(r).forEach((s) => t.assign((0, C3._)`${e}${(0, C3.getProperty)(s)}`, true)); + } + S4.setEvaluated = gr3; + var Us2 = {}; + function Na2(t, e) { + return t.scopeValue("func", { ref: e, code: Us2[e.code] || (Us2[e.code] = new $a2._Code(e.code)) }); + } + S4.useFunc = Na2; + var _r3; + (function(t) { + t[t.Num = 0] = "Num", t[t.Str = 1] = "Str"; + })(_r3 || (S4.Type = _r3 = {})); + function ka2(t, e, r) { + if (t instanceof C3.Name) { + let s = e === _r3.Num; + return r ? s ? (0, C3._)`"[" + ${t} + "]"` : (0, C3._)`"['" + ${t} + "']"` : s ? (0, C3._)`"/" + ${t}` : (0, C3._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`; + } + return r ? (0, C3.getProperty)(t).toString() : "/" + $r3(t); + } + S4.getErrorPath = ka2; + function Js2(t, e, r = t.opts.strictSchema) { + if (r) { + if (e = `strict mode: ${e}`, r === true) + throw new Error(e); + t.self.logger.warn(e); + } + } + S4.checkStrictMode = Js2; +}); +var le = $2((vr2) => { + "use strict"; + Object.defineProperty(vr2, "__esModule", { value: true }); + var F2 = P(), ja2 = { data: new F2.Name("data"), valCxt: new F2.Name("valCxt"), instancePath: new F2.Name("instancePath"), parentData: new F2.Name("parentData"), parentDataProperty: new F2.Name("parentDataProperty"), rootData: new F2.Name("rootData"), dynamicAnchors: new F2.Name("dynamicAnchors"), vErrors: new F2.Name("vErrors"), errors: new F2.Name("errors"), this: new F2.Name("this"), self: new F2.Name("self"), scope: new F2.Name("scope"), json: new F2.Name("json"), jsonPos: new F2.Name("jsonPos"), jsonLen: new F2.Name("jsonLen"), jsonPart: new F2.Name("jsonPart") }; + vr2.default = ja2; +}); +var Ze = $2((U2) => { + "use strict"; + Object.defineProperty(U2, "__esModule", { value: true }); + U2.extendErrors = U2.resetErrorsCount = U2.reportExtraError = U2.reportError = U2.keyword$DataError = U2.keywordError = void 0; + var q4 = P(), Nt2 = T(), L3 = le(); + U2.keywordError = { message: ({ keyword: t }) => (0, q4.str)`must pass "${t}" keyword validation` }; + U2.keyword$DataError = { message: ({ keyword: t, schemaType: e }) => e ? (0, q4.str)`"${t}" keyword must be ${e} ($data)` : (0, q4.str)`"${t}" keyword is invalid ($data)` }; + function qa2(t, e = U2.keywordError, r, s) { + let { it: n2 } = t, { gen: o, compositeRule: a3, allErrors: i } = n2, c3 = Bs2(t, e, r); + s ?? (a3 || i) ? Hs2(o, c3) : Ws2(n2, (0, q4._)`[${c3}]`); + } + U2.reportError = qa2; + function Oa2(t, e = U2.keywordError, r) { + let { it: s } = t, { gen: n2, compositeRule: o, allErrors: a3 } = s, i = Bs2(t, e, r); + Hs2(n2, i), o || a3 || Ws2(s, L3.default.vErrors); + } + U2.reportExtraError = Oa2; + function Ta2(t, e) { + t.assign(L3.default.errors, e), t.if((0, q4._)`${L3.default.vErrors} !== null`, () => t.if(e, () => t.assign((0, q4._)`${L3.default.vErrors}.length`, e), () => t.assign(L3.default.vErrors, null))); + } + U2.resetErrorsCount = Ta2; + function Ra2({ gen: t, keyword: e, schemaValue: r, data: s, errsCount: n2, it: o }) { + if (n2 === void 0) + throw new Error("ajv implementation error"); + let a3 = t.name("err"); + t.forRange("i", n2, L3.default.errors, (i) => { + t.const(a3, (0, q4._)`${L3.default.vErrors}[${i}]`), t.if((0, q4._)`${a3}.instancePath === undefined`, () => t.assign((0, q4._)`${a3}.instancePath`, (0, q4.strConcat)(L3.default.instancePath, o.errorPath))), t.assign((0, q4._)`${a3}.schemaPath`, (0, q4.str)`${o.errSchemaPath}/${e}`), o.opts.verbose && (t.assign((0, q4._)`${a3}.schema`, r), t.assign((0, q4._)`${a3}.data`, s)); + }); + } + U2.extendErrors = Ra2; + function Hs2(t, e) { + let r = t.const("err", e); + t.if((0, q4._)`${L3.default.vErrors} === null`, () => t.assign(L3.default.vErrors, (0, q4._)`[${r}]`), (0, q4._)`${L3.default.vErrors}.push(${r})`), t.code((0, q4._)`${L3.default.errors}++`); + } + function Ws2(t, e) { + let { gen: r, validateName: s, schemaEnv: n2 } = t; + n2.$async ? r.throw((0, q4._)`new ${t.ValidationError}(${e})`) : (r.assign((0, q4._)`${s}.errors`, e), r.return(false)); + } + var Pe = { keyword: new q4.Name("keyword"), schemaPath: new q4.Name("schemaPath"), params: new q4.Name("params"), propertyName: new q4.Name("propertyName"), message: new q4.Name("message"), schema: new q4.Name("schema"), parentSchema: new q4.Name("parentSchema") }; + function Bs2(t, e, r) { + let { createErrors: s } = t.it; + return s === false ? (0, q4._)`{}` : Ca2(t, e, r); + } + function Ca2(t, e, r = {}) { + let { gen: s, it: n2 } = t, o = [Ia2(n2, r), Ma2(t, r)]; + return Aa2(t, e, o), s.object(...o); + } + function Ia2({ errorPath: t }, { instancePath: e }) { + let r = e ? (0, q4.str)`${t}${(0, Nt2.getErrorPath)(e, Nt2.Type.Str)}` : t; + return [L3.default.instancePath, (0, q4.strConcat)(L3.default.instancePath, r)]; + } + function Ma2({ keyword: t, it: { errSchemaPath: e } }, { schemaPath: r, parentSchema: s }) { + let n2 = s ? e : (0, q4.str)`${e}/${t}`; + return r && (n2 = (0, q4.str)`${n2}${(0, Nt2.getErrorPath)(r, Nt2.Type.Str)}`), [Pe.schemaPath, n2]; + } + function Aa2(t, { params: e, message: r }, s) { + let { keyword: n2, data: o, schemaValue: a3, it: i } = t, { opts: c3, propertyName: u2, topSchemaRef: l2, schemaPath: d5 } = i; + s.push([Pe.keyword, n2], [Pe.params, typeof e == "function" ? e(t) : e || (0, q4._)`{}`]), c3.messages && s.push([Pe.message, typeof r == "function" ? r(t) : r]), c3.verbose && s.push([Pe.schema, a3], [Pe.parentSchema, (0, q4._)`${l2}${d5}`], [L3.default.data, o]), u2 && s.push([Pe.propertyName, u2]); + } +}); +var Xs = $2((Re2) => { + "use strict"; + Object.defineProperty(Re2, "__esModule", { value: true }); + Re2.boolOrEmptySchema = Re2.topBoolOrEmptySchema = void 0; + var Da2 = Ze(), Va2 = P(), Ka2 = le(), Fa2 = { message: "boolean schema is false" }; + function Ua2(t) { + let { gen: e, schema: r, validateName: s } = t; + r === false ? Qs2(t, false) : typeof r == "object" && r.$async === true ? e.return(Ka2.default.data) : (e.assign((0, Va2._)`${s}.errors`, null), e.return(true)); + } + Re2.topBoolOrEmptySchema = Ua2; + function za2(t, e) { + let { gen: r, schema: s } = t; + s === false ? (r.var(e, false), Qs2(t)) : r.var(e, true); + } + Re2.boolOrEmptySchema = za2; + function Qs2(t, e) { + let { gen: r, data: s } = t, n2 = { gen: r, keyword: "false schema", data: s, schema: false, schemaCode: false, schemaValue: false, params: {}, it: t }; + (0, Da2.reportError)(n2, Fa2, void 0, e); + } +}); +var wr = $2((Ce) => { + "use strict"; + Object.defineProperty(Ce, "__esModule", { value: true }); + Ce.getRules = Ce.isJSONType = void 0; + var La2 = ["string", "number", "integer", "boolean", "null", "object", "array"], Ga2 = new Set(La2); + function xa2(t) { + return typeof t == "string" && Ga2.has(t); + } + Ce.isJSONType = xa2; + function Ja2() { + let t = { number: { type: "number", rules: [] }, string: { type: "string", rules: [] }, array: { type: "array", rules: [] }, object: { type: "object", rules: [] } }; + return { types: { ...t, integer: true, boolean: true, null: true }, rules: [{ rules: [] }, t.number, t.string, t.array, t.object], post: { rules: [] }, all: {}, keywords: {} }; + } + Ce.getRules = Ja2; +}); +var br = $2((he) => { + "use strict"; + Object.defineProperty(he, "__esModule", { value: true }); + he.shouldUseRule = he.shouldUseGroup = he.schemaHasRulesForType = void 0; + function Ha2({ schema: t, self: e }, r) { + let s = e.RULES.types[r]; + return s && s !== true && Ys2(t, s); + } + he.schemaHasRulesForType = Ha2; + function Ys2(t, e) { + return e.rules.some((r) => Zs2(t, r)); + } + he.shouldUseGroup = Ys2; + function Zs2(t, e) { + var r; + return t[e.keyword] !== void 0 || ((r = e.definition.implements) === null || r === void 0 ? void 0 : r.some((s) => t[s] !== void 0)); + } + he.shouldUseRule = Zs2; +}); +var et = $2((z4) => { + "use strict"; + Object.defineProperty(z4, "__esModule", { value: true }); + z4.reportTypeError = z4.checkDataTypes = z4.checkDataType = z4.coerceAndCheckDataType = z4.getJSONTypes = z4.getSchemaTypes = z4.DataType = void 0; + var Wa2 = wr(), Ba2 = br(), Qa2 = Ze(), b2 = P(), en3 = T(), Ie2; + (function(t) { + t[t.Correct = 0] = "Correct", t[t.Wrong = 1] = "Wrong"; + })(Ie2 || (z4.DataType = Ie2 = {})); + function Xa2(t) { + let e = tn3(t.type); + if (e.includes("null")) { + if (t.nullable === false) + throw new Error("type: null contradicts nullable: false"); + } else { + if (!e.length && t.nullable !== void 0) + throw new Error('"nullable" cannot be used without "type"'); + t.nullable === true && e.push("null"); + } + return e; + } + z4.getSchemaTypes = Xa2; + function tn3(t) { + let e = Array.isArray(t) ? t : t ? [t] : []; + if (e.every(Wa2.isJSONType)) + return e; + throw new Error("type must be JSONType or JSONType[]: " + e.join(",")); + } + z4.getJSONTypes = tn3; + function Ya2(t, e) { + let { gen: r, data: s, opts: n2 } = t, o = Za2(e, n2.coerceTypes), a3 = e.length > 0 && !(o.length === 0 && e.length === 1 && (0, Ba2.schemaHasRulesForType)(t, e[0])); + if (a3) { + let i = Pr3(e, s, n2.strictNumbers, Ie2.Wrong); + r.if(i, () => { + o.length ? ei2(t, e, o) : Sr3(t); + }); + } + return a3; + } + z4.coerceAndCheckDataType = Ya2; + var rn3 = /* @__PURE__ */ new Set(["string", "number", "integer", "boolean", "null"]); + function Za2(t, e) { + return e ? t.filter((r) => rn3.has(r) || e === "array" && r === "array") : []; + } + function ei2(t, e, r) { + let { gen: s, data: n2, opts: o } = t, a3 = s.let("dataType", (0, b2._)`typeof ${n2}`), i = s.let("coerced", (0, b2._)`undefined`); + o.coerceTypes === "array" && s.if((0, b2._)`${a3} == 'object' && Array.isArray(${n2}) && ${n2}.length == 1`, () => s.assign(n2, (0, b2._)`${n2}[0]`).assign(a3, (0, b2._)`typeof ${n2}`).if(Pr3(e, n2, o.strictNumbers), () => s.assign(i, n2))), s.if((0, b2._)`${i} !== undefined`); + for (let u2 of r) + (rn3.has(u2) || u2 === "array" && o.coerceTypes === "array") && c3(u2); + s.else(), Sr3(t), s.endIf(), s.if((0, b2._)`${i} !== undefined`, () => { + s.assign(n2, i), ti2(t, i); + }); + function c3(u2) { + switch (u2) { + case "string": + s.elseIf((0, b2._)`${a3} == "number" || ${a3} == "boolean"`).assign(i, (0, b2._)`"" + ${n2}`).elseIf((0, b2._)`${n2} === null`).assign(i, (0, b2._)`""`); + return; + case "number": + s.elseIf((0, b2._)`${a3} == "boolean" || ${n2} === null + || (${a3} == "string" && ${n2} && ${n2} == +${n2})`).assign(i, (0, b2._)`+${n2}`); + return; + case "integer": + s.elseIf((0, b2._)`${a3} === "boolean" || ${n2} === null + || (${a3} === "string" && ${n2} && ${n2} == +${n2} && !(${n2} % 1))`).assign(i, (0, b2._)`+${n2}`); + return; + case "boolean": + s.elseIf((0, b2._)`${n2} === "false" || ${n2} === 0 || ${n2} === null`).assign(i, false).elseIf((0, b2._)`${n2} === "true" || ${n2} === 1`).assign(i, true); + return; + case "null": + s.elseIf((0, b2._)`${n2} === "" || ${n2} === 0 || ${n2} === false`), s.assign(i, null); + return; + case "array": + s.elseIf((0, b2._)`${a3} === "string" || ${a3} === "number" + || ${a3} === "boolean" || ${n2} === null`).assign(i, (0, b2._)`[${n2}]`); + } + } + } + function ti2({ gen: t, parentData: e, parentDataProperty: r }, s) { + t.if((0, b2._)`${e} !== undefined`, () => t.assign((0, b2._)`${e}[${r}]`, s)); + } + function Er3(t, e, r, s = Ie2.Correct) { + let n2 = s === Ie2.Correct ? b2.operators.EQ : b2.operators.NEQ, o; + switch (t) { + case "null": + return (0, b2._)`${e} ${n2} null`; + case "array": + o = (0, b2._)`Array.isArray(${e})`; + break; + case "object": + o = (0, b2._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`; + break; + case "integer": + o = a3((0, b2._)`!(${e} % 1) && !isNaN(${e})`); + break; + case "number": + o = a3(); + break; + default: + return (0, b2._)`typeof ${e} ${n2} ${t}`; + } + return s === Ie2.Correct ? o : (0, b2.not)(o); + function a3(i = b2.nil) { + return (0, b2.and)((0, b2._)`typeof ${e} == "number"`, i, r ? (0, b2._)`isFinite(${e})` : b2.nil); + } + } + z4.checkDataType = Er3; + function Pr3(t, e, r, s) { + if (t.length === 1) + return Er3(t[0], e, r, s); + let n2, o = (0, en3.toHash)(t); + if (o.array && o.object) { + let a3 = (0, b2._)`typeof ${e} != "object"`; + n2 = o.null ? a3 : (0, b2._)`!${e} || ${a3}`, delete o.null, delete o.array, delete o.object; + } else + n2 = b2.nil; + o.number && delete o.integer; + for (let a3 in o) + n2 = (0, b2.and)(n2, Er3(a3, e, r, s)); + return n2; + } + z4.checkDataTypes = Pr3; + var ri2 = { message: ({ schema: t }) => `must be ${t}`, params: ({ schema: t, schemaValue: e }) => typeof t == "string" ? (0, b2._)`{type: ${t}}` : (0, b2._)`{type: ${e}}` }; + function Sr3(t) { + let e = si2(t); + (0, Qa2.reportError)(e, ri2); + } + z4.reportTypeError = Sr3; + function si2(t) { + let { gen: e, data: r, schema: s } = t, n2 = (0, en3.schemaRefOrVal)(t, s, "type"); + return { gen: e, keyword: "type", data: r, schema: s.type, schemaCode: n2, schemaValue: n2, parentSchema: s, params: {}, it: t }; + } +}); +var nn = $2((kt3) => { + "use strict"; + Object.defineProperty(kt3, "__esModule", { value: true }); + kt3.assignDefaults = void 0; + var Me2 = P(), ni2 = T(); + function oi2(t, e) { + let { properties: r, items: s } = t.schema; + if (e === "object" && r) + for (let n2 in r) + sn3(t, n2, r[n2].default); + else + e === "array" && Array.isArray(s) && s.forEach((n2, o) => sn3(t, o, n2.default)); + } + kt3.assignDefaults = oi2; + function sn3(t, e, r) { + let { gen: s, compositeRule: n2, data: o, opts: a3 } = t; + if (r === void 0) + return; + let i = (0, Me2._)`${o}${(0, Me2.getProperty)(e)}`; + if (n2) { + (0, ni2.checkStrictMode)(t, `default is ignored for: ${i}`); + return; + } + let c3 = (0, Me2._)`${i} === undefined`; + a3.useDefaults === "empty" && (c3 = (0, Me2._)`${c3} || ${i} === null || ${i} === ""`), s.if(c3, (0, Me2._)`${i} = ${(0, Me2.stringify)(r)}`); + } +}); +var Q2 = $2((R2) => { + "use strict"; + Object.defineProperty(R2, "__esModule", { value: true }); + R2.validateUnion = R2.validateArray = R2.usePattern = R2.callValidateCode = R2.schemaProperties = R2.allSchemaProperties = R2.noPropertyInData = R2.propertyInData = R2.isOwnProperty = R2.hasPropFunc = R2.reportMissingProp = R2.checkMissingProp = R2.checkReportMissingProp = void 0; + var M3 = P(), Nr3 = T(), pe2 = le(), ai2 = T(); + function ii(t, e) { + let { gen: r, data: s, it: n2 } = t; + r.if(jr3(r, s, e, n2.opts.ownProperties), () => { + t.setParams({ missingProperty: (0, M3._)`${e}` }, true), t.error(); + }); + } + R2.checkReportMissingProp = ii; + function ci2({ gen: t, data: e, it: { opts: r } }, s, n2) { + return (0, M3.or)(...s.map((o) => (0, M3.and)(jr3(t, e, o, r.ownProperties), (0, M3._)`${n2} = ${o}`))); + } + R2.checkMissingProp = ci2; + function ui2(t, e) { + t.setParams({ missingProperty: e }, true), t.error(); + } + R2.reportMissingProp = ui2; + function on3(t) { + return t.scopeValue("func", { ref: Object.prototype.hasOwnProperty, code: (0, M3._)`Object.prototype.hasOwnProperty` }); + } + R2.hasPropFunc = on3; + function kr4(t, e, r) { + return (0, M3._)`${on3(t)}.call(${e}, ${r})`; + } + R2.isOwnProperty = kr4; + function li2(t, e, r, s) { + let n2 = (0, M3._)`${e}${(0, M3.getProperty)(r)} !== undefined`; + return s ? (0, M3._)`${n2} && ${kr4(t, e, r)}` : n2; + } + R2.propertyInData = li2; + function jr3(t, e, r, s) { + let n2 = (0, M3._)`${e}${(0, M3.getProperty)(r)} === undefined`; + return s ? (0, M3.or)(n2, (0, M3.not)(kr4(t, e, r))) : n2; + } + R2.noPropertyInData = jr3; + function an3(t) { + return t ? Object.keys(t).filter((e) => e !== "__proto__") : []; + } + R2.allSchemaProperties = an3; + function di2(t, e) { + return an3(e).filter((r) => !(0, Nr3.alwaysValidSchema)(t, e[r])); + } + R2.schemaProperties = di2; + function fi2({ schemaCode: t, data: e, it: { gen: r, topSchemaRef: s, schemaPath: n2, errorPath: o }, it: a3 }, i, c3, u2) { + let l2 = u2 ? (0, M3._)`${t}, ${e}, ${s}${n2}` : e, d5 = [[pe2.default.instancePath, (0, M3.strConcat)(pe2.default.instancePath, o)], [pe2.default.parentData, a3.parentData], [pe2.default.parentDataProperty, a3.parentDataProperty], [pe2.default.rootData, pe2.default.rootData]]; + a3.opts.dynamicRef && d5.push([pe2.default.dynamicAnchors, pe2.default.dynamicAnchors]); + let _3 = (0, M3._)`${l2}, ${r.object(...d5)}`; + return c3 !== M3.nil ? (0, M3._)`${i}.call(${c3}, ${_3})` : (0, M3._)`${i}(${_3})`; + } + R2.callValidateCode = fi2; + var hi2 = (0, M3._)`new RegExp`; + function pi2({ gen: t, it: { opts: e } }, r) { + let s = e.unicodeRegExp ? "u" : "", { regExp: n2 } = e.code, o = n2(r, s); + return t.scopeValue("pattern", { key: o.toString(), ref: o, code: (0, M3._)`${n2.code === "new RegExp" ? hi2 : (0, ai2.useFunc)(t, n2)}(${r}, ${s})` }); + } + R2.usePattern = pi2; + function mi2(t) { + let { gen: e, data: r, keyword: s, it: n2 } = t, o = e.name("valid"); + if (n2.allErrors) { + let i = e.let("valid", true); + return a3(() => e.assign(i, false)), i; + } + return e.var(o, true), a3(() => e.break()), o; + function a3(i) { + let c3 = e.const("len", (0, M3._)`${r}.length`); + e.forRange("i", 0, c3, (u2) => { + t.subschema({ keyword: s, dataProp: u2, dataPropType: Nr3.Type.Num }, o), e.if((0, M3.not)(o), i); + }); + } + } + R2.validateArray = mi2; + function yi2(t) { + let { gen: e, schema: r, keyword: s, it: n2 } = t; + if (!Array.isArray(r)) + throw new Error("ajv implementation error"); + if (r.some((c3) => (0, Nr3.alwaysValidSchema)(n2, c3)) && !n2.opts.unevaluated) + return; + let a3 = e.let("valid", false), i = e.name("_valid"); + e.block(() => r.forEach((c3, u2) => { + let l2 = t.subschema({ keyword: s, schemaProp: u2, compositeRule: true }, i); + e.assign(a3, (0, M3._)`${a3} || ${i}`), t.mergeValidEvaluated(l2, i) || e.if((0, M3.not)(a3)); + })), t.result(a3, () => t.reset(), () => t.error(true)); + } + R2.validateUnion = yi2; +}); +var ln = $2((ne2) => { + "use strict"; + Object.defineProperty(ne2, "__esModule", { value: true }); + ne2.validateKeywordUsage = ne2.validSchemaType = ne2.funcKeywordCode = ne2.macroKeywordCode = void 0; + var G2 = P(), Se2 = le(), _i2 = Q2(), $i2 = Ze(); + function gi2(t, e) { + let { gen: r, keyword: s, schema: n2, parentSchema: o, it: a3 } = t, i = e.macro.call(a3.self, n2, o, a3), c3 = un3(r, s, i); + a3.opts.validateSchema !== false && a3.self.validateSchema(i, true); + let u2 = r.name("valid"); + t.subschema({ schema: i, schemaPath: G2.nil, errSchemaPath: `${a3.errSchemaPath}/${s}`, topSchemaRef: c3, compositeRule: true }, u2), t.pass(u2, () => t.error(true)); + } + ne2.macroKeywordCode = gi2; + function vi2(t, e) { + var r; + let { gen: s, keyword: n2, schema: o, parentSchema: a3, $data: i, it: c3 } = t; + bi2(c3, e); + let u2 = !i && e.compile ? e.compile.call(c3.self, o, a3, c3) : e.validate, l2 = un3(s, n2, u2), d5 = s.let("valid"); + t.block$data(d5, _3), t.ok((r = e.valid) !== null && r !== void 0 ? r : d5); + function _3() { + if (e.errors === false) + f(), e.modifying && cn3(t), p3(() => t.error()); + else { + let y4 = e.async ? m3() : h2(); + e.modifying && cn3(t), p3(() => wi2(t, y4)); + } + } + function m3() { + let y4 = s.let("ruleErrs", null); + return s.try(() => f((0, G2._)`await `), (j3) => s.assign(d5, false).if((0, G2._)`${j3} instanceof ${c3.ValidationError}`, () => s.assign(y4, (0, G2._)`${j3}.errors`), () => s.throw(j3))), y4; + } + function h2() { + let y4 = (0, G2._)`${l2}.errors`; + return s.assign(y4, null), f(G2.nil), y4; + } + function f(y4 = e.async ? (0, G2._)`await ` : G2.nil) { + let j3 = c3.opts.passContext ? Se2.default.this : Se2.default.self, N2 = !("compile" in e && !i || e.schema === false); + s.assign(d5, (0, G2._)`${y4}${(0, _i2.callValidateCode)(t, l2, j3, N2)}`, e.modifying); + } + function p3(y4) { + var j3; + s.if((0, G2.not)((j3 = e.valid) !== null && j3 !== void 0 ? j3 : d5), y4); + } + } + ne2.funcKeywordCode = vi2; + function cn3(t) { + let { gen: e, data: r, it: s } = t; + e.if(s.parentData, () => e.assign(r, (0, G2._)`${s.parentData}[${s.parentDataProperty}]`)); + } + function wi2(t, e) { + let { gen: r } = t; + r.if((0, G2._)`Array.isArray(${e})`, () => { + r.assign(Se2.default.vErrors, (0, G2._)`${Se2.default.vErrors} === null ? ${e} : ${Se2.default.vErrors}.concat(${e})`).assign(Se2.default.errors, (0, G2._)`${Se2.default.vErrors}.length`), (0, $i2.extendErrors)(t); + }, () => t.error()); + } + function bi2({ schemaEnv: t }, e) { + if (e.async && !t.$async) + throw new Error("async keyword in sync schema"); + } + function un3(t, e, r) { + if (r === void 0) + throw new Error(`keyword "${e}" failed to compile`); + return t.scopeValue("keyword", typeof r == "function" ? { ref: r } : { ref: r, code: (0, G2.stringify)(r) }); + } + function Ei2(t, e, r = false) { + return !e.length || e.some((s) => s === "array" ? Array.isArray(t) : s === "object" ? t && typeof t == "object" && !Array.isArray(t) : typeof t == s || r && typeof t > "u"); + } + ne2.validSchemaType = Ei2; + function Pi({ schema: t, opts: e, self: r, errSchemaPath: s }, n2, o) { + if (Array.isArray(n2.keyword) ? !n2.keyword.includes(o) : n2.keyword !== o) + throw new Error("ajv implementation error"); + let a3 = n2.dependencies; + if (a3?.some((i) => !Object.prototype.hasOwnProperty.call(t, i))) + throw new Error(`parent schema must have dependencies of ${o}: ${a3.join(",")}`); + if (n2.validateSchema && !n2.validateSchema(t[o])) { + let c3 = `keyword "${o}" value is invalid at path "${s}": ` + r.errorsText(n2.validateSchema.errors); + if (e.validateSchema === "log") + r.logger.error(c3); + else + throw new Error(c3); + } + } + ne2.validateKeywordUsage = Pi; +}); +var fn = $2((me) => { + "use strict"; + Object.defineProperty(me, "__esModule", { value: true }); + me.extendSubschemaMode = me.extendSubschemaData = me.getSubschema = void 0; + var oe = P(), dn3 = T(); + function Si2(t, { keyword: e, schemaProp: r, schema: s, schemaPath: n2, errSchemaPath: o, topSchemaRef: a3 }) { + if (e !== void 0 && s !== void 0) + throw new Error('both "keyword" and "schema" passed, only one allowed'); + if (e !== void 0) { + let i = t.schema[e]; + return r === void 0 ? { schema: i, schemaPath: (0, oe._)`${t.schemaPath}${(0, oe.getProperty)(e)}`, errSchemaPath: `${t.errSchemaPath}/${e}` } : { schema: i[r], schemaPath: (0, oe._)`${t.schemaPath}${(0, oe.getProperty)(e)}${(0, oe.getProperty)(r)}`, errSchemaPath: `${t.errSchemaPath}/${e}/${(0, dn3.escapeFragment)(r)}` }; + } + if (s !== void 0) { + if (n2 === void 0 || o === void 0 || a3 === void 0) + throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"'); + return { schema: s, schemaPath: n2, topSchemaRef: a3, errSchemaPath: o }; + } + throw new Error('either "keyword" or "schema" must be passed'); + } + me.getSubschema = Si2; + function Ni2(t, e, { dataProp: r, dataPropType: s, data: n2, dataTypes: o, propertyName: a3 }) { + if (n2 !== void 0 && r !== void 0) + throw new Error('both "data" and "dataProp" passed, only one allowed'); + let { gen: i } = e; + if (r !== void 0) { + let { errorPath: u2, dataPathArr: l2, opts: d5 } = e, _3 = i.let("data", (0, oe._)`${e.data}${(0, oe.getProperty)(r)}`, true); + c3(_3), t.errorPath = (0, oe.str)`${u2}${(0, dn3.getErrorPath)(r, s, d5.jsPropertySyntax)}`, t.parentDataProperty = (0, oe._)`${r}`, t.dataPathArr = [...l2, t.parentDataProperty]; + } + if (n2 !== void 0) { + let u2 = n2 instanceof oe.Name ? n2 : i.let("data", n2, true); + c3(u2), a3 !== void 0 && (t.propertyName = a3); + } + o && (t.dataTypes = o); + function c3(u2) { + t.data = u2, t.dataLevel = e.dataLevel + 1, t.dataTypes = [], e.definedProperties = /* @__PURE__ */ new Set(), t.parentData = e.data, t.dataNames = [...e.dataNames, u2]; + } + } + me.extendSubschemaData = Ni2; + function ki2(t, { jtdDiscriminator: e, jtdMetadata: r, compositeRule: s, createErrors: n2, allErrors: o }) { + s !== void 0 && (t.compositeRule = s), n2 !== void 0 && (t.createErrors = n2), o !== void 0 && (t.allErrors = o), t.jtdDiscriminator = e, t.jtdMetadata = r; + } + me.extendSubschemaMode = ki2; +}); +var tt = $2((H2) => { + "use strict"; + Object.defineProperty(H2, "__esModule", { value: true }); + H2.getSchemaRefs = H2.resolveUrl = H2.normalizeId = H2._getFullPath = H2.getFullPath = H2.inlineRef = void 0; + var ji2 = T(), qi2 = $t("fast-deep-equal"), Oi2 = $t("json-schema-traverse"), Ti2 = /* @__PURE__ */ new Set(["type", "format", "pattern", "maxLength", "minLength", "maxProperties", "minProperties", "maxItems", "minItems", "maximum", "minimum", "uniqueItems", "multipleOf", "required", "enum", "const"]); + function Ri2(t, e = true) { + return typeof t == "boolean" ? true : e === true ? !qr2(t) : e ? hn2(t) <= e : false; + } + H2.inlineRef = Ri2; + var Ci2 = /* @__PURE__ */ new Set(["$ref", "$recursiveRef", "$recursiveAnchor", "$dynamicRef", "$dynamicAnchor"]); + function qr2(t) { + for (let e in t) { + if (Ci2.has(e)) + return true; + let r = t[e]; + if (Array.isArray(r) && r.some(qr2) || typeof r == "object" && qr2(r)) + return true; + } + return false; + } + function hn2(t) { + let e = 0; + for (let r in t) { + if (r === "$ref") + return 1 / 0; + if (e++, !Ti2.has(r) && (typeof t[r] == "object" && (0, ji2.eachItem)(t[r], (s) => e += hn2(s)), e === 1 / 0)) + return 1 / 0; + } + return e; + } + function pn3(t, e = "", r) { + r !== false && (e = Ae2(e)); + let s = t.parse(e); + return mn3(t, s); + } + H2.getFullPath = pn3; + function mn3(t, e) { + return t.serialize(e).split("#")[0] + "#"; + } + H2._getFullPath = mn3; + var Ii2 = /#\/?$/; + function Ae2(t) { + return t ? t.replace(Ii2, "") : ""; + } + H2.normalizeId = Ae2; + function Mi2(t, e, r) { + return r = Ae2(r), t.resolve(e, r); + } + H2.resolveUrl = Mi2; + var Ai2 = /^[a-z_][-a-z0-9._]*$/i; + function Di2(t, e) { + if (typeof t == "boolean") + return {}; + let { schemaId: r, uriResolver: s } = this.opts, n2 = Ae2(t[r] || e), o = { "": n2 }, a3 = pn3(s, n2, false), i = {}, c3 = /* @__PURE__ */ new Set(); + return Oi2(t, { allKeys: true }, (d5, _3, m3, h2) => { + if (h2 === void 0) + return; + let f = a3 + _3, p3 = o[h2]; + typeof d5[r] == "string" && (p3 = y4.call(this, d5[r])), j3.call(this, d5.$anchor), j3.call(this, d5.$dynamicAnchor), o[_3] = p3; + function y4(N2) { + let I4 = this.opts.uriResolver.resolve; + if (N2 = Ae2(p3 ? I4(p3, N2) : N2), c3.has(N2)) + throw l2(N2); + c3.add(N2); + let w2 = this.refs[N2]; + return typeof w2 == "string" && (w2 = this.refs[w2]), typeof w2 == "object" ? u2(d5, w2.schema, N2) : N2 !== Ae2(f) && (N2[0] === "#" ? (u2(d5, i[N2], N2), i[N2] = d5) : this.refs[N2] = f), N2; + } + function j3(N2) { + if (typeof N2 == "string") { + if (!Ai2.test(N2)) + throw new Error(`invalid anchor "${N2}"`); + y4.call(this, `#${N2}`); + } + } + }), i; + function u2(d5, _3, m3) { + if (_3 !== void 0 && !qi2(d5, _3)) + throw l2(m3); + } + function l2(d5) { + return new Error(`reference "${d5}" resolves to more than one schema`); + } + } + H2.getSchemaRefs = Di2; +}); +var nt = $2((ye3) => { + "use strict"; + Object.defineProperty(ye3, "__esModule", { value: true }); + ye3.getData = ye3.KeywordCxt = ye3.validateFunctionCode = void 0; + var vn3 = Xs(), yn3 = et(), Tr2 = br(), jt3 = et(), Vi2 = nn(), st3 = ln(), Or2 = fn(), g2 = P(), v4 = le(), Ki2 = tt(), de = T(), rt3 = Ze(); + function Fi2(t) { + if (En3(t) && (Pn3(t), bn3(t))) { + Li2(t); + return; + } + wn3(t, () => (0, vn3.topBoolOrEmptySchema)(t)); + } + ye3.validateFunctionCode = Fi2; + function wn3({ gen: t, validateName: e, schema: r, schemaEnv: s, opts: n2 }, o) { + n2.code.es5 ? t.func(e, (0, g2._)`${v4.default.data}, ${v4.default.valCxt}`, s.$async, () => { + t.code((0, g2._)`"use strict"; ${_n3(r, n2)}`), zi2(t, n2), t.code(o); + }) : t.func(e, (0, g2._)`${v4.default.data}, ${Ui2(n2)}`, s.$async, () => t.code(_n3(r, n2)).code(o)); + } + function Ui2(t) { + return (0, g2._)`{${v4.default.instancePath}="", ${v4.default.parentData}, ${v4.default.parentDataProperty}, ${v4.default.rootData}=${v4.default.data}${t.dynamicRef ? (0, g2._)`, ${v4.default.dynamicAnchors}={}` : g2.nil}}={}`; + } + function zi2(t, e) { + t.if(v4.default.valCxt, () => { + t.var(v4.default.instancePath, (0, g2._)`${v4.default.valCxt}.${v4.default.instancePath}`), t.var(v4.default.parentData, (0, g2._)`${v4.default.valCxt}.${v4.default.parentData}`), t.var(v4.default.parentDataProperty, (0, g2._)`${v4.default.valCxt}.${v4.default.parentDataProperty}`), t.var(v4.default.rootData, (0, g2._)`${v4.default.valCxt}.${v4.default.rootData}`), e.dynamicRef && t.var(v4.default.dynamicAnchors, (0, g2._)`${v4.default.valCxt}.${v4.default.dynamicAnchors}`); + }, () => { + t.var(v4.default.instancePath, (0, g2._)`""`), t.var(v4.default.parentData, (0, g2._)`undefined`), t.var(v4.default.parentDataProperty, (0, g2._)`undefined`), t.var(v4.default.rootData, v4.default.data), e.dynamicRef && t.var(v4.default.dynamicAnchors, (0, g2._)`{}`); + }); + } + function Li2(t) { + let { schema: e, opts: r, gen: s } = t; + wn3(t, () => { + r.$comment && e.$comment && Nn3(t), Wi2(t), s.let(v4.default.vErrors, null), s.let(v4.default.errors, 0), r.unevaluated && Gi2(t), Sn3(t), Xi2(t); + }); + } + function Gi2(t) { + let { gen: e, validateName: r } = t; + t.evaluated = e.const("evaluated", (0, g2._)`${r}.evaluated`), e.if((0, g2._)`${t.evaluated}.dynamicProps`, () => e.assign((0, g2._)`${t.evaluated}.props`, (0, g2._)`undefined`)), e.if((0, g2._)`${t.evaluated}.dynamicItems`, () => e.assign((0, g2._)`${t.evaluated}.items`, (0, g2._)`undefined`)); + } + function _n3(t, e) { + let r = typeof t == "object" && t[e.schemaId]; + return r && (e.code.source || e.code.process) ? (0, g2._)`/*# sourceURL=${r} */` : g2.nil; + } + function xi2(t, e) { + if (En3(t) && (Pn3(t), bn3(t))) { + Ji2(t, e); + return; + } + (0, vn3.boolOrEmptySchema)(t, e); + } + function bn3({ schema: t, self: e }) { + if (typeof t == "boolean") + return !t; + for (let r in t) + if (e.RULES.all[r]) + return true; + return false; + } + function En3(t) { + return typeof t.schema != "boolean"; + } + function Ji2(t, e) { + let { schema: r, gen: s, opts: n2 } = t; + n2.$comment && r.$comment && Nn3(t), Bi2(t), Qi2(t); + let o = s.const("_errs", v4.default.errors); + Sn3(t, o), s.var(e, (0, g2._)`${o} === ${v4.default.errors}`); + } + function Pn3(t) { + (0, de.checkUnknownRules)(t), Hi(t); + } + function Sn3(t, e) { + if (t.opts.jtd) + return $n3(t, [], false, e); + let r = (0, yn3.getSchemaTypes)(t.schema), s = (0, yn3.coerceAndCheckDataType)(t, r); + $n3(t, r, !s, e); + } + function Hi(t) { + let { schema: e, errSchemaPath: r, opts: s, self: n2 } = t; + e.$ref && s.ignoreKeywordsWithRef && (0, de.schemaHasRulesButRef)(e, n2.RULES) && n2.logger.warn(`$ref: keywords ignored in schema at path "${r}"`); + } + function Wi2(t) { + let { schema: e, opts: r } = t; + e.default !== void 0 && r.useDefaults && r.strictSchema && (0, de.checkStrictMode)(t, "default is ignored in the schema root"); + } + function Bi2(t) { + let e = t.schema[t.opts.schemaId]; + e && (t.baseId = (0, Ki2.resolveUrl)(t.opts.uriResolver, t.baseId, e)); + } + function Qi2(t) { + if (t.schema.$async && !t.schemaEnv.$async) + throw new Error("async schema in sync schema"); + } + function Nn3({ gen: t, schemaEnv: e, schema: r, errSchemaPath: s, opts: n2 }) { + let o = r.$comment; + if (n2.$comment === true) + t.code((0, g2._)`${v4.default.self}.logger.log(${o})`); + else if (typeof n2.$comment == "function") { + let a3 = (0, g2.str)`${s}/$comment`, i = t.scopeValue("root", { ref: e.root }); + t.code((0, g2._)`${v4.default.self}.opts.$comment(${o}, ${a3}, ${i}.schema)`); + } + } + function Xi2(t) { + let { gen: e, schemaEnv: r, validateName: s, ValidationError: n2, opts: o } = t; + r.$async ? e.if((0, g2._)`${v4.default.errors} === 0`, () => e.return(v4.default.data), () => e.throw((0, g2._)`new ${n2}(${v4.default.vErrors})`)) : (e.assign((0, g2._)`${s}.errors`, v4.default.vErrors), o.unevaluated && Yi2(t), e.return((0, g2._)`${v4.default.errors} === 0`)); + } + function Yi2({ gen: t, evaluated: e, props: r, items: s }) { + r instanceof g2.Name && t.assign((0, g2._)`${e}.props`, r), s instanceof g2.Name && t.assign((0, g2._)`${e}.items`, s); + } + function $n3(t, e, r, s) { + let { gen: n2, schema: o, data: a3, allErrors: i, opts: c3, self: u2 } = t, { RULES: l2 } = u2; + if (o.$ref && (c3.ignoreKeywordsWithRef || !(0, de.schemaHasRulesButRef)(o, l2))) { + n2.block(() => jn3(t, "$ref", l2.all.$ref.definition)); + return; + } + c3.jtd || Zi2(t, e), n2.block(() => { + for (let _3 of l2.rules) + d5(_3); + d5(l2.post); + }); + function d5(_3) { + (0, Tr2.shouldUseGroup)(o, _3) && (_3.type ? (n2.if((0, jt3.checkDataType)(_3.type, a3, c3.strictNumbers)), gn3(t, _3), e.length === 1 && e[0] === _3.type && r && (n2.else(), (0, jt3.reportTypeError)(t)), n2.endIf()) : gn3(t, _3), i || n2.if((0, g2._)`${v4.default.errors} === ${s || 0}`)); + } + } + function gn3(t, e) { + let { gen: r, schema: s, opts: { useDefaults: n2 } } = t; + n2 && (0, Vi2.assignDefaults)(t, e.type), r.block(() => { + for (let o of e.rules) + (0, Tr2.shouldUseRule)(s, o) && jn3(t, o.keyword, o.definition, e.type); + }); + } + function Zi2(t, e) { + t.schemaEnv.meta || !t.opts.strictTypes || (ec(t, e), t.opts.allowUnionTypes || tc(t, e), rc(t, t.dataTypes)); + } + function ec(t, e) { + if (e.length) { + if (!t.dataTypes.length) { + t.dataTypes = e; + return; + } + e.forEach((r) => { + kn3(t.dataTypes, r) || Rr3(t, `type "${r}" not allowed by context "${t.dataTypes.join(",")}"`); + }), nc(t, e); + } + } + function tc(t, e) { + e.length > 1 && !(e.length === 2 && e.includes("null")) && Rr3(t, "use allowUnionTypes to allow union type keyword"); + } + function rc(t, e) { + let r = t.self.RULES.all; + for (let s in r) { + let n2 = r[s]; + if (typeof n2 == "object" && (0, Tr2.shouldUseRule)(t.schema, n2)) { + let { type: o } = n2.definition; + o.length && !o.some((a3) => sc(e, a3)) && Rr3(t, `missing type "${o.join(",")}" for keyword "${s}"`); + } + } + } + function sc(t, e) { + return t.includes(e) || e === "number" && t.includes("integer"); + } + function kn3(t, e) { + return t.includes(e) || e === "integer" && t.includes("number"); + } + function nc(t, e) { + let r = []; + for (let s of t.dataTypes) + kn3(e, s) ? r.push(s) : e.includes("integer") && s === "number" && r.push("integer"); + t.dataTypes = r; + } + function Rr3(t, e) { + let r = t.schemaEnv.baseId + t.errSchemaPath; + e += ` at "${r}" (strictTypes)`, (0, de.checkStrictMode)(t, e, t.opts.strictTypes); + } + var qt2 = class { + constructor(e, r, s) { + if ((0, st3.validateKeywordUsage)(e, r, s), this.gen = e.gen, this.allErrors = e.allErrors, this.keyword = s, this.data = e.data, this.schema = e.schema[s], this.$data = r.$data && e.opts.$data && this.schema && this.schema.$data, this.schemaValue = (0, de.schemaRefOrVal)(e, this.schema, s, this.$data), this.schemaType = r.schemaType, this.parentSchema = e.schema, this.params = {}, this.it = e, this.def = r, this.$data) + this.schemaCode = e.gen.const("vSchema", qn3(this.$data, e)); + else if (this.schemaCode = this.schemaValue, !(0, st3.validSchemaType)(this.schema, r.schemaType, r.allowUndefined)) + throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`); + ("code" in r ? r.trackErrors : r.errors !== false) && (this.errsCount = e.gen.const("_errs", v4.default.errors)); + } + result(e, r, s) { + this.failResult((0, g2.not)(e), r, s); + } + failResult(e, r, s) { + this.gen.if(e), s ? s() : this.error(), r ? (this.gen.else(), r(), this.allErrors && this.gen.endIf()) : this.allErrors ? this.gen.endIf() : this.gen.else(); + } + pass(e, r) { + this.failResult((0, g2.not)(e), void 0, r); + } + fail(e) { + if (e === void 0) { + this.error(), this.allErrors || this.gen.if(false); + return; + } + this.gen.if(e), this.error(), this.allErrors ? this.gen.endIf() : this.gen.else(); + } + fail$data(e) { + if (!this.$data) + return this.fail(e); + let { schemaCode: r } = this; + this.fail((0, g2._)`${r} !== undefined && (${(0, g2.or)(this.invalid$data(), e)})`); + } + error(e, r, s) { + if (r) { + this.setParams(r), this._error(e, s), this.setParams({}); + return; + } + this._error(e, s); + } + _error(e, r) { + (e ? rt3.reportExtraError : rt3.reportError)(this, this.def.error, r); + } + $dataError() { + (0, rt3.reportError)(this, this.def.$dataError || rt3.keyword$DataError); + } + reset() { + if (this.errsCount === void 0) + throw new Error('add "trackErrors" to keyword definition'); + (0, rt3.resetErrorsCount)(this.gen, this.errsCount); + } + ok(e) { + this.allErrors || this.gen.if(e); + } + setParams(e, r) { + r ? Object.assign(this.params, e) : this.params = e; + } + block$data(e, r, s = g2.nil) { + this.gen.block(() => { + this.check$data(e, s), r(); + }); + } + check$data(e = g2.nil, r = g2.nil) { + if (!this.$data) + return; + let { gen: s, schemaCode: n2, schemaType: o, def: a3 } = this; + s.if((0, g2.or)((0, g2._)`${n2} === undefined`, r)), e !== g2.nil && s.assign(e, true), (o.length || a3.validateSchema) && (s.elseIf(this.invalid$data()), this.$dataError(), e !== g2.nil && s.assign(e, false)), s.else(); + } + invalid$data() { + let { gen: e, schemaCode: r, schemaType: s, def: n2, it: o } = this; + return (0, g2.or)(a3(), i()); + function a3() { + if (s.length) { + if (!(r instanceof g2.Name)) + throw new Error("ajv implementation error"); + let c3 = Array.isArray(s) ? s : [s]; + return (0, g2._)`${(0, jt3.checkDataTypes)(c3, r, o.opts.strictNumbers, jt3.DataType.Wrong)}`; + } + return g2.nil; + } + function i() { + if (n2.validateSchema) { + let c3 = e.scopeValue("validate$data", { ref: n2.validateSchema }); + return (0, g2._)`!${c3}(${r})`; + } + return g2.nil; + } + } + subschema(e, r) { + let s = (0, Or2.getSubschema)(this.it, e); + (0, Or2.extendSubschemaData)(s, this.it, e), (0, Or2.extendSubschemaMode)(s, e); + let n2 = { ...this.it, ...s, items: void 0, props: void 0 }; + return xi2(n2, r), n2; + } + mergeEvaluated(e, r) { + let { it: s, gen: n2 } = this; + s.opts.unevaluated && (s.props !== true && e.props !== void 0 && (s.props = de.mergeEvaluated.props(n2, e.props, s.props, r)), s.items !== true && e.items !== void 0 && (s.items = de.mergeEvaluated.items(n2, e.items, s.items, r))); + } + mergeValidEvaluated(e, r) { + let { it: s, gen: n2 } = this; + if (s.opts.unevaluated && (s.props !== true || s.items !== true)) + return n2.if(r, () => this.mergeEvaluated(e, g2.Name)), true; + } + }; + ye3.KeywordCxt = qt2; + function jn3(t, e, r, s) { + let n2 = new qt2(t, r, e); + "code" in r ? r.code(n2, s) : n2.$data && r.validate ? (0, st3.funcKeywordCode)(n2, r) : "macro" in r ? (0, st3.macroKeywordCode)(n2, r) : (r.compile || r.validate) && (0, st3.funcKeywordCode)(n2, r); + } + var oc = /^\/(?:[^~]|~0|~1)*$/, ac = /^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/; + function qn3(t, { dataLevel: e, dataNames: r, dataPathArr: s }) { + let n2, o; + if (t === "") + return v4.default.rootData; + if (t[0] === "/") { + if (!oc.test(t)) + throw new Error(`Invalid JSON-pointer: ${t}`); + n2 = t, o = v4.default.rootData; + } else { + let u2 = ac.exec(t); + if (!u2) + throw new Error(`Invalid JSON-pointer: ${t}`); + let l2 = +u2[1]; + if (n2 = u2[2], n2 === "#") { + if (l2 >= e) + throw new Error(c3("property/index", l2)); + return s[e - l2]; + } + if (l2 > e) + throw new Error(c3("data", l2)); + if (o = r[e - l2], !n2) + return o; + } + let a3 = o, i = n2.split("/"); + for (let u2 of i) + u2 && (o = (0, g2._)`${o}${(0, g2.getProperty)((0, de.unescapeJsonPointer)(u2))}`, a3 = (0, g2._)`${a3} && ${o}`); + return a3; + function c3(u2, l2) { + return `Cannot access ${u2} ${l2} levels up, current level is ${e}`; + } + } + ye3.getData = qn3; +}); +var Ot = $2((Ir3) => { + "use strict"; + Object.defineProperty(Ir3, "__esModule", { value: true }); + var Cr3 = class extends Error { + constructor(e) { + super("validation failed"), this.errors = e, this.ajv = this.validation = true; + } + }; + Ir3.default = Cr3; +}); +var ot = $2((Dr2) => { + "use strict"; + Object.defineProperty(Dr2, "__esModule", { value: true }); + var Mr3 = tt(), Ar3 = class extends Error { + constructor(e, r, s, n2) { + super(n2 || `can't resolve reference ${s} from id ${r}`), this.missingRef = (0, Mr3.resolveUrl)(e, r, s), this.missingSchema = (0, Mr3.normalizeId)((0, Mr3.getFullPath)(e, this.missingRef)); + } + }; + Dr2.default = Ar3; +}); +var Rt = $2((X2) => { + "use strict"; + Object.defineProperty(X2, "__esModule", { value: true }); + X2.resolveSchema = X2.getCompilingSchema = X2.resolveRef = X2.compileSchema = X2.SchemaEnv = void 0; + var ee = P(), ic = Ot(), Ne3 = le(), te = tt(), On2 = T(), cc = nt(), De = class { + constructor(e) { + var r; + this.refs = {}, this.dynamicAnchors = {}; + let s; + typeof e.schema == "object" && (s = e.schema), this.schema = e.schema, this.schemaId = e.schemaId, this.root = e.root || this, this.baseId = (r = e.baseId) !== null && r !== void 0 ? r : (0, te.normalizeId)(s?.[e.schemaId || "$id"]), this.schemaPath = e.schemaPath, this.localRefs = e.localRefs, this.meta = e.meta, this.$async = s?.$async, this.refs = {}; + } + }; + X2.SchemaEnv = De; + function Kr4(t) { + let e = Tn3.call(this, t); + if (e) + return e; + let r = (0, te.getFullPath)(this.opts.uriResolver, t.root.baseId), { es5: s, lines: n2 } = this.opts.code, { ownProperties: o } = this.opts, a3 = new ee.CodeGen(this.scope, { es5: s, lines: n2, ownProperties: o }), i; + t.$async && (i = a3.scopeValue("Error", { ref: ic.default, code: (0, ee._)`require("ajv/dist/runtime/validation_error").default` })); + let c3 = a3.scopeName("validate"); + t.validateName = c3; + let u2 = { gen: a3, allErrors: this.opts.allErrors, data: Ne3.default.data, parentData: Ne3.default.parentData, parentDataProperty: Ne3.default.parentDataProperty, dataNames: [Ne3.default.data], dataPathArr: [ee.nil], dataLevel: 0, dataTypes: [], definedProperties: /* @__PURE__ */ new Set(), topSchemaRef: a3.scopeValue("schema", this.opts.code.source === true ? { ref: t.schema, code: (0, ee.stringify)(t.schema) } : { ref: t.schema }), validateName: c3, ValidationError: i, schema: t.schema, schemaEnv: t, rootId: r, baseId: t.baseId || r, schemaPath: ee.nil, errSchemaPath: t.schemaPath || (this.opts.jtd ? "" : "#"), errorPath: (0, ee._)`""`, opts: this.opts, self: this }, l2; + try { + this._compilations.add(t), (0, cc.validateFunctionCode)(u2), a3.optimize(this.opts.code.optimize); + let d5 = a3.toString(); + l2 = `${a3.scopeRefs(Ne3.default.scope)}return ${d5}`, this.opts.code.process && (l2 = this.opts.code.process(l2, t)); + let m3 = new Function(`${Ne3.default.self}`, `${Ne3.default.scope}`, l2)(this, this.scope.get()); + if (this.scope.value(c3, { ref: m3 }), m3.errors = null, m3.schema = t.schema, m3.schemaEnv = t, t.$async && (m3.$async = true), this.opts.code.source === true && (m3.source = { validateName: c3, validateCode: d5, scopeValues: a3._values }), this.opts.unevaluated) { + let { props: h2, items: f } = u2; + m3.evaluated = { props: h2 instanceof ee.Name ? void 0 : h2, items: f instanceof ee.Name ? void 0 : f, dynamicProps: h2 instanceof ee.Name, dynamicItems: f instanceof ee.Name }, m3.source && (m3.source.evaluated = (0, ee.stringify)(m3.evaluated)); + } + return t.validate = m3, t; + } catch (d5) { + throw delete t.validate, delete t.validateName, l2 && this.logger.error("Error compiling schema, function code:", l2), d5; + } finally { + this._compilations.delete(t); + } + } + X2.compileSchema = Kr4; + function uc(t, e, r) { + var s; + r = (0, te.resolveUrl)(this.opts.uriResolver, e, r); + let n2 = t.refs[r]; + if (n2) + return n2; + let o = fc.call(this, t, r); + if (o === void 0) { + let a3 = (s = t.localRefs) === null || s === void 0 ? void 0 : s[r], { schemaId: i } = this.opts; + a3 && (o = new De({ schema: a3, schemaId: i, root: t, baseId: e })); + } + if (o !== void 0) + return t.refs[r] = lc.call(this, o); + } + X2.resolveRef = uc; + function lc(t) { + return (0, te.inlineRef)(t.schema, this.opts.inlineRefs) ? t.schema : t.validate ? t : Kr4.call(this, t); + } + function Tn3(t) { + for (let e of this._compilations) + if (dc(e, t)) + return e; + } + X2.getCompilingSchema = Tn3; + function dc(t, e) { + return t.schema === e.schema && t.root === e.root && t.baseId === e.baseId; + } + function fc(t, e) { + let r; + for (; typeof (r = this.refs[e]) == "string"; ) + e = r; + return r || this.schemas[e] || Tt2.call(this, t, e); + } + function Tt2(t, e) { + let r = this.opts.uriResolver.parse(e), s = (0, te._getFullPath)(this.opts.uriResolver, r), n2 = (0, te.getFullPath)(this.opts.uriResolver, t.baseId, void 0); + if (Object.keys(t.schema).length > 0 && s === n2) + return Vr3.call(this, r, t); + let o = (0, te.normalizeId)(s), a3 = this.refs[o] || this.schemas[o]; + if (typeof a3 == "string") { + let i = Tt2.call(this, t, a3); + return typeof i?.schema != "object" ? void 0 : Vr3.call(this, r, i); + } + if (typeof a3?.schema == "object") { + if (a3.validate || Kr4.call(this, a3), o === (0, te.normalizeId)(e)) { + let { schema: i } = a3, { schemaId: c3 } = this.opts, u2 = i[c3]; + return u2 && (n2 = (0, te.resolveUrl)(this.opts.uriResolver, n2, u2)), new De({ schema: i, schemaId: c3, root: t, baseId: n2 }); + } + return Vr3.call(this, r, a3); + } + } + X2.resolveSchema = Tt2; + var hc = /* @__PURE__ */ new Set(["properties", "patternProperties", "enum", "dependencies", "definitions"]); + function Vr3(t, { baseId: e, schema: r, root: s }) { + var n2; + if (((n2 = t.fragment) === null || n2 === void 0 ? void 0 : n2[0]) !== "/") + return; + for (let i of t.fragment.slice(1).split("/")) { + if (typeof r == "boolean") + return; + let c3 = r[(0, On2.unescapeFragment)(i)]; + if (c3 === void 0) + return; + r = c3; + let u2 = typeof r == "object" && r[this.opts.schemaId]; + !hc.has(i) && u2 && (e = (0, te.resolveUrl)(this.opts.uriResolver, e, u2)); + } + let o; + if (typeof r != "boolean" && r.$ref && !(0, On2.schemaHasRulesButRef)(r, this.RULES)) { + let i = (0, te.resolveUrl)(this.opts.uriResolver, e, r.$ref); + o = Tt2.call(this, s, i); + } + let { schemaId: a3 } = this.opts; + if (o = o || new De({ schema: r, schemaId: a3, root: s, baseId: e }), o.schema !== o.root.schema) + return o; + } +}); +var Rn = $2((Od2, pc) => { + pc.exports = { $id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#", description: "Meta-schema for $data reference (JSON AnySchema extension proposal)", type: "object", required: ["$data"], properties: { $data: { type: "string", anyOf: [{ format: "relative-json-pointer" }, { format: "json-pointer" }] } }, additionalProperties: false }; +}); +var In = $2((Fr3) => { + "use strict"; + Object.defineProperty(Fr3, "__esModule", { value: true }); + var Cn3 = $t("uri-js"); + Cn3.code = 'require("ajv/dist/runtime/uri").default'; + Fr3.default = Cn3; +}); +var zn = $2((V2) => { + "use strict"; + Object.defineProperty(V2, "__esModule", { value: true }); + V2.CodeGen = V2.Name = V2.nil = V2.stringify = V2.str = V2._ = V2.KeywordCxt = void 0; + var mc = nt(); + Object.defineProperty(V2, "KeywordCxt", { enumerable: true, get: function() { + return mc.KeywordCxt; + } }); + var Ve2 = P(); + Object.defineProperty(V2, "_", { enumerable: true, get: function() { + return Ve2._; + } }); + Object.defineProperty(V2, "str", { enumerable: true, get: function() { + return Ve2.str; + } }); + Object.defineProperty(V2, "stringify", { enumerable: true, get: function() { + return Ve2.stringify; + } }); + Object.defineProperty(V2, "nil", { enumerable: true, get: function() { + return Ve2.nil; + } }); + Object.defineProperty(V2, "Name", { enumerable: true, get: function() { + return Ve2.Name; + } }); + Object.defineProperty(V2, "CodeGen", { enumerable: true, get: function() { + return Ve2.CodeGen; + } }); + var yc = Ot(), Kn3 = ot(), _c = wr(), at3 = Rt(), $c = P(), it3 = tt(), Ct2 = et(), zr3 = T(), Mn3 = Rn(), gc = In(), Fn3 = (t, e) => new RegExp(t, e); + Fn3.code = "new RegExp"; + var vc = ["removeAdditional", "useDefaults", "coerceTypes"], wc = /* @__PURE__ */ new Set(["validate", "serialize", "parse", "wrapper", "root", "schema", "keyword", "pattern", "formats", "validate$data", "func", "obj", "Error"]), bc = { errorDataPath: "", format: "`validateFormats: false` can be used instead.", nullable: '"nullable" keyword is supported by default.', jsonPointers: "Deprecated jsPropertySyntax can be used instead.", extendRefs: "Deprecated ignoreKeywordsWithRef can be used instead.", missingRefs: "Pass empty schema with $id that should be ignored to ajv.addSchema.", processCode: "Use option `code: {process: (code, schemaEnv: object) => string}`", sourceCode: "Use option `code: {source: true}`", strictDefaults: "It is default now, see option `strict`.", strictKeywords: "It is default now, see option `strict`.", uniqueItems: '"uniqueItems" keyword is always validated.', unknownFormats: "Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).", cache: "Map is used as cache, schema object as key.", serialize: "Map is used as cache, schema object as key.", ajvErrors: "It is default now." }, Ec = { ignoreKeywordsWithRef: "", jsPropertySyntax: "", unicode: '"minLength"/"maxLength" account for unicode characters by default.' }, An3 = 200; + function Pc(t) { + var e, r, s, n2, o, a3, i, c3, u2, l2, d5, _3, m3, h2, f, p3, y4, j3, N2, I4, w2, se, ie2, Bt2, Qt3; + let Ge2 = t.strict, Xt3 = (e = t.code) === null || e === void 0 ? void 0 : e.optimize, Cs2 = Xt3 === true || Xt3 === void 0 ? 1 : Xt3 || 0, Is2 = (s = (r = t.code) === null || r === void 0 ? void 0 : r.regExp) !== null && s !== void 0 ? s : Fn3, Xo2 = (n2 = t.uriResolver) !== null && n2 !== void 0 ? n2 : gc.default; + return { strictSchema: (a3 = (o = t.strictSchema) !== null && o !== void 0 ? o : Ge2) !== null && a3 !== void 0 ? a3 : true, strictNumbers: (c3 = (i = t.strictNumbers) !== null && i !== void 0 ? i : Ge2) !== null && c3 !== void 0 ? c3 : true, strictTypes: (l2 = (u2 = t.strictTypes) !== null && u2 !== void 0 ? u2 : Ge2) !== null && l2 !== void 0 ? l2 : "log", strictTuples: (_3 = (d5 = t.strictTuples) !== null && d5 !== void 0 ? d5 : Ge2) !== null && _3 !== void 0 ? _3 : "log", strictRequired: (h2 = (m3 = t.strictRequired) !== null && m3 !== void 0 ? m3 : Ge2) !== null && h2 !== void 0 ? h2 : false, code: t.code ? { ...t.code, optimize: Cs2, regExp: Is2 } : { optimize: Cs2, regExp: Is2 }, loopRequired: (f = t.loopRequired) !== null && f !== void 0 ? f : An3, loopEnum: (p3 = t.loopEnum) !== null && p3 !== void 0 ? p3 : An3, meta: (y4 = t.meta) !== null && y4 !== void 0 ? y4 : true, messages: (j3 = t.messages) !== null && j3 !== void 0 ? j3 : true, inlineRefs: (N2 = t.inlineRefs) !== null && N2 !== void 0 ? N2 : true, schemaId: (I4 = t.schemaId) !== null && I4 !== void 0 ? I4 : "$id", addUsedSchema: (w2 = t.addUsedSchema) !== null && w2 !== void 0 ? w2 : true, validateSchema: (se = t.validateSchema) !== null && se !== void 0 ? se : true, validateFormats: (ie2 = t.validateFormats) !== null && ie2 !== void 0 ? ie2 : true, unicodeRegExp: (Bt2 = t.unicodeRegExp) !== null && Bt2 !== void 0 ? Bt2 : true, int32range: (Qt3 = t.int32range) !== null && Qt3 !== void 0 ? Qt3 : true, uriResolver: Xo2 }; + } + var ct4 = class { + constructor(e = {}) { + this.schemas = {}, this.refs = {}, this.formats = {}, this._compilations = /* @__PURE__ */ new Set(), this._loading = {}, this._cache = /* @__PURE__ */ new Map(), e = this.opts = { ...e, ...Pc(e) }; + let { es5: r, lines: s } = this.opts.code; + this.scope = new $c.ValueScope({ scope: {}, prefixes: wc, es5: r, lines: s }), this.logger = Oc(e.logger); + let n2 = e.validateFormats; + e.validateFormats = false, this.RULES = (0, _c.getRules)(), Dn3.call(this, bc, e, "NOT SUPPORTED"), Dn3.call(this, Ec, e, "DEPRECATED", "warn"), this._metaOpts = jc.call(this), e.formats && Nc.call(this), this._addVocabularies(), this._addDefaultMetaSchema(), e.keywords && kc.call(this, e.keywords), typeof e.meta == "object" && this.addMetaSchema(e.meta), Sc.call(this), e.validateFormats = n2; + } + _addVocabularies() { + this.addKeyword("$async"); + } + _addDefaultMetaSchema() { + let { $data: e, meta: r, schemaId: s } = this.opts, n2 = Mn3; + s === "id" && (n2 = { ...Mn3 }, n2.id = n2.$id, delete n2.$id), r && e && this.addMetaSchema(n2, n2[s], false); + } + defaultMeta() { + let { meta: e, schemaId: r } = this.opts; + return this.opts.defaultMeta = typeof e == "object" ? e[r] || e : void 0; + } + validate(e, r) { + let s; + if (typeof e == "string") { + if (s = this.getSchema(e), !s) + throw new Error(`no schema with key or ref "${e}"`); + } else + s = this.compile(e); + let n2 = s(r); + return "$async" in s || (this.errors = s.errors), n2; + } + compile(e, r) { + let s = this._addSchema(e, r); + return s.validate || this._compileSchemaEnv(s); + } + compileAsync(e, r) { + if (typeof this.opts.loadSchema != "function") + throw new Error("options.loadSchema should be a function"); + let { loadSchema: s } = this.opts; + return n2.call(this, e, r); + async function n2(l2, d5) { + await o.call(this, l2.$schema); + let _3 = this._addSchema(l2, d5); + return _3.validate || a3.call(this, _3); + } + async function o(l2) { + l2 && !this.getSchema(l2) && await n2.call(this, { $ref: l2 }, true); + } + async function a3(l2) { + try { + return this._compileSchemaEnv(l2); + } catch (d5) { + if (!(d5 instanceof Kn3.default)) + throw d5; + return i.call(this, d5), await c3.call(this, d5.missingSchema), a3.call(this, l2); + } + } + function i({ missingSchema: l2, missingRef: d5 }) { + if (this.refs[l2]) + throw new Error(`AnySchema ${l2} is loaded but ${d5} cannot be resolved`); + } + async function c3(l2) { + let d5 = await u2.call(this, l2); + this.refs[l2] || await o.call(this, d5.$schema), this.refs[l2] || this.addSchema(d5, l2, r); + } + async function u2(l2) { + let d5 = this._loading[l2]; + if (d5) + return d5; + try { + return await (this._loading[l2] = s(l2)); + } finally { + delete this._loading[l2]; + } + } + } + addSchema(e, r, s, n2 = this.opts.validateSchema) { + if (Array.isArray(e)) { + for (let a3 of e) + this.addSchema(a3, void 0, s, n2); + return this; + } + let o; + if (typeof e == "object") { + let { schemaId: a3 } = this.opts; + if (o = e[a3], o !== void 0 && typeof o != "string") + throw new Error(`schema ${a3} must be string`); + } + return r = (0, it3.normalizeId)(r || o), this._checkUnique(r), this.schemas[r] = this._addSchema(e, s, r, n2, true), this; + } + addMetaSchema(e, r, s = this.opts.validateSchema) { + return this.addSchema(e, r, true, s), this; + } + validateSchema(e, r) { + if (typeof e == "boolean") + return true; + let s; + if (s = e.$schema, s !== void 0 && typeof s != "string") + throw new Error("$schema must be a string"); + if (s = s || this.opts.defaultMeta || this.defaultMeta(), !s) + return this.logger.warn("meta-schema not available"), this.errors = null, true; + let n2 = this.validate(s, e); + if (!n2 && r) { + let o = "schema is invalid: " + this.errorsText(); + if (this.opts.validateSchema === "log") + this.logger.error(o); + else + throw new Error(o); + } + return n2; + } + getSchema(e) { + let r; + for (; typeof (r = Vn2.call(this, e)) == "string"; ) + e = r; + if (r === void 0) { + let { schemaId: s } = this.opts, n2 = new at3.SchemaEnv({ schema: {}, schemaId: s }); + if (r = at3.resolveSchema.call(this, n2, e), !r) + return; + this.refs[e] = r; + } + return r.validate || this._compileSchemaEnv(r); + } + removeSchema(e) { + if (e instanceof RegExp) + return this._removeAllSchemas(this.schemas, e), this._removeAllSchemas(this.refs, e), this; + switch (typeof e) { + case "undefined": + return this._removeAllSchemas(this.schemas), this._removeAllSchemas(this.refs), this._cache.clear(), this; + case "string": { + let r = Vn2.call(this, e); + return typeof r == "object" && this._cache.delete(r.schema), delete this.schemas[e], delete this.refs[e], this; + } + case "object": { + let r = e; + this._cache.delete(r); + let s = e[this.opts.schemaId]; + return s && (s = (0, it3.normalizeId)(s), delete this.schemas[s], delete this.refs[s]), this; + } + default: + throw new Error("ajv.removeSchema: invalid parameter"); + } + } + addVocabulary(e) { + for (let r of e) + this.addKeyword(r); + return this; + } + addKeyword(e, r) { + let s; + if (typeof e == "string") + s = e, typeof r == "object" && (this.logger.warn("these parameters are deprecated, see docs for addKeyword"), r.keyword = s); + else if (typeof e == "object" && r === void 0) { + if (r = e, s = r.keyword, Array.isArray(s) && !s.length) + throw new Error("addKeywords: keyword must be string or non-empty array"); + } else + throw new Error("invalid addKeywords parameters"); + if (Rc.call(this, s, r), !r) + return (0, zr3.eachItem)(s, (o) => Ur3.call(this, o)), this; + Ic.call(this, r); + let n2 = { ...r, type: (0, Ct2.getJSONTypes)(r.type), schemaType: (0, Ct2.getJSONTypes)(r.schemaType) }; + return (0, zr3.eachItem)(s, n2.type.length === 0 ? (o) => Ur3.call(this, o, n2) : (o) => n2.type.forEach((a3) => Ur3.call(this, o, n2, a3))), this; + } + getKeyword(e) { + let r = this.RULES.all[e]; + return typeof r == "object" ? r.definition : !!r; + } + removeKeyword(e) { + let { RULES: r } = this; + delete r.keywords[e], delete r.all[e]; + for (let s of r.rules) { + let n2 = s.rules.findIndex((o) => o.keyword === e); + n2 >= 0 && s.rules.splice(n2, 1); + } + return this; + } + addFormat(e, r) { + return typeof r == "string" && (r = new RegExp(r)), this.formats[e] = r, this; + } + errorsText(e = this.errors, { separator: r = ", ", dataVar: s = "data" } = {}) { + return !e || e.length === 0 ? "No errors" : e.map((n2) => `${s}${n2.instancePath} ${n2.message}`).reduce((n2, o) => n2 + r + o); + } + $dataMetaSchema(e, r) { + let s = this.RULES.all; + e = JSON.parse(JSON.stringify(e)); + for (let n2 of r) { + let o = n2.split("/").slice(1), a3 = e; + for (let i of o) + a3 = a3[i]; + for (let i in s) { + let c3 = s[i]; + if (typeof c3 != "object") + continue; + let { $data: u2 } = c3.definition, l2 = a3[i]; + u2 && l2 && (a3[i] = Un3(l2)); + } + } + return e; + } + _removeAllSchemas(e, r) { + for (let s in e) { + let n2 = e[s]; + (!r || r.test(s)) && (typeof n2 == "string" ? delete e[s] : n2 && !n2.meta && (this._cache.delete(n2.schema), delete e[s])); + } + } + _addSchema(e, r, s, n2 = this.opts.validateSchema, o = this.opts.addUsedSchema) { + let a3, { schemaId: i } = this.opts; + if (typeof e == "object") + a3 = e[i]; + else { + if (this.opts.jtd) + throw new Error("schema must be object"); + if (typeof e != "boolean") + throw new Error("schema must be object or boolean"); + } + let c3 = this._cache.get(e); + if (c3 !== void 0) + return c3; + s = (0, it3.normalizeId)(a3 || s); + let u2 = it3.getSchemaRefs.call(this, e, s); + return c3 = new at3.SchemaEnv({ schema: e, schemaId: i, meta: r, baseId: s, localRefs: u2 }), this._cache.set(c3.schema, c3), o && !s.startsWith("#") && (s && this._checkUnique(s), this.refs[s] = c3), n2 && this.validateSchema(e, true), c3; + } + _checkUnique(e) { + if (this.schemas[e] || this.refs[e]) + throw new Error(`schema with key or id "${e}" already exists`); + } + _compileSchemaEnv(e) { + if (e.meta ? this._compileMetaSchema(e) : at3.compileSchema.call(this, e), !e.validate) + throw new Error("ajv implementation error"); + return e.validate; + } + _compileMetaSchema(e) { + let r = this.opts; + this.opts = this._metaOpts; + try { + at3.compileSchema.call(this, e); + } finally { + this.opts = r; + } + } + }; + ct4.ValidationError = yc.default; + ct4.MissingRefError = Kn3.default; + V2.default = ct4; + function Dn3(t, e, r, s = "error") { + for (let n2 in t) { + let o = n2; + o in e && this.logger[s](`${r}: option ${n2}. ${t[o]}`); + } + } + function Vn2(t) { + return t = (0, it3.normalizeId)(t), this.schemas[t] || this.refs[t]; + } + function Sc() { + let t = this.opts.schemas; + if (t) + if (Array.isArray(t)) + this.addSchema(t); + else + for (let e in t) + this.addSchema(t[e], e); + } + function Nc() { + for (let t in this.opts.formats) { + let e = this.opts.formats[t]; + e && this.addFormat(t, e); + } + } + function kc(t) { + if (Array.isArray(t)) { + this.addVocabulary(t); + return; + } + this.logger.warn("keywords option as map is deprecated, pass array"); + for (let e in t) { + let r = t[e]; + r.keyword || (r.keyword = e), this.addKeyword(r); + } + } + function jc() { + let t = { ...this.opts }; + for (let e of vc) + delete t[e]; + return t; + } + var qc = { log() { + }, warn() { + }, error() { + } }; + function Oc(t) { + if (t === false) + return qc; + if (t === void 0) + return console; + if (t.log && t.warn && t.error) + return t; + throw new Error("logger must implement log, warn and error methods"); + } + var Tc = /^[a-z_$][a-z0-9_$:-]*$/i; + function Rc(t, e) { + let { RULES: r } = this; + if ((0, zr3.eachItem)(t, (s) => { + if (r.keywords[s]) + throw new Error(`Keyword ${s} is already defined`); + if (!Tc.test(s)) + throw new Error(`Keyword ${s} has invalid name`); + }), !!e && e.$data && !("code" in e || "validate" in e)) + throw new Error('$data keyword must have "code" or "validate" function'); + } + function Ur3(t, e, r) { + var s; + let n2 = e?.post; + if (r && n2) + throw new Error('keyword with "post" flag cannot have "type"'); + let { RULES: o } = this, a3 = n2 ? o.post : o.rules.find(({ type: c3 }) => c3 === r); + if (a3 || (a3 = { type: r, rules: [] }, o.rules.push(a3)), o.keywords[t] = true, !e) + return; + let i = { keyword: t, definition: { ...e, type: (0, Ct2.getJSONTypes)(e.type), schemaType: (0, Ct2.getJSONTypes)(e.schemaType) } }; + e.before ? Cc.call(this, a3, i, e.before) : a3.rules.push(i), o.all[t] = i, (s = e.implements) === null || s === void 0 || s.forEach((c3) => this.addKeyword(c3)); + } + function Cc(t, e, r) { + let s = t.rules.findIndex((n2) => n2.keyword === r); + s >= 0 ? t.rules.splice(s, 0, e) : (t.rules.push(e), this.logger.warn(`rule ${r} is not defined`)); + } + function Ic(t) { + let { metaSchema: e } = t; + e !== void 0 && (t.$data && this.opts.$data && (e = Un3(e)), t.validateSchema = this.compile(e, true)); + } + var Mc = { $ref: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#" }; + function Un3(t) { + return { anyOf: [t, Mc] }; + } +}); +var Ln = $2((Lr3) => { + "use strict"; + Object.defineProperty(Lr3, "__esModule", { value: true }); + var Ac = { keyword: "id", code() { + throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID'); + } }; + Lr3.default = Ac; +}); +var Hn = $2((ke2) => { + "use strict"; + Object.defineProperty(ke2, "__esModule", { value: true }); + ke2.callRef = ke2.getValidate = void 0; + var Dc = ot(), Gn3 = Q2(), W4 = P(), Ke2 = le(), xn3 = Rt(), It3 = T(), Vc = { keyword: "$ref", schemaType: "string", code(t) { + let { gen: e, schema: r, it: s } = t, { baseId: n2, schemaEnv: o, validateName: a3, opts: i, self: c3 } = s, { root: u2 } = o; + if ((r === "#" || r === "#/") && n2 === u2.baseId) + return d5(); + let l2 = xn3.resolveRef.call(c3, u2, n2, r); + if (l2 === void 0) + throw new Dc.default(s.opts.uriResolver, n2, r); + if (l2 instanceof xn3.SchemaEnv) + return _3(l2); + return m3(l2); + function d5() { + if (o === u2) + return Mt3(t, a3, o, o.$async); + let h2 = e.scopeValue("root", { ref: u2 }); + return Mt3(t, (0, W4._)`${h2}.validate`, u2, u2.$async); + } + function _3(h2) { + let f = Jn3(t, h2); + Mt3(t, f, h2, h2.$async); + } + function m3(h2) { + let f = e.scopeValue("schema", i.code.source === true ? { ref: h2, code: (0, W4.stringify)(h2) } : { ref: h2 }), p3 = e.name("valid"), y4 = t.subschema({ schema: h2, dataTypes: [], schemaPath: W4.nil, topSchemaRef: f, errSchemaPath: r }, p3); + t.mergeEvaluated(y4), t.ok(p3); + } + } }; + function Jn3(t, e) { + let { gen: r } = t; + return e.validate ? r.scopeValue("validate", { ref: e.validate }) : (0, W4._)`${r.scopeValue("wrapper", { ref: e })}.validate`; + } + ke2.getValidate = Jn3; + function Mt3(t, e, r, s) { + let { gen: n2, it: o } = t, { allErrors: a3, schemaEnv: i, opts: c3 } = o, u2 = c3.passContext ? Ke2.default.this : W4.nil; + s ? l2() : d5(); + function l2() { + if (!i.$async) + throw new Error("async schema referenced by sync schema"); + let h2 = n2.let("valid"); + n2.try(() => { + n2.code((0, W4._)`await ${(0, Gn3.callValidateCode)(t, e, u2)}`), m3(e), a3 || n2.assign(h2, true); + }, (f) => { + n2.if((0, W4._)`!(${f} instanceof ${o.ValidationError})`, () => n2.throw(f)), _3(f), a3 || n2.assign(h2, false); + }), t.ok(h2); + } + function d5() { + t.result((0, Gn3.callValidateCode)(t, e, u2), () => m3(e), () => _3(e)); + } + function _3(h2) { + let f = (0, W4._)`${h2}.errors`; + n2.assign(Ke2.default.vErrors, (0, W4._)`${Ke2.default.vErrors} === null ? ${f} : ${Ke2.default.vErrors}.concat(${f})`), n2.assign(Ke2.default.errors, (0, W4._)`${Ke2.default.vErrors}.length`); + } + function m3(h2) { + var f; + if (!o.opts.unevaluated) + return; + let p3 = (f = r?.validate) === null || f === void 0 ? void 0 : f.evaluated; + if (o.props !== true) + if (p3 && !p3.dynamicProps) + p3.props !== void 0 && (o.props = It3.mergeEvaluated.props(n2, p3.props, o.props)); + else { + let y4 = n2.var("props", (0, W4._)`${h2}.evaluated.props`); + o.props = It3.mergeEvaluated.props(n2, y4, o.props, W4.Name); + } + if (o.items !== true) + if (p3 && !p3.dynamicItems) + p3.items !== void 0 && (o.items = It3.mergeEvaluated.items(n2, p3.items, o.items)); + else { + let y4 = n2.var("items", (0, W4._)`${h2}.evaluated.items`); + o.items = It3.mergeEvaluated.items(n2, y4, o.items, W4.Name); + } + } + } + ke2.callRef = Mt3; + ke2.default = Vc; +}); +var Wn = $2((Gr3) => { + "use strict"; + Object.defineProperty(Gr3, "__esModule", { value: true }); + var Kc = Ln(), Fc = Hn(), Uc = ["$schema", "$id", "$defs", "$vocabulary", { keyword: "$comment" }, "definitions", Kc.default, Fc.default]; + Gr3.default = Uc; +}); +var Bn = $2((xr3) => { + "use strict"; + Object.defineProperty(xr3, "__esModule", { value: true }); + var At4 = P(), _e2 = At4.operators, Dt2 = { maximum: { okStr: "<=", ok: _e2.LTE, fail: _e2.GT }, minimum: { okStr: ">=", ok: _e2.GTE, fail: _e2.LT }, exclusiveMaximum: { okStr: "<", ok: _e2.LT, fail: _e2.GTE }, exclusiveMinimum: { okStr: ">", ok: _e2.GT, fail: _e2.LTE } }, zc = { message: ({ keyword: t, schemaCode: e }) => (0, At4.str)`must be ${Dt2[t].okStr} ${e}`, params: ({ keyword: t, schemaCode: e }) => (0, At4._)`{comparison: ${Dt2[t].okStr}, limit: ${e}}` }, Lc = { keyword: Object.keys(Dt2), type: "number", schemaType: "number", $data: true, error: zc, code(t) { + let { keyword: e, data: r, schemaCode: s } = t; + t.fail$data((0, At4._)`${r} ${Dt2[e].fail} ${s} || isNaN(${r})`); + } }; + xr3.default = Lc; +}); +var Qn = $2((Jr3) => { + "use strict"; + Object.defineProperty(Jr3, "__esModule", { value: true }); + var ut4 = P(), Gc = { message: ({ schemaCode: t }) => (0, ut4.str)`must be multiple of ${t}`, params: ({ schemaCode: t }) => (0, ut4._)`{multipleOf: ${t}}` }, xc = { keyword: "multipleOf", type: "number", schemaType: "number", $data: true, error: Gc, code(t) { + let { gen: e, data: r, schemaCode: s, it: n2 } = t, o = n2.opts.multipleOfPrecision, a3 = e.let("res"), i = o ? (0, ut4._)`Math.abs(Math.round(${a3}) - ${a3}) > 1e-${o}` : (0, ut4._)`${a3} !== parseInt(${a3})`; + t.fail$data((0, ut4._)`(${s} === 0 || (${a3} = ${r}/${s}, ${i}))`); + } }; + Jr3.default = xc; +}); +var Yn = $2((Hr3) => { + "use strict"; + Object.defineProperty(Hr3, "__esModule", { value: true }); + function Xn3(t) { + let e = t.length, r = 0, s = 0, n2; + for (; s < e; ) + r++, n2 = t.charCodeAt(s++), n2 >= 55296 && n2 <= 56319 && s < e && (n2 = t.charCodeAt(s), (n2 & 64512) === 56320 && s++); + return r; + } + Hr3.default = Xn3; + Xn3.code = 'require("ajv/dist/runtime/ucs2length").default'; +}); +var Zn = $2((Wr4) => { + "use strict"; + Object.defineProperty(Wr4, "__esModule", { value: true }); + var je2 = P(), Jc = T(), Hc = Yn(), Wc = { message({ keyword: t, schemaCode: e }) { + let r = t === "maxLength" ? "more" : "fewer"; + return (0, je2.str)`must NOT have ${r} than ${e} characters`; + }, params: ({ schemaCode: t }) => (0, je2._)`{limit: ${t}}` }, Bc = { keyword: ["maxLength", "minLength"], type: "string", schemaType: "number", $data: true, error: Wc, code(t) { + let { keyword: e, data: r, schemaCode: s, it: n2 } = t, o = e === "maxLength" ? je2.operators.GT : je2.operators.LT, a3 = n2.opts.unicode === false ? (0, je2._)`${r}.length` : (0, je2._)`${(0, Jc.useFunc)(t.gen, Hc.default)}(${r})`; + t.fail$data((0, je2._)`${a3} ${o} ${s}`); + } }; + Wr4.default = Bc; +}); +var eo = $2((Br4) => { + "use strict"; + Object.defineProperty(Br4, "__esModule", { value: true }); + var Qc = Q2(), Vt3 = P(), Xc = { message: ({ schemaCode: t }) => (0, Vt3.str)`must match pattern "${t}"`, params: ({ schemaCode: t }) => (0, Vt3._)`{pattern: ${t}}` }, Yc = { keyword: "pattern", type: "string", schemaType: "string", $data: true, error: Xc, code(t) { + let { data: e, $data: r, schema: s, schemaCode: n2, it: o } = t, a3 = o.opts.unicodeRegExp ? "u" : "", i = r ? (0, Vt3._)`(new RegExp(${n2}, ${a3}))` : (0, Qc.usePattern)(t, s); + t.fail$data((0, Vt3._)`!${i}.test(${e})`); + } }; + Br4.default = Yc; +}); +var to = $2((Qr4) => { + "use strict"; + Object.defineProperty(Qr4, "__esModule", { value: true }); + var lt4 = P(), Zc = { message({ keyword: t, schemaCode: e }) { + let r = t === "maxProperties" ? "more" : "fewer"; + return (0, lt4.str)`must NOT have ${r} than ${e} properties`; + }, params: ({ schemaCode: t }) => (0, lt4._)`{limit: ${t}}` }, eu2 = { keyword: ["maxProperties", "minProperties"], type: "object", schemaType: "number", $data: true, error: Zc, code(t) { + let { keyword: e, data: r, schemaCode: s } = t, n2 = e === "maxProperties" ? lt4.operators.GT : lt4.operators.LT; + t.fail$data((0, lt4._)`Object.keys(${r}).length ${n2} ${s}`); + } }; + Qr4.default = eu2; +}); +var ro = $2((Xr3) => { + "use strict"; + Object.defineProperty(Xr3, "__esModule", { value: true }); + var dt3 = Q2(), ft3 = P(), tu2 = T(), ru2 = { message: ({ params: { missingProperty: t } }) => (0, ft3.str)`must have required property '${t}'`, params: ({ params: { missingProperty: t } }) => (0, ft3._)`{missingProperty: ${t}}` }, su2 = { keyword: "required", type: "object", schemaType: "array", $data: true, error: ru2, code(t) { + let { gen: e, schema: r, schemaCode: s, data: n2, $data: o, it: a3 } = t, { opts: i } = a3; + if (!o && r.length === 0) + return; + let c3 = r.length >= i.loopRequired; + if (a3.allErrors ? u2() : l2(), i.strictRequired) { + let m3 = t.parentSchema.properties, { definedProperties: h2 } = t.it; + for (let f of r) + if (m3?.[f] === void 0 && !h2.has(f)) { + let p3 = a3.schemaEnv.baseId + a3.errSchemaPath, y4 = `required property "${f}" is not defined at "${p3}" (strictRequired)`; + (0, tu2.checkStrictMode)(a3, y4, a3.opts.strictRequired); + } + } + function u2() { + if (c3 || o) + t.block$data(ft3.nil, d5); + else + for (let m3 of r) + (0, dt3.checkReportMissingProp)(t, m3); + } + function l2() { + let m3 = e.let("missing"); + if (c3 || o) { + let h2 = e.let("valid", true); + t.block$data(h2, () => _3(m3, h2)), t.ok(h2); + } else + e.if((0, dt3.checkMissingProp)(t, r, m3)), (0, dt3.reportMissingProp)(t, m3), e.else(); + } + function d5() { + e.forOf("prop", s, (m3) => { + t.setParams({ missingProperty: m3 }), e.if((0, dt3.noPropertyInData)(e, n2, m3, i.ownProperties), () => t.error()); + }); + } + function _3(m3, h2) { + t.setParams({ missingProperty: m3 }), e.forOf(m3, s, () => { + e.assign(h2, (0, dt3.propertyInData)(e, n2, m3, i.ownProperties)), e.if((0, ft3.not)(h2), () => { + t.error(), e.break(); + }); + }, ft3.nil); + } + } }; + Xr3.default = su2; +}); +var so = $2((Yr3) => { + "use strict"; + Object.defineProperty(Yr3, "__esModule", { value: true }); + var ht3 = P(), nu2 = { message({ keyword: t, schemaCode: e }) { + let r = t === "maxItems" ? "more" : "fewer"; + return (0, ht3.str)`must NOT have ${r} than ${e} items`; + }, params: ({ schemaCode: t }) => (0, ht3._)`{limit: ${t}}` }, ou2 = { keyword: ["maxItems", "minItems"], type: "array", schemaType: "number", $data: true, error: nu2, code(t) { + let { keyword: e, data: r, schemaCode: s } = t, n2 = e === "maxItems" ? ht3.operators.GT : ht3.operators.LT; + t.fail$data((0, ht3._)`${r}.length ${n2} ${s}`); + } }; + Yr3.default = ou2; +}); +var Kt = $2((Zr4) => { + "use strict"; + Object.defineProperty(Zr4, "__esModule", { value: true }); + var no2 = $t("fast-deep-equal"); + no2.code = 'require("ajv/dist/runtime/equal").default'; + Zr4.default = no2; +}); +var oo = $2((ts2) => { + "use strict"; + Object.defineProperty(ts2, "__esModule", { value: true }); + var es2 = et(), K2 = P(), au2 = T(), iu2 = Kt(), cu2 = { message: ({ params: { i: t, j: e } }) => (0, K2.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`, params: ({ params: { i: t, j: e } }) => (0, K2._)`{i: ${t}, j: ${e}}` }, uu2 = { keyword: "uniqueItems", type: "array", schemaType: "boolean", $data: true, error: cu2, code(t) { + let { gen: e, data: r, $data: s, schema: n2, parentSchema: o, schemaCode: a3, it: i } = t; + if (!s && !n2) + return; + let c3 = e.let("valid"), u2 = o.items ? (0, es2.getSchemaTypes)(o.items) : []; + t.block$data(c3, l2, (0, K2._)`${a3} === false`), t.ok(c3); + function l2() { + let h2 = e.let("i", (0, K2._)`${r}.length`), f = e.let("j"); + t.setParams({ i: h2, j: f }), e.assign(c3, true), e.if((0, K2._)`${h2} > 1`, () => (d5() ? _3 : m3)(h2, f)); + } + function d5() { + return u2.length > 0 && !u2.some((h2) => h2 === "object" || h2 === "array"); + } + function _3(h2, f) { + let p3 = e.name("item"), y4 = (0, es2.checkDataTypes)(u2, p3, i.opts.strictNumbers, es2.DataType.Wrong), j3 = e.const("indices", (0, K2._)`{}`); + e.for((0, K2._)`;${h2}--;`, () => { + e.let(p3, (0, K2._)`${r}[${h2}]`), e.if(y4, (0, K2._)`continue`), u2.length > 1 && e.if((0, K2._)`typeof ${p3} == "string"`, (0, K2._)`${p3} += "_"`), e.if((0, K2._)`typeof ${j3}[${p3}] == "number"`, () => { + e.assign(f, (0, K2._)`${j3}[${p3}]`), t.error(), e.assign(c3, false).break(); + }).code((0, K2._)`${j3}[${p3}] = ${h2}`); + }); + } + function m3(h2, f) { + let p3 = (0, au2.useFunc)(e, iu2.default), y4 = e.name("outer"); + e.label(y4).for((0, K2._)`;${h2}--;`, () => e.for((0, K2._)`${f} = ${h2}; ${f}--;`, () => e.if((0, K2._)`${p3}(${r}[${h2}], ${r}[${f}])`, () => { + t.error(), e.assign(c3, false).break(y4); + }))); + } + } }; + ts2.default = uu2; +}); +var ao = $2((ss2) => { + "use strict"; + Object.defineProperty(ss2, "__esModule", { value: true }); + var rs2 = P(), lu2 = T(), du2 = Kt(), fu2 = { message: "must be equal to constant", params: ({ schemaCode: t }) => (0, rs2._)`{allowedValue: ${t}}` }, hu2 = { keyword: "const", $data: true, error: fu2, code(t) { + let { gen: e, data: r, $data: s, schemaCode: n2, schema: o } = t; + s || o && typeof o == "object" ? t.fail$data((0, rs2._)`!${(0, lu2.useFunc)(e, du2.default)}(${r}, ${n2})`) : t.fail((0, rs2._)`${o} !== ${r}`); + } }; + ss2.default = hu2; +}); +var io = $2((ns2) => { + "use strict"; + Object.defineProperty(ns2, "__esModule", { value: true }); + var pt3 = P(), pu2 = T(), mu2 = Kt(), yu2 = { message: "must be equal to one of the allowed values", params: ({ schemaCode: t }) => (0, pt3._)`{allowedValues: ${t}}` }, _u2 = { keyword: "enum", schemaType: "array", $data: true, error: yu2, code(t) { + let { gen: e, data: r, $data: s, schema: n2, schemaCode: o, it: a3 } = t; + if (!s && n2.length === 0) + throw new Error("enum must have non-empty array"); + let i = n2.length >= a3.opts.loopEnum, c3, u2 = () => c3 ?? (c3 = (0, pu2.useFunc)(e, mu2.default)), l2; + if (i || s) + l2 = e.let("valid"), t.block$data(l2, d5); + else { + if (!Array.isArray(n2)) + throw new Error("ajv implementation error"); + let m3 = e.const("vSchema", o); + l2 = (0, pt3.or)(...n2.map((h2, f) => _3(m3, f))); + } + t.pass(l2); + function d5() { + e.assign(l2, false), e.forOf("v", o, (m3) => e.if((0, pt3._)`${u2()}(${r}, ${m3})`, () => e.assign(l2, true).break())); + } + function _3(m3, h2) { + let f = n2[h2]; + return typeof f == "object" && f !== null ? (0, pt3._)`${u2()}(${r}, ${m3}[${h2}])` : (0, pt3._)`${r} === ${f}`; + } + } }; + ns2.default = _u2; +}); +var co = $2((os2) => { + "use strict"; + Object.defineProperty(os2, "__esModule", { value: true }); + var $u2 = Bn(), gu2 = Qn(), vu2 = Zn(), wu2 = eo(), bu2 = to(), Eu2 = ro(), Pu2 = so(), Su2 = oo(), Nu2 = ao(), ku2 = io(), ju = [$u2.default, gu2.default, vu2.default, wu2.default, bu2.default, Eu2.default, Pu2.default, Su2.default, { keyword: "type", schemaType: ["string", "array"] }, { keyword: "nullable", schemaType: "boolean" }, Nu2.default, ku2.default]; + os2.default = ju; +}); +var is = $2((mt4) => { + "use strict"; + Object.defineProperty(mt4, "__esModule", { value: true }); + mt4.validateAdditionalItems = void 0; + var qe2 = P(), as2 = T(), qu2 = { message: ({ params: { len: t } }) => (0, qe2.str)`must NOT have more than ${t} items`, params: ({ params: { len: t } }) => (0, qe2._)`{limit: ${t}}` }, Ou2 = { keyword: "additionalItems", type: "array", schemaType: ["boolean", "object"], before: "uniqueItems", error: qu2, code(t) { + let { parentSchema: e, it: r } = t, { items: s } = e; + if (!Array.isArray(s)) { + (0, as2.checkStrictMode)(r, '"additionalItems" is ignored when "items" is not an array of schemas'); + return; + } + uo2(t, s); + } }; + function uo2(t, e) { + let { gen: r, schema: s, data: n2, keyword: o, it: a3 } = t; + a3.items = true; + let i = r.const("len", (0, qe2._)`${n2}.length`); + if (s === false) + t.setParams({ len: e.length }), t.pass((0, qe2._)`${i} <= ${e.length}`); + else if (typeof s == "object" && !(0, as2.alwaysValidSchema)(a3, s)) { + let u2 = r.var("valid", (0, qe2._)`${i} <= ${e.length}`); + r.if((0, qe2.not)(u2), () => c3(u2)), t.ok(u2); + } + function c3(u2) { + r.forRange("i", e.length, i, (l2) => { + t.subschema({ keyword: o, dataProp: l2, dataPropType: as2.Type.Num }, u2), a3.allErrors || r.if((0, qe2.not)(u2), () => r.break()); + }); + } + } + mt4.validateAdditionalItems = uo2; + mt4.default = Ou2; +}); +var cs = $2((yt3) => { + "use strict"; + Object.defineProperty(yt3, "__esModule", { value: true }); + yt3.validateTuple = void 0; + var lo2 = P(), Ft2 = T(), Tu2 = Q2(), Ru2 = { keyword: "items", type: "array", schemaType: ["object", "array", "boolean"], before: "uniqueItems", code(t) { + let { schema: e, it: r } = t; + if (Array.isArray(e)) + return fo2(t, "additionalItems", e); + r.items = true, !(0, Ft2.alwaysValidSchema)(r, e) && t.ok((0, Tu2.validateArray)(t)); + } }; + function fo2(t, e, r = t.schema) { + let { gen: s, parentSchema: n2, data: o, keyword: a3, it: i } = t; + l2(n2), i.opts.unevaluated && r.length && i.items !== true && (i.items = Ft2.mergeEvaluated.items(s, r.length, i.items)); + let c3 = s.name("valid"), u2 = s.const("len", (0, lo2._)`${o}.length`); + r.forEach((d5, _3) => { + (0, Ft2.alwaysValidSchema)(i, d5) || (s.if((0, lo2._)`${u2} > ${_3}`, () => t.subschema({ keyword: a3, schemaProp: _3, dataProp: _3 }, c3)), t.ok(c3)); + }); + function l2(d5) { + let { opts: _3, errSchemaPath: m3 } = i, h2 = r.length, f = h2 === d5.minItems && (h2 === d5.maxItems || d5[e] === false); + if (_3.strictTuples && !f) { + let p3 = `"${a3}" is ${h2}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m3}"`; + (0, Ft2.checkStrictMode)(i, p3, _3.strictTuples); + } + } + } + yt3.validateTuple = fo2; + yt3.default = Ru2; +}); +var ho = $2((us2) => { + "use strict"; + Object.defineProperty(us2, "__esModule", { value: true }); + var Cu2 = cs(), Iu2 = { keyword: "prefixItems", type: "array", schemaType: ["array"], before: "uniqueItems", code: (t) => (0, Cu2.validateTuple)(t, "items") }; + us2.default = Iu2; +}); +var mo = $2((ls2) => { + "use strict"; + Object.defineProperty(ls2, "__esModule", { value: true }); + var po2 = P(), Mu2 = T(), Au2 = Q2(), Du2 = is(), Vu2 = { message: ({ params: { len: t } }) => (0, po2.str)`must NOT have more than ${t} items`, params: ({ params: { len: t } }) => (0, po2._)`{limit: ${t}}` }, Ku2 = { keyword: "items", type: "array", schemaType: ["object", "boolean"], before: "uniqueItems", error: Vu2, code(t) { + let { schema: e, parentSchema: r, it: s } = t, { prefixItems: n2 } = r; + s.items = true, !(0, Mu2.alwaysValidSchema)(s, e) && (n2 ? (0, Du2.validateAdditionalItems)(t, n2) : t.ok((0, Au2.validateArray)(t))); + } }; + ls2.default = Ku2; +}); +var yo = $2((ds2) => { + "use strict"; + Object.defineProperty(ds2, "__esModule", { value: true }); + var Y2 = P(), Ut2 = T(), Fu2 = { message: ({ params: { min: t, max: e } }) => e === void 0 ? (0, Y2.str)`must contain at least ${t} valid item(s)` : (0, Y2.str)`must contain at least ${t} and no more than ${e} valid item(s)`, params: ({ params: { min: t, max: e } }) => e === void 0 ? (0, Y2._)`{minContains: ${t}}` : (0, Y2._)`{minContains: ${t}, maxContains: ${e}}` }, Uu2 = { keyword: "contains", type: "array", schemaType: ["object", "boolean"], before: "uniqueItems", trackErrors: true, error: Fu2, code(t) { + let { gen: e, schema: r, parentSchema: s, data: n2, it: o } = t, a3, i, { minContains: c3, maxContains: u2 } = s; + o.opts.next ? (a3 = c3 === void 0 ? 1 : c3, i = u2) : a3 = 1; + let l2 = e.const("len", (0, Y2._)`${n2}.length`); + if (t.setParams({ min: a3, max: i }), i === void 0 && a3 === 0) { + (0, Ut2.checkStrictMode)(o, '"minContains" == 0 without "maxContains": "contains" keyword ignored'); + return; + } + if (i !== void 0 && a3 > i) { + (0, Ut2.checkStrictMode)(o, '"minContains" > "maxContains" is always invalid'), t.fail(); + return; + } + if ((0, Ut2.alwaysValidSchema)(o, r)) { + let f = (0, Y2._)`${l2} >= ${a3}`; + i !== void 0 && (f = (0, Y2._)`${f} && ${l2} <= ${i}`), t.pass(f); + return; + } + o.items = true; + let d5 = e.name("valid"); + i === void 0 && a3 === 1 ? m3(d5, () => e.if(d5, () => e.break())) : a3 === 0 ? (e.let(d5, true), i !== void 0 && e.if((0, Y2._)`${n2}.length > 0`, _3)) : (e.let(d5, false), _3()), t.result(d5, () => t.reset()); + function _3() { + let f = e.name("_valid"), p3 = e.let("count", 0); + m3(f, () => e.if(f, () => h2(p3))); + } + function m3(f, p3) { + e.forRange("i", 0, l2, (y4) => { + t.subschema({ keyword: "contains", dataProp: y4, dataPropType: Ut2.Type.Num, compositeRule: true }, f), p3(); + }); + } + function h2(f) { + e.code((0, Y2._)`${f}++`), i === void 0 ? e.if((0, Y2._)`${f} >= ${a3}`, () => e.assign(d5, true).break()) : (e.if((0, Y2._)`${f} > ${i}`, () => e.assign(d5, false).break()), a3 === 1 ? e.assign(d5, true) : e.if((0, Y2._)`${f} >= ${a3}`, () => e.assign(d5, true))); + } + } }; + ds2.default = Uu2; +}); +var go = $2((ae) => { + "use strict"; + Object.defineProperty(ae, "__esModule", { value: true }); + ae.validateSchemaDeps = ae.validatePropertyDeps = ae.error = void 0; + var fs2 = P(), zu2 = T(), _t2 = Q2(); + ae.error = { message: ({ params: { property: t, depsCount: e, deps: r } }) => { + let s = e === 1 ? "property" : "properties"; + return (0, fs2.str)`must have ${s} ${r} when property ${t} is present`; + }, params: ({ params: { property: t, depsCount: e, deps: r, missingProperty: s } }) => (0, fs2._)`{property: ${t}, + missingProperty: ${s}, + depsCount: ${e}, + deps: ${r}}` }; + var Lu2 = { keyword: "dependencies", type: "object", schemaType: "object", error: ae.error, code(t) { + let [e, r] = Gu2(t); + _o2(t, e), $o2(t, r); + } }; + function Gu2({ schema: t }) { + let e = {}, r = {}; + for (let s in t) { + if (s === "__proto__") + continue; + let n2 = Array.isArray(t[s]) ? e : r; + n2[s] = t[s]; + } + return [e, r]; + } + function _o2(t, e = t.schema) { + let { gen: r, data: s, it: n2 } = t; + if (Object.keys(e).length === 0) + return; + let o = r.let("missing"); + for (let a3 in e) { + let i = e[a3]; + if (i.length === 0) + continue; + let c3 = (0, _t2.propertyInData)(r, s, a3, n2.opts.ownProperties); + t.setParams({ property: a3, depsCount: i.length, deps: i.join(", ") }), n2.allErrors ? r.if(c3, () => { + for (let u2 of i) + (0, _t2.checkReportMissingProp)(t, u2); + }) : (r.if((0, fs2._)`${c3} && (${(0, _t2.checkMissingProp)(t, i, o)})`), (0, _t2.reportMissingProp)(t, o), r.else()); + } + } + ae.validatePropertyDeps = _o2; + function $o2(t, e = t.schema) { + let { gen: r, data: s, keyword: n2, it: o } = t, a3 = r.name("valid"); + for (let i in e) + (0, zu2.alwaysValidSchema)(o, e[i]) || (r.if((0, _t2.propertyInData)(r, s, i, o.opts.ownProperties), () => { + let c3 = t.subschema({ keyword: n2, schemaProp: i }, a3); + t.mergeValidEvaluated(c3, a3); + }, () => r.var(a3, true)), t.ok(a3)); + } + ae.validateSchemaDeps = $o2; + ae.default = Lu2; +}); +var wo = $2((hs2) => { + "use strict"; + Object.defineProperty(hs2, "__esModule", { value: true }); + var vo2 = P(), xu2 = T(), Ju2 = { message: "property name must be valid", params: ({ params: t }) => (0, vo2._)`{propertyName: ${t.propertyName}}` }, Hu2 = { keyword: "propertyNames", type: "object", schemaType: ["object", "boolean"], error: Ju2, code(t) { + let { gen: e, schema: r, data: s, it: n2 } = t; + if ((0, xu2.alwaysValidSchema)(n2, r)) + return; + let o = e.name("valid"); + e.forIn("key", s, (a3) => { + t.setParams({ propertyName: a3 }), t.subschema({ keyword: "propertyNames", data: a3, dataTypes: ["string"], propertyName: a3, compositeRule: true }, o), e.if((0, vo2.not)(o), () => { + t.error(true), n2.allErrors || e.break(); + }); + }), t.ok(o); + } }; + hs2.default = Hu2; +}); +var ms = $2((ps2) => { + "use strict"; + Object.defineProperty(ps2, "__esModule", { value: true }); + var zt4 = Q2(), re = P(), Wu2 = le(), Lt3 = T(), Bu2 = { message: "must NOT have additional properties", params: ({ params: t }) => (0, re._)`{additionalProperty: ${t.additionalProperty}}` }, Qu2 = { keyword: "additionalProperties", type: ["object"], schemaType: ["boolean", "object"], allowUndefined: true, trackErrors: true, error: Bu2, code(t) { + let { gen: e, schema: r, parentSchema: s, data: n2, errsCount: o, it: a3 } = t; + if (!o) + throw new Error("ajv implementation error"); + let { allErrors: i, opts: c3 } = a3; + if (a3.props = true, c3.removeAdditional !== "all" && (0, Lt3.alwaysValidSchema)(a3, r)) + return; + let u2 = (0, zt4.allSchemaProperties)(s.properties), l2 = (0, zt4.allSchemaProperties)(s.patternProperties); + d5(), t.ok((0, re._)`${o} === ${Wu2.default.errors}`); + function d5() { + e.forIn("key", n2, (p3) => { + !u2.length && !l2.length ? h2(p3) : e.if(_3(p3), () => h2(p3)); + }); + } + function _3(p3) { + let y4; + if (u2.length > 8) { + let j3 = (0, Lt3.schemaRefOrVal)(a3, s.properties, "properties"); + y4 = (0, zt4.isOwnProperty)(e, j3, p3); + } else + u2.length ? y4 = (0, re.or)(...u2.map((j3) => (0, re._)`${p3} === ${j3}`)) : y4 = re.nil; + return l2.length && (y4 = (0, re.or)(y4, ...l2.map((j3) => (0, re._)`${(0, zt4.usePattern)(t, j3)}.test(${p3})`))), (0, re.not)(y4); + } + function m3(p3) { + e.code((0, re._)`delete ${n2}[${p3}]`); + } + function h2(p3) { + if (c3.removeAdditional === "all" || c3.removeAdditional && r === false) { + m3(p3); + return; + } + if (r === false) { + t.setParams({ additionalProperty: p3 }), t.error(), i || e.break(); + return; + } + if (typeof r == "object" && !(0, Lt3.alwaysValidSchema)(a3, r)) { + let y4 = e.name("valid"); + c3.removeAdditional === "failing" ? (f(p3, y4, false), e.if((0, re.not)(y4), () => { + t.reset(), m3(p3); + })) : (f(p3, y4), i || e.if((0, re.not)(y4), () => e.break())); + } + } + function f(p3, y4, j3) { + let N2 = { keyword: "additionalProperties", dataProp: p3, dataPropType: Lt3.Type.Str }; + j3 === false && Object.assign(N2, { compositeRule: true, createErrors: false, allErrors: false }), t.subschema(N2, y4); + } + } }; + ps2.default = Qu2; +}); +var Po = $2((_s2) => { + "use strict"; + Object.defineProperty(_s2, "__esModule", { value: true }); + var Xu2 = nt(), bo2 = Q2(), ys2 = T(), Eo2 = ms(), Yu2 = { keyword: "properties", type: "object", schemaType: "object", code(t) { + let { gen: e, schema: r, parentSchema: s, data: n2, it: o } = t; + o.opts.removeAdditional === "all" && s.additionalProperties === void 0 && Eo2.default.code(new Xu2.KeywordCxt(o, Eo2.default, "additionalProperties")); + let a3 = (0, bo2.allSchemaProperties)(r); + for (let d5 of a3) + o.definedProperties.add(d5); + o.opts.unevaluated && a3.length && o.props !== true && (o.props = ys2.mergeEvaluated.props(e, (0, ys2.toHash)(a3), o.props)); + let i = a3.filter((d5) => !(0, ys2.alwaysValidSchema)(o, r[d5])); + if (i.length === 0) + return; + let c3 = e.name("valid"); + for (let d5 of i) + u2(d5) ? l2(d5) : (e.if((0, bo2.propertyInData)(e, n2, d5, o.opts.ownProperties)), l2(d5), o.allErrors || e.else().var(c3, true), e.endIf()), t.it.definedProperties.add(d5), t.ok(c3); + function u2(d5) { + return o.opts.useDefaults && !o.compositeRule && r[d5].default !== void 0; + } + function l2(d5) { + t.subschema({ keyword: "properties", schemaProp: d5, dataProp: d5 }, c3); + } + } }; + _s2.default = Yu2; +}); +var jo = $2(($s2) => { + "use strict"; + Object.defineProperty($s2, "__esModule", { value: true }); + var So2 = Q2(), Gt3 = P(), No2 = T(), ko2 = T(), Zu2 = { keyword: "patternProperties", type: "object", schemaType: "object", code(t) { + let { gen: e, schema: r, data: s, parentSchema: n2, it: o } = t, { opts: a3 } = o, i = (0, So2.allSchemaProperties)(r), c3 = i.filter((f) => (0, No2.alwaysValidSchema)(o, r[f])); + if (i.length === 0 || c3.length === i.length && (!o.opts.unevaluated || o.props === true)) + return; + let u2 = a3.strictSchema && !a3.allowMatchingProperties && n2.properties, l2 = e.name("valid"); + o.props !== true && !(o.props instanceof Gt3.Name) && (o.props = (0, ko2.evaluatedPropsToName)(e, o.props)); + let { props: d5 } = o; + _3(); + function _3() { + for (let f of i) + u2 && m3(f), o.allErrors ? h2(f) : (e.var(l2, true), h2(f), e.if(l2)); + } + function m3(f) { + for (let p3 in u2) + new RegExp(f).test(p3) && (0, No2.checkStrictMode)(o, `property ${p3} matches pattern ${f} (use allowMatchingProperties)`); + } + function h2(f) { + e.forIn("key", s, (p3) => { + e.if((0, Gt3._)`${(0, So2.usePattern)(t, f)}.test(${p3})`, () => { + let y4 = c3.includes(f); + y4 || t.subschema({ keyword: "patternProperties", schemaProp: f, dataProp: p3, dataPropType: ko2.Type.Str }, l2), o.opts.unevaluated && d5 !== true ? e.assign((0, Gt3._)`${d5}[${p3}]`, true) : !y4 && !o.allErrors && e.if((0, Gt3.not)(l2), () => e.break()); + }); + }); + } + } }; + $s2.default = Zu2; +}); +var qo = $2((gs2) => { + "use strict"; + Object.defineProperty(gs2, "__esModule", { value: true }); + var el = T(), tl = { keyword: "not", schemaType: ["object", "boolean"], trackErrors: true, code(t) { + let { gen: e, schema: r, it: s } = t; + if ((0, el.alwaysValidSchema)(s, r)) { + t.fail(); + return; + } + let n2 = e.name("valid"); + t.subschema({ keyword: "not", compositeRule: true, createErrors: false, allErrors: false }, n2), t.failResult(n2, () => t.reset(), () => t.error()); + }, error: { message: "must NOT be valid" } }; + gs2.default = tl; +}); +var Oo = $2((vs2) => { + "use strict"; + Object.defineProperty(vs2, "__esModule", { value: true }); + var rl = Q2(), sl = { keyword: "anyOf", schemaType: "array", trackErrors: true, code: rl.validateUnion, error: { message: "must match a schema in anyOf" } }; + vs2.default = sl; +}); +var To = $2((ws2) => { + "use strict"; + Object.defineProperty(ws2, "__esModule", { value: true }); + var xt4 = P(), nl = T(), ol = { message: "must match exactly one schema in oneOf", params: ({ params: t }) => (0, xt4._)`{passingSchemas: ${t.passing}}` }, al = { keyword: "oneOf", schemaType: "array", trackErrors: true, error: ol, code(t) { + let { gen: e, schema: r, parentSchema: s, it: n2 } = t; + if (!Array.isArray(r)) + throw new Error("ajv implementation error"); + if (n2.opts.discriminator && s.discriminator) + return; + let o = r, a3 = e.let("valid", false), i = e.let("passing", null), c3 = e.name("_valid"); + t.setParams({ passing: i }), e.block(u2), t.result(a3, () => t.reset(), () => t.error(true)); + function u2() { + o.forEach((l2, d5) => { + let _3; + (0, nl.alwaysValidSchema)(n2, l2) ? e.var(c3, true) : _3 = t.subschema({ keyword: "oneOf", schemaProp: d5, compositeRule: true }, c3), d5 > 0 && e.if((0, xt4._)`${c3} && ${a3}`).assign(a3, false).assign(i, (0, xt4._)`[${i}, ${d5}]`).else(), e.if(c3, () => { + e.assign(a3, true), e.assign(i, d5), _3 && t.mergeEvaluated(_3, xt4.Name); + }); + }); + } + } }; + ws2.default = al; +}); +var Ro = $2((bs2) => { + "use strict"; + Object.defineProperty(bs2, "__esModule", { value: true }); + var il = T(), cl = { keyword: "allOf", schemaType: "array", code(t) { + let { gen: e, schema: r, it: s } = t; + if (!Array.isArray(r)) + throw new Error("ajv implementation error"); + let n2 = e.name("valid"); + r.forEach((o, a3) => { + if ((0, il.alwaysValidSchema)(s, o)) + return; + let i = t.subschema({ keyword: "allOf", schemaProp: a3 }, n2); + t.ok(n2), t.mergeEvaluated(i); + }); + } }; + bs2.default = cl; +}); +var Mo = $2((Es2) => { + "use strict"; + Object.defineProperty(Es2, "__esModule", { value: true }); + var Jt3 = P(), Io2 = T(), ul = { message: ({ params: t }) => (0, Jt3.str)`must match "${t.ifClause}" schema`, params: ({ params: t }) => (0, Jt3._)`{failingKeyword: ${t.ifClause}}` }, ll = { keyword: "if", schemaType: ["object", "boolean"], trackErrors: true, error: ul, code(t) { + let { gen: e, parentSchema: r, it: s } = t; + r.then === void 0 && r.else === void 0 && (0, Io2.checkStrictMode)(s, '"if" without "then" and "else" is ignored'); + let n2 = Co2(s, "then"), o = Co2(s, "else"); + if (!n2 && !o) + return; + let a3 = e.let("valid", true), i = e.name("_valid"); + if (c3(), t.reset(), n2 && o) { + let l2 = e.let("ifClause"); + t.setParams({ ifClause: l2 }), e.if(i, u2("then", l2), u2("else", l2)); + } else + n2 ? e.if(i, u2("then")) : e.if((0, Jt3.not)(i), u2("else")); + t.pass(a3, () => t.error(true)); + function c3() { + let l2 = t.subschema({ keyword: "if", compositeRule: true, createErrors: false, allErrors: false }, i); + t.mergeEvaluated(l2); + } + function u2(l2, d5) { + return () => { + let _3 = t.subschema({ keyword: l2 }, i); + e.assign(a3, i), t.mergeValidEvaluated(_3, a3), d5 ? e.assign(d5, (0, Jt3._)`${l2}`) : t.setParams({ ifClause: l2 }); + }; + } + } }; + function Co2(t, e) { + let r = t.schema[e]; + return r !== void 0 && !(0, Io2.alwaysValidSchema)(t, r); + } + Es2.default = ll; +}); +var Ao = $2((Ps2) => { + "use strict"; + Object.defineProperty(Ps2, "__esModule", { value: true }); + var dl = T(), fl = { keyword: ["then", "else"], schemaType: ["object", "boolean"], code({ keyword: t, parentSchema: e, it: r }) { + e.if === void 0 && (0, dl.checkStrictMode)(r, `"${t}" without "if" is ignored`); + } }; + Ps2.default = fl; +}); +var Do = $2((Ss2) => { + "use strict"; + Object.defineProperty(Ss2, "__esModule", { value: true }); + var hl = is(), pl = ho(), ml = cs(), yl = mo(), _l = yo(), $l = go(), gl = wo(), vl = ms(), wl = Po(), bl = jo(), El = qo(), Pl = Oo(), Sl = To(), Nl = Ro(), kl = Mo(), jl = Ao(); + function ql(t = false) { + let e = [El.default, Pl.default, Sl.default, Nl.default, kl.default, jl.default, gl.default, vl.default, $l.default, wl.default, bl.default]; + return t ? e.push(pl.default, yl.default) : e.push(hl.default, ml.default), e.push(_l.default), e; + } + Ss2.default = ql; +}); +var Vo = $2((Ns2) => { + "use strict"; + Object.defineProperty(Ns2, "__esModule", { value: true }); + var D = P(), Ol = { message: ({ schemaCode: t }) => (0, D.str)`must match format "${t}"`, params: ({ schemaCode: t }) => (0, D._)`{format: ${t}}` }, Tl = { keyword: "format", type: ["number", "string"], schemaType: "string", $data: true, error: Ol, code(t, e) { + let { gen: r, data: s, $data: n2, schema: o, schemaCode: a3, it: i } = t, { opts: c3, errSchemaPath: u2, schemaEnv: l2, self: d5 } = i; + if (!c3.validateFormats) + return; + n2 ? _3() : m3(); + function _3() { + let h2 = r.scopeValue("formats", { ref: d5.formats, code: c3.code.formats }), f = r.const("fDef", (0, D._)`${h2}[${a3}]`), p3 = r.let("fType"), y4 = r.let("format"); + r.if((0, D._)`typeof ${f} == "object" && !(${f} instanceof RegExp)`, () => r.assign(p3, (0, D._)`${f}.type || "string"`).assign(y4, (0, D._)`${f}.validate`), () => r.assign(p3, (0, D._)`"string"`).assign(y4, f)), t.fail$data((0, D.or)(j3(), N2())); + function j3() { + return c3.strictSchema === false ? D.nil : (0, D._)`${a3} && !${y4}`; + } + function N2() { + let I4 = l2.$async ? (0, D._)`(${f}.async ? await ${y4}(${s}) : ${y4}(${s}))` : (0, D._)`${y4}(${s})`, w2 = (0, D._)`(typeof ${y4} == "function" ? ${I4} : ${y4}.test(${s}))`; + return (0, D._)`${y4} && ${y4} !== true && ${p3} === ${e} && !${w2}`; + } + } + function m3() { + let h2 = d5.formats[o]; + if (!h2) { + j3(); + return; + } + if (h2 === true) + return; + let [f, p3, y4] = N2(h2); + f === e && t.pass(I4()); + function j3() { + if (c3.strictSchema === false) { + d5.logger.warn(w2()); + return; + } + throw new Error(w2()); + function w2() { + return `unknown format "${o}" ignored in schema at path "${u2}"`; + } + } + function N2(w2) { + let se = w2 instanceof RegExp ? (0, D.regexpCode)(w2) : c3.code.formats ? (0, D._)`${c3.code.formats}${(0, D.getProperty)(o)}` : void 0, ie2 = r.scopeValue("formats", { key: o, ref: w2, code: se }); + return typeof w2 == "object" && !(w2 instanceof RegExp) ? [w2.type || "string", w2.validate, (0, D._)`${ie2}.validate`] : ["string", w2, ie2]; + } + function I4() { + if (typeof h2 == "object" && !(h2 instanceof RegExp) && h2.async) { + if (!l2.$async) + throw new Error("async format in sync schema"); + return (0, D._)`await ${y4}(${s})`; + } + return typeof p3 == "function" ? (0, D._)`${y4}(${s})` : (0, D._)`${y4}.test(${s})`; + } + } + } }; + Ns2.default = Tl; +}); +var Ko = $2((ks2) => { + "use strict"; + Object.defineProperty(ks2, "__esModule", { value: true }); + var Rl = Vo(), Cl = [Rl.default]; + ks2.default = Cl; +}); +var Fo = $2((Fe) => { + "use strict"; + Object.defineProperty(Fe, "__esModule", { value: true }); + Fe.contentVocabulary = Fe.metadataVocabulary = void 0; + Fe.metadataVocabulary = ["title", "description", "default", "deprecated", "readOnly", "writeOnly", "examples"]; + Fe.contentVocabulary = ["contentMediaType", "contentEncoding", "contentSchema"]; +}); +var zo = $2((js2) => { + "use strict"; + Object.defineProperty(js2, "__esModule", { value: true }); + var Il = Wn(), Ml = co(), Al = Do(), Dl = Ko(), Uo2 = Fo(), Vl = [Il.default, Ml.default, (0, Al.default)(), Dl.default, Uo2.metadataVocabulary, Uo2.contentVocabulary]; + js2.default = Vl; +}); +var Go = $2((Ht3) => { + "use strict"; + Object.defineProperty(Ht3, "__esModule", { value: true }); + Ht3.DiscrError = void 0; + var Lo2; + (function(t) { + t.Tag = "tag", t.Mapping = "mapping"; + })(Lo2 || (Ht3.DiscrError = Lo2 = {})); +}); +var Jo = $2((Os2) => { + "use strict"; + Object.defineProperty(Os2, "__esModule", { value: true }); + var Ue = P(), qs2 = Go(), xo2 = Rt(), Kl = ot(), Fl = T(), Ul = { message: ({ params: { discrError: t, tagName: e } }) => t === qs2.DiscrError.Tag ? `tag "${e}" must be string` : `value of tag "${e}" must be in oneOf`, params: ({ params: { discrError: t, tag: e, tagName: r } }) => (0, Ue._)`{error: ${t}, tag: ${r}, tagValue: ${e}}` }, zl = { keyword: "discriminator", type: "object", schemaType: "object", error: Ul, code(t) { + let { gen: e, data: r, schema: s, parentSchema: n2, it: o } = t, { oneOf: a3 } = n2; + if (!o.opts.discriminator) + throw new Error("discriminator: requires discriminator option"); + let i = s.propertyName; + if (typeof i != "string") + throw new Error("discriminator: requires propertyName"); + if (s.mapping) + throw new Error("discriminator: mapping is not supported"); + if (!a3) + throw new Error("discriminator: requires oneOf keyword"); + let c3 = e.let("valid", false), u2 = e.const("tag", (0, Ue._)`${r}${(0, Ue.getProperty)(i)}`); + e.if((0, Ue._)`typeof ${u2} == "string"`, () => l2(), () => t.error(false, { discrError: qs2.DiscrError.Tag, tag: u2, tagName: i })), t.ok(c3); + function l2() { + let m3 = _3(); + e.if(false); + for (let h2 in m3) + e.elseIf((0, Ue._)`${u2} === ${h2}`), e.assign(c3, d5(m3[h2])); + e.else(), t.error(false, { discrError: qs2.DiscrError.Mapping, tag: u2, tagName: i }), e.endIf(); + } + function d5(m3) { + let h2 = e.name("valid"), f = t.subschema({ keyword: "oneOf", schemaProp: m3 }, h2); + return t.mergeEvaluated(f, Ue.Name), h2; + } + function _3() { + var m3; + let h2 = {}, f = y4(n2), p3 = true; + for (let I4 = 0; I4 < a3.length; I4++) { + let w2 = a3[I4]; + if (w2?.$ref && !(0, Fl.schemaHasRulesButRef)(w2, o.self.RULES)) { + let ie2 = w2.$ref; + if (w2 = xo2.resolveRef.call(o.self, o.schemaEnv.root, o.baseId, ie2), w2 instanceof xo2.SchemaEnv && (w2 = w2.schema), w2 === void 0) + throw new Kl.default(o.opts.uriResolver, o.baseId, ie2); + } + let se = (m3 = w2?.properties) === null || m3 === void 0 ? void 0 : m3[i]; + if (typeof se != "object") + throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`); + p3 = p3 && (f || y4(w2)), j3(se, I4); + } + if (!p3) + throw new Error(`discriminator: "${i}" must be required`); + return h2; + function y4({ required: I4 }) { + return Array.isArray(I4) && I4.includes(i); + } + function j3(I4, w2) { + if (I4.const) + N2(I4.const, w2); + else if (I4.enum) + for (let se of I4.enum) + N2(se, w2); + else + throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`); + } + function N2(I4, w2) { + if (typeof I4 != "string" || I4 in h2) + throw new Error(`discriminator: "${i}" values must be unique strings`); + h2[I4] = w2; + } + } + } }; + Os2.default = zl; +}); +var Ho = $2((gf, Ll) => { + Ll.exports = { $schema: "http://json-schema.org/draft-07/schema#", $id: "http://json-schema.org/draft-07/schema#", title: "Core schema meta-schema", definitions: { schemaArray: { type: "array", minItems: 1, items: { $ref: "#" } }, nonNegativeInteger: { type: "integer", minimum: 0 }, nonNegativeIntegerDefault0: { allOf: [{ $ref: "#/definitions/nonNegativeInteger" }, { default: 0 }] }, simpleTypes: { enum: ["array", "boolean", "integer", "null", "number", "object", "string"] }, stringArray: { type: "array", items: { type: "string" }, uniqueItems: true, default: [] } }, type: ["object", "boolean"], properties: { $id: { type: "string", format: "uri-reference" }, $schema: { type: "string", format: "uri" }, $ref: { type: "string", format: "uri-reference" }, $comment: { type: "string" }, title: { type: "string" }, description: { type: "string" }, default: true, readOnly: { type: "boolean", default: false }, examples: { type: "array", items: true }, multipleOf: { type: "number", exclusiveMinimum: 0 }, maximum: { type: "number" }, exclusiveMaximum: { type: "number" }, minimum: { type: "number" }, exclusiveMinimum: { type: "number" }, maxLength: { $ref: "#/definitions/nonNegativeInteger" }, minLength: { $ref: "#/definitions/nonNegativeIntegerDefault0" }, pattern: { type: "string", format: "regex" }, additionalItems: { $ref: "#" }, items: { anyOf: [{ $ref: "#" }, { $ref: "#/definitions/schemaArray" }], default: true }, maxItems: { $ref: "#/definitions/nonNegativeInteger" }, minItems: { $ref: "#/definitions/nonNegativeIntegerDefault0" }, uniqueItems: { type: "boolean", default: false }, contains: { $ref: "#" }, maxProperties: { $ref: "#/definitions/nonNegativeInteger" }, minProperties: { $ref: "#/definitions/nonNegativeIntegerDefault0" }, required: { $ref: "#/definitions/stringArray" }, additionalProperties: { $ref: "#" }, definitions: { type: "object", additionalProperties: { $ref: "#" }, default: {} }, properties: { type: "object", additionalProperties: { $ref: "#" }, default: {} }, patternProperties: { type: "object", additionalProperties: { $ref: "#" }, propertyNames: { format: "regex" }, default: {} }, dependencies: { type: "object", additionalProperties: { anyOf: [{ $ref: "#" }, { $ref: "#/definitions/stringArray" }] } }, propertyNames: { $ref: "#" }, const: true, enum: { type: "array", items: true, minItems: 1, uniqueItems: true }, type: { anyOf: [{ $ref: "#/definitions/simpleTypes" }, { type: "array", items: { $ref: "#/definitions/simpleTypes" }, minItems: 1, uniqueItems: true }] }, format: { type: "string" }, contentMediaType: { type: "string" }, contentEncoding: { type: "string" }, if: { $ref: "#" }, then: { $ref: "#" }, else: { $ref: "#" }, allOf: { $ref: "#/definitions/schemaArray" }, anyOf: { $ref: "#/definitions/schemaArray" }, oneOf: { $ref: "#/definitions/schemaArray" }, not: { $ref: "#" } }, default: true }; +}); +var Rs = $2((A4, Ts2) => { + "use strict"; + Object.defineProperty(A4, "__esModule", { value: true }); + A4.MissingRefError = A4.ValidationError = A4.CodeGen = A4.Name = A4.nil = A4.stringify = A4.str = A4._ = A4.KeywordCxt = A4.Ajv = void 0; + var Gl = zn(), xl = zo(), Jl = Jo(), Wo2 = Ho(), Hl = ["/properties"], Wt3 = "http://json-schema.org/draft-07/schema", ze2 = class extends Gl.default { + _addVocabularies() { + super._addVocabularies(), xl.default.forEach((e) => this.addVocabulary(e)), this.opts.discriminator && this.addKeyword(Jl.default); + } + _addDefaultMetaSchema() { + if (super._addDefaultMetaSchema(), !this.opts.meta) + return; + let e = this.opts.$data ? this.$dataMetaSchema(Wo2, Hl) : Wo2; + this.addMetaSchema(e, Wt3, false), this.refs["http://json-schema.org/schema"] = Wt3; + } + defaultMeta() { + return this.opts.defaultMeta = super.defaultMeta() || (this.getSchema(Wt3) ? Wt3 : void 0); + } + }; + A4.Ajv = ze2; + Ts2.exports = A4 = ze2; + Ts2.exports.Ajv = ze2; + Object.defineProperty(A4, "__esModule", { value: true }); + A4.default = ze2; + var Wl = nt(); + Object.defineProperty(A4, "KeywordCxt", { enumerable: true, get: function() { + return Wl.KeywordCxt; + } }); + var Le2 = P(); + Object.defineProperty(A4, "_", { enumerable: true, get: function() { + return Le2._; + } }); + Object.defineProperty(A4, "str", { enumerable: true, get: function() { + return Le2.str; + } }); + Object.defineProperty(A4, "stringify", { enumerable: true, get: function() { + return Le2.stringify; + } }); + Object.defineProperty(A4, "nil", { enumerable: true, get: function() { + return Le2.nil; + } }); + Object.defineProperty(A4, "Name", { enumerable: true, get: function() { + return Le2.Name; + } }); + Object.defineProperty(A4, "CodeGen", { enumerable: true, get: function() { + return Le2.CodeGen; + } }); + var Bl = Ot(); + Object.defineProperty(A4, "ValidationError", { enumerable: true, get: function() { + return Bl.default; + } }); + var Ql = ot(); + Object.defineProperty(A4, "MissingRefError", { enumerable: true, get: function() { + return Ql.default; + } }); +}); +var $e = {}; +sa2($e, { Ajv: () => id, CodeGen: () => ed, KeywordCxt: () => ad, MissingRefError: () => Yl, Name: () => td, ValidationError: () => Zl, _: () => od, __esModule: () => Xl, default: () => ud, nil: () => rd, str: () => nd, stringify: () => sd }); +var Qo = Ms(Rs()); +ge($e, Ms(Rs())); +var { __esModule: Xl, MissingRefError: Yl, ValidationError: Zl, CodeGen: ed, Name: td, nil: rd, stringify: sd, str: nd, _: od, KeywordCxt: ad, Ajv: id } = Qo; +var { default: Bo, ...cd } = Qo; +var ud = Bo !== void 0 ? Bo : cd; + +// src/validators/json.ts +var metadataValidator = new id({ strictSchema: false }); +var compile = memoize(metadataValidator.compile.bind(metadataValidator)); +function setCustomMetadataFormats(schema) { + if (typeof schema.objects.formats !== "object") { + logger.warning( + `schema.objects.formats missing from schema, format validation disabled.` + ); + return; + } + const schemaFormats = schema.objects.formats; + for (let key of Object.keys(schemaFormats)) { + const pattern = schemaFormats[key]["pattern"]; + if (typeof pattern !== "string") { + logger.warning( + `schema.objects.formats.${key} pattern missing or invalid. Skipping this format for addition to context json validator` + ); + continue; + } + metadataValidator.addFormat(key, pattern); + } +} + +// src/schema/applyRules.ts +function applyRules(schema, context, rootSchema, schemaPath) { + if (!rootSchema) { + rootSchema = schema; + } + if (!schemaPath) { + schemaPath = "schema.rules"; + } + Object.assign(context, expressionFunctions); + context.exists.bind(context); + for (const key in schema) { + if (!(schema[key].constructor === Object)) { + continue; + } + if ("selectors" in schema[key]) { + evalRule( + schema[key], + context, + rootSchema, + `${schemaPath}.${key}` + ); + } else if (schema[key].constructor === Object) { + applyRules( + schema[key], + context, + rootSchema, + `${schemaPath}.${key}` + ); + } + } + return Promise.resolve(); +} +var evalConstructor = (src) => new Function("context", `with (context) { return ${src.replace(/\\/g, "\\\\")} }`); +var safeHas = () => true; +var safeGet = (target, prop) => prop === Symbol.unscopables ? void 0 : target[prop]; +var memoizedEvalConstructor = memoize(evalConstructor); +function evalCheck(src, context) { + const test = memoizedEvalConstructor(src); + const safeContext = new Proxy(context, { has: safeHas, get: safeGet }); + try { + return test(safeContext); + } catch (error2) { + logger.debug(error2); + return null; + } +} +var evalMap = { + checks: evalRuleChecks, + columns: evalColumns, + additional_columns: evalAdditionalColumns, + initial_columns: evalInitialColumns, + index_columns: evalIndexColumns, + fields: evalJsonCheck +}; +function evalRule(rule, context, schema, schemaPath) { + if (rule.selectors && !mapEvalCheck(rule.selectors, context)) { + return; + } + Object.keys(rule).filter((key) => key in evalMap).map((key) => { + evalMap[key](rule, context, schema, schemaPath); + }); +} +function mapEvalCheck(statements, context) { + return statements.every((x2) => evalCheck(x2, context)); +} +function evalRuleChecks(rule, context, schema, schemaPath) { + if (rule.checks && !mapEvalCheck(rule.checks, context)) { + if (rule.issue?.code && rule.issue?.message) { + context.issues.add({ + key: rule.issue.code, + reason: rule.issue.message, + files: [{ ...context.file, evidence: schemaPath }], + severity: rule.issue.level + }); + } else { + context.issues.addNonSchemaIssue("CHECK_ERROR", [ + { ...context.file, evidence: schemaPath } + ]); + } + } + return true; +} +function schemaObjectTypeCheck(schemaObject, value, schema) { + if (value === "n/a") { + return true; + } + if ("anyOf" in schemaObject) { + return schemaObject.anyOf.some((x2) => schemaObjectTypeCheck(x2, value, schema)); + } + if ("enum" in schemaObject && schemaObject.enum) { + return schemaObject.enum.some((x2) => x2 === value); + } + const format3 = schemaObject.format ? schema.objects.formats[schemaObject.format] : schema.objects.formats[schemaObject.type]; + const re = new RegExp(`^${format3.pattern}$`); + return re.test(value); +} +function sidecarDefinedTypeCheck(rule, value, schema) { + if ("Levels" in rule && rule["Levels"] && typeof rule["Levels"] == "object") { + return value == "n/a" || value in rule["Levels"]; + } else if ("Units" in rule) { + return schemaObjectTypeCheck({ "type": "number" }, value, schema); + } else { + return true; + } +} +function evalColumns(rule, context, schema, schemaPath) { + if (!rule.columns || context.extension !== ".tsv") + return; + const headers = [...Object.keys(context.columns)]; + for (const [ruleHeader, requirement] of Object.entries(rule.columns)) { + const columnObject = schema.objects.columns[ruleHeader]; + if (!("name" in columnObject) || !columnObject["name"]) { + return; + } + const name = columnObject.name; + let typeCheck = (value) => schemaObjectTypeCheck( + columnObject, + value, + schema + ); + const error_code = requirement != "required" ? "TSV_VALUE_INCORRECT_TYPE_NONREQUIRED" : "TSV_VALUE_INCORRECT_TYPE"; + let errorObject = columnObject; + if (!headers.includes(name) && requirement === "required") { + context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ + { + ...context.file, + evidence: `Column with header ${name} listed as required. ${schemaPath}` + } + ]); + } + if ("definition" in columnObject) { + typeCheck = (value) => ( + // @ts-expect-error + sidecarDefinedTypeCheck(columnObject.definition, value, schema) + ); + } + const inspect2 = typeof Deno !== "undefined" ? Deno.inspect : (x2) => JSON.stringify(x2, null, 2); + if (name in context.sidecar && context.sidecar[name] && typeof context.sidecar[name] === "object") { + if ("definition" in columnObject) { + typeCheck = (value) => sidecarDefinedTypeCheck(context.sidecar[name], value, schema); + errorObject = context.sidecar[name]; + } else { + context.issues.addNonSchemaIssue("TSV_COLUMN_TYPE_REDEFINED", [{ + ...context.file, + evidence: `'${name}' redefined with sidecar ${inspect2(context.sidecar[name])}` + }]); + } + } + if (!headers.includes(name)) { + continue; + } + for (const value of context.columns[name]) { + if (!typeCheck(value)) { + context.issues.addNonSchemaIssue(error_code, [ + { + ...context.file, + evidence: `'${value}' ${inspect2(columnObject)}` + } + ]); + break; + } + } + } +} +function evalInitialColumns(rule, context, schema, schemaPath) { + if (!rule?.columns || !rule?.initial_columns || context.extension !== ".tsv") { + return; + } + const headers = [...Object.keys(context.columns)]; + rule.initial_columns.map((ruleHeader, ruleIndex) => { + const ruleHeaderName = schema.objects.columns[ruleHeader].name; + const contextIndex = headers.findIndex((x2) => x2 === ruleHeaderName); + if (contextIndex === -1) { + const evidence = `Column with header ${ruleHeaderName} not found, indexed from 0 it should appear in column ${ruleIndex}. ${schemaPath}`; + context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ + { ...context.file, evidence } + ]); + } else if (ruleIndex !== contextIndex) { + const evidence = `Column with header ${ruleHeaderName} found at index ${contextIndex} while rule specifies, indexed from 0, it should be in column ${ruleIndex}. ${schemaPath}`; + context.issues.addNonSchemaIssue("TSV_COLUMN_ORDER_INCORRECT", [ + { ...context.file, evidence } + ]); + } + }); +} +function evalAdditionalColumns(rule, context, schema, schemaPath) { + if (context.extension !== ".tsv") + return; + const headers = Object.keys(context?.columns); + if (!(rule.additional_columns === "allowed") && rule.columns) { + const ruleHeadersNames = Object.keys(rule.columns).map( + // @ts-expect-error + (x2) => schema.objects.columns[x2].name + ); + let extraCols = headers.filter( + (header) => !ruleHeadersNames.includes(header) + ); + if (rule.additional_columns === "allowed_if_defined") { + extraCols = extraCols.filter((header) => !(header in context.sidecar)); + } + if (extraCols.length) { + context.issues.addNonSchemaIssue("TSV_ADDITIONAL_COLUMNS_NOT_ALLOWED", [ + { ...context.file, evidence: `Disallowed columns found ${extraCols}` } + ]); + } + } +} +function evalIndexColumns(rule, context, schema, schemaPath) { + if (!rule?.columns || !rule?.index_columns || !rule?.index_columns.length || context.extension !== ".tsv") { + return; + } + const headers = Object.keys(context?.columns); + const uniqueIndexValues = /* @__PURE__ */ new Set(); + const index_columns = rule.index_columns.map((col) => { + return schema.objects.columns[col].name; + }); + const missing = index_columns.filter((col) => !headers.includes(col)); + if (missing.length) { + context.issues.addNonSchemaIssue("TSV_COLUMN_MISSING", [ + { + ...context.file, + evidence: `Columns cited as index columns not in file: ${missing}. ${schemaPath}` + } + ]); + return; + } + const rowCount = context.columns[index_columns[0]]?.length || 0; + for (let i = 0; i < rowCount; i++) { + let indexValue = ""; + index_columns.map((col) => { + indexValue = indexValue.concat( + context.columns[col]?.[i] || "" + ); + }); + if (uniqueIndexValues.has(indexValue)) { + context.issues.addNonSchemaIssue("TSV_INDEX_VALUE_NOT_UNIQUE", [ + { ...context.file, evidence: `Row: ${i + 2}, Value: ${indexValue}` } + ]); + } else { + uniqueIndexValues.add(indexValue); + } + } +} +function evalJsonCheck(rule, context, schema, schemaPath) { + const sidecarRule = schemaPath.match(/rules\.sidecar/); + if (context.extension === ".json" && sidecarRule) + return; + const json = sidecarRule ? context.sidecar : context.json; + for (const [key, requirement] of Object.entries(rule.fields)) { + const severity = getFieldSeverity(requirement, context); + const metadataDef = schema.objects.metadata[key]; + const keyName = metadataDef.name; + if (severity && severity !== "ignore" && !(keyName in json)) { + if (requirement.issue?.code && requirement.issue?.message) { + context.issues.add({ + key: requirement.issue.code, + reason: requirement.issue.message, + severity, + files: [{ ...context.file }] + }); + } else if (severity === "error") { + context.issues.addNonSchemaIssue( + sidecarRule ? "SIDECAR_KEY_REQUIRED" : "JSON_KEY_REQUIRED", + [ + { + ...context.file, + evidence: `missing ${keyName} as per ${schemaPath}` + } + ] + ); + } else if (severity === "warning") { + context.issues.addNonSchemaIssue( + sidecarRule ? "SIDECAR_KEY_RECOMMENDED" : "JSON_KEY_RECOMMENDED", + [ + { + ...context.file, + evidence: `missing ${keyName} as per ${schemaPath}` + } + ] + ); + } + } + if (!(keyName in context.sidecar)) { + return; + } + let originFileKey = ""; + if (keyName in context.sidecarKeyOrigin) { + originFileKey = `${context.sidecarKeyOrigin[keyName]}:${keyName}`; + } else { + logger.warning( + `sidecarKeyOrigin map failed to initialize for ${context.file.path} on key ${keyName}. Validation caching not active for this key.` + ); + } + if (context.dataset.sidecarKeyValidated.has(originFileKey)) { + return; + } + const validate2 = compile(metadataDef); + const result = validate2(context.sidecar[keyName]); + if (result === false) { + const evidenceBase = `Failed for this file.key: ${originFileKey} Schema path: ${schemaPath}`; + if (!validate2.errors) { + context.issues.addNonSchemaIssue("JSON_SCHEMA_VALIDATION_ERROR", [ + { + ...context.file, + evidence: evidenceBase + } + ]); + } else { + for (let error2 of validate2.errors) { + const message = "message" in error2 ? `message: ${error2["message"]}` : ""; + context.issues.addNonSchemaIssue("JSON_SCHEMA_VALIDATION_ERROR", [ + { + ...context.file, + evidence: `${evidenceBase} ${message}` + } + ]); + } + } + } + if (originFileKey) { + context.dataset.sidecarKeyValidated.add(originFileKey); + } + } +} +function getFieldSeverity(requirement, context) { + const levelToSeverity = { + recommended: "warning", + required: "error", + optional: "ignore", + prohibited: "ignore" + }; + let severity = "ignore"; + if (typeof requirement === "string" && requirement in levelToSeverity) { + severity = levelToSeverity[requirement]; + } else if (typeof requirement === "object" && requirement.level) { + severity = levelToSeverity[requirement.level]; + const addendumRegex = /(required|recommended) if \`(\w+)\` is \`(\w+)\`/; + if (requirement.level_addendum) { + const match = addendumRegex.exec(requirement.level_addendum); + if (match && match.length === 4) { + const [_3, addendumLevel, key, value] = match; + if (key in context.sidecar && context.sidecar[key] === value) { + severity = levelToSeverity[addendumLevel]; + } + } + } + } + return severity; +} + +// src/types/columns.ts +var ColumnsMap = class extends Map { + constructor() { + super(); + const columns = /* @__PURE__ */ new Map(); + return new Proxy(columns, columnMapAccessorProxy); + } +}; +var columnMapAccessorProxy = { + get: function(target, prop, receiver) { + if (prop === "size") + return target.get("size"); + const value = Reflect.get(target, prop, receiver); + if (typeof value === "function") + return value.bind(target); + if (prop === Symbol.iterator) + return target[Symbol.iterator].bind(target); + if (value === void 0) + return target.get(prop); + return value; + }, + set: function(target, prop, value) { + target.set(prop, value); + return true; + }, + has: function(target, prop) { + return Reflect.has(target, prop); + }, + ownKeys: function(target) { + return Array.from(target.keys()); + }, + getOwnPropertyDescriptor: function(target, prop) { + return { enumerable: true, configurable: true, value: target.get(prop) }; + } +}; + +// src/schema/entities.ts +function _readEntities(filename) { + let suffix = ""; + let extension = ""; + const entities = {}; + const parts = filename.split("_"); + for (let i = 0; i < parts.length - 1; i++) { + const [entity, label] = parts[i].split("-"); + entities[entity] = label || "NOENTITY"; + } + const lastPart = parts[parts.length - 1]; + const extStart = lastPart.indexOf("."); + if (extStart === -1) { + suffix = lastPart; + } else { + suffix = lastPart.slice(0, extStart); + extension = lastPart.slice(extStart); + } + return { suffix, extension, entities }; +} +var readEntities = memoize(_readEntities); + +// src/files/inheritance.ts +function* walkBack(source, inherit = true, targetExtensions = [".json"], targetSuffix) { + const sourceParts = readEntities(source.name); + targetSuffix = targetSuffix || sourceParts.suffix; + let fileTree = source.parent; + while (fileTree) { + const candidates = fileTree.files.filter((file) => { + const { suffix, extension, entities } = readEntities(file.name); + return targetExtensions.includes(extension) && suffix === targetSuffix && Object.keys(entities).every((entity) => entities[entity] === sourceParts.entities[entity]); + }); + if (candidates.length > 1) { + const exactMatch = candidates.find((file) => { + const { suffix, extension, entities } = readEntities(file.name); + return Object.keys(sourceParts.entities).every( + (entity) => entities[entity] === sourceParts.entities[entity] + ); + }); + if (exactMatch) { + yield exactMatch; + } else { + console.warn(` +Multiple candidates detected for '${source.path}' + +${candidates.map((file) => `* ${file.path}`).join("\n")} +`); + } + } else if (candidates.length === 1) { + yield candidates[0]; + } + if (!inherit) + break; + fileTree = fileTree.parent; + } +} + +// src/files/tsv.ts +var normalizeEOL = (str) => str.replace(/\r\n/g, "\n").replace(/\r/g, "\n"); +var isContentfulRow = (row) => !!(row && !/^\s*$/.test(row)); +async function _loadTSV(file) { + return await file.text().then(parseTSV); +} +var loadTSV = filememoizeAsync(_loadTSV); +function parseTSV(contents) { + const columns = new ColumnsMap(); + const rows = normalizeEOL(contents).split("\n").filter(isContentfulRow).map((str) => str.split(" ")); + const headers = rows.length ? rows[0] : []; + if (rows.some((row) => row.length !== headers.length)) { + throw { key: "TSV_EQUAL_ROWS" }; + } + headers.map((x2) => { + columns[x2] = []; + }); + if (headers.length !== Object.keys(columns).length) { + throw { key: "TSV_COLUMN_HEADER_DUPLICATE", evidence: headers.join(", ") }; + } + for (let i = 1; i < rows.length; i++) { + for (let j3 = 0; j3 < headers.length; j3++) { + const col = columns[headers[j3]]; + col.push(rows[i][j3]); + } + } + return columns; +} + +// https://esm.sh/v135/fflate@0.8.2/denonext/fflate.mjs +var fflate_exports = {}; +__export(fflate_exports, { + AsyncCompress: () => it, + AsyncDecompress: () => ft, + AsyncDeflate: () => Xn, + AsyncGunzip: () => bn, + AsyncGzip: () => it, + AsyncInflate: () => Hn2, + AsyncUnzipInflate: () => xt, + AsyncUnzlib: () => rt, + AsyncZipDeflate: () => pt, + AsyncZlib: () => ot2, + Compress: () => gn, + DecodeUTF8: () => lt, + Decompress: () => xn, + Deflate: () => b, + EncodeUTF8: () => vt, + FlateErrorCode: () => et2, + Gunzip: () => dr, + Gzip: () => gn, + Inflate: () => K, + Unzip: () => zt, + UnzipInflate: () => mt, + UnzipPassThrough: () => tt2, + Unzlib: () => _r, + Zip: () => gt, + ZipDeflate: () => ct, + ZipPassThrough: () => kr2, + Zlib: () => wn, + compress: () => at, + compressSync: () => yn, + decompress: () => ht, + decompressSync: () => ut, + deflate: () => dn, + deflateSync: () => jr, + gunzip: () => _n, + gunzipSync: () => br2, + gzip: () => at, + gzipSync: () => yn, + inflate: () => Nn, + inflateSync: () => Gr, + strFromU8: () => Wn2, + strToU8: () => fr, + unzip: () => At, + unzipSync: () => Mt, + unzlib: () => nt2, + unzlibSync: () => rn, + zip: () => yt, + zipSync: () => wt, + zlib: () => st, + zlibSync: () => mn +}); +var cn = {}; +var Qn2 = function(n2, r, t, e, i) { + var a3 = new Worker(cn[r] || (cn[r] = URL.createObjectURL(new Blob([n2 + ';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'], { type: "text/javascript" })))); + return a3.onmessage = function(o) { + var s = o.data, l2 = s.$e$; + if (l2) { + var f = new Error(l2[0]); + f.code = l2[1], f.stack = l2[2], i(f, null); + } else + i(null, s); + }, a3.postMessage(t, e), a3; +}; +var S2 = Uint8Array; +var W = Uint16Array; +var Zr2 = Int32Array; +var mr = new S2([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0]); +var xr = new S2([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 0, 0]); +var Cr = new S2([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]); +var An = function(n2, r) { + for (var t = new W(31), e = 0; e < 31; ++e) + t[e] = r += 1 << n2[e - 1]; + for (var i = new Zr2(t[30]), e = 1; e < 30; ++e) + for (var a3 = t[e]; a3 < t[e + 1]; ++a3) + i[a3] = a3 - t[e] << 5 | e; + return { b: t, r: i }; +}; +var Mn = An(mr, 2); +var tn = Mn.b; +var Nr = Mn.r; +tn[28] = 258, Nr[258] = 28; +var Sn = An(xr, 0); +var Un = Sn.b; +var Qr2 = Sn.r; +var Ir = new W(32768); +for (I2 = 0; I2 < 32768; ++I2) + tr2 = (I2 & 43690) >> 1 | (I2 & 21845) << 1, tr2 = (tr2 & 52428) >> 2 | (tr2 & 13107) << 2, tr2 = (tr2 & 61680) >> 4 | (tr2 & 3855) << 4, Ir[I2] = ((tr2 & 65280) >> 8 | (tr2 & 255) << 8) >> 1; +var tr2; +var I2; +var V = function(n2, r, t) { + for (var e = n2.length, i = 0, a3 = new W(r); i < e; ++i) + n2[i] && ++a3[n2[i] - 1]; + var o = new W(r); + for (i = 1; i < r; ++i) + o[i] = o[i - 1] + a3[i - 1] << 1; + var s; + if (t) { + s = new W(1 << r); + var l2 = 15 - r; + for (i = 0; i < e; ++i) + if (n2[i]) + for (var f = i << 4 | n2[i], h2 = r - n2[i], u2 = o[n2[i] - 1]++ << h2, v4 = u2 | (1 << h2) - 1; u2 <= v4; ++u2) + s[Ir[u2] >> l2] = f; + } else + for (s = new W(e), i = 0; i < e; ++i) + n2[i] && (s[i] = Ir[o[n2[i] - 1]++] >> 15 - n2[i]); + return s; +}; +var er = new S2(288); +for (I2 = 0; I2 < 144; ++I2) + er[I2] = 8; +var I2; +for (I2 = 144; I2 < 256; ++I2) + er[I2] = 9; +var I2; +for (I2 = 256; I2 < 280; ++I2) + er[I2] = 7; +var I2; +for (I2 = 280; I2 < 288; ++I2) + er[I2] = 8; +var I2; +var yr = new S2(32); +for (I2 = 0; I2 < 32; ++I2) + yr[I2] = 5; +var I2; +var Fn = V(er, 9, 0); +var Dn = V(er, 9, 1); +var Tn = V(yr, 5, 0); +var Cn = V(yr, 5, 1); +var Pr = function(n2) { + for (var r = n2[0], t = 1; t < n2.length; ++t) + n2[t] > r && (r = n2[t]); + return r; +}; +var Q3 = function(n2, r, t) { + var e = r / 8 | 0; + return (n2[e] | n2[e + 1] << 8) >> (r & 7) & t; +}; +var $r = function(n2, r) { + var t = r / 8 | 0; + return (n2[t] | n2[t + 1] << 8 | n2[t + 2] << 16) >> (r & 7); +}; +var zr = function(n2) { + return (n2 + 7) / 8 | 0; +}; +var X = function(n2, r, t) { + return (r == null || r < 0) && (r = 0), (t == null || t > n2.length) && (t = n2.length), new S2(n2.subarray(r, t)); +}; +var et2 = { UnexpectedEOF: 0, InvalidBlockType: 1, InvalidLengthLiteral: 2, InvalidDistance: 3, StreamFinished: 4, NoStreamHandler: 5, InvalidHeader: 6, NoCallback: 7, InvalidUTF8: 8, ExtraFieldTooLong: 9, InvalidDate: 10, FilenameTooLong: 11, StreamFinishing: 12, InvalidZipData: 13, UnknownCompressionMethod: 14 }; +var In2 = ["unexpected EOF", "invalid block type", "invalid length/literal", "invalid distance", "stream finished", "no stream handler", , "no callback", "invalid UTF-8 data", "extra field too long", "date not in range 1980-2099", "filename too long", "stream finishing", "invalid zip data"]; +var c2 = function(n2, r, t) { + var e = new Error(r || In2[n2]); + if (e.code = n2, Error.captureStackTrace && Error.captureStackTrace(e, c2), !t) + throw e; + return e; +}; +var Br2 = function(n2, r, t, e) { + var i = n2.length, a3 = e ? e.length : 0; + if (!i || r.f && !r.l) + return t || new S2(0); + var o = !t, s = o || r.i != 2, l2 = r.i; + o && (t = new S2(i * 3)); + var f = function(Dr2) { + var Tr2 = t.length; + if (Dr2 > Tr2) { + var cr2 = new S2(Math.max(Tr2 * 2, Dr2)); + cr2.set(t), t = cr2; + } + }, h2 = r.f || 0, u2 = r.p || 0, v4 = r.b || 0, M3 = r.l, m3 = r.d, z4 = r.m, p3 = r.n, x2 = i * 8; + do { + if (!M3) { + h2 = Q3(n2, u2, 1); + var U2 = Q3(n2, u2 + 1, 3); + if (u2 += 3, U2) + if (U2 == 1) + M3 = Dn, m3 = Cn, z4 = 9, p3 = 5; + else if (U2 == 2) { + var B3 = Q3(n2, u2, 31) + 257, D = Q3(n2, u2 + 10, 15) + 4, w2 = B3 + Q3(n2, u2 + 5, 31) + 1; + u2 += 14; + for (var g2 = new S2(w2), F2 = new S2(19), T2 = 0; T2 < D; ++T2) + F2[Cr[T2]] = Q3(n2, u2 + T2 * 3, 7); + u2 += D * 3; + for (var O4 = Pr(F2), H2 = (1 << O4) - 1, G2 = V(F2, O4, 1), T2 = 0; T2 < w2; ) { + var L3 = G2[Q3(n2, u2, H2)]; + u2 += L3 & 15; + var A4 = L3 >> 4; + if (A4 < 16) + g2[T2++] = A4; + else { + var q4 = 0, E4 = 0; + for (A4 == 16 ? (E4 = 3 + Q3(n2, u2, 3), u2 += 2, q4 = g2[T2 - 1]) : A4 == 17 ? (E4 = 3 + Q3(n2, u2, 7), u2 += 3) : A4 == 18 && (E4 = 11 + Q3(n2, u2, 127), u2 += 7); E4--; ) + g2[T2++] = q4; + } + } + var R2 = g2.subarray(0, B3), N2 = g2.subarray(B3); + z4 = Pr(R2), p3 = Pr(N2), M3 = V(R2, z4, 1), m3 = V(N2, p3, 1); + } else + c2(1); + else { + var A4 = zr(u2) + 4, y4 = n2[A4 - 4] | n2[A4 - 3] << 8, Z = A4 + y4; + if (Z > i) { + l2 && c2(0); + break; + } + s && f(v4 + y4), t.set(n2.subarray(A4, Z), v4), r.b = v4 += y4, r.p = u2 = Z * 8, r.f = h2; + continue; + } + if (u2 > x2) { + l2 && c2(0); + break; + } + } + s && f(v4 + 131072); + for (var sr2 = (1 << z4) - 1, Y2 = (1 << p3) - 1, nr3 = u2; ; nr3 = u2) { + var q4 = M3[$r(n2, u2) & sr2], j3 = q4 >> 4; + if (u2 += q4 & 15, u2 > x2) { + l2 && c2(0); + break; + } + if (q4 || c2(2), j3 < 256) + t[v4++] = j3; + else if (j3 == 256) { + nr3 = u2, M3 = null; + break; + } else { + var J4 = j3 - 254; + if (j3 > 264) { + var T2 = j3 - 257, P2 = mr[T2]; + J4 = Q3(n2, u2, (1 << P2) - 1) + tn[T2], u2 += P2; + } + var _3 = m3[$r(n2, u2) & Y2], lr2 = _3 >> 4; + _3 || c2(3), u2 += _3 & 15; + var N2 = Un[lr2]; + if (lr2 > 3) { + var P2 = xr[lr2]; + N2 += $r(n2, u2) & (1 << P2) - 1, u2 += P2; + } + if (u2 > x2) { + l2 && c2(0); + break; + } + s && f(v4 + 131072); + var vr2 = v4 + J4; + if (v4 < N2) { + var Or2 = a3 - N2, qr2 = Math.min(N2, vr2); + for (Or2 + v4 < 0 && c2(3); v4 < qr2; ++v4) + t[v4] = e[Or2 + v4]; + } + for (; v4 < vr2; ++v4) + t[v4] = t[v4 - N2]; + } + } + r.l = M3, r.p = nr3, r.b = v4, r.f = h2, M3 && (h2 = 1, r.m = z4, r.d = m3, r.n = p3); + } while (!h2); + return v4 != t.length && o ? X(t, 0, v4) : t.subarray(0, v4); +}; +var rr = function(n2, r, t) { + t <<= r & 7; + var e = r / 8 | 0; + n2[e] |= t, n2[e + 1] |= t >> 8; +}; +var pr = function(n2, r, t) { + t <<= r & 7; + var e = r / 8 | 0; + n2[e] |= t, n2[e + 1] |= t >> 8, n2[e + 2] |= t >> 16; +}; +var Hr = function(n2, r) { + for (var t = [], e = 0; e < n2.length; ++e) + n2[e] && t.push({ s: e, f: n2[e] }); + var i = t.length, a3 = t.slice(); + if (!i) + return { t: ir2, l: 0 }; + if (i == 1) { + var o = new S2(t[0].s + 1); + return o[t[0].s] = 1, { t: o, l: 1 }; + } + t.sort(function(Z, B3) { + return Z.f - B3.f; + }), t.push({ s: -1, f: 25001 }); + var s = t[0], l2 = t[1], f = 0, h2 = 1, u2 = 2; + for (t[0] = { s: -1, f: s.f + l2.f, l: s, r: l2 }; h2 != i - 1; ) + s = t[t[f].f < t[u2].f ? f++ : u2++], l2 = t[f != h2 && t[f].f < t[u2].f ? f++ : u2++], t[h2++] = { s: -1, f: s.f + l2.f, l: s, r: l2 }; + for (var v4 = a3[0].s, e = 1; e < i; ++e) + a3[e].s > v4 && (v4 = a3[e].s); + var M3 = new W(v4 + 1), m3 = Rr(t[h2 - 1], M3, 0); + if (m3 > r) { + var e = 0, z4 = 0, p3 = m3 - r, x2 = 1 << p3; + for (a3.sort(function(B3, D) { + return M3[D.s] - M3[B3.s] || B3.f - D.f; + }); e < i; ++e) { + var U2 = a3[e].s; + if (M3[U2] > r) + z4 += x2 - (1 << m3 - M3[U2]), M3[U2] = r; + else + break; + } + for (z4 >>= p3; z4 > 0; ) { + var A4 = a3[e].s; + M3[A4] < r ? z4 -= 1 << r - M3[A4]++ - 1 : ++e; + } + for (; e >= 0 && z4; --e) { + var y4 = a3[e].s; + M3[y4] == r && (--M3[y4], ++z4); + } + m3 = r; + } + return { t: new S2(M3), l: m3 }; +}; +var Rr = function(n2, r, t) { + return n2.s == -1 ? Math.max(Rr(n2.l, r, t + 1), Rr(n2.r, r, t + 1)) : r[n2.s] = t; +}; +var Vr = function(n2) { + for (var r = n2.length; r && !n2[--r]; ) + ; + for (var t = new W(++r), e = 0, i = n2[0], a3 = 1, o = function(l2) { + t[e++] = l2; + }, s = 1; s <= r; ++s) + if (n2[s] == i && s != r) + ++a3; + else { + if (!i && a3 > 2) { + for (; a3 > 138; a3 -= 138) + o(32754); + a3 > 2 && (o(a3 > 10 ? a3 - 11 << 5 | 28690 : a3 - 3 << 5 | 12305), a3 = 0); + } else if (a3 > 3) { + for (o(i), --a3; a3 > 6; a3 -= 6) + o(8304); + a3 > 2 && (o(a3 - 3 << 5 | 8208), a3 = 0); + } + for (; a3--; ) + o(i); + a3 = 1, i = n2[s]; + } + return { c: t.subarray(0, e), n: r }; +}; +var gr = function(n2, r) { + for (var t = 0, e = 0; e < r.length; ++e) + t += n2[e] * r[e]; + return t; +}; +var en = function(n2, r, t) { + var e = t.length, i = zr(r + 2); + n2[i] = e & 255, n2[i + 1] = e >> 8, n2[i + 2] = n2[i] ^ 255, n2[i + 3] = n2[i + 1] ^ 255; + for (var a3 = 0; a3 < e; ++a3) + n2[i + a3 + 4] = t[a3]; + return (i + 4 + e) * 8; +}; +var Xr = function(n2, r, t, e, i, a3, o, s, l2, f, h2) { + rr(r, h2++, t), ++i[256]; + for (var u2 = Hr(i, 15), v4 = u2.t, M3 = u2.l, m3 = Hr(a3, 15), z4 = m3.t, p3 = m3.l, x2 = Vr(v4), U2 = x2.c, A4 = x2.n, y4 = Vr(z4), Z = y4.c, B3 = y4.n, D = new W(19), w2 = 0; w2 < U2.length; ++w2) + ++D[U2[w2] & 31]; + for (var w2 = 0; w2 < Z.length; ++w2) + ++D[Z[w2] & 31]; + for (var g2 = Hr(D, 7), F2 = g2.t, T2 = g2.l, O4 = 19; O4 > 4 && !F2[Cr[O4 - 1]]; --O4) + ; + var H2 = f + 5 << 3, G2 = gr(i, er) + gr(a3, yr) + o, L3 = gr(i, v4) + gr(a3, z4) + o + 14 + 3 * O4 + gr(D, F2) + 2 * D[16] + 3 * D[17] + 7 * D[18]; + if (l2 >= 0 && H2 <= G2 && H2 <= L3) + return en(r, h2, n2.subarray(l2, l2 + f)); + var q4, E4, R2, N2; + if (rr(r, h2, 1 + (L3 < G2)), h2 += 2, L3 < G2) { + q4 = V(v4, M3, 0), E4 = v4, R2 = V(z4, p3, 0), N2 = z4; + var sr2 = V(F2, T2, 0); + rr(r, h2, A4 - 257), rr(r, h2 + 5, B3 - 1), rr(r, h2 + 10, O4 - 4), h2 += 14; + for (var w2 = 0; w2 < O4; ++w2) + rr(r, h2 + 3 * w2, F2[Cr[w2]]); + h2 += 3 * O4; + for (var Y2 = [U2, Z], nr3 = 0; nr3 < 2; ++nr3) + for (var j3 = Y2[nr3], w2 = 0; w2 < j3.length; ++w2) { + var J4 = j3[w2] & 31; + rr(r, h2, sr2[J4]), h2 += F2[J4], J4 > 15 && (rr(r, h2, j3[w2] >> 5 & 127), h2 += j3[w2] >> 12); + } + } else + q4 = Fn, E4 = er, R2 = Tn, N2 = yr; + for (var w2 = 0; w2 < s; ++w2) { + var P2 = e[w2]; + if (P2 > 255) { + var J4 = P2 >> 18 & 31; + pr(r, h2, q4[J4 + 257]), h2 += E4[J4 + 257], J4 > 7 && (rr(r, h2, P2 >> 23 & 31), h2 += mr[J4]); + var _3 = P2 & 31; + pr(r, h2, R2[_3]), h2 += N2[_3], _3 > 3 && (pr(r, h2, P2 >> 5 & 8191), h2 += xr[_3]); + } else + pr(r, h2, q4[P2]), h2 += E4[P2]; + } + return pr(r, h2, q4[256]), h2 + E4[256]; +}; +var Zn2 = new Zr2([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]); +var ir2 = new S2(0); +var Bn2 = function(n2, r, t, e, i, a3) { + var o = a3.z || n2.length, s = new S2(e + o + 5 * (1 + Math.ceil(o / 7e3)) + i), l2 = s.subarray(e, s.length - i), f = a3.l, h2 = (a3.r || 0) & 7; + if (r) { + h2 && (l2[0] = a3.r >> 3); + for (var u2 = Zn2[r - 1], v4 = u2 >> 13, M3 = u2 & 8191, m3 = (1 << t) - 1, z4 = a3.p || new W(32768), p3 = a3.h || new W(m3 + 1), x2 = Math.ceil(t / 3), U2 = 2 * x2, A4 = function(Jr3) { + return (n2[Jr3] ^ n2[Jr3 + 1] << x2 ^ n2[Jr3 + 2] << U2) & m3; + }, y4 = new Zr2(25e3), Z = new W(288), B3 = new W(32), D = 0, w2 = 0, g2 = a3.i || 0, F2 = 0, T2 = a3.w || 0, O4 = 0; g2 + 2 < o; ++g2) { + var H2 = A4(g2), G2 = g2 & 32767, L3 = p3[H2]; + if (z4[G2] = L3, p3[H2] = G2, T2 <= g2) { + var q4 = o - g2; + if ((D > 7e3 || F2 > 24576) && (q4 > 423 || !f)) { + h2 = Xr(n2, l2, 0, y4, Z, B3, w2, F2, O4, g2 - O4, h2), F2 = D = w2 = 0, O4 = g2; + for (var E4 = 0; E4 < 286; ++E4) + Z[E4] = 0; + for (var E4 = 0; E4 < 30; ++E4) + B3[E4] = 0; + } + var R2 = 2, N2 = 0, sr2 = M3, Y2 = G2 - L3 & 32767; + if (q4 > 2 && H2 == A4(g2 - Y2)) + for (var nr3 = Math.min(v4, q4) - 1, j3 = Math.min(32767, g2), J4 = Math.min(258, q4); Y2 <= j3 && --sr2 && G2 != L3; ) { + if (n2[g2 + R2] == n2[g2 + R2 - Y2]) { + for (var P2 = 0; P2 < J4 && n2[g2 + P2] == n2[g2 + P2 - Y2]; ++P2) + ; + if (P2 > R2) { + if (R2 = P2, N2 = Y2, P2 > nr3) + break; + for (var _3 = Math.min(Y2, P2 - 2), lr2 = 0, E4 = 0; E4 < _3; ++E4) { + var vr2 = g2 - Y2 + E4 & 32767, Or2 = z4[vr2], qr2 = vr2 - Or2 & 32767; + qr2 > lr2 && (lr2 = qr2, L3 = vr2); + } + } + } + G2 = L3, L3 = z4[G2], Y2 += G2 - L3 & 32767; + } + if (N2) { + y4[F2++] = 268435456 | Nr[R2] << 18 | Qr2[N2]; + var Dr2 = Nr[R2] & 31, Tr2 = Qr2[N2] & 31; + w2 += mr[Dr2] + xr[Tr2], ++Z[257 + Dr2], ++B3[Tr2], T2 = g2 + R2, ++D; + } else + y4[F2++] = n2[g2], ++Z[n2[g2]]; + } + } + for (g2 = Math.max(g2, T2); g2 < o; ++g2) + y4[F2++] = n2[g2], ++Z[n2[g2]]; + h2 = Xr(n2, l2, f, y4, Z, B3, w2, F2, O4, g2 - O4, h2), f || (a3.r = h2 & 7 | l2[h2 / 8 | 0] << 3, h2 -= 7, a3.h = p3, a3.p = z4, a3.i = g2, a3.w = T2); + } else { + for (var g2 = a3.w || 0; g2 < o + f; g2 += 65535) { + var cr2 = g2 + 65535; + cr2 >= o && (l2[h2 / 8 | 0] = f, cr2 = o), h2 = en(l2, h2 + 1, n2.subarray(g2, cr2)); + } + a3.i = o; + } + return X(s, 0, e + zr(h2) + i); +}; +var En = function() { + for (var n2 = new Int32Array(256), r = 0; r < 256; ++r) { + for (var t = r, e = 9; --e; ) + t = (t & 1 && -306674912) ^ t >>> 1; + n2[r] = t; + } + return n2; +}(); +var Ar = function() { + var n2 = -1; + return { p: function(r) { + for (var t = n2, e = 0; e < r.length; ++e) + t = En[t & 255 ^ r[e]] ^ t >>> 8; + n2 = t; + }, d: function() { + return ~n2; + } }; +}; +var Yr = function() { + var n2 = 1, r = 0; + return { p: function(t) { + for (var e = n2, i = r, a3 = t.length | 0, o = 0; o != a3; ) { + for (var s = Math.min(o + 2655, a3); o < s; ++o) + i += e += t[o]; + e = (e & 65535) + 15 * (e >> 16), i = (i & 65535) + 15 * (i >> 16); + } + n2 = e, r = i; + }, d: function() { + return n2 %= 65521, r %= 65521, (n2 & 255) << 24 | (n2 & 65280) << 8 | (r & 255) << 8 | r >> 8; + } }; +}; +var hr = function(n2, r, t, e, i) { + if (!i && (i = { l: 1 }, r.dictionary)) { + var a3 = r.dictionary.subarray(-32768), o = new S2(a3.length + n2.length); + o.set(a3), o.set(n2, a3.length), n2 = o, i.w = a3.length; + } + return Bn2(n2, r.level == null ? 6 : r.level, r.mem == null ? i.l ? Math.ceil(Math.max(8, Math.min(13, Math.log(n2.length))) * 1.5) : 20 : 12 + r.mem, t, e, i); +}; +var Er = function(n2, r) { + var t = {}; + for (var e in n2) + t[e] = n2[e]; + for (var e in r) + t[e] = r[e]; + return t; +}; +var pn = function(n2, r, t) { + for (var e = n2(), i = n2.toString(), a3 = i.slice(i.indexOf("[") + 1, i.lastIndexOf("]")).replace(/\s+/g, "").split(","), o = 0; o < e.length; ++o) { + var s = e[o], l2 = a3[o]; + if (typeof s == "function") { + r += ";" + l2 + "="; + var f = s.toString(); + if (s.prototype) + if (f.indexOf("[native code]") != -1) { + var h2 = f.indexOf(" ", 8) + 1; + r += f.slice(h2, f.indexOf("(", h2)); + } else { + r += f; + for (var u2 in s.prototype) + r += ";" + l2 + ".prototype." + u2 + "=" + s.prototype[u2].toString(); + } + else + r += f; + } else + t[l2] = s; + } + return r; +}; +var Lr = []; +var Vn = function(n2) { + var r = []; + for (var t in n2) + n2[t].buffer && r.push((n2[t] = new n2[t].constructor(n2[t])).buffer); + return r; +}; +var Gn = function(n2, r, t, e) { + if (!Lr[t]) { + for (var i = "", a3 = {}, o = n2.length - 1, s = 0; s < o; ++s) + i = pn(n2[s], i, a3); + Lr[t] = { c: pn(n2[o], i, a3), e: a3 }; + } + var l2 = Er({}, Lr[t].e); + return Qn2(Lr[t].c + ";onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage=" + r.toString() + "}", t, l2, Vn(l2), e); +}; +var Mr = function() { + return [S2, W, Zr2, mr, xr, Cr, tn, Un, Dn, Cn, Ir, In2, V, Pr, Q3, $r, zr, X, c2, Br2, Gr, or, an]; +}; +var Sr = function() { + return [S2, W, Zr2, mr, xr, Cr, Nr, Qr2, Fn, er, Tn, yr, Ir, Zn2, ir2, V, rr, pr, Hr, Rr, Vr, gr, en, Xr, zr, X, Bn2, hr, jr, or]; +}; +var On = function() { + return [on, fn2, C2, Ar, En]; +}; +var qn = function() { + return [sn, $n]; +}; +var Ln2 = function() { + return [hn, C2, Yr]; +}; +var Pn = function() { + return [un]; +}; +var or = function(n2) { + return postMessage(n2, [n2.buffer]); +}; +var an = function(n2) { + return n2 && { out: n2.size && new S2(n2.size), dictionary: n2.dictionary }; +}; +var Ur = function(n2, r, t, e, i, a3) { + var o = Gn(t, e, i, function(s, l2) { + o.terminate(), a3(s, l2); + }); + return o.postMessage([n2, r], r.consume ? [n2.buffer] : []), function() { + o.terminate(); + }; +}; +var d3 = function(n2) { + return n2.ondata = function(r, t) { + return postMessage([r, t], [r.buffer]); + }, function(r) { + r.data.length ? (n2.push(r.data[0], r.data[1]), postMessage([r.data[0].length])) : n2.flush(); + }; +}; +var Fr = function(n2, r, t, e, i, a3, o) { + var s, l2 = Gn(n2, e, i, function(f, h2) { + f ? (l2.terminate(), r.ondata.call(r, f)) : Array.isArray(h2) ? h2.length == 1 ? (r.queuedSize -= h2[0], r.ondrain && r.ondrain(h2[0])) : (h2[1] && l2.terminate(), r.ondata.call(r, f, h2[0], h2[1])) : o(h2); + }); + l2.postMessage(t), r.queuedSize = 0, r.push = function(f, h2) { + r.ondata || c2(5), s && r.ondata(c2(4, 0, 1), null, !!h2), r.queuedSize += f.length, l2.postMessage([f, s = h2], [f.buffer]); + }, r.terminate = function() { + l2.terminate(); + }, a3 && (r.flush = function() { + l2.postMessage([]); + }); +}; +var k = function(n2, r) { + return n2[r] | n2[r + 1] << 8; +}; +var $3 = function(n2, r) { + return (n2[r] | n2[r + 1] << 8 | n2[r + 2] << 16 | n2[r + 3] << 24) >>> 0; +}; +var Kr2 = function(n2, r) { + return $3(n2, r) + $3(n2, r + 4) * 4294967296; +}; +var C2 = function(n2, r, t) { + for (; t; ++r) + n2[r] = t, t >>>= 8; +}; +var on = function(n2, r) { + var t = r.filename; + if (n2[0] = 31, n2[1] = 139, n2[2] = 8, n2[8] = r.level < 2 ? 4 : r.level == 9 ? 2 : 0, n2[9] = 3, r.mtime != 0 && C2(n2, 4, Math.floor(new Date(r.mtime || Date.now()) / 1e3)), t) { + n2[3] = 8; + for (var e = 0; e <= t.length; ++e) + n2[e + 10] = t.charCodeAt(e); + } +}; +var sn = function(n2) { + (n2[0] != 31 || n2[1] != 139 || n2[2] != 8) && c2(6, "invalid gzip data"); + var r = n2[3], t = 10; + r & 4 && (t += (n2[10] | n2[11] << 8) + 2); + for (var e = (r >> 3 & 1) + (r >> 4 & 1); e > 0; e -= !n2[t++]) + ; + return t + (r & 2); +}; +var $n = function(n2) { + var r = n2.length; + return (n2[r - 4] | n2[r - 3] << 8 | n2[r - 2] << 16 | n2[r - 1] << 24) >>> 0; +}; +var fn2 = function(n2) { + return 10 + (n2.filename ? n2.filename.length + 1 : 0); +}; +var hn = function(n2, r) { + var t = r.level, e = t == 0 ? 0 : t < 6 ? 1 : t == 9 ? 3 : 2; + if (n2[0] = 120, n2[1] = e << 6 | (r.dictionary && 32), n2[1] |= 31 - (n2[0] << 8 | n2[1]) % 31, r.dictionary) { + var i = Yr(); + i.p(r.dictionary), C2(n2, 2, i.d()); + } +}; +var un = function(n2, r) { + return ((n2[0] & 15) != 8 || n2[0] >> 4 > 7 || (n2[0] << 8 | n2[1]) % 31) && c2(6, "invalid zlib data"), (n2[1] >> 5 & 1) == +!r && c2(6, "invalid zlib data: " + (n2[1] & 32 ? "need" : "unexpected") + " dictionary"), (n2[1] >> 3 & 4) + 2; +}; +function ur(n2, r) { + return typeof n2 == "function" && (r = n2, n2 = {}), this.ondata = r, n2; +} +var b = function() { + function n2(r, t) { + if (typeof r == "function" && (t = r, r = {}), this.ondata = t, this.o = r || {}, this.s = { l: 0, i: 32768, w: 32768, z: 32768 }, this.b = new S2(98304), this.o.dictionary) { + var e = this.o.dictionary.subarray(-32768); + this.b.set(e, 32768 - e.length), this.s.i = 32768 - e.length; + } + } + return n2.prototype.p = function(r, t) { + this.ondata(hr(r, this.o, 0, 0, this.s), t); + }, n2.prototype.push = function(r, t) { + this.ondata || c2(5), this.s.l && c2(4); + var e = r.length + this.s.z; + if (e > this.b.length) { + if (e > 2 * this.b.length - 32768) { + var i = new S2(e & -32768); + i.set(this.b.subarray(0, this.s.z)), this.b = i; + } + var a3 = this.b.length - this.s.z; + this.b.set(r.subarray(0, a3), this.s.z), this.s.z = this.b.length, this.p(this.b, false), this.b.set(this.b.subarray(-32768)), this.b.set(r.subarray(a3), 32768), this.s.z = r.length - a3 + 32768, this.s.i = 32766, this.s.w = 32768; + } else + this.b.set(r, this.s.z), this.s.z += r.length; + this.s.l = t & 1, (this.s.z > this.s.w + 8191 || t) && (this.p(this.b, t || false), this.s.w = this.s.i, this.s.i -= 2); + }, n2.prototype.flush = function() { + this.ondata || c2(5), this.s.l && c2(4), this.p(this.b, false), this.s.w = this.s.i, this.s.i -= 2; + }, n2; +}(); +var Xn = /* @__PURE__ */ function() { + function n2(r, t) { + Fr([Sr, function() { + return [d3, b]; + }], this, ur.call(this, r, t), function(e) { + var i = new b(e.data); + onmessage = d3(i); + }, 6, 1); + } + return n2; +}(); +function dn(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Sr], function(e) { + return or(jr(e.data[0], e.data[1])); + }, 0, t); +} +function jr(n2, r) { + return hr(n2, r || {}, 0, 0); +} +var K = function() { + function n2(r, t) { + typeof r == "function" && (t = r, r = {}), this.ondata = t; + var e = r && r.dictionary && r.dictionary.subarray(-32768); + this.s = { i: 0, b: e ? e.length : 0 }, this.o = new S2(32768), this.p = new S2(0), e && this.o.set(e); + } + return n2.prototype.e = function(r) { + if (this.ondata || c2(5), this.d && c2(4), !this.p.length) + this.p = r; + else if (r.length) { + var t = new S2(this.p.length + r.length); + t.set(this.p), t.set(r, this.p.length), this.p = t; + } + }, n2.prototype.c = function(r) { + this.s.i = +(this.d = r || false); + var t = this.s.b, e = Br2(this.p, this.s, this.o); + this.ondata(X(e, t, this.s.b), this.d), this.o = X(e, this.s.b - 32768), this.s.b = this.o.length, this.p = X(this.p, this.s.p / 8 | 0), this.s.p &= 7; + }, n2.prototype.push = function(r, t) { + this.e(r), this.c(t); + }, n2; +}(); +var Hn2 = /* @__PURE__ */ function() { + function n2(r, t) { + Fr([Mr, function() { + return [d3, K]; + }], this, ur.call(this, r, t), function(e) { + var i = new K(e.data); + onmessage = d3(i); + }, 7, 0); + } + return n2; +}(); +function Nn(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Mr], function(e) { + return or(Gr(e.data[0], an(e.data[1]))); + }, 1, t); +} +function Gr(n2, r) { + return Br2(n2, { i: 2 }, r && r.out, r && r.dictionary); +} +var gn = function() { + function n2(r, t) { + this.c = Ar(), this.l = 0, this.v = 1, b.call(this, r, t); + } + return n2.prototype.push = function(r, t) { + this.c.p(r), this.l += r.length, b.prototype.push.call(this, r, t); + }, n2.prototype.p = function(r, t) { + var e = hr(r, this.o, this.v && fn2(this.o), t && 8, this.s); + this.v && (on(e, this.o), this.v = 0), t && (C2(e, e.length - 8, this.c.d()), C2(e, e.length - 4, this.l)), this.ondata(e, t); + }, n2.prototype.flush = function() { + b.prototype.flush.call(this); + }, n2; +}(); +var it = /* @__PURE__ */ function() { + function n2(r, t) { + Fr([Sr, On, function() { + return [d3, b, gn]; + }], this, ur.call(this, r, t), function(e) { + var i = new gn(e.data); + onmessage = d3(i); + }, 8, 1); + } + return n2; +}(); +function at(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Sr, On, function() { + return [yn]; + }], function(e) { + return or(yn(e.data[0], e.data[1])); + }, 2, t); +} +function yn(n2, r) { + r || (r = {}); + var t = Ar(), e = n2.length; + t.p(n2); + var i = hr(n2, r, fn2(r), 8), a3 = i.length; + return on(i, r), C2(i, a3 - 8, t.d()), C2(i, a3 - 4, e), i; +} +var dr = function() { + function n2(r, t) { + this.v = 1, this.r = 0, K.call(this, r, t); + } + return n2.prototype.push = function(r, t) { + if (K.prototype.e.call(this, r), this.r += r.length, this.v) { + var e = this.p.subarray(this.v - 1), i = e.length > 3 ? sn(e) : 4; + if (i > e.length) { + if (!t) + return; + } else + this.v > 1 && this.onmember && this.onmember(this.r - e.length); + this.p = e.subarray(i), this.v = 0; + } + K.prototype.c.call(this, t), this.s.f && !this.s.l && !t && (this.v = zr(this.s.p) + 9, this.s = { i: 0 }, this.o = new S2(0), this.push(new S2(0), t)); + }, n2; +}(); +var bn = /* @__PURE__ */ function() { + function n2(r, t) { + var e = this; + Fr([Mr, qn, function() { + return [d3, K, dr]; + }], this, ur.call(this, r, t), function(i) { + var a3 = new dr(i.data); + a3.onmember = function(o) { + return postMessage(o); + }, onmessage = d3(a3); + }, 9, 0, function(i) { + return e.onmember && e.onmember(i); + }); + } + return n2; +}(); +function _n(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Mr, qn, function() { + return [br2]; + }], function(e) { + return or(br2(e.data[0], e.data[1])); + }, 3, t); +} +function br2(n2, r) { + var t = sn(n2); + return t + 8 > n2.length && c2(6, "invalid gzip data"), Br2(n2.subarray(t, -8), { i: 2 }, r && r.out || new S2($n(n2)), r && r.dictionary); +} +var wn = function() { + function n2(r, t) { + this.c = Yr(), this.v = 1, b.call(this, r, t); + } + return n2.prototype.push = function(r, t) { + this.c.p(r), b.prototype.push.call(this, r, t); + }, n2.prototype.p = function(r, t) { + var e = hr(r, this.o, this.v && (this.o.dictionary ? 6 : 2), t && 4, this.s); + this.v && (hn(e, this.o), this.v = 0), t && C2(e, e.length - 4, this.c.d()), this.ondata(e, t); + }, n2.prototype.flush = function() { + b.prototype.flush.call(this); + }, n2; +}(); +var ot2 = /* @__PURE__ */ function() { + function n2(r, t) { + Fr([Sr, Ln2, function() { + return [d3, b, wn]; + }], this, ur.call(this, r, t), function(e) { + var i = new wn(e.data); + onmessage = d3(i); + }, 10, 1); + } + return n2; +}(); +function st(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Sr, Ln2, function() { + return [mn]; + }], function(e) { + return or(mn(e.data[0], e.data[1])); + }, 4, t); +} +function mn(n2, r) { + r || (r = {}); + var t = Yr(); + t.p(n2); + var e = hr(n2, r, r.dictionary ? 6 : 2, 4); + return hn(e, r), C2(e, e.length - 4, t.d()), e; +} +var _r = function() { + function n2(r, t) { + K.call(this, r, t), this.v = r && r.dictionary ? 2 : 1; + } + return n2.prototype.push = function(r, t) { + if (K.prototype.e.call(this, r), this.v) { + if (this.p.length < 6 && !t) + return; + this.p = this.p.subarray(un(this.p, this.v - 1)), this.v = 0; + } + t && (this.p.length < 4 && c2(6, "invalid zlib data"), this.p = this.p.subarray(0, -4)), K.prototype.c.call(this, t); + }, n2; +}(); +var rt = /* @__PURE__ */ function() { + function n2(r, t) { + Fr([Mr, Pn, function() { + return [d3, K, _r]; + }], this, ur.call(this, r, t), function(e) { + var i = new _r(e.data); + onmessage = d3(i); + }, 11, 0); + } + return n2; +}(); +function nt2(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), Ur(n2, r, [Mr, Pn, function() { + return [rn]; + }], function(e) { + return or(rn(e.data[0], an(e.data[1]))); + }, 5, t); +} +function rn(n2, r) { + return Br2(n2.subarray(un(n2, r && r.dictionary), -4), { i: 2 }, r && r.out, r && r.dictionary); +} +var xn = function() { + function n2(r, t) { + this.o = ur.call(this, r, t) || {}, this.G = dr, this.I = K, this.Z = _r; + } + return n2.prototype.i = function() { + var r = this; + this.s.ondata = function(t, e) { + r.ondata(t, e); + }; + }, n2.prototype.push = function(r, t) { + if (this.ondata || c2(5), this.s) + this.s.push(r, t); + else { + if (this.p && this.p.length) { + var e = new S2(this.p.length + r.length); + e.set(this.p), e.set(r, this.p.length); + } else + this.p = r; + this.p.length > 2 && (this.s = this.p[0] == 31 && this.p[1] == 139 && this.p[2] == 8 ? new this.G(this.o) : (this.p[0] & 15) != 8 || this.p[0] >> 4 > 7 || (this.p[0] << 8 | this.p[1]) % 31 ? new this.I(this.o) : new this.Z(this.o), this.i(), this.s.push(this.p, t), this.p = null); + } + }, n2; +}(); +var ft = function() { + function n2(r, t) { + xn.call(this, r, t), this.queuedSize = 0, this.G = bn, this.I = Hn2, this.Z = rt; + } + return n2.prototype.i = function() { + var r = this; + this.s.ondata = function(t, e, i) { + r.ondata(t, e, i); + }, this.s.ondrain = function(t) { + r.queuedSize -= t, r.ondrain && r.ondrain(t); + }; + }, n2.prototype.push = function(r, t) { + this.queuedSize += r.length, xn.prototype.push.call(this, r, t); + }, n2; +}(); +function ht(n2, r, t) { + return t || (t = r, r = {}), typeof t != "function" && c2(7), n2[0] == 31 && n2[1] == 139 && n2[2] == 8 ? _n(n2, r, t) : (n2[0] & 15) != 8 || n2[0] >> 4 > 7 || (n2[0] << 8 | n2[1]) % 31 ? Nn(n2, r, t) : nt2(n2, r, t); +} +function ut(n2, r) { + return n2[0] == 31 && n2[1] == 139 && n2[2] == 8 ? br2(n2, r) : (n2[0] & 15) != 8 || n2[0] >> 4 > 7 || (n2[0] << 8 | n2[1]) % 31 ? Gr(n2, r) : rn(n2, r); +} +var ln2 = function(n2, r, t, e) { + for (var i in n2) { + var a3 = n2[i], o = r + i, s = e; + Array.isArray(a3) && (s = Er(e, a3[1]), a3 = a3[0]), a3 instanceof S2 ? t[o] = [a3, s] : (t[o += "/"] = [new S2(0), s], ln2(a3, o, t, e)); + } +}; +var zn2 = typeof TextEncoder < "u" && new TextEncoder(); +var nn2 = typeof TextDecoder < "u" && new TextDecoder(); +var Rn2 = 0; +try { + nn2.decode(ir2, { stream: true }), Rn2 = 1; +} catch { +} +var kn = function(n2) { + for (var r = "", t = 0; ; ) { + var e = n2[t++], i = (e > 127) + (e > 223) + (e > 239); + if (t + i > n2.length) + return { s: r, r: X(n2, t - 1) }; + i ? i == 3 ? (e = ((e & 15) << 18 | (n2[t++] & 63) << 12 | (n2[t++] & 63) << 6 | n2[t++] & 63) - 65536, r += String.fromCharCode(55296 | e >> 10, 56320 | e & 1023)) : i & 1 ? r += String.fromCharCode((e & 31) << 6 | n2[t++] & 63) : r += String.fromCharCode((e & 15) << 12 | (n2[t++] & 63) << 6 | n2[t++] & 63) : r += String.fromCharCode(e); + } +}; +var lt = function() { + function n2(r) { + this.ondata = r, Rn2 ? this.t = new TextDecoder() : this.p = ir2; + } + return n2.prototype.push = function(r, t) { + if (this.ondata || c2(5), t = !!t, this.t) { + this.ondata(this.t.decode(r, { stream: true }), t), t && (this.t.decode().length && c2(8), this.t = null); + return; + } + this.p || c2(4); + var e = new S2(this.p.length + r.length); + e.set(this.p), e.set(r, this.p.length); + var i = kn(e), a3 = i.s, o = i.r; + t ? (o.length && c2(8), this.p = null) : this.p = o, this.ondata(a3, t); + }, n2; +}(); +var vt = function() { + function n2(r) { + this.ondata = r; + } + return n2.prototype.push = function(r, t) { + this.ondata || c2(5), this.d && c2(4), this.ondata(fr(r), this.d = t || false); + }, n2; +}(); +function fr(n2, r) { + if (r) { + for (var t = new S2(n2.length), e = 0; e < n2.length; ++e) + t[e] = n2.charCodeAt(e); + return t; + } + if (zn2) + return zn2.encode(n2); + for (var i = n2.length, a3 = new S2(n2.length + (n2.length >> 1)), o = 0, s = function(h2) { + a3[o++] = h2; + }, e = 0; e < i; ++e) { + if (o + 5 > a3.length) { + var l2 = new S2(o + 8 + (i - e << 1)); + l2.set(a3), a3 = l2; + } + var f = n2.charCodeAt(e); + f < 128 || r ? s(f) : f < 2048 ? (s(192 | f >> 6), s(128 | f & 63)) : f > 55295 && f < 57344 ? (f = 65536 + (f & 1047552) | n2.charCodeAt(++e) & 1023, s(240 | f >> 18), s(128 | f >> 12 & 63), s(128 | f >> 6 & 63), s(128 | f & 63)) : (s(224 | f >> 12), s(128 | f >> 6 & 63), s(128 | f & 63)); + } + return X(a3, 0, o); +} +function Wn2(n2, r) { + if (r) { + for (var t = "", e = 0; e < n2.length; e += 16384) + t += String.fromCharCode.apply(null, n2.subarray(e, e + 16384)); + return t; + } else { + if (nn2) + return nn2.decode(n2); + var i = kn(n2), a3 = i.s, t = i.r; + return t.length && c2(8), a3; + } +} +var Yn2 = function(n2) { + return n2 == 1 ? 3 : n2 < 6 ? 2 : n2 == 9 ? 1 : 0; +}; +var jn = function(n2, r) { + return r + 30 + k(n2, r + 26) + k(n2, r + 28); +}; +var Jn = function(n2, r, t) { + var e = k(n2, r + 28), i = Wn2(n2.subarray(r + 46, r + 46 + e), !(k(n2, r + 8) & 2048)), a3 = r + 46 + e, o = $3(n2, r + 20), s = t && o == 4294967295 ? Kn(n2, a3) : [o, $3(n2, r + 24), $3(n2, r + 42)], l2 = s[0], f = s[1], h2 = s[2]; + return [k(n2, r + 10), l2, f, i, a3 + k(n2, r + 30) + k(n2, r + 32), h2]; +}; +var Kn = function(n2, r) { + for (; k(n2, r) != 1; r += 4 + k(n2, r + 2)) + ; + return [Kr2(n2, r + 12), Kr2(n2, r + 4), Kr2(n2, r + 20)]; +}; +var ar2 = function(n2) { + var r = 0; + if (n2) + for (var t in n2) { + var e = n2[t].length; + e > 65535 && c2(9), r += e + 4; + } + return r; +}; +var wr2 = function(n2, r, t, e, i, a3, o, s) { + var l2 = e.length, f = t.extra, h2 = s && s.length, u2 = ar2(f); + C2(n2, r, o != null ? 33639248 : 67324752), r += 4, o != null && (n2[r++] = 20, n2[r++] = t.os), n2[r] = 20, r += 2, n2[r++] = t.flag << 1 | (a3 < 0 && 8), n2[r++] = i && 8, n2[r++] = t.compression & 255, n2[r++] = t.compression >> 8; + var v4 = new Date(t.mtime == null ? Date.now() : t.mtime), M3 = v4.getFullYear() - 1980; + if ((M3 < 0 || M3 > 119) && c2(10), C2(n2, r, M3 << 25 | v4.getMonth() + 1 << 21 | v4.getDate() << 16 | v4.getHours() << 11 | v4.getMinutes() << 5 | v4.getSeconds() >> 1), r += 4, a3 != -1 && (C2(n2, r, t.crc), C2(n2, r + 4, a3 < 0 ? -a3 - 2 : a3), C2(n2, r + 8, t.size)), C2(n2, r + 12, l2), C2(n2, r + 14, u2), r += 16, o != null && (C2(n2, r, h2), C2(n2, r + 6, t.attrs), C2(n2, r + 10, o), r += 14), n2.set(e, r), r += l2, u2) + for (var m3 in f) { + var z4 = f[m3], p3 = z4.length; + C2(n2, r, +m3), C2(n2, r + 2, p3), n2.set(z4, r + 4), r += 4 + p3; + } + return h2 && (n2.set(s, r), r += h2), r; +}; +var vn = function(n2, r, t, e, i) { + C2(n2, r, 101010256), C2(n2, r + 8, t), C2(n2, r + 10, t), C2(n2, r + 12, e), C2(n2, r + 16, i); +}; +var kr2 = function() { + function n2(r) { + this.filename = r, this.c = Ar(), this.size = 0, this.compression = 0; + } + return n2.prototype.process = function(r, t) { + this.ondata(null, r, t); + }, n2.prototype.push = function(r, t) { + this.ondata || c2(5), this.c.p(r), this.size += r.length, t && (this.crc = this.c.d()), this.process(r, t || false); + }, n2; +}(); +var ct = function() { + function n2(r, t) { + var e = this; + t || (t = {}), kr2.call(this, r), this.d = new b(t, function(i, a3) { + e.ondata(null, i, a3); + }), this.compression = 8, this.flag = Yn2(t.level); + } + return n2.prototype.process = function(r, t) { + try { + this.d.push(r, t); + } catch (e) { + this.ondata(e, null, t); + } + }, n2.prototype.push = function(r, t) { + kr2.prototype.push.call(this, r, t); + }, n2; +}(); +var pt = function() { + function n2(r, t) { + var e = this; + t || (t = {}), kr2.call(this, r), this.d = new Xn(t, function(i, a3, o) { + e.ondata(i, a3, o); + }), this.compression = 8, this.flag = Yn2(t.level), this.terminate = this.d.terminate; + } + return n2.prototype.process = function(r, t) { + this.d.push(r, t); + }, n2.prototype.push = function(r, t) { + kr2.prototype.push.call(this, r, t); + }, n2; +}(); +var gt = function() { + function n2(r) { + this.ondata = r, this.u = [], this.d = 1; + } + return n2.prototype.add = function(r) { + var t = this; + if (this.ondata || c2(5), this.d & 2) + this.ondata(c2(4 + (this.d & 1) * 8, 0, 1), null, false); + else { + var e = fr(r.filename), i = e.length, a3 = r.comment, o = a3 && fr(a3), s = i != r.filename.length || o && a3.length != o.length, l2 = i + ar2(r.extra) + 30; + i > 65535 && this.ondata(c2(11, 0, 1), null, false); + var f = new S2(l2); + wr2(f, 0, r, e, s, -1); + var h2 = [f], u2 = function() { + for (var p3 = 0, x2 = h2; p3 < x2.length; p3++) { + var U2 = x2[p3]; + t.ondata(null, U2, false); + } + h2 = []; + }, v4 = this.d; + this.d = 0; + var M3 = this.u.length, m3 = Er(r, { f: e, u: s, o, t: function() { + r.terminate && r.terminate(); + }, r: function() { + if (u2(), v4) { + var p3 = t.u[M3 + 1]; + p3 ? p3.r() : t.d = 1; + } + v4 = 1; + } }), z4 = 0; + r.ondata = function(p3, x2, U2) { + if (p3) + t.ondata(p3, x2, U2), t.terminate(); + else if (z4 += x2.length, h2.push(x2), U2) { + var A4 = new S2(16); + C2(A4, 0, 134695760), C2(A4, 4, r.crc), C2(A4, 8, z4), C2(A4, 12, r.size), h2.push(A4), m3.c = z4, m3.b = l2 + z4 + 16, m3.crc = r.crc, m3.size = r.size, v4 && m3.r(), v4 = 1; + } else + v4 && u2(); + }, this.u.push(m3); + } + }, n2.prototype.end = function() { + var r = this; + if (this.d & 2) { + this.ondata(c2(4 + (this.d & 1) * 8, 0, 1), null, true); + return; + } + this.d ? this.e() : this.u.push({ r: function() { + r.d & 1 && (r.u.splice(-1, 1), r.e()); + }, t: function() { + } }), this.d = 3; + }, n2.prototype.e = function() { + for (var r = 0, t = 0, e = 0, i = 0, a3 = this.u; i < a3.length; i++) { + var o = a3[i]; + e += 46 + o.f.length + ar2(o.extra) + (o.o ? o.o.length : 0); + } + for (var s = new S2(e + 22), l2 = 0, f = this.u; l2 < f.length; l2++) { + var o = f[l2]; + wr2(s, r, o, o.f, o.u, -o.c - 2, t, o.o), r += 46 + o.f.length + ar2(o.extra) + (o.o ? o.o.length : 0), t += o.b; + } + vn(s, r, this.u.length, e, t), this.ondata(null, s, true), this.d = 2; + }, n2.prototype.terminate = function() { + for (var r = 0, t = this.u; r < t.length; r++) { + var e = t[r]; + e.t(); + } + this.d = 2; + }, n2; +}(); +function yt(n2, r, t) { + t || (t = r, r = {}), typeof t != "function" && c2(7); + var e = {}; + ln2(n2, "", e, r); + var i = Object.keys(e), a3 = i.length, o = 0, s = 0, l2 = a3, f = new Array(a3), h2 = [], u2 = function() { + for (var p3 = 0; p3 < h2.length; ++p3) + h2[p3](); + }, v4 = function(p3, x2) { + Wr2(function() { + t(p3, x2); + }); + }; + Wr2(function() { + v4 = t; + }); + var M3 = function() { + var p3 = new S2(s + 22), x2 = o, U2 = s - o; + s = 0; + for (var A4 = 0; A4 < l2; ++A4) { + var y4 = f[A4]; + try { + var Z = y4.c.length; + wr2(p3, s, y4, y4.f, y4.u, Z); + var B3 = 30 + y4.f.length + ar2(y4.extra), D = s + B3; + p3.set(y4.c, D), wr2(p3, o, y4, y4.f, y4.u, Z, s, y4.m), o += 16 + B3 + (y4.m ? y4.m.length : 0), s = D + Z; + } catch (w2) { + return v4(w2, null); + } + } + vn(p3, o, f.length, U2, x2), v4(null, p3); + }; + a3 || M3(); + for (var m3 = function(p3) { + var x2 = i[p3], U2 = e[x2], A4 = U2[0], y4 = U2[1], Z = Ar(), B3 = A4.length; + Z.p(A4); + var D = fr(x2), w2 = D.length, g2 = y4.comment, F2 = g2 && fr(g2), T2 = F2 && F2.length, O4 = ar2(y4.extra), H2 = y4.level == 0 ? 0 : 8, G2 = function(L3, q4) { + if (L3) + u2(), v4(L3, null); + else { + var E4 = q4.length; + f[p3] = Er(y4, { size: B3, crc: Z.d(), c: q4, f: D, m: F2, u: w2 != x2.length || F2 && g2.length != T2, compression: H2 }), o += 30 + w2 + O4 + E4, s += 76 + 2 * (w2 + O4) + (T2 || 0) + E4, --a3 || M3(); + } + }; + if (w2 > 65535 && G2(c2(11, 0, 1), null), !H2) + G2(null, A4); + else if (B3 < 16e4) + try { + G2(null, jr(A4, y4)); + } catch (L3) { + G2(L3, null); + } + else + h2.push(dn(A4, y4, G2)); + }, z4 = 0; z4 < l2; ++z4) + m3(z4); + return u2; +} +function wt(n2, r) { + r || (r = {}); + var t = {}, e = []; + ln2(n2, "", t, r); + var i = 0, a3 = 0; + for (var o in t) { + var s = t[o], l2 = s[0], f = s[1], h2 = f.level == 0 ? 0 : 8, u2 = fr(o), v4 = u2.length, M3 = f.comment, m3 = M3 && fr(M3), z4 = m3 && m3.length, p3 = ar2(f.extra); + v4 > 65535 && c2(11); + var x2 = h2 ? jr(l2, f) : l2, U2 = x2.length, A4 = Ar(); + A4.p(l2), e.push(Er(f, { size: l2.length, crc: A4.d(), c: x2, f: u2, m: m3, u: v4 != o.length || m3 && M3.length != z4, o: i, compression: h2 })), i += 30 + v4 + p3 + U2, a3 += 76 + 2 * (v4 + p3) + (z4 || 0) + U2; + } + for (var y4 = new S2(a3 + 22), Z = i, B3 = a3 - i, D = 0; D < e.length; ++D) { + var u2 = e[D]; + wr2(y4, u2.o, u2, u2.f, u2.u, u2.c.length); + var w2 = 30 + u2.f.length + ar2(u2.extra); + y4.set(u2.c, u2.o + w2), wr2(y4, i, u2, u2.f, u2.u, u2.c.length, u2.o, u2.m), i += 16 + w2 + (u2.m ? u2.m.length : 0); + } + return vn(y4, i, e.length, B3, Z), y4; +} +var tt2 = function() { + function n2() { + } + return n2.prototype.push = function(r, t) { + this.ondata(null, r, t); + }, n2.compression = 0, n2; +}(); +var mt = function() { + function n2() { + var r = this; + this.i = new K(function(t, e) { + r.ondata(null, t, e); + }); + } + return n2.prototype.push = function(r, t) { + try { + this.i.push(r, t); + } catch (e) { + this.ondata(e, null, t); + } + }, n2.compression = 8, n2; +}(); +var xt = function() { + function n2(r, t) { + var e = this; + t < 32e4 ? this.i = new K(function(i, a3) { + e.ondata(null, i, a3); + }) : (this.i = new Hn2(function(i, a3, o) { + e.ondata(i, a3, o); + }), this.terminate = this.i.terminate); + } + return n2.prototype.push = function(r, t) { + this.i.terminate && (r = X(r, 0)), this.i.push(r, t); + }, n2.compression = 8, n2; +}(); +var zt = function() { + function n2(r) { + this.onfile = r, this.k = [], this.o = { 0: tt2 }, this.p = ir2; + } + return n2.prototype.push = function(r, t) { + var e = this; + if (this.onfile || c2(5), this.p || c2(4), this.c > 0) { + var i = Math.min(this.c, r.length), a3 = r.subarray(0, i); + if (this.c -= i, this.d ? this.d.push(a3, !this.c) : this.k[0].push(a3), r = r.subarray(i), r.length) + return this.push(r, t); + } else { + var o = 0, s = 0, l2 = void 0, f = void 0; + this.p.length ? r.length ? (f = new S2(this.p.length + r.length), f.set(this.p), f.set(r, this.p.length)) : f = this.p : f = r; + for (var h2 = f.length, u2 = this.c, v4 = u2 && this.d, M3 = function() { + var x2, U2 = $3(f, s); + if (U2 == 67324752) { + o = 1, l2 = s, m3.d = null, m3.c = 0; + var A4 = k(f, s + 6), y4 = k(f, s + 8), Z = A4 & 2048, B3 = A4 & 8, D = k(f, s + 26), w2 = k(f, s + 28); + if (h2 > s + 30 + D + w2) { + var g2 = []; + m3.k.unshift(g2), o = 2; + var F2 = $3(f, s + 18), T2 = $3(f, s + 22), O4 = Wn2(f.subarray(s + 30, s += 30 + D), !Z); + F2 == 4294967295 ? (x2 = B3 ? [-2] : Kn(f, s), F2 = x2[0], T2 = x2[1]) : B3 && (F2 = -1), s += w2, m3.c = F2; + var H2, G2 = { name: O4, compression: y4, start: function() { + if (G2.ondata || c2(5), !F2) + G2.ondata(null, ir2, true); + else { + var L3 = e.o[y4]; + L3 || G2.ondata(c2(14, "unknown compression type " + y4, 1), null, false), H2 = F2 < 0 ? new L3(O4) : new L3(O4, F2, T2), H2.ondata = function(N2, sr2, Y2) { + G2.ondata(N2, sr2, Y2); + }; + for (var q4 = 0, E4 = g2; q4 < E4.length; q4++) { + var R2 = E4[q4]; + H2.push(R2, false); + } + e.k[0] == g2 && e.c ? e.d = H2 : H2.push(ir2, true); + } + }, terminate: function() { + H2 && H2.terminate && H2.terminate(); + } }; + F2 >= 0 && (G2.size = F2, G2.originalSize = T2), m3.onfile(G2); + } + return "break"; + } else if (u2) { + if (U2 == 134695760) + return l2 = s += 12 + (u2 == -2 && 8), o = 3, m3.c = 0, "break"; + if (U2 == 33639248) + return l2 = s -= 4, o = 3, m3.c = 0, "break"; + } + }, m3 = this; s < h2 - 4; ++s) { + var z4 = M3(); + if (z4 === "break") + break; + } + if (this.p = ir2, u2 < 0) { + var p3 = o ? f.subarray(0, l2 - 12 - (u2 == -2 && 8) - ($3(f, l2 - 16) == 134695760 && 4)) : f.subarray(0, s); + v4 ? v4.push(p3, !!o) : this.k[+(o == 2)].push(p3); + } + if (o & 2) + return this.push(f.subarray(s), t); + this.p = f.subarray(s); + } + t && (this.c && c2(13), this.p = null); + }, n2.prototype.register = function(r) { + this.o[r.compression] = r; + }, n2; +}(); +var Wr2 = typeof queueMicrotask == "function" ? queueMicrotask : typeof setTimeout == "function" ? setTimeout : function(n2) { + n2(); +}; +function At(n2, r, t) { + t || (t = r, r = {}), typeof t != "function" && c2(7); + var e = [], i = function() { + for (var p3 = 0; p3 < e.length; ++p3) + e[p3](); + }, a3 = {}, o = function(p3, x2) { + Wr2(function() { + t(p3, x2); + }); + }; + Wr2(function() { + o = t; + }); + for (var s = n2.length - 22; $3(n2, s) != 101010256; --s) + if (!s || n2.length - s > 65558) + return o(c2(13, 0, 1), null), i; + var l2 = k(n2, s + 8); + if (l2) { + var f = l2, h2 = $3(n2, s + 16), u2 = h2 == 4294967295 || f == 65535; + if (u2) { + var v4 = $3(n2, s - 12); + u2 = $3(n2, v4) == 101075792, u2 && (f = l2 = $3(n2, v4 + 32), h2 = $3(n2, v4 + 48)); + } + for (var M3 = r && r.filter, m3 = function(p3) { + var x2 = Jn(n2, h2, u2), U2 = x2[0], A4 = x2[1], y4 = x2[2], Z = x2[3], B3 = x2[4], D = x2[5], w2 = jn(n2, D); + h2 = B3; + var g2 = function(T2, O4) { + T2 ? (i(), o(T2, null)) : (O4 && (a3[Z] = O4), --l2 || o(null, a3)); + }; + if (!M3 || M3({ name: Z, size: A4, originalSize: y4, compression: U2 })) + if (!U2) + g2(null, X(n2, w2, w2 + A4)); + else if (U2 == 8) { + var F2 = n2.subarray(w2, w2 + A4); + if (y4 < 524288 || A4 > 0.8 * y4) + try { + g2(null, Gr(F2, { out: new S2(y4) })); + } catch (T2) { + g2(T2, null); + } + else + e.push(Nn(F2, { size: y4 }, g2)); + } else + g2(c2(14, "unknown compression type " + U2, 1), null); + else + g2(null, null); + }, z4 = 0; z4 < f; ++z4) + m3(z4); + } else + o(null, {}); + return i; +} +function Mt(n2, r) { + for (var t = {}, e = n2.length - 22; $3(n2, e) != 101010256; --e) + (!e || n2.length - e > 65558) && c2(13); + var i = k(n2, e + 8); + if (!i) + return {}; + var a3 = $3(n2, e + 16), o = a3 == 4294967295 || i == 65535; + if (o) { + var s = $3(n2, e - 12); + o = $3(n2, s) == 101075792, o && (i = $3(n2, s + 32), a3 = $3(n2, s + 48)); + } + for (var l2 = r && r.filter, f = 0; f < i; ++f) { + var h2 = Jn(n2, a3, o), u2 = h2[0], v4 = h2[1], M3 = h2[2], m3 = h2[3], z4 = h2[4], p3 = h2[5], x2 = jn(n2, p3); + a3 = z4, (!l2 || l2({ name: m3, size: v4, originalSize: M3, compression: u2 })) && (u2 ? u2 == 8 ? t[m3] = Gr(n2.subarray(x2, x2 + v4), { out: new S2(M3) }) : c2(14, "unknown compression type " + u2) : t[m3] = X(n2, x2, x2 + v4)); + } + return t; +} + +// https://esm.sh/v135/nifti-reader-js@0.6.8/denonext/nifti-reader-js.mjs +import { Buffer as __Buffer$ } from "node:buffer"; +var require3 = (n2) => { + const e = (m3) => typeof m3.default < "u" ? m3.default : m3, c3 = (m3) => Object.assign({ __esModule: true }, m3); + switch (n2) { + case "fflate": + return e(fflate_exports); + default: + throw new Error('module "' + n2 + '" not found'); + } +}; +var It = Object.create; +var J2 = Object.defineProperty; +var ut2 = Object.getOwnPropertyDescriptor; +var Et = Object.getOwnPropertyNames; +var gt2 = Object.getPrototypeOf; +var mt2 = Object.prototype.hasOwnProperty; +var xt2 = ((e) => typeof require3 < "u" ? require3 : typeof Proxy < "u" ? new Proxy(e, { get: (i, t) => (typeof require3 < "u" ? require3 : i)[t] }) : e)(function(e) { + if (typeof require3 < "u") + return require3.apply(this, arguments); + throw Error('Dynamic require of "' + e + '" is not supported'); +}); +var v3 = (e, i) => () => (i || e((i = { exports: {} }).exports, i), i.exports); +var At2 = (e, i) => { + for (var t in i) + J2(e, t, { get: i[t], enumerable: true }); +}; +var W2 = (e, i, t, a3) => { + if (i && typeof i == "object" || typeof i == "function") + for (let n2 of Et(i)) + !mt2.call(e, n2) && n2 !== t && J2(e, n2, { get: () => i[n2], enumerable: !(a3 = ut2(i, n2)) || a3.enumerable }); + return e; +}; +var B2 = (e, i, t) => (W2(e, i, "default"), t && W2(t, i, "default")); +var ot3 = (e, i, t) => (t = e != null ? It(gt2(e)) : {}, W2(i || !e || !e.__esModule ? J2(t, "default", { value: e, enumerable: true }) : t, e)); +var tt3 = v3((R2) => { + "use strict"; + Object.defineProperty(R2, "__esModule", { value: true }); + R2.NIFTIEXTENSION = void 0; + var $4 = class { + esize; + ecode; + edata; + littleEndian; + constructor(i, t, a3, n2) { + if (i % 16 != 0) + throw new Error("This does not appear to be a NIFTI extension"); + this.esize = i, this.ecode = t, this.edata = a3, this.littleEndian = n2; + } + toArrayBuffer() { + let i = new Uint8Array(this.esize), t = new Uint8Array(this.edata); + i.set(t, 8); + let a3 = new DataView(i.buffer); + return a3.setInt32(0, this.esize, this.littleEndian), a3.setInt32(4, this.ecode, this.littleEndian), i.buffer; + } + }; + R2.NIFTIEXTENSION = $4; +}); +var z2 = v3((L3) => { + "use strict"; + Object.defineProperty(L3, "__esModule", { value: true }); + L3.Utils = void 0; + var Tt2 = tt3(), it3 = class e { + static crcTable = null; + static GUNZIP_MAGIC_COOKIE1 = 31; + static GUNZIP_MAGIC_COOKIE2 = 139; + static getStringAt(i, t, a3) { + var n2 = "", l2, s; + for (l2 = t; l2 < a3; l2 += 1) + s = i.getUint8(l2), s !== 0 && (n2 += String.fromCharCode(s)); + return n2; + } + static getByteAt = function(i, t) { + return i.getInt8(t); + }; + static getShortAt = function(i, t, a3) { + return i.getInt16(t, a3); + }; + static getIntAt(i, t, a3) { + return i.getInt32(t, a3); + } + static getFloatAt(i, t, a3) { + return i.getFloat32(t, a3); + } + static getDoubleAt(i, t, a3) { + return i.getFloat64(t, a3); + } + static getLongAt(i, t, a3) { + var n2, l2 = [], s = 0; + for (n2 = 0; n2 < 8; n2 += 1) + l2[n2] = e.getByteAt(i, t + n2); + for (n2 = l2.length - 1; n2 >= 0; n2--) + s = s * 256 + l2[n2]; + return s; + } + static getExtensionsAt(i, t, a3, n2) { + let l2 = [], s = t; + for (; s < n2; ) { + let f = a3, r = e.getIntAt(i, s, a3); + if (!r) + break; + if (r + s > n2 && (f = !f, r = e.getIntAt(i, s, f), r + s > n2)) + throw new Error("This does not appear to be a valid NIFTI extension"); + if (r % 16 != 0) + throw new Error("This does not appear to be a NIFTI extension"); + let h2 = e.getIntAt(i, s + 4, f), c3 = i.buffer.slice(s + 8, s + r); + console.log("extensionByteIndex: " + (s + 8) + " esize: " + r), console.log(c3); + let o = new Tt2.NIFTIEXTENSION(r, h2, c3, f); + l2.push(o), s += r; + } + return l2; + } + static toArrayBuffer(i) { + var t, a3, n2; + for (t = new ArrayBuffer(i.length), a3 = new Uint8Array(t), n2 = 0; n2 < i.length; n2 += 1) + a3[n2] = i[n2]; + return t; + } + static isString(i) { + return typeof i == "string" || i instanceof String; + } + static formatNumber(i, t = void 0) { + let a3; + return e.isString(i) ? a3 = Number(i) : a3 = i, t ? a3 = a3.toPrecision(5) : a3 = a3.toPrecision(7), parseFloat(a3); + } + static makeCRCTable() { + let i, t = []; + for (var a3 = 0; a3 < 256; a3++) { + i = a3; + for (var n2 = 0; n2 < 8; n2++) + i = i & 1 ? 3988292384 ^ i >>> 1 : i >>> 1; + t[a3] = i; + } + return t; + } + static crc32(i) { + e.crcTable || (e.crcTable = e.makeCRCTable()); + let t = e.crcTable, a3 = -1; + for (var n2 = 0; n2 < i.byteLength; n2++) + a3 = a3 >>> 8 ^ t[(a3 ^ i.getUint8(n2)) & 255]; + return (a3 ^ -1) >>> 0; + } + }; + L3.Utils = it3; +}); +var Y = v3((G2) => { + "use strict"; + Object.defineProperty(G2, "__esModule", { value: true }); + G2.NIFTI1 = void 0; + var _3 = z2(), et4 = class e { + littleEndian = false; + dim_info = 0; + dims = []; + intent_p1 = 0; + intent_p2 = 0; + intent_p3 = 0; + intent_code = 0; + datatypeCode = 0; + numBitsPerVoxel = 0; + slice_start = 0; + slice_end = 0; + slice_code = 0; + pixDims = []; + vox_offset = 0; + scl_slope = 1; + scl_inter = 0; + xyzt_units = 0; + cal_max = 0; + cal_min = 0; + slice_duration = 0; + toffset = 0; + description = ""; + aux_file = ""; + intent_name = ""; + qform_code = 0; + sform_code = 0; + quatern_a = 0; + quatern_b = 0; + quatern_c = 0; + quatern_d = 0; + qoffset_x = 0; + qoffset_y = 0; + qoffset_z = 0; + affine = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]; + qfac = 1; + quatern_R; + magic = "0"; + isHDR = false; + extensionFlag = [0, 0, 0, 0]; + extensionSize = 0; + extensionCode = 0; + extensions = []; + static TYPE_NONE = 0; + static TYPE_BINARY = 1; + static TYPE_UINT8 = 2; + static TYPE_INT16 = 4; + static TYPE_INT32 = 8; + static TYPE_FLOAT32 = 16; + static TYPE_COMPLEX64 = 32; + static TYPE_FLOAT64 = 64; + static TYPE_RGB24 = 128; + static TYPE_INT8 = 256; + static TYPE_UINT16 = 512; + static TYPE_UINT32 = 768; + static TYPE_INT64 = 1024; + static TYPE_UINT64 = 1280; + static TYPE_FLOAT128 = 1536; + static TYPE_COMPLEX128 = 1792; + static TYPE_COMPLEX256 = 2048; + static XFORM_UNKNOWN = 0; + static XFORM_SCANNER_ANAT = 1; + static XFORM_ALIGNED_ANAT = 2; + static XFORM_TALAIRACH = 3; + static XFORM_MNI_152 = 4; + static SPATIAL_UNITS_MASK = 7; + static TEMPORAL_UNITS_MASK = 56; + static UNITS_UNKNOWN = 0; + static UNITS_METER = 1; + static UNITS_MM = 2; + static UNITS_MICRON = 3; + static UNITS_SEC = 8; + static UNITS_MSEC = 16; + static UNITS_USEC = 24; + static UNITS_HZ = 32; + static UNITS_PPM = 40; + static UNITS_RADS = 48; + static MAGIC_COOKIE = 348; + static STANDARD_HEADER_SIZE = 348; + static MAGIC_NUMBER_LOCATION = 344; + static MAGIC_NUMBER = [110, 43, 49]; + static MAGIC_NUMBER2 = [110, 105, 49]; + static EXTENSION_HEADER_SIZE = 8; + readHeader(i) { + var t = new DataView(i), a3 = _3.Utils.getIntAt(t, 0, this.littleEndian), n2, l2, s, f; + if (a3 !== e.MAGIC_COOKIE && (this.littleEndian = true, a3 = _3.Utils.getIntAt(t, 0, this.littleEndian)), a3 !== e.MAGIC_COOKIE) + throw new Error("This does not appear to be a NIFTI file!"); + for (this.dim_info = _3.Utils.getByteAt(t, 39), n2 = 0; n2 < 8; n2 += 1) + f = 40 + n2 * 2, this.dims[n2] = _3.Utils.getShortAt(t, f, this.littleEndian); + for (this.intent_p1 = _3.Utils.getFloatAt(t, 56, this.littleEndian), this.intent_p2 = _3.Utils.getFloatAt(t, 60, this.littleEndian), this.intent_p3 = _3.Utils.getFloatAt(t, 64, this.littleEndian), this.intent_code = _3.Utils.getShortAt(t, 68, this.littleEndian), this.datatypeCode = _3.Utils.getShortAt(t, 70, this.littleEndian), this.numBitsPerVoxel = _3.Utils.getShortAt(t, 72, this.littleEndian), this.slice_start = _3.Utils.getShortAt(t, 74, this.littleEndian), n2 = 0; n2 < 8; n2 += 1) + f = 76 + n2 * 4, this.pixDims[n2] = _3.Utils.getFloatAt(t, f, this.littleEndian); + if (this.vox_offset = _3.Utils.getFloatAt(t, 108, this.littleEndian), this.scl_slope = _3.Utils.getFloatAt(t, 112, this.littleEndian), this.scl_inter = _3.Utils.getFloatAt(t, 116, this.littleEndian), this.slice_end = _3.Utils.getShortAt(t, 120, this.littleEndian), this.slice_code = _3.Utils.getByteAt(t, 122), this.xyzt_units = _3.Utils.getByteAt(t, 123), this.cal_max = _3.Utils.getFloatAt(t, 124, this.littleEndian), this.cal_min = _3.Utils.getFloatAt(t, 128, this.littleEndian), this.slice_duration = _3.Utils.getFloatAt(t, 132, this.littleEndian), this.toffset = _3.Utils.getFloatAt(t, 136, this.littleEndian), this.description = _3.Utils.getStringAt(t, 148, 228), this.aux_file = _3.Utils.getStringAt(t, 228, 252), this.qform_code = _3.Utils.getShortAt(t, 252, this.littleEndian), this.sform_code = _3.Utils.getShortAt(t, 254, this.littleEndian), this.quatern_b = _3.Utils.getFloatAt(t, 256, this.littleEndian), this.quatern_c = _3.Utils.getFloatAt(t, 260, this.littleEndian), this.quatern_d = _3.Utils.getFloatAt(t, 264, this.littleEndian), this.quatern_a = Math.sqrt(1 - (Math.pow(this.quatern_b, 2) + Math.pow(this.quatern_c, 2) + Math.pow(this.quatern_d, 2))), this.qoffset_x = _3.Utils.getFloatAt(t, 268, this.littleEndian), this.qoffset_y = _3.Utils.getFloatAt(t, 272, this.littleEndian), this.qoffset_z = _3.Utils.getFloatAt(t, 276, this.littleEndian), this.qform_code < 1 && this.sform_code < 1 && (this.affine[0][0] = this.pixDims[1], this.affine[1][1] = this.pixDims[2], this.affine[2][2] = this.pixDims[3]), this.qform_code > 0 && this.sform_code < this.qform_code) { + let r = this.quatern_a, h2 = this.quatern_b, c3 = this.quatern_c, o = this.quatern_d; + for (this.qfac = this.pixDims[0] === 0 ? 1 : this.pixDims[0], this.quatern_R = [[r * r + h2 * h2 - c3 * c3 - o * o, 2 * h2 * c3 - 2 * r * o, 2 * h2 * o + 2 * r * c3], [2 * h2 * c3 + 2 * r * o, r * r + c3 * c3 - h2 * h2 - o * o, 2 * c3 * o - 2 * r * h2], [2 * h2 * o - 2 * r * c3, 2 * c3 * o + 2 * r * h2, r * r + o * o - c3 * c3 - h2 * h2]], l2 = 0; l2 < 3; l2 += 1) + for (s = 0; s < 3; s += 1) + this.affine[l2][s] = this.quatern_R[l2][s] * this.pixDims[s + 1], s === 2 && (this.affine[l2][s] *= this.qfac); + this.affine[0][3] = this.qoffset_x, this.affine[1][3] = this.qoffset_y, this.affine[2][3] = this.qoffset_z; + } else if (this.sform_code > 0) + for (l2 = 0; l2 < 3; l2 += 1) + for (s = 0; s < 4; s += 1) + f = 280 + (l2 * 4 + s) * 4, this.affine[l2][s] = _3.Utils.getFloatAt(t, f, this.littleEndian); + if (this.affine[3][0] = 0, this.affine[3][1] = 0, this.affine[3][2] = 0, this.affine[3][3] = 1, this.intent_name = _3.Utils.getStringAt(t, 328, 344), this.magic = _3.Utils.getStringAt(t, 344, 348), this.isHDR = this.magic === String.fromCharCode.apply(null, e.MAGIC_NUMBER2), t.byteLength > e.MAGIC_COOKIE) { + this.extensionFlag[0] = _3.Utils.getByteAt(t, 348), this.extensionFlag[1] = _3.Utils.getByteAt(t, 349), this.extensionFlag[2] = _3.Utils.getByteAt(t, 350), this.extensionFlag[3] = _3.Utils.getByteAt(t, 351); + let r = true; + !this.isHDR && this.vox_offset <= 352 && (r = false), t.byteLength <= 368 && (r = false), r && this.extensionFlag[0] && (this.extensions = _3.Utils.getExtensionsAt(t, this.getExtensionLocation(), this.littleEndian, this.vox_offset), this.extensionSize = this.extensions[0].esize, this.extensionCode = this.extensions[0].ecode); + } + } + toFormattedString() { + var i = _3.Utils.formatNumber, t = ""; + return t += "Dim Info = " + this.dim_info + ` +`, t += "Image Dimensions (1-8): " + this.dims[0] + ", " + this.dims[1] + ", " + this.dims[2] + ", " + this.dims[3] + ", " + this.dims[4] + ", " + this.dims[5] + ", " + this.dims[6] + ", " + this.dims[7] + ` +`, t += "Intent Parameters (1-3): " + this.intent_p1 + ", " + this.intent_p2 + ", " + this.intent_p3 + ` +`, t += "Intent Code = " + this.intent_code + ` +`, t += "Datatype = " + this.datatypeCode + " (" + this.getDatatypeCodeString(this.datatypeCode) + `) +`, t += "Bits Per Voxel = " + this.numBitsPerVoxel + ` +`, t += "Slice Start = " + this.slice_start + ` +`, t += "Voxel Dimensions (1-8): " + i(this.pixDims[0]) + ", " + i(this.pixDims[1]) + ", " + i(this.pixDims[2]) + ", " + i(this.pixDims[3]) + ", " + i(this.pixDims[4]) + ", " + i(this.pixDims[5]) + ", " + i(this.pixDims[6]) + ", " + i(this.pixDims[7]) + ` +`, t += "Image Offset = " + this.vox_offset + ` +`, t += "Data Scale: Slope = " + i(this.scl_slope) + " Intercept = " + i(this.scl_inter) + ` +`, t += "Slice End = " + this.slice_end + ` +`, t += "Slice Code = " + this.slice_code + ` +`, t += "Units Code = " + this.xyzt_units + " (" + this.getUnitsCodeString(e.SPATIAL_UNITS_MASK & this.xyzt_units) + ", " + this.getUnitsCodeString(e.TEMPORAL_UNITS_MASK & this.xyzt_units) + `) +`, t += "Display Range: Max = " + i(this.cal_max) + " Min = " + i(this.cal_min) + ` +`, t += "Slice Duration = " + this.slice_duration + ` +`, t += "Time Axis Shift = " + this.toffset + ` +`, t += 'Description: "' + this.description + `" +`, t += 'Auxiliary File: "' + this.aux_file + `" +`, t += "Q-Form Code = " + this.qform_code + " (" + this.getTransformCodeString(this.qform_code) + `) +`, t += "S-Form Code = " + this.sform_code + " (" + this.getTransformCodeString(this.sform_code) + `) +`, t += "Quaternion Parameters: b = " + i(this.quatern_b) + " c = " + i(this.quatern_c) + " d = " + i(this.quatern_d) + ` +`, t += "Quaternion Offsets: x = " + this.qoffset_x + " y = " + this.qoffset_y + " z = " + this.qoffset_z + ` +`, t += "S-Form Parameters X: " + i(this.affine[0][0]) + ", " + i(this.affine[0][1]) + ", " + i(this.affine[0][2]) + ", " + i(this.affine[0][3]) + ` +`, t += "S-Form Parameters Y: " + i(this.affine[1][0]) + ", " + i(this.affine[1][1]) + ", " + i(this.affine[1][2]) + ", " + i(this.affine[1][3]) + ` +`, t += "S-Form Parameters Z: " + i(this.affine[2][0]) + ", " + i(this.affine[2][1]) + ", " + i(this.affine[2][2]) + ", " + i(this.affine[2][3]) + ` +`, t += 'Intent Name: "' + this.intent_name + `" +`, this.extensionFlag[0] && (t += "Extension: Size = " + this.extensionSize + " Code = " + this.extensionCode + ` +`), t; + } + getDatatypeCodeString = function(i) { + return i === e.TYPE_UINT8 ? "1-Byte Unsigned Integer" : i === e.TYPE_INT16 ? "2-Byte Signed Integer" : i === e.TYPE_INT32 ? "4-Byte Signed Integer" : i === e.TYPE_FLOAT32 ? "4-Byte Float" : i === e.TYPE_FLOAT64 ? "8-Byte Float" : i === e.TYPE_RGB24 ? "RGB" : i === e.TYPE_INT8 ? "1-Byte Signed Integer" : i === e.TYPE_UINT16 ? "2-Byte Unsigned Integer" : i === e.TYPE_UINT32 ? "4-Byte Unsigned Integer" : i === e.TYPE_INT64 ? "8-Byte Signed Integer" : i === e.TYPE_UINT64 ? "8-Byte Unsigned Integer" : "Unknown"; + }; + getTransformCodeString = function(i) { + return i === e.XFORM_SCANNER_ANAT ? "Scanner" : i === e.XFORM_ALIGNED_ANAT ? "Aligned" : i === e.XFORM_TALAIRACH ? "Talairach" : i === e.XFORM_MNI_152 ? "MNI" : "Unknown"; + }; + getUnitsCodeString = function(i) { + return i === e.UNITS_METER ? "Meters" : i === e.UNITS_MM ? "Millimeters" : i === e.UNITS_MICRON ? "Microns" : i === e.UNITS_SEC ? "Seconds" : i === e.UNITS_MSEC ? "Milliseconds" : i === e.UNITS_USEC ? "Microseconds" : i === e.UNITS_HZ ? "Hz" : i === e.UNITS_PPM ? "PPM" : i === e.UNITS_RADS ? "Rads" : "Unknown"; + }; + getQformMat() { + return this.convertNiftiQFormToNiftiSForm(this.quatern_b, this.quatern_c, this.quatern_d, this.qoffset_x, this.qoffset_y, this.qoffset_z, this.pixDims[1], this.pixDims[2], this.pixDims[3], this.pixDims[0]); + } + convertNiftiQFormToNiftiSForm(i, t, a3, n2, l2, s, f, r, h2, c3) { + var o = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], u2, m3 = i, E4 = t, g2 = a3, T2, S4, N2; + return o[3][0] = o[3][1] = o[3][2] = 0, o[3][3] = 1, u2 = 1 - (m3 * m3 + E4 * E4 + g2 * g2), u2 < 1e-7 ? (u2 = 1 / Math.sqrt(m3 * m3 + E4 * E4 + g2 * g2), m3 *= u2, E4 *= u2, g2 *= u2, u2 = 0) : u2 = Math.sqrt(u2), T2 = f > 0 ? f : 1, S4 = r > 0 ? r : 1, N2 = h2 > 0 ? h2 : 1, c3 < 0 && (N2 = -N2), o[0][0] = (u2 * u2 + m3 * m3 - E4 * E4 - g2 * g2) * T2, o[0][1] = 2 * (m3 * E4 - u2 * g2) * S4, o[0][2] = 2 * (m3 * g2 + u2 * E4) * N2, o[1][0] = 2 * (m3 * E4 + u2 * g2) * T2, o[1][1] = (u2 * u2 + E4 * E4 - m3 * m3 - g2 * g2) * S4, o[1][2] = 2 * (E4 * g2 - u2 * m3) * N2, o[2][0] = 2 * (m3 * g2 - u2 * E4) * T2, o[2][1] = 2 * (E4 * g2 + u2 * m3) * S4, o[2][2] = (u2 * u2 + g2 * g2 - E4 * E4 - m3 * m3) * N2, o[0][3] = n2, o[1][3] = l2, o[2][3] = s, o; + } + convertNiftiSFormToNEMA(i) { + var t, a3, n2, l2, s, f, r, h2, c3, o, u2, m3, E4, g2, T2, S4, N2, P2, X2, k3, j3, V2, K2, H2, w2, Q4, U2, x2, C3, M3, y4, b2, D, q4; + if (T2 = 0, U2 = [[0, 0, 0], [0, 0, 0], [0, 0, 0]], x2 = [[0, 0, 0], [0, 0, 0], [0, 0, 0]], t = i[0][0], a3 = i[0][1], n2 = i[0][2], l2 = i[1][0], s = i[1][1], f = i[1][2], r = i[2][0], h2 = i[2][1], c3 = i[2][2], o = Math.sqrt(t * t + l2 * l2 + r * r), o === 0 || (t /= o, l2 /= o, r /= o, o = Math.sqrt(a3 * a3 + s * s + h2 * h2), o === 0)) + return null; + if (a3 /= o, s /= o, h2 /= o, o = t * a3 + l2 * s + r * h2, Math.abs(o) > 1e-4) { + if (a3 -= o * t, s -= o * l2, h2 -= o * r, o = Math.sqrt(a3 * a3 + s * s + h2 * h2), o === 0) + return null; + a3 /= o, s /= o, h2 /= o; + } + if (o = Math.sqrt(n2 * n2 + f * f + c3 * c3), o === 0 ? (n2 = l2 * h2 - r * s, f = r * a3 - h2 * t, c3 = t * s - l2 * a3) : (n2 /= o, f /= o, c3 /= o), o = t * n2 + l2 * f + r * c3, Math.abs(o) > 1e-4) { + if (n2 -= o * t, f -= o * l2, c3 -= o * r, o = Math.sqrt(n2 * n2 + f * f + c3 * c3), o === 0) + return null; + n2 /= o, f /= o, c3 /= o; + } + if (o = a3 * n2 + s * f + h2 * c3, Math.abs(o) > 1e-4) { + if (n2 -= o * a3, f -= o * s, c3 -= o * h2, o = Math.sqrt(n2 * n2 + f * f + c3 * c3), o === 0) + return null; + n2 /= o, f /= o, c3 /= o; + } + if (U2[0][0] = t, U2[0][1] = a3, U2[0][2] = n2, U2[1][0] = l2, U2[1][1] = s, U2[1][2] = f, U2[2][0] = r, U2[2][1] = h2, U2[2][2] = c3, u2 = this.nifti_mat33_determ(U2), u2 === 0) + return null; + for (Q4 = -666, X2 = V2 = K2 = H2 = 1, k3 = 2, j3 = 3, E4 = 1; E4 <= 3; E4 += 1) + for (g2 = 1; g2 <= 3; g2 += 1) + if (E4 !== g2) { + for (T2 = 1; T2 <= 3; T2 += 1) + if (!(E4 === T2 || g2 === T2)) + for (x2[0][0] = x2[0][1] = x2[0][2] = x2[1][0] = x2[1][1] = x2[1][2] = x2[2][0] = x2[2][1] = x2[2][2] = 0, S4 = -1; S4 <= 1; S4 += 2) + for (N2 = -1; N2 <= 1; N2 += 2) + for (P2 = -1; P2 <= 1; P2 += 2) + x2[0][E4 - 1] = S4, x2[1][g2 - 1] = N2, x2[2][T2 - 1] = P2, m3 = this.nifti_mat33_determ(x2), m3 * u2 > 0 && (w2 = this.nifti_mat33_mul(x2, U2), o = w2[0][0] + w2[1][1] + w2[2][2], o > Q4 && (Q4 = o, X2 = E4, k3 = g2, j3 = T2, V2 = S4, K2 = N2, H2 = P2)); + } + switch (C3 = M3 = y4 = b2 = D = q4 = "", X2 * V2) { + case 1: + C3 = "X", b2 = "+"; + break; + case -1: + C3 = "X", b2 = "-"; + break; + case 2: + C3 = "Y", b2 = "+"; + break; + case -2: + C3 = "Y", b2 = "-"; + break; + case 3: + C3 = "Z", b2 = "+"; + break; + case -3: + C3 = "Z", b2 = "-"; + break; + } + switch (k3 * K2) { + case 1: + M3 = "X", D = "+"; + break; + case -1: + M3 = "X", D = "-"; + break; + case 2: + M3 = "Y", D = "+"; + break; + case -2: + M3 = "Y", D = "-"; + break; + case 3: + M3 = "Z", D = "+"; + break; + case -3: + M3 = "Z", D = "-"; + break; + } + switch (j3 * H2) { + case 1: + y4 = "X", q4 = "+"; + break; + case -1: + y4 = "X", q4 = "-"; + break; + case 2: + y4 = "Y", q4 = "+"; + break; + case -2: + y4 = "Y", q4 = "-"; + break; + case 3: + y4 = "Z", q4 = "+"; + break; + case -3: + y4 = "Z", q4 = "-"; + break; + } + return C3 + M3 + y4 + b2 + D + q4; + } + nifti_mat33_mul = function(i, t) { + var a3 = [[0, 0, 0], [0, 0, 0], [0, 0, 0]], n2, l2; + for (n2 = 0; n2 < 3; n2 += 1) + for (l2 = 0; l2 < 3; l2 += 1) + a3[n2][l2] = i[n2][0] * t[0][l2] + i[n2][1] * t[1][l2] + i[n2][2] * t[2][l2]; + return a3; + }; + nifti_mat33_determ = function(i) { + var t, a3, n2, l2, s, f, r, h2, c3; + return t = i[0][0], a3 = i[0][1], n2 = i[0][2], l2 = i[1][0], s = i[1][1], f = i[1][2], r = i[2][0], h2 = i[2][1], c3 = i[2][2], t * s * c3 - t * h2 * f - l2 * a3 * c3 + l2 * h2 * n2 + r * a3 * f - r * s * n2; + }; + getExtensionLocation() { + return e.MAGIC_COOKIE + 4; + } + getExtensionSize(i) { + return _3.Utils.getIntAt(i, this.getExtensionLocation(), this.littleEndian); + } + getExtensionCode(i) { + return _3.Utils.getIntAt(i, this.getExtensionLocation() + 4, this.littleEndian); + } + addExtension(i, t = -1) { + t == -1 ? this.extensions.push(i) : this.extensions.splice(t, 0, i), this.vox_offset += i.esize; + } + removeExtension(i) { + let t = this.extensions[i]; + t && (this.vox_offset -= t.esize), this.extensions.splice(i, 1); + } + toArrayBuffer(i = false) { + let n2 = 352; + if (i) + for (let r of this.extensions) + n2 += r.esize; + let l2 = new Uint8Array(n2), s = new DataView(l2.buffer); + s.setInt32(0, 348, this.littleEndian), s.setUint8(39, this.dim_info); + for (let r = 0; r < 8; r++) + s.setUint16(40 + 2 * r, this.dims[r], this.littleEndian); + s.setFloat32(56, this.intent_p1, this.littleEndian), s.setFloat32(60, this.intent_p2, this.littleEndian), s.setFloat32(64, this.intent_p3, this.littleEndian), s.setInt16(68, this.intent_code, this.littleEndian), s.setInt16(70, this.datatypeCode, this.littleEndian), s.setInt16(72, this.numBitsPerVoxel, this.littleEndian), s.setInt16(74, this.slice_start, this.littleEndian); + for (let r = 0; r < 8; r++) + s.setFloat32(76 + 4 * r, this.pixDims[r], this.littleEndian); + s.setFloat32(108, this.vox_offset, this.littleEndian), s.setFloat32(112, this.scl_slope, this.littleEndian), s.setFloat32(116, this.scl_inter, this.littleEndian), s.setInt16(120, this.slice_end, this.littleEndian), s.setUint8(122, this.slice_code), s.setUint8(123, this.xyzt_units), s.setFloat32(124, this.cal_max, this.littleEndian), s.setFloat32(128, this.cal_min, this.littleEndian), s.setFloat32(132, this.slice_duration, this.littleEndian), s.setFloat32(136, this.toffset, this.littleEndian), l2.set(__Buffer$.from(this.description), 148), l2.set(__Buffer$.from(this.aux_file), 228), s.setInt16(252, this.qform_code, this.littleEndian), s.setInt16(254, this.sform_code, this.littleEndian), s.setFloat32(256, this.quatern_b, this.littleEndian), s.setFloat32(260, this.quatern_c, this.littleEndian), s.setFloat32(264, this.quatern_d, this.littleEndian), s.setFloat32(268, this.qoffset_x, this.littleEndian), s.setFloat32(272, this.qoffset_y, this.littleEndian), s.setFloat32(276, this.qoffset_z, this.littleEndian); + let f = this.affine.flat(); + for (let r = 0; r < 12; r++) + s.setFloat32(280 + 4 * r, f[r], this.littleEndian); + if (l2.set(__Buffer$.from(this.intent_name), 328), l2.set(__Buffer$.from(this.magic), 344), i) { + l2.set(Uint8Array.from([1, 0, 0, 0]), 348); + let r = this.getExtensionLocation(); + for (let h2 of this.extensions) + s.setInt32(r, h2.esize, h2.littleEndian), s.setInt32(r + 4, h2.ecode, h2.littleEndian), l2.set(new Uint8Array(h2.edata), r + 8), r += h2.esize; + } else + l2.set(new Uint8Array(4).fill(0), 348); + return l2.buffer; + } + }; + G2.NIFTI1 = et4; +}); +var nt3 = v3((Z) => { + "use strict"; + Object.defineProperty(Z, "__esModule", { value: true }); + Z.NIFTI2 = void 0; + var A4 = Y(), d5 = z2(), st3 = class e { + littleEndian = false; + dim_info = 0; + dims = []; + intent_p1 = 0; + intent_p2 = 0; + intent_p3 = 0; + intent_code = 0; + datatypeCode = 0; + numBitsPerVoxel = 0; + slice_start = 0; + slice_end = 0; + slice_code = 0; + pixDims = []; + vox_offset = 0; + scl_slope = 1; + scl_inter = 0; + xyzt_units = 0; + cal_max = 0; + cal_min = 0; + slice_duration = 0; + toffset = 0; + description = ""; + aux_file = ""; + intent_name = ""; + qform_code = 0; + sform_code = 0; + quatern_b = 0; + quatern_c = 0; + quatern_d = 0; + qoffset_x = 0; + qoffset_y = 0; + qoffset_z = 0; + affine = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]; + magic = "0"; + extensionFlag = [0, 0, 0, 0]; + extensions = []; + extensionSize = 0; + extensionCode = 0; + static MAGIC_COOKIE = 540; + static MAGIC_NUMBER_LOCATION = 4; + static MAGIC_NUMBER = [110, 43, 50, 0, 13, 10, 26, 10]; + static MAGIC_NUMBER2 = [110, 105, 50, 0, 13, 10, 26, 10]; + readHeader(i) { + var t = new DataView(i), a3 = d5.Utils.getIntAt(t, 0, this.littleEndian), n2, l2, s, f, r; + if (a3 !== e.MAGIC_COOKIE && (this.littleEndian = true, a3 = d5.Utils.getIntAt(t, 0, this.littleEndian)), a3 !== e.MAGIC_COOKIE) + throw new Error("This does not appear to be a NIFTI file!"); + for (this.magic = d5.Utils.getStringAt(t, 4, 12), this.datatypeCode = d5.Utils.getShortAt(t, 12, this.littleEndian), this.numBitsPerVoxel = d5.Utils.getShortAt(t, 14, this.littleEndian), n2 = 0; n2 < 8; n2 += 1) + f = 16 + n2 * 8, this.dims[n2] = d5.Utils.getLongAt(t, f, this.littleEndian); + for (this.intent_p1 = d5.Utils.getDoubleAt(t, 80, this.littleEndian), this.intent_p2 = d5.Utils.getDoubleAt(t, 88, this.littleEndian), this.intent_p3 = d5.Utils.getDoubleAt(t, 96, this.littleEndian), n2 = 0; n2 < 8; n2 += 1) + f = 104 + n2 * 8, this.pixDims[n2] = d5.Utils.getDoubleAt(t, f, this.littleEndian); + for (this.vox_offset = d5.Utils.getLongAt(t, 168, this.littleEndian), this.scl_slope = d5.Utils.getDoubleAt(t, 176, this.littleEndian), this.scl_inter = d5.Utils.getDoubleAt(t, 184, this.littleEndian), this.cal_max = d5.Utils.getDoubleAt(t, 192, this.littleEndian), this.cal_min = d5.Utils.getDoubleAt(t, 200, this.littleEndian), this.slice_duration = d5.Utils.getDoubleAt(t, 208, this.littleEndian), this.toffset = d5.Utils.getDoubleAt(t, 216, this.littleEndian), this.slice_start = d5.Utils.getLongAt(t, 224, this.littleEndian), this.slice_end = d5.Utils.getLongAt(t, 232, this.littleEndian), this.description = d5.Utils.getStringAt(t, 240, 320), this.aux_file = d5.Utils.getStringAt(t, 320, 344), this.qform_code = d5.Utils.getIntAt(t, 344, this.littleEndian), this.sform_code = d5.Utils.getIntAt(t, 348, this.littleEndian), this.quatern_b = d5.Utils.getDoubleAt(t, 352, this.littleEndian), this.quatern_c = d5.Utils.getDoubleAt(t, 360, this.littleEndian), this.quatern_d = d5.Utils.getDoubleAt(t, 368, this.littleEndian), this.qoffset_x = d5.Utils.getDoubleAt(t, 376, this.littleEndian), this.qoffset_y = d5.Utils.getDoubleAt(t, 384, this.littleEndian), this.qoffset_z = d5.Utils.getDoubleAt(t, 392, this.littleEndian), l2 = 0; l2 < 3; l2 += 1) + for (s = 0; s < 4; s += 1) + f = 400 + (l2 * 4 + s) * 8, this.affine[l2][s] = d5.Utils.getDoubleAt(t, f, this.littleEndian); + this.affine[3][0] = 0, this.affine[3][1] = 0, this.affine[3][2] = 0, this.affine[3][3] = 1, this.slice_code = d5.Utils.getIntAt(t, 496, this.littleEndian), this.xyzt_units = d5.Utils.getIntAt(t, 500, this.littleEndian), this.intent_code = d5.Utils.getIntAt(t, 504, this.littleEndian), this.intent_name = d5.Utils.getStringAt(t, 508, 524), this.dim_info = d5.Utils.getByteAt(t, 524), t.byteLength > e.MAGIC_COOKIE && (this.extensionFlag[0] = d5.Utils.getByteAt(t, 540), this.extensionFlag[1] = d5.Utils.getByteAt(t, 541), this.extensionFlag[2] = d5.Utils.getByteAt(t, 542), this.extensionFlag[3] = d5.Utils.getByteAt(t, 543), this.extensionFlag[0] && (this.extensions = d5.Utils.getExtensionsAt(t, this.getExtensionLocation(), this.littleEndian, this.vox_offset), this.extensionSize = this.extensions[0].esize, this.extensionCode = this.extensions[0].ecode)); + } + toFormattedString() { + var i = d5.Utils.formatNumber, t = ""; + return t += "Datatype = " + +this.datatypeCode + " (" + this.getDatatypeCodeString(this.datatypeCode) + `) +`, t += "Bits Per Voxel = = " + this.numBitsPerVoxel + ` +`, t += "Image Dimensions (1-8): " + this.dims[0] + ", " + this.dims[1] + ", " + this.dims[2] + ", " + this.dims[3] + ", " + this.dims[4] + ", " + this.dims[5] + ", " + this.dims[6] + ", " + this.dims[7] + ` +`, t += "Intent Parameters (1-3): " + this.intent_p1 + ", " + this.intent_p2 + ", " + this.intent_p3 + ` +`, t += "Voxel Dimensions (1-8): " + i(this.pixDims[0]) + ", " + i(this.pixDims[1]) + ", " + i(this.pixDims[2]) + ", " + i(this.pixDims[3]) + ", " + i(this.pixDims[4]) + ", " + i(this.pixDims[5]) + ", " + i(this.pixDims[6]) + ", " + i(this.pixDims[7]) + ` +`, t += "Image Offset = " + this.vox_offset + ` +`, t += "Data Scale: Slope = " + i(this.scl_slope) + " Intercept = " + i(this.scl_inter) + ` +`, t += "Display Range: Max = " + i(this.cal_max) + " Min = " + i(this.cal_min) + ` +`, t += "Slice Duration = " + this.slice_duration + ` +`, t += "Time Axis Shift = " + this.toffset + ` +`, t += "Slice Start = " + this.slice_start + ` +`, t += "Slice End = " + this.slice_end + ` +`, t += 'Description: "' + this.description + `" +`, t += 'Auxiliary File: "' + this.aux_file + `" +`, t += "Q-Form Code = " + this.qform_code + " (" + this.getTransformCodeString(this.qform_code) + `) +`, t += "S-Form Code = " + this.sform_code + " (" + this.getTransformCodeString(this.sform_code) + `) +`, t += "Quaternion Parameters: b = " + i(this.quatern_b) + " c = " + i(this.quatern_c) + " d = " + i(this.quatern_d) + ` +`, t += "Quaternion Offsets: x = " + this.qoffset_x + " y = " + this.qoffset_y + " z = " + this.qoffset_z + ` +`, t += "S-Form Parameters X: " + i(this.affine[0][0]) + ", " + i(this.affine[0][1]) + ", " + i(this.affine[0][2]) + ", " + i(this.affine[0][3]) + ` +`, t += "S-Form Parameters Y: " + i(this.affine[1][0]) + ", " + i(this.affine[1][1]) + ", " + i(this.affine[1][2]) + ", " + i(this.affine[1][3]) + ` +`, t += "S-Form Parameters Z: " + i(this.affine[2][0]) + ", " + i(this.affine[2][1]) + ", " + i(this.affine[2][2]) + ", " + i(this.affine[2][3]) + ` +`, t += "Slice Code = " + this.slice_code + ` +`, t += "Units Code = " + this.xyzt_units + " (" + this.getUnitsCodeString(A4.NIFTI1.SPATIAL_UNITS_MASK & this.xyzt_units) + ", " + this.getUnitsCodeString(A4.NIFTI1.TEMPORAL_UNITS_MASK & this.xyzt_units) + `) +`, t += "Intent Code = " + this.intent_code + ` +`, t += 'Intent Name: "' + this.intent_name + `" +`, t += "Dim Info = " + this.dim_info + ` +`, t; + } + getExtensionLocation = function() { + return e.MAGIC_COOKIE + 4; + }; + getExtensionSize = A4.NIFTI1.prototype.getExtensionSize; + getExtensionCode = A4.NIFTI1.prototype.getExtensionCode; + addExtension = A4.NIFTI1.prototype.addExtension; + removeExtension = A4.NIFTI1.prototype.removeExtension; + getDatatypeCodeString = A4.NIFTI1.prototype.getDatatypeCodeString; + getTransformCodeString = A4.NIFTI1.prototype.getTransformCodeString; + getUnitsCodeString = A4.NIFTI1.prototype.getUnitsCodeString; + getQformMat = A4.NIFTI1.prototype.getQformMat; + convertNiftiQFormToNiftiSForm = A4.NIFTI1.prototype.convertNiftiQFormToNiftiSForm; + convertNiftiSFormToNEMA = A4.NIFTI1.prototype.convertNiftiSFormToNEMA; + nifti_mat33_mul = A4.NIFTI1.prototype.nifti_mat33_mul; + nifti_mat33_determ = A4.NIFTI1.prototype.nifti_mat33_determ; + toArrayBuffer(i = false) { + let n2 = 544; + if (i) + for (let r of this.extensions) + n2 += r.esize; + let l2 = new Uint8Array(n2), s = new DataView(l2.buffer); + s.setInt32(0, 540, this.littleEndian), l2.set(__Buffer$.from(this.magic), 4), s.setInt16(12, this.datatypeCode, this.littleEndian), s.setInt16(14, this.numBitsPerVoxel, this.littleEndian); + for (let r = 0; r < 8; r++) + s.setBigInt64(16 + 8 * r, BigInt(this.dims[r]), this.littleEndian); + s.setFloat64(80, this.intent_p1, this.littleEndian), s.setFloat64(88, this.intent_p2, this.littleEndian), s.setFloat64(96, this.intent_p3, this.littleEndian); + for (let r = 0; r < 8; r++) + s.setFloat64(104 + 8 * r, this.pixDims[r], this.littleEndian); + s.setBigInt64(168, BigInt(this.vox_offset), this.littleEndian), s.setFloat64(176, this.scl_slope, this.littleEndian), s.setFloat64(184, this.scl_inter, this.littleEndian), s.setFloat64(192, this.cal_max, this.littleEndian), s.setFloat64(200, this.cal_min, this.littleEndian), s.setFloat64(208, this.slice_duration, this.littleEndian), s.setFloat64(216, this.toffset, this.littleEndian), s.setBigInt64(224, BigInt(this.slice_start), this.littleEndian), s.setBigInt64(232, BigInt(this.slice_end), this.littleEndian), l2.set(__Buffer$.from(this.description), 240), l2.set(__Buffer$.from(this.aux_file), 320), s.setInt32(344, this.qform_code, this.littleEndian), s.setInt32(348, this.sform_code, this.littleEndian), s.setFloat64(352, this.quatern_b, this.littleEndian), s.setFloat64(360, this.quatern_c, this.littleEndian), s.setFloat64(368, this.quatern_d, this.littleEndian), s.setFloat64(376, this.qoffset_x, this.littleEndian), s.setFloat64(384, this.qoffset_y, this.littleEndian), s.setFloat64(392, this.qoffset_z, this.littleEndian); + let f = this.affine.flat(); + for (let r = 0; r < 12; r++) + s.setFloat64(400 + 8 * r, f[r], this.littleEndian); + if (s.setInt32(496, this.slice_code, this.littleEndian), s.setInt32(500, this.xyzt_units, this.littleEndian), s.setInt32(504, this.intent_code, this.littleEndian), l2.set(__Buffer$.from(this.intent_name), 508), s.setUint8(524, this.dim_info), i) { + l2.set(Uint8Array.from([1, 0, 0, 0]), 540); + let r = this.getExtensionLocation(); + for (let h2 of this.extensions) + s.setInt32(r, h2.esize, h2.littleEndian), s.setInt32(r + 4, h2.ecode, h2.littleEndian), l2.set(new Uint8Array(h2.edata), r + 8), r += h2.esize; + } else + l2.set(new Uint8Array(4).fill(0), 540); + return l2.buffer; + } + }; + Z.NIFTI2 = st3; +}); +var lt2 = v3((I4) => { + "use strict"; + var Nt2 = I4 && I4.__createBinding || (Object.create ? function(e, i, t, a3) { + a3 === void 0 && (a3 = t); + var n2 = Object.getOwnPropertyDescriptor(i, t); + (!n2 || ("get" in n2 ? !i.__esModule : n2.writable || n2.configurable)) && (n2 = { enumerable: true, get: function() { + return i[t]; + } }), Object.defineProperty(e, a3, n2); + } : function(e, i, t, a3) { + a3 === void 0 && (a3 = t), e[a3] = i[t]; + }), Ut2 = I4 && I4.__setModuleDefault || (Object.create ? function(e, i) { + Object.defineProperty(e, "default", { enumerable: true, value: i }); + } : function(e, i) { + e.default = i; + }), Ft2 = I4 && I4.__importStar || function(e) { + if (e && e.__esModule) + return e; + var i = {}; + if (e != null) + for (var t in e) + t !== "default" && Object.prototype.hasOwnProperty.call(e, t) && Nt2(i, e, t); + return Ut2(i, e), i; + }; + Object.defineProperty(I4, "__esModule", { value: true }); + I4.readExtensionData = I4.readExtension = I4.readImage = I4.hasExtension = I4.readHeader = I4.decompress = I4.isCompressed = I4.isNIFTI = I4.isNIFTI2 = I4.isNIFTI1 = I4.NIFTIEXTENSION = I4.Utils = I4.NIFTI2 = I4.NIFTI1 = void 0; + var St2 = Ft2(xt2("fflate")), F2 = Y(), p3 = nt3(), ht3 = z2(), pt3 = Y(); + Object.defineProperty(I4, "NIFTI1", { enumerable: true, get: function() { + return pt3.NIFTI1; + } }); + var Ct2 = nt3(); + Object.defineProperty(I4, "NIFTI2", { enumerable: true, get: function() { + return Ct2.NIFTI2; + } }); + var Mt3 = z2(); + Object.defineProperty(I4, "Utils", { enumerable: true, get: function() { + return Mt3.Utils; + } }); + var yt3 = tt3(); + Object.defineProperty(I4, "NIFTIEXTENSION", { enumerable: true, get: function() { + return yt3.NIFTIEXTENSION; + } }); + function at3(e, i = false) { + var t, a3, n2, l2; + return e.byteLength < F2.NIFTI1.STANDARD_HEADER_SIZE ? false : (t = new DataView(e), t && (a3 = t.getUint8(F2.NIFTI1.MAGIC_NUMBER_LOCATION)), n2 = t.getUint8(F2.NIFTI1.MAGIC_NUMBER_LOCATION + 1), l2 = t.getUint8(F2.NIFTI1.MAGIC_NUMBER_LOCATION + 2), i && a3 === F2.NIFTI1.MAGIC_NUMBER2[0] && n2 === F2.NIFTI1.MAGIC_NUMBER2[1] && l2 === F2.NIFTI1.MAGIC_NUMBER2[2] ? true : a3 === F2.NIFTI1.MAGIC_NUMBER[0] && n2 === F2.NIFTI1.MAGIC_NUMBER[1] && l2 === F2.NIFTI1.MAGIC_NUMBER[2]); + } + I4.isNIFTI1 = at3; + function rt3(e, i = false) { + var t, a3, n2, l2; + return e.byteLength < F2.NIFTI1.STANDARD_HEADER_SIZE ? false : (t = new DataView(e), a3 = t.getUint8(p3.NIFTI2.MAGIC_NUMBER_LOCATION), n2 = t.getUint8(p3.NIFTI2.MAGIC_NUMBER_LOCATION + 1), l2 = t.getUint8(p3.NIFTI2.MAGIC_NUMBER_LOCATION + 2), i && a3 === p3.NIFTI2.MAGIC_NUMBER2[0] && n2 === p3.NIFTI2.MAGIC_NUMBER2[1] && l2 === p3.NIFTI2.MAGIC_NUMBER2[2] ? true : a3 === p3.NIFTI2.MAGIC_NUMBER[0] && n2 === p3.NIFTI2.MAGIC_NUMBER[1] && l2 === p3.NIFTI2.MAGIC_NUMBER[2]); + } + I4.isNIFTI2 = rt3; + function bt2(e, i = false) { + return at3(e, i) || rt3(e, i); + } + I4.isNIFTI = bt2; + function ft3(e) { + var i, t, a3; + return !!(e && (i = new DataView(e), t = i.getUint8(0), a3 = i.getUint8(1), t === ht3.Utils.GUNZIP_MAGIC_COOKIE1 || a3 === ht3.Utils.GUNZIP_MAGIC_COOKIE2)); + } + I4.isCompressed = ft3; + function _t2(e) { + return St2.decompressSync(new Uint8Array(e)).buffer; + } + I4.decompress = _t2; + function Dt2(e, i = false) { + var t = null; + return ft3(e) && (e = _t2(e)), at3(e, i) ? t = new F2.NIFTI1() : rt3(e, i) && (t = new p3.NIFTI2()), t ? t.readHeader(e) : console.error("That file does not appear to be NIFTI!"), t; + } + I4.readHeader = Dt2; + function qt2(e) { + return e.extensionFlag[0] != 0; + } + I4.hasExtension = qt2; + function Ot3(e, i) { + var t = e.vox_offset, a3 = 1, n2 = 1; + e.dims[4] && (a3 = e.dims[4]), e.dims[5] && (n2 = e.dims[5]); + var l2 = e.dims[1] * e.dims[2] * e.dims[3] * a3 * n2 * (e.numBitsPerVoxel / 8); + return i.slice(t, t + l2); + } + I4.readImage = Ot3; + function Bt2(e, i) { + var t = e.getExtensionLocation(), a3 = e.extensionSize; + return i.slice(t, t + a3); + } + I4.readExtension = Bt2; + function Pt2(e, i) { + var t = e.getExtensionLocation(), a3 = e.extensionSize; + return i.slice(t + 8, t + a3); + } + I4.readExtensionData = Pt2; +}); +var O2 = {}; +At2(O2, { NIFTI1: () => Qt, NIFTI2: () => Ht, NIFTIEXTENSION: () => Vt, Utils: () => Kt2, __esModule: () => vt2, decompress: () => Yt2, default: () => Jt, hasExtension: () => Lt, isCompressed: () => Zt2, isNIFTI: () => Xt, isNIFTI1: () => jt, isNIFTI2: () => kt, readExtension: () => wt2, readExtensionData: () => zt2, readHeader: () => Gt, readImage: () => Rt2 }); +var ct2 = ot3(lt2()); +B2(O2, ot3(lt2())); +var { __esModule: vt2, readExtensionData: zt2, readExtension: wt2, readImage: Rt2, hasExtension: Lt, readHeader: Gt, decompress: Yt2, isCompressed: Zt2, isNIFTI: Xt, isNIFTI2: kt, isNIFTI1: jt, NIFTIEXTENSION: Vt, Utils: Kt2, NIFTI2: Ht, NIFTI1: Qt } = ct2; +var { default: dt, ...Wt } = ct2; +var Jt = dt !== void 0 ? dt : Wt; + +// src/files/nifti.ts +async function extract(buffer, nbytes) { + const result = new Uint8Array(nbytes); + const stream = new ReadableStream({ + start(controller) { + controller.enqueue(buffer); + } + }); + const reader = stream.pipeThrough(new DecompressionStream("gzip")).getReader(); + let offset = 0; + while (offset < nbytes) { + const { value, done } = await reader.read(); + if (done) { + break; + } + result.set(value.subarray(0, Math.min(value.length, nbytes - offset)), offset); + offset += value.length; + } + await reader.cancel(); + return result; +} +async function loadHeader(file) { + try { + const buf = await file.readBytes(1024); + const data = Zt2(buf.buffer) ? await extract(buf, 540) : buf; + const header = Gt(data.buffer); + if (header) { + header.pixdim = header.pixDims; + header.dim = header.dims; + } + return header; + } catch (err) { + logger.warning(`NIfTI file could not be opened or read ${file.path}`); + logger.debug(err); + return; + } +} + +// src/files/dwi.ts +var normalizeEOL2 = (str) => str.replace(/\r\n/g, "\n").replace(/\r/g, "\n"); +function parseBvalBvec(contents) { + return normalizeEOL2(contents).split(/\s*\n/).filter((x2) => x2.match(/\S/)).map((row) => row.split(/\s+/)); +} + +// src/schema/associations.ts +var associationLookup = { + events: { + suffix: "events", + extensions: [".tsv"], + inherit: true, + load: async (file) => { + const columns = await loadTSV(file).catch((e) => { + return /* @__PURE__ */ new Map(); + }); + return { + path: file.path, + onset: columns.get("onset") || [] + }; + } + }, + aslcontext: { + suffix: "aslcontext", + extensions: [".tsv"], + inherit: true, + load: async (file) => { + const columns = await loadTSV(file).catch((e) => { + return /* @__PURE__ */ new Map(); + }); + return { + path: file.path, + n_rows: columns.get("volume_type")?.length || 0, + volume_type: columns.get("volume_type") || [] + }; + } + }, + m0scan: { + suffix: "m0scan", + extensions: [".nii", ".nii.gz"], + inherit: false, + load: (file) => { + return Promise.resolve({ path: file.path }); + } + }, + magnitude: { + suffix: "magnitude", + extensions: [".nii", ".nii.gz"], + inherit: false, + load: (file) => { + return Promise.resolve({ path: file.path }); + } + }, + magnitude1: { + suffix: "magnitude1", + extensions: [".nii", ".nii.gz"], + inherit: false, + load: (file) => { + return Promise.resolve({ path: file.path }); + } + }, + bval: { + suffix: "dwi", + extensions: [".bval"], + inherit: true, + load: async (file) => { + const contents = await file.text(); + const rows = parseBvalBvec(contents); + return { + path: file.path, + n_cols: rows ? rows[0].length : 0, + n_rows: rows ? rows.length : 0, + values: rows[0] + }; + } + }, + bvec: { + suffix: "dwi", + extensions: [".bvec"], + inherit: true, + load: async (file) => { + const contents = await file.text(); + const rows = parseBvalBvec(contents); + if (rows.some((row) => row.length !== rows[0].length)) { + throw { key: "BVEC_ROW_LENGTH" }; + } + return { + path: file.path, + n_cols: rows ? rows[0].length : 0, + n_rows: rows ? rows.length : 0 + }; + } + }, + channels: { + suffix: "channels", + extensions: [".tsv"], + inherit: true, + load: async (file) => { + const columns = await loadTSV(file).catch((e) => { + return /* @__PURE__ */ new Map(); + }); + return { + path: file.path, + type: columns.get("type"), + short_channel: columns.get("short_channel"), + sampling_frequency: columns.get("sampling_frequency") + }; + } + }, + coordsystem: { + suffix: "coordsystem", + extensions: [".json"], + inherit: true, + load: (file) => { + return Promise.resolve({ path: file.path }); + } + } +}; +async function buildAssociations(source, issues) { + const associations = {}; + for (const [key, value] of Object.entries(associationLookup)) { + const { suffix, extensions, inherit, load } = value; + const file = walkBack(source, inherit, extensions, suffix).next().value; + if (file) { + associations[key] = await load(file).catch((error2) => { + if (error2.key) { + issues.addNonSchemaIssue(error2.key, [file]); + } + }); + } + } + return Promise.resolve(associations); +} + +// src/schema/context.ts +var BIDSContextDataset = class { + dataset_description; + options; + files; + tree; + ignored; + modalities; + subjects; + sidecarKeyValidated; + constructor(options, description = {}) { + this.dataset_description = description; + this.files = []; + this.tree = {}; + this.ignored = []; + this.modalities = []; + this.sidecarKeyValidated = /* @__PURE__ */ new Set(); + if (options) { + this.options = options; + } + if (!this.dataset_description.DatasetType && this.dataset_description.GeneratedBy) { + this.dataset_description.DatasetType = "derivative"; + } else if (!this.dataset_description.DatasetType) { + this.dataset_description.DatasetType = "raw"; + } + } +}; +var BIDSContextDatasetSubjects = class { + sub_dirs; + participant_id; + phenotype; + constructor(sub_dirs, participant_id, phenotype) { + this.sub_dirs = sub_dirs ? sub_dirs : []; + this.participant_id = participant_id; + this.phenotype = phenotype; + } +}; +var defaultDsContext = new BIDSContextDataset(); +var BIDSContext = class { + // Internal representation of the file tree + fileTree; + filenameRules; + issues; + file; + suffix; + extension; + entities; + dataset; + subject; + datatype; + modality; + sidecar; + sidecarKeyOrigin; + json; + columns; + associations; + nifti_header; + constructor(fileTree, file, issues, dsContext) { + this.fileTree = fileTree; + this.filenameRules = []; + this.issues = issues; + this.file = file; + const bidsEntities = readEntities(file.name); + this.suffix = bidsEntities.suffix; + this.extension = bidsEntities.extension; + this.entities = bidsEntities.entities; + this.dataset = dsContext ? dsContext : defaultDsContext; + this.subject = {}; + this.datatype = ""; + this.modality = ""; + this.sidecar = {}; + this.sidecarKeyOrigin = {}; + this.columns = new ColumnsMap(); + this.json = {}; + this.associations = {}; + } + get size() { + return this.file.size; + } + get path() { + return this.file.path; + } + /** + * Implementation specific absolute path for the dataset root + * + * In the browser, this is always at the root + */ + get datasetPath() { + return this.fileTree.path; + } + /** + * Walks the fileTree backwards from the current file to the root, + * loading any valid json sidecars found. + * Earlier (deeper) sidecars take precedence over later ones. + */ + async loadSidecar() { + if (this.extension === ".json") { + return; + } + const sidecars = walkBack(this.file); + for (const file of sidecars) { + const json = await file.text().then((text) => JSON.parse(text)).catch((error2) => { + }); + this.sidecar = { ...json, ...this.sidecar }; + Object.keys(json).map((x2) => this.sidecarKeyOrigin[x2] ??= file.path); + } + } + async loadNiftiHeader() { + if (this.extension.startsWith(".nii") && this.dataset.options && !this.dataset.options.ignoreNiftiHeaders) { + this.nifti_header = await loadHeader(this.file); + } + } + async loadColumns() { + if (this.extension !== ".tsv") { + return; + } + this.columns = await loadTSV(this.file).catch((error2) => { + if (error2.key) { + this.issues.addNonSchemaIssue(error2.key, [this.file]); + } + logger.warning( + `tsv file could not be opened by loadColumns '${this.file.path}'` + ); + logger.debug(error2); + return /* @__PURE__ */ new Map(); + }); + return; + } + async loadAssociations() { + this.associations = await buildAssociations(this.file, this.issues); + return; + } + async loadJSON() { + if (this.extension !== ".json") { + return; + } + this.json = await this.file.text().then((text) => JSON.parse(text)).catch((error2) => { + }); + } + // This is currently done for every file. It should be done once for the dataset. + async loadSubjects() { + if (this.dataset.subjects != null) { + return; + } + this.dataset.subjects = new BIDSContextDatasetSubjects(); + this.dataset.subjects.sub_dirs = this.fileTree.directories.filter((dir) => dir.name.startsWith("sub-")).map((dir) => dir.name); + const participants_tsv = this.fileTree.files.find( + (file) => file.name === "participants.tsv" + ); + if (participants_tsv) { + const participantsData = await loadTSV(participants_tsv); + this.dataset.subjects.participant_id = participantsData["participant_id"]; + } + const phenotype_dir = this.fileTree.directories.find( + (dir) => dir.name === "phenotype" + ); + if (phenotype_dir) { + const phenotypeFiles = phenotype_dir.files.filter((file) => file.name.endsWith(".tsv")); + const seen = /* @__PURE__ */ new Set(); + for (const file of phenotypeFiles) { + const phenotypeData = await loadTSV(file); + const participant_id = phenotypeData["participant_id"]; + if (participant_id) { + participant_id.forEach((id3) => seen.add(id3)); + } + } + this.dataset.subjects.phenotype = Array.from(seen); + } + } + async asyncLoads() { + await Promise.allSettled([ + this.loadSubjects(), + this.loadSidecar(), + this.loadColumns(), + this.loadAssociations(), + this.loadNiftiHeader(), + this.loadJSON() + ]); + } +}; + +// src/schema/walk.ts +async function* _walkFileTree(fileTree, root, issues, dsContext) { + for (const file of fileTree.files) { + yield new BIDSContext(root, file, issues, dsContext); + } + for (const dir of fileTree.directories) { + yield* _walkFileTree(dir, root, issues, dsContext); + } + loadTSV.cache.delete(fileTree.path); +} +async function* walkFileTree(fileTree, issues, dsContext) { + yield* _walkFileTree(fileTree, fileTree, issues, dsContext); +} + +// src/utils/objectPathHandler.ts +var hasProp = (obj, prop) => { + return Object.prototype.hasOwnProperty.call(obj, prop); +}; +var objectPathHandler = { + get(target, property) { + let res = target; + if (typeof property === "symbol") { + return res; + } + for (const prop of property.split(".")) { + if (hasProp(res, prop)) { + res = res[prop]; + } else { + return void 0; + } + } + return res; + } +}; + +// https://bids-specification.readthedocs.io/en/latest/schema.json +var schema_default = { schema_version: "0.7.3-dev", bids_version: "1.10.0-dev", meta: { associations: { events: { selectors: ["task in entities", "extension != '.json'"], target: { suffix: "events", extension: ".tsv" }, inherit: true }, aslcontext: { selectors: ["suffix == 'asl'", "match(extension, '\\.nii(\\.gz)?$')"], target: { suffix: "aslcontext", extension: ".tsv" }, inherit: true }, m0scan: { selectors: ["suffix == 'asl'", "match(extension, '\\.nii(\\.gz)?$')"], target: { suffix: "m0scan", extension: [".nii", ".nii.gz"] }, inherit: false }, magnitude: { selectors: ["suffix == 'fieldmap'", "match(extension, '\\.nii(\\.gz)?$')"], target: { suffix: "magnitude", extension: [".nii", ".nii.gz"] }, inherit: false }, magnitude1: { selectors: ["match(suffix, 'phase(diff|1)$')", "match(extension, '\\.nii(\\.gz)?$')"], target: { suffix: "magnitude1", extension: [".nii", ".nii.gz"] }, inherit: false }, bval: { selectors: ["suffix == 'dwi'", "match(extension, '\\.nii(\\.gz)?$')"], target: { extension: ".bval" }, inherit: true }, bvec: { selectors: ["suffix == 'dwi'", "match(extension, '\\.nii(\\.gz)?$')"], target: { extension: ".bvec" }, inherit: true }, channels: { selectors: ["intersects([suffix], ['eeg', 'ieeg', 'meg', 'nirs', 'motion', 'optodes'])", "extension != '.json'"], target: { suffix: "channels", extension: ".tsv" }, inherit: true }, coordsystem: { selectors: ["intersects([suffix], ['eeg', 'ieeg', 'meg', 'nirs', 'motion', 'electrodes', 'optodes'])", "extension != '.json'"], target: { suffix: "coordsystem", extension: ".json" }, inherit: true } }, context: { context: { type: "object", properties: { schema: { description: "The BIDS specification schema", type: "object" }, dataset: { description: "Properties and contents of the entire dataset", type: "object", properties: { dataset_description: { description: "Contents of /dataset_description.json", type: "object" }, files: { description: "List of all files in dataset", type: "array" }, tree: { description: "Tree view of all files in dataset", type: "object" }, ignored: { description: "Set of ignored files", type: "array" }, datatypes: { description: "Data types present in the dataset", type: "array" }, modalities: { description: "Modalities present in the dataset", type: "array" }, subjects: { description: "Collections of subjects in dataset", type: "object", properties: { sub_dirs: { description: "Subjects as determined by sub-*/ directories", type: "array", items: { type: "string" } }, participant_id: { description: "The participant_id column of participants.tsv", type: "array", items: { type: "string" } }, phenotype: { description: "The union of participant_id columns in phenotype files", type: "array", items: { type: "string" } } } } } }, subject: { description: "Properties and contents of the current subject", type: "object", properties: { sessions: { description: "Collections of sessions in subject", type: "object", properties: { ses_dirs: { description: "Sessions as determined by ses-*/ directories", type: "array", items: { type: "string" } }, session_id: { description: "The session_id column of sessions.tsv", type: "array", items: { type: "string" } }, phenotype: { description: "The union of session_id columns in phenotype files", type: "array", items: { type: "string" } } } } } }, path: { description: "Path of the current file", type: "string" }, size: { description: "Length of the current file in bytes", type: "int" }, entities: { description: "Entities parsed from the current filename", type: "object" }, datatype: { description: "Datatype of current file, for examples, anat", type: "string" }, suffix: { description: "Suffix of current file", type: "string" }, extension: { description: "Extension of current file including initial dot", type: "string" }, modality: { description: "Modality of current file, for examples, MRI", type: "string" }, sidecar: { description: "Sidecar metadata constructed via the inheritance principle", type: "object" }, associations: { description: "Associated files, indexed by suffix, selected according to the inheritance principle\n", type: "object", properties: { events: { description: "Events file", type: "object", properties: { path: { description: "Path to associated events file", type: "string" }, onset: { description: "Contents of the onset column", type: "array", items: { type: "string" } } } }, aslcontext: { description: "ASL context file", type: "object", properties: { path: { description: "Path to associated aslcontext file", type: "string" }, n_rows: { description: "Number of rows in aslcontext.tsv", type: "integer" }, volume_type: { description: "Contents of the volume_type column", type: "array", items: { type: "string" } } } }, m0scan: { description: "M0 scan file", type: "object", properties: { path: { description: "Path to associated M0 scan file", type: "string" } } }, magnitude: { description: "Magnitude image file", type: "object", properties: { path: { description: "Path to associated magnitude file", type: "string" } } }, magnitude1: { description: "Magnitude1 image file", type: "object", properties: { path: { description: "Path to associated magnitude1 file", type: "string" } } }, bval: { description: "B value file", type: "object", properties: { path: { description: "Path to associated bval file", type: "string" }, n_cols: { description: "Number of columns in bval file", type: "integer" }, n_rows: { description: "Number of rows in bval file", type: "integer" } } }, bvec: { description: "B vector file", type: "object", properties: { path: { description: "Path to associated bvec file", type: "string" }, n_cols: { description: "Number of columns in bvec file", type: "integer" }, n_rows: { description: "Number of rows in bvec file", type: "integer" } } }, channels: { description: "Channels file", type: "object", properties: { path: { description: "Path to associated channels file", type: "string" }, type: { description: "Contents of the type column", type: "array", items: { type: "string" } } } }, coordsystem: { description: "Coordinate system file", type: "object", properties: { path: { description: "Path to associated coordsystem file", type: "string" } } } } }, columns: { description: "TSV columns, indexed by column header, values are arrays with column contents", type: "object", additionalProperties: { type: "array" } }, json: { description: "Contents of the current JSON file", type: "object" }, gzip: { description: "Parsed contents of gzip header", type: "object", properties: { timestamp: { description: "Modification time, unix timestamp", type: "number" }, filename: { description: "Filename", type: "string" }, comment: { description: "Comment", type: "string" } } }, nifti_header: { name: "NIfTI Header", description: "Parsed contents of NIfTI header referenced elsewhere in schema.", type: "object", properties: { dim_info: { name: "Dimension Information", description: "Metadata about dimensions data.", type: "object", properties: { freq: { name: "Frequency", description: "These fields encode which spatial dimension (1, 2, or 3).", type: "integer" }, phase: { name: "Phase", description: "Corresponds to which acquisition dimension for MRI data.", type: "integer" }, slice: { name: "Slice", description: "Slice dimensions.", type: "integer" } } }, dim: { name: "Data Dimensions", description: "Data seq dimensions.", type: "array", minItems: 8, maxItems: 8, items: { type: "integer" } }, pixdim: { name: "Pixel Dimension", description: "Grid spacings (unit per dimension).", type: "array", minItems: 8, maxItems: 8, items: { type: "number" } }, shape: { name: "Data shape", description: "Data array shape, equal to dim[1:dim[0] + 1]", type: "array", minItems: 0, maxItems: 7, items: { type: "integer" } }, voxel_sizes: { name: "Voxel sizes", description: "Voxel sizes, equal to pixdim[1:dim[0] + 1]", type: "array", minItems: 0, maxItems: 7, items: { type: "number" } }, xyzt_units: { name: "XYZT Units", description: "Units of pixdim[1..4]", type: "object", properties: { xyz: { name: "XYZ Units", description: "String representing the unit of voxel spacing.", type: "string", enum: ["unknown", "meter", "mm", "um"] }, t: { name: "Time Unit", description: "String representing the unit of inter-volume intervals.", type: "string", enum: ["unknown", "sec", "msec", "usec"] } } }, qform_code: { name: "qform code", description: "Use of the quaternion fields.", type: "integer" }, sform_code: { name: "sform code", description: "Use of the affine fields.", type: "integer" } } }, ome: { name: "Open Microscopy Environment fields", description: "Parsed contents of OME-XML header, which may be found in OME-TIFF or OME-ZARR files", type: "object", properties: { PhysicalSizeX: { name: "PhysicalSizeX", description: "Pixels / @PhysicalSizeX", type: "float" }, PhysicalSizeY: { name: "PhysicalSizeY", description: "Pixels / @PhysicalSizeY", type: "float" }, PhysicalSizeZ: { name: "PhysicalSizeZ", description: "Pixels / @PhysicalSizeZ", type: "float" }, PhysicalSizeXUnit: { name: "PhysicalSizeXUnit", description: "Pixels / @PhysicalSizeXUnit", type: "string" }, PhysicalSizeYUnit: { name: "PhysicalSizeYUnit", description: "Pixels / @PhysicalSizeYUnit", type: "string" }, PhysicalSizeZUnit: { name: "PhysicalSizeZUnit", description: "Pixels / @PhysicalSizeZUnit", type: "string" } } }, tiff: { name: "TIFF", description: "TIFF file format metadata", type: "object", properties: { version: { name: "Version", description: "TIFF file format version (the second 2-byte block)", type: "int" } } } } } }, expression_tests: [{ expression: "sidecar.MissingValue", result: null }, { expression: "null.anything", result: null }, { expression: "(null)", result: null }, { expression: "null[0]", result: null }, { expression: "null && true", result: null }, { expression: "true && null", result: null }, { expression: "false && null", result: false }, { expression: "true || null", result: true }, { expression: "null || true", result: true }, { expression: "false || null", result: null }, { expression: "!null", result: true }, { expression: "intersects([], null)", result: false }, { expression: "intersects(null, [])", result: false }, { expression: "match(null, 'pattern')", result: null }, { expression: "match('string', null)", result: false }, { expression: "substr(null, 1, 4)", result: null }, { expression: "substr('string', null, 4)", result: null }, { expression: "substr('string', 1, null)", result: null }, { expression: "min(null)", result: null }, { expression: "max(null)", result: null }, { expression: "length(null)", result: null }, { expression: "type(null)", result: "null" }, { expression: "null == false", result: false }, { expression: "null == true", result: false }, { expression: "null != false", result: true }, { expression: "null != true", result: true }, { expression: "null != 1.5", result: true }, { expression: "null == null", result: true }, { expression: "null == 1", result: false }, { expression: '"VolumeTiming" in null', result: null }, { expression: 'exists(null, "bids-uri")', result: 0 }, { expression: "exists([], null)", result: 0 }, { expression: "true || sidecar.MissingValue", result: true }, { expression: "1 + 2", result: 3 }, { expression: '"cat" + "dog"', result: "catdog" }, { expression: "match('string', '.*')", result: true }, { expression: "match('', '.')", result: false }, { expression: "substr('string', 1, 4)", result: "tri" }, { expression: "substr('string', 0, 20)", result: "string" }, { expression: "type(1)", result: "number" }, { expression: "type([])", result: "array" }, { expression: "type({})", result: "object" }, { expression: "type(true)", result: "boolean" }, { expression: "intersects([1], [1, 2])", result: true }, { expression: "intersects([1], [])", result: false }, { expression: "length([1, 2, 3])", result: 3 }, { expression: "length([])", result: 0 }, { expression: "count([1, 2, 3], 1)", result: 1 }, { expression: 'index(["i", "j", "k"], "i")', result: 0 }, { expression: 'index(["i", "j", "k"], "j")', result: 1 }, { expression: 'index(["i", "j", "k"], "x")', result: null }, { expression: "sorted([3, 2, 1])", result: [1, 2, 3] }, { expression: 'min([-1, "n/a", 1])', result: -1 }, { expression: 'max([-1, "n/a", 1])', result: 1 }, { expression: "[3, 2, 1][0]", result: 3 }, { expression: '"string"[0]', result: "s" }], versions: ["1.9.0", "1.8.0", "1.7.0", "1.6.0", "1.5.0", "1.4.1", "1.4.0", "1.3.0", "1.2.2", "1.2.1", "1.2.0", "1.1.2", "1.1.1", "1.1.0", "1.0.2", "1.0.1", "1.0.0"] }, objects: { columns: { HED: { name: "HED", display_name: "HED Tag", description: "Hierarchical Event Descriptor (HED) Tag.\nSee the [HED Appendix](SPEC_ROOT/appendices/hed.md) for details.\n", type: "string" }, abbreviation: { name: "abbreviation", display_name: "Abbreviation", description: "The unique label abbreviation\n", type: "string" }, acq_time__scans: { name: "acq_time", display_name: "Scan acquisition time", description: "Acquisition time refers to when the first data point in each run was acquired.\nFurthermore, if this header is provided, the acquisition times of all files\nfrom the same recording MUST be identical.\nDatetime format and their anonymization are described in\n[Units](SPEC_ROOT/common-principles.md#units).\n", type: "string", format: "datetime" }, acq_time__sessions: { name: "acq_time", display_name: "Session acquisition time", description: "Acquisition time refers to when the first data point of the first run was acquired.\nDatetime format and their anonymization are described in\n[Units](SPEC_ROOT/common-principles.md#units).\n", type: "string", format: "datetime" }, age: { name: "age", display_name: "Subject age", description: "Numeric value in years (float or integer value).\n\nIt is recommended to tag participant ages that are 89 or higher as 89+,\nfor privacy purposes.\n", type: "number", unit: "year" }, cardiac: { name: "cardiac", display_name: "Cardiac measurement", description: "continuous pulse measurement\n", type: "number" }, channel: { name: "channel", display_name: "Channel", description: 'Channel(s) associated with an event.\nIf multiple channels are specified, they MUST be separated by a delimiter\nspecified in the `"Delimiter"` field describing the `channel` column.\nFor example, channels separated with a comma (`,`) require the `events.json`\nfile to contain `"channel": {"Delimiter": ","}`.\nIn the absence of a delimiter, tools MUST interpret any character as being part\nof a channel name.\n', type: "string" }, color: { name: "color", display_name: "Color label", description: "Hexadecimal. Label color for visualization.\n", type: "string", unit: "hexadecimal" }, component: { name: "component", display_name: "Component", description: "Description of the spatial axis or label of quaternion component associated with the channel.\nFor example, `x`,`y`,`z` for position channels,\nor `quat_x`, `quat_y`, `quat_z`, `quat_w` for quaternion orientation channels.\n", type: "string", enum: ["x", "y", "z", "quat_x", "quat_y", "quat_z", "quat_w", "n/a"] }, detector__channels: { name: "detector", display_name: "Detector Name", description: "Name of the detector as specified in the `*_optodes.tsv` file.\n`n/a` for channels that do not contain NIRS signals (for example, acceleration).\n", anyOf: [{ type: "string" }, { type: "string", enum: ["n/a"] }] }, detector_type: { name: "detector_type", display_name: "Detector Type", description: "The type of detector. Only to be used if the field `DetectorType` in `*_nirs.json` is set to `mixed`.\n", anyOf: [{ type: "string" }] }, derived_from: { name: "derived_from", display_name: "Derived from", description: "`sample-