@openhi/constructs 0.0.150 → 0.0.152
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/{chunk-AWYZJFPL.mjs → chunk-CFJDATDK.mjs} +8 -1
- package/lib/chunk-CFJDATDK.mjs.map +1 -0
- package/lib/{chunk-I7IIPV5X.mjs → chunk-KR2Y2CVQ.mjs} +10 -4
- package/lib/chunk-KR2Y2CVQ.mjs.map +1 -0
- package/lib/{chunk-WGA43MMY.mjs → chunk-SXYY5WHG.mjs} +194 -71
- package/lib/chunk-SXYY5WHG.mjs.map +1 -0
- package/lib/{chunk-CEOAGPYY.mjs → chunk-ZXPA6W3G.mjs} +1 -3
- package/lib/chunk-ZXPA6W3G.mjs.map +1 -0
- package/lib/data-store-postgres-replication.handler.js +687 -0
- package/lib/data-store-postgres-replication.handler.js.map +1 -1
- package/lib/data-store-postgres-replication.handler.mjs +3 -2
- package/lib/data-store-postgres-replication.handler.mjs.map +1 -1
- package/lib/{events-CMG8xanm.d.ts → events-DTgo2dcW.d.mts} +2 -14
- package/lib/{events-CMG8xanm.d.mts → events-DTgo2dcW.d.ts} +2 -14
- package/lib/firehose-archive-transform.handler.js +688 -2
- package/lib/firehose-archive-transform.handler.js.map +1 -1
- package/lib/firehose-archive-transform.handler.mjs +3 -2
- package/lib/index.d.mts +62 -8
- package/lib/index.d.ts +62 -20
- package/lib/index.js +53 -22
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +36 -7
- package/lib/index.mjs.map +1 -1
- package/lib/provision-default-workspace.handler.js +6 -0
- package/lib/provision-default-workspace.handler.js.map +1 -1
- package/lib/provision-default-workspace.handler.mjs +1 -1
- package/lib/rest-api-lambda.handler.js +6 -0
- package/lib/rest-api-lambda.handler.js.map +1 -1
- package/lib/rest-api-lambda.handler.mjs +1 -1
- package/lib/seed-demo-data.handler.d.mts +14 -1
- package/lib/seed-demo-data.handler.d.ts +14 -1
- package/lib/seed-demo-data.handler.js +199 -68
- package/lib/seed-demo-data.handler.js.map +1 -1
- package/lib/seed-demo-data.handler.mjs +2 -2
- package/package.json +5 -5
- package/lib/chunk-AWYZJFPL.mjs.map +0 -1
- package/lib/chunk-CEOAGPYY.mjs.map +0 -1
- package/lib/chunk-I7IIPV5X.mjs.map +0 -1
- package/lib/chunk-WGA43MMY.mjs.map +0 -1
package/lib/index.js
CHANGED
|
@@ -785,7 +785,6 @@ __export(src_exports, {
|
|
|
785
785
|
ControlPlaneRenameV1: () => import_workflows6.ControlPlaneRenameV1,
|
|
786
786
|
DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES: () => DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES,
|
|
787
787
|
DATA_STORE_CHANGE_DETAIL_TYPE: () => DATA_STORE_CHANGE_DETAIL_TYPE,
|
|
788
|
-
DATA_STORE_CHANGE_EVENT_SOURCE: () => DATA_STORE_CHANGE_EVENT_SOURCE,
|
|
789
788
|
DEFAULT_PREVIEW_EXPIRATION_DAYS: () => DEFAULT_PREVIEW_EXPIRATION_DAYS,
|
|
790
789
|
DEMO_DATA_PLANE_FIXTURES: () => DEMO_DATA_PLANE_FIXTURES,
|
|
791
790
|
DEMO_PERIOD: () => DEMO_PERIOD,
|
|
@@ -1643,7 +1642,6 @@ function dynamodbImageToPlain(image) {
|
|
|
1643
1642
|
}
|
|
1644
1643
|
|
|
1645
1644
|
// src/components/dynamodb/data-store-change-events.ts
|
|
1646
|
-
var DATA_STORE_CHANGE_EVENT_SOURCE = "openhi.data.store";
|
|
1647
1645
|
var DATA_STORE_CHANGE_DETAIL_TYPE = "FhirCurrentResourceChanged";
|
|
1648
1646
|
var DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES = 250 * 1024;
|
|
1649
1647
|
var EXCLUDED_CHANGE_DETAIL_KEYS = /* @__PURE__ */ new Set([
|
|
@@ -3103,11 +3101,15 @@ var OpenHiGlobalService = _OpenHiGlobalService;
|
|
|
3103
3101
|
// src/workflows/control-plane/seed-demo-data/events.ts
|
|
3104
3102
|
var import_types = require("@openhi/types");
|
|
3105
3103
|
var import_workflows2 = __toESM(require_lib2());
|
|
3104
|
+
|
|
3105
|
+
// src/data/operations/control/membership-constraints/platform-scope-tenant-id.ts
|
|
3106
|
+
var PLATFORM_SCOPE_TENANT_ID = "platform";
|
|
3107
|
+
|
|
3108
|
+
// src/workflows/control-plane/seed-demo-data/events.ts
|
|
3106
3109
|
var SEED_DEMO_DATA_CONSUMER_NAME = "seed-demo-data";
|
|
3107
3110
|
var DEMO_URN_SYSTEM = "urn:openhi:demo";
|
|
3108
3111
|
var OPENHI_RESOURCE_URN_SYSTEM = "http://openhi.org/";
|
|
3109
3112
|
var DEMO_PERIOD = { start: "2026-01-01T00:00:00Z" };
|
|
3110
|
-
var PLATFORM_SCOPE_TENANT_ID = "platform";
|
|
3111
3113
|
var PLACEHOLDER_TENANT_ID = "placeholder-tenant-id";
|
|
3112
3114
|
var PLACEHOLDER_WORKSPACE_ID = "placeholder-workspace-id";
|
|
3113
3115
|
var DEV_USERS = [
|
|
@@ -6524,7 +6526,7 @@ var SeedDemoDataLambda = class extends import_constructs13.Construct {
|
|
|
6524
6526
|
this.lambda.addToRolePolicy(
|
|
6525
6527
|
new import_aws_iam3.PolicyStatement({
|
|
6526
6528
|
effect: import_aws_iam3.Effect.ALLOW,
|
|
6527
|
-
actions: ["dynamodb:PutItem", "dynamodb:UpdateItem"],
|
|
6529
|
+
actions: ["dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:Query"],
|
|
6528
6530
|
resources: [props.dataStoreTable.tableArn]
|
|
6529
6531
|
})
|
|
6530
6532
|
);
|
|
@@ -6786,6 +6788,7 @@ var OpenHiDataService = _OpenHiDataService;
|
|
|
6786
6788
|
|
|
6787
6789
|
// src/services/open-hi-website-service.ts
|
|
6788
6790
|
var import_config6 = __toESM(require_lib());
|
|
6791
|
+
var import_aws_cdk_lib15 = require("aws-cdk-lib");
|
|
6789
6792
|
var import_aws_s32 = require("aws-cdk-lib/aws-s3");
|
|
6790
6793
|
|
|
6791
6794
|
// src/services/open-hi-rest-api-service.ts
|
|
@@ -7362,6 +7365,7 @@ var _OpenHiWebsiteService = class _OpenHiWebsiteService extends OpenHiService {
|
|
|
7362
7365
|
const isReleaseBranch = this.branchName === this.defaultReleaseBranch;
|
|
7363
7366
|
const hostedZone = this.createHostedZone();
|
|
7364
7367
|
this.fullDomain = this.computeFullDomain(hostedZone);
|
|
7368
|
+
this.createAdminConsoleEndpointOutput();
|
|
7365
7369
|
const shouldCreateHostingInfra = props.createHostingInfrastructure ?? isReleaseBranch;
|
|
7366
7370
|
if (shouldCreateHostingInfra) {
|
|
7367
7371
|
const certificate = this.createCertificate();
|
|
@@ -7501,6 +7505,25 @@ var _OpenHiWebsiteService = class _OpenHiWebsiteService extends OpenHiService {
|
|
|
7501
7505
|
description: "Full website domain (e.g. www.example.com)"
|
|
7502
7506
|
});
|
|
7503
7507
|
}
|
|
7508
|
+
/**
|
|
7509
|
+
* Adds a CloudFormation `AdminConsoleEndpoint` output exposing the
|
|
7510
|
+
* admin-console invocation URL (`https://<fullDomain>`) on every
|
|
7511
|
+
* deploy of this stack — release-branch and per-PR alike. The
|
|
7512
|
+
* configulator `aws-deploy-workflow` filters CFN outputs by the
|
|
7513
|
+
* `Endpoint$` logical-id suffix to surface them in the GitHub
|
|
7514
|
+
* Actions run summary and sticky PR comment, so the logical id is
|
|
7515
|
+
* pinned via {@link CfnOutput.overrideLogicalId} to keep the
|
|
7516
|
+
* literal key stable across synths.
|
|
7517
|
+
*/
|
|
7518
|
+
createAdminConsoleEndpointOutput() {
|
|
7519
|
+
const output = new import_aws_cdk_lib15.CfnOutput(this, "admin-console-endpoint-output", {
|
|
7520
|
+
value: `https://${this.fullDomain}`,
|
|
7521
|
+
description: "Admin console endpoint for this deploy (https://<fullDomain>). Surfaced by the deploy workflow's sticky PR comment and job summary."
|
|
7522
|
+
});
|
|
7523
|
+
output.overrideLogicalId(
|
|
7524
|
+
_OpenHiWebsiteService.ADMIN_CONSOLE_ENDPOINT_OUTPUT_NAME
|
|
7525
|
+
);
|
|
7526
|
+
}
|
|
7504
7527
|
/**
|
|
7505
7528
|
* Creates the StaticContent uploader. Receives the resolved static-hosting
|
|
7506
7529
|
* bucket from the constructor — on the release-branch deploy this is the
|
|
@@ -7567,6 +7590,15 @@ _OpenHiWebsiteService.SERVICE_TYPE = "website";
|
|
|
7567
7590
|
* `www-<childZonePrefix>.<zone>`.
|
|
7568
7591
|
*/
|
|
7569
7592
|
_OpenHiWebsiteService.DEFAULT_DOMAIN_PREFIX = "www";
|
|
7593
|
+
/**
|
|
7594
|
+
* CloudFormation logical key for the admin-console endpoint `CfnOutput`.
|
|
7595
|
+
* The configulator deploy workflow filters outputs whose logical id
|
|
7596
|
+
* matches the `Endpoint$` regex to surface them in the GitHub Actions
|
|
7597
|
+
* run summary and sticky PR comment, so the suffix must be `Endpoint`.
|
|
7598
|
+
* The logical id is pinned via {@link CfnOutput.overrideLogicalId} so
|
|
7599
|
+
* it does not pick up a synth-time hash suffix.
|
|
7600
|
+
*/
|
|
7601
|
+
_OpenHiWebsiteService.ADMIN_CONSOLE_ENDPOINT_OUTPUT_NAME = "AdminConsoleEndpoint";
|
|
7570
7602
|
var OpenHiWebsiteService = _OpenHiWebsiteService;
|
|
7571
7603
|
|
|
7572
7604
|
// src/workflows/control-plane/user-onboarding/events.ts
|
|
@@ -7597,7 +7629,7 @@ var buildProvisionDefaultWorkspaceRequestedDetail = (event) => {
|
|
|
7597
7629
|
// src/workflows/control-plane/user-onboarding/provision-default-workspace-lambda.ts
|
|
7598
7630
|
var import_node_fs11 = __toESM(require("fs"));
|
|
7599
7631
|
var import_node_path11 = __toESM(require("path"));
|
|
7600
|
-
var
|
|
7632
|
+
var import_aws_cdk_lib16 = require("aws-cdk-lib");
|
|
7601
7633
|
var import_aws_events8 = require("aws-cdk-lib/aws-events");
|
|
7602
7634
|
var import_aws_events_targets4 = require("aws-cdk-lib/aws-events-targets");
|
|
7603
7635
|
var import_aws_iam6 = require("aws-cdk-lib/aws-iam");
|
|
@@ -7644,7 +7676,7 @@ var ProvisionDefaultWorkspaceLambda = class extends import_constructs20.Construc
|
|
|
7644
7676
|
targets: [
|
|
7645
7677
|
new import_aws_events_targets4.LambdaFunction(this.lambda, {
|
|
7646
7678
|
retryAttempts: 2,
|
|
7647
|
-
maxEventAge:
|
|
7679
|
+
maxEventAge: import_aws_cdk_lib16.Duration.hours(2)
|
|
7648
7680
|
})
|
|
7649
7681
|
]
|
|
7650
7682
|
});
|
|
@@ -8083,7 +8115,7 @@ var OWNING_DELETE_OPS_EVENT_BUS_ENV_VAR = "OWNING_DELETE_OPS_EVENT_BUS_NAME";
|
|
|
8083
8115
|
// src/workflows/control-plane/owning-delete-cascade/owning-delete-cascade-lambdas.ts
|
|
8084
8116
|
var import_node_fs12 = __toESM(require("fs"));
|
|
8085
8117
|
var import_node_path12 = __toESM(require("path"));
|
|
8086
|
-
var
|
|
8118
|
+
var import_aws_cdk_lib17 = require("aws-cdk-lib");
|
|
8087
8119
|
var import_aws_iam8 = require("aws-cdk-lib/aws-iam");
|
|
8088
8120
|
var import_aws_lambda13 = require("aws-cdk-lib/aws-lambda");
|
|
8089
8121
|
var import_aws_lambda_nodejs13 = require("aws-cdk-lib/aws-lambda-nodejs");
|
|
@@ -8107,7 +8139,7 @@ var OwningDeleteCascadeLambdas = class extends import_constructs22.Construct {
|
|
|
8107
8139
|
entry: listResolved.entry,
|
|
8108
8140
|
runtime: import_aws_lambda13.Runtime.NODEJS_LATEST,
|
|
8109
8141
|
memorySize: 512,
|
|
8110
|
-
timeout:
|
|
8142
|
+
timeout: import_aws_cdk_lib17.Duration.minutes(1),
|
|
8111
8143
|
environment: {
|
|
8112
8144
|
DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
|
|
8113
8145
|
}
|
|
@@ -8121,7 +8153,7 @@ var OwningDeleteCascadeLambdas = class extends import_constructs22.Construct {
|
|
|
8121
8153
|
entry: deleteResolved.entry,
|
|
8122
8154
|
runtime: import_aws_lambda13.Runtime.NODEJS_LATEST,
|
|
8123
8155
|
memorySize: 512,
|
|
8124
|
-
timeout:
|
|
8156
|
+
timeout: import_aws_cdk_lib17.Duration.minutes(1),
|
|
8125
8157
|
environment: {
|
|
8126
8158
|
DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
|
|
8127
8159
|
}
|
|
@@ -8140,7 +8172,7 @@ var OwningDeleteCascadeLambdas = class extends import_constructs22.Construct {
|
|
|
8140
8172
|
entry: finalizeResolved.entry,
|
|
8141
8173
|
runtime: import_aws_lambda13.Runtime.NODEJS_LATEST,
|
|
8142
8174
|
memorySize: 512,
|
|
8143
|
-
timeout:
|
|
8175
|
+
timeout: import_aws_cdk_lib17.Duration.minutes(1),
|
|
8144
8176
|
environment: {
|
|
8145
8177
|
DYNAMO_TABLE_NAME: props.dataStoreTable.tableName,
|
|
8146
8178
|
[OWNING_DELETE_OPS_EVENT_BUS_ENV_VAR]: props.opsEventBus.eventBusName
|
|
@@ -8158,7 +8190,7 @@ var OwningDeleteCascadeLambdas = class extends import_constructs22.Construct {
|
|
|
8158
8190
|
};
|
|
8159
8191
|
|
|
8160
8192
|
// src/workflows/control-plane/owning-delete-cascade/owning-delete-cascade-workflow.ts
|
|
8161
|
-
var
|
|
8193
|
+
var import_aws_cdk_lib18 = require("aws-cdk-lib");
|
|
8162
8194
|
var import_aws_events9 = require("aws-cdk-lib/aws-events");
|
|
8163
8195
|
var import_aws_events_targets5 = require("aws-cdk-lib/aws-events-targets");
|
|
8164
8196
|
var import_aws_stepfunctions = require("aws-cdk-lib/aws-stepfunctions");
|
|
@@ -8273,7 +8305,7 @@ var OwningDeleteCascadeWorkflow = class extends import_constructs23.Construct {
|
|
|
8273
8305
|
}
|
|
8274
8306
|
});
|
|
8275
8307
|
const interPageWait = new import_aws_stepfunctions.Wait(this, "inter-page-wait", {
|
|
8276
|
-
time: import_aws_stepfunctions.WaitTime.duration(
|
|
8308
|
+
time: import_aws_stepfunctions.WaitTime.duration(import_aws_cdk_lib18.Duration.seconds(0))
|
|
8277
8309
|
});
|
|
8278
8310
|
const isExhausted = new import_aws_stepfunctions.Choice(this, "is-exhausted");
|
|
8279
8311
|
const finalize = new import_aws_stepfunctions_tasks.LambdaInvoke(this, "finalize", {
|
|
@@ -8304,7 +8336,7 @@ var OwningDeleteCascadeWorkflow = class extends import_constructs23.Construct {
|
|
|
8304
8336
|
// Long timeout because real-world cascades can run minutes when
|
|
8305
8337
|
// a workspace has thousands of members. The stuck-cascade alarm
|
|
8306
8338
|
// fires at 15 minutes; the state machine itself does not abort.
|
|
8307
|
-
timeout:
|
|
8339
|
+
timeout: import_aws_cdk_lib18.Duration.hours(2)
|
|
8308
8340
|
});
|
|
8309
8341
|
this.rule = new import_aws_events9.Rule(this, "rule", {
|
|
8310
8342
|
eventBus: props.dataEventBus,
|
|
@@ -8315,7 +8347,7 @@ var OwningDeleteCascadeWorkflow = class extends import_constructs23.Construct {
|
|
|
8315
8347
|
targets: [
|
|
8316
8348
|
new import_aws_events_targets5.SfnStateMachine(this.stateMachine, {
|
|
8317
8349
|
retryAttempts: 2,
|
|
8318
|
-
maxEventAge:
|
|
8350
|
+
maxEventAge: import_aws_cdk_lib18.Duration.hours(2)
|
|
8319
8351
|
})
|
|
8320
8352
|
]
|
|
8321
8353
|
});
|
|
@@ -8333,7 +8365,7 @@ var RENAME_CASCADE_OPS_EVENT_BUS_ENV_VAR = "RENAME_CASCADE_OPS_EVENT_BUS_NAME";
|
|
|
8333
8365
|
// src/workflows/control-plane/rename-cascade/rename-cascade-lambdas.ts
|
|
8334
8366
|
var import_node_fs13 = __toESM(require("fs"));
|
|
8335
8367
|
var import_node_path13 = __toESM(require("path"));
|
|
8336
|
-
var
|
|
8368
|
+
var import_aws_cdk_lib19 = require("aws-cdk-lib");
|
|
8337
8369
|
var import_aws_iam9 = require("aws-cdk-lib/aws-iam");
|
|
8338
8370
|
var import_aws_lambda14 = require("aws-cdk-lib/aws-lambda");
|
|
8339
8371
|
var import_aws_lambda_nodejs14 = require("aws-cdk-lib/aws-lambda-nodejs");
|
|
@@ -8357,7 +8389,7 @@ var RenameCascadeLambdas = class extends import_constructs24.Construct {
|
|
|
8357
8389
|
entry: listResolved.entry,
|
|
8358
8390
|
runtime: import_aws_lambda14.Runtime.NODEJS_LATEST,
|
|
8359
8391
|
memorySize: 512,
|
|
8360
|
-
timeout:
|
|
8392
|
+
timeout: import_aws_cdk_lib19.Duration.minutes(1),
|
|
8361
8393
|
environment: {
|
|
8362
8394
|
DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
|
|
8363
8395
|
}
|
|
@@ -8371,7 +8403,7 @@ var RenameCascadeLambdas = class extends import_constructs24.Construct {
|
|
|
8371
8403
|
entry: rewriteResolved.entry,
|
|
8372
8404
|
runtime: import_aws_lambda14.Runtime.NODEJS_LATEST,
|
|
8373
8405
|
memorySize: 512,
|
|
8374
|
-
timeout:
|
|
8406
|
+
timeout: import_aws_cdk_lib19.Duration.minutes(1),
|
|
8375
8407
|
environment: {
|
|
8376
8408
|
DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
|
|
8377
8409
|
}
|
|
@@ -8390,7 +8422,7 @@ var RenameCascadeLambdas = class extends import_constructs24.Construct {
|
|
|
8390
8422
|
entry: finalizeResolved.entry,
|
|
8391
8423
|
runtime: import_aws_lambda14.Runtime.NODEJS_LATEST,
|
|
8392
8424
|
memorySize: 512,
|
|
8393
|
-
timeout:
|
|
8425
|
+
timeout: import_aws_cdk_lib19.Duration.minutes(1),
|
|
8394
8426
|
environment: {
|
|
8395
8427
|
[RENAME_CASCADE_OPS_EVENT_BUS_ENV_VAR]: props.opsEventBus.eventBusName
|
|
8396
8428
|
}
|
|
@@ -8406,7 +8438,7 @@ var RenameCascadeLambdas = class extends import_constructs24.Construct {
|
|
|
8406
8438
|
};
|
|
8407
8439
|
|
|
8408
8440
|
// src/workflows/control-plane/rename-cascade/rename-cascade-workflow.ts
|
|
8409
|
-
var
|
|
8441
|
+
var import_aws_cdk_lib20 = require("aws-cdk-lib");
|
|
8410
8442
|
var import_aws_events10 = require("aws-cdk-lib/aws-events");
|
|
8411
8443
|
var import_aws_events_targets6 = require("aws-cdk-lib/aws-events-targets");
|
|
8412
8444
|
var import_aws_stepfunctions2 = require("aws-cdk-lib/aws-stepfunctions");
|
|
@@ -8556,7 +8588,7 @@ var RenameCascadeWorkflow = class extends import_constructs25.Construct {
|
|
|
8556
8588
|
// Long timeout — large renames may rewrite thousands of rows;
|
|
8557
8589
|
// the `CascadeSlow` alarm fires at 300s p99 but the state
|
|
8558
8590
|
// machine itself does not abort.
|
|
8559
|
-
timeout:
|
|
8591
|
+
timeout: import_aws_cdk_lib20.Duration.hours(2)
|
|
8560
8592
|
});
|
|
8561
8593
|
this.rule = new import_aws_events10.Rule(this, "rule", {
|
|
8562
8594
|
eventBus: props.dataEventBus,
|
|
@@ -8567,7 +8599,7 @@ var RenameCascadeWorkflow = class extends import_constructs25.Construct {
|
|
|
8567
8599
|
targets: [
|
|
8568
8600
|
new import_aws_events_targets6.SfnStateMachine(this.stateMachine, {
|
|
8569
8601
|
retryAttempts: 2,
|
|
8570
|
-
maxEventAge:
|
|
8602
|
+
maxEventAge: import_aws_cdk_lib20.Duration.hours(2)
|
|
8571
8603
|
})
|
|
8572
8604
|
]
|
|
8573
8605
|
});
|
|
@@ -8594,7 +8626,6 @@ var RenameCascadeWorkflow = class extends import_constructs25.Construct {
|
|
|
8594
8626
|
ControlPlaneRenameV1,
|
|
8595
8627
|
DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES,
|
|
8596
8628
|
DATA_STORE_CHANGE_DETAIL_TYPE,
|
|
8597
|
-
DATA_STORE_CHANGE_EVENT_SOURCE,
|
|
8598
8629
|
DEFAULT_PREVIEW_EXPIRATION_DAYS,
|
|
8599
8630
|
DEMO_DATA_PLANE_FIXTURES,
|
|
8600
8631
|
DEMO_PERIOD,
|