@lightdash/common 0.1933.0 → 0.1934.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 (75) hide show
  1. package/dist/cjs/compiler/exploreCompiler.d.ts.map +1 -1
  2. package/dist/cjs/compiler/exploreCompiler.js +15 -8
  3. package/dist/cjs/compiler/exploreCompiler.js.map +1 -1
  4. package/dist/cjs/compiler/exploreCompiler.mock.d.ts +3 -0
  5. package/dist/cjs/compiler/exploreCompiler.mock.d.ts.map +1 -1
  6. package/dist/cjs/compiler/exploreCompiler.mock.js +105 -1
  7. package/dist/cjs/compiler/exploreCompiler.mock.js.map +1 -1
  8. package/dist/cjs/compiler/exploreCompiler.test.js +280 -0
  9. package/dist/cjs/compiler/exploreCompiler.test.js.map +1 -1
  10. package/dist/cjs/compiler/parameters.d.ts +17 -0
  11. package/dist/cjs/compiler/parameters.d.ts.map +1 -1
  12. package/dist/cjs/compiler/parameters.js +41 -2
  13. package/dist/cjs/compiler/parameters.js.map +1 -1
  14. package/dist/cjs/compiler/parameters.test.js +156 -23
  15. package/dist/cjs/compiler/parameters.test.js.map +1 -1
  16. package/dist/cjs/compiler/translator.d.ts.map +1 -1
  17. package/dist/cjs/compiler/translator.js +1 -0
  18. package/dist/cjs/compiler/translator.js.map +1 -1
  19. package/dist/cjs/types/errors.d.ts +3 -0
  20. package/dist/cjs/types/errors.d.ts.map +1 -1
  21. package/dist/cjs/types/errors.js +12 -1
  22. package/dist/cjs/types/errors.js.map +1 -1
  23. package/dist/cjs/types/explore.d.ts +2 -0
  24. package/dist/cjs/types/explore.d.ts.map +1 -1
  25. package/dist/cjs/types/explore.js.map +1 -1
  26. package/dist/cjs/utils/item.d.ts +1 -0
  27. package/dist/cjs/utils/item.d.ts.map +1 -1
  28. package/dist/cjs/utils/loadLightdashProjectConfig.d.ts.map +1 -1
  29. package/dist/cjs/utils/loadLightdashProjectConfig.js +7 -0
  30. package/dist/cjs/utils/loadLightdashProjectConfig.js.map +1 -1
  31. package/dist/esm/compiler/exploreCompiler.d.ts.map +1 -1
  32. package/dist/esm/compiler/exploreCompiler.js +16 -9
  33. package/dist/esm/compiler/exploreCompiler.js.map +1 -1
  34. package/dist/esm/compiler/exploreCompiler.mock.d.ts +3 -0
  35. package/dist/esm/compiler/exploreCompiler.mock.d.ts.map +1 -1
  36. package/dist/esm/compiler/exploreCompiler.mock.js +104 -0
  37. package/dist/esm/compiler/exploreCompiler.mock.js.map +1 -1
  38. package/dist/esm/compiler/exploreCompiler.test.js +281 -1
  39. package/dist/esm/compiler/exploreCompiler.test.js.map +1 -1
  40. package/dist/esm/compiler/parameters.d.ts +17 -0
  41. package/dist/esm/compiler/parameters.d.ts.map +1 -1
  42. package/dist/esm/compiler/parameters.js +38 -1
  43. package/dist/esm/compiler/parameters.js.map +1 -1
  44. package/dist/esm/compiler/parameters.test.js +156 -23
  45. package/dist/esm/compiler/parameters.test.js.map +1 -1
  46. package/dist/esm/compiler/translator.d.ts.map +1 -1
  47. package/dist/esm/compiler/translator.js +1 -0
  48. package/dist/esm/compiler/translator.js.map +1 -1
  49. package/dist/esm/types/errors.d.ts +3 -0
  50. package/dist/esm/types/errors.d.ts.map +1 -1
  51. package/dist/esm/types/errors.js +10 -0
  52. package/dist/esm/types/errors.js.map +1 -1
  53. package/dist/esm/types/explore.d.ts +2 -0
  54. package/dist/esm/types/explore.d.ts.map +1 -1
  55. package/dist/esm/types/explore.js.map +1 -1
  56. package/dist/esm/utils/item.d.ts +1 -0
  57. package/dist/esm/utils/item.d.ts.map +1 -1
  58. package/dist/esm/utils/loadLightdashProjectConfig.d.ts.map +1 -1
  59. package/dist/esm/utils/loadLightdashProjectConfig.js +8 -1
  60. package/dist/esm/utils/loadLightdashProjectConfig.js.map +1 -1
  61. package/dist/tsconfig.types.tsbuildinfo +1 -1
  62. package/dist/types/compiler/exploreCompiler.d.ts.map +1 -1
  63. package/dist/types/compiler/exploreCompiler.mock.d.ts +3 -0
  64. package/dist/types/compiler/exploreCompiler.mock.d.ts.map +1 -1
  65. package/dist/types/compiler/parameters.d.ts +17 -0
  66. package/dist/types/compiler/parameters.d.ts.map +1 -1
  67. package/dist/types/compiler/translator.d.ts.map +1 -1
  68. package/dist/types/types/errors.d.ts +3 -0
  69. package/dist/types/types/errors.d.ts.map +1 -1
  70. package/dist/types/types/explore.d.ts +2 -0
  71. package/dist/types/types/explore.d.ts.map +1 -1
  72. package/dist/types/utils/item.d.ts +1 -0
  73. package/dist/types/utils/item.d.ts.map +1 -1
  74. package/dist/types/utils/loadLightdashProjectConfig.d.ts.map +1 -1
  75. package/package.json +1 -1
