flexorch-sdk 0.3.1 → 0.3.3
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.
|
@@ -16,6 +16,9 @@ var Dataset = class _Dataset {
|
|
|
16
16
|
slug;
|
|
17
17
|
status;
|
|
18
18
|
rowCount;
|
|
19
|
+
piiMasked;
|
|
20
|
+
piiFindingsCount;
|
|
21
|
+
piiTypeSummary;
|
|
19
22
|
createdAt;
|
|
20
23
|
availableFormats;
|
|
21
24
|
_transport;
|
|
@@ -25,6 +28,9 @@ var Dataset = class _Dataset {
|
|
|
25
28
|
this.slug = data.slug;
|
|
26
29
|
this.status = data.status;
|
|
27
30
|
this.rowCount = data.rowCount;
|
|
31
|
+
this.piiMasked = data.piiMasked;
|
|
32
|
+
this.piiFindingsCount = data.piiFindingsCount;
|
|
33
|
+
this.piiTypeSummary = data.piiTypeSummary;
|
|
28
34
|
this.createdAt = data.createdAt;
|
|
29
35
|
this.availableFormats = data.availableFormats;
|
|
30
36
|
this._transport = data._transport;
|
|
@@ -32,12 +38,19 @@ var Dataset = class _Dataset {
|
|
|
32
38
|
static fromDict(data, transport) {
|
|
33
39
|
const fmt = data["format_summary"] ?? {};
|
|
34
40
|
const files = fmt["files"] ?? {};
|
|
41
|
+
const privacy = data["privacy"];
|
|
42
|
+
const piiMasked = privacy ? Boolean(privacy["privacy_applied"] ?? false) : Boolean(data["privacy_applied"] ?? false);
|
|
43
|
+
const piiFindingsCount = privacy ? Number(privacy["pii_findings_count"] ?? 0) : Number(data["pii_findings_count"] ?? 0);
|
|
44
|
+
const piiTypeSummary = privacy ? privacy["pii_type_summary"] ?? {} : {};
|
|
35
45
|
return new _Dataset({
|
|
36
46
|
id: String(data["id"] ?? ""),
|
|
37
47
|
name: String(data["name"] ?? ""),
|
|
38
48
|
slug: String(data["slug"] ?? ""),
|
|
39
49
|
status: String(data["status"] ?? ""),
|
|
40
50
|
rowCount: Number(data["row_count"] ?? 0),
|
|
51
|
+
piiMasked,
|
|
52
|
+
piiFindingsCount,
|
|
53
|
+
piiTypeSummary,
|
|
41
54
|
createdAt: String(data["created_at"] ?? ""),
|
|
42
55
|
availableFormats: Object.keys(files),
|
|
43
56
|
_transport: transport
|
package/dist/index.cjs
CHANGED
|
@@ -56,6 +56,9 @@ var init_dataset = __esm({
|
|
|
56
56
|
slug;
|
|
57
57
|
status;
|
|
58
58
|
rowCount;
|
|
59
|
+
piiMasked;
|
|
60
|
+
piiFindingsCount;
|
|
61
|
+
piiTypeSummary;
|
|
59
62
|
createdAt;
|
|
60
63
|
availableFormats;
|
|
61
64
|
_transport;
|
|
@@ -65,6 +68,9 @@ var init_dataset = __esm({
|
|
|
65
68
|
this.slug = data.slug;
|
|
66
69
|
this.status = data.status;
|
|
67
70
|
this.rowCount = data.rowCount;
|
|
71
|
+
this.piiMasked = data.piiMasked;
|
|
72
|
+
this.piiFindingsCount = data.piiFindingsCount;
|
|
73
|
+
this.piiTypeSummary = data.piiTypeSummary;
|
|
68
74
|
this.createdAt = data.createdAt;
|
|
69
75
|
this.availableFormats = data.availableFormats;
|
|
70
76
|
this._transport = data._transport;
|
|
@@ -72,12 +78,19 @@ var init_dataset = __esm({
|
|
|
72
78
|
static fromDict(data, transport) {
|
|
73
79
|
const fmt = data["format_summary"] ?? {};
|
|
74
80
|
const files = fmt["files"] ?? {};
|
|
81
|
+
const privacy = data["privacy"];
|
|
82
|
+
const piiMasked = privacy ? Boolean(privacy["privacy_applied"] ?? false) : Boolean(data["privacy_applied"] ?? false);
|
|
83
|
+
const piiFindingsCount = privacy ? Number(privacy["pii_findings_count"] ?? 0) : Number(data["pii_findings_count"] ?? 0);
|
|
84
|
+
const piiTypeSummary = privacy ? privacy["pii_type_summary"] ?? {} : {};
|
|
75
85
|
return new _Dataset({
|
|
76
86
|
id: String(data["id"] ?? ""),
|
|
77
87
|
name: String(data["name"] ?? ""),
|
|
78
88
|
slug: String(data["slug"] ?? ""),
|
|
79
89
|
status: String(data["status"] ?? ""),
|
|
80
90
|
rowCount: Number(data["row_count"] ?? 0),
|
|
91
|
+
piiMasked,
|
|
92
|
+
piiFindingsCount,
|
|
93
|
+
piiTypeSummary,
|
|
81
94
|
createdAt: String(data["created_at"] ?? ""),
|
|
82
95
|
availableFormats: Object.keys(files),
|
|
83
96
|
_transport: transport
|
|
@@ -312,7 +325,7 @@ var Transport = class {
|
|
|
312
325
|
this.fetchFn = fetchFn ?? globalThis.fetch.bind(globalThis);
|
|
313
326
|
this.defaultHeaders = {
|
|
314
327
|
"X-API-KEY": apiKey,
|
|
315
|
-
"User-Agent": "flexorch-sdk-js/0.3.
|
|
328
|
+
"User-Agent": "flexorch-sdk-js/0.3.3"
|
|
316
329
|
};
|
|
317
330
|
}
|
|
318
331
|
url(path, params) {
|
|
@@ -418,6 +431,9 @@ var Job = class _Job {
|
|
|
418
431
|
*/
|
|
419
432
|
degraded;
|
|
420
433
|
failureReason;
|
|
434
|
+
piiMasked;
|
|
435
|
+
piiFindingsCount;
|
|
436
|
+
piiTypeSummary;
|
|
421
437
|
_transport;
|
|
422
438
|
constructor(data) {
|
|
423
439
|
this.id = data.id;
|
|
@@ -430,12 +446,16 @@ var Job = class _Job {
|
|
|
430
446
|
this.datasetId = data.datasetId;
|
|
431
447
|
this.degraded = data.degraded;
|
|
432
448
|
this.failureReason = data.failureReason;
|
|
449
|
+
this.piiMasked = data.piiMasked;
|
|
450
|
+
this.piiFindingsCount = data.piiFindingsCount;
|
|
451
|
+
this.piiTypeSummary = data.piiTypeSummary;
|
|
433
452
|
this._transport = data._transport;
|
|
434
453
|
}
|
|
435
454
|
static fromDict(data, transport) {
|
|
436
455
|
const executionSummary = data["execution_summary"];
|
|
437
456
|
const processingSummary = data["processing_summary"];
|
|
438
457
|
const datasetSummary = data["dataset_summary"];
|
|
458
|
+
const privacy = executionSummary?.["privacy"];
|
|
439
459
|
let quality = data["quality"];
|
|
440
460
|
if (!quality && processingSummary) {
|
|
441
461
|
quality = processingSummary["quality"];
|
|
@@ -458,6 +478,13 @@ var Job = class _Job {
|
|
|
458
478
|
datasetId: datasetSummary?.["dataset_id"] ?? null,
|
|
459
479
|
degraded: Boolean(executionSummary?.["degraded"] ?? false),
|
|
460
480
|
failureReason: data["failure_reason"] ?? null,
|
|
481
|
+
// execution_summary.privacy — computed fresh on every GET /jobs/{id}
|
|
482
|
+
// read, not frozen at job-completion time, so this works even for
|
|
483
|
+
// jobs older than this field. Defaults for jobs with no execution
|
|
484
|
+
// (e.g. dataset_build) or against an older API version.
|
|
485
|
+
piiMasked: Boolean(privacy?.["privacy_applied"] ?? false),
|
|
486
|
+
piiFindingsCount: Number(privacy?.["pii_findings_count"] ?? 0),
|
|
487
|
+
piiTypeSummary: privacy?.["pii_type_summary"] ?? {},
|
|
461
488
|
_transport: transport
|
|
462
489
|
});
|
|
463
490
|
}
|
|
@@ -821,14 +848,25 @@ var UsageResource = class {
|
|
|
821
848
|
};
|
|
822
849
|
|
|
823
850
|
// src/resources/webhooks.ts
|
|
824
|
-
var VALID_EVENTS = /* @__PURE__ */ new Set(["dataset.ready", "job.completed", "job.failed"]);
|
|
851
|
+
var VALID_EVENTS = /* @__PURE__ */ new Set(["dataset.ready", "job.completed", "job.failed", "quota.warning"]);
|
|
852
|
+
function autoExportFromDict(data) {
|
|
853
|
+
if (!data || typeof data !== "object") return null;
|
|
854
|
+
const d = data;
|
|
855
|
+
return {
|
|
856
|
+
connectorId: Number(d["connector_id"] ?? 0),
|
|
857
|
+
format: String(d["format"] ?? ""),
|
|
858
|
+
prefix: d["prefix"] !== void 0 ? String(d["prefix"]) : void 0
|
|
859
|
+
};
|
|
860
|
+
}
|
|
825
861
|
function webhookFromDict(data) {
|
|
826
862
|
return {
|
|
827
863
|
id: String(data["id"] ?? ""),
|
|
828
864
|
url: String(data["url"] ?? ""),
|
|
829
865
|
events: data["events"] ?? [],
|
|
830
866
|
active: Boolean(data["active"] ?? true),
|
|
831
|
-
createdAt: String(data["created_at"] ?? "")
|
|
867
|
+
createdAt: String(data["created_at"] ?? ""),
|
|
868
|
+
autoExport: autoExportFromDict(data["auto_export"]),
|
|
869
|
+
secret: data["secret"] ?? null
|
|
832
870
|
};
|
|
833
871
|
}
|
|
834
872
|
var WebhooksResource = class {
|
|
@@ -836,12 +874,20 @@ var WebhooksResource = class {
|
|
|
836
874
|
this._t = _t;
|
|
837
875
|
}
|
|
838
876
|
_t;
|
|
839
|
-
async register(url, events) {
|
|
877
|
+
async register(url, events, autoExport) {
|
|
840
878
|
const invalid = events.filter((e) => !VALID_EVENTS.has(e));
|
|
841
879
|
if (invalid.length > 0) {
|
|
842
880
|
throw new Error(`Unknown event types: ${invalid.join(", ")}. Valid: ${[...VALID_EVENTS].join(", ")}`);
|
|
843
881
|
}
|
|
844
|
-
const
|
|
882
|
+
const body = { url, events };
|
|
883
|
+
if (autoExport) {
|
|
884
|
+
body["auto_export"] = {
|
|
885
|
+
connector_id: autoExport.connectorId,
|
|
886
|
+
format: autoExport.format,
|
|
887
|
+
...autoExport.prefix !== void 0 ? { prefix: autoExport.prefix } : {}
|
|
888
|
+
};
|
|
889
|
+
}
|
|
890
|
+
const data = await this._t.post("/webhooks", body);
|
|
845
891
|
return webhookFromDict(data);
|
|
846
892
|
}
|
|
847
893
|
async list() {
|
|
@@ -863,6 +909,9 @@ var Connector = class _Connector {
|
|
|
863
909
|
lastTestedAt;
|
|
864
910
|
lastUsedAt;
|
|
865
911
|
createdAt;
|
|
912
|
+
/** Non-secret config fields (bucket/region, folder_id, index_name, etc.) —
|
|
913
|
+
* credentials are never included. */
|
|
914
|
+
config;
|
|
866
915
|
constructor(data) {
|
|
867
916
|
this.id = data.id;
|
|
868
917
|
this.name = data.name;
|
|
@@ -871,6 +920,7 @@ var Connector = class _Connector {
|
|
|
871
920
|
this.lastTestedAt = data.lastTestedAt;
|
|
872
921
|
this.lastUsedAt = data.lastUsedAt;
|
|
873
922
|
this.createdAt = data.createdAt;
|
|
923
|
+
this.config = data.config ?? {};
|
|
874
924
|
}
|
|
875
925
|
static fromDict(data) {
|
|
876
926
|
return new _Connector({
|
|
@@ -880,7 +930,8 @@ var Connector = class _Connector {
|
|
|
880
930
|
active: Boolean(data["active"] ?? true),
|
|
881
931
|
lastTestedAt: data["last_tested_at"] ?? null,
|
|
882
932
|
lastUsedAt: data["last_used_at"] ?? null,
|
|
883
|
-
createdAt: String(data["created_at"] ?? "")
|
|
933
|
+
createdAt: String(data["created_at"] ?? ""),
|
|
934
|
+
config: data["config"] ?? {}
|
|
884
935
|
});
|
|
885
936
|
}
|
|
886
937
|
toString() {
|
|
@@ -1275,7 +1326,7 @@ var FlexOrchReader = class {
|
|
|
1275
1326
|
};
|
|
1276
1327
|
|
|
1277
1328
|
// src/index.ts
|
|
1278
|
-
var version = "0.3.
|
|
1329
|
+
var version = "0.3.3";
|
|
1279
1330
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1280
1331
|
0 && (module.exports = {
|
|
1281
1332
|
AuthError,
|
package/dist/index.d.cts
CHANGED
|
@@ -22,6 +22,9 @@ declare class Dataset {
|
|
|
22
22
|
readonly slug: string;
|
|
23
23
|
readonly status: string;
|
|
24
24
|
readonly rowCount: number;
|
|
25
|
+
readonly piiMasked: boolean;
|
|
26
|
+
readonly piiFindingsCount: number;
|
|
27
|
+
readonly piiTypeSummary: Record<string, number>;
|
|
25
28
|
readonly createdAt: string;
|
|
26
29
|
readonly availableFormats: string[];
|
|
27
30
|
private readonly _transport;
|
|
@@ -31,6 +34,9 @@ declare class Dataset {
|
|
|
31
34
|
slug: string;
|
|
32
35
|
status: string;
|
|
33
36
|
rowCount: number;
|
|
37
|
+
piiMasked: boolean;
|
|
38
|
+
piiFindingsCount: number;
|
|
39
|
+
piiTypeSummary: Record<string, number>;
|
|
34
40
|
createdAt: string;
|
|
35
41
|
availableFormats: string[];
|
|
36
42
|
_transport: Transport;
|
|
@@ -112,6 +118,9 @@ declare class Job {
|
|
|
112
118
|
*/
|
|
113
119
|
readonly degraded: boolean;
|
|
114
120
|
readonly failureReason: string | null;
|
|
121
|
+
readonly piiMasked: boolean;
|
|
122
|
+
readonly piiFindingsCount: number;
|
|
123
|
+
readonly piiTypeSummary: Record<string, number>;
|
|
115
124
|
private readonly _transport;
|
|
116
125
|
constructor(data: {
|
|
117
126
|
id: string;
|
|
@@ -124,6 +133,9 @@ declare class Job {
|
|
|
124
133
|
datasetId: number | null;
|
|
125
134
|
degraded: boolean;
|
|
126
135
|
failureReason: string | null;
|
|
136
|
+
piiMasked: boolean;
|
|
137
|
+
piiFindingsCount: number;
|
|
138
|
+
piiTypeSummary: Record<string, number>;
|
|
127
139
|
_transport: Transport;
|
|
128
140
|
});
|
|
129
141
|
static fromDict(data: Record<string, unknown>, transport: Transport): Job;
|
|
@@ -334,18 +346,27 @@ declare class UsageResource {
|
|
|
334
346
|
rateLimits(): Promise<RateLimitStatus>;
|
|
335
347
|
}
|
|
336
348
|
|
|
337
|
-
type WebhookEvent = "dataset.ready" | "job.completed" | "job.failed";
|
|
349
|
+
type WebhookEvent = "dataset.ready" | "job.completed" | "job.failed" | "quota.warning";
|
|
350
|
+
interface WebhookAutoExport {
|
|
351
|
+
connectorId: number;
|
|
352
|
+
format: string;
|
|
353
|
+
prefix?: string;
|
|
354
|
+
}
|
|
338
355
|
interface Webhook {
|
|
339
356
|
id: string;
|
|
340
357
|
url: string;
|
|
341
358
|
events: WebhookEvent[];
|
|
342
359
|
active: boolean;
|
|
343
360
|
createdAt: string;
|
|
361
|
+
autoExport: WebhookAutoExport | null;
|
|
362
|
+
/** Signing secret — only present on the response from register(). Store it
|
|
363
|
+
* securely; it is never returned again by list()/get(). */
|
|
364
|
+
secret: string | null;
|
|
344
365
|
}
|
|
345
366
|
declare class WebhooksResource {
|
|
346
367
|
private readonly _t;
|
|
347
368
|
constructor(_t: Transport);
|
|
348
|
-
register(url: string, events: WebhookEvent[]): Promise<Webhook>;
|
|
369
|
+
register(url: string, events: WebhookEvent[], autoExport?: WebhookAutoExport): Promise<Webhook>;
|
|
349
370
|
list(): Promise<Webhook[]>;
|
|
350
371
|
delete(webhookId: string): Promise<void>;
|
|
351
372
|
}
|
|
@@ -358,6 +379,9 @@ declare class Connector {
|
|
|
358
379
|
readonly lastTestedAt: string | null;
|
|
359
380
|
readonly lastUsedAt: string | null;
|
|
360
381
|
readonly createdAt: string;
|
|
382
|
+
/** Non-secret config fields (bucket/region, folder_id, index_name, etc.) —
|
|
383
|
+
* credentials are never included. */
|
|
384
|
+
readonly config: Record<string, unknown>;
|
|
361
385
|
constructor(data: {
|
|
362
386
|
id: string;
|
|
363
387
|
name: string;
|
|
@@ -366,6 +390,7 @@ declare class Connector {
|
|
|
366
390
|
lastTestedAt: string | null;
|
|
367
391
|
lastUsedAt: string | null;
|
|
368
392
|
createdAt: string;
|
|
393
|
+
config?: Record<string, unknown>;
|
|
369
394
|
});
|
|
370
395
|
static fromDict(data: Record<string, unknown>): Connector;
|
|
371
396
|
toString(): string;
|
|
@@ -606,6 +631,6 @@ declare class FlexOrchReader {
|
|
|
606
631
|
toString(): string;
|
|
607
632
|
}
|
|
608
633
|
|
|
609
|
-
declare const version = "0.3.
|
|
634
|
+
declare const version = "0.3.3";
|
|
610
635
|
|
|
611
636
|
export { AuthError, Connector, type ConnectorTestResult, type ConnectorType, Dataset, Document, type ExportFormat, FlexOrchClient, type FlexOrchClientOptions, FlexOrchError, FlexOrchReader, FlexOrchRetriever, Job, JobFailedError, type JobFeedback, JobTimeoutError, NotFoundError, type QualityTrendItem, QuotaError, RAGDocument, RateLimitError, type RateLimitStatus, type ReaderLoadOptions, type RetrieverOptions, type S3ConnectorConfig, type SearchFilters, SearchResult, ServerError, type SyncLog, type SyncSchedule, type UsageHistoryItem, type UsageSnapshot, ValidationError, type Webhook, type WebhookEvent, version };
|
package/dist/index.d.ts
CHANGED
|
@@ -22,6 +22,9 @@ declare class Dataset {
|
|
|
22
22
|
readonly slug: string;
|
|
23
23
|
readonly status: string;
|
|
24
24
|
readonly rowCount: number;
|
|
25
|
+
readonly piiMasked: boolean;
|
|
26
|
+
readonly piiFindingsCount: number;
|
|
27
|
+
readonly piiTypeSummary: Record<string, number>;
|
|
25
28
|
readonly createdAt: string;
|
|
26
29
|
readonly availableFormats: string[];
|
|
27
30
|
private readonly _transport;
|
|
@@ -31,6 +34,9 @@ declare class Dataset {
|
|
|
31
34
|
slug: string;
|
|
32
35
|
status: string;
|
|
33
36
|
rowCount: number;
|
|
37
|
+
piiMasked: boolean;
|
|
38
|
+
piiFindingsCount: number;
|
|
39
|
+
piiTypeSummary: Record<string, number>;
|
|
34
40
|
createdAt: string;
|
|
35
41
|
availableFormats: string[];
|
|
36
42
|
_transport: Transport;
|
|
@@ -112,6 +118,9 @@ declare class Job {
|
|
|
112
118
|
*/
|
|
113
119
|
readonly degraded: boolean;
|
|
114
120
|
readonly failureReason: string | null;
|
|
121
|
+
readonly piiMasked: boolean;
|
|
122
|
+
readonly piiFindingsCount: number;
|
|
123
|
+
readonly piiTypeSummary: Record<string, number>;
|
|
115
124
|
private readonly _transport;
|
|
116
125
|
constructor(data: {
|
|
117
126
|
id: string;
|
|
@@ -124,6 +133,9 @@ declare class Job {
|
|
|
124
133
|
datasetId: number | null;
|
|
125
134
|
degraded: boolean;
|
|
126
135
|
failureReason: string | null;
|
|
136
|
+
piiMasked: boolean;
|
|
137
|
+
piiFindingsCount: number;
|
|
138
|
+
piiTypeSummary: Record<string, number>;
|
|
127
139
|
_transport: Transport;
|
|
128
140
|
});
|
|
129
141
|
static fromDict(data: Record<string, unknown>, transport: Transport): Job;
|
|
@@ -334,18 +346,27 @@ declare class UsageResource {
|
|
|
334
346
|
rateLimits(): Promise<RateLimitStatus>;
|
|
335
347
|
}
|
|
336
348
|
|
|
337
|
-
type WebhookEvent = "dataset.ready" | "job.completed" | "job.failed";
|
|
349
|
+
type WebhookEvent = "dataset.ready" | "job.completed" | "job.failed" | "quota.warning";
|
|
350
|
+
interface WebhookAutoExport {
|
|
351
|
+
connectorId: number;
|
|
352
|
+
format: string;
|
|
353
|
+
prefix?: string;
|
|
354
|
+
}
|
|
338
355
|
interface Webhook {
|
|
339
356
|
id: string;
|
|
340
357
|
url: string;
|
|
341
358
|
events: WebhookEvent[];
|
|
342
359
|
active: boolean;
|
|
343
360
|
createdAt: string;
|
|
361
|
+
autoExport: WebhookAutoExport | null;
|
|
362
|
+
/** Signing secret — only present on the response from register(). Store it
|
|
363
|
+
* securely; it is never returned again by list()/get(). */
|
|
364
|
+
secret: string | null;
|
|
344
365
|
}
|
|
345
366
|
declare class WebhooksResource {
|
|
346
367
|
private readonly _t;
|
|
347
368
|
constructor(_t: Transport);
|
|
348
|
-
register(url: string, events: WebhookEvent[]): Promise<Webhook>;
|
|
369
|
+
register(url: string, events: WebhookEvent[], autoExport?: WebhookAutoExport): Promise<Webhook>;
|
|
349
370
|
list(): Promise<Webhook[]>;
|
|
350
371
|
delete(webhookId: string): Promise<void>;
|
|
351
372
|
}
|
|
@@ -358,6 +379,9 @@ declare class Connector {
|
|
|
358
379
|
readonly lastTestedAt: string | null;
|
|
359
380
|
readonly lastUsedAt: string | null;
|
|
360
381
|
readonly createdAt: string;
|
|
382
|
+
/** Non-secret config fields (bucket/region, folder_id, index_name, etc.) —
|
|
383
|
+
* credentials are never included. */
|
|
384
|
+
readonly config: Record<string, unknown>;
|
|
361
385
|
constructor(data: {
|
|
362
386
|
id: string;
|
|
363
387
|
name: string;
|
|
@@ -366,6 +390,7 @@ declare class Connector {
|
|
|
366
390
|
lastTestedAt: string | null;
|
|
367
391
|
lastUsedAt: string | null;
|
|
368
392
|
createdAt: string;
|
|
393
|
+
config?: Record<string, unknown>;
|
|
369
394
|
});
|
|
370
395
|
static fromDict(data: Record<string, unknown>): Connector;
|
|
371
396
|
toString(): string;
|
|
@@ -606,6 +631,6 @@ declare class FlexOrchReader {
|
|
|
606
631
|
toString(): string;
|
|
607
632
|
}
|
|
608
633
|
|
|
609
|
-
declare const version = "0.3.
|
|
634
|
+
declare const version = "0.3.3";
|
|
610
635
|
|
|
611
636
|
export { AuthError, Connector, type ConnectorTestResult, type ConnectorType, Dataset, Document, type ExportFormat, FlexOrchClient, type FlexOrchClientOptions, FlexOrchError, FlexOrchReader, FlexOrchRetriever, Job, JobFailedError, type JobFeedback, JobTimeoutError, NotFoundError, type QualityTrendItem, QuotaError, RAGDocument, RateLimitError, type RateLimitStatus, type ReaderLoadOptions, type RetrieverOptions, type S3ConnectorConfig, type SearchFilters, SearchResult, ServerError, type SyncLog, type SyncSchedule, type UsageHistoryItem, type UsageSnapshot, ValidationError, type Webhook, type WebhookEvent, version };
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Dataset
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-U2CE5GVG.js";
|
|
4
4
|
|
|
5
5
|
// src/errors.ts
|
|
6
6
|
var FlexOrchError = class extends Error {
|
|
@@ -123,7 +123,7 @@ var Transport = class {
|
|
|
123
123
|
this.fetchFn = fetchFn ?? globalThis.fetch.bind(globalThis);
|
|
124
124
|
this.defaultHeaders = {
|
|
125
125
|
"X-API-KEY": apiKey,
|
|
126
|
-
"User-Agent": "flexorch-sdk-js/0.3.
|
|
126
|
+
"User-Agent": "flexorch-sdk-js/0.3.3"
|
|
127
127
|
};
|
|
128
128
|
}
|
|
129
129
|
url(path, params) {
|
|
@@ -229,6 +229,9 @@ var Job = class _Job {
|
|
|
229
229
|
*/
|
|
230
230
|
degraded;
|
|
231
231
|
failureReason;
|
|
232
|
+
piiMasked;
|
|
233
|
+
piiFindingsCount;
|
|
234
|
+
piiTypeSummary;
|
|
232
235
|
_transport;
|
|
233
236
|
constructor(data) {
|
|
234
237
|
this.id = data.id;
|
|
@@ -241,12 +244,16 @@ var Job = class _Job {
|
|
|
241
244
|
this.datasetId = data.datasetId;
|
|
242
245
|
this.degraded = data.degraded;
|
|
243
246
|
this.failureReason = data.failureReason;
|
|
247
|
+
this.piiMasked = data.piiMasked;
|
|
248
|
+
this.piiFindingsCount = data.piiFindingsCount;
|
|
249
|
+
this.piiTypeSummary = data.piiTypeSummary;
|
|
244
250
|
this._transport = data._transport;
|
|
245
251
|
}
|
|
246
252
|
static fromDict(data, transport) {
|
|
247
253
|
const executionSummary = data["execution_summary"];
|
|
248
254
|
const processingSummary = data["processing_summary"];
|
|
249
255
|
const datasetSummary = data["dataset_summary"];
|
|
256
|
+
const privacy = executionSummary?.["privacy"];
|
|
250
257
|
let quality = data["quality"];
|
|
251
258
|
if (!quality && processingSummary) {
|
|
252
259
|
quality = processingSummary["quality"];
|
|
@@ -269,6 +276,13 @@ var Job = class _Job {
|
|
|
269
276
|
datasetId: datasetSummary?.["dataset_id"] ?? null,
|
|
270
277
|
degraded: Boolean(executionSummary?.["degraded"] ?? false),
|
|
271
278
|
failureReason: data["failure_reason"] ?? null,
|
|
279
|
+
// execution_summary.privacy — computed fresh on every GET /jobs/{id}
|
|
280
|
+
// read, not frozen at job-completion time, so this works even for
|
|
281
|
+
// jobs older than this field. Defaults for jobs with no execution
|
|
282
|
+
// (e.g. dataset_build) or against an older API version.
|
|
283
|
+
piiMasked: Boolean(privacy?.["privacy_applied"] ?? false),
|
|
284
|
+
piiFindingsCount: Number(privacy?.["pii_findings_count"] ?? 0),
|
|
285
|
+
piiTypeSummary: privacy?.["pii_type_summary"] ?? {},
|
|
272
286
|
_transport: transport
|
|
273
287
|
});
|
|
274
288
|
}
|
|
@@ -294,7 +308,7 @@ var Job = class _Job {
|
|
|
294
308
|
throw new JobTimeoutError(this.id, timeout);
|
|
295
309
|
}
|
|
296
310
|
async dataset() {
|
|
297
|
-
const { Dataset: Dataset2 } = await import("./dataset-
|
|
311
|
+
const { Dataset: Dataset2 } = await import("./dataset-UGUUKKH3.js");
|
|
298
312
|
if (this.datasetId !== null) {
|
|
299
313
|
const data2 = await this._transport.get(`/datasets/${this.datasetId}`);
|
|
300
314
|
return Dataset2.fromDict(data2, this._transport);
|
|
@@ -631,14 +645,25 @@ var UsageResource = class {
|
|
|
631
645
|
};
|
|
632
646
|
|
|
633
647
|
// src/resources/webhooks.ts
|
|
634
|
-
var VALID_EVENTS = /* @__PURE__ */ new Set(["dataset.ready", "job.completed", "job.failed"]);
|
|
648
|
+
var VALID_EVENTS = /* @__PURE__ */ new Set(["dataset.ready", "job.completed", "job.failed", "quota.warning"]);
|
|
649
|
+
function autoExportFromDict(data) {
|
|
650
|
+
if (!data || typeof data !== "object") return null;
|
|
651
|
+
const d = data;
|
|
652
|
+
return {
|
|
653
|
+
connectorId: Number(d["connector_id"] ?? 0),
|
|
654
|
+
format: String(d["format"] ?? ""),
|
|
655
|
+
prefix: d["prefix"] !== void 0 ? String(d["prefix"]) : void 0
|
|
656
|
+
};
|
|
657
|
+
}
|
|
635
658
|
function webhookFromDict(data) {
|
|
636
659
|
return {
|
|
637
660
|
id: String(data["id"] ?? ""),
|
|
638
661
|
url: String(data["url"] ?? ""),
|
|
639
662
|
events: data["events"] ?? [],
|
|
640
663
|
active: Boolean(data["active"] ?? true),
|
|
641
|
-
createdAt: String(data["created_at"] ?? "")
|
|
664
|
+
createdAt: String(data["created_at"] ?? ""),
|
|
665
|
+
autoExport: autoExportFromDict(data["auto_export"]),
|
|
666
|
+
secret: data["secret"] ?? null
|
|
642
667
|
};
|
|
643
668
|
}
|
|
644
669
|
var WebhooksResource = class {
|
|
@@ -646,12 +671,20 @@ var WebhooksResource = class {
|
|
|
646
671
|
this._t = _t;
|
|
647
672
|
}
|
|
648
673
|
_t;
|
|
649
|
-
async register(url, events) {
|
|
674
|
+
async register(url, events, autoExport) {
|
|
650
675
|
const invalid = events.filter((e) => !VALID_EVENTS.has(e));
|
|
651
676
|
if (invalid.length > 0) {
|
|
652
677
|
throw new Error(`Unknown event types: ${invalid.join(", ")}. Valid: ${[...VALID_EVENTS].join(", ")}`);
|
|
653
678
|
}
|
|
654
|
-
const
|
|
679
|
+
const body = { url, events };
|
|
680
|
+
if (autoExport) {
|
|
681
|
+
body["auto_export"] = {
|
|
682
|
+
connector_id: autoExport.connectorId,
|
|
683
|
+
format: autoExport.format,
|
|
684
|
+
...autoExport.prefix !== void 0 ? { prefix: autoExport.prefix } : {}
|
|
685
|
+
};
|
|
686
|
+
}
|
|
687
|
+
const data = await this._t.post("/webhooks", body);
|
|
655
688
|
return webhookFromDict(data);
|
|
656
689
|
}
|
|
657
690
|
async list() {
|
|
@@ -673,6 +706,9 @@ var Connector = class _Connector {
|
|
|
673
706
|
lastTestedAt;
|
|
674
707
|
lastUsedAt;
|
|
675
708
|
createdAt;
|
|
709
|
+
/** Non-secret config fields (bucket/region, folder_id, index_name, etc.) —
|
|
710
|
+
* credentials are never included. */
|
|
711
|
+
config;
|
|
676
712
|
constructor(data) {
|
|
677
713
|
this.id = data.id;
|
|
678
714
|
this.name = data.name;
|
|
@@ -681,6 +717,7 @@ var Connector = class _Connector {
|
|
|
681
717
|
this.lastTestedAt = data.lastTestedAt;
|
|
682
718
|
this.lastUsedAt = data.lastUsedAt;
|
|
683
719
|
this.createdAt = data.createdAt;
|
|
720
|
+
this.config = data.config ?? {};
|
|
684
721
|
}
|
|
685
722
|
static fromDict(data) {
|
|
686
723
|
return new _Connector({
|
|
@@ -690,7 +727,8 @@ var Connector = class _Connector {
|
|
|
690
727
|
active: Boolean(data["active"] ?? true),
|
|
691
728
|
lastTestedAt: data["last_tested_at"] ?? null,
|
|
692
729
|
lastUsedAt: data["last_used_at"] ?? null,
|
|
693
|
-
createdAt: String(data["created_at"] ?? "")
|
|
730
|
+
createdAt: String(data["created_at"] ?? ""),
|
|
731
|
+
config: data["config"] ?? {}
|
|
694
732
|
});
|
|
695
733
|
}
|
|
696
734
|
toString() {
|
|
@@ -1082,7 +1120,7 @@ var FlexOrchReader = class {
|
|
|
1082
1120
|
};
|
|
1083
1121
|
|
|
1084
1122
|
// src/index.ts
|
|
1085
|
-
var version = "0.3.
|
|
1123
|
+
var version = "0.3.3";
|
|
1086
1124
|
export {
|
|
1087
1125
|
AuthError,
|
|
1088
1126
|
Connector,
|