@helix-tools/sdk-typescript 1.2.2 → 1.2.8

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.
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Data Analysis Module for Helix Connect Platform
3
+ *
4
+ * Provides schema inference and field emptiness statistics for NDJSON datasets.
5
+ */
6
+ /**
7
+ * Result of dataset analysis.
8
+ */
9
+ export interface AnalysisResult {
10
+ /** JSON Schema inferred from sampled records */
11
+ schema: Record<string, any>;
12
+ /** Map of field names to empty/missing percentages */
13
+ fieldEmptiness: Record<string, number>;
14
+ /** Total number of records analyzed */
15
+ recordCount: number;
16
+ /** Number of records that failed to parse */
17
+ analysisErrors: number;
18
+ }
19
+ /**
20
+ * Options for data analysis.
21
+ */
22
+ export interface AnalysisOptions {
23
+ /** Number of records to sample for schema inference (default: 1000, 0 = all) */
24
+ schemaSampleLimit?: number;
25
+ }
26
+ /**
27
+ * Default analysis options.
28
+ */
29
+ export declare const DEFAULT_ANALYSIS_OPTIONS: AnalysisOptions;
30
+ /**
31
+ * Check if a value is considered empty.
32
+ *
33
+ * Empty values include: null, undefined, empty string, empty array, empty object,
34
+ * and strings containing only whitespace.
35
+ */
36
+ export declare function isEmptyValue(value: any): boolean;
37
+ /**
38
+ * Recursively collect field paths and their presence status.
39
+ *
40
+ * Handles nested objects using dot notation (e.g., "address.city").
41
+ *
42
+ * @param obj - The object to analyze
43
+ * @param prefix - Current field path prefix
44
+ * @returns Tuple of [allFields, presentNonEmptyFields]
45
+ */
46
+ export declare function getFieldStatus(obj: Record<string, any>, prefix: string): {
47
+ allFields: Set<string>;
48
+ presentFields: Set<string>;
49
+ };
50
+ /**
51
+ * Analyze an NDJSON file for schema and field emptiness statistics.
52
+ *
53
+ * This method efficiently streams through the file to:
54
+ * 1. Infer JSON schema by sampling multiple records (default: first 1000)
55
+ * 2. Calculate the percentage of records where each field is missing or empty
56
+ *
57
+ * Memory efficiency is achieved by processing line-by-line rather than
58
+ * loading the entire file into memory.
59
+ *
60
+ * @param filePath - Path to the NDJSON file to analyze
61
+ * @param options - Analysis options
62
+ * @returns Promise resolving to analysis results
63
+ */
64
+ export declare function analyzeData(filePath: string, options?: AnalysisOptions): Promise<AnalysisResult>;
65
+ //# sourceMappingURL=analyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,sDAAsD;IACtD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,eAEtC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAchD;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,MAAM,EAAE,MAAM,GACb;IAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CAmCxD;AA4JD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,eAA0C,GAClD,OAAO,CAAC,cAAc,CAAC,CA0GzB"}
@@ -0,0 +1,337 @@
1
+ "use strict";
2
+ /**
3
+ * Data Analysis Module for Helix Connect Platform
4
+ *
5
+ * Provides schema inference and field emptiness statistics for NDJSON datasets.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.DEFAULT_ANALYSIS_OPTIONS = void 0;
42
+ exports.isEmptyValue = isEmptyValue;
43
+ exports.getFieldStatus = getFieldStatus;
44
+ exports.analyzeData = analyzeData;
45
+ const fs = __importStar(require("fs"));
46
+ const readline = __importStar(require("readline"));
47
+ /**
48
+ * Default analysis options.
49
+ */
50
+ exports.DEFAULT_ANALYSIS_OPTIONS = {
51
+ schemaSampleLimit: 1000,
52
+ };
53
+ /**
54
+ * Check if a value is considered empty.
55
+ *
56
+ * Empty values include: null, undefined, empty string, empty array, empty object,
57
+ * and strings containing only whitespace.
58
+ */
59
+ function isEmptyValue(value) {
60
+ if (value === null || value === undefined) {
61
+ return true;
62
+ }
63
+ if (typeof value === 'string' && value.trim() === '') {
64
+ return true;
65
+ }
66
+ if (Array.isArray(value) && value.length === 0) {
67
+ return true;
68
+ }
69
+ if (typeof value === 'object' && Object.keys(value).length === 0) {
70
+ return true;
71
+ }
72
+ return false;
73
+ }
74
+ /**
75
+ * Recursively collect field paths and their presence status.
76
+ *
77
+ * Handles nested objects using dot notation (e.g., "address.city").
78
+ *
79
+ * @param obj - The object to analyze
80
+ * @param prefix - Current field path prefix
81
+ * @returns Tuple of [allFields, presentNonEmptyFields]
82
+ */
83
+ function getFieldStatus(obj, prefix) {
84
+ const allFields = new Set();
85
+ const presentFields = new Set();
86
+ for (const [key, value] of Object.entries(obj)) {
87
+ const fieldPath = prefix ? `${prefix}.${key}` : key;
88
+ // Always track discovered fields
89
+ allFields.add(fieldPath);
90
+ // Only count as present if value is non-empty
91
+ if (!isEmptyValue(value)) {
92
+ presentFields.add(fieldPath);
93
+ // Recurse into nested objects
94
+ if (typeof value === 'object' && !Array.isArray(value)) {
95
+ const nested = getFieldStatus(value, fieldPath);
96
+ nested.allFields.forEach((f) => allFields.add(f));
97
+ nested.presentFields.forEach((f) => presentFields.add(f));
98
+ }
99
+ else if (Array.isArray(value) && value.length > 0) {
100
+ // For arrays of objects, analyze each item
101
+ if (typeof value[0] === 'object' && value[0] !== null) {
102
+ for (const item of value) {
103
+ if (typeof item === 'object' && item !== null) {
104
+ const nested = getFieldStatus(item, `${fieldPath}[]`);
105
+ nested.allFields.forEach((f) => allFields.add(f));
106
+ nested.presentFields.forEach((f) => presentFields.add(f));
107
+ }
108
+ }
109
+ }
110
+ }
111
+ }
112
+ }
113
+ return { allFields, presentFields };
114
+ }
115
+ /**
116
+ * Infer the JSON schema type for a value.
117
+ */
118
+ function inferType(value) {
119
+ if (value === null) {
120
+ return 'null';
121
+ }
122
+ if (typeof value === 'boolean') {
123
+ return 'boolean';
124
+ }
125
+ if (typeof value === 'number') {
126
+ return Number.isInteger(value) ? 'integer' : 'number';
127
+ }
128
+ if (typeof value === 'string') {
129
+ return 'string';
130
+ }
131
+ if (Array.isArray(value)) {
132
+ return 'array';
133
+ }
134
+ if (typeof value === 'object') {
135
+ return 'object';
136
+ }
137
+ return 'unknown';
138
+ }
139
+ /**
140
+ * Schema builder that accumulates type information from multiple records.
141
+ */
142
+ class SchemaBuilder {
143
+ constructor() {
144
+ this.properties = new Map();
145
+ }
146
+ addObject(obj) {
147
+ this.addProperties(obj, this.properties);
148
+ }
149
+ addProperties(obj, props) {
150
+ for (const [key, value] of Object.entries(obj)) {
151
+ if (!props.has(key)) {
152
+ props.set(key, {
153
+ types: new Set(),
154
+ properties: new Map(),
155
+ items: null,
156
+ });
157
+ }
158
+ const prop = props.get(key);
159
+ prop.types.add(inferType(value));
160
+ // Handle nested objects
161
+ if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
162
+ this.addProperties(value, prop.properties);
163
+ }
164
+ // Handle arrays
165
+ if (Array.isArray(value) && value.length > 0) {
166
+ if (!prop.items) {
167
+ prop.items = {
168
+ types: new Set(),
169
+ properties: new Map(),
170
+ items: null,
171
+ };
172
+ }
173
+ for (const item of value) {
174
+ prop.items.types.add(inferType(item));
175
+ if (typeof item === 'object' && item !== null && !Array.isArray(item)) {
176
+ this.addProperties(item, prop.items.properties);
177
+ }
178
+ }
179
+ }
180
+ }
181
+ }
182
+ toSchema() {
183
+ return {
184
+ type: 'object',
185
+ properties: this.propertiesToSchema(this.properties),
186
+ };
187
+ }
188
+ propertiesToSchema(props) {
189
+ const result = {};
190
+ for (const [name, prop] of props) {
191
+ const propSchema = {};
192
+ // Get types
193
+ const types = Array.from(prop.types).sort();
194
+ if (types.length === 1) {
195
+ propSchema.type = types[0];
196
+ }
197
+ else if (types.length > 1) {
198
+ propSchema.type = types;
199
+ }
200
+ // Handle nested object properties
201
+ if (prop.properties.size > 0) {
202
+ propSchema.properties = this.propertiesToSchema(prop.properties);
203
+ }
204
+ // Handle array items
205
+ if (prop.items) {
206
+ const itemSchema = {};
207
+ const itemTypes = Array.from(prop.items.types).sort();
208
+ if (itemTypes.length === 1) {
209
+ itemSchema.type = itemTypes[0];
210
+ }
211
+ else if (itemTypes.length > 1) {
212
+ itemSchema.type = itemTypes;
213
+ }
214
+ if (prop.items.properties.size > 0) {
215
+ itemSchema.properties = this.propertiesToSchema(prop.items.properties);
216
+ }
217
+ propSchema.items = itemSchema;
218
+ }
219
+ result[name] = propSchema;
220
+ }
221
+ return result;
222
+ }
223
+ }
224
+ /**
225
+ * Round a number to 2 decimal places.
226
+ */
227
+ function roundTo2Decimals(n) {
228
+ return Math.round(n * 100) / 100;
229
+ }
230
+ /**
231
+ * Sort an object by values in descending order.
232
+ */
233
+ function sortByValueDesc(obj) {
234
+ const entries = Object.entries(obj);
235
+ entries.sort((a, b) => {
236
+ if (a[1] !== b[1]) {
237
+ return b[1] - a[1]; // Descending by value
238
+ }
239
+ return a[0].localeCompare(b[0]); // Ascending by key for stability
240
+ });
241
+ return Object.fromEntries(entries);
242
+ }
243
+ /**
244
+ * Analyze an NDJSON file for schema and field emptiness statistics.
245
+ *
246
+ * This method efficiently streams through the file to:
247
+ * 1. Infer JSON schema by sampling multiple records (default: first 1000)
248
+ * 2. Calculate the percentage of records where each field is missing or empty
249
+ *
250
+ * Memory efficiency is achieved by processing line-by-line rather than
251
+ * loading the entire file into memory.
252
+ *
253
+ * @param filePath - Path to the NDJSON file to analyze
254
+ * @param options - Analysis options
255
+ * @returns Promise resolving to analysis results
256
+ */
257
+ async function analyzeData(filePath, options = exports.DEFAULT_ANALYSIS_OPTIONS) {
258
+ const schemaSampleLimit = options.schemaSampleLimit ?? 1000;
259
+ const allFields = new Set();
260
+ const fieldPresentCount = new Map();
261
+ const schemaBuilder = new SchemaBuilder();
262
+ let recordCount = 0;
263
+ let analysisErrors = 0;
264
+ console.log('📊 Analyzing dataset for schema and field statistics...');
265
+ const fileStream = fs.createReadStream(filePath, { encoding: 'utf-8' });
266
+ const rl = readline.createInterface({
267
+ input: fileStream,
268
+ crlfDelay: Infinity,
269
+ });
270
+ let lineNum = 0;
271
+ for await (const line of rl) {
272
+ lineNum++;
273
+ const trimmedLine = line.trim();
274
+ if (!trimmedLine) {
275
+ continue;
276
+ }
277
+ let record;
278
+ try {
279
+ record = JSON.parse(trimmedLine);
280
+ }
281
+ catch (e) {
282
+ analysisErrors++;
283
+ if (analysisErrors <= 5) {
284
+ console.log(` Warning: Failed to parse line ${lineNum}: ${e}`);
285
+ }
286
+ continue;
287
+ }
288
+ recordCount++;
289
+ // Infer schema from first N records for complete type coverage
290
+ if (schemaSampleLimit === 0 || recordCount <= schemaSampleLimit) {
291
+ schemaBuilder.addObject(record);
292
+ }
293
+ // Collect all fields and which are present/non-empty in this record
294
+ const { allFields: discovered, presentFields: present } = getFieldStatus(record, '');
295
+ // Track all discovered fields across all records
296
+ discovered.forEach((f) => allFields.add(f));
297
+ // Count records where each field is present and non-empty
298
+ present.forEach((f) => {
299
+ fieldPresentCount.set(f, (fieldPresentCount.get(f) ?? 0) + 1);
300
+ });
301
+ }
302
+ // Calculate emptiness: % of records where field is missing OR empty
303
+ const fieldEmptiness = {};
304
+ for (const field of allFields) {
305
+ const present = fieldPresentCount.get(field) ?? 0;
306
+ const missingOrEmpty = recordCount - present;
307
+ const percentage = recordCount > 0 ? (missingOrEmpty / recordCount) * 100 : 0;
308
+ fieldEmptiness[field] = roundTo2Decimals(percentage);
309
+ }
310
+ // Sort by emptiness percentage (highest first)
311
+ const sortedEmptiness = sortByValueDesc(fieldEmptiness);
312
+ // Build the final schema
313
+ const schema = recordCount > 0 ? schemaBuilder.toSchema() : {};
314
+ // Print summary
315
+ const nonEmptyFields = Object.values(sortedEmptiness).filter((v) => v === 0).length;
316
+ const partiallyEmpty = Object.values(sortedEmptiness).filter((v) => v > 0 && v < 100).length;
317
+ const fullyEmpty = Object.values(sortedEmptiness).filter((v) => v === 100).length;
318
+ const schemaCount = schemaSampleLimit > 0 && recordCount > schemaSampleLimit
319
+ ? schemaSampleLimit
320
+ : recordCount;
321
+ console.log(` Records analyzed: ${recordCount}`);
322
+ console.log(` Schema sampled from: ${schemaCount} records`);
323
+ console.log(` Fields discovered: ${Object.keys(sortedEmptiness).length}`);
324
+ console.log(` - Complete (0% empty): ${nonEmptyFields}`);
325
+ console.log(` - Partial (1-99% empty): ${partiallyEmpty}`);
326
+ console.log(` - Empty (100% empty): ${fullyEmpty}`);
327
+ if (analysisErrors > 0) {
328
+ console.log(` Parse errors: ${analysisErrors}`);
329
+ }
330
+ return {
331
+ schema,
332
+ fieldEmptiness: sortedEmptiness,
333
+ recordCount,
334
+ analysisErrors,
335
+ };
336
+ }
337
+ //# sourceMappingURL=analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { AnalysisResult } from './analyzer';
2
+ import type { Dataset } from './producer';
3
+ export interface DatasetPayloadParams {
4
+ datasetName: string;
5
+ description: string;
6
+ category: string;
7
+ dataFreshness: string;
8
+ s3Key: string;
9
+ finalSize: number;
10
+ bucketName: string;
11
+ customerId: string;
12
+ metadata: Record<string, any>;
13
+ analysis?: AnalysisResult | null;
14
+ overrides?: Record<string, any> | null;
15
+ }
16
+ export declare function buildDatasetPayload(params: DatasetPayloadParams): Dataset;
17
+ //# sourceMappingURL=datasetSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetSchema.d.ts","sourceRoot":"","sources":["../src/datasetSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAmE1C,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;CACxC;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CA0EzE"}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildDatasetPayload = buildDatasetPayload;
4
+ const slugRegex = /[^a-z0-9-]+/g;
5
+ const DEFAULT_PRICING = {
6
+ basic: { amount: 0, currency: 'USD', interval: 'monthly' },
7
+ professional: { amount: 0, currency: 'USD', interval: 'monthly' },
8
+ enterprise: { amount: 0, currency: 'USD', interval: 'monthly' },
9
+ };
10
+ const DEFAULT_STATS = {
11
+ subscriber_count: 0,
12
+ download_count: 0,
13
+ download_count_7d: 0,
14
+ download_count_30d: 0,
15
+ view_count: 0,
16
+ last_downloaded_at: null,
17
+ avg_download_size_mb: 0,
18
+ };
19
+ function clone(value) {
20
+ return JSON.parse(JSON.stringify(value));
21
+ }
22
+ function defaultValidation(recordCount) {
23
+ return {
24
+ validated: false,
25
+ validation_errors: [],
26
+ row_count: recordCount,
27
+ data_quality_score: 0,
28
+ };
29
+ }
30
+ function slugify(value) {
31
+ const cleaned = value.toLowerCase().replace(slugRegex, '-').replace(/^-+|-+$/g, '');
32
+ return cleaned || 'dataset';
33
+ }
34
+ function generateDatasetId(customerId, datasetName, explicitId) {
35
+ if (explicitId && explicitId.trim().length > 0) {
36
+ return explicitId;
37
+ }
38
+ const timestamp = new Date().toISOString().replace(/[-:TZ.]/g, '').slice(0, 14);
39
+ return `${customerId}-${slugify(datasetName)}-${timestamp}`;
40
+ }
41
+ function deepMerge(base, overrides) {
42
+ if (!overrides) {
43
+ return base;
44
+ }
45
+ for (const [key, value] of Object.entries(overrides)) {
46
+ if (value &&
47
+ typeof value === 'object' &&
48
+ !Array.isArray(value) &&
49
+ typeof base[key] === 'object' &&
50
+ base[key] !== null &&
51
+ !Array.isArray(base[key])) {
52
+ base[key] = deepMerge({ ...base[key] }, value);
53
+ }
54
+ else {
55
+ base[key] = value;
56
+ }
57
+ }
58
+ return base;
59
+ }
60
+ function buildDatasetPayload(params) {
61
+ const { datasetName, description, category, dataFreshness, s3Key, finalSize, bucketName, customerId } = params;
62
+ const analysis = params.analysis ?? null;
63
+ const overrides = params.overrides ? clone(params.overrides) : null;
64
+ let explicitId;
65
+ if (overrides) {
66
+ if (typeof overrides._id === 'string' && overrides._id.trim()) {
67
+ explicitId = overrides._id;
68
+ delete overrides._id;
69
+ }
70
+ else if (typeof overrides.id === 'string' && overrides.id.trim()) {
71
+ explicitId = overrides.id;
72
+ delete overrides.id;
73
+ }
74
+ }
75
+ const datasetId = generateDatasetId(customerId, datasetName, explicitId);
76
+ const now = new Date();
77
+ const nowIso = now.toISOString();
78
+ const version = now.toISOString().slice(0, 10);
79
+ const metadataPayload = { ...(params.metadata || {}) };
80
+ if (!metadataPayload.file_format) {
81
+ metadataPayload.file_format = 'json';
82
+ }
83
+ if (!metadataPayload.encoding) {
84
+ metadataPayload.encoding = 'utf-8';
85
+ }
86
+ const recordCount = analysis?.recordCount ?? 0;
87
+ const schema = analysis?.schema ?? {};
88
+ const fieldEmptiness = analysis?.fieldEmptiness ?? {};
89
+ metadataPayload.schema = schema;
90
+ metadataPayload.field_emptiness = fieldEmptiness;
91
+ metadataPayload.record_count = recordCount;
92
+ if (analysis && analysis.analysisErrors > 0) {
93
+ metadataPayload.analysis_errors = analysis.analysisErrors;
94
+ }
95
+ const dataset = {
96
+ _id: datasetId,
97
+ id: datasetId,
98
+ name: datasetName,
99
+ description,
100
+ producer_id: customerId,
101
+ category,
102
+ data_freshness: dataFreshness,
103
+ visibility: 'private',
104
+ status: 'active',
105
+ s3_key: s3Key,
106
+ s3_bucket: bucketName,
107
+ size_bytes: finalSize,
108
+ record_count: recordCount,
109
+ version,
110
+ version_notes: '',
111
+ parent_dataset_id: null,
112
+ is_latest_version: true,
113
+ metadata: metadataPayload,
114
+ schema,
115
+ validation: defaultValidation(recordCount),
116
+ tags: [],
117
+ pricing: clone(DEFAULT_PRICING),
118
+ stats: clone(DEFAULT_STATS),
119
+ last_updated: nowIso,
120
+ created_at: nowIso,
121
+ created_by: customerId,
122
+ updated_at: nowIso,
123
+ updated_by: customerId,
124
+ deleted_at: null,
125
+ deleted_by: null,
126
+ };
127
+ return deepMerge(dataset, overrides);
128
+ }
129
+ //# sourceMappingURL=datasetSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetSchema.js","sourceRoot":"","sources":["../src/datasetSchema.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export { HelixConsumer, type HelixConsumerConfig, type DatasetMetadata, type DownloadUrlInfo, type SubscriptionRequest } from './consumer';
2
2
  export { HelixProducer, type HelixProducerConfig, type UploadOptions, type Dataset } from './producer';
