From d70a0f6fef90ef190644d4eaf0d92ee19c0d881d Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Thu, 19 Mar 2026 17:54:55 +0000 Subject: [PATCH 01/29] feat: scaffold app with cdk --- .gitignore | 2 + Makefile | 32 + package-lock.json | 1412 +++++++++++++++-- package.json | 1 + packages/cdk/bin/PfPApiApp.ts | 41 + packages/cdk/bin/PfPApiSandboxApp.ts | 11 + packages/cdk/cdk.json | 76 + packages/cdk/nagSuppressions.ts | 51 + packages/cdk/package.json | 23 + packages/cdk/resources/Apis.ts | 65 + packages/cdk/resources/Functions.ts | 138 ++ .../GetMyPrescriptions.ts | 76 + packages/cdk/resources/StateMachines.ts | 58 + packages/cdk/scripts/deleteMainStacks.ts | 11 + packages/cdk/scripts/deletePrStacks.ts | 10 + packages/cdk/stacks/PfPApiSandboxStack.ts | 10 + packages/cdk/stacks/PfPApiStack.ts | 57 + packages/cdk/tsconfig.json | 30 + 18 files changed, 1930 insertions(+), 174 deletions(-) create mode 100644 packages/cdk/bin/PfPApiApp.ts create mode 100644 packages/cdk/bin/PfPApiSandboxApp.ts create mode 100644 packages/cdk/cdk.json create mode 100644 packages/cdk/nagSuppressions.ts create mode 100644 packages/cdk/package.json create mode 100644 packages/cdk/resources/Apis.ts create mode 100644 packages/cdk/resources/Functions.ts create mode 100644 packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts create mode 100644 packages/cdk/resources/StateMachines.ts create mode 100644 packages/cdk/scripts/deleteMainStacks.ts create mode 100644 packages/cdk/scripts/deletePrStacks.ts create mode 100644 packages/cdk/stacks/PfPApiSandboxStack.ts create mode 100644 packages/cdk/stacks/PfPApiStack.ts create mode 100644 packages/cdk/tsconfig.json diff --git a/.gitignore b/.gitignore index 3bf963f19..bb7cf1944 100644 --- a/.gitignore +++ b/.gitignore @@ -5,8 +5,10 @@ **/public/ **/coverage/ **/node_modules/ +cdk.out/ .#* __pycache__/ +.env .envrc .idea .vscode/settings.json diff --git a/Makefile b/Makefile index a135cc27f..377ee3337 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,20 @@ +SHELL = /bin/bash +.SHELLFLAGS = -o pipefail -c +stack_name ?= pfp-api +export CDK_APP_NAME=PfPApiApp +export CDK_CONFIG_stackName=${stack_name} +export CDK_CONFIG_versionNumber=undefined +export CDK_CONFIG_commitId=undefined +export CDK_CONFIG_isPullRequest=true # Turns off mTLS and drift detection when true +export CDK_CONFIG_environment=dev +export CDK_CONFIG_logRetentionInDays=30 +export CDK_CONFIG_logLevel=DEBUG +export CDK_CONFIG_targetSpineServer=https://example.org +export CDK_CONFIG_targetServiceSearchServer=example.org +export CDK_CONFIG_toggleGetStatusUpdates=false +export CDK_CONFIG_allowNhsNumberOverride=false +export CDK_CONFIG_forwardCsocLogs=false + .PHONY: install build test publish release clean install-node install-python install-hooks sam-build sam-build-sandbox sam-run-local sam-sync sam-sync-sandbox sam-deploy sam-delete sam-list-endpoints sam-list-resources sam-list-outputs sam-validate sam-validate-sandbox sam-deploy-package compile-node compile compile-specification download-get-secrets-layer lint-node lint test clean deep-clean install: install-python install-hooks install-node @@ -104,6 +121,18 @@ sam-deploy-package: guard-artifact_bucket guard-artifact_bucket_prefix guard-sta EnableAlerts=$$ENABLE_ALERTS \ StateMachineLogLevel=$$STATE_MACHINE_LOG_LEVEL +cdk-deploy: + CDK_CONFIG_stackName=${stack_name} REQUIRE_APPROVAL="$${REQUIRE_APPROVAL:-any-change}" npm run cdk-deploy --workspace packages/cdk + +cdk-synth: download-get-secrets-layer + CDK_CONFIG_stackName=${stack_name} npm run cdk-synth --workspace packages/cdk + +cdk-diff: + CDK_CONFIG_stackName=${stack_name} npm run cdk-diff --workspace packages/cdk + +cdk-watch: + CDK_CONFIG_stackName=${stack_name} REQUIRE_APPROVAL="$${REQUIRE_APPROVAL:-any-change}" npm run cdk-watch --workspace packages/cdk + compile-node: npx tsc --build tsconfig.build.json @@ -128,6 +157,7 @@ download-get-secrets-layer: fi lint-node: compile-node + npm run lint --workspace packages/cdk npm run lint --workspace packages/capabilityStatement npm run lint --workspace packages/getMyPrescriptions npm run lint --workspace packages/enrichPrescriptions @@ -142,6 +172,7 @@ lint: lint-node actionlint shellcheck cfn-lint echo "Linting complete" test: compile + npm run test --workspace packages/cdk npm run test --workspace packages/capabilityStatement npm run test --workspace packages/getMyPrescriptions npm run test --workspace packages/enrichPrescriptions @@ -153,6 +184,7 @@ test: compile npm run test --workspace packages/common/testing clean: + rm -rf packages/cdk/coverage rm -rf packages/capabilityStatement/coverage rm -rf packages/getMyPrescriptions/coverage rm -rf packages/enrichPrescriptions/coverage diff --git a/package-lock.json b/package-lock.json index 26166189d..437bae651 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "MIT", "workspaces": [ + "packages/cdk", "packages/capabilityStatement", "packages/getMyPrescriptions", "packages/enrichPrescriptions", @@ -38,6 +39,132 @@ "vitest": "^4.1.0" } }, + "node_modules/@aws-cdk/asset-awscli-v1": { + "version": "2.2.263", + "resolved": "https://registry.npmjs.org/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.263.tgz", + "integrity": "sha512-X9JvcJhYcb7PHs8R7m4zMablO5C9PGb/hYfLnxds9h/rKJu6l7MiXE/SabCibuehxPnuO/vk+sVVJiUWrccarQ==", + "license": "Apache-2.0" + }, + "node_modules/@aws-cdk/asset-node-proxy-agent-v6": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.1.tgz", + "integrity": "sha512-We4bmHaowOPHr+IQR4/FyTGjRfjgBj4ICMjtqmJeBDWad3Q/6St12NT07leNtyuukv2qMhtSZJQorD8KpKTwRA==", + "license": "Apache-2.0" + }, + "node_modules/@aws-cdk/cloud-assembly-schema": { + "version": "52.2.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-52.2.0.tgz", + "integrity": "sha512-ourZjixQ/UfsZc7gdk3vt1eHBODMUjQTYYYCY3ZX8fiXyHtWNDAYZPrXUK96jpCC2fLP+tfHTJrBjZ563pmcEw==", + "bundleDependencies": [ + "jsonschema", + "semver" + ], + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "jsonschema": "~1.4.1", + "semver": "^7.7.3" + }, + "engines": { + "node": ">= 18.0.0" + } + }, + "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema": { + "version": "1.4.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver": { + "version": "7.7.3", + "inBundle": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@aws-crypto/crc32": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz", + "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-crypto/crc32c": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz", + "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha1-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz", + "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-crypto/sha256-browser": { "version": "5.2.0", "license": "Apache-2.0", @@ -205,6 +332,175 @@ } } }, + "node_modules/@aws-sdk/client-cloudformation": { + "version": "3.1011.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.1011.0.tgz", + "integrity": "sha512-v7qixZ+o2+t5f+Y+9qN5EyEejdkGpeDxhkRBaW9xOlE41owhsv7y1EmCsW1Lo5W+0krm0r/09w/TWy7rLHa57Q==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.20", + "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.21", + "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.7", + "@smithy/config-resolver": "^4.4.11", + "@smithy/core": "^3.23.11", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.25", + "@smithy/middleware-retry": "^4.4.42", + "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.4.16", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.5", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.41", + "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/client-route-53": { + "version": "3.1011.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-route-53/-/client-route-53-3.1011.0.tgz", + "integrity": "sha512-niEdBaAuouO9HVhzv9U7yOsqP3qNQd0F7/igVIu9jXV3yf1ljQMeUa1wAPhZ8X/lIEaXce1Yp7+cdwHTfO8IwQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.20", + "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-sdk-route53": "^3.972.10", + "@aws-sdk/middleware-user-agent": "^3.972.21", + "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.7", + "@smithy/config-resolver": "^4.4.11", + "@smithy/core": "^3.23.11", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.25", + "@smithy/middleware-retry": "^4.4.42", + "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.4.16", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.5", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.41", + "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/client-s3": { + "version": "3.1011.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1011.0.tgz", + "integrity": "sha512-jY7CGX+vfM/DSi4K8UwaZKoXnhqchmAbKFB1kIuHMfPPqW7l3jC/fUVDb95/njMsB2ymYOTusZEzoCTeUB/4qA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha1-browser": "5.2.0", + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.20", + "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/middleware-bucket-endpoint": "^3.972.8", + "@aws-sdk/middleware-expect-continue": "^3.972.8", + "@aws-sdk/middleware-flexible-checksums": "^3.974.0", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-location-constraint": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-sdk-s3": "^3.972.20", + "@aws-sdk/middleware-ssec": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.21", + "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/signature-v4-multi-region": "^3.996.8", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.7", + "@smithy/config-resolver": "^4.4.11", + "@smithy/core": "^3.23.11", + "@smithy/eventstream-serde-browser": "^4.2.12", + "@smithy/eventstream-serde-config-resolver": "^4.3.12", + "@smithy/eventstream-serde-node": "^4.2.12", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-blob-browser": "^4.2.13", + "@smithy/hash-node": "^4.2.12", + "@smithy/hash-stream-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/md5-js": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.25", + "@smithy/middleware-retry": "^4.4.42", + "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.4.16", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.5", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.41", + "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-stream": "^4.5.19", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/client-secrets-manager": { "version": "3.1009.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.1009.0.tgz", @@ -260,6 +556,7 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.1009.0.tgz", "integrity": "sha512-xhViVpDZpNyqIj09uSVjNnibeL22FcQUNLh7tZL9zfNzs5/Z/ttBOHMiiVhpXI4TF39012ZMw48zavw62VN2zw==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", @@ -330,6 +627,19 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/crc64-nvme": { + "version": "3.972.5", + "resolved": "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.5.tgz", + "integrity": "sha512-2VbTstbjKdT+yKi8m7b3a9CiVac+pL/IY2PHJwsaGkkHmuuqkJZIErPck1h6P3T9ghQMLSdMPyW6Qp7Di5swFg==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/credential-provider-env": { "version": "3.972.18", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.18.tgz", @@ -488,28 +798,32 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/middleware-bucket-endpoint": { "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.8.tgz", - "integrity": "sha512-wAr2REfKsqoKQ+OkNqvOShnBoh+nkPurDKW7uAeVSu6kUECnWlSJiPvnoqxGlfousEY/v9LfS9sNc46hjSYDIQ==", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.8.tgz", + "integrity": "sha512-WR525Rr2QJSETa9a050isktyWi/4yIGcmY3BQ1kpHqb0LqUglQHCS8R27dTJxxWNZvQ0RVGtEZjTCbZJpyF3Aw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-arn-parser": "^3.972.3", + "@smithy/node-config-provider": "^4.3.12", "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", + "@smithy/util-config-provider": "^4.2.2", "tslib": "^2.6.2" }, "engines": { "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/middleware-expect-continue": { "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.8.tgz", - "integrity": "sha512-CWl5UCM57WUFaFi5kB7IBY1UmOeLvNZAZ2/OZ5l20ldiJ3TiIz1pC65gYj8X0BCPWkeR1E32mpsCk1L1I4n+lA==", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.8.tgz", + "integrity": "sha512-5DTBTiotEES1e2jOHAq//zyzCjeMB78lEHd35u15qnrid4Nxm7diqIf9fQQ3Ov0ChH1V3Vvt13thOnrACmfGVQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "^3.973.6", + "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", "tslib": "^2.6.2" }, @@ -517,17 +831,138 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.972.8.tgz", - "integrity": "sha512-BnnvYs2ZEpdlmZ2PNlV2ZyQ8j8AEkMTjN79y/YA475ER1ByFYrkVR85qmhni8oeTaJcDqbx364wDpitDAA/wCA==", + "node_modules/@aws-sdk/middleware-flexible-checksums": { + "version": "3.974.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.0.tgz", + "integrity": "sha512-BmdDjqvnuYaC4SY7ypHLXfCSsGYGUZkjCLSZyUAAYn1YT28vbNMJNDwhlfkvvE+hQHG5RJDlEmYuvBxcB9jX1g==", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/crc32": "5.2.0", + "@aws-crypto/crc32c": "5.2.0", + "@aws-crypto/util": "5.2.0", + "@aws-sdk/core": "^3.973.20", + "@aws-sdk/crc64-nvme": "^3.972.5", "@aws-sdk/types": "^3.973.6", - "@aws/lambda-invoke-store": "^0.2.2", + "@smithy/is-array-buffer": "^4.2.2", + "@smithy/node-config-provider": "^4.3.12", "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-stream": "^4.5.19", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.8.tgz", + "integrity": "sha512-wAr2REfKsqoKQ+OkNqvOShnBoh+nkPurDKW7uAeVSu6kUECnWlSJiPvnoqxGlfousEY/v9LfS9sNc46hjSYDIQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/protocol-http": "^5.3.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-location-constraint": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.8.tgz", + "integrity": "sha512-KaUoFuoFPziIa98DSQsTPeke1gvGXlc5ZGMhy+b+nLxZ4A7jmJgLzjEF95l8aOQN2T/qlPP3MrAyELm8ExXucw==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.8.tgz", + "integrity": "sha512-CWl5UCM57WUFaFi5kB7IBY1UmOeLvNZAZ2/OZ5l20ldiJ3TiIz1pC65gYj8X0BCPWkeR1E32mpsCk1L1I4n+lA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.972.8.tgz", + "integrity": "sha512-BnnvYs2ZEpdlmZ2PNlV2ZyQ8j8AEkMTjN79y/YA475ER1ByFYrkVR85qmhni8oeTaJcDqbx364wDpitDAA/wCA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@aws/lambda-invoke-store": "^0.2.2", + "@smithy/protocol-http": "^5.3.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-route53": { + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-route53/-/middleware-sdk-route53-3.972.10.tgz", + "integrity": "sha512-eVSTduHxtUd1M/KxKFiAHj1Q9djzx428iPe7Yd8yJdEsgnVH0wPFsCK/ExB0Rv/yIYlVXdBlFJmMj0FgRj4crQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-s3": { + "version": "3.972.20", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.20.tgz", + "integrity": "sha512-yhva/xL5H4tWQgsBjwV+RRD0ByCzg0TcByDCLp3GXdn/wlyRNfy8zsswDtCvr1WSKQkSQYlyEzPuWkJG0f5HvQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/core": "^3.973.20", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-arn-parser": "^3.972.3", + "@smithy/core": "^3.23.11", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/protocol-http": "^5.3.12", + "@smithy/signature-v4": "^5.3.12", + "@smithy/smithy-client": "^4.12.5", + "@smithy/types": "^4.13.1", + "@smithy/util-config-provider": "^4.2.2", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-stream": "^4.5.19", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-ssec": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.8.tgz", + "integrity": "sha512-wqlK0yO/TxEC2UsY9wIlqeeutF6jjLe0f96Pbm40XscTo57nImUk9lBcw0dPgsm0sppFtAkSlDrfpK+pC30Wqw==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=20.0.0" @@ -617,6 +1052,23 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/signature-v4-multi-region": { + "version": "3.996.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.8.tgz", + "integrity": "sha512-n1qYFD+tbqZuyskVaxUE+t10AUz9g3qzDw3Tp6QZDKmqsjfDmZBd4GIk2EKJJNtcCBtE5YiUjDYA+3djFAFBBg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/middleware-sdk-s3": "^3.972.20", + "@aws-sdk/types": "^3.973.6", + "@smithy/protocol-http": "^5.3.12", + "@smithy/signature-v4": "^5.3.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/token-providers": { "version": "3.1009.0", "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1009.0.tgz", @@ -648,6 +1100,18 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/util-arn-parser": { + "version": "3.972.3", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.972.3.tgz", + "integrity": "sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/util-endpoints": { "version": "3.996.5", "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.996.5.tgz", @@ -1632,6 +2096,21 @@ "uninstall": "^0.0.0" } }, + "node_modules/@nhsdigital/eps-cdk-constructs": { + "version": "1.6.0", + "resolved": "file:nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "integrity": "sha512-pXQR0pWmBeaRdHoD6pLvbjKvDJnrorqaMiemCqK2TfUWM3B77aj14YdeaUo8lAC6tDfNYAr/zzao+DjT04z5fA==", + "license": "MIT", + "dependencies": { + "@aws-sdk/client-cloudformation": "^3.1008.0", + "@aws-sdk/client-route-53": "^3.1008.0", + "@aws-sdk/client-s3": "^3.1008.0", + "aws-cdk": "^2.1111.0", + "aws-cdk-lib": "^2.243.0", + "cdk-nag": "^2.37.52", + "constructs": "^10.5.1" + } + }, "node_modules/@nhsdigital/eps-spine-client": { "version": "2.1.78", "license": "MIT", @@ -1660,6 +2139,7 @@ "version": "1.9.0", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=8.0.0" } @@ -2565,6 +3045,31 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/chunked-blob-reader": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-5.2.2.tgz", + "integrity": "sha512-St+kVicSyayWQca+I1rGitaOEH6uKgE8IUWoYnnEX26SWdWQcL6LvMSD19Lg+vYHKdT9B2Zuu7rd3i6Wnyb/iw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/chunked-blob-reader-native": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-4.2.3.tgz", + "integrity": "sha512-jA5k5Udn7Y5717L86h4EIv06wIr3xn8GM1qHRi/Nf31annXcXHJjBKvgztnbn2TxH3xWrPBfgwHsOwZf0UmQWw==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-base64": "^4.3.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/config-resolver": { "version": "4.4.11", "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.11.tgz", @@ -2619,6 +3124,76 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/eventstream-codec": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.12.tgz", + "integrity": "sha512-FE3bZdEl62ojmy8x4FHqxq2+BuOHlcxiH5vaZ6aqHJr3AIZzwF5jfx8dEiU/X0a8RboyNDjmXjlbr8AdEyLgiA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/crc32": "5.2.0", + "@smithy/types": "^4.13.1", + "@smithy/util-hex-encoding": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-browser": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.12.tgz", + "integrity": "sha512-XUSuMxlTxV5pp4VpqZf6Sa3vT/Q75FVkLSpSSE3KkWBvAQWeuWt1msTv8fJfgA4/jcJhrbrbMzN1AC/hvPmm5A==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-serde-universal": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-config-resolver": { + "version": "4.3.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.12.tgz", + "integrity": "sha512-7epsAZ3QvfHkngz6RXQYseyZYHlmWXSTPOfPmXkiS+zA6TBNo1awUaMFL9vxyXlGdoELmCZyZe1nQE+imbmV+Q==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-node": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.12.tgz", + "integrity": "sha512-D1pFuExo31854eAvg89KMn9Oab/wEeJR6Buy32B49A9Ogdtx5fwZPqBHUlDzaCDpycTFk2+fSQgX689Qsk7UGA==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-serde-universal": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-universal": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.12.tgz", + "integrity": "sha512-+yNuTiyBACxOJUTvbsNsSOfH9G9oKbaJE1lNL3YHpGcuucl6rPZMi3nrpehpVOVR2E07YqFFmtwpImtpzlouHQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-codec": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/fetch-http-handler": { "version": "5.3.15", "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.15.tgz", @@ -2635,6 +3210,21 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/hash-blob-browser": { + "version": "4.2.13", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.13.tgz", + "integrity": "sha512-YrF4zWKh+ghLuquldj6e/RzE3xZYL8wIPfkt0MqCRphVICjyyjH8OwKD7LLlKpVEbk4FLizFfC1+gwK6XQdR3g==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/chunked-blob-reader": "^5.2.2", + "@smithy/chunked-blob-reader-native": "^4.2.3", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/hash-node": { "version": "4.2.12", "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.12.tgz", @@ -2650,6 +3240,20 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/hash-stream-node": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.12.tgz", + "integrity": "sha512-O3YbmGExeafuM/kP7Y8r6+1y0hIh3/zn6GROx0uNlB54K9oihAL75Qtc+jFfLNliTi6pxOAYZrRKD9A7iA6UFw==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/invalid-dependency": { "version": "4.2.12", "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.12.tgz", @@ -2673,6 +3277,20 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/md5-js": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.12.tgz", + "integrity": "sha512-W/oIpHCpWU2+iAkfZYyGWE+qkpuf3vEXHLxQQDx9FPNZTTdnul0dZ2d/gUFrtQ5je1G2kp4cjG0/24YueG2LbQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/middleware-content-length": { "version": "4.2.12", "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.12.tgz", @@ -3223,6 +3841,7 @@ "integrity": "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "undici-types": "~7.18.0" } @@ -3273,6 +3892,7 @@ "integrity": "sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.57.0", "@typescript-eslint/types": "8.57.0", @@ -3582,233 +4202,641 @@ "url": "https://opencollective.com/vitest" } }, - "node_modules/@vitest/runner": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.0.tgz", - "integrity": "sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==", - "dev": true, + "node_modules/@vitest/runner": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.0.tgz", + "integrity": "sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "4.1.0", + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.0.tgz", + "integrity": "sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "4.1.0", + "@vitest/utils": "4.1.0", + "magic-string": "^0.30.21", + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.0.tgz", + "integrity": "sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.0.tgz", + "integrity": "sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "4.1.0", + "convert-source-map": "^2.0.0", + "tinyrainbow": "^3.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/acorn": { + "version": "8.16.0", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "6.14.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", + "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/apim-spec": { + "resolved": "packages/specification", + "link": true + }, + "node_modules/arg": { + "version": "4.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/ast-v8-to-istanbul": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-1.0.0.tgz", + "integrity": "sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.31", + "estree-walker": "^3.0.3", + "js-tokens": "^10.0.0" + } + }, + "node_modules/ast-v8-to-istanbul/node_modules/js-tokens": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-10.0.0.tgz", + "integrity": "sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "license": "MIT" + }, + "node_modules/aws-cdk": { + "version": "2.1111.0", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.1111.0.tgz", + "integrity": "sha512-69AVF04cxbAhYzmeJYtUF5bs6ruNnH05EQZJfjadk5Lpg+HVaJY2NjG/2qgsMmKrfRgvLet73Ir8ehVlAaaGng==", + "license": "Apache-2.0", + "bin": { + "cdk": "bin/cdk" + }, + "engines": { + "node": ">= 18.0.0" + } + }, + "node_modules/aws-cdk-lib": { + "version": "2.243.0", + "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.243.0.tgz", + "integrity": "sha512-qIhg/3gSNeZ9LoVmDATO45HPk+POkoCfPZRezeOPhd2kAJ/wzYswyUcMqpDWXrlRrEVYntxsykQs+2eMA04Isg==", + "bundleDependencies": [ + "@balena/dockerignore", + "@aws-cdk/cloud-assembly-api", + "case", + "fs-extra", + "ignore", + "jsonschema", + "minimatch", + "punycode", + "semver", + "table", + "yaml", + "mime-types" + ], + "license": "Apache-2.0", + "dependencies": { + "@aws-cdk/asset-awscli-v1": "2.2.263", + "@aws-cdk/asset-node-proxy-agent-v6": "^2.1.1", + "@aws-cdk/cloud-assembly-api": "^2.1.1", + "@aws-cdk/cloud-assembly-schema": "^52.1.0", + "@balena/dockerignore": "^1.0.2", + "case": "1.6.3", + "fs-extra": "^11.3.3", + "ignore": "^5.3.2", + "jsonschema": "^1.5.0", + "mime-types": "^2.1.35", + "minimatch": "^10.2.3", + "punycode": "^2.3.1", + "semver": "^7.7.4", + "table": "^6.9.0", + "yaml": "1.10.2" + }, + "engines": { + "node": ">= 20.0.0" + }, + "peerDependencies": { + "constructs": "^10.5.0" + } + }, + "node_modules/aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api": { + "version": "2.1.1", + "bundleDependencies": [ + "jsonschema", + "semver" + ], + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "jsonschema": "~1.4.1", + "semver": "^7.7.3" + }, + "engines": { + "node": ">= 18.0.0" + }, + "peerDependencies": { + "@aws-cdk/cloud-assembly-schema": ">=52.1.0" + } + }, + "node_modules/aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/node_modules/jsonschema": { + "version": "1.4.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/node_modules/semver": { + "version": "7.7.3", + "inBundle": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/aws-cdk-lib/node_modules/@balena/dockerignore": { + "version": "1.0.2", + "inBundle": true, + "license": "Apache-2.0" + }, + "node_modules/aws-cdk-lib/node_modules/ajv": { + "version": "8.18.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/aws-cdk-lib/node_modules/ansi-regex": { + "version": "5.0.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/aws-cdk-lib/node_modules/ansi-styles": { + "version": "4.3.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/aws-cdk-lib/node_modules/astral-regex": { + "version": "2.0.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/aws-cdk-lib/node_modules/balanced-match": { + "version": "4.0.4", + "inBundle": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/aws-cdk-lib/node_modules/brace-expansion": { + "version": "5.0.3", + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/aws-cdk-lib/node_modules/case": { + "version": "1.6.3", + "inBundle": true, + "license": "(MIT OR GPL-3.0-or-later)", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/aws-cdk-lib/node_modules/color-convert": { + "version": "2.0.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/aws-cdk-lib/node_modules/color-name": { + "version": "1.1.4", + "inBundle": true, + "license": "MIT" + }, + "node_modules/aws-cdk-lib/node_modules/emoji-regex": { + "version": "8.0.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/aws-cdk-lib/node_modules/fast-deep-equal": { + "version": "3.1.3", + "inBundle": true, + "license": "MIT" + }, + "node_modules/aws-cdk-lib/node_modules/fast-uri": { + "version": "3.1.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "inBundle": true, + "license": "BSD-3-Clause" + }, + "node_modules/aws-cdk-lib/node_modules/fs-extra": { + "version": "11.3.3", + "inBundle": true, "license": "MIT", "dependencies": { - "@vitest/utils": "4.1.0", - "pathe": "^2.0.3" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">=14.14" } }, - "node_modules/@vitest/snapshot": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.0.tgz", - "integrity": "sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/graceful-fs": { + "version": "4.2.11", + "inBundle": true, + "license": "ISC" + }, + "node_modules/aws-cdk-lib/node_modules/ignore": { + "version": "5.3.2", + "inBundle": true, "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "4.1.0", - "@vitest/utils": "4.1.0", - "magic-string": "^0.30.21", - "pathe": "^2.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">= 4" } }, - "node_modules/@vitest/spy": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.0.tgz", - "integrity": "sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "inBundle": true, "license": "MIT", - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">=8" } }, - "node_modules/@vitest/utils": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.0.tgz", - "integrity": "sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/json-schema-traverse": { + "version": "1.0.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/aws-cdk-lib/node_modules/jsonfile": { + "version": "6.2.0", + "inBundle": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.1.0", - "convert-source-map": "^2.0.0", - "tinyrainbow": "^3.0.3" + "universalify": "^2.0.0" }, - "funding": { - "url": "https://opencollective.com/vitest" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/abort-controller": { - "version": "3.0.0", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/jsonschema": { + "version": "1.5.0", + "inBundle": true, "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, "engines": { - "node": ">=6.5" + "node": "*" } }, - "node_modules/acorn": { - "version": "8.16.0", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/lodash.truncate": { + "version": "4.4.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/aws-cdk-lib/node_modules/mime-db": { + "version": "1.52.0", + "inBundle": true, "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.6" } }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/mime-types": { + "version": "2.1.35", + "inBundle": true, "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/acorn-walk": { - "version": "8.3.4", - "dev": true, - "license": "MIT", + "node_modules/aws-cdk-lib/node_modules/minimatch": { + "version": "10.2.4", + "inBundle": true, + "license": "BlueOak-1.0.0", "dependencies": { - "acorn": "^8.11.0" + "brace-expansion": "^5.0.2" }, "engines": { - "node": ">=0.4.0" + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/agent-base": { - "version": "7.1.4", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/punycode": { + "version": "2.3.1", + "inBundle": true, "license": "MIT", "engines": { - "node": ">= 14" + "node": ">=6" } }, - "node_modules/ajv": { - "version": "6.14.0", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/require-from-string": { + "version": "2.0.2", + "inBundle": true, "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/aws-cdk-lib/node_modules/semver": { + "version": "7.7.4", + "inBundle": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=10" } }, - "node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/slice-ansi": { + "version": "4.0.0", + "inBundle": true, "license": "MIT", "dependencies": { - "ajv": "^8.0.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, - "peerDependencies": { - "ajv": "^8.0.0" + "engines": { + "node": ">=10" }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/string-width": { + "version": "4.2.3", + "inBundle": true, "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=8" } }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, + "node_modules/aws-cdk-lib/node_modules/strip-ansi": { + "version": "6.0.1", + "inBundle": true, "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/apim-spec": { - "resolved": "packages/specification", - "link": true - }, - "node_modules/arg": { - "version": "4.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" + "node_modules/aws-cdk-lib/node_modules/table": { + "version": "6.9.0", + "inBundle": true, + "license": "BSD-3-Clause", + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } }, - "node_modules/assertion-error": { + "node_modules/aws-cdk-lib/node_modules/universalify": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", - "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", - "dev": true, + "inBundle": true, "license": "MIT", "engines": { - "node": ">=12" + "node": ">= 10.0.0" } }, - "node_modules/ast-v8-to-istanbul": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-1.0.0.tgz", - "integrity": "sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.31", - "estree-walker": "^3.0.3", - "js-tokens": "^10.0.0" + "node_modules/aws-cdk-lib/node_modules/yaml": { + "version": "1.10.2", + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">= 6" } }, - "node_modules/ast-v8-to-istanbul/node_modules/js-tokens": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-10.0.0.tgz", - "integrity": "sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT" - }, "node_modules/axios": { "version": "1.13.6", "license": "MIT", + "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", @@ -3902,6 +4930,20 @@ "resolved": "packages/capabilityStatement", "link": true }, + "node_modules/cdk": { + "resolved": "packages/cdk", + "link": true + }, + "node_modules/cdk-nag": { + "version": "2.37.55", + "resolved": "https://registry.npmjs.org/cdk-nag/-/cdk-nag-2.37.55.tgz", + "integrity": "sha512-xcAkygwbph3pp7N0UEzJBmXUH/MIsluV7DYJSeZ/V3yCr0Y0QaRGO298WyD6mi4K+Rmnpl+EJoWUxcOblOqLKA==", + "license": "Apache-2.0", + "peerDependencies": { + "aws-cdk-lib": "^2.176.0", + "constructs": "^10.0.5" + } + }, "node_modules/chai": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz", @@ -4039,6 +5081,13 @@ "node": ">= 0.8" } }, + "node_modules/constructs": { + "version": "10.5.1", + "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.5.1.tgz", + "integrity": "sha512-f/TfFXiS3G/yVIXDjOQn9oTlyu9Wo7Fxyjj7lb8r92iO81jR2uST+9MstxZTmDGx/CgIbxCXkFXgupnLTNxQZg==", + "license": "Apache-2.0", + "peer": true + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -4306,6 +5355,7 @@ "integrity": "sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -4698,7 +5748,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, "hasInstallScript": true, "license": "MIT", "optional": true, @@ -4759,7 +5808,6 @@ }, "node_modules/get-tsconfig": { "version": "4.13.0", - "dev": true, "license": "MIT", "dependencies": { "resolve-pkg-maps": "^1.0.0" @@ -5516,6 +6564,7 @@ "version": "6.15.0", "dev": true, "license": "MIT", + "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -6001,6 +7050,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -6009,6 +7059,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -6142,7 +7193,6 @@ }, "node_modules/resolve-pkg-maps": { "version": "1.0.0", - "dev": true, "license": "MIT", "funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" @@ -6395,6 +7445,7 @@ "version": "6.3.9", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -6594,7 +7645,6 @@ }, "node_modules/tsx": { "version": "4.21.0", - "dev": true, "license": "MIT", "dependencies": { "esbuild": "~0.27.0", @@ -6625,6 +7675,7 @@ "version": "5.9.3", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6707,6 +7758,7 @@ "integrity": "sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@vitest/expect": "4.1.0", "@vitest/mocker": "4.1.0", @@ -6845,6 +7897,7 @@ "integrity": "sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", @@ -7112,6 +8165,17 @@ "@pfp-common/testing": "^1.0.0" } }, + "packages/cdk": { + "version": "0.1.0", + "dependencies": { + "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "aws-cdk": "^2.1106.0", + "aws-cdk-lib": "^2.239.0", + "cdk-nag": "^2.37.55", + "constructs": "^10.4.5", + "tsx": "^4.21.0" + } + }, "packages/common/testing": { "name": "@pfp-common/testing", "version": "1.0.0", diff --git a/package.json b/package.json index bfb769df3..608de795c 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "author": "NHS Digital", "license": "MIT", "workspaces": [ + "packages/cdk", "packages/capabilityStatement", "packages/getMyPrescriptions", "packages/enrichPrescriptions", diff --git a/packages/cdk/bin/PfPApiApp.ts b/packages/cdk/bin/PfPApiApp.ts new file mode 100644 index 000000000..01283940a --- /dev/null +++ b/packages/cdk/bin/PfPApiApp.ts @@ -0,0 +1,41 @@ +import { + calculateVersionedStackName, + createApp, + getBooleanConfigFromEnvVar, + getConfigFromEnvVar, + getNumberConfigFromEnvVar +} from "@nhsdigital/eps-cdk-constructs" +import {PfPApiStack} from "../stacks/PfPApiStack" + +function main() { + const {app, props} = createApp({ + productName: "Prescriptions for Patients API", + appName: "PfPApiApp", + repoName: "prescriptionsforpatients", + driftDetectionGroup: "pfp-api" + }) + + const pfpApiStack = new PfPApiStack(app, "PfPApiStack", { + ...props, + stackName: calculateVersionedStackName(getConfigFromEnvVar("stackName"), props), + logRetentionInDays: getNumberConfigFromEnvVar("logRetentionInDays"), + logLevel: getConfigFromEnvVar("logLevel"), + targetSpineServer: getConfigFromEnvVar("targetSpineServer"), + targetServiceSearchServer: getConfigFromEnvVar("targetServiceSearchServer"), + toggleGetStatusUpdates: getConfigFromEnvVar("toggleGetStatusUpdates"), + allowNhsNumberOverride: getConfigFromEnvVar("allowNhsNumberOverride"), + mutualTlsTrustStoreKey: props.isPullRequest ? undefined : getConfigFromEnvVar("trustStoreFile"), + // CSOC API GW log destination - do not change + csocApiGatewayDestination: "arn:aws:logs:eu-west-2:693466633220:destination:api_gateway_log_destination", + forwardCsocLogs: getBooleanConfigFromEnvVar("forwardCsocLogs") + }) + + return pfpApiStack +} + +try { + main() +} catch (error) { + console.error(error) + process.exit(1) +} diff --git a/packages/cdk/bin/PfPApiSandboxApp.ts b/packages/cdk/bin/PfPApiSandboxApp.ts new file mode 100644 index 000000000..e3ebe54c4 --- /dev/null +++ b/packages/cdk/bin/PfPApiSandboxApp.ts @@ -0,0 +1,11 @@ +import {createApp} from "@nhsdigital/eps-cdk-constructs" +import {PfPApiSandboxStack} from "../stacks/PfPApiSandboxStack" + +const {app, props} = createApp({ + productName: "Prescriptions for Patients API", + appName: "PfPApiSandboxApp", + repoName: "prescriptionsforpatients", + driftDetectionGroup: "pfp-api" +}) + +new PfPApiSandboxStack(app, "PfPApiSandboxStack", props) diff --git a/packages/cdk/cdk.json b/packages/cdk/cdk.json new file mode 100644 index 000000000..2fc30f768 --- /dev/null +++ b/packages/cdk/cdk.json @@ -0,0 +1,76 @@ +{ + "watch": { + "include": [ + "packages/**" + ], + "exclude": [ + "**/README.md", + "**/cdk*.json", + "**/*.d.ts", + "**/*.js", + "**/tsconfig.json", + "**/package*.json", + "**/yarn.lock", + "**/node_modules", + "**/tests*", + "**/lib", + "**/coverage", + "**/jest.config.ts", + "**/jest.debug.config.ts" + ] + }, + "context": { + "@aws-cdk/aws-lambda:recognizeLayerVersion": true, + "@aws-cdk/core:checkSecretUsage": true, + "@aws-cdk/core:target-partitions": [ + "aws", + "aws-cn" + ], + "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": true, + "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": true, + "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": true, + "@aws-cdk/aws-iam:minimizePolicies": true, + "@aws-cdk/core:validateSnapshotRemovalPolicy": true, + "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": true, + "@aws-cdk/aws-s3:createDefaultLoggingPolicy": true, + "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": true, + "@aws-cdk/aws-apigateway:disableCloudWatchRole": true, + "@aws-cdk/core:enablePartitionLiterals": true, + "@aws-cdk/aws-events:eventsTargetQueueSameAccount": true, + "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": true, + "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": true, + "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": true, + "@aws-cdk/aws-route53-patters:useCertificate": true, + "@aws-cdk/customresources:installLatestAwsSdkDefault": false, + "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": true, + "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": true, + "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": true, + "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": true, + "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": true, + "@aws-cdk/aws-redshift:columnId": true, + "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": true, + "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": true, + "@aws-cdk/aws-apigateway:requestValidatorUniqueId": true, + "@aws-cdk/aws-kms:aliasNameRef": true, + "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": true, + "@aws-cdk/core:includePrefixInUniqueNameGeneration": true, + "@aws-cdk/aws-efs:denyAnonymousAccess": true, + "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": true, + "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": true, + "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": true, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": true, + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": true, + "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": true, + "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": true, + "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": true, + "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": true, + "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": true, + "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": true, + "@aws-cdk/aws-eks:nodegroupNameAttribute": true, + "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": true, + "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": true, + "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": false, + "@aws-cdk/aws-s3:keepNotificationInImportedBucket": false, + "acknowledged-issue-numbers": [34892] + } +} diff --git a/packages/cdk/nagSuppressions.ts b/packages/cdk/nagSuppressions.ts new file mode 100644 index 000000000..b49660edc --- /dev/null +++ b/packages/cdk/nagSuppressions.ts @@ -0,0 +1,51 @@ +/* eslint-disable max-len */ +import {Stack} from "aws-cdk-lib" +import {safeAddNagSuppressionGroup, safeAddNagSuppression} from "@nhsdigital/eps-cdk-constructs" + +export const nagSuppressions = (stack: Stack) => { + safeAddNagSuppressionGroup( + stack, + [ + "/PfPApiStack/Functions/GetMyPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStack/Functions/EnrichPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStack/Functions/StatusLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStack/StateMachines/GetMyPrescriptionsStateMachine/StateMachinePutLogsManagedPolicy/Resource" + ], + [ + { + id: "AwsSolutions-IAM5", + reason: "Suppress error for not having wildcards in permissions. This is a fine as we need to have permissions on all log streams under path" + } + ] + ) + + safeAddNagSuppression( + stack, + "/PfPApiStack/Apis/ApiGateway/ApiGateway/Resource", + [ + { + id: "AwsSolutions-APIG2", + reason: "Suppress error for request validation not being enabled. Validation will be handled by the service logic." + } + ] + ) + + safeAddNagSuppressionGroup( + stack, + [ + "/PfPApiStack/Apis/ApiGateway/ApiGateway/Default/Bundle/GET/Resource", + "/PfPApiStack/Apis/ApiGateway/ApiGateway/Default/_status/GET/Resource" + ], + [ + { + id: "AwsSolutions-APIG4", + reason: "Suppress error for not implementing authorization. Token endpoint should not have an authorizer" + }, + { + id: "AwsSolutions-COG4", + reason: "Suppress error for not implementing a Cognito user pool authorizer. Token endpoint should not have an authorizer" + } + ] + ) + +} diff --git a/packages/cdk/package.json b/packages/cdk/package.json new file mode 100644 index 000000000..35fd4d867 --- /dev/null +++ b/packages/cdk/package.json @@ -0,0 +1,23 @@ +{ + "name": "cdk", + "version": "0.1.0", + "scripts": { + "cdk-synth": "cdk synth --output ../../cdk.out --quiet --app \"npm run tsx -- bin/${CDK_APP_NAME}.ts\"", + "cdk-diff": "cdk diff --app \"npm run tsx -- bin/${CDK_APP_NAME}.ts\"", + "cdk-deploy": "cdk deploy --app \"npm run tsx -- bin/${CDK_APP_NAME}.ts\" --all --ci true --require-approval ${REQUIRE_APPROVAL}", + "cdk-watch": "cdk deploy --app \"npm run tsx -- bin/${CDK_APP_NAME}.ts\" --watch --all --ci true --require-approval ${REQUIRE_APPROVAL}", + "delete-main-stacks": "npm run tsx -- scripts/deleteMainStacks.ts", + "delete-old-pr-stacks": "npm run tsx -- scripts/deletePrStacks.ts", + "lint": "eslint --max-warnings 0 --fix --config ../../eslint.config.mjs .", + "test": "vitest run --coverage", + "tsx": "tsx" + }, + "dependencies": { + "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "aws-cdk": "^2.1106.0", + "aws-cdk-lib": "^2.239.0", + "cdk-nag": "^2.37.55", + "constructs": "^10.4.5", + "tsx": "^4.21.0" + } +} diff --git a/packages/cdk/resources/Apis.ts b/packages/cdk/resources/Apis.ts new file mode 100644 index 000000000..b1ac0caac --- /dev/null +++ b/packages/cdk/resources/Apis.ts @@ -0,0 +1,65 @@ +import {HttpMethod} from "aws-cdk-lib/aws-lambda" +import { + ExpressStateMachine, + LambdaEndpoint, + RestApiGateway, + StateMachineEndpoint, + TypescriptLambdaFunction +} from "@nhsdigital/eps-cdk-constructs" +import {Construct} from "constructs" + +export interface ApisProps { + readonly stackName: string + readonly logRetentionInDays: number + readonly mutualTlsTrustStoreKey: string | undefined + functions: {[key: string]: TypescriptLambdaFunction} + stateMachines: {[key: string]: ExpressStateMachine} + readonly forwardCsocLogs: boolean + readonly csocApiGatewayDestination: string +} + +export class Apis extends Construct { + apis: {[key: string]: RestApiGateway} + endpoints: {[key: string]: Construct} + + public constructor(scope: Construct, id: string, props: ApisProps){ + super(scope, id) + + const apiGateway = new RestApiGateway(this, "ApiGateway", { + stackName: props.stackName, + logRetentionInDays: props.logRetentionInDays, + mutualTlsTrustStoreKey: props.mutualTlsTrustStoreKey, + forwardCsocLogs: props.forwardCsocLogs, + csocApiGatewayDestination: props.csocApiGatewayDestination, + executionPolicies: [ + props.stateMachines.getMyPrescriptions.executionPolicy, + props.functions.status.executionPolicy + ] + }) + const rootResource = apiGateway.api.root + + const getMyPrescriptionsEndpoint = new StateMachineEndpoint(this, "GetMyPrescriptionsEndpoint", { + parentResource: rootResource, + resourceName: "Bundle", + method: HttpMethod.GET, + restApiGatewayRole: apiGateway.role, + stateMachine: props.stateMachines.getMyPrescriptions + }) + + const statusEndpoint = new LambdaEndpoint(this, "StatusEndpoint", { + parentResource: rootResource, + resourceName: "_status", + method: HttpMethod.GET, + restApiGatewayRole: apiGateway.role, + lambdaFunction: props.functions.status + }) + + this.apis = { + api: apiGateway + } + this.endpoints = { + getMyPrescriptions: getMyPrescriptionsEndpoint, + status: statusEndpoint + } + } +} diff --git a/packages/cdk/resources/Functions.ts b/packages/cdk/resources/Functions.ts new file mode 100644 index 000000000..c8b2d89f7 --- /dev/null +++ b/packages/cdk/resources/Functions.ts @@ -0,0 +1,138 @@ +import {Aws, Fn, RemovalPolicy} from "aws-cdk-lib" +import {ManagedPolicy, PolicyStatement} from "aws-cdk-lib/aws-iam" +import {Construct} from "constructs" +import {TypescriptLambdaFunction} from "@nhsdigital/eps-cdk-constructs" +import {Code, LayerVersion} from "aws-cdk-lib/aws-lambda" +import {join, resolve} from "node:path" + +export interface FunctionsProps { + readonly stackName: string + readonly version: string + readonly commitId: string + readonly deploymentEnvironment: string + readonly targetSpineServer: string + readonly targetServiceSearchServer: string + readonly toggleGetStatusUpdates: string + readonly allowNhsNumberOverride: string + readonly logRetentionInDays: number + readonly logLevel: string +} + +const baseDir = resolve(__dirname, "../../..") + +export class Functions extends Construct { + functions: {[key: string]: TypescriptLambdaFunction} + + public constructor(scope: Construct, id: string, props: FunctionsProps){ + super(scope, id) + + // Imports + const lambdaAccessSecretsPolicy = ManagedPolicy.fromManagedPolicyArn( + this, "lambdaAccessSecretsPolicy", Fn.importValue("account-resources:LambdaAccessSecretsPolicy")) + + const lambdaDecryptSecretsKMSPolicy = ManagedPolicy.fromManagedPolicyArn( + this, "lambdaDecryptSecretsKMSPolicy", Fn.importValue("account-resources:LambdaDecryptSecretsKMSPolicy")) + + const getPfPParametersPolicy = new ManagedPolicy(this, "GetPfPParametersPolicy", { + description: "Read test case SSM parameters", + statements: [ + new PolicyStatement({ + actions: [ + "ssm:GetParameter", + "ssm:GetParameters" + ], + resources: [ + `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC007NHSNumber`, + `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC008NHSNumber`, + `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC009NHSNumber` + ] + }) + ] + }) + + const lambdaDefaultEnvironmentVariables: {[key: string]: string} = { + STACK_NAME: props.stackName, + TargetSpineServer: props.targetSpineServer, + TargetServiceSearchServer: props.targetServiceSearchServer, + SpinePrivateKeyARN: Fn.importValue("account-resources:SpinePrivateKey"), + SpinePublicCertificateARN: Fn.importValue("account-resources:SpinePublicCertificate"), + SpineASIDARN: Fn.importValue("account-resources:SpineASID"), + SpinePartyKeyARN: Fn.importValue("account-resources:SpinePartyKey"), + SpineCAChainARN: Fn.importValue("account-resources:SpineCAChain"), + ServiceSearch3ApiKeyARN: Fn.importValue("pfp-PfP-ServiceSearch-API-Key") + } + + const getSecretsLambdaLayer = new LayerVersion(this, "GetSecretsLambdaLayer", { + description: "get secrets layer", + code: Code.fromAsset(join(baseDir, "packages/getSecretLayer/lib/get-secrets-layer.zip")), + removalPolicy: RemovalPolicy.RETAIN + }) + + // Resources + const getMyPrescriptionsLambda = new TypescriptLambdaFunction(this, "GetMyPrescriptionsLambda", { + functionName: `${props.stackName}-GetMyPrescriptions`, + projectBaseDir: baseDir, + packageBasePath: "packages/getMyPrescriptions", + entryPoint: "src/getMyPrescriptions.ts", + environmentVariables: { + ...lambdaDefaultEnvironmentVariables, + AWS_LAMBDA_EXEC_WRAPPER: "/opt/get-secrets-layer", + DEPLOYMENT_ENVIRONMENT: props.deploymentEnvironment, + GET_STATUS_UPDATES: props.toggleGetStatusUpdates, + ALLOW_NHS_NUMBER_OVERRIDE: props.allowNhsNumberOverride + }, + layers: [getSecretsLambdaLayer], + additionalPolicies: [ + lambdaAccessSecretsPolicy, + lambdaDecryptSecretsKMSPolicy, + getPfPParametersPolicy + ], + logRetentionInDays: props.logRetentionInDays, + logLevel: props.logLevel, + version: props.version, + commitId: props.commitId + }) + + const enrichPrescriptionsLambda = new TypescriptLambdaFunction(this, "EnrichPrescriptionsLambda", { + functionName: `${props.stackName}-EnrichPrescriptions`, + projectBaseDir: baseDir, + packageBasePath: "packages/enrichPrescriptions", + entryPoint: "src/enrichPrescriptions.ts", + environmentVariables: { + ...lambdaDefaultEnvironmentVariables, + DEPLOYMENT_ENVIRONMENT: props.deploymentEnvironment, + EXPECT_STATUS_UPDATES: props.toggleGetStatusUpdates + }, + additionalPolicies: [ + getPfPParametersPolicy + ], + logRetentionInDays: props.logRetentionInDays, + logLevel: props.logLevel, + version: props.version, + commitId: props.commitId + }) + + const statusLambda = new TypescriptLambdaFunction(this, "StatusLambda", { + functionName: `${props.stackName}-status`, + projectBaseDir: baseDir, + packageBasePath: "packages/statusLambda", + entryPoint: "src/statusLambda.ts", + environmentVariables: { + ...lambdaDefaultEnvironmentVariables, + AWS_LAMBDA_EXEC_WRAPPER: "/opt/get-secrets-layer" + }, + layers: [getSecretsLambdaLayer], + additionalPolicies: [lambdaAccessSecretsPolicy, lambdaDecryptSecretsKMSPolicy], + logRetentionInDays: props.logRetentionInDays, + logLevel: props.logLevel, + version: props.version, + commitId: props.commitId + }) + + this.functions = { + getMyPrescriptions: getMyPrescriptionsLambda, + enrichPrescriptions: enrichPrescriptionsLambda, + status: statusLambda + } + } +} diff --git a/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts new file mode 100644 index 000000000..3752c280f --- /dev/null +++ b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts @@ -0,0 +1,76 @@ +import {IFunction} from "aws-cdk-lib/aws-lambda" +import { + Chain, + Choice, + Condition, + IChainable, + Pass, + TaskInput +} from "aws-cdk-lib/aws-stepfunctions" +import {LambdaInvoke} from "aws-cdk-lib/aws-stepfunctions-tasks" +import {CatchAllErrorPass} from "@nhsdigital/eps-cdk-constructs" +import {Construct} from "constructs" + +export interface DefinitionProps { + readonly getMyPrescriptionsFunction: IFunction + readonly enrichPrescriptionsFunction: IFunction + readonly getStatusUpdatesFunction: IFunction +} + +export class GetMyPrescriptions extends Construct { + public readonly definition: IChainable + + public constructor(scope: Construct, id: string, props: DefinitionProps){ + super(scope, id) + + const catchAllError = new CatchAllErrorPass(this, "Catch All Error") + + const getMyPrescriptions = new LambdaInvoke(this, "Get My Prescriptions", { + lambdaFunction: props.getMyPrescriptionsFunction, + payload: TaskInput.fromJsonPathAt("$") + }) + getMyPrescriptions.addCatch(catchAllError.state) + + const failedGetMyPrescriptions = new Pass(this, "Failed Get My Prescriptions") + + const parseGetMyPrescriptionsBody = new Pass(this, "Parse Get My Prescriptions Body", { + parameters: { + "body.$": "States.StringToJson($.Payload.body)" + }, + outputPath: "$.body" + }) + + const enrichPrescriptions = new LambdaInvoke(this, "Enrich Prescriptions", { + lambdaFunction: props.enrichPrescriptionsFunction, + payload: TaskInput.fromJsonPathAt("$") + }) + enrichPrescriptions.addCatch(catchAllError.state) + + const getStatusUpdates = new LambdaInvoke(this, "Get Status Updates", { + lambdaFunction: props.getStatusUpdatesFunction, + payload: TaskInput.fromJsonPathAt("$.statusUpdateData"), + resultSelector: { + "Payload.$": "$.Payload" + }, + resultPath: "$.StatusUpdates" + }) + getStatusUpdates.addCatch(enrichPrescriptions, { + resultPath: "$.error" + }) + + const checkGetMyPrescriptionsResult = new Choice(this, "Get My Prescriptions Result") + const evaluateToggleGetStatusUpdates = new Choice(this, "Evaluate Toggle Get Status Updates Parameter") + + const getMyPrescriptionsSucceeded = Condition.numberEquals("$.Payload.statusCode", 200) + const getStatusUpdatesEnabled = Condition.booleanEquals("$.getStatusUpdates", true) + + this.definition = Chain + .start(getMyPrescriptions) + .next(checkGetMyPrescriptionsResult + .when(Condition.not(getMyPrescriptionsSucceeded), failedGetMyPrescriptions) + .otherwise(parseGetMyPrescriptionsBody + .next(evaluateToggleGetStatusUpdates + .when(getStatusUpdatesEnabled, getStatusUpdates.next(enrichPrescriptions)) + .otherwise(enrichPrescriptions)))) + } +} diff --git a/packages/cdk/resources/StateMachines.ts b/packages/cdk/resources/StateMachines.ts new file mode 100644 index 000000000..d7a6a18e6 --- /dev/null +++ b/packages/cdk/resources/StateMachines.ts @@ -0,0 +1,58 @@ +import {Fn} from "aws-cdk-lib" +import {ManagedPolicy, PolicyStatement} from "aws-cdk-lib/aws-iam" +import {Function} from "aws-cdk-lib/aws-lambda" +import {ExpressStateMachine, TypescriptLambdaFunction} from "@nhsdigital/eps-cdk-constructs" +import {Construct} from "constructs" +import {GetMyPrescriptions} from "./StateMachineDefinitions/GetMyPrescriptions" + +export interface StateMachinesProps { + readonly stackName: string + readonly logRetentionInDays: number + functions: {[key: string]: TypescriptLambdaFunction} +} + +export class StateMachines extends Construct { + stateMachines: {[key: string]: ExpressStateMachine} + + public constructor(scope: Construct, id: string, props: StateMachinesProps){ + super(scope, id) + + // Imports + const getStatusUpdates = Function.fromFunctionArn( + this, "GetStatusUpdates", `${Fn.importValue("psu:functions:GetStatusUpdates:FunctionArn")}:$LATEST`) + const callGetStatusUpdatesManagedPolicy = new ManagedPolicy(this, "CallGetStatusUpdatesManagedPolicy", { + description: "call get status updates lambda from get my prescriptions state machine", + statements: [ + new PolicyStatement({ + actions: [ + "lambda:InvokeFunction" + ], + resources: [ + getStatusUpdates.functionArn + ] + }) + ] + }) + + const getMyPrescriptions = new GetMyPrescriptions(this, "GetMyPrescriptionsStateMachineDefinition", { + getMyPrescriptionsFunction: props.functions.getMyPrescriptions.function, + enrichPrescriptionsFunction: props.functions.enrichPrescriptions.function, + getStatusUpdatesFunction: getStatusUpdates + }) + const getMyPrescriptionsStateMachine = new ExpressStateMachine(this, "GetMyPrescriptionsStateMachine", { + stackName: props.stackName, + stateMachineName: `${props.stackName}-GetMyPrescriptions`, + definition: getMyPrescriptions.definition, + logRetentionInDays: props.logRetentionInDays, + additionalPolicies: [ + props.functions.getMyPrescriptions.executionPolicy, + props.functions.enrichPrescriptions.executionPolicy, + callGetStatusUpdatesManagedPolicy + ] + }) + + this.stateMachines = { + getMyPrescriptions: getMyPrescriptionsStateMachine + } + } +} diff --git a/packages/cdk/scripts/deleteMainStacks.ts b/packages/cdk/scripts/deleteMainStacks.ts new file mode 100644 index 000000000..dfb3b28a8 --- /dev/null +++ b/packages/cdk/scripts/deleteMainStacks.ts @@ -0,0 +1,11 @@ +import {deleteUnusedMainStacks, getActiveApiVersions, getConfigFromEnvVar} from "@nhsdigital/eps-cdk-constructs" + +const awsEnvironment = getConfigFromEnvVar("AWS_ENVIRONMENT", "") +deleteUnusedMainStacks( + "pfp-api", + () => getActiveApiVersions("prescriptions-for-patients"), + `${awsEnvironment}.eps.national.nhs.uk.` +).catch((error) => { + console.error(error) + process.exit(1) +}) diff --git a/packages/cdk/scripts/deletePrStacks.ts b/packages/cdk/scripts/deletePrStacks.ts new file mode 100644 index 000000000..39977cbda --- /dev/null +++ b/packages/cdk/scripts/deletePrStacks.ts @@ -0,0 +1,10 @@ +import {deleteUnusedPrStacks} from "@nhsdigital/eps-cdk-constructs" + +deleteUnusedPrStacks( + "pfp-api", + "prescriptionsforpatients", + "dev.eps.national.nhs.uk." +).catch((error) => { + console.error(error) + process.exit(1) +}) diff --git a/packages/cdk/stacks/PfPApiSandboxStack.ts b/packages/cdk/stacks/PfPApiSandboxStack.ts new file mode 100644 index 000000000..49d392259 --- /dev/null +++ b/packages/cdk/stacks/PfPApiSandboxStack.ts @@ -0,0 +1,10 @@ +import {Stack, App} from "aws-cdk-lib" +import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" + +export class PfPApiSandboxStack extends Stack { + public constructor(scope: App, id: string, props: StandardStackProps){ + super(scope, id, props) + + // PLACEHOLDER FOR SANDBOX RESOURCES + } +} diff --git a/packages/cdk/stacks/PfPApiStack.ts b/packages/cdk/stacks/PfPApiStack.ts new file mode 100644 index 000000000..b6f5fa364 --- /dev/null +++ b/packages/cdk/stacks/PfPApiStack.ts @@ -0,0 +1,57 @@ +import {App, Stack} from "aws-cdk-lib" +import {nagSuppressions} from "../nagSuppressions" +import {Functions} from "../resources/Functions" +import {StateMachines} from "../resources/StateMachines" +import {Apis} from "../resources/Apis" +import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" + +export interface PfPApiStackProps extends StandardStackProps { + readonly stackName: string + readonly logRetentionInDays: number + readonly logLevel: string + readonly targetSpineServer: string + readonly targetServiceSearchServer: string + readonly toggleGetStatusUpdates: string + readonly allowNhsNumberOverride: string + readonly mutualTlsTrustStoreKey: string | undefined + readonly csocApiGatewayDestination: string + readonly forwardCsocLogs: boolean +} + +export class PfPApiStack extends Stack { + public constructor(scope: App, id: string, props: PfPApiStackProps){ + super(scope, id, props) + + // Resources + const functions = new Functions(this, "Functions", { + stackName: props.stackName, + version: props.version, + commitId: props.commitId, + deploymentEnvironment: props.environment, + targetSpineServer: props.targetSpineServer, + targetServiceSearchServer: props.targetServiceSearchServer, + toggleGetStatusUpdates: props.toggleGetStatusUpdates, + allowNhsNumberOverride: props.allowNhsNumberOverride, + logRetentionInDays: props.logRetentionInDays, + logLevel: props.logLevel + }) + + const stateMachines = new StateMachines(this, "StateMachines", { + stackName: props.stackName, + logRetentionInDays: props.logRetentionInDays, + functions: functions.functions + }) + + new Apis(this, "Apis", { + stackName: props.stackName, + logRetentionInDays: props.logRetentionInDays, + mutualTlsTrustStoreKey: props.mutualTlsTrustStoreKey, + functions: functions.functions, + stateMachines: stateMachines.stateMachines, + csocApiGatewayDestination: props.csocApiGatewayDestination, + forwardCsocLogs: props.forwardCsocLogs + }) + + nagSuppressions(this) + } +} diff --git a/packages/cdk/tsconfig.json b/packages/cdk/tsconfig.json new file mode 100644 index 000000000..b24f926cd --- /dev/null +++ b/packages/cdk/tsconfig.json @@ -0,0 +1,30 @@ +{ + "extends": "../../tsconfig.defaults.json", + "compilerOptions": { + "module": "commonjs", + "rootDir": ".", + "outDir": "lib", + "allowImportingTsExtensions": true, + "noEmit": true, + "strict": false, + "lib": [ + "es2020" + ], + "noImplicitAny": true, + "strictNullChecks": true, + "noImplicitThis": true, + "alwaysStrict": true, + "noUnusedLocals": false, + "noUnusedParameters": false, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": false, + "inlineSources": true, + "experimentalDecorators": true, + "strictPropertyInitialization": false, + "typeRoots": [ + "../../node_modules/@types" + ] + }, + "include": ["resources/**/*", "constructs/**/*", "policies/**/*", "stacks/**/*", "tests/**/*", "scripts/**/*", "nagSuppressions.ts"], + "exclude": ["node_modules", "cdk.out"] +} From 210dffa471a4da121add9c549408cd087d036ee5 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Fri, 20 Mar 2026 17:01:29 +0000 Subject: [PATCH 02/29] chore: migrate statemachine to JSONata --- .../GetMyPrescriptions.ts | 32 ++++++++----------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts index 3752c280f..6195d88aa 100644 --- a/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts +++ b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts @@ -33,11 +33,8 @@ export class GetMyPrescriptions extends Construct { const failedGetMyPrescriptions = new Pass(this, "Failed Get My Prescriptions") - const parseGetMyPrescriptionsBody = new Pass(this, "Parse Get My Prescriptions Body", { - parameters: { - "body.$": "States.StringToJson($.Payload.body)" - }, - outputPath: "$.body" + const parseGetMyPrescriptionsBody = Pass.jsonata(this, "Parse Get My Prescriptions Body", { + outputs: "{% $parse($states.input.Payload.body) %}" }) const enrichPrescriptions = new LambdaInvoke(this, "Enrich Prescriptions", { @@ -46,31 +43,28 @@ export class GetMyPrescriptions extends Construct { }) enrichPrescriptions.addCatch(catchAllError.state) - const getStatusUpdates = new LambdaInvoke(this, "Get Status Updates", { + const getStatusUpdates = LambdaInvoke.jsonata(this, "Get Status Updates", { lambdaFunction: props.getStatusUpdatesFunction, - payload: TaskInput.fromJsonPathAt("$.statusUpdateData"), - resultSelector: { - "Payload.$": "$.Payload" - }, - resultPath: "$.StatusUpdates" + payload: TaskInput.fromText("{% $states.input.statusUpdateData %}"), + outputs: "{% $merge([$states.input, {'StatusUpdates': {'Payload': $states.result.Payload}}]) %}" }) getStatusUpdates.addCatch(enrichPrescriptions, { - resultPath: "$.error" + outputs: "{% $merge([$states.input, {'error': $states.errorOutput}]) %}" }) - const checkGetMyPrescriptionsResult = new Choice(this, "Get My Prescriptions Result") - const evaluateToggleGetStatusUpdates = new Choice(this, "Evaluate Toggle Get Status Updates Parameter") - - const getMyPrescriptionsSucceeded = Condition.numberEquals("$.Payload.statusCode", 200) - const getStatusUpdatesEnabled = Condition.booleanEquals("$.getStatusUpdates", true) + const checkGetMyPrescriptionsResult = Choice.jsonata(this, "Get My Prescriptions Result") + const evaluateToggleGetStatusUpdates = Choice.jsonata(this, "Evaluate Toggle Get Status Updates Parameter") this.definition = Chain .start(getMyPrescriptions) .next(checkGetMyPrescriptionsResult - .when(Condition.not(getMyPrescriptionsSucceeded), failedGetMyPrescriptions) + .when(Condition.jsonata("{% $states.input.Payload.statusCode != 200 %}"), failedGetMyPrescriptions) .otherwise(parseGetMyPrescriptionsBody .next(evaluateToggleGetStatusUpdates - .when(getStatusUpdatesEnabled, getStatusUpdates.next(enrichPrescriptions)) + .when( + Condition.jsonata("{% $states.input.getStatusUpdates = true %}"), + getStatusUpdates.next(enrichPrescriptions) + ) .otherwise(enrichPrescriptions)))) } } From 9623b1c939cf1d59bc567411a788e45377670f3d Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 11:26:06 +0000 Subject: [PATCH 03/29] chore: further json path -> jsonata --- .../StateMachineDefinitions/GetMyPrescriptions.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts index 6195d88aa..a05953239 100644 --- a/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts +++ b/packages/cdk/resources/StateMachineDefinitions/GetMyPrescriptions.ts @@ -25,9 +25,9 @@ export class GetMyPrescriptions extends Construct { const catchAllError = new CatchAllErrorPass(this, "Catch All Error") - const getMyPrescriptions = new LambdaInvoke(this, "Get My Prescriptions", { + const getMyPrescriptions = LambdaInvoke.jsonata(this, "Get My Prescriptions", { lambdaFunction: props.getMyPrescriptionsFunction, - payload: TaskInput.fromJsonPathAt("$") + payload: TaskInput.fromText("{% $states.input %}") }) getMyPrescriptions.addCatch(catchAllError.state) @@ -37,9 +37,9 @@ export class GetMyPrescriptions extends Construct { outputs: "{% $parse($states.input.Payload.body) %}" }) - const enrichPrescriptions = new LambdaInvoke(this, "Enrich Prescriptions", { + const enrichPrescriptions = LambdaInvoke.jsonata(this, "Enrich Prescriptions", { lambdaFunction: props.enrichPrescriptionsFunction, - payload: TaskInput.fromJsonPathAt("$") + payload: TaskInput.fromText("{% $states.input %}") }) enrichPrescriptions.addCatch(catchAllError.state) From 5bf1c0abe912a3daba3881d78c8c0230b47bb838 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 11:38:46 +0000 Subject: [PATCH 04/29] chore: log and continue if TC params not present --- packages/common/utilities/src/config.ts | 40 +++++++++++++------------ 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/packages/common/utilities/src/config.ts b/packages/common/utilities/src/config.ts index 68daa4c83..168479e79 100644 --- a/packages/common/utilities/src/config.ts +++ b/packages/common/utilities/src/config.ts @@ -1,4 +1,5 @@ import {SSMProvider} from "@aws-lambda-powertools/parameters/ssm" +import {Logger} from "@aws-lambda-powertools/logger" const defaultSsmProvider = new SSMProvider({ clientConfig: {region: process.env.AWS_REGION || "eu-west-2"} @@ -9,40 +10,41 @@ export class PfPConfig { static readonly TC008_NHS_NUMBERS_PARAM = "TC008NHSNumber" static readonly TC009_NHS_NUMBERS_PARAM = "TC009NHSNumber" - private ssmProvider: SSMProvider + private readonly ssmProvider: SSMProvider + private readonly logger: Logger constructor(ssmProvider?: SSMProvider) { + this.logger = new Logger() this.ssmProvider = ssmProvider || defaultSsmProvider } - async isTC007(nhsNumber: string) { - // TC007: test case functionality for supplier testing + async isTestCase(nhsNumber: string, param: string) { const env = process.env["DEPLOYMENT_ENVIRONMENT"] - if (env === "prod") return false - const stackName = process.env.STACK_NAME || "pfp" - const TC007_NHS_NUMBERS = await this.ssmProvider.get(`/${stackName}-${PfPConfig.TC007_NHS_NUMBERS_PARAM}`) - return TC007_NHS_NUMBERS ? TC007_NHS_NUMBERS.includes(nhsNumber) : false + + try { + const stackName = process.env.STACK_NAME || "pfp" + const paramValue = await this.ssmProvider.get(`/${stackName}-${param}`) + return paramValue ? paramValue.includes(nhsNumber) : false + } catch (error) { + this.logger.warn(`Cannot read parameter ${param}, continue with test case disabled:`, {error}) + return false + } + } + + async isTC007(nhsNumber: string) { + // TC007: test case functionality for supplier testing + return this.isTestCase(nhsNumber, PfPConfig.TC007_NHS_NUMBERS_PARAM) } async isTC008(nhsNumber: string) { // AEA-5653, AEA-5853 | TC008: force internal error response for supplier testing - const env = process.env["DEPLOYMENT_ENVIRONMENT"] - - if (env === "prod") return false - const stackName = process.env.STACK_NAME || "pfp" - const TC008_NHS_NUMBERS = await this.ssmProvider.get(`/${stackName}-${PfPConfig.TC008_NHS_NUMBERS_PARAM}`) - return TC008_NHS_NUMBERS ? TC008_NHS_NUMBERS.includes(nhsNumber) : false + return this.isTestCase(nhsNumber, PfPConfig.TC008_NHS_NUMBERS_PARAM) } async isTC009(nhsNumber: string) { // TC009: test case functionality for supplier testing - const env = process.env["DEPLOYMENT_ENVIRONMENT"] - - if (env === "prod") return false - const stackName = process.env.STACK_NAME || "pfp" - const TC009_NHS_NUMBERS = await this.ssmProvider.get(`/${stackName}-${PfPConfig.TC009_NHS_NUMBERS_PARAM}`) - return TC009_NHS_NUMBERS ? TC009_NHS_NUMBERS.includes(nhsNumber) : false + return this.isTestCase(nhsNumber, PfPConfig.TC009_NHS_NUMBERS_PARAM) } } From 82d576260724add373c92af4a63532f667af4ced Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 12:07:12 +0000 Subject: [PATCH 05/29] fix: no allow TS imports as still on node module resolution Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- packages/cdk/tsconfig.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/cdk/tsconfig.json b/packages/cdk/tsconfig.json index b24f926cd..2b73af77d 100644 --- a/packages/cdk/tsconfig.json +++ b/packages/cdk/tsconfig.json @@ -4,7 +4,6 @@ "module": "commonjs", "rootDir": ".", "outDir": "lib", - "allowImportingTsExtensions": true, "noEmit": true, "strict": false, "lib": [ From bc6a8fab1339acfc731bf05049162e3031c88ed0 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 12:07:56 +0000 Subject: [PATCH 06/29] fix: typo Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- packages/cdk/cdk.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cdk/cdk.json b/packages/cdk/cdk.json index 2fc30f768..4ff6fefe1 100644 --- a/packages/cdk/cdk.json +++ b/packages/cdk/cdk.json @@ -40,7 +40,7 @@ "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": true, "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": true, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": true, - "@aws-cdk/aws-route53-patters:useCertificate": true, + "@aws-cdk/aws-route53-patterns:useCertificate": true, "@aws-cdk/customresources:installLatestAwsSdkDefault": false, "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": true, "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": true, From 95bb922c7d1236a77d9a971415fc60ca96be9130 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 12:14:41 +0000 Subject: [PATCH 07/29] fix: make dependencies Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 377ee3337..e5a0f2557 100644 --- a/Makefile +++ b/Makefile @@ -121,7 +121,7 @@ sam-deploy-package: guard-artifact_bucket guard-artifact_bucket_prefix guard-sta EnableAlerts=$$ENABLE_ALERTS \ StateMachineLogLevel=$$STATE_MACHINE_LOG_LEVEL -cdk-deploy: +cdk-deploy: download-get-secrets-layer CDK_CONFIG_stackName=${stack_name} REQUIRE_APPROVAL="$${REQUIRE_APPROVAL:-any-change}" npm run cdk-deploy --workspace packages/cdk cdk-synth: download-get-secrets-layer @@ -130,7 +130,7 @@ cdk-synth: download-get-secrets-layer cdk-diff: CDK_CONFIG_stackName=${stack_name} npm run cdk-diff --workspace packages/cdk -cdk-watch: +cdk-watch: download-get-secrets-layer CDK_CONFIG_stackName=${stack_name} REQUIRE_APPROVAL="$${REQUIRE_APPROVAL:-any-change}" npm run cdk-watch --workspace packages/cdk compile-node: From 5de5ddfcdf1d93269e43faa5bd553073d6642162 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 12:52:09 +0000 Subject: [PATCH 08/29] test: minimal fail-fast cdk synth test --- packages/cdk/tests/synth.test.ts | 58 ++++++++++++++++++++++++++++++++ packages/cdk/vitest.config.ts | 5 +++ 2 files changed, 63 insertions(+) create mode 100644 packages/cdk/tests/synth.test.ts create mode 100644 packages/cdk/vitest.config.ts diff --git a/packages/cdk/tests/synth.test.ts b/packages/cdk/tests/synth.test.ts new file mode 100644 index 000000000..0ab4de83c --- /dev/null +++ b/packages/cdk/tests/synth.test.ts @@ -0,0 +1,58 @@ +import {execFileSync} from "node:child_process" +import {resolve} from "node:path" +import {describe, expect, it} from "vitest" + +const cdkPackageRoot = resolve(__dirname, "..") + +function createBaseEnv(): NodeJS.ProcessEnv { + return { + ...process.env, + CI: "true", + CDK_DEFAULT_REGION: "eu-west-2", + CDK_CONFIG_versionNumber: "0.0.0-test", + CDK_CONFIG_commitId: "test-commit", + CDK_CONFIG_isPullRequest: "true", + CDK_CONFIG_environment: "test" + } +} + +describe("CDK synth smoke tests", () => { + it("type-checks the cdk package", () => { + expect(() => { + execFileSync("npx", ["tsc", "-p", "tsconfig.json", "--noEmit"], { + cwd: cdkPackageRoot, + stdio: "pipe" + }) + }).not.toThrow() + }) + + it("synthesizes the sandbox app", () => { + expect(() => { + execFileSync("npx", ["tsx", "bin/PfPApiSandboxApp.ts"], { + cwd: cdkPackageRoot, + stdio: "pipe", + env: createBaseEnv() + }) + }).not.toThrow() + }) + + it("synthesizes the main app", () => { + expect(() => { + execFileSync("npx", ["tsx", "bin/PfPApiApp.ts"], { + cwd: cdkPackageRoot, + stdio: "pipe", + env: { + ...createBaseEnv(), + CDK_CONFIG_stackName: "pfp-test-stack", + CDK_CONFIG_logRetentionInDays: "7", + CDK_CONFIG_logLevel: "INFO", + CDK_CONFIG_targetSpineServer: "https://example-spine.test", + CDK_CONFIG_targetServiceSearchServer: "https://live/service-search-api/", + CDK_CONFIG_toggleGetStatusUpdates: "true", + CDK_CONFIG_allowNhsNumberOverride: "false", + CDK_CONFIG_forwardCsocLogs: "false" + } + }) + }).not.toThrow() + }) +}) diff --git a/packages/cdk/vitest.config.ts b/packages/cdk/vitest.config.ts new file mode 100644 index 000000000..739bbad20 --- /dev/null +++ b/packages/cdk/vitest.config.ts @@ -0,0 +1,5 @@ +import {createVitestConfig} from "../../vitest.default.config" + +export default createVitestConfig({ + workspaceRoot: "../../" +}) From 14d44ca7855460e6877fb9ac9dc1fb3347942285 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 15:06:14 +0000 Subject: [PATCH 09/29] docs: example .env file --- template.env | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 template.env diff --git a/template.env b/template.env new file mode 100644 index 000000000..96b9c5c56 --- /dev/null +++ b/template.env @@ -0,0 +1,5 @@ +export AWS_DEFAULT_PROFILE=Admin-591291862413 +export PATH="$PWD/node_modules/.bin:$PATH" +export stack_name= +export TARGET_SPINE_SERVER=msg.veit07.devspineservices.nhs.uk +export TARGET_SERVICE_SEARCH_SERVER=int.api.service.nhs.uk From 8a97d948e551bc2d69908c776149b38a9f9ace61 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Tue, 24 Mar 2026 15:53:12 +0000 Subject: [PATCH 10/29] use the new parameters CDK construct --- .../prescriptionsforpatients.code-workspace | 4 + package-lock.json | 541 +++++++++--------- packages/cdk/package.json | 2 +- packages/cdk/resources/Functions.ts | 28 +- packages/cdk/stacks/PfPApiStack.ts | 27 +- 5 files changed, 320 insertions(+), 282 deletions(-) diff --git a/.vscode/prescriptionsforpatients.code-workspace b/.vscode/prescriptionsforpatients.code-workspace index 26dacb3ea..ba295f4bd 100644 --- a/.vscode/prescriptionsforpatients.code-workspace +++ b/.vscode/prescriptionsforpatients.code-workspace @@ -4,6 +4,10 @@ "name": "prescriptionsforpatients-monorepo", "path": ".." }, + { + "name": "packages/cdk", + "path": "../packages/cdk" + }, { "name": "packages/capabilityStatement", "path": "../packages/capabilityStatement" diff --git a/package-lock.json b/package-lock.json index 437bae651..cbde41d89 100644 --- a/package-lock.json +++ b/package-lock.json @@ -60,7 +60,6 @@ "semver" ], "license": "Apache-2.0", - "peer": true, "dependencies": { "jsonschema": "~1.4.1", "semver": "^7.7.3" @@ -333,45 +332,45 @@ } }, "node_modules/@aws-sdk/client-cloudformation": { - "version": "3.1011.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.1011.0.tgz", - "integrity": "sha512-v7qixZ+o2+t5f+Y+9qN5EyEejdkGpeDxhkRBaW9xOlE41owhsv7y1EmCsW1Lo5W+0krm0r/09w/TWy7rLHa57Q==", + "version": "3.1015.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.1015.0.tgz", + "integrity": "sha512-ULo+BEghT8rwQfh7O2Q3DW6rwdcLVNIhIONA+g5TwDuQu9otfZvZ6UijBlpqBIYMJ3kmClMIFxqpRCRiOvWdsQ==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", "@aws-sdk/middleware-host-header": "^3.972.8", "@aws-sdk/middleware-logger": "^3.972.8", "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.21", - "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-endpoints": "^3.996.5", "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.7", - "@smithy/config-resolver": "^4.4.11", - "@smithy/core": "^3.23.11", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", "@smithy/fetch-http-handler": "^5.3.15", "@smithy/hash-node": "^4.2.12", "@smithy/invalid-dependency": "^4.2.12", "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.25", - "@smithy/middleware-retry": "^4.4.42", - "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", "@smithy/middleware-stack": "^4.2.12", "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/url-parser": "^4.2.12", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.41", - "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", "@smithy/util-endpoints": "^3.3.3", "@smithy/util-middleware": "^4.2.12", "@smithy/util-retry": "^4.2.12", @@ -384,46 +383,46 @@ } }, "node_modules/@aws-sdk/client-route-53": { - "version": "3.1011.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-route-53/-/client-route-53-3.1011.0.tgz", - "integrity": "sha512-niEdBaAuouO9HVhzv9U7yOsqP3qNQd0F7/igVIu9jXV3yf1ljQMeUa1wAPhZ8X/lIEaXce1Yp7+cdwHTfO8IwQ==", + "version": "3.1015.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-route-53/-/client-route-53-3.1015.0.tgz", + "integrity": "sha512-8k6SXuDP+VImY58lffhdFZFB9LAkKrp+38vmZ7OM7HClflR8RhwI+qQ0n4bGAxNZy91hV4IPy4wWA62GByYEpg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", "@aws-sdk/middleware-host-header": "^3.972.8", "@aws-sdk/middleware-logger": "^3.972.8", "@aws-sdk/middleware-recursion-detection": "^3.972.8", "@aws-sdk/middleware-sdk-route53": "^3.972.10", - "@aws-sdk/middleware-user-agent": "^3.972.21", - "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-endpoints": "^3.996.5", "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.7", - "@smithy/config-resolver": "^4.4.11", - "@smithy/core": "^3.23.11", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", "@smithy/fetch-http-handler": "^5.3.15", "@smithy/hash-node": "^4.2.12", "@smithy/invalid-dependency": "^4.2.12", "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.25", - "@smithy/middleware-retry": "^4.4.42", - "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", "@smithy/middleware-stack": "^4.2.12", "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/url-parser": "^4.2.12", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.41", - "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", "@smithy/util-endpoints": "^3.3.3", "@smithy/util-middleware": "^4.2.12", "@smithy/util-retry": "^4.2.12", @@ -436,34 +435,34 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.1011.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1011.0.tgz", - "integrity": "sha512-jY7CGX+vfM/DSi4K8UwaZKoXnhqchmAbKFB1kIuHMfPPqW7l3jC/fUVDb95/njMsB2ymYOTusZEzoCTeUB/4qA==", + "version": "3.1015.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1015.0.tgz", + "integrity": "sha512-yo+Y+/fq5/E684SynTRO+VA3a+98MeE/hs7J52XpNI5SchOCSrLhLtcDKVASlGhHQdNLGLzblRgps1OZaf8sbA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/credential-provider-node": "^3.972.21", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", "@aws-sdk/middleware-bucket-endpoint": "^3.972.8", "@aws-sdk/middleware-expect-continue": "^3.972.8", - "@aws-sdk/middleware-flexible-checksums": "^3.974.0", + "@aws-sdk/middleware-flexible-checksums": "^3.974.4", "@aws-sdk/middleware-host-header": "^3.972.8", "@aws-sdk/middleware-location-constraint": "^3.972.8", "@aws-sdk/middleware-logger": "^3.972.8", "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-sdk-s3": "^3.972.20", + "@aws-sdk/middleware-sdk-s3": "^3.972.24", "@aws-sdk/middleware-ssec": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.21", - "@aws-sdk/region-config-resolver": "^3.972.8", - "@aws-sdk/signature-v4-multi-region": "^3.996.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", + "@aws-sdk/signature-v4-multi-region": "^3.996.12", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-endpoints": "^3.996.5", "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.7", - "@smithy/config-resolver": "^4.4.11", - "@smithy/core": "^3.23.11", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", "@smithy/eventstream-serde-browser": "^4.2.12", "@smithy/eventstream-serde-config-resolver": "^4.3.12", "@smithy/eventstream-serde-node": "^4.2.12", @@ -474,25 +473,25 @@ "@smithy/invalid-dependency": "^4.2.12", "@smithy/md5-js": "^4.2.12", "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.25", - "@smithy/middleware-retry": "^4.4.42", - "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", "@smithy/middleware-stack": "^4.2.12", "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/url-parser": "^4.2.12", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.41", - "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", "@smithy/util-endpoints": "^3.3.3", "@smithy/util-middleware": "^4.2.12", "@smithy/util-retry": "^4.2.12", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "@smithy/util-utf8": "^4.2.2", "@smithy/util-waiter": "^4.2.13", "tslib": "^2.6.2" @@ -556,7 +555,6 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.1009.0.tgz", "integrity": "sha512-xhViVpDZpNyqIj09uSVjNnibeL22FcQUNLh7tZL9zfNzs5/Z/ttBOHMiiVhpXI4TF39012ZMw48zavw62VN2zw==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", @@ -604,19 +602,19 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.973.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.973.20.tgz", - "integrity": "sha512-i3GuX+lowD892F3IuJf8o6AbyDupMTdyTxQrCJGcn71ni5hTZ82L4nQhcdumxZ7XPJRJJVHS/CR3uYOIIs0PVA==", + "version": "3.973.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.973.24.tgz", + "integrity": "sha512-vvf82RYQu2GidWAuQq+uIzaPz9V0gSCXVqdVzRosgl5rXcspXOpSD3wFreGGW6AYymPr97Z69kjVnLePBxloDw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "^3.973.6", - "@aws-sdk/xml-builder": "^3.972.11", - "@smithy/core": "^3.23.11", + "@aws-sdk/xml-builder": "^3.972.15", + "@smithy/core": "^3.23.12", "@smithy/node-config-provider": "^4.3.12", "@smithy/property-provider": "^4.2.12", "@smithy/protocol-http": "^5.3.12", "@smithy/signature-v4": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/util-base64": "^4.3.2", "@smithy/util-middleware": "^4.2.12", @@ -641,12 +639,12 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.972.18", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.18.tgz", - "integrity": "sha512-X0B8AlQY507i5DwjLByeU2Af4ARsl9Vr84koDcXCbAkplmU+1xBFWxEPrWRAoh56waBne/yJqEloSwvRf4x6XA==", + "version": "3.972.22", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.22.tgz", + "integrity": "sha512-cXp0VTDWT76p3hyK5D51yIKEfpf6/zsUvMfaB8CkyqadJxMQ8SbEeVroregmDlZbtG31wkj9ei0WnftmieggLg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/types": "^4.13.1", @@ -657,20 +655,20 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.20.tgz", - "integrity": "sha512-ey9Lelj001+oOfrbKmS6R2CJAiXX7QKY4Vj9VJv6L2eE6/VjD8DocHIoYqztTm70xDLR4E1jYPTKfIui+eRNDA==", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.24.tgz", + "integrity": "sha512-h694K7+tRuepSRJr09wTvQfaEnjzsKZ5s7fbESrVds02GT/QzViJ94/HCNwM7bUfFxqpPXHxulZfL6Cou0dwPg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/types": "^3.973.6", "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/property-provider": "^4.2.12", "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "tslib": "^2.6.2" }, "engines": { @@ -678,19 +676,19 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.20.tgz", - "integrity": "sha512-5flXSnKHMloObNF+9N0cupKegnH1Z37cdVlpETVgx8/rAhCe+VNlkcZH3HDg2SDn9bI765S+rhNPXGDJJPfbtA==", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/credential-provider-env": "^3.972.18", - "@aws-sdk/credential-provider-http": "^3.972.20", - "@aws-sdk/credential-provider-login": "^3.972.20", - "@aws-sdk/credential-provider-process": "^3.972.18", - "@aws-sdk/credential-provider-sso": "^3.972.20", - "@aws-sdk/credential-provider-web-identity": "^3.972.20", - "@aws-sdk/nested-clients": "^3.996.10", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.24.tgz", + "integrity": "sha512-O46fFmv0RDFWiWEA9/e6oW92BnsyAXuEgTTasxHligjn2RCr9L/DK773m/NoFaL3ZdNAUz8WxgxunleMnHAkeQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-env": "^3.972.22", + "@aws-sdk/credential-provider-http": "^3.972.24", + "@aws-sdk/credential-provider-login": "^3.972.24", + "@aws-sdk/credential-provider-process": "^3.972.22", + "@aws-sdk/credential-provider-sso": "^3.972.24", + "@aws-sdk/credential-provider-web-identity": "^3.972.24", + "@aws-sdk/nested-clients": "^3.996.14", "@aws-sdk/types": "^3.973.6", "@smithy/credential-provider-imds": "^4.2.12", "@smithy/property-provider": "^4.2.12", @@ -703,13 +701,13 @@ } }, "node_modules/@aws-sdk/credential-provider-login": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.20.tgz", - "integrity": "sha512-gEWo54nfqp2jABMu6HNsjVC4hDLpg9HC8IKSJnp0kqWtxIJYHTmiLSsIfI4ScQjxEwpB+jOOH8dOLax1+hy/Hw==", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.24.tgz", + "integrity": "sha512-sIk8oa6AzDoUhxsR11svZESqvzGuXesw62Rl2oW6wguZx8i9cdGCvkFg+h5K7iucUZP8wyWibUbJMc+J66cu5g==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/nested-clients": "^3.996.10", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/nested-clients": "^3.996.14", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/protocol-http": "^5.3.12", @@ -722,17 +720,17 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.972.21", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.21.tgz", - "integrity": "sha512-hah8if3/B/Q+LBYN5FukyQ1Mym6PLPDsBOBsIgNEYD6wLyZg0UmUF/OKIVC3nX9XH8TfTPuITK+7N/jenVACWA==", + "version": "3.972.25", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.25.tgz", + "integrity": "sha512-m7dR0Dsva2P+VUpL+VkC0WwiDby5pgmWXkRVDB5rlwv0jXJrQJf7YMtCoM8Wjk0H9jPeCYOxOXXcIgp/qp5Alg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "^3.972.18", - "@aws-sdk/credential-provider-http": "^3.972.20", - "@aws-sdk/credential-provider-ini": "^3.972.20", - "@aws-sdk/credential-provider-process": "^3.972.18", - "@aws-sdk/credential-provider-sso": "^3.972.20", - "@aws-sdk/credential-provider-web-identity": "^3.972.20", + "@aws-sdk/credential-provider-env": "^3.972.22", + "@aws-sdk/credential-provider-http": "^3.972.24", + "@aws-sdk/credential-provider-ini": "^3.972.24", + "@aws-sdk/credential-provider-process": "^3.972.22", + "@aws-sdk/credential-provider-sso": "^3.972.24", + "@aws-sdk/credential-provider-web-identity": "^3.972.24", "@aws-sdk/types": "^3.973.6", "@smithy/credential-provider-imds": "^4.2.12", "@smithy/property-provider": "^4.2.12", @@ -745,12 +743,12 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.972.18", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.18.tgz", - "integrity": "sha512-Tpl7SRaPoOLT32jbTWchPsn52hYYgJ0kpiFgnwk8pxTANQdUymVSZkzFvv1+oOgZm1CrbQUP9MBeoMZ9IzLZjA==", + "version": "3.972.22", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.22.tgz", + "integrity": "sha512-Os32s8/4gTZjBk5BtoS/cuTILaj+K72d0dVG7TCJX/fC4598cxwLDmf1AEHEpER5oL3K//yETjvFaz0V8oO5Xw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/shared-ini-file-loader": "^4.4.7", @@ -762,14 +760,14 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.20.tgz", - "integrity": "sha512-p+R+PYR5Z7Gjqf/6pvbCnzEHcqPCpLzR7Yf127HjJ6EAb4hUcD+qsNRnuww1sB/RmSeCLxyay8FMyqREw4p1RA==", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.24.tgz", + "integrity": "sha512-PaFv7snEfypU2yXkpvfyWgddEbDLtgVe51wdZlinhc2doubBjUzJZZpgwuF2Jenl1FBydMhNpMjD6SBUM3qdSA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/nested-clients": "^3.996.10", - "@aws-sdk/token-providers": "3.1009.0", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/nested-clients": "^3.996.14", + "@aws-sdk/token-providers": "3.1015.0", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/shared-ini-file-loader": "^4.4.7", @@ -781,13 +779,13 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.20.tgz", - "integrity": "sha512-rWCmh8o7QY4CsUj63qopzMzkDq/yPpkrpb+CnjBEFSOg/02T/we7sSTVg4QsDiVS9uwZ8VyONhq98qt+pIh3KA==", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.24.tgz", + "integrity": "sha512-J6H4R1nvr3uBTqD/EeIPAskrBtET4WFfNhpFySr2xW7bVZOXpQfPjrLSIx65jcNjBmLXzWq8QFLdVoGxiGG/SA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/nested-clients": "^3.996.10", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/nested-clients": "^3.996.14", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/shared-ini-file-loader": "^4.4.7", @@ -832,15 +830,15 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.974.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.0.tgz", - "integrity": "sha512-BmdDjqvnuYaC4SY7ypHLXfCSsGYGUZkjCLSZyUAAYn1YT28vbNMJNDwhlfkvvE+hQHG5RJDlEmYuvBxcB9jX1g==", + "version": "3.974.4", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.4.tgz", + "integrity": "sha512-fhCbZXPAyy8btnNbnBlR7Cc1nD54cETSvGn2wey71ehsM89AKPO8Dpco9DBAAgvrUdLrdHQepBXcyX4vxC5OwA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", "@aws-crypto/util": "5.2.0", - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/crc64-nvme": "^3.972.5", "@aws-sdk/types": "^3.973.6", "@smithy/is-array-buffer": "^4.2.2", @@ -848,7 +846,7 @@ "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -930,23 +928,23 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.972.20", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.20.tgz", - "integrity": "sha512-yhva/xL5H4tWQgsBjwV+RRD0ByCzg0TcByDCLp3GXdn/wlyRNfy8zsswDtCvr1WSKQkSQYlyEzPuWkJG0f5HvQ==", + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.24.tgz", + "integrity": "sha512-4sXxVC/enYgMkZefNMOzU6C6KtAXEvwVJLgNcUx1dvROH6GvKB5Sm2RGnGzTp0/PwkibIyMw4kOzF8tbLfaBAQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-arn-parser": "^3.972.3", - "@smithy/core": "^3.23.11", + "@smithy/core": "^3.23.12", "@smithy/node-config-provider": "^4.3.12", "@smithy/protocol-http": "^5.3.12", "@smithy/signature-v4": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/util-config-provider": "^4.2.2", "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -969,15 +967,15 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.972.21", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.21.tgz", - "integrity": "sha512-62XRl1GDYPpkt7cx1AX1SPy9wgNE9Iw/NPuurJu4lmhCWS7sGKO+kS53TQ8eRmIxy3skmvNInnk0ZbWrU5Dpyg==", + "version": "3.972.25", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.25.tgz", + "integrity": "sha512-QxiMPofvOt8SwSynTOmuZfvvPM1S9QfkESBxB22NMHTRXCJhR5BygLl8IXfC4jELiisQgwsgUby21GtXfX3f/g==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-endpoints": "^3.996.5", - "@smithy/core": "^3.23.11", + "@smithy/core": "^3.23.12", "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", "@smithy/util-retry": "^4.2.12", @@ -988,44 +986,44 @@ } }, "node_modules/@aws-sdk/nested-clients": { - "version": "3.996.10", - "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.996.10.tgz", - "integrity": "sha512-SlDol5Z+C7Ivnc2rKGqiqfSUmUZzY1qHfVs9myt/nxVwswgfpjdKahyTzLTx802Zfq0NFRs7AejwKzzzl5Co2w==", + "version": "3.996.14", + "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.996.14.tgz", + "integrity": "sha512-fSESKvh1VbfjtV3QMnRkCPZWkUbQof6T/DOpiLp33yP2wA+rbwwnZeG3XT3Ekljgw2I8X4XaQPnw+zSR8yxJ5Q==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.20", + "@aws-sdk/core": "^3.973.24", "@aws-sdk/middleware-host-header": "^3.972.8", "@aws-sdk/middleware-logger": "^3.972.8", "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.21", - "@aws-sdk/region-config-resolver": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", "@aws-sdk/types": "^3.973.6", "@aws-sdk/util-endpoints": "^3.996.5", "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.7", - "@smithy/config-resolver": "^4.4.11", - "@smithy/core": "^3.23.11", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", "@smithy/fetch-http-handler": "^5.3.15", "@smithy/hash-node": "^4.2.12", "@smithy/invalid-dependency": "^4.2.12", "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.25", - "@smithy/middleware-retry": "^4.4.42", - "@smithy/middleware-serde": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", "@smithy/middleware-stack": "^4.2.12", "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/url-parser": "^4.2.12", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.41", - "@smithy/util-defaults-mode-node": "^4.2.44", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", "@smithy/util-endpoints": "^3.3.3", "@smithy/util-middleware": "^4.2.12", "@smithy/util-retry": "^4.2.12", @@ -1037,13 +1035,13 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.972.8.tgz", - "integrity": "sha512-1eD4uhTDeambO/PNIDVG19A6+v4NdD7xzwLHDutHsUqz0B+i661MwQB2eYO4/crcCvCiQG4SRm1k81k54FEIvw==", + "version": "3.972.9", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.972.9.tgz", + "integrity": "sha512-eQ+dFU05ZRC/lC2XpYlYSPlXtX3VT8sn5toxN2Fv7EXlMoA2p9V7vUBKqHunfD4TRLpxUq8Y8Ol/nCqiv327Ng==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "^3.973.6", - "@smithy/config-resolver": "^4.4.11", + "@smithy/config-resolver": "^4.4.13", "@smithy/node-config-provider": "^4.3.12", "@smithy/types": "^4.13.1", "tslib": "^2.6.2" @@ -1053,12 +1051,12 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.996.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.8.tgz", - "integrity": "sha512-n1qYFD+tbqZuyskVaxUE+t10AUz9g3qzDw3Tp6QZDKmqsjfDmZBd4GIk2EKJJNtcCBtE5YiUjDYA+3djFAFBBg==", + "version": "3.996.12", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.12.tgz", + "integrity": "sha512-abRObSqjVeKUUHIZfAp78PTYrEsxCgVKDs/YET357pzT5C02eDDEvmWyeEC2wglWcYC4UTbBFk22gd2YJUlCQg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-sdk-s3": "^3.972.20", + "@aws-sdk/middleware-sdk-s3": "^3.972.24", "@aws-sdk/types": "^3.973.6", "@smithy/protocol-http": "^5.3.12", "@smithy/signature-v4": "^5.3.12", @@ -1070,13 +1068,13 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.1009.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1009.0.tgz", - "integrity": "sha512-KCPLuTqN9u0Rr38Arln78fRG9KXpzsPWmof+PZzfAHMMQq2QED6YjQrkrfiH7PDefLWEposY1o4/eGwrmKA4JA==", + "version": "3.1015.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1015.0.tgz", + "integrity": "sha512-3OSD4y110nisRhHzFOjoEeHU4GQL4KpzkX9PxzWaiZe0Yg2+thZKM0Pn9DjYwezH5JYfh/K++xK/SE0IHGrmCQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.20", - "@aws-sdk/nested-clients": "^3.996.10", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/nested-clients": "^3.996.14", "@aws-sdk/types": "^3.973.6", "@smithy/property-provider": "^4.2.12", "@smithy/shared-ini-file-loader": "^4.4.7", @@ -1151,12 +1149,12 @@ } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.973.7", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.973.7.tgz", - "integrity": "sha512-Hz6EZMUAEzqUd7e+vZ9LE7mn+5gMbxltXy18v+YSFY+9LBJz15wkNZvw5JqfX3z0FS9n3bgUtz3L5rAsfh4YlA==", + "version": "3.973.11", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.973.11.tgz", + "integrity": "sha512-1qdXbXo2s5MMLpUvw00284LsbhtlQ4ul7Zzdn5n+7p4WVgCMLqhxImpHIrjSoc72E/fyc4Wq8dLtUld2Gsh+lA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "^3.972.21", + "@aws-sdk/middleware-user-agent": "^3.972.25", "@aws-sdk/types": "^3.973.6", "@smithy/node-config-provider": "^4.3.12", "@smithy/types": "^4.13.1", @@ -1176,13 +1174,13 @@ } }, "node_modules/@aws-sdk/xml-builder": { - "version": "3.972.11", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.11.tgz", - "integrity": "sha512-iitV/gZKQMvY9d7ovmyFnFuTHbBAtrmLnvaSb/3X8vOKyevwtpmEtyc8AdhVWZe0pI/1GsHxlEvQeOePFzy7KQ==", + "version": "3.972.15", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.15.tgz", + "integrity": "sha512-PxMRlCFNiQnke9YR29vjFQwz4jq+6Q04rOVFeTDR2K7Qpv9h9FOWOxG+zJjageimYbWqE3bTuLjmryWHAWbvaA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^4.13.1", - "fast-xml-parser": "5.4.1", + "fast-xml-parser": "5.5.8", "tslib": "^2.6.2" }, "engines": { @@ -2096,21 +2094,6 @@ "uninstall": "^0.0.0" } }, - "node_modules/@nhsdigital/eps-cdk-constructs": { - "version": "1.6.0", - "resolved": "file:nhsdigital-eps-cdk-constructs-1.6.0.tgz", - "integrity": "sha512-pXQR0pWmBeaRdHoD6pLvbjKvDJnrorqaMiemCqK2TfUWM3B77aj14YdeaUo8lAC6tDfNYAr/zzao+DjT04z5fA==", - "license": "MIT", - "dependencies": { - "@aws-sdk/client-cloudformation": "^3.1008.0", - "@aws-sdk/client-route-53": "^3.1008.0", - "@aws-sdk/client-s3": "^3.1008.0", - "aws-cdk": "^2.1111.0", - "aws-cdk-lib": "^2.243.0", - "cdk-nag": "^2.37.52", - "constructs": "^10.5.1" - } - }, "node_modules/@nhsdigital/eps-spine-client": { "version": "2.1.78", "license": "MIT", @@ -2139,7 +2122,6 @@ "version": "1.9.0", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=8.0.0" } @@ -3071,9 +3053,9 @@ } }, "node_modules/@smithy/config-resolver": { - "version": "4.4.11", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.11.tgz", - "integrity": "sha512-YxFiiG4YDAtX7WMN7RuhHZLeTmRRAOyCbr+zB8e3AQzHPnUhS8zXjB1+cniPVQI3xbWsQPM0X2aaIkO/ME0ymw==", + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.13.tgz", + "integrity": "sha512-iIzMC5NmOUP6WL6o8iPBjFhUhBZ9pPjpUpQYWMUFQqKyXXzOftbfK8zcQCz/jFV1Psmf05BK5ypx4K2r4Tnwdg==", "license": "Apache-2.0", "dependencies": { "@smithy/node-config-provider": "^4.3.12", @@ -3088,9 +3070,9 @@ } }, "node_modules/@smithy/core": { - "version": "3.23.11", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.23.11.tgz", - "integrity": "sha512-952rGf7hBRnhUIaeLp6q4MptKW8sPFe5VvkoZ5qIzFAtx6c/QZ/54FS3yootsyUSf9gJX/NBqEBNdNR7jMIlpQ==", + "version": "3.23.12", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.23.12.tgz", + "integrity": "sha512-o9VycsYNtgC+Dy3I0yrwCqv9CWicDnke0L7EVOrZtJpjb2t0EjaEofmMrYc0T1Kn3yk32zm6cspxF9u9Bj7e5w==", "license": "Apache-2.0", "dependencies": { "@smithy/protocol-http": "^5.3.12", @@ -3099,7 +3081,7 @@ "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "@smithy/util-utf8": "^4.2.2", "@smithy/uuid": "^1.1.2", "tslib": "^2.6.2" @@ -3306,13 +3288,13 @@ } }, "node_modules/@smithy/middleware-endpoint": { - "version": "4.4.25", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.4.25.tgz", - "integrity": "sha512-dqjLwZs2eBxIUG6Qtw8/YZ4DvzHGIf0DA18wrgtfP6a50UIO7e2nY0FPdcbv5tVJKqWCCU5BmGMOUwT7Puan+A==", + "version": "4.4.27", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.4.27.tgz", + "integrity": "sha512-T3TFfUgXQlpcg+UdzcAISdZpj4Z+XECZ/cefgA6wLBd6V4lRi0svN2hBouN/be9dXQ31X4sLWz3fAQDf+nt6BA==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.11", - "@smithy/middleware-serde": "^4.2.14", + "@smithy/core": "^3.23.12", + "@smithy/middleware-serde": "^4.2.15", "@smithy/node-config-provider": "^4.3.12", "@smithy/shared-ini-file-loader": "^4.4.7", "@smithy/types": "^4.13.1", @@ -3325,15 +3307,15 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "4.4.42", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.42.tgz", - "integrity": "sha512-vbwyqHRIpIZutNXZpLAozakzamcINaRCpEy1MYmK6xBeW3xN+TyPRA123GjXnuxZIjc9848MRRCugVMTXxC4Eg==", + "version": "4.4.44", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.44.tgz", + "integrity": "sha512-Y1Rav7m5CFRPQyM4CI0koD/bXjyjJu3EQxZZhtLGD88WIrBrQ7kqXM96ncd6rYnojwOo/u9MXu57JrEvu/nLrA==", "license": "Apache-2.0", "dependencies": { "@smithy/node-config-provider": "^4.3.12", "@smithy/protocol-http": "^5.3.12", "@smithy/service-error-classification": "^4.2.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "@smithy/util-middleware": "^4.2.12", "@smithy/util-retry": "^4.2.12", @@ -3345,12 +3327,12 @@ } }, "node_modules/@smithy/middleware-serde": { - "version": "4.2.14", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.14.tgz", - "integrity": "sha512-+CcaLoLa5apzSRtloOyG7lQvkUw2ZDml3hRh4QiG9WyEPfW5Ke/3tPOPiPjUneuT59Tpn8+c3RVaUvvkkwqZwg==", + "version": "4.2.15", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.15.tgz", + "integrity": "sha512-ExYhcltZSli0pgAKOpQQe1DLFBLryeZ22605y/YS+mQpdNWekum9Ujb/jMKfJKgjtz1AZldtwA/wCYuKJgjjlg==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.11", + "@smithy/core": "^3.23.12", "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", "tslib": "^2.6.2" @@ -3388,9 +3370,9 @@ } }, "node_modules/@smithy/node-http-handler": { - "version": "4.4.16", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.16.tgz", - "integrity": "sha512-ULC8UCS/HivdCB3jhi+kLFYe4B5gxH2gi9vHBfEIiRrT2jfKiZNiETJSlzRtE6B26XbBHjPtc8iZKSNqMol9bw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.5.0.tgz", + "integrity": "sha512-Rnq9vQWiR1+/I6NZZMNzJHV6pZYyEHt2ZnuV3MG8z2NNenC4i/8Kzttz7CjZiHSmsN5frhXhg17z3Zqjjhmz1A==", "license": "Apache-2.0", "dependencies": { "@smithy/abort-controller": "^4.2.12", @@ -3501,17 +3483,17 @@ } }, "node_modules/@smithy/smithy-client": { - "version": "4.12.5", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.12.5.tgz", - "integrity": "sha512-UqwYawyqSr/aog8mnLnfbPurS0gi4G7IYDcD28cUIBhsvWs1+rQcL2IwkUQ+QZ7dibaoRzhNF99fAQ9AUcO00w==", + "version": "4.12.7", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.12.7.tgz", + "integrity": "sha512-q3gqnwml60G44FECaEEsdQMplYhDMZYCtYhMCzadCnRnnHIobZJjegmdoUo6ieLQlPUzvrMdIJUpx6DoPmzANQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.11", - "@smithy/middleware-endpoint": "^4.4.25", + "@smithy/core": "^3.23.12", + "@smithy/middleware-endpoint": "^4.4.27", "@smithy/middleware-stack": "^4.2.12", "@smithy/protocol-http": "^5.3.12", "@smithy/types": "^4.13.1", - "@smithy/util-stream": "^4.5.19", + "@smithy/util-stream": "^4.5.20", "tslib": "^2.6.2" }, "engines": { @@ -3598,13 +3580,13 @@ } }, "node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.3.41", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.41.tgz", - "integrity": "sha512-M1w1Ux0rSVvBOxIIiqbxvZvhnjQ+VUjJrugtORE90BbadSTH+jsQL279KRL3Hv0w69rE7EuYkV/4Lepz/NBW9g==", + "version": "4.3.43", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.43.tgz", + "integrity": "sha512-Qd/0wCKMaXxev/z00TvNzGCH2jlKKKxXP1aDxB6oKwSQthe3Og2dMhSayGCnsma1bK/kQX1+X7SMP99t6FgiiQ==", "license": "Apache-2.0", "dependencies": { "@smithy/property-provider": "^4.2.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "tslib": "^2.6.2" }, @@ -3613,16 +3595,16 @@ } }, "node_modules/@smithy/util-defaults-mode-node": { - "version": "4.2.44", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.44.tgz", - "integrity": "sha512-YPze3/lD1KmWuZsl9JlfhcgGLX7AXhSoaCDtiPntUjNW5/YY0lOHjkcgxyE9x/h5vvS1fzDifMGjzqnNlNiqOQ==", + "version": "4.2.47", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.47.tgz", + "integrity": "sha512-qSRbYp1EQ7th+sPFuVcVO05AE0QH635hycdEXlpzIahqHHf2Fyd/Zl+8v0XYMJ3cgDVPa0lkMefU7oNUjAP+DQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.4.11", + "@smithy/config-resolver": "^4.4.13", "@smithy/credential-provider-imds": "^4.2.12", "@smithy/node-config-provider": "^4.3.12", "@smithy/property-provider": "^4.2.12", - "@smithy/smithy-client": "^4.12.5", + "@smithy/smithy-client": "^4.12.7", "@smithy/types": "^4.13.1", "tslib": "^2.6.2" }, @@ -3684,13 +3666,13 @@ } }, "node_modules/@smithy/util-stream": { - "version": "4.5.19", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.19.tgz", - "integrity": "sha512-v4sa+3xTweL1CLO2UP0p7tvIMH/Rq1X4KKOxd568mpe6LSLMQCnDHs4uv7m3ukpl3HvcN2JH6jiCS0SNRXKP/w==", + "version": "4.5.20", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.20.tgz", + "integrity": "sha512-4yXLm5n/B5SRBR2p8cZ90Sbv4zL4NKsgxdzCzp/83cXw2KxLEumt5p+GAVyRNZgQOSrzXn9ARpO0lUe8XSlSDw==", "license": "Apache-2.0", "dependencies": { "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/node-http-handler": "^4.4.16", + "@smithy/node-http-handler": "^4.5.0", "@smithy/types": "^4.13.1", "@smithy/util-base64": "^4.3.2", "@smithy/util-buffer-from": "^4.2.2", @@ -3841,7 +3823,6 @@ "integrity": "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "undici-types": "~7.18.0" } @@ -3892,7 +3873,6 @@ "integrity": "sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.57.0", "@typescript-eslint/types": "8.57.0", @@ -4272,7 +4252,6 @@ "version": "8.16.0", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -4311,7 +4290,6 @@ "version": "6.14.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -4429,9 +4407,9 @@ "license": "MIT" }, "node_modules/aws-cdk": { - "version": "2.1111.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.1111.0.tgz", - "integrity": "sha512-69AVF04cxbAhYzmeJYtUF5bs6ruNnH05EQZJfjadk5Lpg+HVaJY2NjG/2qgsMmKrfRgvLet73Ir8ehVlAaaGng==", + "version": "2.1113.0", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.1113.0.tgz", + "integrity": "sha512-7D2cVJ66tRZ7KbdTfQLgwPu/XvAeb3r42MMVG605kaxWdIUczdJcuk9x5JVahDCFKRcjepLLYu5N+ovnHFYxBQ==", "license": "Apache-2.0", "bin": { "cdk": "bin/cdk" @@ -4441,9 +4419,9 @@ } }, "node_modules/aws-cdk-lib": { - "version": "2.243.0", - "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.243.0.tgz", - "integrity": "sha512-qIhg/3gSNeZ9LoVmDATO45HPk+POkoCfPZRezeOPhd2kAJ/wzYswyUcMqpDWXrlRrEVYntxsykQs+2eMA04Isg==", + "version": "2.244.0", + "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.244.0.tgz", + "integrity": "sha512-j5FVeZv5W+v6j6OnW8RjoN04T+8pYvDJJV7yXhhj4IiGDKPgMH3fflQLQXJousd2QQk+nSAjghDVJcrZ4GFyGA==", "bundleDependencies": [ "@balena/dockerignore", "@aws-cdk/cloud-assembly-api", @@ -4836,7 +4814,6 @@ "node_modules/axios": { "version": "1.13.6", "license": "MIT", - "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", @@ -5085,8 +5062,7 @@ "version": "10.5.1", "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.5.1.tgz", "integrity": "sha512-f/TfFXiS3G/yVIXDjOQn9oTlyu9Wo7Fxyjj7lb8r92iO81jR2uST+9MstxZTmDGx/CgIbxCXkFXgupnLTNxQZg==", - "license": "Apache-2.0", - "peer": true + "license": "Apache-2.0" }, "node_modules/convert-source-map": { "version": "2.0.0", @@ -5355,7 +5331,6 @@ "integrity": "sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -5638,17 +5613,24 @@ "license": "BSD-3-Clause" }, "node_modules/fast-xml-builder": { - "version": "1.0.0", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.4.tgz", + "integrity": "sha512-f2jhpN4Eccy0/Uz9csxh3Nu6q4ErKxf0XIsasomfOihuSUa3/xw6w8dnOtCDgEItQFJG8KyXPzQXzcODDrrbOg==", "funding": [ { "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } ], - "license": "MIT" + "license": "MIT", + "dependencies": { + "path-expression-matcher": "^1.1.3" + } }, "node_modules/fast-xml-parser": { - "version": "5.4.1", + "version": "5.5.8", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.5.8.tgz", + "integrity": "sha512-Z7Fh2nVQSb2d+poDViM063ix2ZGt9jmY1nWhPfHBOK2Hgnb/OW3P4Et3P/81SEej0J7QbWtJqxO05h8QYfK7LQ==", "funding": [ { "type": "github", @@ -5657,8 +5639,9 @@ ], "license": "MIT", "dependencies": { - "fast-xml-builder": "^1.0.0", - "strnum": "^2.1.2" + "fast-xml-builder": "^1.1.4", + "path-expression-matcher": "^1.2.0", + "strnum": "^2.2.0" }, "bin": { "fxparser": "src/cli/cli.js" @@ -6564,7 +6547,6 @@ "version": "6.15.0", "dev": true, "license": "MIT", - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -6864,6 +6846,21 @@ "node": ">=8" } }, + "node_modules/path-expression-matcher": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.2.0.tgz", + "integrity": "sha512-DwmPWeFn+tq7TiyJ2CxezCAirXjFxvaiD03npak3cRjlP9+OjTmSy1EpIrEbh+l6JgUundniloMLDQ/6VTdhLQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/path-key": { "version": "3.1.1", "dev": true, @@ -7050,7 +7047,6 @@ "version": "19.2.1", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -7059,7 +7055,6 @@ "version": "19.2.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -7432,7 +7427,9 @@ } }, "node_modules/strnum": { - "version": "2.1.2", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.2.2.tgz", + "integrity": "sha512-DnR90I+jtXNSTXWdwrEy9FakW7UX+qUZg28gj5fk2vxxl7uS/3bpI4fjFYVmdK9etptYBPNkpahuQnEwhwECqA==", "funding": [ { "type": "github", @@ -7445,7 +7442,6 @@ "version": "6.3.9", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -7675,7 +7671,6 @@ "version": "5.9.3", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7758,7 +7753,6 @@ "integrity": "sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@vitest/expect": "4.1.0", "@vitest/mocker": "4.1.0", @@ -7897,7 +7891,6 @@ "integrity": "sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", @@ -7971,6 +7964,24 @@ } } }, + "node_modules/vitest/node_modules/yaml": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", + "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "dev": true, @@ -8168,7 +8179,7 @@ "packages/cdk": { "version": "0.1.0", "dependencies": { - "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "@nhsdigital/eps-cdk-constructs": "@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", "aws-cdk": "^2.1106.0", "aws-cdk-lib": "^2.239.0", "cdk-nag": "^2.37.55", @@ -8176,6 +8187,24 @@ "tsx": "^4.21.0" } }, + "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params": { + "extraneous": true + }, + "packages/cdk/node_modules/@nhsdigital/eps-cdk-constructs": { + "version": "1.0.0", + "resolved": "file:nhsdigital-eps-cdk-constructs-1.0.0.tgz", + "integrity": "sha512-DIfdGofq58j5oeEXur4+CV5ghLHhfECEtqxsja2DbCHuMVFzIWgeewUHeAtuyR7wuwWi5ZCW9Rs7MaG3JUwaBQ==", + "license": "MIT", + "dependencies": { + "@aws-sdk/client-cloudformation": "^3.1013.0", + "@aws-sdk/client-route-53": "^3.1013.0", + "@aws-sdk/client-s3": "^3.1013.0", + "aws-cdk": "^2.1112.0", + "aws-cdk-lib": "^2.244.0", + "cdk-nag": "^2.37.52", + "constructs": "^10.5.1" + } + }, "packages/common/testing": { "name": "@pfp-common/testing", "version": "1.0.0", diff --git a/packages/cdk/package.json b/packages/cdk/package.json index 35fd4d867..eb214bd14 100644 --- a/packages/cdk/package.json +++ b/packages/cdk/package.json @@ -13,7 +13,7 @@ "tsx": "tsx" }, "dependencies": { - "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "@nhsdigital/eps-cdk-constructs": "@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", "aws-cdk": "^2.1106.0", "aws-cdk-lib": "^2.239.0", "cdk-nag": "^2.37.55", diff --git a/packages/cdk/resources/Functions.ts b/packages/cdk/resources/Functions.ts index c8b2d89f7..39dc65f5f 100644 --- a/packages/cdk/resources/Functions.ts +++ b/packages/cdk/resources/Functions.ts @@ -1,5 +1,5 @@ -import {Aws, Fn, RemovalPolicy} from "aws-cdk-lib" -import {ManagedPolicy, PolicyStatement} from "aws-cdk-lib/aws-iam" +import {Fn, RemovalPolicy} from "aws-cdk-lib" +import {ManagedPolicy} from "aws-cdk-lib/aws-iam" import {Construct} from "constructs" import {TypescriptLambdaFunction} from "@nhsdigital/eps-cdk-constructs" import {Code, LayerVersion} from "aws-cdk-lib/aws-lambda" @@ -16,6 +16,7 @@ export interface FunctionsProps { readonly allowNhsNumberOverride: string readonly logRetentionInDays: number readonly logLevel: string + readonly getPfPParametersPolicy: ManagedPolicy } const baseDir = resolve(__dirname, "../../..") @@ -23,7 +24,7 @@ const baseDir = resolve(__dirname, "../../..") export class Functions extends Construct { functions: {[key: string]: TypescriptLambdaFunction} - public constructor(scope: Construct, id: string, props: FunctionsProps){ + public constructor(scope: Construct, id: string, props: FunctionsProps) { super(scope, id) // Imports @@ -33,23 +34,6 @@ export class Functions extends Construct { const lambdaDecryptSecretsKMSPolicy = ManagedPolicy.fromManagedPolicyArn( this, "lambdaDecryptSecretsKMSPolicy", Fn.importValue("account-resources:LambdaDecryptSecretsKMSPolicy")) - const getPfPParametersPolicy = new ManagedPolicy(this, "GetPfPParametersPolicy", { - description: "Read test case SSM parameters", - statements: [ - new PolicyStatement({ - actions: [ - "ssm:GetParameter", - "ssm:GetParameters" - ], - resources: [ - `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC007NHSNumber`, - `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC008NHSNumber`, - `arn:aws:ssm:${Aws.REGION}:${Aws.ACCOUNT_ID}:parameter/${props.stackName}-TC009NHSNumber` - ] - }) - ] - }) - const lambdaDefaultEnvironmentVariables: {[key: string]: string} = { STACK_NAME: props.stackName, TargetSpineServer: props.targetSpineServer, @@ -85,7 +69,7 @@ export class Functions extends Construct { additionalPolicies: [ lambdaAccessSecretsPolicy, lambdaDecryptSecretsKMSPolicy, - getPfPParametersPolicy + props.getPfPParametersPolicy ], logRetentionInDays: props.logRetentionInDays, logLevel: props.logLevel, @@ -104,7 +88,7 @@ export class Functions extends Construct { EXPECT_STATUS_UPDATES: props.toggleGetStatusUpdates }, additionalPolicies: [ - getPfPParametersPolicy + props.getPfPParametersPolicy ], logRetentionInDays: props.logRetentionInDays, logLevel: props.logLevel, diff --git a/packages/cdk/stacks/PfPApiStack.ts b/packages/cdk/stacks/PfPApiStack.ts index b6f5fa364..16d92a36d 100644 --- a/packages/cdk/stacks/PfPApiStack.ts +++ b/packages/cdk/stacks/PfPApiStack.ts @@ -3,7 +3,12 @@ import {nagSuppressions} from "../nagSuppressions" import {Functions} from "../resources/Functions" import {StateMachines} from "../resources/StateMachines" import {Apis} from "../resources/Apis" -import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" +import { + StandardStackProps, + SsmParametersConstruct, + SsmParameterDefinition, + SsmParametersConstructProps +} from "@nhsdigital/eps-cdk-constructs" export interface PfPApiStackProps extends StandardStackProps { readonly stackName: string @@ -19,9 +24,24 @@ export interface PfPApiStackProps extends StandardStackProps { } export class PfPApiStack extends Stack { - public constructor(scope: App, id: string, props: PfPApiStackProps){ + public constructor(scope: App, id: string, props: PfPApiStackProps) { super(scope, id, props) + const parameterDefinitions: Array = [ + { + id: "aaa", + nameSuffix: "param1", + description: "Example parameter 1", + value: "changeme" + } + ] + const ssmParametersProps: SsmParametersConstructProps = { + namePrefix: "pfp-api", + parameters: parameterDefinitions, + readPolicyDescription: "Read access for PfP API SSM parameters" + } + const params = new SsmParametersConstruct(this, "PfPApiSsmParameters", ssmParametersProps) + // Resources const functions = new Functions(this, "Functions", { stackName: props.stackName, @@ -33,7 +53,8 @@ export class PfPApiStack extends Stack { toggleGetStatusUpdates: props.toggleGetStatusUpdates, allowNhsNumberOverride: props.allowNhsNumberOverride, logRetentionInDays: props.logRetentionInDays, - logLevel: props.logLevel + logLevel: props.logLevel, + getPfPParametersPolicy: params.readParametersPolicy }) const stateMachines = new StateMachines(this, "StateMachines", { From ec9384e56f302f90f183d52fe2536a259c0dfbaa Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Tue, 24 Mar 2026 16:30:47 +0000 Subject: [PATCH 11/29] Add cdk deploy workflows --- .github/workflows/cdk_package_code.yml | 65 +++++ .github/workflows/cdk_release_code.yml | 313 +++++++++++++++++++++++++ .github/workflows/pull_request.yml | 39 ++- 3 files changed, 416 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/cdk_package_code.yml create mode 100644 .github/workflows/cdk_release_code.yml diff --git a/.github/workflows/cdk_package_code.yml b/.github/workflows/cdk_package_code.yml new file mode 100644 index 000000000..a7efffd01 --- /dev/null +++ b/.github/workflows/cdk_package_code.yml @@ -0,0 +1,65 @@ +name: cdk package code + +on: + workflow_call: + inputs: + pinned_image: + type: string + required: true + +jobs: + package_code: + runs-on: ubuntu-22.04 + container: + image: ${{ inputs.pinned_image }} + options: --user 1001:1001 --group-add 128 + defaults: + run: + shell: bash + permissions: + id-token: write + contents: read + packages: read + steps: + - name: copy .tool-versions + run: | + cp /home/vscode/.tool-versions "$HOME/.tool-versions" + + - name: Checkout code + uses: actions/checkout@v5 + + - name: Setting up .npmrc + env: + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + echo "//npm.pkg.github.com/:_authToken=${NODE_AUTH_TOKEN}" >> ~/.npmrc + echo "@nhsdigital:registry=https://npm.pkg.github.com" >> ~/.npmrc + + - name: make install + run: | + make install + make compile + + - name: download the get secrets lambda layer + run: | + make download-get-secrets-layer + + - name: "Tar files" + run: | + tar -cf artifact.tar \ + .tool-versions \ + packages \ + node_modules \ + package.json \ + package-lock.json \ + tsconfig.defaults.json \ + tsconfig.build.json \ + Makefile \ + poetry.lock \ + pyproject.toml + + - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f + name: upload build artifact + with: + name: build_artifact + path: artifact.tar diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml new file mode 100644 index 000000000..7c8db4079 --- /dev/null +++ b/.github/workflows/cdk_release_code.yml @@ -0,0 +1,313 @@ +name: cdk release code + +on: + workflow_call: + inputs: + IS_PULL_REQUEST: + type: boolean + default: false + STACK_NAME: + required: true + type: string + TARGET_ENVIRONMENT: + required: true + type: string + APIGEE_ENVIRONMENT: + required: true + type: string + ENABLE_MUTUAL_TLS: + required: true + type: boolean + BUILD_ARTIFACT: + required: true + type: string + TRUSTSTORE_FILE: + required: true + type: string + VERSION_NUMBER: + required: true + type: string + COMMIT_ID: + required: true + type: string + CDK_APP_NAME: + type: string + default: PfPApiApp + LOG_LEVEL: + required: true + type: string + LOG_RETENTION_DAYS: + required: true + type: string + CREATE_INT_RELEASE_NOTES: + type: boolean + default: false + CREATE_INT_RC_RELEASE_NOTES: + type: boolean + default: false + CREATE_PROD_RELEASE_NOTES: + type: boolean + default: false + MARK_JIRA_RELEASED: + type: boolean + default: false + TOGGLE_GET_STATUS_UPDATES: + type: boolean + default: false + RUN_REGRESSION_TESTS: + type: boolean + default: true + ENABLE_ALERTS: + type: boolean + default: true + STATE_MACHINE_LOG_LEVEL: + type: string + REGRESSION_TEST_PRODUCT: + type: string + FORWARD_CSOC_LOGS: + required: true + type: boolean + TC007_NHS_NUMBERS: + required: false + type: string + TC008_NHS_NUMBERS: + required: false + type: string + TC009_NHS_NUMBERS: + required: false + type: string + DEPLOY_APIGEE: + type: boolean + default: true + MTLS_KEY: + type: string + required: true + ALLOW_NHS_NUMBER_OVERRIDE: + required: true + type: boolean + REGRESSION_TEST_NON_PROXYGEN: + type: boolean + pinned_image: + type: string + required: true + secrets: + CLOUD_FORMATION_DEPLOY_ROLE: + required: true + TARGET_SPINE_SERVER: + required: true + TARGET_SERVICE_SEARCH_SERVER: + required: true + DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE: + required: false + INT_CLOUD_FORMATION_CHECK_VERSION_ROLE: + required: false + PROD_CLOUD_FORMATION_CHECK_VERSION_ROLE: + required: false + DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: + required: false + REGRESSION_TESTS_PEM: + required: false + PROXYGEN_ROLE: + required: false + +jobs: + release_code_and_api: + runs-on: ubuntu-22.04 + environment: ${{ inputs.TARGET_ENVIRONMENT }} + container: + image: ${{ inputs.pinned_image }} + options: --user 1001:1001 --group-add 128 + defaults: + run: + shell: bash + name: deploy cdk app ${{ inputs.CDK_APP_NAME }} + permissions: + id-token: write + contents: write + env: + AWS_MAX_RETRY: 20 + + steps: + - name: copy .tool-versions + run: | + cp /home/vscode/.tool-versions "$HOME/.tool-versions" + + - name: Checkout local github actions + uses: actions/checkout@v5 + with: + fetch-depth: 0 + sparse-checkout: | + .github + + - name: create_int_rc_release_notes + uses: ./.github/actions/update_confluence_jira + if: ${{ inputs.CREATE_INT_RC_RELEASE_NOTES == true }} + with: + TARGET_ENVIRONMENT: int + RELEASE_TAG: ${{ inputs.VERSION_NUMBER }} + CONFLUENCE_PAGE_ID: "768067994" + CREATE_RC_RELEASE_NOTES: true + DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + TARGET_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.INT_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE }} + + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v5 + with: + aws-region: eu-west-2 + role-to-assume: ${{ secrets.CLOUD_FORMATION_DEPLOY_ROLE }} + role-session-name: aws-pfp-release-code + + - name: download build artifact + uses: actions/download-artifact@v5 + with: + name: ${{ inputs.BUILD_ARTIFACT }} + path: . + + - name: extract build_artifact + run: | + tar -xf artifact.tar + + - name: Show diff + env: + CDK_APP_NAME: ${{ inputs.CDK_APP_NAME }} + REQUIRE_APPROVAL: never + CDK_CONFIG_stackName: ${{ inputs.STACK_NAME }} + CDK_CONFIG_versionNumber: ${{ inputs.VERSION_NUMBER }} + CDK_CONFIG_commitId: ${{ inputs.COMMIT_ID }} + CDK_CONFIG_isPullRequest: ${{ inputs.IS_PULL_REQUEST }} + CDK_CONFIG_environment: ${{ inputs.TARGET_ENVIRONMENT }} + CDK_CONFIG_logRetentionInDays: ${{ inputs.LOG_RETENTION_DAYS }} + CDK_CONFIG_logLevel: ${{ inputs.LOG_LEVEL }} + CDK_CONFIG_targetSpineServer: ${{ secrets.TARGET_SPINE_SERVER }} + CDK_CONFIG_targetServiceSearchServer: ${{ secrets.TARGET_SERVICE_SEARCH_SERVER }} + CDK_CONFIG_toggleGetStatusUpdates: ${{ inputs.TOGGLE_GET_STATUS_UPDATES }} + CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} + CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} + CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} + run: npm run cdk-diff --workspace packages/cdk + + - name: Deploy code + env: + CDK_APP_NAME: ${{ inputs.CDK_APP_NAME }} + REQUIRE_APPROVAL: never + CDK_CONFIG_stackName: ${{ inputs.STACK_NAME }} + CDK_CONFIG_versionNumber: ${{ inputs.VERSION_NUMBER }} + CDK_CONFIG_commitId: ${{ inputs.COMMIT_ID }} + CDK_CONFIG_isPullRequest: ${{ inputs.IS_PULL_REQUEST }} + CDK_CONFIG_environment: ${{ inputs.TARGET_ENVIRONMENT }} + CDK_CONFIG_logRetentionInDays: ${{ inputs.LOG_RETENTION_DAYS }} + CDK_CONFIG_logLevel: ${{ inputs.LOG_LEVEL }} + CDK_CONFIG_targetSpineServer: ${{ secrets.TARGET_SPINE_SERVER }} + CDK_CONFIG_targetServiceSearchServer: ${{ secrets.TARGET_SERVICE_SEARCH_SERVER }} + CDK_CONFIG_toggleGetStatusUpdates: ${{ inputs.TOGGLE_GET_STATUS_UPDATES }} + CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} + CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} + CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} + run: npm run cdk-deploy --workspace packages/cdk + + - name: get mtls secrets + shell: bash + run: | + mkdir -p ~/.proxygen/tmp + client_private_key_arn=$(aws cloudformation list-exports --query "Exports[?Name=='account-resources:PfpClientKeySecret'].Value" --output text) + client_cert_arn=$(aws cloudformation list-exports --query "Exports[?Name=='account-resources:PfpClientCertSecret'].Value" --output text) + aws secretsmanager get-secret-value --secret-id "${client_private_key_arn}" --query SecretString --output text > ~/.proxygen/tmp/client_private_key + aws secretsmanager get-secret-value --secret-id "${client_cert_arn}" --query SecretString --output text > ~/.proxygen/tmp/client_cert + + - name: Configure AWS Credentials for api release + if: ${{ inputs.DEPLOY_APIGEE == true && always() && !failure() && !cancelled() }} + uses: aws-actions/configure-aws-credentials@8df5847569e6427dd6c4fb1cf565c83acfa8afa7 + with: + aws-region: eu-west-2 + role-to-assume: ${{ secrets.PROXYGEN_ROLE }} + role-session-name: pfp-api-proxygen + + - name: Deploy PFP API to Apigee + shell: bash + if: ${{ inputs.DEPLOY_APIGEE == true && always() && !failure() && !cancelled() }} + env: + API_TYPE: standard + VERSION_NUMBER: ${{ inputs.VERSION_NUMBER }} + SPEC_PATH: ./packages/specification/dist/prescriptions-for-patients.resolved.json + STACK_NAME: ${{ inputs.STACK_NAME }} + AWS_ENVIRONMENT: ${{ inputs.TARGET_ENVIRONMENT }} + APIGEE_ENVIRONMENT: ${{ inputs.APIGEE_ENVIRONMENT }} + PROXYGEN_PRIVATE_KEY_NAME: PrescriptionsForPatientsProxygenPrivateKey + PROXYGEN_KID: "2026-01-22-PROD-prescriptions-for-patients-v2" + DRY_RUN: false + ENABLE_MUTUAL_TLS: ${{ inputs.ENABLE_MUTUAL_TLS }} + MTLS_KEY: ${{ inputs.MTLS_KEY }} + IS_PULL_REQUEST: ${{ inputs.IS_PULL_REQUEST }} + run: ./.github/scripts/deploy_api.sh + + - uses: actions/upload-artifact@v4 + name: Upload specs + with: + name: ${{ inputs.APIGEE_ENVIRONMENT }}-specs + path: | + ./packages/specification/dist/prescriptions-for-patients.resolved.json + + - name: create_int_release_notes + uses: ./.github/actions/update_confluence_jira + if: ${{ inputs.CREATE_INT_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} + with: + TARGET_ENVIRONMENT: int + CONFLUENCE_PAGE_ID: "768067990" + CREATE_RC_RELEASE_NOTES: false + DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + TARGET_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.INT_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE }} + + - name: create_prod_release_notes + uses: ./.github/actions/update_confluence_jira + if: ${{ inputs.CREATE_PROD_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} + with: + TARGET_ENVIRONMENT: prod + CONFLUENCE_PAGE_ID: "768067992" + CREATE_RC_RELEASE_NOTES: false + DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + TARGET_CLOUD_FORMATION_CHECK_VERSION_ROLE: ${{ secrets.PROD_CLOUD_FORMATION_CHECK_VERSION_ROLE }} + DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE }} + + - name: mark_released_in_jira + uses: ./.github/actions/mark_jira_released + if: ${{ inputs.MARK_JIRA_RELEASED == true && always() && !failure() && !cancelled() }} + with: + RELEASE_TAG: ${{ inputs.VERSION_NUMBER }} + DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE }} + - name: Checkout gh-pages + if: ${{ inputs.IS_PULL_REQUEST == false }} + uses: actions/checkout@v5 + with: + ref: gh-pages + path: gh-pages + + - name: Update release tag in github pages + if: ${{ inputs.IS_PULL_REQUEST == false }} + run: | + cd gh-pages + NOW=$(date +'%Y-%m-%dT%H:%M:%S') + echo "tag,release_datetime" > _data/${{ inputs.APIGEE_ENVIRONMENT }}_latest.csv + echo "${{ inputs.VERSION_NUMBER }},${NOW}" >> _data/${{ inputs.APIGEE_ENVIRONMENT }}_latest.csv + echo "${{ inputs.VERSION_NUMBER }},${NOW}" >> _data/${{ inputs.APIGEE_ENVIRONMENT }}_deployments.csv + git config user.name github-actions + git config user.email github-actions@github.com + git add _data/${{ inputs.APIGEE_ENVIRONMENT }}_latest.csv + git add _data/${{ inputs.APIGEE_ENVIRONMENT }}_deployments.csv + git commit -m 'update releases for ${{ inputs.APIGEE_ENVIRONMENT }}' + parallel --retries 10 --delay 3 ::: "git pull --rebase && git push" + + regression_tests: + name: Regression Tests + uses: ./.github/workflows/run_regression_tests.yml + if: ${{ always() && !failure() && !cancelled() && inputs.RUN_REGRESSION_TESTS == true }} + needs: [release_code_and_api] + with: + ENVIRONMENT: ${{ inputs.APIGEE_ENVIRONMENT }} + VERSION_NUMBER: ${{ inputs.VERSION_NUMBER }} + REGRESSION_TEST_PRODUCT: ${{ inputs.REGRESSION_TEST_PRODUCT }} + REGRESSION_TEST_NON_PROXYGEN: ${{ inputs.REGRESSION_TEST_NON_PROXYGEN }} + pinned_image: ${{ inputs.pinned_image }} + secrets: + REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }} diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index e49997869..b4f0a76f9 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -19,7 +19,6 @@ jobs: with: verify_published_from_main_image: false - quality_checks: uses: NHSDigital/eps-common-workflows/.github/workflows/quality-checks-devcontainer.yml@5ac2707dd9cd60ad127275179495b9c890d74711 needs: [get_config_values] @@ -119,6 +118,44 @@ jobs: TARGET_SPINE_SERVER: ${{ secrets.DEV_TARGET_SPINE_SERVER }} TARGET_SERVICE_SEARCH_SERVER: ${{ secrets.DEV_TARGET_SERVICE_SEARCH_SERVER }} PROXYGEN_ROLE: ${{ secrets.PROXYGEN_PTL_ROLE }} + package_cdk_code: + needs: [get_issue_number, tag_release, get_config_values] + uses: ./.github/workflows/cdk_package_code.yml + with: + pinned_image: ${{ needs.get_config_values.outputs.pinned_image }} + + release_cdk_code: + needs: [get_issue_number, package_code, get_commit_id, get_config_values] + uses: ./.github/workflows/cdk_release_code.yml + with: + IS_PULL_REQUEST: true + STACK_NAME: pfp-pr-${{needs.get_issue_number.outputs.issue_number}} + TARGET_ENVIRONMENT: dev + APIGEE_ENVIRONMENT: internal-dev + ENABLE_MUTUAL_TLS: false + MTLS_KEY: prescriptions-for-patients-mtls-1 + BUILD_ARTIFACT: build_artifact + TRUSTSTORE_FILE: pfp-truststore-pr.pem + VERSION_NUMBER: PR-${{ needs.get_issue_number.outputs.issue_number }} + COMMIT_ID: ${{ needs.get_commit_id.outputs.commit_id }} + LOG_LEVEL: DEBUG + LOG_RETENTION_DAYS: 30 + TOGGLE_GET_STATUS_UPDATES: true + ENABLE_ALERTS: false + STATE_MACHINE_LOG_LEVEL: ALL + RUN_REGRESSION_TESTS: false # Don't run regression tests on CDK yet + REGRESSION_TEST_PRODUCT: PFP-AWS + FORWARD_CSOC_LOGS: false + DEPLOY_APIGEE: true + ALLOW_NHS_NUMBER_OVERRIDE: true + pinned_image: ${{ needs.get_config_values.outputs.pinned_image }} + secrets: + REGRESSION_TESTS_PEM: ${{ secrets.REGRESSION_TESTS_PEM }} + CLOUD_FORMATION_DEPLOY_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_DEPLOY_ROLE }} + TARGET_SPINE_SERVER: ${{ secrets.DEV_TARGET_SPINE_SERVER }} + TARGET_SERVICE_SEARCH_SERVER: ${{ secrets.DEV_TARGET_SERVICE_SEARCH_SERVER }} + PROXYGEN_ROLE: ${{ secrets.PROXYGEN_PTL_ROLE }} + release_sandbox_code: needs: [get_issue_number, package_code, get_commit_id, get_config_values] uses: ./.github/workflows/sam_release_code.yml From 5bc2131d959e397153640ee48c99875ca3e2c866 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Tue, 24 Mar 2026 16:34:33 +0000 Subject: [PATCH 12/29] Update package lock --- package-lock.json | 1275 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 1081 insertions(+), 194 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4fcb0586b..b58e0313e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,6 +54,7 @@ "semver" ], "license": "Apache-2.0", + "peer": true, "dependencies": { "jsonschema": "~1.4.1", "semver": "^7.7.3" @@ -537,6 +538,7 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.1015.0.tgz", "integrity": "sha512-eGWsXMHJE+cTNGCpRprWOL0n5jfDuejsPQ9luzvAkIU4ZcoA5+yfr93Sh/ZoHiAh2Hc4yFkEFQCwwiXQjFiqng==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", @@ -1201,6 +1203,40 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@emnapi/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz", + "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz", + "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.0.tgz", + "integrity": "sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@emotion/is-prop-valid": { "version": "1.4.0", "dev": true, @@ -1219,186 +1255,586 @@ "dev": true, "license": "MIT" }, - "node_modules/@esbuild/linux-x64": { + "node_modules/@esbuild/aix-ppc64": { "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.4.tgz", + "integrity": "sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==", "cpu": [ - "x64" + "ppc64" ], "license": "MIT", "optional": true, "os": [ - "linux" + "aix" ], "engines": { "node": ">=18" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.1", - "dev": true, + "node_modules/@esbuild/android-arm": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.4.tgz", + "integrity": "sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==", + "cpu": [ + "arm" + ], "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "node": ">=18" } }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.2", - "dev": true, + "node_modules/@esbuild/android-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.4.tgz", + "integrity": "sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==", + "cpu": [ + "arm64" + ], "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=18" } }, - "node_modules/@eslint/config-array": { - "version": "0.23.3", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/object-schema": "^3.0.3", - "debug": "^4.3.1", - "minimatch": "^10.2.4" - }, + "node_modules/@esbuild/android-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.4.tgz", + "integrity": "sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": ">=18" } }, - "node_modules/@eslint/config-helpers": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.5.3.tgz", - "integrity": "sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^1.1.1" - }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.4.tgz", + "integrity": "sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": ">=18" } }, - "node_modules/@eslint/core": { - "version": "1.1.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.4.tgz", + "integrity": "sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": ">=18" } }, - "node_modules/@eslint/js": { - "version": "10.0.1", - "dev": true, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.4.tgz", + "integrity": "sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==", + "cpu": [ + "arm64" + ], "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "eslint": "^10.0.0" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "node": ">=18" } }, - "node_modules/@eslint/object-schema": { - "version": "3.0.3", - "dev": true, - "license": "Apache-2.0", + "node_modules/@esbuild/freebsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.4.tgz", + "integrity": "sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": ">=18" } }, - "node_modules/@eslint/plugin-kit": { - "version": "0.6.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^1.1.1", - "levn": "^0.4.1" - }, + "node_modules/@esbuild/linux-arm": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.4.tgz", + "integrity": "sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": ">=18" } }, - "node_modules/@exodus/schemasafe": { - "version": "1.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@faker-js/faker": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-7.6.0.tgz", - "integrity": "sha512-XK6BTq1NDMo9Xqw/YkYyGjSsg44fbNwYRx7QK2CuoQgyy+f1rrTDHoExVM5PsyXCtfl2vs2vVJ0MN0yN6LppRw==", - "dev": true, + "node_modules/@esbuild/linux-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.4.tgz", + "integrity": "sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==", + "cpu": [ + "arm64" + ], "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=14.0.0", - "npm": ">=6.0.0" + "node": ">=18" } }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "dev": true, - "license": "Apache-2.0", + "node_modules/@esbuild/linux-ia32": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.4.tgz", + "integrity": "sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=18.18.0" + "node": ">=18" } }, - "node_modules/@humanfs/node": { - "version": "0.16.6", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" - }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.4.tgz", + "integrity": "sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=18.18.0" + "node": ">=18" } }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "dev": true, - "license": "Apache-2.0", + "node_modules/@esbuild/linux-mips64el": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.4.tgz", + "integrity": "sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=18" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "dev": true, - "license": "Apache-2.0", + "node_modules/@esbuild/linux-ppc64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.4.tgz", + "integrity": "sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=18" } }, - "node_modules/@humanwhocodes/momoa": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-2.0.4.tgz", - "integrity": "sha512-RE815I4arJFtt+FVeU1Tgp9/Xvecacji8w/V6XtXsWWH/wz/eNkNbhb+ny/+PlVZjV0rxQpRSQKNKE3lcktHEA==", - "dev": true, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.4.tgz", + "integrity": "sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.4.tgz", + "integrity": "sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.27.4", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.4.tgz", + "integrity": "sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.4.tgz", + "integrity": "sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.4.tgz", + "integrity": "sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.4.tgz", + "integrity": "sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.4.tgz", + "integrity": "sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.4.tgz", + "integrity": "sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.4.tgz", + "integrity": "sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.4.tgz", + "integrity": "sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.4.tgz", + "integrity": "sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.23.3", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^3.0.3", + "debug": "^4.3.1", + "minimatch": "^10.2.4" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.5.3.tgz", + "integrity": "sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^1.1.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/core": { + "version": "1.1.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/js": { + "version": "10.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "eslint": "^10.0.0" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/@eslint/object-schema": { + "version": "3.0.3", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.6.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^1.1.1", + "levn": "^0.4.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@exodus/schemasafe": { + "version": "1.3.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@faker-js/faker": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-7.6.0.tgz", + "integrity": "sha512-XK6BTq1NDMo9Xqw/YkYyGjSsg44fbNwYRx7QK2CuoQgyy+f1rrTDHoExVM5PsyXCtfl2vs2vVJ0MN0yN6LppRw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/momoa": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-2.0.4.tgz", + "integrity": "sha512-RE815I4arJFtt+FVeU1Tgp9/Xvecacji8w/V6XtXsWWH/wz/eNkNbhb+ny/+PlVZjV0rxQpRSQKNKE3lcktHEA==", + "dev": true, "license": "Apache-2.0", "engines": { "node": ">=10.10.0" @@ -1499,6 +1935,23 @@ "url": "https://github.com/sponsors/willfarrell" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.1.tgz", + "integrity": "sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, "node_modules/@nhs/fhir-middy-error-handler": { "version": "2.1.75", "license": "MIT", @@ -1536,6 +1989,7 @@ "version": "1.9.0", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=8.0.0" } @@ -2093,80 +2547,301 @@ "dev": true, "license": "MIT" }, - "node_modules/@redocly/respect-core": { - "version": "2.25.1", - "resolved": "https://registry.npmjs.org/@redocly/respect-core/-/respect-core-2.25.1.tgz", - "integrity": "sha512-iF/7uP/kI5BPzdp4e2Ug3UQWU1ghYJoAPURFcqPvtRc0S4G3olyecJggOhDQqyC8iDHvN7SJNmm/O3VWn4QU4Q==", + "node_modules/@redocly/respect-core": { + "version": "2.25.1", + "resolved": "https://registry.npmjs.org/@redocly/respect-core/-/respect-core-2.25.1.tgz", + "integrity": "sha512-iF/7uP/kI5BPzdp4e2Ug3UQWU1ghYJoAPURFcqPvtRc0S4G3olyecJggOhDQqyC8iDHvN7SJNmm/O3VWn4QU4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@faker-js/faker": "^7.6.0", + "@noble/hashes": "^1.8.0", + "@redocly/ajv": "^8.18.0", + "@redocly/openapi-core": "2.25.1", + "ajv": "npm:@redocly/ajv@8.18.0", + "better-ajv-errors": "^1.2.0", + "colorette": "^2.0.20", + "json-pointer": "^0.6.2", + "jsonpath-rfc9535": "1.3.0", + "openapi-sampler": "^1.7.1", + "outdent": "^0.8.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=22.12.0 || >=20.19.0 <21.0.0", + "npm": ">=10" + } + }, + "node_modules/@redocly/respect-core/node_modules/ajv": { + "name": "@redocly/ajv", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.18.0.tgz", + "integrity": "sha512-F+LMD2IDIXuHxgpLJh3nkLj9+tSaEzoUWd+7fONGq5pe2169FUDjpEkOfEpoGLz1sbZni/69p07OsecNfAOpqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@redocly/respect-core/node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@redocly/respect-core/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.9.tgz", + "integrity": "sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.9.tgz", + "integrity": "sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.9.tgz", + "integrity": "sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.9.tgz", + "integrity": "sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.0-rc.9", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.0-rc.9", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@faker-js/faker": "^7.6.0", - "@noble/hashes": "^1.8.0", - "@redocly/ajv": "^8.18.0", - "@redocly/openapi-core": "2.25.1", - "ajv": "npm:@redocly/ajv@8.18.0", - "better-ajv-errors": "^1.2.0", - "colorette": "^2.0.20", - "json-pointer": "^0.6.2", - "jsonpath-rfc9535": "1.3.0", - "openapi-sampler": "^1.7.1", - "outdent": "^0.8.0", - "picomatch": "^4.0.3" - }, + "optional": true, + "os": [ + "openharmony" + ], "engines": { - "node": ">=22.12.0 || >=20.19.0 <21.0.0", - "npm": ">=10" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@redocly/respect-core/node_modules/ajv": { - "name": "@redocly/ajv", - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-F+LMD2IDIXuHxgpLJh3nkLj9+tSaEzoUWd+7fONGq5pe2169FUDjpEkOfEpoGLz1sbZni/69p07OsecNfAOpqA==", + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.9.tgz", + "integrity": "sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==", + "cpu": [ + "wasm32" + ], "dev": true, "license": "MIT", + "optional": true, "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" + "@napi-rs/wasm-runtime": "^1.1.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@redocly/respect-core/node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@redocly/respect-core/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rolldown/binding-linux-x64-gnu": { + "node_modules/@rolldown/binding-win32-arm64-msvc": { "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.9.tgz", + "integrity": "sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==", "cpu": [ - "x64" + "arm64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" + "win32" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-x64-musl": { + "node_modules/@rolldown/binding-win32-x64-msvc": { "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.9.tgz", + "integrity": "sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==", "cpu": [ "x64" ], @@ -2174,7 +2849,7 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "win32" ], "engines": { "node": "^20.19.0 || >=22.12.0" @@ -2841,6 +3516,17 @@ "dev": true, "license": "MIT" }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@types/aws-lambda": { "version": "8.10.161", "dev": true, @@ -2887,6 +3573,7 @@ "version": "25.5.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "undici-types": "~7.18.0" } @@ -2937,6 +3624,7 @@ "integrity": "sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.57.2", "@typescript-eslint/types": "8.57.2", @@ -3261,6 +3949,7 @@ "version": "8.16.0", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -3301,6 +3990,7 @@ "version": "6.14.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -3813,6 +4503,7 @@ "node_modules/axios": { "version": "1.13.6", "license": "MIT", + "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", @@ -4055,7 +4746,8 @@ }, "node_modules/constructs": { "version": "10.5.1", - "license": "Apache-2.0" + "license": "Apache-2.0", + "peer": true }, "node_modules/convert-source-map": { "version": "2.0.0", @@ -4316,6 +5008,7 @@ "integrity": "sha512-S9jlY/ELKEUwwQnqWDO+f+m6sercqOPSqXM5Go94l7DOmxHVDgmSFGWEzeE/gwgTAr0W103BWt0QLe/7mabIvA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -4671,6 +5364,20 @@ "node": ">= 6" } }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.2", "license": "MIT", @@ -5106,6 +5813,153 @@ "lightningcss-win32-x64-msvc": "1.32.0" } }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/lightningcss-linux-x64-gnu": { "version": "1.32.0", "cpu": [ @@ -5144,6 +5998,48 @@ "url": "https://opencollective.com/parcel" } }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/locate-path": { "version": "6.0.0", "dev": true, @@ -5315,6 +6211,7 @@ "version": "6.15.0", "dev": true, "license": "MIT", + "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -5807,6 +6704,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -5815,6 +6713,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -6192,6 +7091,7 @@ "version": "6.3.9", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -6417,6 +7317,7 @@ "version": "5.9.3", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6499,6 +7400,7 @@ "version": "4.1.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@vitest/expect": "4.1.0", "@vitest/mocker": "4.1.0", @@ -6631,6 +7533,7 @@ "version": "8.0.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", @@ -6704,22 +7607,6 @@ } } }, - "node_modules/vitest/node_modules/yaml": { - "version": "2.8.3", - "dev": true, - "license": "ISC", - "optional": true, - "peer": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, "node_modules/webidl-conversions": { "version": "3.0.1", "dev": true, From 2c636b1ca3707e3dd0b90b522cee68c1a6488f03 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Tue, 24 Mar 2026 16:40:43 +0000 Subject: [PATCH 13/29] Fix package lock --- package-lock.json | 514 +--------------------------------------------- 1 file changed, 5 insertions(+), 509 deletions(-) diff --git a/package-lock.json b/package-lock.json index b58e0313e..030211624 100644 --- a/package-lock.json +++ b/package-lock.json @@ -82,71 +82,6 @@ "node": ">=10" } }, - "node_modules/@aws-crypto/crc32": { - "version": "5.2.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^5.2.0", - "@aws-sdk/types": "^3.222.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@aws-crypto/crc32c": { - "version": "5.2.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^5.2.0", - "@aws-sdk/types": "^3.222.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-crypto/sha1-browser": { - "version": "5.2.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/supports-web-crypto": "^5.2.0", - "@aws-crypto/util": "^5.2.0", - "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@smithy/util-utf8": "^2.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { - "version": "2.2.0", - "license": "Apache-2.0", - "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": { - "version": "2.3.0", - "license": "Apache-2.0", - "dependencies": { - "@smithy/util-buffer-from": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@aws-crypto/sha256-browser": { "version": "5.2.0", "license": "Apache-2.0", @@ -320,169 +255,6 @@ } } }, - "node_modules/@aws-sdk/client-cloudformation": { - "version": "3.1015.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/sha256-browser": "5.2.0", - "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.24", - "@aws-sdk/credential-provider-node": "^3.972.25", - "@aws-sdk/middleware-host-header": "^3.972.8", - "@aws-sdk/middleware-logger": "^3.972.8", - "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.25", - "@aws-sdk/region-config-resolver": "^3.972.9", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.11", - "@smithy/config-resolver": "^4.4.13", - "@smithy/core": "^3.23.12", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/hash-node": "^4.2.12", - "@smithy/invalid-dependency": "^4.2.12", - "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-retry": "^4.4.44", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-base64": "^4.3.2", - "@smithy/util-body-length-browser": "^4.2.2", - "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.43", - "@smithy/util-defaults-mode-node": "^4.2.47", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", - "@smithy/util-utf8": "^4.2.2", - "@smithy/util-waiter": "^4.2.13", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/client-route-53": { - "version": "3.1015.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/sha256-browser": "5.2.0", - "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.24", - "@aws-sdk/credential-provider-node": "^3.972.25", - "@aws-sdk/middleware-host-header": "^3.972.8", - "@aws-sdk/middleware-logger": "^3.972.8", - "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-sdk-route53": "^3.972.10", - "@aws-sdk/middleware-user-agent": "^3.972.25", - "@aws-sdk/region-config-resolver": "^3.972.9", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.11", - "@smithy/config-resolver": "^4.4.13", - "@smithy/core": "^3.23.12", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/hash-node": "^4.2.12", - "@smithy/invalid-dependency": "^4.2.12", - "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-retry": "^4.4.44", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-base64": "^4.3.2", - "@smithy/util-body-length-browser": "^4.2.2", - "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.43", - "@smithy/util-defaults-mode-node": "^4.2.47", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", - "@smithy/util-utf8": "^4.2.2", - "@smithy/util-waiter": "^4.2.13", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/client-s3": { - "version": "3.1015.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/sha1-browser": "5.2.0", - "@aws-crypto/sha256-browser": "5.2.0", - "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.24", - "@aws-sdk/credential-provider-node": "^3.972.25", - "@aws-sdk/middleware-bucket-endpoint": "^3.972.8", - "@aws-sdk/middleware-expect-continue": "^3.972.8", - "@aws-sdk/middleware-flexible-checksums": "^3.974.4", - "@aws-sdk/middleware-host-header": "^3.972.8", - "@aws-sdk/middleware-location-constraint": "^3.972.8", - "@aws-sdk/middleware-logger": "^3.972.8", - "@aws-sdk/middleware-recursion-detection": "^3.972.8", - "@aws-sdk/middleware-sdk-s3": "^3.972.24", - "@aws-sdk/middleware-ssec": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.25", - "@aws-sdk/region-config-resolver": "^3.972.9", - "@aws-sdk/signature-v4-multi-region": "^3.996.12", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.11", - "@smithy/config-resolver": "^4.4.13", - "@smithy/core": "^3.23.12", - "@smithy/eventstream-serde-browser": "^4.2.12", - "@smithy/eventstream-serde-config-resolver": "^4.3.12", - "@smithy/eventstream-serde-node": "^4.2.12", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/hash-blob-browser": "^4.2.13", - "@smithy/hash-node": "^4.2.12", - "@smithy/hash-stream-node": "^4.2.12", - "@smithy/invalid-dependency": "^4.2.12", - "@smithy/md5-js": "^4.2.12", - "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-retry": "^4.4.44", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-base64": "^4.3.2", - "@smithy/util-body-length-browser": "^4.2.2", - "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.43", - "@smithy/util-defaults-mode-node": "^4.2.47", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", - "@smithy/util-stream": "^4.5.20", - "@smithy/util-utf8": "^4.2.2", - "@smithy/util-waiter": "^4.2.13", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/client-secrets-manager": { "version": "3.1015.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.1015.0.tgz", @@ -607,17 +379,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/crc64-nvme": { - "version": "3.972.5", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/credential-provider-env": { "version": "3.972.22", "license": "Apache-2.0", @@ -760,58 +521,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.972.8", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-arn-parser": "^3.972.3", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-config-provider": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.972.8", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.974.4", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/crc32": "5.2.0", - "@aws-crypto/crc32c": "5.2.0", - "@aws-crypto/util": "5.2.0", - "@aws-sdk/core": "^3.973.24", - "@aws-sdk/crc64-nvme": "^3.972.5", - "@aws-sdk/types": "^3.973.6", - "@smithy/is-array-buffer": "^4.2.2", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.20", - "@smithy/util-utf8": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/middleware-host-header": { "version": "3.972.8", "license": "Apache-2.0", @@ -825,18 +534,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.972.8", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/middleware-logger": { "version": "3.972.8", "license": "Apache-2.0", @@ -863,53 +560,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-route53": { - "version": "3.972.10", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.972.24", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/core": "^3.973.24", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-arn-parser": "^3.972.3", - "@smithy/core": "^3.23.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/signature-v4": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/util-config-provider": "^4.2.2", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.20", - "@smithy/util-utf8": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.972.8", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/middleware-user-agent": { "version": "3.972.25", "license": "Apache-2.0", @@ -988,21 +638,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.996.12", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/middleware-sdk-s3": "^3.972.24", - "@aws-sdk/types": "^3.973.6", - "@smithy/protocol-http": "^5.3.12", - "@smithy/signature-v4": "^5.3.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/token-providers": { "version": "3.1015.0", "license": "Apache-2.0", @@ -1030,16 +665,6 @@ "node": ">=20.0.0" } }, - "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.972.3", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, "node_modules/@aws-sdk/util-endpoints": { "version": "3.996.5", "license": "Apache-2.0", @@ -1961,6 +1586,10 @@ "uninstall": "^0.0.0" } }, + "node_modules/@nhsdigital/eps-cdk-constructs": { + "resolved": "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", + "link": true + }, "node_modules/@nhsdigital/eps-spine-client": { "version": "2.1.78", "license": "MIT", @@ -2871,27 +2500,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/chunked-blob-reader": { - "version": "5.2.2", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/chunked-blob-reader-native": { - "version": "4.2.3", - "license": "Apache-2.0", - "dependencies": { - "@smithy/util-base64": "^4.3.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/config-resolver": { "version": "4.4.13", "license": "Apache-2.0", @@ -2940,66 +2548,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/eventstream-codec": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^4.13.1", - "@smithy/util-hex-encoding": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-serde-browser": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "4.3.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-serde-node": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-serde-universal": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/eventstream-codec": "^4.2.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/fetch-http-handler": { "version": "5.3.15", "license": "Apache-2.0", @@ -3014,19 +2562,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/hash-blob-browser": { - "version": "4.2.13", - "license": "Apache-2.0", - "dependencies": { - "@smithy/chunked-blob-reader": "^5.2.2", - "@smithy/chunked-blob-reader-native": "^4.2.3", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/hash-node": { "version": "4.2.12", "license": "Apache-2.0", @@ -3040,18 +2575,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/hash-stream-node": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-utf8": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/invalid-dependency": { "version": "4.2.12", "license": "Apache-2.0", @@ -3073,18 +2596,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/md5-js": { - "version": "4.2.12", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-utf8": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/middleware-content-length": { "version": "4.2.12", "license": "Apache-2.0", @@ -7810,22 +7321,7 @@ "tsx": "^4.21.0" } }, - "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params": { - "extraneous": true - }, - "packages/cdk/node_modules/@nhsdigital/eps-cdk-constructs": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "@aws-sdk/client-cloudformation": "^3.1013.0", - "@aws-sdk/client-route-53": "^3.1013.0", - "@aws-sdk/client-s3": "^3.1013.0", - "aws-cdk": "^2.1112.0", - "aws-cdk-lib": "^2.244.0", - "cdk-nag": "^2.37.52", - "constructs": "^10.5.1" - } - }, + "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params": {}, "packages/common/testing": { "name": "@pfp-common/testing", "version": "1.0.0", From 33bab37715a4d64d1098c53e514fd0e7b17b244d Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Tue, 24 Mar 2026 16:50:37 +0000 Subject: [PATCH 14/29] Remove NodeJS reference --- packages/cdk/tests/synth.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cdk/tests/synth.test.ts b/packages/cdk/tests/synth.test.ts index 0ab4de83c..eae402a16 100644 --- a/packages/cdk/tests/synth.test.ts +++ b/packages/cdk/tests/synth.test.ts @@ -4,7 +4,7 @@ import {describe, expect, it} from "vitest" const cdkPackageRoot = resolve(__dirname, "..") -function createBaseEnv(): NodeJS.ProcessEnv { +function createBaseEnv(): Record { return { ...process.env, CI: "true", From a00bb640b62d1648370210ec03c3e253dea974d8 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 12:41:34 +0000 Subject: [PATCH 15/29] Include cdk constructs as file --- nhsdigital-eps-cdk-constructs-1.6.0.tgz | Bin 0 -> 240820 bytes packages/cdk/package.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 nhsdigital-eps-cdk-constructs-1.6.0.tgz diff --git a/nhsdigital-eps-cdk-constructs-1.6.0.tgz b/nhsdigital-eps-cdk-constructs-1.6.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..171e3cef2cb656bab30b8c10d46c5eb27e7cabdf GIT binary patch literal 240820 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 GhW)90j9G^OuXD9_SXQ0E$0Ua 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 MO$NlTxiek+Kc?3aN&o-= literal 0 HcmV?d00001 diff --git a/packages/cdk/package.json b/packages/cdk/package.json index eb214bd14..35fd4d867 100644 --- a/packages/cdk/package.json +++ b/packages/cdk/package.json @@ -13,7 +13,7 @@ "tsx": "tsx" }, "dependencies": { - "@nhsdigital/eps-cdk-constructs": "@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", + "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", "aws-cdk": "^2.1106.0", "aws-cdk-lib": "^2.239.0", "cdk-nag": "^2.37.55", From 320868a431f7f15f5a8de44c95df5df2c7ac589f Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 12:44:20 +0000 Subject: [PATCH 16/29] Update package lock --- package-lock.json | 576 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 570 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 030211624..c38a9b0c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -82,6 +82,83 @@ "node": ">=10" } }, + "node_modules/@aws-crypto/crc32": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz", + "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-crypto/crc32c": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz", + "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha1-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz", + "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-crypto/sha256-browser": { "version": "5.2.0", "license": "Apache-2.0", @@ -255,6 +332,175 @@ } } }, + "node_modules/@aws-sdk/client-cloudformation": { + "version": "3.1016.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.1016.0.tgz", + "integrity": "sha512-CYyjo8PrzLrvxugxRpFA1r4oBqGDN6Nx11n8o0RgiikEeUVg+fnC4WP02Hg1gSQuAxI9VvsZHw5yPivroA8nCg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.5.0", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.7", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/client-route-53": { + "version": "3.1016.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-route-53/-/client-route-53-3.1016.0.tgz", + "integrity": "sha512-9g3gy50CNLKWuZTpzyXKTP5HBWvUFx+YFuihg/HUbwm7FMxXToGt5J8ne0ylp+/GKhBRMJSyYqixpUj0noMMog==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-sdk-route53": "^3.972.10", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.5.0", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.7", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/client-s3": { + "version": "3.1016.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1016.0.tgz", + "integrity": "sha512-E9umet1PolP6I8TpjQQ2W88aIIguyiRQJE98ag6N6QeLgjSZsF+h9l3KclwCRvqUFU68x+HRwrgXxvbIBVFLbA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha1-browser": "5.2.0", + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/credential-provider-node": "^3.972.25", + "@aws-sdk/middleware-bucket-endpoint": "^3.972.8", + "@aws-sdk/middleware-expect-continue": "^3.972.8", + "@aws-sdk/middleware-flexible-checksums": "^3.974.4", + "@aws-sdk/middleware-host-header": "^3.972.8", + "@aws-sdk/middleware-location-constraint": "^3.972.8", + "@aws-sdk/middleware-logger": "^3.972.8", + "@aws-sdk/middleware-recursion-detection": "^3.972.8", + "@aws-sdk/middleware-sdk-s3": "^3.972.24", + "@aws-sdk/middleware-ssec": "^3.972.8", + "@aws-sdk/middleware-user-agent": "^3.972.25", + "@aws-sdk/region-config-resolver": "^3.972.9", + "@aws-sdk/signature-v4-multi-region": "^3.996.12", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-endpoints": "^3.996.5", + "@aws-sdk/util-user-agent-browser": "^3.972.8", + "@aws-sdk/util-user-agent-node": "^3.973.11", + "@smithy/config-resolver": "^4.4.13", + "@smithy/core": "^3.23.12", + "@smithy/eventstream-serde-browser": "^4.2.12", + "@smithy/eventstream-serde-config-resolver": "^4.3.12", + "@smithy/eventstream-serde-node": "^4.2.12", + "@smithy/fetch-http-handler": "^5.3.15", + "@smithy/hash-blob-browser": "^4.2.13", + "@smithy/hash-node": "^4.2.12", + "@smithy/hash-stream-node": "^4.2.12", + "@smithy/invalid-dependency": "^4.2.12", + "@smithy/md5-js": "^4.2.12", + "@smithy/middleware-content-length": "^4.2.12", + "@smithy/middleware-endpoint": "^4.4.27", + "@smithy/middleware-retry": "^4.4.44", + "@smithy/middleware-serde": "^4.2.15", + "@smithy/middleware-stack": "^4.2.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/node-http-handler": "^4.5.0", + "@smithy/protocol-http": "^5.3.12", + "@smithy/smithy-client": "^4.12.7", + "@smithy/types": "^4.13.1", + "@smithy/url-parser": "^4.2.12", + "@smithy/util-base64": "^4.3.2", + "@smithy/util-body-length-browser": "^4.2.2", + "@smithy/util-body-length-node": "^4.2.3", + "@smithy/util-defaults-mode-browser": "^4.3.43", + "@smithy/util-defaults-mode-node": "^4.2.47", + "@smithy/util-endpoints": "^3.3.3", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-retry": "^4.2.12", + "@smithy/util-stream": "^4.5.20", + "@smithy/util-utf8": "^4.2.2", + "@smithy/util-waiter": "^4.2.13", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/client-secrets-manager": { "version": "3.1015.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.1015.0.tgz", @@ -379,6 +625,19 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/crc64-nvme": { + "version": "3.972.5", + "resolved": "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.5.tgz", + "integrity": "sha512-2VbTstbjKdT+yKi8m7b3a9CiVac+pL/IY2PHJwsaGkkHmuuqkJZIErPck1h6P3T9ghQMLSdMPyW6Qp7Di5swFg==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/credential-provider-env": { "version": "3.972.22", "license": "Apache-2.0", @@ -521,6 +780,64 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/middleware-bucket-endpoint": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.8.tgz", + "integrity": "sha512-WR525Rr2QJSETa9a050isktyWi/4yIGcmY3BQ1kpHqb0LqUglQHCS8R27dTJxxWNZvQ0RVGtEZjTCbZJpyF3Aw==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-arn-parser": "^3.972.3", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/protocol-http": "^5.3.12", + "@smithy/types": "^4.13.1", + "@smithy/util-config-provider": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-expect-continue": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.8.tgz", + "integrity": "sha512-5DTBTiotEES1e2jOHAq//zyzCjeMB78lEHd35u15qnrid4Nxm7diqIf9fQQ3Ov0ChH1V3Vvt13thOnrACmfGVQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/protocol-http": "^5.3.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-flexible-checksums": { + "version": "3.974.4", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.4.tgz", + "integrity": "sha512-fhCbZXPAyy8btnNbnBlR7Cc1nD54cETSvGn2wey71ehsM89AKPO8Dpco9DBAAgvrUdLrdHQepBXcyX4vxC5OwA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/crc32": "5.2.0", + "@aws-crypto/crc32c": "5.2.0", + "@aws-crypto/util": "5.2.0", + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/crc64-nvme": "^3.972.5", + "@aws-sdk/types": "^3.973.6", + "@smithy/is-array-buffer": "^4.2.2", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/protocol-http": "^5.3.12", + "@smithy/types": "^4.13.1", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-stream": "^4.5.20", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/middleware-host-header": { "version": "3.972.8", "license": "Apache-2.0", @@ -534,6 +851,20 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/middleware-location-constraint": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.8.tgz", + "integrity": "sha512-KaUoFuoFPziIa98DSQsTPeke1gvGXlc5ZGMhy+b+nLxZ4A7jmJgLzjEF95l8aOQN2T/qlPP3MrAyELm8ExXucw==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/middleware-logger": { "version": "3.972.8", "license": "Apache-2.0", @@ -560,6 +891,59 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/middleware-sdk-route53": { + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-route53/-/middleware-sdk-route53-3.972.10.tgz", + "integrity": "sha512-eVSTduHxtUd1M/KxKFiAHj1Q9djzx428iPe7Yd8yJdEsgnVH0wPFsCK/ExB0Rv/yIYlVXdBlFJmMj0FgRj4crQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-s3": { + "version": "3.972.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.24.tgz", + "integrity": "sha512-4sXxVC/enYgMkZefNMOzU6C6KtAXEvwVJLgNcUx1dvROH6GvKB5Sm2RGnGzTp0/PwkibIyMw4kOzF8tbLfaBAQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/core": "^3.973.24", + "@aws-sdk/types": "^3.973.6", + "@aws-sdk/util-arn-parser": "^3.972.3", + "@smithy/core": "^3.23.12", + "@smithy/node-config-provider": "^4.3.12", + "@smithy/protocol-http": "^5.3.12", + "@smithy/signature-v4": "^5.3.12", + "@smithy/smithy-client": "^4.12.7", + "@smithy/types": "^4.13.1", + "@smithy/util-config-provider": "^4.2.2", + "@smithy/util-middleware": "^4.2.12", + "@smithy/util-stream": "^4.5.20", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@aws-sdk/middleware-ssec": { + "version": "3.972.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.8.tgz", + "integrity": "sha512-wqlK0yO/TxEC2UsY9wIlqeeutF6jjLe0f96Pbm40XscTo57nImUk9lBcw0dPgsm0sppFtAkSlDrfpK+pC30Wqw==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.973.6", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/middleware-user-agent": { "version": "3.972.25", "license": "Apache-2.0", @@ -638,6 +1022,23 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/signature-v4-multi-region": { + "version": "3.996.12", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.12.tgz", + "integrity": "sha512-abRObSqjVeKUUHIZfAp78PTYrEsxCgVKDs/YET357pzT5C02eDDEvmWyeEC2wglWcYC4UTbBFk22gd2YJUlCQg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/middleware-sdk-s3": "^3.972.24", + "@aws-sdk/types": "^3.973.6", + "@smithy/protocol-http": "^5.3.12", + "@smithy/signature-v4": "^5.3.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/token-providers": { "version": "3.1015.0", "license": "Apache-2.0", @@ -665,6 +1066,18 @@ "node": ">=20.0.0" } }, + "node_modules/@aws-sdk/util-arn-parser": { + "version": "3.972.3", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.972.3.tgz", + "integrity": "sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@aws-sdk/util-endpoints": { "version": "3.996.5", "license": "Apache-2.0", @@ -1586,10 +1999,6 @@ "uninstall": "^0.0.0" } }, - "node_modules/@nhsdigital/eps-cdk-constructs": { - "resolved": "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", - "link": true - }, "node_modules/@nhsdigital/eps-spine-client": { "version": "2.1.78", "license": "MIT", @@ -2500,6 +2909,31 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/chunked-blob-reader": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-5.2.2.tgz", + "integrity": "sha512-St+kVicSyayWQca+I1rGitaOEH6uKgE8IUWoYnnEX26SWdWQcL6LvMSD19Lg+vYHKdT9B2Zuu7rd3i6Wnyb/iw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/chunked-blob-reader-native": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-4.2.3.tgz", + "integrity": "sha512-jA5k5Udn7Y5717L86h4EIv06wIr3xn8GM1qHRi/Nf31annXcXHJjBKvgztnbn2TxH3xWrPBfgwHsOwZf0UmQWw==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-base64": "^4.3.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/config-resolver": { "version": "4.4.13", "license": "Apache-2.0", @@ -2548,6 +2982,76 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/eventstream-codec": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.12.tgz", + "integrity": "sha512-FE3bZdEl62ojmy8x4FHqxq2+BuOHlcxiH5vaZ6aqHJr3AIZzwF5jfx8dEiU/X0a8RboyNDjmXjlbr8AdEyLgiA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/crc32": "5.2.0", + "@smithy/types": "^4.13.1", + "@smithy/util-hex-encoding": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-browser": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.12.tgz", + "integrity": "sha512-XUSuMxlTxV5pp4VpqZf6Sa3vT/Q75FVkLSpSSE3KkWBvAQWeuWt1msTv8fJfgA4/jcJhrbrbMzN1AC/hvPmm5A==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-serde-universal": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-config-resolver": { + "version": "4.3.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.12.tgz", + "integrity": "sha512-7epsAZ3QvfHkngz6RXQYseyZYHlmWXSTPOfPmXkiS+zA6TBNo1awUaMFL9vxyXlGdoELmCZyZe1nQE+imbmV+Q==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-node": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.12.tgz", + "integrity": "sha512-D1pFuExo31854eAvg89KMn9Oab/wEeJR6Buy32B49A9Ogdtx5fwZPqBHUlDzaCDpycTFk2+fSQgX689Qsk7UGA==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-serde-universal": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/eventstream-serde-universal": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.12.tgz", + "integrity": "sha512-+yNuTiyBACxOJUTvbsNsSOfH9G9oKbaJE1lNL3YHpGcuucl6rPZMi3nrpehpVOVR2E07YqFFmtwpImtpzlouHQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/eventstream-codec": "^4.2.12", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/fetch-http-handler": { "version": "5.3.15", "license": "Apache-2.0", @@ -2562,6 +3066,21 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/hash-blob-browser": { + "version": "4.2.13", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.13.tgz", + "integrity": "sha512-YrF4zWKh+ghLuquldj6e/RzE3xZYL8wIPfkt0MqCRphVICjyyjH8OwKD7LLlKpVEbk4FLizFfC1+gwK6XQdR3g==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/chunked-blob-reader": "^5.2.2", + "@smithy/chunked-blob-reader-native": "^4.2.3", + "@smithy/types": "^4.13.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/hash-node": { "version": "4.2.12", "license": "Apache-2.0", @@ -2575,6 +3094,20 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/hash-stream-node": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.12.tgz", + "integrity": "sha512-O3YbmGExeafuM/kP7Y8r6+1y0hIh3/zn6GROx0uNlB54K9oihAL75Qtc+jFfLNliTi6pxOAYZrRKD9A7iA6UFw==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/invalid-dependency": { "version": "4.2.12", "license": "Apache-2.0", @@ -2596,6 +3129,20 @@ "node": ">=18.0.0" } }, + "node_modules/@smithy/md5-js": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.12.tgz", + "integrity": "sha512-W/oIpHCpWU2+iAkfZYyGWE+qkpuf3vEXHLxQQDx9FPNZTTdnul0dZ2d/gUFrtQ5je1G2kp4cjG0/24YueG2LbQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^4.13.1", + "@smithy/util-utf8": "^4.2.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@smithy/middleware-content-length": { "version": "4.2.12", "license": "Apache-2.0", @@ -7313,7 +7860,7 @@ "packages/cdk": { "version": "0.1.0", "dependencies": { - "@nhsdigital/eps-cdk-constructs": "@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params", + "@nhsdigital/eps-cdk-constructs": "file:../../nhsdigital-eps-cdk-constructs-1.6.0.tgz", "aws-cdk": "^2.1106.0", "aws-cdk-lib": "^2.239.0", "cdk-nag": "^2.37.55", @@ -7321,7 +7868,24 @@ "tsx": "^4.21.0" } }, - "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params": {}, + "packages/cdk/@nhsdigital/eps-cdk-constructs@aea-6258-ssm-params": { + "extraneous": true + }, + "packages/cdk/node_modules/@nhsdigital/eps-cdk-constructs": { + "version": "1.0.0", + "resolved": "file:nhsdigital-eps-cdk-constructs-1.6.0.tgz", + "integrity": "sha512-qcdnpYPBabKP8/1rx0hpxcy7dpTvo2TL4LHl+Ycheha4lMXsmuEa9l+5qSt8T7w5UPR40ntCOyc0Q8WSbxdFDQ==", + "license": "MIT", + "dependencies": { + "@aws-sdk/client-cloudformation": "^3.1008.0", + "@aws-sdk/client-route-53": "^3.1008.0", + "@aws-sdk/client-s3": "^3.1008.0", + "aws-cdk": "^2.1111.0", + "aws-cdk-lib": "^2.243.0", + "cdk-nag": "^2.37.52", + "constructs": "^10.5.1" + } + }, "packages/common/testing": { "name": "@pfp-common/testing", "version": "1.0.0", From 06a50965a519c0a8debe5044a2bf8366d9682847 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 13:18:14 +0000 Subject: [PATCH 17/29] Dummy the secrets layer for unit tests --- packages/cdk/resources/Functions.ts | 1 + packages/cdk/tests/synth.test.ts | 45 ++++++++++++++++++++--------- 2 files changed, 32 insertions(+), 14 deletions(-) diff --git a/packages/cdk/resources/Functions.ts b/packages/cdk/resources/Functions.ts index 39dc65f5f..4b16c5ac2 100644 --- a/packages/cdk/resources/Functions.ts +++ b/packages/cdk/resources/Functions.ts @@ -48,6 +48,7 @@ export class Functions extends Construct { const getSecretsLambdaLayer = new LayerVersion(this, "GetSecretsLambdaLayer", { description: "get secrets layer", + // TODO: This should not rely on an asset code: Code.fromAsset(join(baseDir, "packages/getSecretLayer/lib/get-secrets-layer.zip")), removalPolicy: RemovalPolicy.RETAIN }) diff --git a/packages/cdk/tests/synth.test.ts b/packages/cdk/tests/synth.test.ts index eae402a16..6c7480efe 100644 --- a/packages/cdk/tests/synth.test.ts +++ b/packages/cdk/tests/synth.test.ts @@ -1,8 +1,10 @@ import {execFileSync} from "node:child_process" +import {existsSync, mkdirSync, unlinkSync, writeFileSync} from "node:fs" import {resolve} from "node:path" import {describe, expect, it} from "vitest" const cdkPackageRoot = resolve(__dirname, "..") +const getSecretsLayerZipPath = resolve(cdkPackageRoot, "../getSecretLayer/lib/get-secrets-layer.zip") function createBaseEnv(): Record { return { @@ -37,22 +39,37 @@ describe("CDK synth smoke tests", () => { }) it("synthesizes the main app", () => { + let shouldDeleteDummyLayer = false + + if (!existsSync(getSecretsLayerZipPath)) { + mkdirSync(resolve(getSecretsLayerZipPath, ".."), {recursive: true}) + // This file only needs to exist for CDK asset staging in synth tests. + writeFileSync(getSecretsLayerZipPath, Buffer.from("PK\u0003\u0004")) + shouldDeleteDummyLayer = true + } + expect(() => { - execFileSync("npx", ["tsx", "bin/PfPApiApp.ts"], { - cwd: cdkPackageRoot, - stdio: "pipe", - env: { - ...createBaseEnv(), - CDK_CONFIG_stackName: "pfp-test-stack", - CDK_CONFIG_logRetentionInDays: "7", - CDK_CONFIG_logLevel: "INFO", - CDK_CONFIG_targetSpineServer: "https://example-spine.test", - CDK_CONFIG_targetServiceSearchServer: "https://live/service-search-api/", - CDK_CONFIG_toggleGetStatusUpdates: "true", - CDK_CONFIG_allowNhsNumberOverride: "false", - CDK_CONFIG_forwardCsocLogs: "false" + try { + execFileSync("npx", ["tsx", "bin/PfPApiApp.ts"], { + cwd: cdkPackageRoot, + stdio: "pipe", + env: { + ...createBaseEnv(), + CDK_CONFIG_stackName: "pfp-test-stack", + CDK_CONFIG_logRetentionInDays: "7", + CDK_CONFIG_logLevel: "INFO", + CDK_CONFIG_targetSpineServer: "https://example-spine.test", + CDK_CONFIG_targetServiceSearchServer: "https://live/service-search-api/", + CDK_CONFIG_toggleGetStatusUpdates: "true", + CDK_CONFIG_allowNhsNumberOverride: "false", + CDK_CONFIG_forwardCsocLogs: "false" + } + }) + } finally { + if (shouldDeleteDummyLayer) { + unlinkSync(getSecretsLayerZipPath) } - }) + } }).not.toThrow() }) }) From 196e479f7d33a863e1fe1517ee28e2f950317ffb Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 13:49:20 +0000 Subject: [PATCH 18/29] No tool versions in this repo --- .github/workflows/cdk_package_code.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/cdk_package_code.yml b/.github/workflows/cdk_package_code.yml index a7efffd01..80eb58b75 100644 --- a/.github/workflows/cdk_package_code.yml +++ b/.github/workflows/cdk_package_code.yml @@ -47,7 +47,6 @@ jobs: - name: "Tar files" run: | tar -cf artifact.tar \ - .tool-versions \ packages \ node_modules \ package.json \ From 428e5bcfa6c53786cddf7b8d762132da14055f6b Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 14:02:12 +0000 Subject: [PATCH 19/29] Tweaking the deployment. Add a gate for release notes and tagging so I don't accidentally do anything I regret --- .github/workflows/cdk_release_code.yml | 11 ++++++----- .github/workflows/pull_request.yml | 4 ++-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index 7c8db4079..813f55140 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -87,6 +87,9 @@ on: type: boolean REGRESSION_TEST_NON_PROXYGEN: type: boolean + UPDATE_GH_PAGES_RELEASE_TAG: + type: boolean + default: false pinned_image: type: string required: true @@ -128,10 +131,6 @@ jobs: AWS_MAX_RETRY: 20 steps: - - name: copy .tool-versions - run: | - cp /home/vscode/.tool-versions "$HOME/.tool-versions" - - name: Checkout local github actions uses: actions/checkout@v5 with: @@ -284,7 +283,9 @@ jobs: path: gh-pages - name: Update release tag in github pages - if: ${{ inputs.IS_PULL_REQUEST == false }} + # if: ${{ inputs.IS_PULL_REQUEST == false }} + # Disabled by default; can be explicitly enabled by setting UPDATE_GH_PAGES_RELEASE_TAG to true. + if: ${{ inputs.UPDATE_GH_PAGES_RELEASE_TAG == true && inputs.IS_PULL_REQUEST == false }} run: | cd gh-pages NOW=$(date +'%Y-%m-%dT%H:%M:%S') diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index b4f0a76f9..5bfa25cf2 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -129,7 +129,7 @@ jobs: uses: ./.github/workflows/cdk_release_code.yml with: IS_PULL_REQUEST: true - STACK_NAME: pfp-pr-${{needs.get_issue_number.outputs.issue_number}} + STACK_NAME: pfp-pr-cdk-${{needs.get_issue_number.outputs.issue_number}} TARGET_ENVIRONMENT: dev APIGEE_ENVIRONMENT: internal-dev ENABLE_MUTUAL_TLS: false @@ -161,7 +161,7 @@ jobs: uses: ./.github/workflows/sam_release_code.yml with: IS_PULL_REQUEST: true - STACK_NAME: pfp-pr-${{needs.get_issue_number.outputs.issue_number}}-sandbox + STACK_NAME: pfp-pr-cdk-${{needs.get_issue_number.outputs.issue_number}}-sandbox ARTIFACT_BUCKET_PREFIX: PR-sandbox-${{needs.get_issue_number.outputs.issue_number}} TARGET_ENVIRONMENT: dev APIGEE_ENVIRONMENT: internal-dev-sandbox From 1dbcd453a741b6e6fd80946eaa261b9c81c4fbc5 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 14:24:25 +0000 Subject: [PATCH 20/29] Add tool versions for cdk deployment --- .github/workflows/cdk_package_code.yml | 1 + .tool-versions | 4 ++++ 2 files changed, 5 insertions(+) create mode 100644 .tool-versions diff --git a/.github/workflows/cdk_package_code.yml b/.github/workflows/cdk_package_code.yml index 80eb58b75..a7efffd01 100644 --- a/.github/workflows/cdk_package_code.yml +++ b/.github/workflows/cdk_package_code.yml @@ -47,6 +47,7 @@ jobs: - name: "Tar files" run: | tar -cf artifact.tar \ + .tool-versions \ packages \ node_modules \ package.json \ diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 000000000..10c79f6ca --- /dev/null +++ b/.tool-versions @@ -0,0 +1,4 @@ +nodejs 20.17.0 +python 3.12.5 +poetry 1.8.3 +actionlint 1.7.10 From ec6811968e9f6b414e2a8affa3bab7d85980e2c8 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 14:47:03 +0000 Subject: [PATCH 21/29] Bootstrap tool versions same as FHIR facade --- .github/workflows/cdk_package_code.yml | 1 + .github/workflows/cdk_release_code.yml | 4 +++ .tool-versions | 4 --- package-lock.json | 37 +++++++++++++------------- 4 files changed, 24 insertions(+), 22 deletions(-) delete mode 100644 .tool-versions diff --git a/.github/workflows/cdk_package_code.yml b/.github/workflows/cdk_package_code.yml index a7efffd01..60f415032 100644 --- a/.github/workflows/cdk_package_code.yml +++ b/.github/workflows/cdk_package_code.yml @@ -24,6 +24,7 @@ jobs: - name: copy .tool-versions run: | cp /home/vscode/.tool-versions "$HOME/.tool-versions" + cp /home/vscode/.tool-versions ./.tool-versions - name: Checkout code uses: actions/checkout@v5 diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index 813f55140..a6b97d676 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -131,6 +131,10 @@ jobs: AWS_MAX_RETRY: 20 steps: + - name: copy .tool-versions + run: | + cp /home/vscode/.tool-versions "$HOME/.tool-versions" + - name: Checkout local github actions uses: actions/checkout@v5 with: diff --git a/.tool-versions b/.tool-versions deleted file mode 100644 index 10c79f6ca..000000000 --- a/.tool-versions +++ /dev/null @@ -1,4 +0,0 @@ -nodejs 20.17.0 -python 3.12.5 -poetry 1.8.3 -actionlint 1.7.10 diff --git a/package-lock.json b/package-lock.json index c38a9b0c7..5b72457ef 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,6 @@ "semver" ], "license": "Apache-2.0", - "peer": true, "dependencies": { "jsonschema": "~1.4.1", "semver": "^7.7.3" @@ -556,7 +555,6 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.1015.0.tgz", "integrity": "sha512-eGWsXMHJE+cTNGCpRprWOL0n5jfDuejsPQ9luzvAkIU4ZcoA5+yfr93Sh/ZoHiAh2Hc4yFkEFQCwwiXQjFiqng==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", @@ -2027,7 +2025,6 @@ "version": "1.9.0", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=8.0.0" } @@ -3631,7 +3628,6 @@ "version": "25.5.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "undici-types": "~7.18.0" } @@ -3682,7 +3678,6 @@ "integrity": "sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.57.2", "@typescript-eslint/types": "8.57.2", @@ -4007,7 +4002,6 @@ "version": "8.16.0", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -4048,7 +4042,6 @@ "version": "6.14.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -4561,7 +4554,6 @@ "node_modules/axios": { "version": "1.13.6", "license": "MIT", - "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", @@ -4804,8 +4796,7 @@ }, "node_modules/constructs": { "version": "10.5.1", - "license": "Apache-2.0", - "peer": true + "license": "Apache-2.0" }, "node_modules/convert-source-map": { "version": "2.0.0", @@ -5066,7 +5057,6 @@ "integrity": "sha512-S9jlY/ELKEUwwQnqWDO+f+m6sercqOPSqXM5Go94l7DOmxHVDgmSFGWEzeE/gwgTAr0W103BWt0QLe/7mabIvA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -6269,7 +6259,6 @@ "version": "6.15.0", "dev": true, "license": "MIT", - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -6762,7 +6751,6 @@ "version": "19.2.1", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -6771,7 +6759,6 @@ "version": "19.2.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -7149,7 +7136,6 @@ "version": "6.3.9", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -7375,7 +7361,6 @@ "version": "5.9.3", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7458,7 +7443,6 @@ "version": "4.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@vitest/expect": "4.1.0", "@vitest/mocker": "4.1.0", @@ -7591,7 +7575,6 @@ "version": "8.0.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", @@ -7665,6 +7648,24 @@ } } }, + "node_modules/vitest/node_modules/yaml": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", + "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "dev": true, From 0c2fac3c86e1485787d7a0ebe7d454e9746e9be1 Mon Sep 17 00:00:00 2001 From: tstephen-nhs <231503406+tstephen-nhs@users.noreply.github.com> Date: Tue, 24 Mar 2026 18:50:43 +0000 Subject: [PATCH 22/29] fix: non-prod spine and ss hosts --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index e5a0f2557..8b627b594 100644 --- a/Makefile +++ b/Makefile @@ -9,8 +9,8 @@ export CDK_CONFIG_isPullRequest=true # Turns off mTLS and drift detection when t export CDK_CONFIG_environment=dev export CDK_CONFIG_logRetentionInDays=30 export CDK_CONFIG_logLevel=DEBUG -export CDK_CONFIG_targetSpineServer=https://example.org -export CDK_CONFIG_targetServiceSearchServer=example.org +export CDK_CONFIG_targetSpineServer=msg.veit07.devspineservices.nhs.uk +export CDK_CONFIG_targetServiceSearchServer=int.api.service.nhs.uk export CDK_CONFIG_toggleGetStatusUpdates=false export CDK_CONFIG_allowNhsNumberOverride=false export CDK_CONFIG_forwardCsocLogs=false From 0244a2f9d765c691dd5a506de281ea8baa270f16 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 15:10:55 +0000 Subject: [PATCH 23/29] Don't tar the tool versions, and do use npx rather than npm, c.f. fhir facade --- .github/workflows/cdk_package_code.yml | 1 - .github/workflows/cdk_release_code.yml | 4 ++-- .github/workflows/pull_request.yml | 1 + 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cdk_package_code.yml b/.github/workflows/cdk_package_code.yml index 60f415032..b6767b504 100644 --- a/.github/workflows/cdk_package_code.yml +++ b/.github/workflows/cdk_package_code.yml @@ -48,7 +48,6 @@ jobs: - name: "Tar files" run: | tar -cf artifact.tar \ - .tool-versions \ packages \ node_modules \ package.json \ diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index a6b97d676..6b5674192 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -188,7 +188,7 @@ jobs: CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} - run: npm run cdk-diff --workspace packages/cdk + run: npx run cdk-diff --workspace packages/cdk - name: Deploy code env: @@ -207,7 +207,7 @@ jobs: CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} - run: npm run cdk-deploy --workspace packages/cdk + run: npx run cdk-deploy --workspace packages/cdk - name: get mtls secrets shell: bash diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 5bfa25cf2..5f941a325 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -118,6 +118,7 @@ jobs: TARGET_SPINE_SERVER: ${{ secrets.DEV_TARGET_SPINE_SERVER }} TARGET_SERVICE_SEARCH_SERVER: ${{ secrets.DEV_TARGET_SERVICE_SEARCH_SERVER }} PROXYGEN_ROLE: ${{ secrets.PROXYGEN_PTL_ROLE }} + package_cdk_code: needs: [get_issue_number, tag_release, get_config_values] uses: ./.github/workflows/cdk_package_code.yml From 4c493b5a561bd35ba9e7941037ad9838dde689d2 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 16:11:48 +0000 Subject: [PATCH 24/29] I was looking at an old branch of tracker - use the modern one --- .../actions/install_dependencies/action.yml | 35 +++++++++++++++++++ .github/workflows/cdk_release_code.yml | 10 ++++-- 2 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 .github/actions/install_dependencies/action.yml diff --git a/.github/actions/install_dependencies/action.yml b/.github/actions/install_dependencies/action.yml new file mode 100644 index 000000000..108096bb8 --- /dev/null +++ b/.github/actions/install_dependencies/action.yml @@ -0,0 +1,35 @@ +name: "Install dependencies" +description: "Install dependencies including caching of npm packages" + +inputs: + npm-required: + description: "Set to true if npm dependencies are already installed" + required: false + default: "true" + GITHUB_TOKEN: + description: "GitHub token to access private npm packages" + required: true + +runs: + using: "composite" + steps: + - name: Setting up .npmrc + if: ${{ inputs.npm-required == 'true' }} + env: + NODE_AUTH_TOKEN: ${{ inputs.GITHUB_TOKEN }} + shell: bash + run: | + echo "//npm.pkg.github.com/:_authToken=${NODE_AUTH_TOKEN}" >> ~/.npmrc + echo "@nhsdigital:registry=https://npm.pkg.github.com" >> ~/.npmrc + + - name: Cache npm dependencies + if: ${{ inputs.npm-required == 'true' }} + uses: actions/cache@8b402f58fbc84540c8b491a91e594a4576fec3d7 + with: + path: ./node_modules + key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} + + - name: make install + if: ${{ inputs.npm-required == 'true' }} + shell: bash + run: make install diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index 6b5674192..46dfe0982 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -171,6 +171,12 @@ jobs: run: | tar -xf artifact.tar + - name: install dependencies + uses: ./.github/actions/install_dependencies + with: + npm-required: false + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Show diff env: CDK_APP_NAME: ${{ inputs.CDK_APP_NAME }} @@ -188,7 +194,7 @@ jobs: CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} - run: npx run cdk-diff --workspace packages/cdk + run: npm run cdk-diff --workspace packages/cdk - name: Deploy code env: @@ -207,7 +213,7 @@ jobs: CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} - run: npx run cdk-deploy --workspace packages/cdk + run: npm run cdk-deploy --workspace packages/cdk - name: get mtls secrets shell: bash From 07624262dbfb497335b1df91e4cd4e634bf70aa0 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 16:38:19 +0000 Subject: [PATCH 25/29] Gate release notes and stuff for CDK for now --- .github/workflows/cdk_release_code.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index 46dfe0982..d2b3f0acb 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -3,6 +3,9 @@ name: cdk release code on: workflow_call: inputs: + REAL_CDK_DEPLOYMENT: + type: boolean + default: false IS_PULL_REQUEST: type: boolean default: false @@ -252,6 +255,7 @@ jobs: - uses: actions/upload-artifact@v4 name: Upload specs + if: ${{ inputs.REAL_CDK_DEPLOYMENT == true }} with: name: ${{ inputs.APIGEE_ENVIRONMENT }}-specs path: | @@ -259,7 +263,7 @@ jobs: - name: create_int_release_notes uses: ./.github/actions/update_confluence_jira - if: ${{ inputs.CREATE_INT_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} + if: ${{ inputs.REAL_CDK_DEPLOYMENT == true && inputs.CREATE_INT_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} with: TARGET_ENVIRONMENT: int CONFLUENCE_PAGE_ID: "768067990" @@ -270,7 +274,7 @@ jobs: - name: create_prod_release_notes uses: ./.github/actions/update_confluence_jira - if: ${{ inputs.CREATE_PROD_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} + if: ${{ inputs.REAL_CDK_DEPLOYMENT == true && inputs.CREATE_PROD_RELEASE_NOTES == true && always() && !failure() && !cancelled() }} with: TARGET_ENVIRONMENT: prod CONFLUENCE_PAGE_ID: "768067992" @@ -281,19 +285,19 @@ jobs: - name: mark_released_in_jira uses: ./.github/actions/mark_jira_released - if: ${{ inputs.MARK_JIRA_RELEASED == true && always() && !failure() && !cancelled() }} + if: ${{ inputs.REAL_CDK_DEPLOYMENT == true && inputs.MARK_JIRA_RELEASED == true && always() && !failure() && !cancelled() }} with: RELEASE_TAG: ${{ inputs.VERSION_NUMBER }} DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE: ${{ secrets.DEV_CLOUD_FORMATION_EXECUTE_LAMBDA_ROLE }} - name: Checkout gh-pages - if: ${{ inputs.IS_PULL_REQUEST == false }} + if: ${{ inputs.REAL_CDK_DEPLOYMENT == true && inputs.IS_PULL_REQUEST == false }} uses: actions/checkout@v5 with: ref: gh-pages path: gh-pages - name: Update release tag in github pages - # if: ${{ inputs.IS_PULL_REQUEST == false }} + # if: ${{ inputs.REAL_CDK_DEPLOYMENT == true && inputs.IS_PULL_REQUEST == false }} # Disabled by default; can be explicitly enabled by setting UPDATE_GH_PAGES_RELEASE_TAG to true. if: ${{ inputs.UPDATE_GH_PAGES_RELEASE_TAG == true && inputs.IS_PULL_REQUEST == false }} run: | From 4ba7c7523847c5dc94dff8e422d0813376a10068 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 17:36:08 +0000 Subject: [PATCH 26/29] Migrate params.yml to cdk --- .github/workflows/cdk_release_code.yml | 6 +++ packages/cdk/bin/PfPApiApp.ts | 3 ++ packages/cdk/resources/Parameters.ts | 53 ++++++++++++++++++++++++++ packages/cdk/stacks/PfPApiStack.ts | 31 ++++++--------- 4 files changed, 73 insertions(+), 20 deletions(-) create mode 100644 packages/cdk/resources/Parameters.ts diff --git a/.github/workflows/cdk_release_code.yml b/.github/workflows/cdk_release_code.yml index d2b3f0acb..f43135415 100644 --- a/.github/workflows/cdk_release_code.yml +++ b/.github/workflows/cdk_release_code.yml @@ -195,6 +195,9 @@ jobs: CDK_CONFIG_targetServiceSearchServer: ${{ secrets.TARGET_SERVICE_SEARCH_SERVER }} CDK_CONFIG_toggleGetStatusUpdates: ${{ inputs.TOGGLE_GET_STATUS_UPDATES }} CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} + CDK_CONFIG_tc007NhsNumberValue: ${{ inputs.TC007_NHS_NUMBERS || '9992387920' }} + CDK_CONFIG_tc008NhsNumberValue: ${{ inputs.TC008_NHS_NUMBERS || '9992387920' }} + CDK_CONFIG_tc009NhsNumberValue: ${{ inputs.TC009_NHS_NUMBERS || '9992387920' }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} run: npm run cdk-diff --workspace packages/cdk @@ -214,6 +217,9 @@ jobs: CDK_CONFIG_targetServiceSearchServer: ${{ secrets.TARGET_SERVICE_SEARCH_SERVER }} CDK_CONFIG_toggleGetStatusUpdates: ${{ inputs.TOGGLE_GET_STATUS_UPDATES }} CDK_CONFIG_allowNhsNumberOverride: ${{ inputs.ALLOW_NHS_NUMBER_OVERRIDE }} + CDK_CONFIG_tc007NhsNumberValue: ${{ inputs.TC007_NHS_NUMBERS || '9992387920' }} + CDK_CONFIG_tc008NhsNumberValue: ${{ inputs.TC008_NHS_NUMBERS || '9992387920' }} + CDK_CONFIG_tc009NhsNumberValue: ${{ inputs.TC009_NHS_NUMBERS || '9992387920' }} CDK_CONFIG_trustStoreFile: ${{ inputs.TRUSTSTORE_FILE }} CDK_CONFIG_forwardCsocLogs: ${{ inputs.FORWARD_CSOC_LOGS }} run: npm run cdk-deploy --workspace packages/cdk diff --git a/packages/cdk/bin/PfPApiApp.ts b/packages/cdk/bin/PfPApiApp.ts index 01283940a..a874b4fc4 100644 --- a/packages/cdk/bin/PfPApiApp.ts +++ b/packages/cdk/bin/PfPApiApp.ts @@ -24,6 +24,9 @@ function main() { targetServiceSearchServer: getConfigFromEnvVar("targetServiceSearchServer"), toggleGetStatusUpdates: getConfigFromEnvVar("toggleGetStatusUpdates"), allowNhsNumberOverride: getConfigFromEnvVar("allowNhsNumberOverride"), + tc007NhsNumberValue: getConfigFromEnvVar("tc007NhsNumberValue"), + tc008NhsNumberValue: getConfigFromEnvVar("tc008NhsNumberValue"), + tc009NhsNumberValue: getConfigFromEnvVar("tc009NhsNumberValue"), mutualTlsTrustStoreKey: props.isPullRequest ? undefined : getConfigFromEnvVar("trustStoreFile"), // CSOC API GW log destination - do not change csocApiGatewayDestination: "arn:aws:logs:eu-west-2:693466633220:destination:api_gateway_log_destination", diff --git a/packages/cdk/resources/Parameters.ts b/packages/cdk/resources/Parameters.ts new file mode 100644 index 000000000..c422030ae --- /dev/null +++ b/packages/cdk/resources/Parameters.ts @@ -0,0 +1,53 @@ +import {ManagedPolicy} from "aws-cdk-lib/aws-iam" +import {Construct} from "constructs" +import { + SsmParameterDefinition, + SsmParametersConstruct, + SsmParametersConstructProps +} from "@nhsdigital/eps-cdk-constructs" + +export interface ParametersProps { + readonly stackName: string + readonly tc007NhsNumberValue: string + readonly tc008NhsNumberValue: string + readonly tc009NhsNumberValue: string +} + +export class Parameters extends Construct { + public readonly readParametersPolicy: ManagedPolicy + + public constructor(scope: Construct, id: string, props: ParametersProps) { + super(scope, id) + + const parameterDefinitions: Array = [ + { + id: "TC007NHSNumberParameter", + nameSuffix: "TC007NHSNumber", + description: "List of NHS numbers that will trigger 'temporarily unavailable' response for testing purposes.", + value: props.tc007NhsNumberValue + }, + { + id: "TC008NHSNumberParameter", + nameSuffix: "TC008NHSNumber", + description: "List of NHS numbers that will trigger '500 system error' response for testing purposes.", + value: props.tc008NhsNumberValue + }, + { + id: "TC009NHSNumberParameter", + nameSuffix: "TC009NHSNumber", + description: + "List of NHS numbers that will trigger 'one or more prescriptions missing' response for testing purposes.", + value: props.tc009NhsNumberValue + } + ] + + const ssmParametersProps: SsmParametersConstructProps = { + namePrefix: props.stackName, + parameters: parameterDefinitions, + readPolicyDescription: "Allows reading SSM parameters" + } + + const ssmParameters = new SsmParametersConstruct(this, "PfPApiSsmParameters", ssmParametersProps) + this.readParametersPolicy = ssmParameters.readParametersPolicy + } +} diff --git a/packages/cdk/stacks/PfPApiStack.ts b/packages/cdk/stacks/PfPApiStack.ts index 16d92a36d..c5510e605 100644 --- a/packages/cdk/stacks/PfPApiStack.ts +++ b/packages/cdk/stacks/PfPApiStack.ts @@ -1,14 +1,10 @@ import {App, Stack} from "aws-cdk-lib" import {nagSuppressions} from "../nagSuppressions" import {Functions} from "../resources/Functions" +import {Parameters} from "../resources/Parameters" import {StateMachines} from "../resources/StateMachines" import {Apis} from "../resources/Apis" -import { - StandardStackProps, - SsmParametersConstruct, - SsmParameterDefinition, - SsmParametersConstructProps -} from "@nhsdigital/eps-cdk-constructs" +import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" export interface PfPApiStackProps extends StandardStackProps { readonly stackName: string @@ -18,6 +14,9 @@ export interface PfPApiStackProps extends StandardStackProps { readonly targetServiceSearchServer: string readonly toggleGetStatusUpdates: string readonly allowNhsNumberOverride: string + readonly tc007NhsNumberValue: string + readonly tc008NhsNumberValue: string + readonly tc009NhsNumberValue: string readonly mutualTlsTrustStoreKey: string | undefined readonly csocApiGatewayDestination: string readonly forwardCsocLogs: boolean @@ -27,20 +26,12 @@ export class PfPApiStack extends Stack { public constructor(scope: App, id: string, props: PfPApiStackProps) { super(scope, id, props) - const parameterDefinitions: Array = [ - { - id: "aaa", - nameSuffix: "param1", - description: "Example parameter 1", - value: "changeme" - } - ] - const ssmParametersProps: SsmParametersConstructProps = { - namePrefix: "pfp-api", - parameters: parameterDefinitions, - readPolicyDescription: "Read access for PfP API SSM parameters" - } - const params = new SsmParametersConstruct(this, "PfPApiSsmParameters", ssmParametersProps) + const params = new Parameters(this, "Parameters", { + stackName: props.stackName, + tc007NhsNumberValue: props.tc007NhsNumberValue, + tc008NhsNumberValue: props.tc008NhsNumberValue, + tc009NhsNumberValue: props.tc009NhsNumberValue + }) // Resources const functions = new Functions(this, "Functions", { From 0935791f14b21cd50b0419b07ef170b9c178fa68 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Wed, 25 Mar 2026 21:25:04 +0000 Subject: [PATCH 27/29] Fix unit tests --- packages/cdk/tests/synth.test.ts | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/packages/cdk/tests/synth.test.ts b/packages/cdk/tests/synth.test.ts index 6c7480efe..e60f5410c 100644 --- a/packages/cdk/tests/synth.test.ts +++ b/packages/cdk/tests/synth.test.ts @@ -14,20 +14,14 @@ function createBaseEnv(): Record { CDK_CONFIG_versionNumber: "0.0.0-test", CDK_CONFIG_commitId: "test-commit", CDK_CONFIG_isPullRequest: "true", - CDK_CONFIG_environment: "test" + CDK_CONFIG_environment: "test", + CDK_CONFIG_tc007NhsNumberValue: "9992387920", + CDK_CONFIG_tc008NhsNumberValue: "9992387920", + CDK_CONFIG_tc009NhsNumberValue: "9992387920" } } describe("CDK synth smoke tests", () => { - it("type-checks the cdk package", () => { - expect(() => { - execFileSync("npx", ["tsc", "-p", "tsconfig.json", "--noEmit"], { - cwd: cdkPackageRoot, - stdio: "pipe" - }) - }).not.toThrow() - }) - it("synthesizes the sandbox app", () => { expect(() => { execFileSync("npx", ["tsx", "bin/PfPApiSandboxApp.ts"], { From 0e013fbcd2b45359a8e2d18af31b691ef2dba203 Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Thu, 26 Mar 2026 15:43:35 +0000 Subject: [PATCH 28/29] Update the constructs to support default env vars --- nhsdigital-eps-cdk-constructs-1.6.0.tgz | Bin 240820 -> 241698 bytes package-lock.json | 37 ++++++++++++------------ packages/cdk/bin/PfPApiApp.ts | 8 +++-- packages/cdk/tsconfig.json | 15 ++++++++-- 4 files changed, 36 insertions(+), 24 deletions(-) diff --git a/nhsdigital-eps-cdk-constructs-1.6.0.tgz b/nhsdigital-eps-cdk-constructs-1.6.0.tgz index 171e3cef2cb656bab30b8c10d46c5eb27e7cabdf..62dcefa933aacbccb4bf9b00311060ba26902133 100644 GIT binary patch delta 217727 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%0DLaap7;V0u~j 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

