@forklaunch/core 3.1.0 → 3.2.1
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/bin/gateway-mock/routes/email.mjs +91 -4
- package/lib/http/emailClient.d.ts +48 -1
- package/lib/http/emailClient.d.ts.map +1 -1
- package/lib/http/index.d.ts +1 -0
- package/lib/http/index.d.ts.map +1 -1
- package/lib/http/index.js +307 -96
- package/lib/http/index.js.map +1 -1
- package/lib/http/index.mjs +266 -58
- package/lib/http/index.mjs.map +1 -1
- package/lib/http/instanceGateway.d.ts +10 -6
- package/lib/http/instanceGateway.d.ts.map +1 -1
- package/lib/http/middleware/request/enrichDetails.middleware.d.ts.map +1 -1
- package/lib/http/modelGatewayClient.d.ts +13 -12
- package/lib/http/modelGatewayClient.d.ts.map +1 -1
- package/lib/http/smsClient.d.ts +2 -2
- package/lib/http/smsClient.d.ts.map +1 -1
- package/lib/http/telemetry/auditLogger.d.ts +5 -1
- package/lib/http/telemetry/auditLogger.d.ts.map +1 -1
- package/lib/http/telemetry/requestAudit.d.ts +30 -0
- package/lib/http/telemetry/requestAudit.d.ts.map +1 -0
- package/lib/http/voiceClient.d.ts +4 -4
- package/lib/http/voiceClient.d.ts.map +1 -1
- package/lib/http/whatsappClient.d.ts +5 -5
- package/lib/persistence/complianceChanges.d.ts +30 -0
- package/lib/persistence/complianceChanges.d.ts.map +1 -0
- package/lib/persistence/compliancePropertyBuilder.d.ts.map +1 -1
- package/lib/persistence/compliantField.d.ts +41 -8
- package/lib/persistence/compliantField.d.ts.map +1 -1
- package/lib/persistence/defineComplianceEntity.d.ts.map +1 -1
- package/lib/persistence/index.d.ts +2 -1
- package/lib/persistence/index.d.ts.map +1 -1
- package/lib/persistence/index.js +156 -19
- package/lib/persistence/index.js.map +1 -1
- package/lib/persistence/index.mjs +154 -19
- package/lib/persistence/index.mjs.map +1 -1
- package/package.json +10 -10
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The instance gateway: how a
|
|
3
|
-
* (models, payments, email, SMS, WhatsApp, voice)
|
|
4
|
-
* credential, and how the platform delivers vendor
|
|
2
|
+
* The managed gateway (the instance gateway): how a ForkLaunch app reaches
|
|
3
|
+
* platform-held services (models, payments, email, SMS, WhatsApp, voice)
|
|
4
|
+
* without holding a vendor credential, and how the platform delivers vendor
|
|
5
|
+
* events back to it. A managed instance and an app deployed to its own
|
|
6
|
+
* environment (`forklaunch deploy create`) both use it.
|
|
5
7
|
*
|
|
6
8
|
* Outbound, every request is signed with the instance's own HMAC key
|
|
7
9
|
* (`INSTANCE_HMAC_KEY`, key id `INSTANCE_ID`) over the router-relative path,
|
|
@@ -15,9 +17,11 @@
|
|
|
15
17
|
* `verifyPlatformEvent` checks that signature, the timestamp and the nonce.
|
|
16
18
|
*
|
|
17
19
|
* The platform injects `PLATFORM_GATEWAY_URL`, `INSTANCE_ID` and
|
|
18
|
-
* `INSTANCE_HMAC_KEY` into a
|
|
19
|
-
*
|
|
20
|
-
*
|
|
20
|
+
* `INSTANCE_HMAC_KEY` into a managed instance, and into the components of a
|
|
21
|
+
* regular deployment that the release binds a capability to (`forklaunch
|
|
22
|
+
* infra add <service> <capability>`). Their absence means the service has no
|
|
23
|
+
* managed gateway, and a client refuses to be created rather than failing on
|
|
24
|
+
* its first call.
|
|
21
25
|
*/
|
|
22
26
|
/** Where the gateway router is mounted on the platform service. */
|
|
23
27
|
export declare const INSTANCE_GATEWAY_MOUNT = "/instance-gateway";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instanceGateway.d.ts","sourceRoot":"","sources":["../../src/http/instanceGateway.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"instanceGateway.d.ts","sourceRoot":"","sources":["../../src/http/instanceGateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enrichDetails.middleware.d.ts","sourceRoot":"","sources":["../../../../src/http/middleware/request/enrichDetails.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAS3D,OAAO,EAEL,sBAAsB,EACvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,IAAI,EACJ,aAAa,EACb,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,aAAa,EACd,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"enrichDetails.middleware.d.ts","sourceRoot":"","sources":["../../../../src/http/middleware/request/enrichDetails.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAS3D,OAAO,EAEL,sBAAsB,EACvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,IAAI,EACJ,aAAa,EACb,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,aAAa,EACd,MAAM,mCAAmC,CAAC;AAK3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAE7E;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,EAAE,SAAS,kBAAkB,EAC7B,cAAc,SAAS,MAAM,EAC7B,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,YAAY,SAAS,aAAa,CAAC,EAAE,EAAE,cAAc,CAAC,EACtD,aAAa,SAAS,aAAa,CAAC,EAAE,CAAC,EAEvC,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,mBAAmB,CAAC,EAAE,CAAC,GAAG,4BAA4B,CAAC,EAAE,CAAC,EAC3E,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,eAAe,EACb,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,EACjE,sBAAsB,CAAC,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EAClE,aAAa,CAAC,EAAE,MAAM,wBAAwB,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,SAAS,GAC5E,wBAAwB,CACzB,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,OAAO,EACP,OAAO,EACP,sBAAsB,CACvB,CAqCA"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { InstanceGatewayRequestError } from './instanceGateway';
|
|
2
2
|
/**
|
|
3
|
-
* Client for the ForkLaunch model gateway
|
|
4
|
-
* instance.
|
|
3
|
+
* Client for the ForkLaunch model gateway (part of the managed gateway), for
|
|
4
|
+
* a managed instance or any app deployed on ForkLaunch.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
6
|
+
* The service calls platform-hosted AI models (Azure AI Foundry) without
|
|
7
|
+
* holding a provider key: each request is signed with its own HMAC key, and
|
|
8
|
+
* the platform enforces the model allowlist, monthly token budget and rate
|
|
9
|
+
* limit. For a HIPAA product the platform only offers models covered by its
|
|
10
|
+
* BAA.
|
|
11
11
|
*
|
|
12
|
-
* The platform injects everything this needs
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* the
|
|
12
|
+
* The platform injects everything this needs: `PLATFORM_GATEWAY_URL` (the
|
|
13
|
+
* platform's public base), `INSTANCE_ID` and `INSTANCE_HMAC_KEY`, into a
|
|
14
|
+
* managed instance and, at deploy, into a component that declares models
|
|
15
|
+
* (`forklaunch infra add <service> models`, which also points them at the
|
|
16
|
+
* local gateway mock). Without them the client refuses to be created rather
|
|
17
|
+
* than failing on the first call.
|
|
17
18
|
*
|
|
18
19
|
* @example
|
|
19
20
|
* const models = createModelGatewayClient();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelGatewayClient.d.ts","sourceRoot":"","sources":["../../src/http/modelGatewayClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAE3B
|
|
1
|
+
{"version":3,"file":"modelGatewayClient.d.ts","sourceRoot":"","sources":["../../src/http/modelGatewayClient.ts"],"names":[],"mappings":"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"}
|
package/lib/http/smsClient.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InstanceGatewayRequestError, type InstanceGatewayOptions, type PlatformEvent } from './instanceGateway';
|
|
2
2
|
/**
|
|
3
|
-
* Client for platform-held SMS (AWS End User Messaging SMS)
|
|
4
|
-
* a managed instance.
|
|
3
|
+
* Client for platform-held SMS (AWS End User Messaging SMS) through the
|
|
4
|
+
* managed gateway, from a managed instance or any app deployed on ForkLaunch.
|
|
5
5
|
*
|
|
6
6
|
* The instance never holds an AWS credential or a phone number. It signs each
|
|
7
7
|
* send with its own HMAC key; the platform checks the instance's monthly
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smsClient.d.ts","sourceRoot":"","sources":["../../src/http/smsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,2BAA2B,EAE3B,KAAK,sBAAsB,EAE3B,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,WAAW,gBAAiB,SAAQ,sBAAsB;IAC9D;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,aAAa,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC7B,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AACD,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,gDAAgD;AAChD,MAAM,MAAM,QAAQ,GAChB,CAAC,aAAa,CAAC,gBAAgB,CAAC,GAAG;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC,GAC7D,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,GACvD,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC,GAC3D,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC,CAAC;AAEjE,8EAA8E;AAC9E,qBAAa,eAAgB,SAAQ,2BAA2B;IAC9D,SAAkB,IAAI,EAAG,iBAAiB,CAAU;CACrD;AAED,2DAA2D;AAC3D,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,SAAkB,IAAI,EAAG,oBAAoB,CAAU;CACxD;AAED,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAInC,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE7C;AAQD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;IACzC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAwBA;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAwB7D;
|
|
1
|
+
{"version":3,"file":"smsClient.d.ts","sourceRoot":"","sources":["../../src/http/smsClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,11 @@ export type AuditEntry = {
|
|
|
10
10
|
status: number;
|
|
11
11
|
duration: number;
|
|
12
12
|
redactedFields: string[];
|
|
13
|
-
eventType: 'http' | 'ws' | 'auth_failure' | 'rate_limit' | 'rbac_deny' | 'super_admin_bypass'
|
|
13
|
+
eventType: 'http' | 'ws' | 'auth_failure' | 'rate_limit' | 'rbac_deny' | 'super_admin_bypass'
|
|
14
|
+
/** A compliant field's plaintext was read (.deanon). */
|
|
15
|
+
| 'data_access'
|
|
16
|
+
/** A record holding sensitive fields was created, updated or deleted. */
|
|
17
|
+
| 'data_change';
|
|
14
18
|
};
|
|
15
19
|
export declare class AuditLogger {
|
|
16
20
|
_otel: OpenTelemetryCollector<MetricsDefinition>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auditLogger.d.ts","sourceRoot":"","sources":["../../../src/http/telemetry/auditLogger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,EACL,MAAM,GACN,IAAI,GACJ,cAAc,GACd,YAAY,GACZ,WAAW,GACX,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"auditLogger.d.ts","sourceRoot":"","sources":["../../../src/http/telemetry/auditLogger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,EACL,MAAM,GACN,IAAI,GACJ,cAAc,GACd,YAAY,GACZ,WAAW,GACX,oBAAoB;IACtB,wDAAwD;OACtD,aAAa;IACf,yEAAyE;OACvE,aAAa,CAAC;CACnB,CAAC;AAEF,qBAAa,WAAW;IACtB,KAAK,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IAEjD,YAAY,IAAI,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EAE1D;IAED,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAsB9B;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAKhE;CACF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { MetricsDefinition } from '../types/openTelemetryCollector.types';
|
|
2
|
+
import { AuditEntry } from './auditLogger';
|
|
3
|
+
import { OpenTelemetryCollector } from './openTelemetryCollector';
|
|
4
|
+
/**
|
|
5
|
+
* Default audit trail for every app built on ForkLaunch: one audit record per
|
|
6
|
+
* request (who, tenant, method, route, status, duration and a hash of the
|
|
7
|
+
* body, never its content) and one per read of a compliant field's plaintext.
|
|
8
|
+
* Records carry `log.type: audit` so the platform can keep them apart from
|
|
9
|
+
* application logs. On unless FORKLAUNCH_AUDIT=off.
|
|
10
|
+
*/
|
|
11
|
+
export declare function auditEnabled(): boolean;
|
|
12
|
+
/** The audit event a response status stands for. */
|
|
13
|
+
export declare function auditEventType(status: number): AuditEntry['eventType'];
|
|
14
|
+
/** Append the audit record for one finished request. */
|
|
15
|
+
export declare function recordRequestAudit(otel: OpenTelemetryCollector<MetricsDefinition> | undefined, req: {
|
|
16
|
+
method: string;
|
|
17
|
+
originalPath?: string;
|
|
18
|
+
path?: string;
|
|
19
|
+
session?: unknown;
|
|
20
|
+
body?: unknown;
|
|
21
|
+
}, status: number, durationMs: number): void;
|
|
22
|
+
/**
|
|
23
|
+
* Every `.deanon` read of a compliant field becomes an audit record (field,
|
|
24
|
+
* level, tenant), and every create/update/delete of a record holding sensitive
|
|
25
|
+
* fields a `data_change` record (entity#id, action, sensitive field names). It is emitted inside the request's trace, which ties it to
|
|
26
|
+
* the request's own audit record and so to the user. Registered once per
|
|
27
|
+
* process; returns a function that removes it.
|
|
28
|
+
*/
|
|
29
|
+
export declare function auditComplianceAccess(otel: OpenTelemetryCollector<MetricsDefinition>): () => void;
|
|
30
|
+
//# sourceMappingURL=requestAudit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestAudit.d.ts","sourceRoot":"","sources":["../../../src/http/telemetry/requestAudit.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAYD,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAKtE;AAeD,wDAAwD;AACxD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,GAAG,SAAS,EAC3D,GAAG,EAAE;IACH,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,EACD,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,IAAI,CAmBN;AAID;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,GAC9C,MAAM,IAAI,CAsCZ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type InstanceGatewayOptions, InstanceGatewayRequestError } from './instanceGateway';
|
|
2
2
|
/**
|
|
3
|
-
* Client for platform-held voice calls (Amazon Connect)
|
|
4
|
-
* managed instance.
|
|
3
|
+
* Client for platform-held voice calls (Amazon Connect) through the managed
|
|
4
|
+
* gateway, from a managed instance or any app deployed on ForkLaunch.
|
|
5
5
|
*
|
|
6
6
|
* The instance never holds an AWS credential, a Connect instance id or a
|
|
7
7
|
* contact-flow ARN. It asks the platform to place a call with a FLOW NAME from
|
|
@@ -90,7 +90,7 @@ export declare function voiceRequestProblem(request: StartOutboundCallRequest):
|
|
|
90
90
|
*/
|
|
91
91
|
export declare class VoiceClient {
|
|
92
92
|
private readonly transport;
|
|
93
|
-
/** Throws
|
|
93
|
+
/** Throws without the managed gateway settings (see instanceGatewaySettings). */
|
|
94
94
|
constructor(options?: VoiceClientOptions);
|
|
95
95
|
/** Place an outbound call; resolves once the platform accepted it. */
|
|
96
96
|
startOutboundCall(request: StartOutboundCallRequest): Promise<StartOutboundCallResult>;
|
|
@@ -100,6 +100,6 @@ export declare class VoiceClient {
|
|
|
100
100
|
call(callId: string): Promise<VoiceCall>;
|
|
101
101
|
private send;
|
|
102
102
|
}
|
|
103
|
-
/** A voice client
|
|
103
|
+
/** A voice client through the managed gateway (settings from the environment). */
|
|
104
104
|
export declare function createVoiceClient(options?: VoiceClientOptions): VoiceClient;
|
|
105
105
|
//# sourceMappingURL=voiceClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voiceClient.d.ts","sourceRoot":"","sources":["../../src/http/voiceClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAC3B,2BAA2B,EAE5B,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB;aACjC,OAAO,EAAE,EAAE;aACX,YAAY,EAAE,EAAE;aAChB,cAAc,EAAE,GAAG;aACnB,aAAa,EAAE,IAAI;IACnB,6EAA6E;aAC7E,cAAc,EAAE,KAAK;CACb,CAAC;AAEX,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,aAAa,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,oCAAoC;AACpC,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,kCAAkC;AAClC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,+EAA+E;AAC/E,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,oEAAoE;AACpE,qBAAa,iBAAkB,SAAQ,2BAA2B;IAChE,SAAkB,IAAI,EAAG,mBAAmB,CAAU;CACvD;AAMD,6EAA6E;AAC7E,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,wBAAwB,GAChC,MAAM,GAAG,SAAS,CAuCpB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IAErD,
|
|
1
|
+
{"version":3,"file":"voiceClient.d.ts","sourceRoot":"","sources":["../../src/http/voiceClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAC3B,2BAA2B,EAE5B,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB;aACjC,OAAO,EAAE,EAAE;aACX,YAAY,EAAE,EAAE;aAChB,cAAc,EAAE,GAAG;aACnB,aAAa,EAAE,IAAI;IACnB,6EAA6E;aAC7E,cAAc,EAAE,KAAK;CACb,CAAC;AAEX,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,aAAa,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,oCAAoC;AACpC,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,kCAAkC;AAClC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,+EAA+E;AAC/E,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,oEAAoE;AACpE,qBAAa,iBAAkB,SAAQ,2BAA2B;IAChE,SAAkB,IAAI,EAAG,mBAAmB,CAAU;CACvD;AAMD,6EAA6E;AAC7E,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,wBAAwB,GAChC,MAAM,GAAG,SAAS,CAuCpB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IAErD,iFAAiF;IACjF,YAAY,OAAO,GAAE,kBAAuB,EAK3C;IAED,sEAAsE;IAChE,iBAAiB,CACrB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,uBAAuB,CAAC,CAQlC;IAED,2CAA2C;IACrC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED,gDAAgD;IAC1C,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE7C;YAEa,IAAI;CAoBnB;AASD,kFAAkF;AAClF,wBAAgB,iBAAiB,CAC/B,OAAO,GAAE,kBAAuB,GAC/B,WAAW,CAEb"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type InstanceGatewayOptions, InstanceGatewayRequestError } from './instanceGateway';
|
|
2
2
|
/**
|
|
3
|
-
* Client for WhatsApp through the ForkLaunch
|
|
4
|
-
*
|
|
3
|
+
* Client for WhatsApp through the ForkLaunch managed gateway, from a managed
|
|
4
|
+
* instance or any app deployed on ForkLaunch.
|
|
5
5
|
*
|
|
6
6
|
* The platform holds the WhatsApp Business Account link (AWS End User
|
|
7
7
|
* Messaging Social) and sends on the instance's behalf from the phone number
|
|
@@ -110,9 +110,9 @@ export interface ConversationChannelClient {
|
|
|
110
110
|
}
|
|
111
111
|
export type WhatsAppClient = ConversationChannelClient;
|
|
112
112
|
/**
|
|
113
|
-
* A WhatsApp client
|
|
114
|
-
*
|
|
115
|
-
*
|
|
113
|
+
* A WhatsApp client through the managed gateway. Throws without its settings
|
|
114
|
+
* (`PLATFORM_GATEWAY_URL`, `INSTANCE_ID`, `INSTANCE_HMAC_KEY` unset); run the
|
|
115
|
+
* local gateway mock to develop.
|
|
116
116
|
*/
|
|
117
117
|
export declare function createWhatsAppClient(options?: WhatsAppClientOptions): WhatsAppClient;
|
|
118
118
|
//# sourceMappingURL=whatsappClient.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { EntitySchema } from '@mikro-orm/core';
|
|
2
|
+
import type { ComplianceLevel } from './complianceTypes';
|
|
3
|
+
/**
|
|
4
|
+
* Emitted after a record of an entity holding pii, phi or pci fields is
|
|
5
|
+
* created, updated or deleted. Carries field names, never values.
|
|
6
|
+
*/
|
|
7
|
+
export interface ComplianceChangeEvent {
|
|
8
|
+
entity: string;
|
|
9
|
+
/** Primary key, colon-joined for composite keys. */
|
|
10
|
+
id: string;
|
|
11
|
+
action: 'create' | 'update' | 'delete';
|
|
12
|
+
/** Fields written (create: every field set; update: the changed ones). */
|
|
13
|
+
fields: string[];
|
|
14
|
+
/** The sensitive fields among them. */
|
|
15
|
+
sensitiveFields: string[];
|
|
16
|
+
tenantId: string | null;
|
|
17
|
+
}
|
|
18
|
+
export type ComplianceChangeListener = (event: ComplianceChangeEvent) => void;
|
|
19
|
+
/**
|
|
20
|
+
* Register a listener for every change to a sensitive record, for audit
|
|
21
|
+
* trails. Returns a function that removes it.
|
|
22
|
+
*/
|
|
23
|
+
export declare function onComplianceChange(listener: ComplianceChangeListener): () => void;
|
|
24
|
+
/**
|
|
25
|
+
* Attach create/update/delete hooks to an entity schema that holds sensitive
|
|
26
|
+
* fields, so every change to one of its records is reported without the app
|
|
27
|
+
* wiring anything.
|
|
28
|
+
*/
|
|
29
|
+
export declare function installComplianceChangeHooks(schema: EntitySchema, entityName: string, levels: Map<string, ComplianceLevel>): void;
|
|
30
|
+
//# sourceMappingURL=complianceChanges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"complianceChanges.d.ts","sourceRoot":"","sources":["../../src/persistence/complianceChanges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGzD;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,0EAA0E;IAC1E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,uCAAuC;IACvC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAO9E;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,wBAAwB,GACjC,MAAM,IAAI,CAGZ;AAaD;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GACnC,IAAI,CAgCN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliancePropertyBuilder.d.ts","sourceRoot":"","sources":["../../src/persistence/compliancePropertyBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"compliancePropertyBuilder.d.ts","sourceRoot":"","sources":["../../src/persistence/compliancePropertyBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAgRjE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,EAAE,EAAE,gBAsCK,CAAC"}
|
|
@@ -63,6 +63,24 @@ export declare class LegacyCiphertextError extends Error {
|
|
|
63
63
|
export declare class CompliantQueryError extends Error {
|
|
64
64
|
readonly name: 'CompliantQueryError';
|
|
65
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Thrown when a compliant field is read or written while a tenant other than
|
|
68
|
+
* the one that owns it is bound.
|
|
69
|
+
*
|
|
70
|
+
* A field belongs to the tenant it was loaded under (or, for a value assigned
|
|
71
|
+
* in-process, the tenant bound when it was assigned), and `.deanon` decrypts
|
|
72
|
+
* with that tenant's key whatever context is bound at read time. A different
|
|
73
|
+
* bound tenant means the value is about to cross into another tenant's
|
|
74
|
+
* request, so it is refused rather than revealed or re-sealed.
|
|
75
|
+
*/
|
|
76
|
+
export declare class TenantMismatchError extends Error {
|
|
77
|
+
readonly path: string;
|
|
78
|
+
readonly operation: string;
|
|
79
|
+
readonly ownerTenantId: string;
|
|
80
|
+
readonly boundTenantId: string;
|
|
81
|
+
readonly name: 'TenantMismatchError';
|
|
82
|
+
constructor(path: string, operation: string, ownerTenantId: string, boundTenantId: string);
|
|
83
|
+
}
|
|
66
84
|
/**
|
|
67
85
|
* A de-identified value, produced only by a compliant field's `.anon`.
|
|
68
86
|
* Anything that must never carry protected data (a message to a provider
|
|
@@ -88,8 +106,12 @@ export declare function defaultAnonStrategy(elementRuntimeType: string, isArray:
|
|
|
88
106
|
* `[object Object]` and serializing it prints `{}`, so nothing leaks by
|
|
89
107
|
* accident and every read is explicit.
|
|
90
108
|
*
|
|
91
|
-
* Plaintext is decrypted lazily, on the first `.deanon`,
|
|
92
|
-
*
|
|
109
|
+
* Plaintext is decrypted lazily, on the first `.deanon`, with the key of the
|
|
110
|
+
* tenant the field was loaded (or assigned) under. That tenant is captured
|
|
111
|
+
* when the row is hydrated, so `.deanon` works after the call that loaded it
|
|
112
|
+
* has returned (building a DTO outside the tenant-bound entity manager) and
|
|
113
|
+
* can never decrypt under a different tenant: if another tenant is bound at
|
|
114
|
+
* read time it throws {@link TenantMismatchError}.
|
|
93
115
|
*
|
|
94
116
|
* Assigning a plain value to the property (directly, through `em.create` or
|
|
95
117
|
* through `em.assign`) wraps it; `where: { property: value }` works for
|
|
@@ -108,12 +130,17 @@ export declare class CompliantField<V = unknown, L extends EncryptedComplianceLe
|
|
|
108
130
|
readonly __level?: L;
|
|
109
131
|
private constructor();
|
|
110
132
|
/**
|
|
111
|
-
* @internal Wrap a plaintext value for `spec
|
|
112
|
-
*
|
|
133
|
+
* @internal Wrap a plaintext value for `spec`, owned by `tenant` (the one
|
|
134
|
+
* bound where it was assigned, if any). Applications assign plain values to
|
|
135
|
+
* the entity property instead.
|
|
113
136
|
*/
|
|
114
|
-
static fromPlain<V>(value: V, spec: CompliantFieldSpec): CompliantField<V>;
|
|
115
|
-
/**
|
|
116
|
-
|
|
137
|
+
static fromPlain<V>(value: V, spec: CompliantFieldSpec, tenant: string | undefined): CompliantField<V>;
|
|
138
|
+
/**
|
|
139
|
+
* @internal Wrap a stored value (any envelope, or legacy plaintext) loaded
|
|
140
|
+
* under `tenant`: the tenant bound during hydration, which is the loading
|
|
141
|
+
* entity manager's.
|
|
142
|
+
*/
|
|
143
|
+
static fromStored<V>(stored: string, spec: CompliantFieldSpec, index: string | null | undefined, tenant: string | undefined): CompliantField<V>;
|
|
117
144
|
/** @internal A queryable field whose ciphertext column was not selected. */
|
|
118
145
|
static fromIndexOnly<V>(index: string | null, spec: CompliantFieldSpec): CompliantField<V>;
|
|
119
146
|
/** The field's classification. */
|
|
@@ -129,7 +156,7 @@ export declare function isCompliantField(value: unknown): value is CompliantFiel
|
|
|
129
156
|
export declare function sealedValueOf(field: CompliantField): string | undefined;
|
|
130
157
|
/** @internal Normalize an already-serialized value for indexing. */
|
|
131
158
|
export declare function normalizeSerializedForIndex(serialized: string, spec: CompliantFieldSpec): string;
|
|
132
|
-
/** @internal Blind index of a raw query value. */
|
|
159
|
+
/** @internal Blind index of a raw query value, under the bound tenant. */
|
|
133
160
|
export declare function blindIndexOfValue(value: unknown, spec: CompliantFieldSpec): string;
|
|
134
161
|
/** @internal The blind index for a field, computing it when missing. */
|
|
135
162
|
export declare function blindIndexOf(field: CompliantField): string | null;
|
|
@@ -140,6 +167,12 @@ export interface PendingIndex {
|
|
|
140
167
|
}
|
|
141
168
|
export declare function isPendingIndex(value: unknown): value is PendingIndex;
|
|
142
169
|
export declare function pendingIndexValue(value: PendingIndex): string | null;
|
|
170
|
+
/**
|
|
171
|
+
* @internal The `runtimeType` of a compliant property: what it holds in
|
|
172
|
+
* memory. Deliberately not one of MikroORM's scalar names, which it checks
|
|
173
|
+
* assigned values against.
|
|
174
|
+
*/
|
|
175
|
+
export declare const COMPLIANT_RUNTIME_TYPE = "CompliantField";
|
|
143
176
|
declare abstract class CompliantTypeBase extends Type<unknown, string | null> {
|
|
144
177
|
readonly spec: CompliantFieldSpec;
|
|
145
178
|
constructor(spec: CompliantFieldSpec);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliantField.d.ts","sourceRoot":"","sources":["../../src/persistence/compliantField.ts"],"names":[],"mappings":"AACA,OAAO,EACL,IAAI,EACJ,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAkBlE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE1E,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;CAC5C;AAED,uEAAuE;AACvE,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,wBAAwB,CAAC;IAChC,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,GAAG,WAAW,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAChC,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;CACd;AAMD,8EAA8E;AAC9E,MAAM,WAAW,qBAAqB;IACpC,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,wBAAwB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAO9E;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,wBAAwB,GACjC,MAAM,IAAI,CAGZ;AAMD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAG,uBAAuB,CAAU;CAClD;AAED,+EAA+E;AAC/E,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAG,qBAAqB,CAAU;CAChD;AASD;;;;;GAKG;AACH,qBAAa,IAAI;IACf,QAAQ,CAAC,KAAK,EAAG,MAAM,CAAC;IAExB,gBAAgB;IAChB,YAAY,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAOrC;CACF;AAED,mFAAmF;AACnF,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,CAMpD;AA0BD,gBAAgB;AAChB,wBAAgB,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAwB1E;AAED,0DAA0D;AAC1D,wBAAgB,mBAAmB,CACjC,kBAAkB,EAAE,MAAM,EAC1B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,GACf,YAAY,CAKd;
|
|
1
|
+
{"version":3,"file":"compliantField.d.ts","sourceRoot":"","sources":["../../src/persistence/compliantField.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineComplianceEntity.d.ts","sourceRoot":"","sources":["../../src/persistence/defineComplianceEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC/B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"defineComplianceEntity.d.ts","sourceRoot":"","sources":["../../src/persistence/defineComplianceEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC/B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AA8E3B,KAAK,kBAAkB,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAChB;QAAE,UAAU,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;SAAE,CAAA;KAAE,GAClD,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC,GAC/B,CAAC,CAAC,CAAC,CAAC,GACJ;QAAE,UAAU,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;SAAE,CAAA;KAAE;CACvD,CAAC;AAQF,wBAAgB,sBAAsB,CACpC,KAAK,CAAC,KAAK,SAAS,MAAM,EAC1B,KAAK,CAAC,UAAU,SAAS,MAAM,EAC/B,KAAK,CAAC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjD,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,WAAW,CAAC,EAAE,GAAG,SAAS,GAAG,SAAS,EAC/D,KAAK,CAAC,KAAK,GAAG,KAAK,EACnB,KAAK,CAAC,WAAW,GAAG,KAAK,EACzB,KAAK,CAAC,YAAY,SAAS,OAAO,GAAG,KAAK,EAE1C,IAAI,EAAE,4BAA4B,CAChC,KAAK,EACL,UAAU,EACV,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAC7C,GAAG,EACH,KAAK,EACL,WAAW,EACX,YAAY,CACb,GAAG;IAAE,SAAS,CAAC,EAAE,eAAe,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD,oBAAoB,CACrB,KAAK,EACL,UAAU,EACV,yBAAyB,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,EAC7E,KAAK,EACL,WAAW,CACZ,CA+FA"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
export { ComplianceLevel, type ComplianceLevel as ComplianceLevelType, getComplianceMetadata, getEntityComplianceFields, entityHasEncryptedFields, RetentionAction, type RetentionAction as RetentionActionType, type RetentionPolicy, RetentionDuration, parseDuration, subtractDuration, type ParsedDuration, getEntityRetention, getAllRetentionPolicies, getEntityUserIdField, getAllUserIdFields, type CompliantValue, type EncryptedComplianceLevel, type EncryptedKeysOf, type RequiresEncryptionContext, type SelectionAvoidsEncryptedColumns } from './complianceTypes';
|
|
2
2
|
export { wrapEmWithForgivingDecryption, type ForgivingDecryptionLogger } from './forgivingDecryptionEm';
|
|
3
3
|
export { asEncryptionSafe, type ContextFreeKeysOfSchema, type ContextFreeReadOptions, type DecryptingReadOptions, type EncryptedKeysOfSchema, type EncryptionAwareReadOptions, type EncryptionSafeEntityManager, type HydratingReadMethod, type PropertiesOfSchema, type SchemaRequiresEncryptionContext } from './encryptionSafeEm';
|
|
4
|
-
export { Anon, CompliantField, CompliantIndexType, CompliantQueryError, CompliantType, LegacyCiphertextError, deanon, isAnon, isCompliantField, onComplianceAccess, type AnonStrategy, type ComplianceAccessEvent, type ComplianceAccessListener, type ComplianceOptions, type Deanon, type Deanonymized } from './compliantField';
|
|
4
|
+
export { Anon, CompliantField, CompliantIndexType, CompliantQueryError, TenantMismatchError, CompliantType, LegacyCiphertextError, deanon, isAnon, isCompliantField, onComplianceAccess, type AnonStrategy, type ComplianceAccessEvent, type ComplianceAccessListener, type ComplianceOptions, type Deanon, type Deanonymized } from './compliantField';
|
|
5
5
|
export { fp } from './compliancePropertyBuilder';
|
|
6
6
|
export { defineComplianceEntity } from './defineComplianceEntity';
|
|
7
7
|
export { wrapEmWithNativeQueryBlocking } from './complianceEventSubscriber';
|
|
8
|
+
export { onComplianceChange, type ComplianceChangeEvent, type ComplianceChangeListener } from './complianceChanges';
|
|
8
9
|
export { EncryptedType, registerEncryptor, setEncryptionTenantId, withEncryptionContext, getCurrentTenantId, getBoundTenantId, assertBindableTenantId, EmptyTenantError, UnboundTenantError } from './encryptedType';
|
|
9
10
|
export { FieldEncryptor, MissingEncryptionKeyError, DecryptionError, EncryptionRequiredError, parseEncryptionKeyList, encryptionKeyId, stampedKeyId, stampedPrefix, isEncryptedCiphertext, sealedAnon, BLIND_INDEX_PREFIX, ENCRYPTED_PREFIXES, ENCRYPTION_FORMAT_ENV, ENCRYPTION_KEY_ENV, LEGACY_ENCRYPTION_KEYS_ENV, LEGACY_ENCRYPTION_KEY_ENV, type FieldEncryptorOptions, type OpenedCiphertext, type CiphertextFormat } from './fieldEncryptor';
|
|
10
11
|
export { reencryptEncryptedColumns, classifyEncryptedValue, collectFallbackTenantIds, defaultTenantIdsFor, entityMetadataList, rotationTotals, countValuesByKeyId, isEncryptedValue, type ReencryptOptions, type RotationOutcome, type RotationTableReport, type SqlExecute, type EntityMetadataLike } from './keyRotation';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/persistence/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,KAAK,eAAe,IAAI,mBAAmB,EAC3C,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EAExB,eAAe,EACf,KAAK,eAAe,IAAI,mBAAmB,EAC3C,KAAK,eAAe,EACpB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,KAAK,cAAc,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACrC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,6BAA6B,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,+BAA+B,EACrC,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,MAAM,EACX,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAGjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/persistence/index.ts"],"names":[],"mappings":"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"}
|