@ekairos/dataset 1.22.39-beta.development.0 → 1.22.40-beta.development.0

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.
Files changed (44) hide show
  1. package/README.md +347 -0
  2. package/dist/builder/instructions.d.ts +6 -0
  3. package/dist/builder/instructions.d.ts.map +1 -0
  4. package/dist/builder/instructions.js +46 -0
  5. package/dist/builder/instructions.js.map +1 -0
  6. package/dist/builder/materialize.d.ts +16 -0
  7. package/dist/builder/materialize.d.ts.map +1 -0
  8. package/dist/builder/materialize.js +205 -0
  9. package/dist/builder/materialize.js.map +1 -0
  10. package/dist/builder/persistence.d.ts +18 -0
  11. package/dist/builder/persistence.d.ts.map +1 -0
  12. package/dist/builder/persistence.js +147 -0
  13. package/dist/builder/persistence.js.map +1 -0
  14. package/dist/builder/schemaInference.d.ts +4 -0
  15. package/dist/builder/schemaInference.d.ts.map +1 -0
  16. package/dist/builder/schemaInference.js +69 -0
  17. package/dist/builder/schemaInference.js.map +1 -0
  18. package/dist/builder/sourceRows.d.ts +8 -0
  19. package/dist/builder/sourceRows.d.ts.map +1 -0
  20. package/dist/builder/sourceRows.js +62 -0
  21. package/dist/builder/sourceRows.js.map +1 -0
  22. package/dist/builder/types.d.ts +130 -0
  23. package/dist/builder/types.d.ts.map +1 -0
  24. package/dist/builder/types.js +3 -0
  25. package/dist/builder/types.js.map +1 -0
  26. package/dist/dataset.d.ts +3 -66
  27. package/dist/dataset.d.ts.map +1 -1
  28. package/dist/dataset.js +85 -499
  29. package/dist/dataset.js.map +1 -1
  30. package/dist/file/file-dataset.agent.d.ts.map +1 -1
  31. package/dist/file/file-dataset.agent.js +3 -1
  32. package/dist/file/file-dataset.agent.js.map +1 -1
  33. package/dist/materializeDataset.tool.d.ts +18 -5
  34. package/dist/materializeDataset.tool.d.ts.map +1 -1
  35. package/dist/materializeDataset.tool.js +14 -4
  36. package/dist/materializeDataset.tool.js.map +1 -1
  37. package/dist/schema.d.ts +1 -10
  38. package/dist/schema.d.ts.map +1 -1
  39. package/dist/schema.js +1 -12
  40. package/dist/schema.js.map +1 -1
  41. package/dist/transform/transform-dataset.agent.d.ts.map +1 -1
  42. package/dist/transform/transform-dataset.agent.js +3 -1
  43. package/dist/transform/transform-dataset.agent.js.map +1 -1
  44. package/package.json +5 -4
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultTextSourceName = defaultTextSourceName;
4
+ exports.getDatasetDb = getDatasetDb;
5
+ exports.createOrUpdateDatasetMetadata = createOrUpdateDatasetMetadata;
6
+ exports.materializeRowsToDataset = materializeRowsToDataset;
7
+ exports.uploadInlineTextSource = uploadInlineTextSource;
8
+ exports.finalizeBuildResult = finalizeBuildResult;
9
+ const service_1 = require("../service");
10
+ const schema_1 = require("../schema");
11
+ const schemaInference_1 = require("./schemaInference");
12
+ const sourceRows_1 = require("./sourceRows");
13
+ function defaultTextSourceName(source) {
14
+ if (source.name?.trim())
15
+ return source.name.trim();
16
+ const mimeType = String(source.mimeType ?? "").toLowerCase();
17
+ if (mimeType.includes("csv"))
18
+ return "source.csv";
19
+ if (mimeType.includes("json"))
20
+ return "source.json";
21
+ if (mimeType.includes("yaml") || mimeType.includes("yml"))
22
+ return "source.yaml";
23
+ return "source.txt";
24
+ }
25
+ async function getDatasetDb(runtime) {
26
+ const scoped = await runtime.use(schema_1.datasetDomain);
27
+ return scoped.db;
28
+ }
29
+ async function createOrUpdateDatasetMetadata(runtime, params) {
30
+ const db = await getDatasetDb(runtime);
31
+ const service = new service_1.DatasetService(db);
32
+ const result = await service.createDataset({
33
+ id: params.datasetId,
34
+ sandboxId: params.sandboxId,
35
+ title: params.title ?? params.datasetId,
36
+ instructions: params.instructions ?? "",
37
+ sources: params.sources,
38
+ sourceKinds: params.sourceKinds,
39
+ analysis: params.analysis,
40
+ schema: params.schema,
41
+ status: params.status ?? "building",
42
+ organizationId: runtime.env.orgId,
43
+ });
44
+ if (!result.ok) {
45
+ throw new Error(result.error);
46
+ }
47
+ }
48
+ async function materializeRowsToDataset(runtime, params) {
49
+ if (params.first && params.rows.length > 1) {
50
+ throw new Error("dataset_first_expected_zero_or_one_row");
51
+ }
52
+ const resolvedSchema = params.schema ??
53
+ (0, schemaInference_1.inferDatasetSchema)(params.rows, params.title ? `${params.title}Row` : "DatasetRow", params.title ? `One row for ${params.title}` : "One dataset row");
54
+ (0, schemaInference_1.validateRows)(params.rows, resolvedSchema);
55
+ await createOrUpdateDatasetMetadata(runtime, {
56
+ datasetId: params.datasetId,
57
+ sandboxId: params.sandboxId,
58
+ title: params.title,
59
+ instructions: params.instructions,
60
+ sources: params.sources,
61
+ sourceKinds: params.sourceKinds,
62
+ analysis: params.analysis,
63
+ schema: resolvedSchema,
64
+ status: "building",
65
+ });
66
+ const db = await getDatasetDb(runtime);
67
+ const service = new service_1.DatasetService(db);
68
+ const uploadResult = await service.uploadDatasetOutputFile({
69
+ datasetId: params.datasetId,
70
+ fileBuffer: Buffer.from((0, sourceRows_1.rowsToJsonl)(params.rows), "utf-8"),
71
+ });
72
+ if (!uploadResult.ok) {
73
+ throw new Error(uploadResult.error);
74
+ }
75
+ const statusResult = await service.updateDatasetStatus({
76
+ datasetId: params.datasetId,
77
+ status: "completed",
78
+ calculatedTotalRows: params.rows.length,
79
+ actualGeneratedRowCount: params.rows.length,
80
+ });
81
+ if (!statusResult.ok) {
82
+ throw new Error(statusResult.error);
83
+ }
84
+ return params.datasetId;
85
+ }
86
+ async function uploadInlineTextSource(runtime, datasetId, source) {
87
+ const db = await getDatasetDb(runtime);
88
+ const fileName = defaultTextSourceName(source);
89
+ const storagePath = `/dataset/source/${datasetId}/${Date.now()}-${fileName}`;
90
+ const uploadResult = await db.storage.uploadFile(storagePath, Buffer.from(source.text, "utf-8"), {
91
+ contentType: source.mimeType ?? "text/plain",
92
+ contentDisposition: fileName,
93
+ });
94
+ const fileId = uploadResult?.data?.id;
95
+ if (!fileId) {
96
+ throw new Error("dataset_text_source_upload_failed");
97
+ }
98
+ return fileId;
99
+ }
100
+ async function finalizeBuildResult(runtime, datasetId, withFirst) {
101
+ const db = await getDatasetDb(runtime);
102
+ const service = new service_1.DatasetService(db);
103
+ const datasetResult = await service.getDatasetById(datasetId);
104
+ if (!datasetResult.ok) {
105
+ throw new Error(datasetResult.error);
106
+ }
107
+ const previewResult = await service.previewRows(datasetId, 20);
108
+ if (!previewResult.ok) {
109
+ throw new Error(previewResult.error);
110
+ }
111
+ const reader = {
112
+ async read(cursorOrParams, limit) {
113
+ const params = typeof cursorOrParams === "object" && cursorOrParams !== null
114
+ ? cursorOrParams
115
+ : { cursor: cursorOrParams, limit };
116
+ const rowsResult = await service.readRows({
117
+ datasetId,
118
+ cursor: params.cursor,
119
+ limit: params.limit,
120
+ });
121
+ if (!rowsResult.ok) {
122
+ throw new Error(rowsResult.error);
123
+ }
124
+ return rowsResult.data;
125
+ },
126
+ };
127
+ if (!withFirst) {
128
+ return {
129
+ datasetId,
130
+ dataset: datasetResult.data,
131
+ previewRows: previewResult.data,
132
+ reader,
133
+ };
134
+ }
135
+ const firstResult = await service.readOne(datasetId);
136
+ if (!firstResult.ok) {
137
+ throw new Error(firstResult.error);
138
+ }
139
+ return {
140
+ datasetId,
141
+ dataset: datasetResult.data,
142
+ previewRows: previewResult.data,
143
+ reader,
144
+ firstRow: firstResult.data,
145
+ };
146
+ }
147
+ //# sourceMappingURL=persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/builder/persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { DatasetSchemaInput } from "./types";
2
+ export declare function inferDatasetSchema(rows: any[], title?: string, description?: string): DatasetSchemaInput;
3
+ export declare function validateRows(rows: any[], schema: DatasetSchemaInput): void;
4
+ //# sourceMappingURL=schemaInference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaInference.d.ts","sourceRoot":"","sources":["../../src/builder/schemaInference.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAmBjD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,GAAG,EAAE,EACX,KAAK,SAAe,EACpB,WAAW,SAAoB,GAC9B,kBAAkB,CAkCpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,kBAAkB,QASnE"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.inferDatasetSchema = inferDatasetSchema;
7
+ exports.validateRows = validateRows;
8
+ const ajv_1 = __importDefault(require("ajv"));
9
+ const ajv = new ajv_1.default({ allErrors: true, strict: false });
10
+ function inferJsonSchemaType(value) {
11
+ if (value === null)
12
+ return { type: "null" };
13
+ if (Array.isArray(value))
14
+ return { type: "array" };
15
+ switch (typeof value) {
16
+ case "number":
17
+ return { type: "number" };
18
+ case "boolean":
19
+ return { type: "boolean" };
20
+ case "object":
21
+ return { type: "object", additionalProperties: true };
22
+ default:
23
+ return { type: "string" };
24
+ }
25
+ }
26
+ function inferDatasetSchema(rows, title = "DatasetRow", description = "One dataset row") {
27
+ const properties = {};
28
+ const required = [];
29
+ const keys = new Set();
30
+ for (const row of rows) {
31
+ if (!row || typeof row !== "object")
32
+ continue;
33
+ for (const key of Object.keys(row)) {
34
+ keys.add(key);
35
+ }
36
+ }
37
+ for (const key of keys) {
38
+ const values = rows.map((row) => (row && typeof row === "object" ? row[key] : undefined));
39
+ const firstDefined = values.find((value) => value !== undefined);
40
+ properties[key] = {
41
+ ...inferJsonSchemaType(firstDefined),
42
+ description: `${key} value`,
43
+ };
44
+ if (values.every((value) => value !== undefined)) {
45
+ required.push(key);
46
+ }
47
+ }
48
+ return {
49
+ title,
50
+ description,
51
+ schema: {
52
+ type: "object",
53
+ additionalProperties: false,
54
+ properties,
55
+ required,
56
+ },
57
+ };
58
+ }
59
+ function validateRows(rows, schema) {
60
+ const validator = ajv.compile(schema.schema);
61
+ for (const row of rows) {
62
+ const valid = validator(row);
63
+ if (!valid) {
64
+ const error = validator.errors?.map((entry) => entry.message || "validation_error").join("; ");
65
+ throw new Error(error || "dataset_schema_validation_failed");
66
+ }
67
+ }
68
+ }
69
+ //# sourceMappingURL=schemaInference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaInference.js","sourceRoot":"","sources":["../../src/builder/schemaInference.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { DomainSchemaResult } from "@ekairos/domain";
2
+ export declare function rowsToJsonl(rows: any[]): string;
3
+ export declare function normalizeQueryRows(result: any): any[];
4
+ export declare function getDomainDescriptor(domain: DomainSchemaResult): {
5
+ domainPackageName?: string | undefined;
6
+ domainName: string;
7
+ };
8
+ //# sourceMappingURL=sourceRows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceRows.d.ts","sourceRoot":"","sources":["../../src/builder/sourceRows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,CAU/C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,CAmCrD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,kBAAkB;;;EAS7D"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rowsToJsonl = rowsToJsonl;
4
+ exports.normalizeQueryRows = normalizeQueryRows;
5
+ exports.getDomainDescriptor = getDomainDescriptor;
6
+ function rowsToJsonl(rows) {
7
+ return rows
8
+ .map((row) => JSON.stringify({
9
+ type: "row",
10
+ data: row,
11
+ }))
12
+ .join("\n")
13
+ .concat(rows.length > 0 ? "\n" : "");
14
+ }
15
+ function normalizeQueryRows(result) {
16
+ if (!result || typeof result !== "object")
17
+ return [];
18
+ const entries = Object.entries(result);
19
+ if (entries.length === 0)
20
+ return [];
21
+ if (entries.length === 1) {
22
+ const [key, value] = entries[0];
23
+ if (Array.isArray(value)) {
24
+ return value.map((row) => (row && typeof row === "object" ? row : { value: row }));
25
+ }
26
+ if (value && typeof value === "object") {
27
+ return [value];
28
+ }
29
+ return [{ [key]: value }];
30
+ }
31
+ const rows = [];
32
+ for (const [key, value] of entries) {
33
+ if (Array.isArray(value)) {
34
+ for (const row of value) {
35
+ if (row && typeof row === "object") {
36
+ rows.push({ __entity: key, ...row });
37
+ }
38
+ else {
39
+ rows.push({ __entity: key, value: row });
40
+ }
41
+ }
42
+ continue;
43
+ }
44
+ if (value && typeof value === "object") {
45
+ rows.push({ __entity: key, ...value });
46
+ continue;
47
+ }
48
+ rows.push({ __entity: key, value });
49
+ }
50
+ return rows;
51
+ }
52
+ function getDomainDescriptor(domain) {
53
+ const meta = domain?.meta ?? {};
54
+ const context = typeof domain?.context === "function" ? domain.context() : {};
55
+ const name = String(meta?.name ?? context?.name ?? "domain");
56
+ const packageName = String(meta?.packageName ?? "");
57
+ return {
58
+ domainName: name,
59
+ ...(packageName ? { domainPackageName: packageName } : {}),
60
+ };
61
+ }
62
+ //# sourceMappingURL=sourceRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceRows.js","sourceRoot":"","sources":["../../src/builder/sourceRows.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ import type { InstaQLParams, ValidQuery } from "@instantdb/core";
2
+ import type { DomainInstantSchema, DomainSchemaResult } from "@ekairos/domain";
3
+ import type { EkairosRuntime, RuntimeForDomain } from "@ekairos/domain/runtime";
4
+ import type { ContextReactor } from "@ekairos/events";
5
+ import { datasetDomain } from "../schema";
6
+ export type DatasetQuerySourceInput<D extends DomainSchemaResult = DomainSchemaResult> = {
7
+ query: InstaQLParams<DomainInstantSchema<D>>;
8
+ title?: string;
9
+ explanation?: string;
10
+ domain: D;
11
+ };
12
+ export type DatasetFileSourceInput = {
13
+ fileId: string;
14
+ description?: string;
15
+ };
16
+ export type DatasetTextSourceInput = {
17
+ text: string;
18
+ mimeType?: string;
19
+ name?: string;
20
+ description?: string;
21
+ };
22
+ export type DatasetExistingSourceInput = {
23
+ datasetId: string;
24
+ description?: string;
25
+ };
26
+ export type DatasetFileSource = {
27
+ kind: "file";
28
+ } & DatasetFileSourceInput;
29
+ export type DatasetTextSource = {
30
+ kind: "text";
31
+ } & DatasetTextSourceInput;
32
+ export type DatasetExistingSource = {
33
+ kind: "dataset";
34
+ } & DatasetExistingSourceInput;
35
+ export type DatasetSourceInput = DatasetFileSourceInput | DatasetTextSourceInput | DatasetExistingSourceInput | DatasetFileSource | DatasetTextSource | DatasetExistingSource;
36
+ export type DatasetSchemaInput = {
37
+ title?: string;
38
+ description?: string;
39
+ schema: any;
40
+ };
41
+ export type DatasetOutput = "rows" | "object";
42
+ export type DatasetMode = "auto" | "schema";
43
+ export type DatasetBuilderOptions = {
44
+ datasetId?: string;
45
+ };
46
+ export type DatasetBuildOptions = {
47
+ datasetId?: string;
48
+ };
49
+ export type InternalSource = DatasetFileSource | DatasetTextSource | DatasetExistingSource | ({
50
+ kind: "query";
51
+ } & DatasetQuerySourceInput);
52
+ export type DatasetReaderResult = {
53
+ rows: any[];
54
+ cursor: number;
55
+ done: boolean;
56
+ };
57
+ export type DatasetReader = {
58
+ read(cursor?: number, limit?: number): Promise<DatasetReaderResult>;
59
+ read(params?: {
60
+ cursor?: number;
61
+ limit?: number;
62
+ }): Promise<DatasetReaderResult>;
63
+ };
64
+ export type DatasetBuildResult = {
65
+ datasetId: string;
66
+ dataset: any;
67
+ previewRows: any[];
68
+ reader: DatasetReader;
69
+ object?: any | null;
70
+ firstRow?: any | null;
71
+ };
72
+ export type DatasetRuntimeEnv = {
73
+ orgId: string;
74
+ };
75
+ export type AnyDatasetRuntime = EkairosRuntime<any, any, any>;
76
+ export type DatasetRuntimeHandle<Runtime extends AnyDatasetRuntime> = RuntimeForDomain<Runtime, typeof datasetDomain>;
77
+ export type CompatibleSourceDomain<Runtime extends AnyDatasetRuntime, D extends DomainSchemaResult> = RuntimeForDomain<Runtime, D> extends never ? never : D;
78
+ export type DatasetQuerySourceOptions<D extends DomainSchemaResult, Q extends ValidQuery<Q, DomainInstantSchema<D>>> = {
79
+ query: Q;
80
+ title?: string;
81
+ explanation?: string;
82
+ };
83
+ export type DatasetBuilderState<Runtime extends AnyDatasetRuntime> = {
84
+ runtime: Runtime;
85
+ env: Runtime["env"] & DatasetRuntimeEnv;
86
+ sources: InternalSource[];
87
+ title?: string;
88
+ sandboxId?: string;
89
+ outputSchema?: DatasetSchemaInput;
90
+ output: DatasetOutput;
91
+ inferSchema: boolean;
92
+ instructions?: string;
93
+ reactor?: ContextReactor<any, any>;
94
+ first: boolean;
95
+ };
96
+ export type MaterializeRowsParams = {
97
+ datasetId: string;
98
+ sandboxId?: string;
99
+ title?: string;
100
+ instructions?: string;
101
+ sources: any[];
102
+ sourceKinds: string[];
103
+ analysis?: any;
104
+ rows: any[];
105
+ schema?: DatasetSchemaInput;
106
+ inferSchema?: boolean;
107
+ first?: boolean;
108
+ };
109
+ export type DatasetBuilder<Runtime extends AnyDatasetRuntime> = {
110
+ readonly datasetId: string;
111
+ fromFile(source: DatasetFileSourceInput): DatasetBuilder<Runtime>;
112
+ fromText(source: DatasetTextSourceInput): DatasetBuilder<Runtime>;
113
+ fromDataset(source: DatasetExistingSourceInput): DatasetBuilder<Runtime>;
114
+ from(...sources: DatasetSourceInput[]): DatasetBuilder<Runtime>;
115
+ fromQuery<D extends DomainSchemaResult, Q extends ValidQuery<Q, DomainInstantSchema<D>>>(domain: D & CompatibleSourceDomain<Runtime, D>, source: DatasetQuerySourceOptions<D, Q>): DatasetBuilder<Runtime>;
116
+ title(title: string): DatasetBuilder<Runtime>;
117
+ sandbox(input: {
118
+ sandboxId: string;
119
+ }): DatasetBuilder<Runtime>;
120
+ schema(schema: DatasetSchemaInput): DatasetBuilder<Runtime>;
121
+ inferSchema(): DatasetBuilder<Runtime>;
122
+ auto(): DatasetBuilder<Runtime>;
123
+ asRows(): DatasetBuilder<Runtime>;
124
+ asObject(): DatasetBuilder<Runtime>;
125
+ instructions(instructions: string): DatasetBuilder<Runtime>;
126
+ reactor(reactor: ContextReactor<any, any>): DatasetBuilder<Runtime>;
127
+ first(): DatasetBuilder<Runtime>;
128
+ build(options?: DatasetBuildOptions): Promise<DatasetBuildResult>;
129
+ };
130
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/builder/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/builder/types.ts"],"names":[],"mappings":""}
package/dist/dataset.d.ts CHANGED
@@ -1,67 +1,4 @@
1
- import type { DomainSchemaResult } from "@ekairos/domain";
2
- import type { ContextReactor } from "@ekairos/events";
3
- export type DatasetQuerySourceInput<D extends DomainSchemaResult = DomainSchemaResult> = {
4
- query: Record<string, any>;
5
- title?: string;
6
- explanation?: string;
7
- domain: D;
8
- };
9
- export type DatasetFileSourceInput = {
10
- fileId: string;
11
- description?: string;
12
- };
13
- export type DatasetTextSourceInput = {
14
- text: string;
15
- mimeType?: string;
16
- name?: string;
17
- description?: string;
18
- };
19
- export type DatasetExistingSourceInput = {
20
- datasetId: string;
21
- description?: string;
22
- };
23
- export type DatasetSchemaInput = {
24
- title?: string;
25
- description?: string;
26
- schema: any;
27
- };
28
- export type DatasetReaderResult = {
29
- rows: any[];
30
- cursor: number;
31
- done: boolean;
32
- };
33
- export type DatasetReader = {
34
- read(cursor?: number, limit?: number): Promise<DatasetReaderResult>;
35
- read(params?: {
36
- cursor?: number;
37
- limit?: number;
38
- }): Promise<DatasetReaderResult>;
39
- };
40
- export type DatasetBuildResult = {
41
- datasetId: string;
42
- dataset: any;
43
- previewRows: any[];
44
- reader: DatasetReader;
45
- firstRow?: any | null;
46
- };
47
- export declare function dataset<Env extends {
48
- orgId: string;
49
- }>(env: Env): {
50
- fromFile(source: DatasetFileSourceInput): /*elided*/ any;
51
- fromText(source: DatasetTextSourceInput): /*elided*/ any;
52
- fromDataset(source: DatasetExistingSourceInput): /*elided*/ any;
53
- fromQuery<D extends DomainSchemaResult>(domain: D, source: Omit<DatasetQuerySourceInput<D>, "domain">): /*elided*/ any;
54
- title(title: string): /*elided*/ any;
55
- sandbox(input: {
56
- sandboxId: string;
57
- }): /*elided*/ any;
58
- schema(schema: DatasetSchemaInput): /*elided*/ any;
59
- inferSchema(): /*elided*/ any;
60
- instructions(instructions: string): /*elided*/ any;
61
- reactor(reactor: ContextReactor<any, any>): /*elided*/ any;
62
- first(): /*elided*/ any;
63
- build(options?: {
64
- datasetId?: string;
65
- }): Promise<DatasetBuildResult>;
66
- };
1
+ import type { AnyDatasetRuntime, DatasetBuilder, DatasetBuilderOptions, DatasetRuntimeHandle } from "./builder/types";
2
+ export type { AnyDatasetRuntime, CompatibleSourceDomain, DatasetBuilder, DatasetBuilderOptions, DatasetBuildOptions, DatasetBuildResult, DatasetExistingSource, DatasetExistingSourceInput, DatasetFileSource, DatasetFileSourceInput, DatasetMode, DatasetOutput, DatasetQuerySourceInput, DatasetReader, DatasetReaderResult, DatasetRuntimeEnv, DatasetRuntimeHandle, DatasetSchemaInput, DatasetTextSource, DatasetSourceInput, DatasetTextSourceInput, } from "./builder/types";
3
+ export declare function dataset<Runtime extends AnyDatasetRuntime>(runtime: Runtime & DatasetRuntimeHandle<Runtime>, options?: DatasetBuilderOptions): DatasetBuilder<Runtime>;
67
4
  //# sourceMappingURL=dataset.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.d.ts","sourceRoot":"","sources":["../src/dataset.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAMrD,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,IAAI;IACvF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,CAAC,CAAA;CACV,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,GAAG,CAAA;CACZ,CAAA;AAQD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,GAAG,EAAE,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACnE,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;CACjF,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,GAAG,CAAA;IACZ,WAAW,EAAE,GAAG,EAAE,CAAA;IAClB,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;CACtB,CAAA;AA4lBD,wBAAgB,OAAO,CAAC,GAAG,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,EAAE,GAAG;qBAS1C,sBAAsB;qBAKtB,sBAAsB;wBAKnB,0BAA0B;cAKpC,CAAC,SAAS,kBAAkB,UAC5B,CAAC,UACD,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;iBAMvC,MAAM;mBAKJ;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;mBAKrB,kBAAkB;;+BAYN,MAAM;qBAKhB,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC;;oBAUnB;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;EA6C7E"}
1
+ {"version":3,"file":"dataset.d.ts","sourceRoot":"","sources":["../src/dataset.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,iBAAiB,EAEjB,cAAc,EACd,qBAAqB,EASrB,oBAAoB,EAKrB,MAAM,iBAAiB,CAAA;AAExB,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,iBAAiB,CAAA;AAExB,wBAAgB,OAAO,CAAC,OAAO,SAAS,iBAAiB,EACvD,OAAO,EAAE,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,EAChD,OAAO,GAAE,qBAA0B,GAClC,cAAc,CAAC,OAAO,CAAC,CAkLzB"}