3
+ export { analyzeData, isEmptyValue, getFieldStatus, type AnalysisResult, type AnalysisOptions } from './analyzer';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC3I,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC3I,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AACvG,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HelixProducer = exports.HelixConsumer = void 0;
3
+ exports.getFieldStatus = exports.isEmptyValue = exports.analyzeData = exports.HelixProducer = exports.HelixConsumer = void 0;
4
4
  var consumer_1 = require("./consumer");
5
5
  Object.defineProperty(exports, "HelixConsumer", { enumerable: true, get: function () { return consumer_1.HelixConsumer; } });
6
6
  var producer_1 = require("./producer");
7
7
  Object.defineProperty(exports, "HelixProducer", { enumerable: true, get: function () { return producer_1.HelixProducer; } });
8
+ var analyzer_1 = require("./analyzer");
9
+ Object.defineProperty(exports, "analyzeData", { enumerable: true, get: function () { return analyzer_1.analyzeData; } });
10
+ Object.defineProperty(exports, "isEmptyValue", { enumerable: true, get: function () { return analyzer_1.isEmptyValue; } });
11
+ Object.defineProperty(exports, "getFieldStatus", { enumerable: true, get: function () { return analyzer_1.getFieldStatus; } });
8
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uCAA2I;AAAlI,yGAAA,aAAa,OAAA;AACtB,uCAAuG;AAA9F,yGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uCAA2I;AAAlI,yGAAA,aAAa,OAAA;AACtB,uCAAuG;AAA9F,yGAAA,aAAa,OAAA;AACtB,uCAAkH;AAAzG,uGAAA,WAAW,OAAA;AAAE,wGAAA,YAAY,OAAA;AAAE,0GAAA,cAAc,OAAA"}
@@ -31,6 +31,8 @@ export interface UploadOptions {
31
31
  dataFreshness?: string;
32
32
  /** Additional custom metadata */
33
33
  metadata?: Record<string, any>;
34
+ /** Optional overrides for dataset schema fields */
35
+ datasetOverrides?: Record<string, any>;
34
36
  /** Enable KMS encryption (default: true for security) */
35
37
  encrypt?: boolean;
36
38
  /** Enable gzip compression (default: true for cost optimization) */
@@ -42,6 +44,7 @@ export interface UploadOptions {
42
44
  }
43
45
  export interface Dataset {
44
46
  _id?: string;
47
+ id?: string;
45
48
  dataset_id?: string;
46
49
  name: string;
47
50
  description: string;
@@ -49,8 +52,28 @@ export interface Dataset {
49
52
  category: string;
50
53
  data_freshness: string;
51
54
  s3_key: string;
55
+ s3_bucket?: string;
52
56
  size_bytes: number;
57
+ record_count?: number;
58
+ visibility?: string;
59
+ status?: string;
60
+ version?: string;
61
+ version_notes?: string;
62
+ parent_dataset_id?: string | null;
63
+ is_latest_version?: boolean;
53
64
  metadata?: Record<string, any>;
65
+ schema?: Record<string, any>;
66
+ validation?: Record<string, any>;
67
+ tags?: string[];
68
+ pricing?: Record<string, any>;
69
+ stats?: Record<string, any>;
70
+ last_updated?: string;
71
+ created_at?: string;
72
+ created_by?: string;
73
+ updated_at?: string;
74
+ updated_by?: string;
75
+ deleted_at?: string | null;
76
+ deleted_by?: string | null;
54
77
  }
55
78
  export declare class HelixProducer {
56
79
  private customerId;
@@ -1 +1 @@
1
- {"version":3,"file":"producer.d.ts","sourceRoot":"","sources":["../src/producer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE/B,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAS;IAEnC;;;OAGG;gBACS,MAAM,EAAE,mBAAmB;IA4BvC;;;OAGG;YACW,UAAU;IAoDxB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAUpB;;;;OAIG;YACW,WAAW;IA4DzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,OAAO,CAAC;IAkHnB;;;OAGG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAc1C;;;OAGG;YACW,WAAW;IAyCzB;;;OAGG;IACG,wBAAwB,CAAC,MAAM,GAAE,SAAS,GAAG,UAAU,GAAG,UAAsB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAQvG;;;OAGG;IACG,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAajF;;OAEG;IACG,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAajF;;OAEG;YACW,kBAAkB;IAsChC;;;OAGG;YACW,cAAc;CAqC7B"}
1
+ {"version":3,"file":"producer.d.ts","sourceRoot":"","sources":["../src/producer.ts"],"names":[],"mappings":"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"}
package/dist/producer.js CHANGED
@@ -52,6 +52,8 @@ const axios_1 = __importDefault(require("axios"));
52
52
  const pako = __importStar(require("pako"));
53
53
  const fs = __importStar(require("fs"));
54
54
  const crypto = __importStar(require("crypto"));
55
+ const analyzer_1 = require("./analyzer");
56
+ const datasetSchema_1 = require("./datasetSchema");
55
57
  class HelixProducer {
56
58
  /**
57
59
  * Creates a new Helix Producer instance.
@@ -242,6 +244,15 @@ class HelixProducer {
242
244
  if (!fs.existsSync(filePath)) {
243
245
  throw new Error(`File not found: ${filePath}`);
244
246
  }
247
+ // Analyze data before compression/encryption (memory-efficient streaming)
248
+ // This extracts JSON schema and field emptiness statistics
249
+ let analysis = null;
250
+ try {
251
+ analysis = await (0, analyzer_1.analyzeData)(filePath);
252
+ }
253
+ catch (e) {
254
+ console.log(`⚠️ Warning: Data analysis failed, continuing without analysis: ${e}`);
255
+ }
245
256
  // Read original file
246
257
  let data = fs.readFileSync(filePath);
247
258
  const originalSize = data.length;
@@ -309,28 +320,41 @@ class HelixProducer {
309
320
  catch (error) {
310
321
  throw new Error(`Failed to upload file: ${error}`);
311
322
  }
323
+ // Build metadata with analysis results
324
+ const combinedMetadata = {
325
+ ...(options.metadata || {}),
326
+ ...sizes,
327
+ };
328
+ // Determine final size (what's actually stored in S3)
329
+ // If encrypted, use encrypted size; otherwise use compressed size
330
+ const finalSize = encrypt
331
+ ? sizes.encrypted_size_bytes
332
+ : sizes.compressed_size_bytes;
312
333
  // Register dataset in catalog via API
313
- const payload = {
314
- name: options.datasetName,
334
+ const datasetPayload = (0, datasetSchema_1.buildDatasetPayload)({
335
+ datasetName: options.datasetName,
315
336
  description: options.description || '',
316
- producer_id: this.customerId,
317
337
  category,
318
- data_freshness: dataFreshness,
319
- s3_key: s3Key,
320
- size_bytes: sizes.compressed_size_bytes,
321
- metadata: { ...(options.metadata || {}), ...sizes },
322
- };
338
+ dataFreshness,
339
+ s3Key,
340
+ finalSize,
341
+ bucketName: this.bucketName,
342
+ customerId: this.customerId,
343
+ metadata: combinedMetadata,
344
+ analysis,
345
+ overrides: options.datasetOverrides || null,
346
+ });
323
347
  try {
324
- const dataset = await this.makeApiRequest('POST', '/v1/datasets', payload);
348
+ const dataset = await this.makeApiRequest('POST', '/v1/datasets', datasetPayload);
325
349
  return dataset;
326
350
  }
327
351
  catch (error) {
328
352
  // Upload succeeded but registration failed - log warning
329
353
  console.log(`⚠️ Warning: File uploaded but catalog registration failed: ${error}`);
330
354
  return {
331
- ...payload,
355
+ ...datasetPayload,
332
356
  metadata: {
333
- ...payload.metadata,
357
+ ...(datasetPayload.metadata || {}),
334
358
  status: 'uploaded_unregistered',
335
359
  error: String(error),
336
360
  },
@@ -1 +1 @@
1
- {"version":3,"file":"producer.js","sourceRoot":"","sources":["../src/producer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"producer.js","sourceRoot":"","sources":["../src/producer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helix-tools/sdk-typescript",
3
- "version": "1.2.2",
3
+ "version": "1.2.8",
4
4
  "description": "TypeScript/Node.js SDK for Helix Connect Platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -12,7 +12,9 @@
12
12
  "scripts": {
13
13
  "build": "tsc",
14
14
  "prepublishOnly": "npm run build",
15
- "test": "ts-node test/consumer-test.ts"
15
+ "test": "jest passWithNoTests",
16
+ "test:analyze": "jest test/analyze.test.ts",
17
+ "test:legacy": "ts-node test/consumer-test.ts"
16
18
  },
17
19
  "keywords": [
18
20
  "data-exchange",
@@ -28,7 +30,7 @@
28
30
  "homepage": "https://helix.tools",
29
31
  "repository": {
30
32
  "type": "git",
31
- "url": "https://github.com/helix-tools/sdk-typescript"
33
+ "url": "git+https://github.com/helix-tools/sdk-typescript.git"
32
34
  },
33
35
  "bugs": {
34
36
  "url": "https://github.com/helix-tools/sdk-typescript/issues"
@@ -50,8 +52,11 @@
50
52
  "pako": "^2.1.0"
51
53
  },
52
54
  "devDependencies": {
55
+ "@types/jest": "^30.0.0",
53
56
  "@types/node": "^22.10.1",
54
57
  "@types/pako": "^2.0.3",
58
+ "jest": "^30.2.0",
59
+ "ts-jest": "^29.4.6",
55
60
  "ts-node": "^10.9.2",
56
61
  "typescript": "^5.7.2"
57
62
  }