@@ -231,4 +231,284 @@ describe('Compiled custom dimensions', () => {
231
231
  expect(compiler.compileCustomDimension(exploreCompiler_mock_1.customSqlDimensionWithReferences, exploreCompiler_mock_1.simpleJoinedExplore.tables, [])).toStrictEqual(exploreCompiler_mock_1.expectedCompiledCustomSqlDimensionWithReferences);
232
232
  });
233
233
  });
234
+ describe('Explore compilation with model-level parameters', () => {
235
+ describe('Parameter inheritance on tables', () => {
236
+ test('should compile explore with table parameters', () => {
237
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
238
+ expect(result).toStrictEqual(exploreCompiler_mock_1.compiledExploreWithParameters);
239
+ });
240
+ test('should copy parameters to compiled tables', () => {
241
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
242
+ expect(result.tables.a.parameters).toEqual({
243
+ region: {
244
+ label: 'Region',
245
+ description: 'Filter by region',
246
+ default: 'US',
247
+ },
248
+ });
249
+ expect(result.tables.b.parameters).toEqual({
250
+ active_status: {
251
+ label: 'Active Status',
252
+ description: 'Define active status',
253
+ default: 'active',
254
+ },
255
+ });
256
+ });
257
+ test('should track parameter references in joins', () => {
258
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
259
+ expect(result.joinedTables[0].parameterReferences).toEqual([
260
+ 'b.active_status',
261
+ ]);
262
+ });
263
+ });
264
+ describe('Parameter validation in joins', () => {
265
+ test('should throw error for invalid parameter references', () => {
266
+ expect(() => compiler.compileExplore(exploreCompiler_mock_1.exploreWithInvalidParameterReference)).toThrowError(errors_1.CompileError);
267
+ });
268
+ test('should throw error with descriptive message for missing parameters', () => {
269
+ expect(() => compiler.compileExplore(exploreCompiler_mock_1.exploreWithInvalidParameterReference)).toThrow('Missing parameters: b.nonexistent_param');
270
+ });
271
+ });
272
+ describe('Parameter resolution in join conditions', () => {
273
+ test('should preserve parameter references in compiled SQL', () => {
274
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
275
+ expect(result.joinedTables[0].compiledSqlOn).toContain('${ld.parameters.b.active_status}');
276
+ });
277
+ test('should compile table references but preserve parameter references', () => {
278
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
279
+ const compiledSql = result.joinedTables[0].compiledSqlOn;
280
+ expect(compiledSql).toContain('"a".dim1');
281
+ expect(compiledSql).toContain('"b".dim1');
282
+ expect(compiledSql).toContain('${ld.parameters.b.active_status}');
283
+ });
284
+ test('should track both table and parameter references', () => {
285
+ const result = compiler.compileExplore(exploreCompiler_mock_1.exploreWithParameters);
286
+ expect(result.joinedTables[0].tablesReferences).toEqual(['a', 'b']);
287
+ expect(result.joinedTables[0].parameterReferences).toEqual([
288
+ 'b.active_status',
289
+ ]);
290
+ });
291
+ });
292
+ describe('Parameter scoping across joined tables', () => {
293
+ test('should validate parameter exists in correct table scope', () => {
294
+ expect(() => compiler.compileExplore(exploreCompiler_mock_1.exploreWithInvalidParameterReference)).toThrow('Missing parameters: b.nonexistent_param');
295
+ });
296
+ test('should allow parameters from any table in the explore', () => {
297
+ const exploreWithMultipleParamReferences = {
298
+ ...exploreCompiler_mock_1.exploreWithParameters,
299
+ joinedTables: [
300
+ {
301
+ table: 'b',
302
+ sqlOn: "${a.dim1} = ${b.dim1} AND ${ld.parameters.a.region} = 'US' AND ${ld.parameters.b.active_status} = 'active'",
303
+ },
304
+ ],
305
+ };
306
+ expect(() => compiler.compileExplore(exploreWithMultipleParamReferences)).not.toThrow();
307
+ });
308
+ });
309
+ describe('Edge cases', () => {
310
+ test('should handle join with no parameters', () => {
311
+ const exploreWithoutParams = {
312
+ ...exploreCompiler_mock_1.exploreWithParameters,
313
+ tables: {
314
+ ...exploreCompiler_mock_1.exploreWithParameters.tables,
315
+ a: {
316
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.a,
317
+ parameters: {},
318
+ },
319
+ b: {
320
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.b,
321
+ parameters: {},
322
+ },
323
+ },
324
+ joinedTables: [
325
+ {
326
+ table: 'b',
327
+ sqlOn: '${a.dim1} = ${b.dim1}',
328
+ },
329
+ ],
330
+ };
331
+ expect(() => compiler.compileExplore(exploreWithoutParams)).not.toThrow();
332
+ });
333
+ test('should handle tables with undefined parameters', () => {
334
+ const exploreWithUndefinedParams = {
335
+ ...exploreCompiler_mock_1.exploreWithParameters,
336
+ tables: {
337
+ ...exploreCompiler_mock_1.exploreWithParameters.tables,
338
+ a: {
339
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.a,
340
+ parameters: undefined,
341
+ },
342
+ b: {
343
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.b,
344
+ parameters: undefined,
345
+ },
346
+ },
347
+ joinedTables: [
348
+ {
349
+ table: 'b',
350
+ sqlOn: '${a.dim1} = ${b.dim1}',
351
+ },
352
+ ],
353
+ };
354
+ expect(() => compiler.compileExplore(exploreWithUndefinedParams)).not.toThrow();
355
+ });
356
+ test('should handle mixed project and model parameter syntax', () => {
357
+ const exploreWithMixedSyntax = {
358
+ ...exploreCompiler_mock_1.exploreWithParameters,
359
+ // Add project-level parameters
360
+ projectParameters: {
361
+ region: {
362
+ label: 'Global Region',
363
+ description: 'Global region filter',
364
+ default: 'US',
365
+ },
366
+ },
367
+ tables: {
368
+ ...exploreCompiler_mock_1.exploreWithParameters.tables,
369
+ b: {
370
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.b,
371
+ parameters: {
372
+ active_status: {
373
+ label: 'Active Status',
374
+ description: 'Define what constitutes an active order',
375
+ default: 'active',
376
+ },
377
+ },
378
+ },
379
+ },
380
+ joinedTables: [
381
+ {
382
+ table: 'b',
383
+ sqlOn: "${a.dim1} = ${b.dim1} AND ${ld.parameters.b.active_status} = 'active' AND ${ld.parameters.region} = 'US'",
384
+ },
385
+ ],
386
+ };
387
+ const result = compiler.compileExplore(exploreWithMixedSyntax);
388
+ expect(result.joinedTables[0].parameterReferences).toEqual([
389
+ 'b.active_status',
390
+ 'region',
391
+ ]);
392
+ });
393
+ test('should allow same parameter name at project and model levels without conflict', () => {
394
+ const exploreWithSameNamedParams = {
395
+ ...exploreCompiler_mock_1.exploreWithParameters,
396
+ projectParameters: {
397
+ region: {
398
+ label: 'Global Region',
399
+ description: 'Global region filter',
400
+ default: 'US',
401
+ },
402
+ status: {
403
+ label: 'Global Status',
404
+ description: 'Global status filter',
405
+ default: 'active',
406
+ },
407
+ },
408
+ tables: {
409
+ ...exploreCompiler_mock_1.exploreWithParameters.tables,
410
+ a: {
411
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.a,
412
+ parameters: {
413
+ region: {
414
+ label: 'Table A Region',
415
+ description: 'Region specific to table A',
416
+ default: 'EU',
417
+ },
418
+ },
419
+ },
420
+ b: {
421
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.b,
422
+ parameters: {
423
+ status: {
424
+ label: 'Table B Status',
425
+ description: 'Status specific to table B',
426
+ default: 'inactive',
427
+ },
428
+ },
429
+ },
430
+ },
431
+ joinedTables: [
432
+ {
433
+ table: 'b',
434
+ sqlOn: "${a.dim1} = ${b.dim1} AND ${ld.parameters.region} = 'US' AND ${ld.parameters.a.region} = 'EU' AND ${ld.parameters.status} = 'active' AND ${ld.parameters.b.status} = 'inactive'",
435
+ },
436
+ ],
437
+ };
438
+ // This should NOT throw an error because parameters are properly scoped
439
+ expect(() => compiler.compileExplore(exploreWithSameNamedParams)).not.toThrow();
440
+ const result = compiler.compileExplore(exploreWithSameNamedParams);
441
+ // Should track all scoped parameters correctly
442
+ expect(result.joinedTables[0].parameterReferences).toEqual([
443
+ 'region',
444
+ 'a.region',
445
+ 'status',
446
+ 'b.status',
447
+ ]);
448
+ // Model parameters should be preserved on compiled tables
449
+ expect(result.tables.a.parameters).toEqual({
450
+ region: {
451
+ label: 'Table A Region',
452
+ description: 'Region specific to table A',
453
+ default: 'EU',
454
+ },
455
+ });
456
+ expect(result.tables.b.parameters).toEqual({
457
+ status: {
458
+ label: 'Table B Status',
459
+ description: 'Status specific to table B',
460
+ default: 'inactive',
461
+ },
462
+ });
463
+ });
464
+ test('should handle complex scoping scenarios with multiple same-named parameters', () => {
465
+ const exploreWithComplexScoping = {
466
+ ...exploreCompiler_mock_1.exploreWithParameters,
467
+ projectParameters: {
468
+ date_range: {
469
+ label: 'Global Date Range',
470
+ description: 'Global date filter',
471
+ default: '2024-01-01',
472
+ },
473
+ },
474
+ tables: {
475
+ ...exploreCompiler_mock_1.exploreWithParameters.tables,
476
+ a: {
477
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.a,
478
+ parameters: {
479
+ date_range: {
480
+ label: 'Table A Date Range',
481
+ description: 'Date range for table A',
482
+ default: '2024-02-01',
483
+ },
484
+ },
485
+ },
486
+ b: {
487
+ ...exploreCompiler_mock_1.exploreWithParameters.tables.b,
488
+ parameters: {
489
+ date_range: {
490
+ label: 'Table B Date Range',
491
+ description: 'Date range for table B',
492
+ default: '2024-03-01',
493
+ },
494
+ },
495
+ },
496
+ },
497
+ joinedTables: [
498
+ {
499
+ table: 'b',
500
+ sqlOn: "${a.dim1} = ${b.dim1} AND ${ld.parameters.date_range} >= '2024-01-01' AND ${ld.parameters.a.date_range} >= '2024-02-01' AND ${lightdash.parameters.b.date_range} >= '2024-03-01'",
501
+ },
502
+ ],
503
+ };
504
+ expect(() => compiler.compileExplore(exploreWithComplexScoping)).not.toThrow();
505
+ const result = compiler.compileExplore(exploreWithComplexScoping);
506
+ expect(result.joinedTables[0].parameterReferences).toEqual([
507
+ 'date_range',
508
+ 'a.date_range',
509
+ 'b.date_range',
510
+ ]);
511
+ });
512
+ });
513
+ });
234
514
  //# sourceMappingURL=exploreCompiler.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exploreCompiler.test.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exploreCompiler.test.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Utility functions for handling SQL parameter references