-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�KQk(_%-_MD(lVS&o*(4^iTe^J;3q_1DMGX0kU z$-Fpu8E4$I@H4N@J;|KwNY4%1S4t;%&f)u*%_x6(W25f+mzV3xyDwJLx~;kQB+2En zu@$H6Ed|A&?oc@d4y zzdYgUFIN$U6iUe;NCV&EEu4ICq=Tl>+s52l@sDO=`L#iAXu$19AuW}7XUXhVvO1>XEbt_bt} zm;HMCQrr`Zx{`yA(kZ7za7-t^&Ub$=X&=qA(!FaW=PKUqSttK#BHexVyp^V4U#H|@ z;@@u{t2u(s#wBNHIrFPzb!sax~d@p%;iZiy-k~eS9(D5J)slW;2RM_H@`%iyI%Cg(u zWcsoX)?L5sB6&0=N3W?r71k$?Q6f%sxeKtwNAxf6bxNL_9L{X8L_O{2?rv7c>9I7R zcQ>UJifTFoLd6+4?T!8?j5J!xmu=c4NIOcw+_KkD@yxc{vSUg0dHf$*dfbQUo|gA7 zUpV`zRJGvUqI-w(*~`w`l%#*;HME#Ua`P!YwXFry!g{$){_P0|4vyKAUP|fSen^A0 zBRXl{d}~`VbYx@isY@P zt+ttrYtOu!#qJRds-|Kv{Ouq6x14W;P0kM;`{OE*L%oYPMh@^5nSIJ-->Y+N*%lwE zq7K>?XWb%+q4u}#*1wq;<9E$43uE263Y}xjk^1;u;#h96N=`q`+Nq=T`oHt% zkDtGuKh|jh#i6U!NRWS!guJuSWQvQ%-^ew4>jATPYpu8p>gw-L!293|z-@e;_KwSq zGsK^_Odqk`!59_6bBN#V+hbNN?+p6;6PS$-o}#9+rw(D}%NM6MhxK+9$-Y*La!+&2 z;Q(xx%iFs@uwf*9E+78^xcA(;V(|)_BX|Q@=4V^Jkhh)I>{oxRcbMAD{{91RXRa)M z+jhOVw^_@$+qlTPeBIiTXLUR4Z*)hXS=-IbQ-2eNQtrh3Zq7cFy`0zEH%;AQFOJ5s zv(?Ui$M9oApafh8VD|d^51iGQr4?Yi(G>8{G_V~bfR4cSc!GrHNbqf&MCQhe16$eO zUr|z|)e}x9t+jv8`0g30Io%pQxufxraRM#ledE~xqGAS^@%L|VY0t``dqUmYEFUG@ zLB4%thgm;vu&VcwnNMStKHG6zzxOvYe@0ekx7#C-(2*dDglH3oOa*7%+2HGfByl&eGH$6T8NMUKOQZsT}1O&!Th#l7iP6vNwqM?P>^ z9;ZM({Cy|iCOW3e@rhx(+B0$Mct^nmxogiAhERXP?_zAVecx8i`||esaOwLKlb5H@ zx^dQ`Wy{1dEdrueoFj9IF4PN?P-wpkLU#M~-;e1Qkf}D|5UIT75P*@$QtgIWI{S#a zm7aH6;)>jsJocu`&);vdt^2k?yOW7wq2C+KTYbi5?wuIwPV3|IBF~dP=vi-v+ zK*E3O_UGH?Ji7OK=gwOMLi)<;qB#tS&6?i*)|`+q)Sd>-{reN#A$$7P@hJ1=`*vUB zyAHLzq;h5{)-@FSCNo8yxYAs=Y5#rU)F#FS15^zIX>WOf2-%=q^spaqvU9sd?^{h3wcGkald=T;6gzV%l z0>Iga@MZI3_jb+a_wizID&B`Zs~P*<_$Gd)FFs5atVPK?T$YI}1U~D1(q#7>SC$h8 z+MD#v_xaOsddE*^06zHpMLTVDMd}49xPl$zK!5BS?R}tFQ_PX-aWs7&@41_Y*K&V4 ze;?PU`9|6HeC4lh&)FGe&vuMlDlLA{e|i1J{K^M(1f~ZT(+_X*R;TTmulLT!4Xwgm z95)_qCju~z@e5Kj-l4J;kLlRvo;4qoTH9)mPz&dIL4H^&k50PrO5W!7mfT2x2R{;+ z@)MhHXP&>u7LDCYyJMx)@?CVzpksf!muZ=9k4>UGn@k4mjT{wG&S?nh{=W2&&l8=O z#n%N)7Op&Q-in>@zK*K^KM?%2iSicCXQ1b1(na= zzdDHvYV@=Xoo5_1217QXKEe-D4JJ>LrPv1RQ2{AL6 z*fPb7oO|xmU66pm=xuXN+@Sv)`g;N43E(r1OvckTu6$nkhI;pKPIT~HHMwsI+*He- zLHweU9P;;-X>-UkF9UxoFtxh((Lm0e$(y~?aI+XFCVjcJTgp28aV z0ZLfhS8pCVc^&^KnZ148)QgXFwTpPibn_PQXW8bn^qGqK-(!mv-YDy1d(LY%?5{Xz z7&4Fdp5IVyE%cMMX>)%(Vx&n-oS=j2IH=kSG`AT9|gTz-zzbYXf$rBzp zdA)5*(HF!k2wH#rsBviG`BE12q^-T|B3^4>*Lr+Z+*eRq9w!-mlv#g&McEps;f8n+ zN_K94WdyO0_0k)DuHjFvHZVy+PfzM9%`3V;+-Or+E%SsuWSA)ErXT1=%j4E;Rq|s|E4S+AJ>C?$ z&hYvGNacTHinn@${sHmU7Iv9+uW13mTSq_H)B04G(fJ;<$lY5dR{vfyekC2h}_PUaxV4<5nVhJ za_3}&4*__|2h{QGj7TPqFM%LndaZ@;^^fk6L#AD~Ib58R&iTFS6UEuXw~-5@$w ze=e&^68uh^^p$(ft|D~%@4;)wsaYxa2F3@64w*`P#m2$I>Z!DWJ@<*+fI%wmWyyck zGwTCp=XdQz{Ay9X^=5iI`KSYiRO^*1UhIyYWJ_m8<4jU|^!}R(Bo+aL1t947doRub z8*76Ja%u07x(`^aMe#cMu<35Vl;GL_o{Juk`zd>C+S;X8L@795xdrP9corDh_UQJ5 z-YLt3Qb<5{{{0oLf#90<0^vnZom77|>6;U&cjb8<4l~{>dI!u61sk+&n@P_HSksG6 zVo4k5KI`@Ehg`C#d1r5~#aGiwIw^(CyqIdz`iJpi=sig0&~4@xpj@gX`X;<@ULjw|Qa%kEoUMi-o9e%VnCPB!n4fE7 z+uK*qT}ALA=ruARtM-AgPQs4uPR+~Dd039D4LE{1NXW9wHh%BDbp(GBPLbRYM5!zP zeIL->&%~Y{K_i?)I-_F)d4(=m8+OK`updQuwp5&aGmkFsK7W5jfH@dvaVQ1G3G)4Z zss=zr_F50ox`B11!C2H>}asHzWKv3<8u^b?P@IPWpcc8Yky z6;EGeE%)#bKk{P%g?N89KbL5*1YW65H!L#OS#SG32Lqz^N zTYt}+_QXA9*ewmd8j*5om^<#3brUEp$OE@J8Xp*ty$IJWYzbf(Y3tdD55NU;`Eta1 z@T}{4v93PDm}<`tREp~htog8=ol=b0jR7%b3*}p>V0rUq={tWh+7FAaxHPP*j~%1P z-;b#tipEBU=v5=UY+0+qsx;Re3d7Txd93X%Ha1#lf88 zZ$&S|lX6(|O`YeEd|B1dmR9_${^pZyTP^D!7%tZ7@tZ{t-ipjI$owtl>AhD4H1Apf zY5h!Bw11F2M5KQZ%_4{cT34=7Kq=cG^X_1G%DxK*G#Qu*vPT4>i!W^KE?}6)D*#jY zQ6G%E73)37Sg&mtyRg5AE?dES74t2cYWhHP<$wSrSi>T?1T-lINP`94c_*JyfYqm< zxHwo!FO0O0nlnFK`Z^qRaTH_k0;fW~R;)!2PSCj5_UeD24CR}TVUK);fQx}R2LT?S4F4V-Q-L?~E1VK?=Z;Y<*P6?e zJGK?E;2p3`hDUtyaqa8x#fQ1*Ueop5bDH8Dfsbt?fmdx~r+hu&o7UcQ7=B0OufBsG z)rC>!!{C2)82YfX3)h3gXp;IQ4QE>H9;CAZyJbD@5*TL|%)mF_`H-8j#W&I&tX7oq<5T+)Z~_9P4xLy|-NqsOJN`@2a9u{{Z9{k_sCaL{We+OA2#^b){Hh zLm_Om_O^(QJs+6Bwjq}d-~iV%IBIBydEGqk-H?A+(@$2WZQ>HASnmQrJi$x;{sgjp zZj2K3M#{(1IiU^cu5lBw;M)^I$-*-TPsZMQITgD6{yo`6cdsNJIlK58G3*9AZ2}I-5e@?6gw9QOHpHpR1IVR`oKM|{T- zbYKdx2D_&2k+gfyBn)mno1bXlAMpBo5b|-TAKfiHjUBwFG+hTM*Fls-? z+ovoZo&jn7AO}6S>5{iZWxsp1Zf``%toDDsfq3*)79vS(nK`aRPhC>Ft)IXj>pR!D%}3EsQ)LehF}?NiGT2Jr-sjzdC1e4&5i zSRXijgwR7?f_R(9UBHWiht^f6DEJlM0WSe@QEC=(};Wd0L%P38>_z>({ zWBtfaB3|jkn;a0P@s#vUYuX1zEruR2UZDY1l&xm(v^{W|NWvt&eC&I zYgtCEi3i%K;y%x-1reSYDxLN2Cl!Af0ZH1& zm_D3E8&=QFm-8Uh21zo|$8wz|W6|b25F4>{)!thiha;^f;=>;t6hG0QN8&r!?g!E^ zhw)?~YXP2-Lc9(L!X*vDI)6_s_lo;Ly)VGJZqaUY$XO>Da~!1DSO>xFj9{qi7-l^J zZ2R5G>o;qCxY10fe^(=c=2V)>z=KG*HA5D-g%40ddV#8*Sq=Ez&N*QVnjOW%{!>TE zPUI(%KhsMPJRHwRvJdFHPnsjA$&@ALr85-1uY_LE+)8H?HvV7R`Wf)@qk%A5K=$ z9^F`1?I<*E`@TLgHN#J$iOU`#HRjOE-KOOHLF2VHGGX?^M&oay3Eu9zy(c~2aTG)i zQwjV@=giTj?bUiT>V2Sl-3jBZhphT-lZ~L8wHfIUI100?$P9m`Ifzj2&jpe}3>xEu zlSlx+#S0GonT3WYdM9Gwpm>+s>)Oj5yy2HptnDigqK#yI(HE&e>ITT}61HrH_r9g% z@cnu4mq~AhI}EW1qN;XS5sKpUVX~86@EtEn)sZV{4Z(dw_p^oiJ}A~@D^$3o0MSb# z9sOea1GId>Y9N13OJWn0F+aL#!C@Zn#6odOak{-Y29>((YY3hKugFU2^;R;7lzZgPK!&ss!@ z=@ji(1YnRJ)j_z@hx-7Xn57LlDE|M}VggnKKz!X{1j>I9?IG^0vwlc(9MR{yVFda6 zE8@~)yOvU>pE&~_)GlFHIGJ?lRj%twm)|38oe1Na#fLwzPzZOrPYx1&QhJcupxZE( zU=F4i6qB2t5)eDAg7}wECQg?RLcX6iKLd%1dnJ;2RZh>n@5wn&P=O_VOY}Yh$s=)h z0Su1At?_?hE+WG*aC4XK4b$HE>{a1PQ9rn70$g(-BaZ)zJt^<} z4#_3V^rFO+>xrJa)(4yULlm1}H2{lp3 z)KwV5K})&_A`puY(sbxAVb(s~$KQJTOW0ZcEI5B5f`WmRyl3y+NL+HMt{Kd+814SX z?95LV3No-34CF*mpTC2|6BwYp;MqS(D3C%bhr$myg4JsL!=5Zq;J)-gTQ3U606vJkl+yy`*`H4Gh5F&)&S%`I7%gW6G4aJBYnuS)M{ls-opIiSu81#fdTegN3^m@x?53YK=d86LALb z9@6=Yp66WKSO>()A%!^B0K0Z>{rjj$&4j+0ctIZBPf48-eFzNxS$EGpi`V|89PNLH z^Jzn0e<3%D4-Cj#o}~^S@1fJ(_FQiW6~lM+PGUty-toyDNXLNIs9NmZ4}0?E_n+9- z*>5tEB(;IjVlrXlTb&An#+6zRa=yF5>mu=TUVUH!+t^fgi#*0UvptQM&*JM3jM;wm z%P#E&?a}}#+>Vjv`Qg8Ro`45cp`{*PT~J?UJ`3bCDu9zIp&8z+C^65Bv>|3#s;Ug3qruG|~vM zhE>R}iF8AM3v@zuQXV2zK?!m$HOpEn*X}s?eqetB#mL}H`o;208Op@(y6<-|0SSo{H5|)ak*U729=NCn zG=rNytWaylqa|tcLav5I&>LB3}j`Mf1KKR)QLN05e$)IApid$P7QqUC=9O@fFC&%mLASg3!}xxc z6WWS7ZTH9uK=;F|Mi2&{@8-Sr%kJ0G6L}fIymzD}&X+)pjWj5X*T|_!Ik1J%gu?x`#DA5PpAsL7rYG@VhTwtvKO( z*6uY&=v82YLI&Xb;A%VuZgO`bw++JolSjgI9Pmy1dKgm2qT-izyl=&L<6%I^+=om5 z2gUV5)Q=;CVoc$Wl)!rdgWcj<8F0O^o&{6^$DPnUbm9Y~#)_y^K1QAud40)_(y^Y{ zD*{*pVpdd&1bKgTgJ-PwW5o#dK{0#wk_eP+I94PSb%^t`QRv?y+>BK>o#LzXq8G9D zRpj@~hpLLTZa5+9=frfhvY?f&sXs)v_v@kPHCtyFewF_LD z3^H(OX}y0vNc?$oe2_duin5rWi23h7knkI>ussiU{Q=7$#tAdnoUCq;xHj$F-L5 zwJ957WdFwcVjoVwaGO17WS=#ISECMS06iXK}-@{ zV=kfE+Ct|dXAJ&@ITf&0s))Oaaz~FBw&MbcBry$9R#fB z{@}~($g;p(O^hm^1J)GTlMKPwfzLh-#S?cupKF!~&K5-B*vk(l^cPDeN~I@0eUna7;&7) z)L_677GZZ!z@slm>r80+8Uxg+z(lO>f%Sj+ytq$a|NR>T1oJrMmm>kQqxb&BUB*)Q z%%Ka(!-+5>b@&fo(#<5ijqd|d2hp6o3!ztRm?O&8x=RPqvhV_iYeg_sC#EE4$RS=F zrn+4p_T)w?PH&{}5dO=g5a)gc`5OXg^U})zH{L$)(IB8{Y8f#o*1umg0=*TeSlNGh zEE&W4Kr$7Za?PyVrG8`z2|M!8)08%Mc~{*J5ll5 zbnWAKeGlcYc;z9Vb))%TV5u>;Zxk|1P<~g2}IFAi0f8AXPr{_ilQJ~WZ z7zRTB=?lP$%EJr#2MLA)E)&geXhq4`ivsa#^)H^8uZDK5HRgWl^n5YV-~)ZxAiZO)g}3FGOr3 zbp69q1c<}Zm=Ut)4PH4D4NQN%eLX%42x^cBu*}$njuSs4-T{y0-+w?-5>0%CN~wuJ ziq7RhoLb+2m^ioa1-H1aEq22ujz}pYTkpeHBxl=CmC*fyBo-py^aLVj6fZTewSb6R zi28QqhJzma+=>rr54C_+wit{C&_9K&>^Ssr72yPxBWuI@UeUjU=sADH9X<#?`Frp} zrvWUgCpCV-#Jg=L z_Wa+4hJUqOz``DtL+dRF;_O4}2@$sJj(8jY|1WZ=AZ@Hz)jP^Le`(3Q0BNoVDN?@X zy&uZP{(h5Tyy+giLI-~?7MpkX++PZxCc)bRVT&=2k%MrESogeVWN-1`SLQu~iv{Rq zj_?N3A#(UF1R<}5O9g7R^(&L|RlVZ$HiWFx7u@v8EZn&Zx(A4&EBojUrgwYgASV*8 zhhLRTWB1H9M%p-1JwAx*>&c!`!w;~pH%4Z(<>1}G8T)qgo(q4g8)<>>)c2sX<3oMo z1I1#6wDr?#Ls`)m;XB868$rfFh{58=q|khYuKgA|N)U{K+Px3<02SGtYi}vpj102; zWnHZJO%P{89-u@BU`L}H)?<*gk%AoHzc2l_iw^=3A@RC{jA=a!Et-hM=bCr*u5&x? zLTZUH${RMM$F+Yxs1mBrUCeQ*de#;|y)ZlvJzO+5XY%YaIvJ=L^C38L z!^)P24f2G$IA568ku4Sj-H+R^^a9nCx%V;fken{kyFM)9=PkVh56tD4?-!%4+Y8`e z8S2`&D}Gr6gXC9KZ{BMHw}71U_Y!Dv`JH243pHtDII4dKB*zOnRD>v1pyfpgXMpV* z3@wNvM0CvGe}DuJSG1;&3RNImF2WQp1Ehu^?v4q`#>uPq}f9&|ZT`x)uEu-dXCI&ZtqAk9b*oQU`A z_>${505E@5Nz}je$Ti|2Tb=17(rkZetvCVMFePs~N!|vv=7+P0;?0Jzf}MVvNeBe9 zHz6D5po%V+@anBnw%#)%h-aQlM}H9w(2D3c=wm(tvWDjamL!vE+dwZ2Ii|@a?|2O~ z_Vf5Id~o&;u`2Pz%v&gs`*UQ@LJp4{Mei405kXoj;$RWGLJ_>4pqFUJ0Um$z*2No2 z3tP}i2s?ksZ5b5Dc9x-{s%G zf!z(u8(F2JCM;L-V<2-F;dJW{ncAfwBoWHqCQ-}d+BqM%On-d^or_MObVre~@OBu2 zQ1*#<)d+N9yI86U+8^XMpaL+@htm|fu>r3<8i8GM=>;^DXh*vFt_y#PRvcEK%x(9! z&SQr^07@u7NR z3bAbvT_aaG*&t!)ml%JrS+)F&*6}#)QiZ-=y$MGFH*TF`a2C7mB88nUEINbe{QVR0 z(zW_vzTLzww%#JWSY65;O66a*Jvv(1mJLP~(BJ#Q&7z5jA!zH@mpE#uF6YA5!*`_o z*2VQ`@Ee}HdM8vhaMJiuAtbvfAsP8f-49YkfKKxqnb$W#c*K9tyU-hXo@arr+wmh| z2047_Wl3?V6-jekq4D)C&%k(0D^^*vWR2) zDbH^1qRG4WxP-5*T8V3Z<-LteZN-$TDSX;t8bg2xFaUlZ7;&pRe3s`e226Bf_#On0 z@3*dtX&JheaaVu#-US35H*&bj`GEW)-~<-7RfRemYfHXRSy&EZRYn_44PhvjhOr_F zx$O?k@%J59-*65<}wF2bVk8xZ;Wp z$164v<@W1MFnTRPnPgu1RV9Hl#~Q6xKYDO~_=*Z#BYuBl$N&-eGE29308v1$ziN;w zR05shgi`y~*eVG9^K;OH@JlZJ`w!?o9=G{b$R@hXXRwsNk^yvp-3;D$r-Ssujb2y? zPf&&IA0olCPRd64CHSYDJl(rc!9Hk5&nf0c)nx~wy@srm_cWp)Q8o4Vi-tv6A;kQ3 zWTEZ`S#UqC$qAT$Qw@&mZTokL)d`NRFHDe&{Q=&G_e%#SX+x{Rzp$BKB&k7giYyWc zisc}Nzj);mWRum+3(4h&5Zi=T1d1F(9?>H_P3y)ze4RjX?L&rTwAqya3=FT42ZO=@6D^t;ks~T z!f}Uq%10;cLm);fgvomd>7R$=JsZ%`h>F;x<2n`ipAxHCl^`;5;n9MQ>VvLA9^Vo~ zI3u#HozT30xdQ=|1++2g20h|87pl&Ol6EoQxe#psfy05-!xzIf0XZG&V-CDe2!DX- zH&;8#Fp>8q3zPTcO_Ws}#J+#v4=$%>6>%XK6zW`NHeaZ$B>`!Ddrv|Waxct+TFLv+ zf*$OCun&9fyA@F_3#Msgw$_ zbT-0&jI-swyTIf}qSO`re!Y9Dllwk6^Yh&wk=y~H$1y!0PSaJt-;4*iln~;3e|rZf ziZhuZa1V^fi(X_~od5hNV=VmT!tv6F%$fTTEEMS!?fiVg_U187H<)sm$Iyp?Q7rT- ztS=%;AMWISq7O`TAXoDNq>~dD3c};o^#oCWr~kd|L5l8WNdBp?obrdkYu54AY1EBy z0-}pavLNmmlw(ic!98}8>Wv{=<$+km#`Qt1c{cUF^JBIXTp9QM7^N|f+gV_y6vd=foai;8mhTKzs)_O|c*ksfEg(*N2C*1+iV z(pfuM^3stWW#-nEB{hW+ked)7)r*E@RYBbnqO z53W$Gw7wh_P%EvJd5ZF|gX~O4W?>S4EgVH)Z=3;!;4O<0a%4V09+CDT>I_lJTL>ay zmg8&B{lVW4R=3PI{GJzXYqlOcXld)Dmq==O%Rks;2xD~1Dh1<*VEKivrbpO68bOik z%3VbG8xJ991@vpW{a*fXAE4Wja9&G|-ChR@h3l7w-q1BgUBt@m2*PNFCJrZmx0KZR z5UBl9Axpo^j%-RKs+_}H&I8%r@snerxM*Qgtm7EV=z^g<$K#911lhXXI2wAcnk(G+ z$O>ufxAU5pkv>QY+Xa1D4eO~Opyz{&WiP~-BOC0U*GJx-^And03)(F&YRcw^89i_f zN6~(W$KbAeKO}aejO$0MLiT}wUOGavr?x*d4H|;^6drXbaQ!YJF-;79iBYUS^g?Zz zCeOY|U5~zNd7%xy-Z-Gf8)ui^x$D%^V6^=}^opADQ|p5)8W2$;;s@S{hZsyF;ot+L6oNLdYz z7VZjYAN5NlcF&Y(qH;ltvI9=KgJ!0VVl~aWJOnf0jU4`nh>PtX&smTI~-yJ4{nPYm6S8@v^JX z4wY4@m;(~|mskxX&#a0HfsVls0k``5M_y-b+HAWyPO3~dAy7cdw+W95=GAkxF1Yt4NIAxMiYO8yH`8tSjyQrcv-e)epcw~JI!u?%8 zl%hJwP}njSG>Gf$KBxfSM71{3gB`h=0@}`3NC5jmC@eggn8H7#V7)c^5N?6pDUrYj zbPLo3kcpdqpA~v!AXcujyVg8=3wQ1PqRz3iG6#~!tEhNB7mJyU*n*Jjh=G9&TW2fY zzyRof3?=!iFQMj7A6T2~KZEk`RLJ{~fED*xB2CRRp`}-LqF4bT$=c(X`#!`AHCm%j zJjtORZijo+ERAl{`US|ZqUqk`5beG~%CbK@K%(vM-{AE{%pTe)U$^2^zV9a>YWIVx zju%H8%v@}w7~rClBZ;8GNyQ95}MX`(|T_p%l%+F6zxT8wX|(i zZK4SmasjOdM6!;;$K^%N3$=Pc>-Ii~NZY!sCSeK*g{ANiWn-AiD8KiI`oQuwziBZmlS#+OlK7>w!x6}UYQn?+&Giq`c$hz4*JLHdMRQurA$ za;EEkXDbq_7x)*xtqPwwZ{+BIBO>>fIyCAZ_5+=L9q9fmsO=_EjJ>YYK86@3qH7^B+PX()Dls99$O~)#wK9@wxVYcBVwG6=5F@ z0I@Mc)XfWel}+!ea)UrxM}S03lM_G8+Xn-*%&pCJr)O=9!SB{oSg%l4OwKOll#wz# z+bMb)V6P2HDo+~^bumD5xSP-SRTGWs{;)lX-aBsXO1g{gLN?Wt?fHhYu#6g*cI!7o23Gk z`sTC`kBV$F7nQNKXX7Lg!ctM#DvTTr&eJodeR4>`LStu}h7mn1u{ zVdBNDee^l<^jUJU2*EH-VLTUfGD!M|jKssov{Ny=#DoC@=cgZMx{n9gK#i_m)$4b# z;YsfN%%PlJqVf+N@qKn)4v354eyy&6-v>q@4Xr{2XGM>go5B@xK(uq^=o$|pvc0@Z z5X^03+1$I6=}NADm8{MVyg&4lrP*8;1Q(4Uhvmt$;`fK0Y?iA1ZfT$n5r^Hj?{scU zN@7s<_%c6Vlzj7rTD8yPH~Rx_j^^2F4W<*)tr>%0<*B|r=Srqdv%&b-mZ!+FzCM`U z;NLkOh9M`83=rVag-rFm>@UY!h46t~Q*-a}1CUrHv(4 z*b})hpa51ZwQ?}VjR#dz7s!0srv3O5*vz?K?#Zo|7^9WqiGxj~!wnqlztjgXStx%H zJvm31W-pTyld3-q$1Ayj-AeDOS3kODk887hFHu1jJCdpqfLSZHO4j<3m}Z^*0b-kz zZaWR0y4O^H@RZ1Vt5)r;gk7HuLB0fP3lhhAY8wo)tJ%XXGdZ~Foe1yv>7eDti8{YuChJ5iCcj!`$jIA&E2Mc=lXn}BmfAF460-z;8XB=P znT&+1)Y!vf2i+vBD; znpR~t?3Z;kE)r~e9v0U7V%X*-2u!7{t)RM*ltfNDfgVNrckeMne{~APAzJi$Ug)6o z&8`-IQcQJr_b;Rz&?&fzTVQOcpP*@G+71I&e4eYox;oco$2!B}<|R|JR>B=0`%YNM6-2n*K~nyI z;f8bSF_Ref4_U?xp4IOEvXE! z>I1a8dveqddH6l(+{YAo+?8OFzSLZ(0UM?U>5vSXxpo#3ZV)>l&@Hs31 zozG~L6OP@Q5Tt2+6`~3HaJr^}N&v1iaKBzdKSy#eT~h(|z}0{yjDzI+6`#_7xfOEC z><`0nA|PCi>SqJ7&!Lp_WFv)IPi z83Xn;_6FoEJeb`$R5GajNRV|It@ zXl?R&f^I#H0pQJ@JS}MEy3Q(opxC-h^*+HR`ojJxZ)COhTFK%(9 z1@oJc;Z_EN?ok-}>^SQ_6rjCbg6VB-AydiW>yB|~FrHSavHBoHYghMwwZaL*d`m)` zZ}RZC{%A|gWxG{^?kHHA#U34YXZ0O>mfBm(qj7+d#l$E-gz5XkC_z!gV-ogWvNAfV zZ3N_NY5)rkehrC!xCxy(>8N>UwuY|b;cVLXPT-fVM0)RQEW0KFomEN1-Rqt8ek;a) z$S?Y4EZIaJYd&BXwJrUBLgz?c>Lf-#4}AkRX9I-iGRi|+hSj;|{B#mI$5)Da_!eEZ zK`aqL_x8fg|8!8NM^VPB07P05$_j>M`&<@x2+zRv(5Nc~x(q+mKG1z_>RV+N>jj_d zX)&6$_Pz6)4>Z?@>i*mvveEnY)Q4g0DhX1##(I9%o)BGd8_*vIg||`LFOTlel=;LdkGnx1c%l{L*gr zUGoVDV6LL)#yhi>i@519LvS5?0w@~~mp~puB`*u!xwCpEZo2K^<|U<^FZ)nfL9V09 zE_2T-CbM6X5D!#;MC{R!FY2<$x`aYW>7Hkdm3gtl@91;TeOQf~D8DcpZi%Hn(0@?E ze=*ic6$g$>ACmfMsNihd#nlL(K~dU(mJWcNUVnsCX>k}xE+@xnrLFDd5CwgAeFn=37GbGnl2?c znoI}}&<%Kh#t*Y=-*PWw+$(+{jE*9EQ8vGoe)2fVn<0?EaK3CSaJqUOk@F!$HcO5} z`i$}HjgsqA1h3Iawz{cICP^jNEaj}DUZU34!NVVa@B~Vd0`JM|X^grpYukA?*qK-) zuRAWvF$1E=)-O_jJ!#e5ctAYyr=TM2TMDrK2@~9Zmv`pt!Au7c;_!jbZ&mA%XfzmI z?IsWJK7L(H}%3v{NrD2eF~C#%R}fJ-4tyz89YDSl1@@ zhL!1mImk2DVKm?#D7gTq%W9?Sp@(T~5K(+b3v$Ii?OURXN()^`eGVIhdr+`FJg&80 z)3zp5MF8^4ER;cD(|Ti%BCULtE@dK*M}`$o^uY^A`$Nfucc3yc#;ePe+T{izS5K5O zyemGf%=PB=>@xkr4W-IA*2B5TnSIPc5NdgUw!Lz~{bmJGGYemH7G?>SM4|_#Nb+6F zkY(q?@4@)6^7owarD(vMQcsHcxr#nYY7aSGLMJj99NlnHczukQ*)@pFZvc0^;1Q$u zarxagKMLV@stgB?@imo_pH-olC zIbOee;>!aap;MZlF?JdfkKacLDSN|zQ>-5wp&Vs_Z=;|^`wUdQt4Y9&fy^4bpZ$9U zQKx+1{H`-VqK`F1!I0I%Ies?SVf7?U{X1#gAm>_<#)=9V&Zv9k!xpNzY4>@DkJaee z2&^XIhTosHU2iPwq-${?FE*v~LC2Mr$_F!QWHJzj80}amb zg%xi$ZpsX+t@Sl-ldhAF*O;IRgIW>Q^vdI-T+PMF^kJMchzLWA#pY&y;$tV(c=Ms-pRZE>_IMefp{Z;+r=Bp^=hACXDW?Z=zQ?TZV=*9W%NOru=LxC@o<8ca5u)Mxxn-aLFAGt*y$dv#5TXZjpUxpnrOWwfVN-Pk#vc}FFZVZ0;WRAw6PZ4)i*v`GZ z!2J=zhckq@y-if@{Buw3pvPwy%SA28;pE_cdnXA@wxWfLiUAy3)*oiozJttj!E+p+1QtU z_~JzwQM{M!@gU?3TT!(XNRxAVlf7mH%9_E{&J8&4(o)x%w>PSpZEXTEAe#QbFB%a> znl=5x74QMIl&c<>rBR$TjZ=-r;%mMp&}cT?Jxcb7|NaYq)bSNQiQC#1<0;8453y$n z7P`wZH`O}o={kxm#Or%F6}jR0B52;2AQxLx0tp8~xR!RMH}8!a?4FGUgK#=N_w+LP z95j=c(Xw$R<|xFkk$0b*dg6ACZl1f&n&k>Z1f(G4z{WjVhczoGoPNIq&iE3}y&{f< zwrFbT?2|NqWzlJ3qeAp-wPA71q>dnl! zHD%wRVmfw}1g$fSl9Yxe+EmyU%Rht2?>_?>ByrCvzNrpxL3$zCh?*Qw%jJ4lmgF*5 zP3p~h!aLx*7tZfL{~7RGG|aw^qzT}?Ju8qI-9hoh_P%l06fJIUceZJ~;gU>Ky!g>d zSTLu5xyi1p)`Q)Sy>(nGq@}90)nZQ0#Aj3iW=xJ#7FhHD{#!J9^hs`Gu;snMzS>ok z_Da2FS0%4|deyFc&@gACAp5vk{y^kow=@Vi%Whz>Bsy2^r4MO@*O&N15Vk* zr>wj9i+4qsrw6{F9a@j=VYF`5ZU~s*@M}C z@(YyYpMQ(i2UP@)BW4#*FQh{CJ1l&(-OgTn&Vg&;3jyD&%m`bYUeALRwYGC(FyD>2 z?ZElr-8r*s?lFuMf^}zkM!2b**_@Zu7eya^o(M&I0C%!pqS3O#u_ux!=OnKV;zmM ztk>2Eq?P{t1+rz7!l>;7m0;&A57U;xw)f`Rv-YC%u#3L8$ISgL%1DjTP^PJWrX6~r z;2G(?Z$mBk(B@LtIB4R_r+%K}_GUvn)pm~3w`9MkuEXg=818$Ku4R?d^~Jn9WB zgaddH&j)Q~^@>J0n2bz_`$>MSuC@?4QH}nrf9GLALEPC&1l9^!{j3K5(uNr~&kuP< z?F|%WxiU)Q55H%j#N98M-@asj%uen6n6Cr=YQU`;QOeTgyR*pq`nj#%qv$CU3Nmu; z{?LVLX`?#XtF7AWO77$s>N#nD30$blQTCTH_p;= z$1WMj@37FOM|Qslvb2ck-Rb=N9~{H--qwE?&0T@3RNN;DdbRp#^YX2qa)L( zgRs$HrQ{EEP!N0G*dohbDd4ColhuKCOi8d9LEnrA$PAbN7qGW>ueJ zen+z_quJ~~gp0Dyg9ikEMQNTo0bK5Mkq-6}c#4wdTETcIiWQ_;b-G8;4eYU;cKpM` z?%T5FW(DW5D{6vPTrcxqRHl)|_ZhrF%^j|{##AZO83H_niVLr_-UoVBm??GDwOJj@ z(GFg`$^tW3HlHv6Pg*G4O@(Ou`+|aL>B%|E=%=?&aBg`F+r008Q`1|*IIHPp3M&O_) z)s5SJQ-Vv)=50=YiPj#pP50+eq$@rz!yYlF-_c8JtVXZOZi50&`L1l$xGxCk)V5cD z7>+C4#=b7VAi^g5jxZeoaxYUjJ#cFqy;8o7F^V2c!I^7dnE(BSgBVL&4;Z03CJ3@% zLDNQ~X;YA}Ta=S&JC?A3TuCeYT#1K|smp1apnSZNnzf>T-XIC&g>BMQHotlZyd;~} zQhRa$LkKWidqDo-klxj`uu3`qC-FG|@-RX-IK1&?Gd zy~gDH(*~h`55J0Q1fQH|Jlyn4+-=tSX}cIXkhDBb*B7``ANdKz`sVGapmWKZm8BA8 zJ($qxule3C#rYBh-ua~R;{Yh%Z(teiAy!H$0|W1Evr8MexgL6%pQBOR3hhdKd`V92 z6+%&zTJ=tBPDKmWORcb;2AJXO6Hwg4vj{`LT>Q0vmU6W65Wwhq6lMisy)qPn0$w5j zfIBWd-NP2=DgSS4bvA-(txY?n_@>;tM#?re{J#%F zhUDDEvJ^zktQn=?!(N-ohvI)D%jJXo#-7834)ZE)&AP_JOW!ycsie%-W|q0Fu>+r! zFqs8^a=O@OD4G5*qy|-564faN#s?YXNsNHgp$he;7-`EWz^`ZxRFb-~X@4d$)P7I$ z6OzOKY5Rf5x1Dh*Pm00+{Jr?a_Fv+GL7Vd}az zvMwDOA{#2xj=gQ%d&cHJbuC7nTgTe;>S)Hdb?gDu6#>7uN&*6z0s+6b4L++FZ6S|L3Z);so##%h_Pvl%+ ze))M$64D6NhD`qK%gZxlvJ#sw>3tn3%!$LI+C+YeK&gx=707Gjpf!>y3$*_$@QlZ2 zY~wD`A23^|EdDbY|8#Ghw53#~8grtYQT0&W_kZnfVg0n)C6t!B*lG_#&gmHKt{ShC zG4|(;i7)A8w9$4E?2;`LvPyRMy-H$S2bw6wSA#aO6yxg*`OusNMy1sh<~#|7}R>cbuFM0f&VKz-L+42HmT9q#V+8^5%6o9o$oZtpDL z=fzQ=T~G4|>*|q%fZ{^vI%S95DM)ZGUVnsw-D=JPC3@1sYSDYIXVvBFlr>%~+*?~| zcmck%Fx5)8sa~}LSx30Qd(OF(X#mnYN8#-MyVSx;bZc=GYBsGb} z_-yq5k#{yZ(&W09+>%7`L!#k2O3@m;ng++EurtLbW=I5Kc+`&7?--QtK6HtkdA-wfJ|0EWy4*U z{;r#xpm$uIUB|O`H=aCcztQS}c4K>JobjmL|NB`Kci#QH9|TQzF4loAZ!uj=E*k8X zS^B@&PnE%@Vkhe6QU33<>3)D4qkra1Ye_)t;;d9~Rn>f^kHX|o4H>Fh+m?&xQasG8 z`-6?1!eq}{=gsC?t4Q6n`Yoq615V!cXT7?GGWzHod`T&F3dOGU^Yenec!_;va1C-es z4CQO(&l@~JY8$x+YZcc~@feR=XQkO%h4taO#|K%w-q!ZZRe5~{LntOI7H^7WPu2!^ z4K;4}b}!$yF(RhckX2tWTYsA-Obp*k7|^|Y4otOpK)cVBarz;FrIG|)V1;nvZ$}M| z<^TJk;BGlVERXl&$NSuLp02Z8Tpes>7wsi{LA*^#s21~~FJv+B?@!UWV|6|n7~43? zG1oZ+`npYD{CZTX^@aXC^=T_>o~t*2%j#bMNn6k8K(60{zjxSDfPZG4T?r{PR+nfN z*HRm;xwlr+YE;FS68d&O00!{ozPo(8^G8|1#K0I#{AQ6zx?cz-uO3ii2e$MNYF!P< zTK(*CA~~q@7P0BwHMX#Jv|F0pr!XM8&7jUIw6=HG2XE~Ep3pjp0x&xfWqMZc6pJnY zVTx;%g7WsLW2)ru#(xT)f{P~B{Q!<+RUGjq2wPY+!qQ-_#|1FhFW-X}5EY@~{@FHB zAgbo}TOS_RhwC~P@&0z?ws#K6!EuG#u|thz~b(HG35w;5=Q{BUow&ntyZcZvE`Dz_U=rsE*!e zAa1I0*NM}IL_fyyfG5?5i@1SFYXQ=|f!JSjAF%tR2i`kuI#5yo%{9(>{^-@MB3b;w z-5Z-t+HK7jsi=fo-_=o<`0wLnhVfk9SFg>9 zXjiMegtFFtxPOQatZLF~oUq@EN!RiN5JS#6*JRz2c`nchmX~s+?Kc`bcnhpx;9Ism zoGmhW9!b~sfu%NXPI}qNm?<^~IG+w4`Zp}-cy``4N^yFQ_Lc%X?ywr1bALf!qA?(E z@&?nn*?ScD0W$8uq0t@j9C`MW{9%774ZRS&Qx_YX;4Ju^j8*7O65c0O|IH}Su`hLAl<%4jQ4{8zH?xc1+tvy zs}C|*X}9fl!S>GnO?ThCL7K#d2CH1!a1*ocwx`&~h=$~kAg4>fwy zfw*HrWUk#;_H~EN2QDJ9zVVL3^l}fu>3{KtvNl~mYS5RY;NAAC7XFY^rb|cX>~#f? zY&g?J^hyutB}|6FTZzQiUFXaXvUvS1%icJ?v(Z}J`E<%p@RDxXD|b`SUXWr0Xq)^T zRn4ak`2*!!4c>(hh08s>IZ>kS`O1xe`$;a+Iay!q4PFYI%DZsY^u`C;!#pc6@_)`v zCZ@$B{7wpuSM)DnmaV_eGl~K0rZzDj{05M2A6Uy_k3Q-eN~>oitB~K_X`Dpl-f!=& zXX;800Hg)c$RH7k=lMLw@hlwxNH#-)b!X zzzwIH{wVk_P!7s|`@y+f&3hf(t$$fbydvPA*7)yHcTHUJfi&80zFp@{FL|`l z^Wtg{p6l>(78nske%;rHbk2YK^h3cdZQPg58}tyZ@IfiJIvq^D9$8&#!+;xC%@)?( zfB%sK0$6n4j}hIXmxT0=!+-e-`;EXiM>xKYlfLaB19WWc8)Li=iP>ddZ(2;ZzHhu% zgZ|a22`qK|@F|x&ptJ{7Ohyc|*N^TmdSmv_>-rgbNzZ`_HLoKzFTo#T=wTpWT2|gl zg#dZlsp6%-;{()O5%{Rzym{=gbz&H$LuN=b?~Ur&$X=(Nb;n%jM}Ntp?Ait_Eo~C(P7FoAxFt0Tqc!c5a?h&n@ z;RB*ey=-y2X`Dr462x4jl|IvRak?BMOwB;BJx8wR@z%YPwf7J=ZE0k5$sagg12#`A6yji z>lY6?K<(yT@-D|L zM=W$AFFi}9WUY8_agEw}BXXhwkz{dmZ#u&Y?;fjVy}BRDR_8~sg}!J4@^$aXhN|qx z8rU?e*xV7E!j5nXP+n#ayTix$&|-lOye0+DYpgh8WX*c?+-<{<^x%VQw|=g*$XdFMka zfsD*xtH?Lkq@hZLo7uP{x`KB`+C1q0PVzP% zKBk+v-s>TZ^!E?R=j~T$Z+RY>#=Vw5Ic&Iu+QTAX{AS;0ocI9u@0k!g&FWYfhD7{O zjpdg{Z#idpyLAb${TQ)!%{xDUVNf+v zCzuSqy=yzCkKcKEkIh5r#INX}b)Z2R=2(E^+fVNwc9|ChHGnEe9gByYwM<$2O}%Vb+T2s4Rl0?W zuXpzQ5NPetxf^rWnX?_FrBB8>!E4LuyjMc8NYb%`Qe=eKGMb(fr&#ls-6w6xjG=CrW zhUZ*OeywHD@Ei8%{$O1N*;1Ze;x{;J;^vv@M*y4{v6kY+JWah1)_QB%q&9{gVShoL ztw#KZn$O(VZ@gPotKe!lFGe9zTz&uOWcE;MY``8O1g5^=B%AzMs4?G|B{D9?#gqFY`VKcYhAxNf9)z)Wu9}smN3ty&o)g_9!j<2@eex84RgD`qZZeW-AciH8hceF}8qQS(lQP_U8;(0^IJO;CgC zrjc&i?R2^=c6@$#*fG)wY9G08wnJ$tX3w3rs95t0gp>TZJ~;D>cQ1h*)Ghvr8S>6c zprGP!SM@c=crU9?Tm4p0ny)?^qei9Ed-lyA_E*+8AKnK=7FPx zbAwhfcFV2quGRZ$KGxnK6MsJ(evc6M1lBml4@yO<8(LZ z4~q^aX`XB34_Cx8Y3nT~X#_NS>@hMev-FoF`S3kJO$Rfp&0#`qTYtpY&si|qxEA6z zBhYgk3m$j7n6qB*8?(p1|H$yV;P1B)&wM<_Qqfun4W)CbDtQL4pa!wEt^G4Ojs6Dn z`hQ=cK==C~~F^#v;zKvqwS%1kYY>uX&K7^0>7cUf{SS=4G>I1{xnUn*3YB5R$(*2wCc&{eE zANBfkDveejoJ4K$V!45U_Q%SVI+MG;>Lj?)2sBIG!^L0{{H9k)Lw3FT@Ticzm;GXk z*$$>k=>y@WDbUcixe%-+$6OvEAZM2JCZzs$zgz+nfsW9gsDEf%U3Xie!$o#Xu!w0x zuCX6qKdYaNsP-%DEmk2P2uwizUyOI1B;D;TIAm)Ud)~%JRSH`2d@BrpqtSlY3NdMZ zXt6NdQ1Sxfml3}eU7_&Y-_~RKYM13NmjjkCFi<*xI}(hV9}-g3Mv%dtg%2}u&mGj{ zsKsr~dgeW!*?*q-7SGuvBMibvq<_Ki7WKv3ijlV!(dYiNE6lyN?^r8*|CX!QoDA;vx;p0m zL1x^j{qFww_YNXdE!6zOr%1$48jF~7 zJGQd~D}S89BymZ6v-F>O&3dZu8Gqno>b*uH{j}Eluj95;$o3}Qi4gBxvXW4zwR<|K zwVx4Tx297*5SXG(t@{SjUe@ZYjWvS9%dZhLe#LQK`F*7A)_M|B*-wzjeW(xb3t6@DA$R=*P)E8upU|Ui;A~y!%1*nrcJIHz{E&9j`h+a#4BxIJ zwE2*$aG0o*9Xe;Ov1%$cB7ZlZ0F0vWu~`b*gbV)8@pW_@t^P$Z4FddL53ZWH!S`w8 zm49_W_kUbC+TPC|*w82RhBwTITdlVpAC4`3;TzY%>!bM3l~q%aaWd^~cdh5UZBSLm zd73JKhEs&6bAEYc_99&B{fdli=MXJ5l8-#}PV8TArX(lS9z_dxsf~0q=+6Lf*T<^b>g&w6AJ$xT;0O;}#-*&E>x$O)X-Aj!mg)#>Ce68x-?6V3(f9B(mwzCU4Pp7l zvCRQ#VFmtyg=J7yVz4=7ZZP&Bkbjx{ucK}b#Jua1g<7+Ug z^25IXPt1S44_o`leKb{47ugvjGwB^@{C$dd99N2~jdYbak3viuzbq*W% zm$}ceI8m0b4-M)!Z;C$iy-v=poeqc?YpM0=sIPw4wPVE9&F(tn!ZN<(z3T#PTd zlhzG5zPtxMeZLn>=pB|wK!>(s#M&(*AnKjyG41eF&ng$xvn}5jsjx%m>SN7ri zER&&~n8-c@XdeHHvtw;m*1{k%eg;tb8IZ-X`& zuQ3Di3no;JlL%tx4-4zlcGj?18<`{~WtZlp=zf1topOuY6L^Mp#~wi3;LMK`-9C&p z)4Yu^d4E+Y>-M^>4;r?Jj_Y@;VOm08s;iH-rGr{as90atTy|*ejvv*Rbn^OL!Yk)H z6Cqb(p=S_7_o=rGMy6c_2aUA(@8i439r8v$svYr8x7$D@p3|BF&X(*yel{^sxvb82 zo2$ZT$9*93#k1?(&Ta{y#d+XEQc1SVL`0{}Y=3(mrY#IM96WWxN9_CT4`j+(vVEPK zV)M*0I`ch4t?^RJuGd&;u6j=yLxI8Kuss%RM$;+ z58nL^oXwbG+7J?x^*A3~?l;Q1B+}M)dI2vSHX6_I=ZK1yuSYU;Dl8)Bg8rhxv6l~5 zsDHcR_|U}zeQ%h^hhs|~5Td-3VuE*_Bh^Q}ORD1d5mtEmrPcU9KV3_c_1ogJ5$YNz zGDh7UKYdVN;8t`mSjIp-PrS&yFPe|3?cbjw+N2|D1%%vzMzYmp#eUzrZx4%3f%rxI zY!qBd7ih^_>-RqTa7R;E17u1XMfT|s?0@ELfb!&6EI+2W_R{V;Amq17y9QaLSZv%D{#uOU+-c-Qk#Zy-QO% zWU|j0BR7+l_x5|-_R)W=#?_~_5A^_S?TttFY?B69#k__7yn*+5z>8+j&b9b-f`9gT z@4G}**8Kv8K_T;?2fW0J=@YDWpGi}B43&ko=~#9~baTDJ0N$UNues(22e+2pYkiz>OI9=S=5O}5^vk{p?D>h_2Frn?m;zZoS#o@&dvT3!hhWB4QmDrWMYJB z`!(i*y`MmK()_~<$HLd(r}w4&hx+w=D_RxJHmv|(K%l=@Yojy?s&L`^0aZY34P|?M zSaZ1?85hVQe1#MDEbOfsvYw=_^$;|kOrgLzd~`#*(0}!#FXWls_^CrnXZ?2gzcmYrFJ?--s zw5~Le5R{AVVZMVpX~}Ajuf|)UifC zkWL*O$5z?U%>8I*?caZX^NcZDcl+=?5IV4JHDlrxb*r^zoJY!LCRdqaq`$E*0oa_z zLvfYuO~CvQOuS}bA8JQo^R)FeN3~EgaK~KN!O*0BK^gD`!6dZnjJ-KVexYF9{wog8 zd3ZO9xz*^x$Mel0mXq03zSK9{lyK0t(&{Q?WBCh2K9_V-J?DRoz8+wYNkIi%)djU# z+kL-tH%o@7)r`lI5dh=^`vtogl3uhB`XR!9JFx>$~9AM}Hu`GD(q7i#)=Yut_HN*o1hPIcKk=EdNrIPb05SsVkg&c#}P;8T=m zT6dk7g)CEJR6dO|7)#!&agAj{o~N@T?UMbYofP^R`!IjjgqA**4mcij*S0m6de7L1 zT~@A>?FMyOxVy88kD1IQ&Zk{JyfQTwbXn5oPkM@p1GfB zwH-3=?dL;f54#=nAA_ySS8ZS=8ytinFyY{ap4!^PU$Qon$#DR!$-VP~9M}rvUPn`N zW`lnukhDGcJ@*HxLKpq9tE2TQa=PfPj0#rm54r1o6{2~!oJg%Ur6r3Uq=M|nmW?>x zwRCSNK4V4aeE+aJ`G=ukfV{Jaj#D} z3BouuY;_4RyK~pxm13eZ>HxPPO!O?9d1HU({O|@_e_9{%rad-P4Qd5p>tqq=PHR7m z(WLf=gMmYteSn%H8$5O3E=_;z zxpmeaB%zYAj`+Puxw5rEoR(IZ8FMS*5w_-s$2Hsrtf$&=HTJ7N>WUbE#T98S4IF+H#lMqeLfL8rNa+vMcwk zdwu3Dtu|O5hn)`cGL>q>xDwGnIEnhsT3)7Qa5so{r}?7V2*0D7<~&n50FWzx?>D}F z1&J2V?gyy(VL|uubsW+=mr)9s6aCTJQ(R$}4`!KozhS@&LH@))_Thgb-qlNAEzHZd zHp1EA#$TS5SL4%|d4K>Pu0In?0tWk#y6B4j{YHx)fQ2lApMCk}rv8l52&_Rb^*8RF zsuvZB`@lFhe_v&mJRedCN$(zWnYzz&_C(&u+0$KfCx;9gI3;asU#squ*oRuFv=1{o zeQ{)zBJ9m|8-)_TF|&U$NDzhp1nE+5+hpzU{Yf2KLA&=4o4{_5gP=6vwLl{d1JPN! zV1l)nmyiqaW90$b8vNAi{kGT^A0F3tOqDLWSPH1jj{c+Z9S;15Y&sbkwLO0Z8`(t) zGJh}B$`A7*5~Vb8sEu^;4ROaAal(kX-!`-ZUYS>qOPyPKDP4B`^lF{@&{F@%)Z35!zOm4P7!el&;XHq zA!UKS1b9*#ekZA|_u-FRz|z~DKcm}>o>&~th->}QZJcKExDRN6;Cy+RG#Jjkw-pZHVwuh20W5EZGMamD@?>~j@Y9kQ z!@nAN!>Cd$X5mZ1dTE<02j7_-^Fu}BO__R&78MB0ci1((z(rsr;q?9H7dxpWzB(BS z{QAAEYx;-3!7NB)7L2<(lS@prw3ptHJ+>VTTDV^F5^{giRZ-7Pg8!)c14l>AamuNp zVK6yy328F0h@tylsrW&XJtky%`6({`3rr2M`T#8yIh}~+W9j!EhogfN&$LeyY+vk_ z1wuFfYY^&$5Eke8{F1x=-_Pt&o}2@&qHWF;f=1!Q+E4OTr{Qyxpseyk-CFlzq(BIR z7X5>b{=R=%^P*8#BE$J(3xOsImMq27+?d{+z5NZ(vu>Pi&6!0DIU}Q$~xqj*E7KnVCS&Z%Fc7@Q52jJ=%TC|P zJ%D3Ph%(z|c)4*G-gnC$HAQjvSg(1*gD2Lyl>^??m*7TU?W`?Ss{j%`#J407kLkAX z)HUWKA+SUCgh)Bx7RqH#X!FCgWy;|q(T&p=LKi8sx7f)pgtZVcCK1|~-JT57{~QJ` zgL!}6zgH|8(+=S)O_1h~B-k`+#>wgKLopRU@GhUTJ>;EDsq2XsP7=Pf0}a9y>DyWKy~~IAiOR6%Kb&_ zI+zF&R2kQ`EMZCDv>t8N{Z%#FX+K${SIV8aX{U3L)h}3fDDND)b?1CX&H~hJm-~!Ne5y{9LC<_)Af<`i-IC1-zk zM8xy<4@;st)*&!NmLMWJhtyA%NpRsjm^$wWsftJS`Et`)KP5>>e$ZLY{oj*l8Mm^r zi}wI9O`o&>tn;j6&jXw`&7C0z!3wq7XX^*-;)&t!d2dKu+EVI_j5we3VwtB)vVd8zRNl_0%pT_uZP=2aVt2 zX4)Wrx7itiEGXS)^njgUw}eaIXty_1e`?R+s|X`+0ze;5*F_%
2wG*fI05sL70W9-aPkB^I;F^1P>(jeQ^vEs-~xjcIj+?i&Y}bpes125tZEPZjG|H0Ik` zy(oe->qtZrEx=PaGX#4reW`@hXP7Q6>~Q zkE8{N;>`f3s9T+en_^1^2~vbG|Na*ouA|u|GNy)jo~`TAl5vvcW)FYrxppeX_1eF+ z!L2^6vR(b~Of@aLw9&6GwJN@c{*~S3RH&<9@wm(79hgn6VMk{#Z zCN;?iYM>Z{?b~_WKuut~c;j9l|uJPg+6R8)gLj%I_ z?huiCV!8iqpMS)xNNRuFe_#Uw_Xvg!!PRlj%@*JdD(4LpH3aL>KnA}ki+N_-62L=W zpC3lc8Aun=HJqCS#=KU4M|oeayT&G4x!_0HV9o$5S^|fY;|u(dZK0ku4>byeZJ4Yj zE4X^fMNt#U)4IkiO5+`%ah;$?)R=O9*e7$&Y*^^Qn+7%Ege-qsE}^j|g1^)E?_FmN zCKAvrJ@Yhn&Hw%tRRK{>yef8WDJnB7e2;e0_fNVrjt3&w1L^aC+dgYFX4xN}rfjSG zLhD^(%Wna$ExPkRtcgT+NPPK{uWye*xx1;Bzk2&au-lbD<5m!d!~YAlT*0zab7OUH zC2NdPk^T2jzN3#Z3J4sqbiS!t%~^J3d!~K0J~9QP-R@g=OwKm)K_Rz$#$8Qpj#1&} z=zPk_1g_q0UL=PzqTduSDBM&=Aw?xqvSEDs-H^}om!(opy?-aliI z!ZJCSWNxwCz_T|(+mtCksHW6{_*#7%5WOFr)Y_{Lnhx>+X`D;*A#`uG?c}}-@DgE} zT7ZAft&534I^x#u*7`vH@}WV|gr(=Z^}OD?WbJyBF=97qY#@o`0`g$`e3**h|H>H@ zze4`N+;k2=1vaFjzhm|*mY&N)HqQA4QRb{`%#PMRn&*w?YNBtS_F>&SqM?O4lYQ6R zemMVfG)YWEE6^wLu|-%mD|8}i47RlCZXbUjRW6l!jLyhl=L$6qKb;H&JJh4hZ-1_f z`jUBD^M^2S3Sjet-WU+LSi$_fK%Wk7boS*m=Mf*zchc{ zeYP|3$L`?#N{=iv_P~U*IaGd`UB@=_a$ykoVuD>w&g2}fw`jA(5ai)ZOI{KOqE~xPLAV_Q>8KkuPUzpjgGZ=p>u43^-x>SGQ ze$<;8GZu%tRS;(HU4;^jH3H*WFaIKFrtz$$Wa{saDhOAY*n43A=BNh}c1A*Gpk}fR zR!FK8bd3BHC%Y=0Y>JzcbFal@0xI}gvIlW5n$#G}IUC2qkPEjB`>=j+u_*KoMh1sX z_iN+nJaW#{y+*_QI3s^@ECZXdCxJ8A!>_hEhQ=qiFXhYZj_nDFn%_4el{P-0d-po9mMf8Xz%YqzF%MD*N!_L~R$-AvF} zdpDi?FXSqc*uk_#A$a_X4a1xh%QmO`j;5*B&m8Qu?DuKSPj`RVN&UkcO@F<)RqZu| z&wbm|eh2itV<(XA)Q_i1UZ>?HGyV|n=NqpUvhjMhwa$VR+>4U)c65NpW-|`O*?M;Q&aQ?ut z#r8O%zoDpW6?K35#AZE~<5kCxRa{|x^Z&6_Os2=)8FpX$Vh?DLM|&`%d+m|(Y^QP6 z|CyRrJSPx*VyQQ8&VdGj6Yv^ciES_Hn* z?@+mSJn!$r;a51Tt@TEm8#T#Z01NMHR8DA0jab+BIA?z_-+z~5?=e|#;%@qId|##l zoi+P`Mn9NBWI=#YaE5aHUhxpBJr}Jt@QF&H488xru|?h_-$QtqT?m54>~D*<8Dlp) zFl#aL9KF@lVm$Ub(puCQ_e0CQxz+(d@!Fm4u}k=lGLKEr+;gYOb$kN82U1p$8?s4; zjQ1BvWIBI2k*^(;g+_R|KSXHRz*b1hG2CAP&817DYe-$wE}iiK z5bkg}T%L*do%7)*u*C&@MsA(Ecc(SO_v^yq|D}JHc`~z}{^iuR!&K}4$sOkxA*UI1 zbd&aq`j@8Bp4h?@VV=6st^0WjmjTI+=yFXEt-HVX0aCRc#CSk!tF`!bjmPwxpsU!m zpcGaG=LBCpJSZ*3n&=7V{LqbsdplS@$9j~8(Sl(48r^fQwGOcAeH#hs441K(c5a5L z>kEJS(hwWQdh2)f8szt1p{%3;&T-qG5!GKa`}CK0lkT6!LvYlGoBn><2K?^>WW4Jo zs}B?_?xU62r*ney`+mFFwZ_mJ4!^9VLvs(S2dwbdV!4;H!A$YBa$)>nHRVF&QQoBKwgEqUfEJFQ?p&c2 zMmy>;cE5YxYf(dMxb{+Qi|tX^$rFdG!M(lf9Q{MVp-)J{qdVoAcNSZwxBIWGZT-R| z>GNKa%yY7t?>3R7XbY@S|DLv_k!*jP%&DWx-K~!`2NvDTr{hxWc|ht5e

oWic6+ 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�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%0DZF*%VpmSZbh#>f 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�gQ`c%Chs-6aLl(^Kc3mzvl3ocUimeeYudG8}! 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 A1poj5 diff --git a/package-lock.json b/package-lock.json index 5b72457ef..c38a9b0c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,6 +54,7 @@ "semver" ], "license": "Apache-2.0", + "peer": true, "dependencies": { "jsonschema": "~1.4.1", "semver": "^7.7.3" @@ -555,6 +556,7 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.1015.0.tgz", "integrity": "sha512-eGWsXMHJE+cTNGCpRprWOL0n5jfDuejsPQ9luzvAkIU4ZcoA5+yfr93Sh/ZoHiAh2Hc4yFkEFQCwwiXQjFiqng==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", @@ -2025,6 +2027,7 @@ "version": "1.9.0", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=8.0.0" } @@ -3628,6 +3631,7 @@ "version": "25.5.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "undici-types": "~7.18.0" } @@ -3678,6 +3682,7 @@ "integrity": "sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.57.2", "@typescript-eslint/types": "8.57.2", @@ -4002,6 +4007,7 @@ "version": "8.16.0", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -4042,6 +4048,7 @@ "version": "6.14.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -4554,6 +4561,7 @@ "node_modules/axios": { "version": "1.13.6", "license": "MIT", + "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", @@ -4796,7 +4804,8 @@ }, "node_modules/constructs": { "version": "10.5.1", - "license": "Apache-2.0" + "license": "Apache-2.0", + "peer": true }, "node_modules/convert-source-map": { "version": "2.0.0", @@ -5057,6 +5066,7 @@ "integrity": "sha512-S9jlY/ELKEUwwQnqWDO+f+m6sercqOPSqXM5Go94l7DOmxHVDgmSFGWEzeE/gwgTAr0W103BWt0QLe/7mabIvA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -6259,6 +6269,7 @@ "version": "6.15.0", "dev": true, "license": "MIT", + "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -6751,6 +6762,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -6759,6 +6771,7 @@ "version": "19.2.1", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -7136,6 +7149,7 @@ "version": "6.3.9", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -7361,6 +7375,7 @@ "version": "5.9.3", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7443,6 +7458,7 @@ "version": "4.1.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@vitest/expect": "4.1.0", "@vitest/mocker": "4.1.0", @@ -7575,6 +7591,7 @@ "version": "8.0.0", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", @@ -7648,24 +7665,6 @@ } } }, - "node_modules/vitest/node_modules/yaml": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", - "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", - "dev": true, - "license": "ISC", - "optional": true, - "peer": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, "node_modules/webidl-conversions": { "version": "3.0.1", "dev": true, diff --git a/packages/cdk/bin/PfPApiApp.ts b/packages/cdk/bin/PfPApiApp.ts index a874b4fc4..08b9e1ec8 100644 --- a/packages/cdk/bin/PfPApiApp.ts +++ b/packages/cdk/bin/PfPApiApp.ts @@ -7,6 +7,8 @@ import { } from "@nhsdigital/eps-cdk-constructs" import {PfPApiStack} from "../stacks/PfPApiStack" +const defaultTestNhsNumber = "9992387920" + function main() { const {app, props} = createApp({ productName: "Prescriptions for Patients API", @@ -24,9 +26,9 @@ function main() { targetServiceSearchServer: getConfigFromEnvVar("targetServiceSearchServer"), toggleGetStatusUpdates: getConfigFromEnvVar("toggleGetStatusUpdates"), allowNhsNumberOverride: getConfigFromEnvVar("allowNhsNumberOverride"), - tc007NhsNumberValue: getConfigFromEnvVar("tc007NhsNumberValue"), - tc008NhsNumberValue: getConfigFromEnvVar("tc008NhsNumberValue"), - tc009NhsNumberValue: getConfigFromEnvVar("tc009NhsNumberValue"), + tc007NhsNumberValue: getConfigFromEnvVar("tc007NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), + tc008NhsNumberValue: getConfigFromEnvVar("tc008NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), + tc009NhsNumberValue: getConfigFromEnvVar("tc009NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), mutualTlsTrustStoreKey: props.isPullRequest ? undefined : getConfigFromEnvVar("trustStoreFile"), // CSOC API GW log destination - do not change csocApiGatewayDestination: "arn:aws:logs:eu-west-2:693466633220:destination:api_gateway_log_destination", diff --git a/packages/cdk/tsconfig.json b/packages/cdk/tsconfig.json index 2b73af77d..f2046573b 100644 --- a/packages/cdk/tsconfig.json +++ b/packages/cdk/tsconfig.json @@ -24,6 +24,17 @@ "../../node_modules/@types" ] }, - "include": ["resources/**/*", "constructs/**/*", "policies/**/*", "stacks/**/*", "tests/**/*", "scripts/**/*", "nagSuppressions.ts"], - "exclude": ["node_modules", "cdk.out"] + "include": [ + "resources/**/*", + "constructs/**/*", + "policies/**/*", + "stacks/**/*", + "tests/**/*", + "scripts/**/*", + "nagSuppressions.ts" + ], + "exclude": [ + "node_modules", + "cdk.out" + ] } From ceb87b46aef014411da0f8c511f11dd695de61cc Mon Sep 17 00:00:00 2001 From: Jim Wild Date: Thu, 26 Mar 2026 17:08:31 +0000 Subject: [PATCH 29/29] Stateful stack, stateless stack. --- packages/cdk/bin/PfPApiApp.ts | 27 +++++++++++----- packages/cdk/nagSuppressions.ts | 14 ++++---- packages/cdk/resources/Apis.ts | 4 +-- packages/cdk/resources/Functions.ts | 4 +-- packages/cdk/stacks/PfPApiStatefulStack.ts | 32 +++++++++++++++++++ ...PfPApiStack.ts => PfPApiStatelessStack.ts} | 27 +++++++--------- packages/cdk/tests/synth.test.ts | 7 +++- 7 files changed, 80 insertions(+), 35 deletions(-) create mode 100644 packages/cdk/stacks/PfPApiStatefulStack.ts rename packages/cdk/stacks/{PfPApiStack.ts => PfPApiStatelessStack.ts} (72%) diff --git a/packages/cdk/bin/PfPApiApp.ts b/packages/cdk/bin/PfPApiApp.ts index 08b9e1ec8..51d06e764 100644 --- a/packages/cdk/bin/PfPApiApp.ts +++ b/packages/cdk/bin/PfPApiApp.ts @@ -5,7 +5,8 @@ import { getConfigFromEnvVar, getNumberConfigFromEnvVar } from "@nhsdigital/eps-cdk-constructs" -import {PfPApiStack} from "../stacks/PfPApiStack" +import {buildParametersReadPolicyExportName, PfPApiStatefulStack} from "../stacks/PfPApiStatefulStack" +import {PfPApiStatelessStack} from "../stacks/PfPApiStatelessStack" const defaultTestNhsNumber = "9992387920" @@ -17,25 +18,35 @@ function main() { driftDetectionGroup: "pfp-api" }) - const pfpApiStack = new PfPApiStack(app, "PfPApiStack", { + const stackName = calculateVersionedStackName(getConfigFromEnvVar("stackName"), props) + + const statefulStack = new PfPApiStatefulStack(app, "PfPApiStatefulStack", { ...props, - stackName: calculateVersionedStackName(getConfigFromEnvVar("stackName"), props), + stackName, + tc007NhsNumberValue: getConfigFromEnvVar("tc007NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), + tc008NhsNumberValue: getConfigFromEnvVar("tc008NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), + tc009NhsNumberValue: getConfigFromEnvVar("tc009NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber) + }) + + const statelessStack = new PfPApiStatelessStack(app, "PfPApiStatelessStack", { + ...props, + stackName, logRetentionInDays: getNumberConfigFromEnvVar("logRetentionInDays"), logLevel: getConfigFromEnvVar("logLevel"), targetSpineServer: getConfigFromEnvVar("targetSpineServer"), targetServiceSearchServer: getConfigFromEnvVar("targetServiceSearchServer"), toggleGetStatusUpdates: getConfigFromEnvVar("toggleGetStatusUpdates"), allowNhsNumberOverride: getConfigFromEnvVar("allowNhsNumberOverride"), - tc007NhsNumberValue: getConfigFromEnvVar("tc007NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), - tc008NhsNumberValue: getConfigFromEnvVar("tc008NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), - tc009NhsNumberValue: getConfigFromEnvVar("tc009NhsNumberValue", "CDK_CONFIG_", defaultTestNhsNumber), mutualTlsTrustStoreKey: props.isPullRequest ? undefined : getConfigFromEnvVar("trustStoreFile"), // CSOC API GW log destination - do not change csocApiGatewayDestination: "arn:aws:logs:eu-west-2:693466633220:destination:api_gateway_log_destination", - forwardCsocLogs: getBooleanConfigFromEnvVar("forwardCsocLogs") + forwardCsocLogs: getBooleanConfigFromEnvVar("forwardCsocLogs"), + parametersReadPolicyExportName: buildParametersReadPolicyExportName(stackName) }) - return pfpApiStack + statelessStack.addDependency(statefulStack) + + return statelessStack } try { diff --git a/packages/cdk/nagSuppressions.ts b/packages/cdk/nagSuppressions.ts index b49660edc..1c1e55bb8 100644 --- a/packages/cdk/nagSuppressions.ts +++ b/packages/cdk/nagSuppressions.ts @@ -6,10 +6,10 @@ export const nagSuppressions = (stack: Stack) => { safeAddNagSuppressionGroup( stack, [ - "/PfPApiStack/Functions/GetMyPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", - "/PfPApiStack/Functions/EnrichPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", - "/PfPApiStack/Functions/StatusLambda/LambdaPutLogsManagedPolicy/Resource", - "/PfPApiStack/StateMachines/GetMyPrescriptionsStateMachine/StateMachinePutLogsManagedPolicy/Resource" + "/PfPApiStatelessStack/Functions/GetMyPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStatelessStack/Functions/EnrichPrescriptionsLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStatelessStack/Functions/StatusLambda/LambdaPutLogsManagedPolicy/Resource", + "/PfPApiStatelessStack/StateMachines/GetMyPrescriptionsStateMachine/StateMachinePutLogsManagedPolicy/Resource" ], [ { @@ -21,7 +21,7 @@ export const nagSuppressions = (stack: Stack) => { safeAddNagSuppression( stack, - "/PfPApiStack/Apis/ApiGateway/ApiGateway/Resource", + "/PfPApiStatelessStack/Apis/ApiGateway/ApiGateway/Resource", [ { id: "AwsSolutions-APIG2", @@ -33,8 +33,8 @@ export const nagSuppressions = (stack: Stack) => { safeAddNagSuppressionGroup( stack, [ - "/PfPApiStack/Apis/ApiGateway/ApiGateway/Default/Bundle/GET/Resource", - "/PfPApiStack/Apis/ApiGateway/ApiGateway/Default/_status/GET/Resource" + "/PfPApiStatelessStack/Apis/ApiGateway/ApiGateway/Default/Bundle/GET/Resource", + "/PfPApiStatelessStack/Apis/ApiGateway/ApiGateway/Default/_status/GET/Resource" ], [ { diff --git a/packages/cdk/resources/Apis.ts b/packages/cdk/resources/Apis.ts index b1ac0caac..b3bd30c2a 100644 --- a/packages/cdk/resources/Apis.ts +++ b/packages/cdk/resources/Apis.ts @@ -3,9 +3,9 @@ import { ExpressStateMachine, LambdaEndpoint, RestApiGateway, - StateMachineEndpoint, TypescriptLambdaFunction } from "@nhsdigital/eps-cdk-constructs" +import {StateMachineEndpoint} from "@nhsdigital/eps-cdk-constructs/lib/src/constructs/RestApiGateway/StateMachineEndpoint.js" import {Construct} from "constructs" export interface ApisProps { @@ -22,7 +22,7 @@ export class Apis extends Construct { apis: {[key: string]: RestApiGateway} endpoints: {[key: string]: Construct} - public constructor(scope: Construct, id: string, props: ApisProps){ + public constructor(scope: Construct, id: string, props: ApisProps) { super(scope, id) const apiGateway = new RestApiGateway(this, "ApiGateway", { diff --git a/packages/cdk/resources/Functions.ts b/packages/cdk/resources/Functions.ts index 4b16c5ac2..4c343ffb3 100644 --- a/packages/cdk/resources/Functions.ts +++ b/packages/cdk/resources/Functions.ts @@ -1,5 +1,5 @@ import {Fn, RemovalPolicy} from "aws-cdk-lib" -import {ManagedPolicy} from "aws-cdk-lib/aws-iam" +import {IManagedPolicy, ManagedPolicy} from "aws-cdk-lib/aws-iam" import {Construct} from "constructs" import {TypescriptLambdaFunction} from "@nhsdigital/eps-cdk-constructs" import {Code, LayerVersion} from "aws-cdk-lib/aws-lambda" @@ -16,7 +16,7 @@ export interface FunctionsProps { readonly allowNhsNumberOverride: string readonly logRetentionInDays: number readonly logLevel: string - readonly getPfPParametersPolicy: ManagedPolicy + readonly getPfPParametersPolicy: IManagedPolicy } const baseDir = resolve(__dirname, "../../..") diff --git a/packages/cdk/stacks/PfPApiStatefulStack.ts b/packages/cdk/stacks/PfPApiStatefulStack.ts new file mode 100644 index 000000000..c4d2690a1 --- /dev/null +++ b/packages/cdk/stacks/PfPApiStatefulStack.ts @@ -0,0 +1,32 @@ +import {App, CfnOutput, Stack} from "aws-cdk-lib" +import {Parameters} from "../resources/Parameters" +import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" + +export interface PfPApiStatefulStackProps extends StandardStackProps { + readonly stackName: string + readonly tc007NhsNumberValue: string + readonly tc008NhsNumberValue: string + readonly tc009NhsNumberValue: string +} + +export function buildParametersReadPolicyExportName(stackName: string): string { + return `${stackName}:PfPApi:ReadParametersPolicyArn` +} + +export class PfPApiStatefulStack extends Stack { + public constructor(scope: App, id: string, props: PfPApiStatefulStackProps) { + super(scope, id, props) + + const params = new Parameters(this, "Parameters", { + stackName: props.stackName, + tc007NhsNumberValue: props.tc007NhsNumberValue, + tc008NhsNumberValue: props.tc008NhsNumberValue, + tc009NhsNumberValue: props.tc009NhsNumberValue + }) + + new CfnOutput(this, "ReadParametersPolicyArn", { + value: params.readParametersPolicy.managedPolicyArn, + exportName: buildParametersReadPolicyExportName(props.stackName) + }) + } +} diff --git a/packages/cdk/stacks/PfPApiStack.ts b/packages/cdk/stacks/PfPApiStatelessStack.ts similarity index 72% rename from packages/cdk/stacks/PfPApiStack.ts rename to packages/cdk/stacks/PfPApiStatelessStack.ts index c5510e605..a51274d39 100644 --- a/packages/cdk/stacks/PfPApiStack.ts +++ b/packages/cdk/stacks/PfPApiStatelessStack.ts @@ -1,12 +1,12 @@ -import {App, Stack} from "aws-cdk-lib" +import {App, Fn, Stack} from "aws-cdk-lib" +import {ManagedPolicy} from "aws-cdk-lib/aws-iam" import {nagSuppressions} from "../nagSuppressions" import {Functions} from "../resources/Functions" -import {Parameters} from "../resources/Parameters" import {StateMachines} from "../resources/StateMachines" import {Apis} from "../resources/Apis" import {StandardStackProps} from "@nhsdigital/eps-cdk-constructs" -export interface PfPApiStackProps extends StandardStackProps { +export interface PfPApiStatelessStackProps extends StandardStackProps { readonly stackName: string readonly logRetentionInDays: number readonly logLevel: string @@ -14,24 +14,21 @@ export interface PfPApiStackProps extends StandardStackProps { readonly targetServiceSearchServer: string readonly toggleGetStatusUpdates: string readonly allowNhsNumberOverride: string - readonly tc007NhsNumberValue: string - readonly tc008NhsNumberValue: string - readonly tc009NhsNumberValue: string readonly mutualTlsTrustStoreKey: string | undefined readonly csocApiGatewayDestination: string readonly forwardCsocLogs: boolean + readonly parametersReadPolicyExportName: string } -export class PfPApiStack extends Stack { - public constructor(scope: App, id: string, props: PfPApiStackProps) { +export class PfPApiStatelessStack extends Stack { + public constructor(scope: App, id: string, props: PfPApiStatelessStackProps) { super(scope, id, props) - const params = new Parameters(this, "Parameters", { - stackName: props.stackName, - tc007NhsNumberValue: props.tc007NhsNumberValue, - tc008NhsNumberValue: props.tc008NhsNumberValue, - tc009NhsNumberValue: props.tc009NhsNumberValue - }) + const parametersReadPolicy = ManagedPolicy.fromManagedPolicyArn( + this, + "ReadParametersPolicy", + Fn.importValue(props.parametersReadPolicyExportName) + ) // Resources const functions = new Functions(this, "Functions", { @@ -45,7 +42,7 @@ export class PfPApiStack extends Stack { allowNhsNumberOverride: props.allowNhsNumberOverride, logRetentionInDays: props.logRetentionInDays, logLevel: props.logLevel, - getPfPParametersPolicy: params.readParametersPolicy + getPfPParametersPolicy: parametersReadPolicy }) const stateMachines = new StateMachines(this, "StateMachines", { diff --git a/packages/cdk/tests/synth.test.ts b/packages/cdk/tests/synth.test.ts index e60f5410c..54237fad2 100644 --- a/packages/cdk/tests/synth.test.ts +++ b/packages/cdk/tests/synth.test.ts @@ -1,5 +1,10 @@ import {execFileSync} from "node:child_process" -import {existsSync, mkdirSync, unlinkSync, writeFileSync} from "node:fs" +import { + existsSync, + mkdirSync, + unlinkSync, + writeFileSync +} from "node:fs" import {resolve} from "node:path" import {describe, expect, it} from "vitest"