@proofhound/core 0.1.10 → 0.1.11
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/dist/server/common/contracts/index.d.ts +2 -0
- package/dist/server/common/contracts/index.d.ts.map +1 -1
- package/dist/server/common/contracts/index.js +2 -0
- package/dist/server/common/contracts/index.js.map +1 -1
- package/dist/server/common/contracts/local-contracts.module.d.ts.map +1 -1
- package/dist/server/common/contracts/local-contracts.module.js +4 -0
- package/dist/server/common/contracts/local-contracts.module.js.map +1 -1
- package/dist/server/common/contracts/local-fs-object-storage.provider.d.ts +17 -0
- package/dist/server/common/contracts/local-fs-object-storage.provider.d.ts.map +1 -0
- package/dist/server/common/contracts/local-fs-object-storage.provider.js +109 -0
- package/dist/server/common/contracts/local-fs-object-storage.provider.js.map +1 -0
- package/dist/server/common/contracts/object-storage.provider.d.ts +79 -0
- package/dist/server/common/contracts/object-storage.provider.d.ts.map +1 -0
- package/dist/server/common/contracts/object-storage.provider.js +17 -0
- package/dist/server/common/contracts/object-storage.provider.js.map +1 -0
- package/dist/server/modules/dataset/dataset.controller.d.ts +1 -1
- package/dist/server/modules/dataset/dataset.controller.d.ts.map +1 -1
- package/dist/server/modules/dataset/dataset.controller.js +8 -1
- package/dist/server/modules/dataset/dataset.controller.js.map +1 -1
- package/dist/server/modules/dataset/dataset.service.d.ts +26 -2
- package/dist/server/modules/dataset/dataset.service.d.ts.map +1 -1
- package/dist/server/modules/dataset/dataset.service.js +32 -2
- package/dist/server/modules/dataset/dataset.service.js.map +1 -1
- package/package.json +12 -12
|
@@ -10,6 +10,8 @@ export * from './runtime-limits.provider';
|
|
|
10
10
|
export * from './quota-policy.hook';
|
|
11
11
|
export * from './usage-metering.hook';
|
|
12
12
|
export * from './workflow-authorization.hook';
|
|
13
|
+
export * from './object-storage.provider';
|
|
14
|
+
export * from './local-fs-object-storage.provider';
|
|
13
15
|
export * from './http-actor.guard';
|
|
14
16
|
export * from './local-project-context.resolver';
|
|
15
17
|
export * from './local-actor-context.resolver';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/index.ts"],"names":[],"mappings":"AAGA,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,cAAc,sCAAsC,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oEAAoE,CAAC;AACnH,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/index.ts"],"names":[],"mappings":"AAGA,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,cAAc,sCAAsC,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oEAAoE,CAAC;AACnH,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -29,6 +29,8 @@ __exportStar(require("./runtime-limits.provider"), exports);
|
|
|
29
29
|
__exportStar(require("./quota-policy.hook"), exports);
|
|
30
30
|
__exportStar(require("./usage-metering.hook"), exports);
|
|
31
31
|
__exportStar(require("./workflow-authorization.hook"), exports);
|
|
32
|
+
__exportStar(require("./object-storage.provider"), exports);
|
|
33
|
+
__exportStar(require("./local-fs-object-storage.provider"), exports);
|
|
32
34
|
__exportStar(require("./http-actor.guard"), exports);
|
|
33
35
|
__exportStar(require("./local-project-context.resolver"), exports);
|
|
34
36
|
__exportStar(require("./local-actor-context.resolver"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/index.ts"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,6CAA6C;;;;;;;;;;;;;;;;;AAE7C,0CAAwB;AACxB,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,2DAAyC;AACzC,+DAA6C;AAC7C,kDAAgC;AAChC,yDAAuC;AACvC,4DAA0C;AAC1C,sDAAoC;AACpC,wDAAsC;AACtC,gEAA8C;AAC9C,qDAAmC;AACnC,mEAAiD;AACjD,iEAA+C;AAC/C,4DAA0C;AAC1C,iEAA+C;AAC/C,8DAA4C;AAC5C,mEAAsE;AAA7D,kHAAA,iBAAiB,OAAA;AAC1B,uEAAqD;AACrD,uHAAmH;AAA1G,iJAAA,6BAA6B,OAAA;AACtC,uFAAqE;AACrE,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/index.ts"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,6CAA6C;;;;;;;;;;;;;;;;;AAE7C,0CAAwB;AACxB,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,2DAAyC;AACzC,+DAA6C;AAC7C,kDAAgC;AAChC,yDAAuC;AACvC,4DAA0C;AAC1C,sDAAoC;AACpC,wDAAsC;AACtC,gEAA8C;AAC9C,4DAA0C;AAC1C,qEAAmD;AACnD,qDAAmC;AACnC,mEAAiD;AACjD,iEAA+C;AAC/C,4DAA0C;AAC1C,iEAA+C;AAC/C,8DAA4C;AAC5C,mEAAsE;AAA7D,kHAAA,iBAAiB,OAAA;AAC1B,uEAAqD;AACrD,uHAAmH;AAA1G,iJAAA,6BAA6B,OAAA;AACtC,uFAAqE;AACrE,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-contracts.module.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-contracts.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"local-contracts.module.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-contracts.module.ts"],"names":[],"mappings":"AAoCA,qBAoCa,oBAAoB;CAAG"}
|
|
@@ -32,7 +32,9 @@ const local_actor_context_resolver_1 = require("./local-actor-context.resolver")
|
|
|
32
32
|
const local_mcp_auth_resolver_1 = require("./local-mcp-auth.resolver");
|
|
33
33
|
const local_project_context_resolver_1 = require("./local-project-context.resolver");
|
|
34
34
|
const local_user_token_verifier_1 = require("./local-user-token.verifier");
|
|
35
|
+
const local_fs_object_storage_provider_1 = require("./local-fs-object-storage.provider");
|
|
35
36
|
const mcp_auth_resolver_1 = require("./mcp-auth.resolver");
|
|
37
|
+
const object_storage_provider_1 = require("./object-storage.provider");
|
|
36
38
|
const project_context_resolver_1 = require("./project-context.resolver");
|
|
37
39
|
const quota_policy_hook_1 = require("./quota-policy.hook");
|
|
38
40
|
const runtime_limits_provider_1 = require("./runtime-limits.provider");
|
|
@@ -61,6 +63,7 @@ exports.LocalContractsModule = LocalContractsModule = __decorate([
|
|
|
61
63
|
{ provide: quota_policy_hook_1.QuotaPolicyHook, useClass: quota_policy_hook_1.LocalQuotaPolicyHook },
|
|
62
64
|
{ provide: usage_metering_hook_1.UsageMeteringHook, useClass: usage_metering_hook_1.NoopUsageMeteringHook },
|
|
63
65
|
{ provide: workflow_authorization_hook_1.WorkflowAuthorizationHook, useClass: workflow_authorization_hook_1.LocalWorkflowAuthorizationHook },
|
|
66
|
+
{ provide: object_storage_provider_1.ObjectStorageProvider, useClass: local_fs_object_storage_provider_1.LocalFsObjectStorageProvider },
|
|
64
67
|
],
|
|
65
68
|
exports: [
|
|
66
69
|
project_context_resolver_1.ProjectContextResolver,
|
|
@@ -74,6 +77,7 @@ exports.LocalContractsModule = LocalContractsModule = __decorate([
|
|
|
74
77
|
quota_policy_hook_1.QuotaPolicyHook,
|
|
75
78
|
usage_metering_hook_1.UsageMeteringHook,
|
|
76
79
|
workflow_authorization_hook_1.WorkflowAuthorizationHook,
|
|
80
|
+
object_storage_provider_1.ObjectStorageProvider,
|
|
77
81
|
local_user_token_verifier_1.LocalUserTokenVerifier,
|
|
78
82
|
],
|
|
79
83
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-contracts.module.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-contracts.module.ts"],"names":[],"mappings":";AAAA,gGAAgG;AAChG,sCAAsC;AACtC,sDAAsD;AACtD,EAAE;AACF,oGAAoG;AACpG,oGAAoG;AACpG,+FAA+F;AAC/F,EAAE;AACF,iGAAiG;;;;;;;;;AAEjG,2CAAgD;AAChD,wEAAoE;AACpE,8EAA0E;AAC1E,yHAAmH;AACnH,6FAAyF;AACzF,2EAAuE;AACvE,qEAAsE;AACtE,qEAAgE;AAChE,qEAAgE;AAChE,6EAAwE;AACxE,iEAAqF;AACrF,iFAA2E;AAC3E,iFAA2E;AAC3E,uEAAiE;AACjE,qFAA+E;AAC/E,2EAAqE;AACrE,2DAAsD;AACtD,yEAAoE;AACpE,2DAA4E;AAC5E,uEAA8F;AAC9F,mDAA+C;AAC/C,+DAAiF;AACjF,+EAA0G;
|
|
1
|
+
{"version":3,"file":"local-contracts.module.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-contracts.module.ts"],"names":[],"mappings":";AAAA,gGAAgG;AAChG,sCAAsC;AACtC,sDAAsD;AACtD,EAAE;AACF,oGAAoG;AACpG,oGAAoG;AACpG,+FAA+F;AAC/F,EAAE;AACF,iGAAiG;;;;;;;;;AAEjG,2CAAgD;AAChD,wEAAoE;AACpE,8EAA0E;AAC1E,yHAAmH;AACnH,6FAAyF;AACzF,2EAAuE;AACvE,qEAAsE;AACtE,qEAAgE;AAChE,qEAAgE;AAChE,6EAAwE;AACxE,iEAAqF;AACrF,iFAA2E;AAC3E,iFAA2E;AAC3E,uEAAiE;AACjE,qFAA+E;AAC/E,2EAAqE;AACrE,yFAAkF;AAClF,2DAAsD;AACtD,uEAAkE;AAClE,yEAAoE;AACpE,2DAA4E;AAC5E,uEAA8F;AAC9F,mDAA+C;AAC/C,+DAAiF;AACjF,+EAA0G;AAsCnG,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAAG,CAAA;AAAvB,oDAAoB;+BAApB,oBAAoB;IApChC,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,4BAAY,EAAE,gCAAc,CAAC;QACvC,SAAS,EAAE;YACT,sCAAiB;YACjB,kCAAe;YACf,kDAAsB;YACtB,EAAE,OAAO,EAAE,iDAAsB,EAAE,QAAQ,EAAE,4DAA2B,EAAE;YAC1E,EAAE,OAAO,EAAE,6CAAoB,EAAE,QAAQ,EAAE,wDAAyB,EAAE;YACtE,EAAE,OAAO,EAAE,mCAAe,EAAE,QAAQ,EAAE,8CAAoB,EAAE;YAC5D,EAAE,OAAO,EAAE,qDAAwB,EAAE,QAAQ,EAAE,gEAA6B,EAAE;YAC9E,EAAE,OAAO,EAAE,4BAAY,EAAE,QAAQ,EAAE,iCAAiB,EAAE;YACtD,EAAE,OAAO,EAAE,6CAAoB,EAAE,QAAQ,EAAE,wDAAyB,EAAE;YACtE,EAAE,OAAO,EAAE,yCAAkB,EAAE,QAAQ,EAAE,8CAAuB,EAAE;YAClE,EAAE,OAAO,EAAE,+CAAqB,EAAE,QAAQ,EAAE,oDAA0B,EAAE;YACxE,EAAE,OAAO,EAAE,mCAAe,EAAE,QAAQ,EAAE,wCAAoB,EAAE;YAC5D,EAAE,OAAO,EAAE,uCAAiB,EAAE,QAAQ,EAAE,2CAAqB,EAAE;YAC/D,EAAE,OAAO,EAAE,uDAAyB,EAAE,QAAQ,EAAE,4DAA8B,EAAE;YAChF,EAAE,OAAO,EAAE,+CAAqB,EAAE,QAAQ,EAAE,+DAA4B,EAAE;SAC3E;QACD,OAAO,EAAE;YACP,iDAAsB;YACtB,6CAAoB;YACpB,mCAAe;YACf,qDAAwB;YACxB,4BAAY;YACZ,6CAAoB;YACpB,yCAAkB;YAClB,+CAAqB;YACrB,mCAAe;YACf,uCAAiB;YACjB,uDAAyB;YACzB,+CAAqB;YACrB,kDAAsB;SACvB;KACF,CAAC;GACW,oBAAoB,CAAG"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Buffer } from 'node:buffer';
|
|
2
|
+
import { type Readable } from 'node:stream';
|
|
3
|
+
import { type GetObjectRange, ObjectStorageProvider, type PutObjectOptions, type ResourceLocator, type SignedDownloadUrl, type StoredObjectRef } from './object-storage.provider';
|
|
4
|
+
export declare class LocalFsObjectStorageProvider extends ObjectStorageProvider {
|
|
5
|
+
private readonly root?;
|
|
6
|
+
constructor(root?: string | undefined);
|
|
7
|
+
isEnabled(): boolean;
|
|
8
|
+
putObject(loc: ResourceLocator, body: Buffer | Readable, opts?: PutObjectOptions): Promise<StoredObjectRef>;
|
|
9
|
+
getObject(ref: StoredObjectRef, range?: GetObjectRange): Promise<Buffer>;
|
|
10
|
+
getObjectStream(ref: StoredObjectRef, range?: GetObjectRange): Promise<Readable>;
|
|
11
|
+
deleteObjects(refs: StoredObjectRef[]): Promise<void>;
|
|
12
|
+
createSignedDownloadUrl(_ref: StoredObjectRef, _opts?: {
|
|
13
|
+
expiresInSeconds?: number;
|
|
14
|
+
}): Promise<SignedDownloadUrl | null>;
|
|
15
|
+
private requireRoot;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=local-fs-object-storage.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-fs-object-storage.provider.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-fs-object-storage.provider.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKrC,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,KAAK,cAAc,EACnB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAC;AAInC,qBAAa,4BAA6B,SAAQ,qBAAqB;IACrE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAS;gBAEnB,IAAI,GAAE,MAAM,GAAG,SAAoD;IAK/E,SAAS,IAAI,OAAO;IAId,SAAS,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2C3G,SAAS,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAOxE,eAAe,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKhF,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD,uBAAuB,CAC3B,IAAI,EAAE,eAAe,EACrB,KAAK,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,GACpC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAIpC,OAAO,CAAC,WAAW;CAMpB"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// LocalFsObjectStorageProvider — OSS default ObjectStorageProvider.
|
|
3
|
+
//
|
|
4
|
+
// Disk-backed for self-hosting; disabled (isEnabled() === false) when no root is configured, so the
|
|
5
|
+
// OSS mainline keeps its DB-only behaviour. It cannot mint browser-reachable signed URLs, so
|
|
6
|
+
// createSignedDownloadUrl() returns null and callers stream the object through the app server.
|
|
7
|
+
//
|
|
8
|
+
// Key convention (OSS): {resourceType}/{resourceId}/{name} — no tenant prefix; ownership lives in the
|
|
9
|
+
// database (see docs/specs/04-postgresql.md). A hosted provider composes its own org-scoped key.
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.LocalFsObjectStorageProvider = void 0;
|
|
12
|
+
const node_buffer_1 = require("node:buffer");
|
|
13
|
+
const node_crypto_1 = require("node:crypto");
|
|
14
|
+
const node_fs_1 = require("node:fs");
|
|
15
|
+
const promises_1 = require("node:fs/promises");
|
|
16
|
+
const node_path_1 = require("node:path");
|
|
17
|
+
const node_stream_1 = require("node:stream");
|
|
18
|
+
const promises_2 = require("node:stream/promises");
|
|
19
|
+
const object_storage_provider_1 = require("./object-storage.provider");
|
|
20
|
+
const PROVIDER = 'localfs';
|
|
21
|
+
class LocalFsObjectStorageProvider extends object_storage_provider_1.ObjectStorageProvider {
|
|
22
|
+
constructor(root = process.env.PH_OBJECT_STORAGE_LOCAL_ROOT) {
|
|
23
|
+
super();
|
|
24
|
+
this.root = root && root.trim() ? (0, node_path_1.resolve)(root) : undefined;
|
|
25
|
+
}
|
|
26
|
+
isEnabled() {
|
|
27
|
+
return this.root !== undefined;
|
|
28
|
+
}
|
|
29
|
+
async putObject(loc, body, opts) {
|
|
30
|
+
const root = this.requireRoot();
|
|
31
|
+
const key = buildKey(loc);
|
|
32
|
+
const abs = absForKey(root, key);
|
|
33
|
+
await (0, promises_1.mkdir)((0, node_path_1.dirname)(abs), { recursive: true });
|
|
34
|
+
let bytes;
|
|
35
|
+
let sha256;
|
|
36
|
+
if (node_buffer_1.Buffer.isBuffer(body)) {
|
|
37
|
+
bytes = body.byteLength;
|
|
38
|
+
sha256 = opts?.sha256 ?? (0, node_crypto_1.createHash)('sha256').update(body).digest('hex');
|
|
39
|
+
await (0, promises_1.writeFile)(abs, body);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
// Stream straight to disk, hashing + counting as bytes pass — never buffer the whole object.
|
|
43
|
+
const hash = (0, node_crypto_1.createHash)('sha256');
|
|
44
|
+
let counted = 0;
|
|
45
|
+
const meter = new node_stream_1.Transform({
|
|
46
|
+
transform(chunk, _enc, cb) {
|
|
47
|
+
const b = node_buffer_1.Buffer.isBuffer(chunk) ? chunk : node_buffer_1.Buffer.from(chunk);
|
|
48
|
+
counted += b.byteLength;
|
|
49
|
+
hash.update(b);
|
|
50
|
+
cb(null, b);
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
await (0, promises_2.pipeline)(body, meter, (0, node_fs_1.createWriteStream)(abs));
|
|
54
|
+
bytes = counted;
|
|
55
|
+
sha256 = opts?.sha256 ?? hash.digest('hex');
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
provider: PROVIDER,
|
|
59
|
+
key,
|
|
60
|
+
bytes,
|
|
61
|
+
codec: opts?.codec,
|
|
62
|
+
contentType: opts?.contentType,
|
|
63
|
+
contentDisposition: opts?.contentDisposition,
|
|
64
|
+
sha256,
|
|
65
|
+
checksumAlgorithm: 'sha256',
|
|
66
|
+
resourceType: loc.resourceType,
|
|
67
|
+
resourceId: loc.resourceId,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
async getObject(ref, range) {
|
|
71
|
+
const buf = await (0, promises_1.readFile)(absForKey(this.requireRoot(), ref.key));
|
|
72
|
+
if (!range)
|
|
73
|
+
return buf;
|
|
74
|
+
const end = range.end === undefined ? buf.byteLength : range.end + 1;
|
|
75
|
+
return buf.subarray(range.start, end);
|
|
76
|
+
}
|
|
77
|
+
async getObjectStream(ref, range) {
|
|
78
|
+
const abs = absForKey(this.requireRoot(), ref.key);
|
|
79
|
+
return (0, node_fs_1.createReadStream)(abs, range ? { start: range.start, end: range.end } : undefined);
|
|
80
|
+
}
|
|
81
|
+
async deleteObjects(refs) {
|
|
82
|
+
const root = this.requireRoot();
|
|
83
|
+
await Promise.all(refs.map((ref) => (0, promises_1.rm)(absForKey(root, ref.key), { force: true })));
|
|
84
|
+
}
|
|
85
|
+
// LocalFs cannot expose a browser-reachable URL; caller streams via getObjectStream instead.
|
|
86
|
+
async createSignedDownloadUrl(_ref, _opts) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
requireRoot() {
|
|
90
|
+
if (this.root === undefined) {
|
|
91
|
+
throw new Error('LocalFsObjectStorageProvider is not configured (set PH_OBJECT_STORAGE_LOCAL_ROOT).');
|
|
92
|
+
}
|
|
93
|
+
return this.root;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.LocalFsObjectStorageProvider = LocalFsObjectStorageProvider;
|
|
97
|
+
function buildKey(loc) {
|
|
98
|
+
return [loc.resourceType, loc.resourceId, loc.name].join('/');
|
|
99
|
+
}
|
|
100
|
+
function absForKey(root, key) {
|
|
101
|
+
const abs = (0, node_path_1.resolve)(root, key);
|
|
102
|
+
// A valid object key always resolves strictly under the root. Reject anything that resolves to
|
|
103
|
+
// the root itself (e.g. `export/.`+`..`) or outside it — otherwise deleteObjects could target the root.
|
|
104
|
+
if (!abs.startsWith(root + node_path_1.sep)) {
|
|
105
|
+
throw new Error('object key escapes storage root');
|
|
106
|
+
}
|
|
107
|
+
return abs;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=local-fs-object-storage.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-fs-object-storage.provider.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/local-fs-object-storage.provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { Readable } from 'node:stream';
|
|
2
|
+
import type { ProjectContext } from '../actor-context';
|
|
3
|
+
export type ObjectResourceType = 'dataset_raw' | 'dataset_normalized' | 'run_result_shard' | 'export';
|
|
4
|
+
/** Internal shard compression. Applied/removed at the application layer; NEVER mapped to HTTP
|
|
5
|
+
* Content-Encoding (that would let SDKs/browsers auto-decompress, so stored bytes !== read bytes). */
|
|
6
|
+
export type ObjectCodec = 'gzip' | 'br' | 'zstd' | 'identity';
|
|
7
|
+
/**
|
|
8
|
+
* Logical description of what is being stored. The provider — not the caller — turns this into a
|
|
9
|
+
* physical key. OSS LocalFs ignores the tenant dimension; a hosted provider composes an org-scoped
|
|
10
|
+
* prefix (orgs/{orgId}/projects/{projectId}/…) and writes its own object registry / audit row.
|
|
11
|
+
*/
|
|
12
|
+
export interface ResourceLocator {
|
|
13
|
+
/** Tenant/project ownership. A hosted provider derives org-scoped prefixes + audit from it. */
|
|
14
|
+
project: ProjectContext;
|
|
15
|
+
resourceType: ObjectResourceType;
|
|
16
|
+
resourceId: string;
|
|
17
|
+
/** File name within the resource, e.g. part-00003.jsonl.gz / input.csv. */
|
|
18
|
+
name: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Self-describing reference to a stored object. This is the shape callers persist (e.g. into
|
|
22
|
+
* run_results.payload_ref / dataset_samples.payload_ref); it MUST resolve back to the object
|
|
23
|
+
* without depending on any hosted-only side-table id.
|
|
24
|
+
*/
|
|
25
|
+
export interface StoredObjectRef {
|
|
26
|
+
provider: string;
|
|
27
|
+
bucket?: string;
|
|
28
|
+
key: string;
|
|
29
|
+
bytes: number;
|
|
30
|
+
codec?: ObjectCodec;
|
|
31
|
+
contentType?: string;
|
|
32
|
+
contentDisposition?: string;
|
|
33
|
+
etag?: string;
|
|
34
|
+
sha256?: string;
|
|
35
|
+
checksumAlgorithm?: 'sha256';
|
|
36
|
+
resourceType: ObjectResourceType;
|
|
37
|
+
resourceId: string;
|
|
38
|
+
/** Generation of a logical shard; see the compaction protocol in the design doc. */
|
|
39
|
+
version?: number;
|
|
40
|
+
/** Hosted-only convenience (e.g. phs_storage_objects PK); never required to resolve the object. */
|
|
41
|
+
storageObjectId?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface GetObjectRange {
|
|
44
|
+
/** Inclusive start byte offset. */
|
|
45
|
+
start: number;
|
|
46
|
+
/** Inclusive end byte offset; omit to read to EOF. */
|
|
47
|
+
end?: number;
|
|
48
|
+
}
|
|
49
|
+
export interface PutObjectOptions {
|
|
50
|
+
codec?: ObjectCodec;
|
|
51
|
+
contentType?: string;
|
|
52
|
+
contentDisposition?: string;
|
|
53
|
+
/** Caller-supplied content hash; the provider stores it for integrity / cache validation. */
|
|
54
|
+
sha256?: string;
|
|
55
|
+
}
|
|
56
|
+
export interface SignedDownloadUrl {
|
|
57
|
+
url: string;
|
|
58
|
+
expiresAt: string;
|
|
59
|
+
}
|
|
60
|
+
export declare abstract class ObjectStorageProvider {
|
|
61
|
+
/**
|
|
62
|
+
* False when no storage backend is configured. Callers MUST treat false as "object storage
|
|
63
|
+
* unavailable" and keep the DB-inline / streamed-response behaviour, so an unconfigured OSS
|
|
64
|
+
* deployment behaves exactly as before.
|
|
65
|
+
*/
|
|
66
|
+
abstract isEnabled(): boolean;
|
|
67
|
+
abstract putObject(loc: ResourceLocator, body: Buffer | Readable, opts?: PutObjectOptions): Promise<StoredObjectRef>;
|
|
68
|
+
abstract getObject(ref: StoredObjectRef, range?: GetObjectRange): Promise<Buffer>;
|
|
69
|
+
abstract getObjectStream(ref: StoredObjectRef, range?: GetObjectRange): Promise<Readable>;
|
|
70
|
+
abstract deleteObjects(refs: StoredObjectRef[]): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Mint a time-limited public download URL, or null when the provider cannot expose one
|
|
73
|
+
* (e.g. LocalFs) — callers then fall back to streaming the object through the app server.
|
|
74
|
+
*/
|
|
75
|
+
abstract createSignedDownloadUrl(ref: StoredObjectRef, opts?: {
|
|
76
|
+
expiresInSeconds?: number;
|
|
77
|
+
}): Promise<SignedDownloadUrl | null>;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=object-storage.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-storage.provider.d.ts","sourceRoot":"","sources":["../../../../src/server/common/contracts/object-storage.provider.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,QAAQ,CAAC;AAEtG;sGACsG;AACtG,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,UAAU,CAAC;AAE9D;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,+FAA+F;IAC/F,OAAO,EAAE,cAAc,CAAC;IACxB,YAAY,EAAE,kBAAkB,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;IAC7B,YAAY,EAAE,kBAAkB,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mGAAmG;IACnG,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8BAAsB,qBAAqB;IACzC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,IAAI,OAAO;IAE7B,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IACpH,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IACjF,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IACzF,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,uBAAuB,CAC9B,GAAG,EAAE,eAAe,EACpB,IAAI,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,GACnC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CACrC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ObjectStorageProvider — adapter extension point: the large-payload / artifact storage layer.
|
|
3
|
+
// See docs/specs/08-saas-adapter-boundary.md (§2 assembly-time DI).
|
|
4
|
+
//
|
|
5
|
+
// The OSS default (LocalFsObjectStorageProvider) is disk-backed and reports isEnabled() === false
|
|
6
|
+
// when unconfigured, so an OSS deployment without object storage keeps its existing DB-only behaviour
|
|
7
|
+
// (callers must treat a disabled provider as "object storage unavailable" and stream / inline instead).
|
|
8
|
+
// Hosted deployments override this token with an S3 / R2 implementation.
|
|
9
|
+
//
|
|
10
|
+
// M1 scope: server-side direct writes + signed download only. Client-direct-upload
|
|
11
|
+
// (createUploadSession / completeUpload / abortUpload / sweepPendingUploads) lands in a later milestone.
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.ObjectStorageProvider = void 0;
|
|
14
|
+
class ObjectStorageProvider {
|
|
15
|
+
}
|
|
16
|
+
exports.ObjectStorageProvider = ObjectStorageProvider;
|
|
17
|
+
//# sourceMappingURL=object-storage.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-storage.provider.js","sourceRoot":"","sources":["../../../../src/server/common/contracts/object-storage.provider.ts"],"names":[],"mappings":";AAAA,+FAA+F;AAC/F,oEAAoE;AACpE,EAAE;AACF,kGAAkG;AAClG,sGAAsG;AACtG,wGAAwG;AACxG,yEAAyE;AACzE,EAAE;AACF,mFAAmF;AACnF,yGAAyG;;;AAuEzG,MAAsB,qBAAqB;CAqB1C;AArBD,sDAqBC"}
|
|
@@ -21,7 +21,7 @@ export declare class DatasetController {
|
|
|
21
21
|
}[];
|
|
22
22
|
total: number;
|
|
23
23
|
}>;
|
|
24
|
-
exportDataset(datasetId: string, format: string | undefined, actor: CurrentUserPayload, project: ProjectContext, response: Response): Promise<StreamableFile>;
|
|
24
|
+
exportDataset(datasetId: string, format: string | undefined, actor: CurrentUserPayload, project: ProjectContext, response: Response): Promise<StreamableFile | undefined>;
|
|
25
25
|
getDataset(datasetId: string, actor: CurrentUserPayload, project: ProjectContext): Promise<{
|
|
26
26
|
id: string;
|
|
27
27
|
projectId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.controller.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,cAAc,EAEf,MAAM,gBAAgB,CAAC;AASxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAGtG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAEa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAGrD,YAAY,CAAgB,KAAK,EAAE,kBAAkB,EAAoB,OAAO,EAAE,cAAc;;;;IAKhG,kBAAkB,CACF,SAAS,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EACX,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;IAWrC,aAAa,CACG,SAAS,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc,EACb,QAAQ,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"dataset.controller.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,cAAc,EAEf,MAAM,gBAAgB,CAAC;AASxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAGtG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAEa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAGrD,YAAY,CAAgB,KAAK,EAAE,kBAAkB,EAAoB,OAAO,EAAE,cAAc;;;;IAKhG,kBAAkB,CACF,SAAS,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EACX,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;IAWrC,aAAa,CACG,SAAS,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc,EACb,QAAQ,EAAE,QAAQ;IAgC1C,UAAU,CACM,SAAS,EAAE,MAAM,EACtB,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMrC,sBAAsB,CACN,SAAS,EAAE,MAAM,EACtB,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;IAMrC,aAAa,CACT,OAAO,EAAE,OAAO,EACT,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAWrC,qBAAqB,CACL,SAAS,EAAE,MAAM,EAC7B,OAAO,EAAE,OAAO,EACT,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgBrC,cAAc,CACE,SAAS,EAAE,MAAM,EACtB,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMrC,cAAc,CACE,SAAS,EAAE,MAAM,EACtB,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOrC,oBAAoB,CACJ,SAAS,EAAE,MAAM,EAC7B,OAAO,EAAE,OAAO,EACT,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;;;IAiBrC,aAAa,CACG,SAAS,EAAE,MAAM,EACtB,KAAK,EAAE,kBAAkB,EACtB,OAAO,EAAE,cAAc;IAK3C,OAAO,CAAC,cAAc;CAOvB"}
|
|
@@ -38,7 +38,14 @@ let DatasetController = class DatasetController {
|
|
|
38
38
|
if (!parse.success) {
|
|
39
39
|
throw new common_1.BadRequestException(parse.error.issues);
|
|
40
40
|
}
|
|
41
|
-
const
|
|
41
|
+
const delivery = await this.datasetService.exportDatasetForDownload(project, this.parseDatasetId(datasetId), parse.data, actor);
|
|
42
|
+
// Object storage minted a signed URL → 302 to it so the bytes are served directly by the store
|
|
43
|
+
// (the existing blob-fetch client transparently follows the redirect). No DTO / client change.
|
|
44
|
+
if (delivery.kind === 'redirect') {
|
|
45
|
+
response.status(common_1.HttpStatus.FOUND).set({ Location: delivery.url });
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
const file = delivery.file;
|
|
42
49
|
response.set({
|
|
43
50
|
'Content-Disposition': `attachment; filename="${file.fileName}"; filename*=UTF-8''${encodeURIComponent(file.fileName)}`,
|
|
44
51
|
'Content-Length': String(file.byteLength),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.controller.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAewB;AACxB,+CAO4B;AAE5B,2FAAsG;AACtG,8EAAyE;AACzE,iGAAmF;AAEnF,uDAAmD;AAI5C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAGzD,AAAN,KAAK,CAAC,YAAY,CAAgB,KAAyB,EAAoB,OAAuB;QACpG,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAGK,AAAN,KAAK,CAAC,kBAAkB,CACF,SAAiB,EAC5B,QAAiB,EACX,KAAyB,EACtB,OAAuB;QAEzC,MAAM,KAAK,GAAG,kCAAyB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,4BAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtH,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CACG,SAAiB,EACpB,MAA0B,EAC5B,KAAyB,EACtB,OAAuB,EACb,QAAkB;QAE9C,MAAM,KAAK,GAAG,kCAAyB,CAAC,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,4BAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,
|
|
1
|
+
{"version":3,"file":"dataset.controller.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Buffer } from 'node:buffer';
|
|
2
|
-
import type { CreateDatasetDto, DatasetCreateResponseDto, DatasetExportFormatDto, DatasetListItemDto, DatasetSamplesListResponseDto, DatasetSamplesQueryDto, DeleteDatasetSamplesDto, DeleteDatasetSamplesResponseDto, UpdateDatasetMetadataDto } from '@proofhound/shared';
|
|
2
|
+
import type { CreateDatasetDto, DatasetCreateResponseDto, DatasetExportFormatDto, DatasetListItemDto, DatasetSamplesListResponseDto, DatasetSamplesQueryDto, DeleteDatasetSamplesDto, DeleteDatasetSamplesResponseDto, ProjectContext, UpdateDatasetMetadataDto } from '@proofhound/shared';
|
|
3
3
|
import type { CurrentUserPayload } from '../../common/decorators/current-user.decorator';
|
|
4
4
|
import { AccessControlService } from '../../common/contracts/access-control.service';
|
|
5
|
+
import { ObjectStorageProvider } from '../../common/contracts/object-storage.provider';
|
|
5
6
|
import { QuotaPolicyHook } from '../../common/contracts/quota-policy.hook';
|
|
6
7
|
import { UsageMeteringHook } from '../../common/contracts/usage-metering.hook';
|
|
7
8
|
import { DatasetDeletionHook } from './dataset-deletion.hook';
|
|
@@ -13,14 +14,30 @@ export interface DatasetExportFile {
|
|
|
13
14
|
buffer: Buffer;
|
|
14
15
|
format: DatasetExportFormatDto;
|
|
15
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* How the export should be delivered to the client:
|
|
19
|
+
* - `stream`: respond with the buffer (object storage disabled, or the provider can't mint a
|
|
20
|
+
* public URL — e.g. LocalFs); preserves the original streamed-download behaviour.
|
|
21
|
+
* - `redirect`: the artifact was written to object storage; redirect the client to a signed URL
|
|
22
|
+
* so the bytes are served directly by the store (no DB / API egress for the payload).
|
|
23
|
+
*/
|
|
24
|
+
export type DatasetExportDelivery = {
|
|
25
|
+
kind: 'stream';
|
|
26
|
+
file: DatasetExportFile;
|
|
27
|
+
} | {
|
|
28
|
+
kind: 'redirect';
|
|
29
|
+
url: string;
|
|
30
|
+
expiresAt: string;
|
|
31
|
+
};
|
|
16
32
|
export declare class DatasetService {
|
|
17
33
|
private readonly repo;
|
|
18
34
|
private readonly accessControl;
|
|
19
35
|
private readonly quotaPolicy;
|
|
20
36
|
private readonly deletionHook;
|
|
21
37
|
private readonly usageMetering?;
|
|
38
|
+
private readonly objectStorage?;
|
|
22
39
|
private readonly logger;
|
|
23
|
-
constructor(repo: DatasetRepository, accessControl: AccessControlService, quotaPolicy: QuotaPolicyHook, deletionHook: DatasetDeletionHook, usageMetering?: UsageMeteringHook | undefined);
|
|
40
|
+
constructor(repo: DatasetRepository, accessControl: AccessControlService, quotaPolicy: QuotaPolicyHook, deletionHook: DatasetDeletionHook, usageMetering?: UsageMeteringHook | undefined, objectStorage?: ObjectStorageProvider | undefined);
|
|
24
41
|
listDatasets(projectId: string, actor: CurrentUserPayload): Promise<{
|
|
25
42
|
data: DatasetListItemDto[];
|
|
26
43
|
total: number;
|
|
@@ -28,6 +45,13 @@ export declare class DatasetService {
|
|
|
28
45
|
getDataset(projectId: string, datasetId: string, actor: CurrentUserPayload): Promise<DatasetListItemDto>;
|
|
29
46
|
listDatasetSamples(projectId: string, datasetId: string, actor: CurrentUserPayload, query: DatasetSamplesQueryDto): Promise<DatasetSamplesListResponseDto>;
|
|
30
47
|
exportDataset(projectId: string, datasetId: string, format: DatasetExportFormatDto, actor: CurrentUserPayload): Promise<DatasetExportFile>;
|
|
48
|
+
/**
|
|
49
|
+
* Build the export artifact and decide how to deliver it. When an object-storage provider is
|
|
50
|
+
* configured and can mint a signed URL, the artifact is written to the store and the caller is
|
|
51
|
+
* redirected there (payload bytes leave the store, not the DB/API). Otherwise — provider disabled
|
|
52
|
+
* or unable to sign (e.g. LocalFs) — it falls back to streaming the buffer, exactly as before.
|
|
53
|
+
*/
|
|
54
|
+
exportDatasetForDownload(project: ProjectContext, datasetId: string, format: DatasetExportFormatDto, actor: CurrentUserPayload): Promise<DatasetExportDelivery>;
|
|
31
55
|
createDataset(projectId: string, dto: CreateDatasetDto, actor: CurrentUserPayload): Promise<DatasetCreateResponseDto>;
|
|
32
56
|
deleteDatasetSamples(projectId: string, datasetId: string, dto: DeleteDatasetSamplesDto, actor: CurrentUserPayload): Promise<DeleteDatasetSamplesResponseDto>;
|
|
33
57
|
updateDatasetMetadata(projectId: string, datasetId: string, dto: UpdateDatasetMetadataDto, actor: CurrentUserPayload): Promise<DatasetListItemDto>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.service.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,KAAK,EACV,gBAAgB,EAEhB,wBAAwB,EACxB,sBAAsB,EAEtB,kBAAkB,EAGlB,6BAA6B,EAC7B,sBAAsB,EAEtB,uBAAuB,EACvB,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAwB,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACL,iBAAiB,EAIlB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,qBACa,cAAc;IAIvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,YAAY;IACjB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"dataset.service.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,18 +19,20 @@ const common_1 = require("@nestjs/common");
|
|
|
19
19
|
const logger_1 = require("@proofhound/logger");
|
|
20
20
|
const access_control_1 = require("../../common/access-control");
|
|
21
21
|
const access_control_service_1 = require("../../common/contracts/access-control.service");
|
|
22
|
+
const object_storage_provider_1 = require("../../common/contracts/object-storage.provider");
|
|
22
23
|
const quota_policy_hook_1 = require("../../common/contracts/quota-policy.hook");
|
|
23
24
|
const usage_metering_hook_1 = require("../../common/contracts/usage-metering.hook");
|
|
24
25
|
const dataset_deletion_hook_1 = require("./dataset-deletion.hook");
|
|
25
26
|
const dataset_field_schema_util_1 = require("./dataset-field-schema.util");
|
|
26
27
|
const dataset_repository_1 = require("./dataset.repository");
|
|
27
28
|
let DatasetService = class DatasetService {
|
|
28
|
-
constructor(repo, accessControl, quotaPolicy, deletionHook, usageMetering) {
|
|
29
|
+
constructor(repo, accessControl, quotaPolicy, deletionHook, usageMetering, objectStorage) {
|
|
29
30
|
this.repo = repo;
|
|
30
31
|
this.accessControl = accessControl;
|
|
31
32
|
this.quotaPolicy = quotaPolicy;
|
|
32
33
|
this.deletionHook = deletionHook;
|
|
33
34
|
this.usageMetering = usageMetering;
|
|
35
|
+
this.objectStorage = objectStorage;
|
|
34
36
|
this.logger = (0, logger_1.createLogger)('dataset.service', { service: 'server' });
|
|
35
37
|
}
|
|
36
38
|
async listDatasets(projectId, actor) {
|
|
@@ -74,6 +76,32 @@ let DatasetService = class DatasetService {
|
|
|
74
76
|
format,
|
|
75
77
|
};
|
|
76
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Build the export artifact and decide how to deliver it. When an object-storage provider is
|
|
81
|
+
* configured and can mint a signed URL, the artifact is written to the store and the caller is
|
|
82
|
+
* redirected there (payload bytes leave the store, not the DB/API). Otherwise — provider disabled
|
|
83
|
+
* or unable to sign (e.g. LocalFs) — it falls back to streaming the buffer, exactly as before.
|
|
84
|
+
*/
|
|
85
|
+
async exportDatasetForDownload(project, datasetId, format, actor) {
|
|
86
|
+
const file = await this.exportDataset(project.projectId, datasetId, format, actor);
|
|
87
|
+
if (this.objectStorage?.isEnabled()) {
|
|
88
|
+
const contentDisposition = `attachment; filename="${file.fileName}"; filename*=UTF-8''${encodeURIComponent(file.fileName)}`;
|
|
89
|
+
const ref = await this.objectStorage.putObject({ project, resourceType: 'export', resourceId: (0, node_crypto_1.randomUUID)(), name: file.fileName }, file.buffer, { contentType: file.contentType, contentDisposition });
|
|
90
|
+
const signed = await this.objectStorage.createSignedDownloadUrl(ref);
|
|
91
|
+
if (signed) {
|
|
92
|
+
return { kind: 'redirect', url: signed.url, expiresAt: signed.expiresAt };
|
|
93
|
+
}
|
|
94
|
+
// Provider stored the object but cannot expose a public URL (e.g. LocalFs). Drop the
|
|
95
|
+
// now-orphaned artifact before streaming — otherwise every such export leaks an object.
|
|
96
|
+
try {
|
|
97
|
+
await this.objectStorage.deleteObjects([ref]);
|
|
98
|
+
}
|
|
99
|
+
catch (err) {
|
|
100
|
+
this.logger.warn({ key: ref.key, err }, 'export_artifact_cleanup_failed');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return { kind: 'stream', file };
|
|
104
|
+
}
|
|
77
105
|
async createDataset(projectId, dto, actor) {
|
|
78
106
|
await this.getWritableProject(projectId, actor);
|
|
79
107
|
this.assertConsistentMappings(dto);
|
|
@@ -450,11 +478,13 @@ exports.DatasetService = DatasetService = __decorate([
|
|
|
450
478
|
(0, common_1.Injectable)(),
|
|
451
479
|
__param(3, (0, common_1.Inject)(dataset_deletion_hook_1.DatasetDeletionHook)),
|
|
452
480
|
__param(4, (0, common_1.Optional)()),
|
|
481
|
+
__param(5, (0, common_1.Optional)()),
|
|
453
482
|
__metadata("design:paramtypes", [dataset_repository_1.DatasetRepository,
|
|
454
483
|
access_control_service_1.AccessControlService,
|
|
455
484
|
quota_policy_hook_1.QuotaPolicyHook,
|
|
456
485
|
dataset_deletion_hook_1.DatasetDeletionHook,
|
|
457
|
-
usage_metering_hook_1.UsageMeteringHook
|
|
486
|
+
usage_metering_hook_1.UsageMeteringHook,
|
|
487
|
+
object_storage_provider_1.ObjectStorageProvider])
|
|
458
488
|
], DatasetService);
|
|
459
489
|
function estimateDatasetCreateBytes(dto) {
|
|
460
490
|
return nonnegativeInteger(dto.uploadSource.fileSizeBytes) + utf8JsonBytes(dto.samples);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.service.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAqC;AACrC,6CAAyC;AACzC,2CAAoG;AACpG,+CAAkD;AAkBlD,gEAA6D;AAC7D,0FAAqF;AACrF,gFAA2E;AAC3E,oFAAqG;AACrG,mEAA8D;AAC9D,2EAAsE;AACtE,6DAK8B;AAWvB,IAAM,cAAc,GAApB,MAAM,cAAc;IAGzB,YACmB,IAAuB,EACvB,aAAmC,EACnC,WAA4B,EAE7C,YAAkD,EACtC,aAAkD;QAL7C,SAAI,GAAJ,IAAI,CAAmB;QACvB,kBAAa,GAAb,aAAa,CAAsB;QACnC,gBAAW,GAAX,WAAW,CAAiB;QAE5B,iBAAY,GAAZ,YAAY,CAAqB;QACrB,kBAAa,GAAb,aAAa,CAAoB;QAR/C,WAAM,GAAG,IAAA,qBAAY,EAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAS9E,CAAC;IAEJ,KAAK,CAAC,YAAY,CAChB,SAAiB,EACjB,KAAyB;QAEzB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACrF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC5B,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,CACzG,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAyB;QAC9E,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAElD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,SAAiB,EACjB,SAAiB,EACjB,KAAyB,EACzB,KAA6B;QAE7B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAEnD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE;YACxE,KAAK,EAAE,KAAK,CAAC,QAAQ;YACrB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ;YACzC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,SAAiB,EACjB,SAAiB,EACjB,MAA8B,EAC9B,KAAyB;QAEzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxF,MAAM,MAAM,GAAG,oBAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE5C,OAAO;YACL,MAAM;YACN,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,WAAW,EAAE,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,qCAAqC;YACjG,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;YACtD,MAAM;SACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,SAAiB,EACjB,GAAqB,EACrB,KAAyB;QAEzB,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAClF,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CAAC,oBAAoB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,SAAS,GAAG,IAAA,wBAAU,GAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,IAAA,mDAAuB,EAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,mBAAmB,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;QACjG,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3G,MAAM,aAAa,GAAG,YAAY,SAAS,QAAQ,SAAS,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC5F,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,KAAK,EAAE,IAAA,+BAAc,EAAC,KAAK,CAAC;YAC5B,KAAK,EAAE,0BAA0B,CAAC,GAAG,CAAC;YACtC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;YACvC,MAAM,EAAE,gBAAgB;SACzB,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC;YACnD,SAAS;YACT,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,GAAG;YACtB,GAAG;YACH,WAAW;YACX,SAAS;YACT,aAAa;YACb,mBAAmB;SACpB,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE;YACvE,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM;YAC/B,cAAc,EAAE,GAAG,CAAC,YAAY,CAAC,QAAQ;YACzC,mBAAmB,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,IAAI,IAAI;SAC5D,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAC7B,GAAG,EACH,IAAI,CAAC,yBAAyB,CAC5B,WAAW,EACX,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAChD,EACD,IAAI,CAAC,eAAe,EAAE,CACvB;YACD,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM;SAChC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,SAAiB,EACjB,SAAiB,EACjB,GAA4B,EAC5B,KAAyB;QAEzB,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAE9B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QAC1E,IAAI,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,0BAAiB,CAAC,4BAA4B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5E,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE;gBACvE,cAAc,EAAE,OAAO;gBACvB,MAAM,EAAE,iBAAiB;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,SAAiB,EACjB,SAAiB,EACjB,GAA6B,EAC7B,KAAyB;QAEzB,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClF,IAAI,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,IAAI,0BAAiB,CAAC,oBAAoB,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE;YAC1E,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;SAC/F,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACvE,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE;YAC3E,YAAY,EAAE,GAAG,CAAC,IAAI;YACtB,mBAAmB,EAAE,GAAG,CAAC,WAAW;SACrC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAyB;QAC1F,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAElD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAyB;QAClF,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAyB;QAClF,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAyB;QACjF,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAEzE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACxE,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE;YAC/G,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;SACjC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,KAMlC;QACC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,MAAM,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE;YACzG,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE;YAC9F,MAAM,EAAE,0BAA0B;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,SAAiB,EAAE,KAAyB;QAC7E,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAA,+BAAc,EAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;QAC1G,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5F,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,KAAyB;QAC3E,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAA,+BAAc,EAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;QAC3G,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,GAAe,EACf,OAAe,EACf,SAAoE,EACpE,OAAgC;QAEhC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE;YACvE,SAAS,EAAE,GAAG,CAAC,EAAE;YACjB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;YACtC,GAAG,OAAO;SACX,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE;YAC7E,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,GAAG,CAAC,EAAE;YACjB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;YACtC,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,SAAmH,EACnH,SAAiB,EACjB,OAAe,EACf,SAAiB,EACjB,OAAgC;QAEhC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,MAAM,MAAM,GACV,OAAO,OAAO,CAAC,WAAW,CAAC,KAAK,QAAQ;YACtC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;YACtB,CAAC,CAAC,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,QAAQ;gBACvC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;gBACrB,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1G,MAAM,IAAA,0CAAoB,EACxB,IAAI,CAAC,aAAa,EAClB;YACE,cAAc,EAAE,WAAW,SAAS,IAAI,SAAS,IAAI,MAAM,EAAE;YAC7D,SAAS,EAAE,SAAS;YACpB,SAAS;YACT,SAAS;YACT,OAAO;YACP,UAAU;YACV,MAAM,EAAE,QAAQ;YAChB,OAAO;SACR,EACD,IAAI,CAAC,MAAM,CACZ,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,GAAqB;QACpD,MAAM,kBAAkB,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QACjG,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,0BAAiB,CAAC,+BAA+B,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,YAAY,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,WAAW,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAC7C,MAAM,IAAI,0BAAiB,CAAC,iCAAiC,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC;QAC5E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,0BAAiB,CAAC,iCAAiC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAEO,iBAAiB,CACvB,GAAe,EACf,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,EAC9F,aAAmC,IAAI,CAAC,eAAe,EAAE;QAEzD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAExD,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;YACxC,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,WAAW;YACX,oBAAoB;YACpB,UAAU;YACV,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,oBAAoB,EAAE,GAAG,CAAC,oBAAoB,IAAI,IAAI;YACtD,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;YACtC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;YACtC,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,IAAI;YACjD,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;SAChD,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,MAAc;QACpC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvD,CAAC;IAEO,mBAAmB,CAAC,GAAe;QACzC,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,IAAI,0BAAiB,CAAC,kBAAkB,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,IAAkB;QACvD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,GAAG,CACN,KAAK,EAAE,GAAG,EAAqD,EAAE,CAAC;YAChE,GAAG,CAAC,EAAE;YACN,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;SACxC,CACF,CACF,CAAC;QACF,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED,2HAA2H;IACnH,KAAK,CAAC,uBAAuB,CAAC,GAAe;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QAErE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACxE,CAAC;IAEO,yBAAyB,CAC/B,SAAiB,EACjB,UAAmD;QAEnD,MAAM,UAAU,GAAG,UAAU;aAC1B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;aAC5D,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5F,OAAO;YACL,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YACpE,UAAU;SACX,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAC/B,WAAoC,EACpC,OAAiC;QAEjC,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QACnD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;aACrC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;aAC3C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAE5F,OAAO;YACL,KAAK,EAAE,mBAAmB,CAAC,IAAI;YAC/B,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YACpE,UAAU;SACX,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,WAAoC;QACjE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,IAAI,CAAC;IAC/E,CAAC;IAEO,aAAa,CAAC,KAAc;QAClC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,CAAC;IAEO,QAAQ,CAAC,KAAc;QAC7B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/G,CAAC;IAEO,eAAe,CAAC,KAAc;QACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACzC,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,GAAqB;QAC3C,MAAM,IAAI,GACR,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC,IAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEpH,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI;YACJ,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;YACtC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;SACvC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,OAA2B,EAAE,OAA2B;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7G,OAAO,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACtG,CAAC;IAEO,OAAO,CAAC,OAA2B;QACzC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAChF,CAAC;IAEO,gBAAgB,CAAC,OAA2B,EAAE,OAA2B;QAC/E,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAE/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;oBAAE,SAAS;gBACnC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,SAAS,CAAC,KAAc;QAC9B,MAAM,IAAI,GACR,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YACnC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;gBACzB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEtB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;IAC3C,CAAC;IAEO,iBAAiB,CAAC,WAAmB,EAAE,MAA8B;QAC3E,MAAM,QAAQ,GACZ,WAAW;aACR,IAAI,EAAE;aACN,WAAW,EAAE;aACb,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC;aAC/B,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC;QAE3C,OAAO,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAC;IACjC,CAAC;CACF,CAAA;AAjjBY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAQR,WAAA,IAAA,eAAM,EAAC,2CAAmB,CAAC,CAAA;IAE3B,WAAA,IAAA,iBAAQ,GAAE,CAAA;qCALY,sCAAiB;QACR,6CAAoB;QACtB,mCAAe;QAEd,2CAAmB;QACL,uCAAiB;GATrD,cAAc,CAijB1B;AAED,SAAS,0BAA0B,CAAC,GAAqB;IACvD,OAAO,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,oBAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAyB;IACnD,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC"}
|
|
1
|
+
{"version":3,"file":"dataset.service.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@proofhound/core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.11",
|
|
4
4
|
"description": "ProofHound reusable backend runtime: server / webhook / worker NestJS modules, contracts, local defaults, Services, Repositories",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -36,17 +36,17 @@
|
|
|
36
36
|
"rxjs": "^7.8.2",
|
|
37
37
|
"sharp": "^0.34.5",
|
|
38
38
|
"zod": "^4.4.3",
|
|
39
|
-
"@proofhound/connector-client": "0.1.
|
|
40
|
-
"@proofhound/
|
|
41
|
-
"@proofhound/
|
|
42
|
-
"@proofhound/
|
|
43
|
-
"@proofhound/
|
|
44
|
-
"@proofhound/logger": "0.1.
|
|
45
|
-
"@proofhound/metrics": "0.1.
|
|
46
|
-
"@proofhound/
|
|
47
|
-
"@proofhound/shared": "0.1.
|
|
48
|
-
"@proofhound/
|
|
49
|
-
"@proofhound/
|
|
39
|
+
"@proofhound/connector-client": "0.1.11",
|
|
40
|
+
"@proofhound/db": "0.1.11",
|
|
41
|
+
"@proofhound/judgment": "0.1.11",
|
|
42
|
+
"@proofhound/crypto": "0.1.11",
|
|
43
|
+
"@proofhound/llm-client": "0.1.11",
|
|
44
|
+
"@proofhound/logger": "0.1.11",
|
|
45
|
+
"@proofhound/metrics": "0.1.11",
|
|
46
|
+
"@proofhound/limiter": "0.1.11",
|
|
47
|
+
"@proofhound/orchestration-shared": "0.1.11",
|
|
48
|
+
"@proofhound/shared": "0.1.11",
|
|
49
|
+
"@proofhound/optimization-strategy": "0.1.11"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@nestjs/testing": "^11.1.21",
|