3
3
  */
4
+ import type { CompiledTable, Table } from '../types/explore';
4
5
  import type { LightdashProjectParameter } from '../types/lightdashProjectConfig';
5
6
  export declare const parameterRegex: RegExp;
6
7
  /**
@@ -17,4 +18,20 @@ export declare const validateParameterReferences: (tableName: string, parameterR
17
18
  * @returns An array of available parameter names
18
19
  */
19
20
  export declare const getAvailableParameterNames: (projectParameters: Record<string, LightdashProjectParameter> | undefined, exploreParameters: Record<string, LightdashProjectParameter> | undefined) => string[];
21
+ /**
22
+ * Get all available parameter names for a project and explore
23
+ * @param exploreParameters - The explore parameters
24
+ * @param includedTables - The included tables
25
+ * @returns An array of available parameter names
26
+ */
27
+ export declare const getAvailableParametersFromTables: (includedTables: (Table | CompiledTable)[]) => Record<string, LightdashProjectParameter>;
28
+ /**
29
+ * Validate parameter names
30
+ * @param parameters - The parameters to validate
31
+ * @returns True if any parameter name contains a dot, false otherwise
32
+ */
33
+ export declare const validateParameterNames: (parameters: Record<string, LightdashProjectParameter> | undefined) => {
34
+ isInvalid: boolean;
35
+ invalidParameters: string[];
36
+ };
20
37
  //# sourceMappingURL=parameters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,eAAO,MAAM,cAAc,QAAmD,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,MAAM,KAAG,MAAM,EAc1D,CAAC;AAEF,eAAO,MAAM,2BAA2B,cACzB,MAAM,uBACI,MAAM,EAAE,uBACR,MAAM,EAAE,SAchC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,sBAChB,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,qBACrD,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,KACzE,MAAM,EAGJ,CAAC"}
1
+ {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,eAAO,MAAM,cAAc,QAC+B,CAAC;AAE3D;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,MAAM,KAAG,MAAM,EAc1D,CAAC;AAEF,eAAO,MAAM,2BAA2B,cACzB,MAAM,uBACI,MAAM,EAAE,uBACR,MAAM,EAAE,SAchC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,sBAChB,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,qBACrD,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,KACzE,MAAM,EAGJ,CAAC;AAEN;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,mBACzB,CAAC,KAAK,GAAG,aAAa,CAAC,EAAE,KAC1C,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAwBjC,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,eACnB,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS;;;CASpE,CAAC"}
@@ -3,9 +3,9 @@
3
3
  * Utility functions for handling SQL parameter references
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getAvailableParameterNames = exports.validateParameterReferences = exports.getParameterReferences = exports.parameterRegex = void 0;
6
+ exports.validateParameterNames = exports.getAvailableParametersFromTables = exports.getAvailableParameterNames = exports.validateParameterReferences = exports.getParameterReferences = exports.parameterRegex = void 0;
7
7
  const errors_1 = require("../types/errors");
8
- exports.parameterRegex = /\$\{(?:lightdash|ld)\.(?:parameters)\.(\w+)\}/g;
8
+ exports.parameterRegex = /\$\{(?:lightdash|ld)\.parameters\.(\w+(?:\.\w+)?)\}/g;
9
9
  /**
10
10
  * Extracts parameter references from SQL strings
11
11
  * @param sql - The SQL string to extract parameter references from
@@ -37,4 +37,43 @@ exports.validateParameterReferences = validateParameterReferences;
37
37
  */
38
38
  const getAvailableParameterNames = (projectParameters, exploreParameters) => Object.keys(projectParameters || {}).concat(Object.keys(exploreParameters || {}));
39
39
  exports.getAvailableParameterNames = getAvailableParameterNames;
40
+ /**
41
+ * Get all available parameter names for a project and explore
42
+ * @param exploreParameters - The explore parameters
43
+ * @param includedTables - The included tables
44
+ * @returns An array of available parameter names
45
+ */
46
+ const getAvailableParametersFromTables = (includedTables) => includedTables.reduce((acc, table) => {
47
+ const tableParameters = Object.keys(table.parameters || {}).reduce((acc2, p) => {
48
+ const parameter = table.parameters?.[p];
49
+ if (!parameter) {
50
+ return acc2;
51
+ }
52
+ // Use the original table name for parameters if available, otherwise use the current name
53
+ const tableName = table.originalName ?? table.name;
54
+ const parameterKey = `${tableName}.${p}`;
55
+ return {
56
+ ...acc2,
57
+ [parameterKey]: parameter,
58
+ };
59
+ }, {});
60
+ return {
61
+ ...acc,
62
+ ...tableParameters,
63
+ };
64
+ }, {});
65
+ exports.getAvailableParametersFromTables = getAvailableParametersFromTables;
66
+ /**
67
+ * Validate parameter names
68
+ * @param parameters - The parameters to validate
69
+ * @returns True if any parameter name contains a dot, false otherwise
70
+ */
71
+ const validateParameterNames = (parameters) => {
72
+ const invalidParameters = Object.keys(parameters || {}).filter((paramName) => paramName.includes('.'));
73
+ return {
74
+ isInvalid: invalidParameters.length > 0,
75
+ invalidParameters,
76
+ };
77
+ };
78
+ exports.validateParameterNames = validateParameterNames;
40
79
  //# sourceMappingURL=parameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,4CAA+C;AAGlC,QAAA,cAAc,GAAG,gDAAgD,CAAC;AAE/E;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAY,EAAE;IAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,sBAAc,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACzC,KAAK,CAAC,OAAO,CAAC,sBAAc,EAAE,IAAI,CAAC,CACtC,CAAC;IAEF,gCAAgC;IAChC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AAdW,QAAA,sBAAsB,0BAcjC;AAEK,MAAM,2BAA2B,GAAG,CACvC,SAAiB,EACjB,mBAA6B,EAC7B,mBAA6B,EAC/B,EAAE;IACA,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC1C,CAAC;IAEF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,qBAAY,CAClB,8BAA8B,SAAS,0BAA0B,iBAAiB,CAAC,IAAI,CACnF,IAAI,CACP,EAAE,EACH,EAAE,CACL,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,2BAA2B,+BAiBtC;AAEF;;;;;GAKG;AACI,MAAM,0BAA0B,GAAG,CACtC,iBAAwE,EACxE,iBAAwE,EAChE,EAAE,CACV,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CACvC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CACvC,CAAC;AANO,QAAA,0BAA0B,8BAMjC"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"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"}