@lightdash/common 0.2086.4 → 0.2087.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 (76) hide show
  1. package/dist/cjs/compiler/exploreCompiler.d.ts +1 -0
  2. package/dist/cjs/compiler/exploreCompiler.d.ts.map +1 -1
  3. package/dist/cjs/compiler/exploreCompiler.js +30 -10
  4. package/dist/cjs/compiler/exploreCompiler.js.map +1 -1
  5. package/dist/cjs/compiler/exploreCompiler.mock.d.ts.map +1 -1
  6. package/dist/cjs/compiler/exploreCompiler.mock.js +6 -0
  7. package/dist/cjs/compiler/exploreCompiler.mock.js.map +1 -1
  8. package/dist/cjs/compiler/exploreCompiler.test.js +167 -0
  9. package/dist/cjs/compiler/exploreCompiler.test.js.map +1 -1
  10. package/dist/cjs/compiler/fieldSetExpander.d.ts +14 -0
  11. package/dist/cjs/compiler/fieldSetExpander.d.ts.map +1 -0
  12. package/dist/cjs/compiler/fieldSetExpander.js +122 -0
  13. package/dist/cjs/compiler/fieldSetExpander.js.map +1 -0
  14. package/dist/cjs/compiler/fieldSetExpander.test.d.ts +2 -0
  15. package/dist/cjs/compiler/fieldSetExpander.test.d.ts.map +1 -0
  16. package/dist/cjs/compiler/fieldSetExpander.test.js +186 -0
  17. package/dist/cjs/compiler/fieldSetExpander.test.js.map +1 -0
  18. package/dist/cjs/compiler/translator.d.ts.map +1 -1
  19. package/dist/cjs/compiler/translator.js +71 -0
  20. package/dist/cjs/compiler/translator.js.map +1 -1
  21. package/dist/cjs/compiler/translator.test.js +191 -0
  22. package/dist/cjs/compiler/translator.test.js.map +1 -1
  23. package/dist/cjs/types/dbt.d.ts +4 -0
  24. package/dist/cjs/types/dbt.d.ts.map +1 -1
  25. package/dist/cjs/types/dbt.js.map +1 -1
  26. package/dist/cjs/types/explore.d.ts +3 -1
  27. package/dist/cjs/types/explore.d.ts.map +1 -1
  28. package/dist/cjs/types/explore.js.map +1 -1
  29. package/dist/cjs/utils/item.d.ts +1 -0
  30. package/dist/cjs/utils/item.d.ts.map +1 -1
  31. package/dist/esm/compiler/exploreCompiler.d.ts +1 -0
  32. package/dist/esm/compiler/exploreCompiler.d.ts.map +1 -1
  33. package/dist/esm/compiler/exploreCompiler.js +30 -10
  34. package/dist/esm/compiler/exploreCompiler.js.map +1 -1
  35. package/dist/esm/compiler/exploreCompiler.mock.d.ts.map +1 -1
  36. package/dist/esm/compiler/exploreCompiler.mock.js +6 -0
  37. package/dist/esm/compiler/exploreCompiler.mock.js.map +1 -1
  38. package/dist/esm/compiler/exploreCompiler.test.js +169 -2
  39. package/dist/esm/compiler/exploreCompiler.test.js.map +1 -1
  40. package/dist/esm/compiler/fieldSetExpander.d.ts +14 -0
  41. package/dist/esm/compiler/fieldSetExpander.d.ts.map +1 -0
  42. package/dist/esm/compiler/fieldSetExpander.js +119 -0
  43. package/dist/esm/compiler/fieldSetExpander.js.map +1 -0
  44. package/dist/esm/compiler/fieldSetExpander.test.d.ts +2 -0
  45. package/dist/esm/compiler/fieldSetExpander.test.d.ts.map +1 -0
  46. package/dist/esm/compiler/fieldSetExpander.test.js +184 -0
  47. package/dist/esm/compiler/fieldSetExpander.test.js.map +1 -0
  48. package/dist/esm/compiler/translator.d.ts.map +1 -1
  49. package/dist/esm/compiler/translator.js +71 -0
  50. package/dist/esm/compiler/translator.js.map +1 -1
  51. package/dist/esm/compiler/translator.test.js +191 -0
  52. package/dist/esm/compiler/translator.test.js.map +1 -1
  53. package/dist/esm/types/dbt.d.ts +4 -0
  54. package/dist/esm/types/dbt.d.ts.map +1 -1
  55. package/dist/esm/types/dbt.js.map +1 -1
  56. package/dist/esm/types/explore.d.ts +3 -1
  57. package/dist/esm/types/explore.d.ts.map +1 -1
  58. package/dist/esm/types/explore.js.map +1 -1
  59. package/dist/esm/utils/item.d.ts +1 -0
  60. package/dist/esm/utils/item.d.ts.map +1 -1
  61. package/dist/tsconfig.types.tsbuildinfo +1 -1
  62. package/dist/types/compiler/exploreCompiler.d.ts +1 -0
  63. package/dist/types/compiler/exploreCompiler.d.ts.map +1 -1
  64. package/dist/types/compiler/exploreCompiler.mock.d.ts.map +1 -1
  65. package/dist/types/compiler/fieldSetExpander.d.ts +14 -0
  66. package/dist/types/compiler/fieldSetExpander.d.ts.map +1 -0
  67. package/dist/types/compiler/fieldSetExpander.test.d.ts +2 -0
  68. package/dist/types/compiler/fieldSetExpander.test.d.ts.map +1 -0
  69. package/dist/types/compiler/translator.d.ts.map +1 -1
  70. package/dist/types/types/dbt.d.ts +4 -0
  71. package/dist/types/types/dbt.d.ts.map +1 -1
  72. package/dist/types/types/explore.d.ts +3 -1
  73. package/dist/types/types/explore.d.ts.map +1 -1
  74. package/dist/types/utils/item.d.ts +1 -0
  75. package/dist/types/utils/item.d.ts.map +1 -1
  76. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
+ import { SupportedDbtAdapter } from '../types/dbt';
1
2
  import { CompileError } from '../types/errors';
2
- import { friendlyName } from '../types/field';
3
- import { ExploreCompiler, parseAllReferences } from './exploreCompiler';
3
+ import { DimensionType, FieldType, friendlyName } from '../types/field';
4
+ import { ExploreCompiler, parseAllReferences, } from './exploreCompiler';
4
5
  import { compiledExploreWithHiddenJoin, compiledExploreWithJoinWithFieldsAndGroups, compiledExploreWithParameters, compiledJoinedExploreOverridingAliasAndLabel, compiledJoinedExploreOverridingJoinAlias, compiledJoinedExploreOverridingJoinLabel, compiledJoinedExploreWithJoinAliasAndSubsetOfFieldsThatDontIncludeSqlFields, compiledJoinedExploreWithSubsetOfFields, compiledJoinedExploreWithSubsetOfFieldsThatDontIncludeSqlFields, compiledJoinedExploreWithTwoJoinsToTheSameTable, compiledSimpleJoinedExplore, compiledSimpleJoinedExploreWithAlwaysTrue, customSqlDimensionWithNoReferences, customSqlDimensionWithReferences, expectedCompiledCustomSqlDimensionWithNoReferences, expectedCompiledCustomSqlDimensionWithReferences, exploreCircularDimensionReference, exploreCircularDimensionShortReference, exploreCircularMetricReference, exploreCircularMetricShortReference, exploreComplexReference, exploreComplexReferenceCompiled, exploreMissingBaseTable, exploreMissingJoinTable, exploreOneEmptyTable, exploreOneEmptyTableCompiled, exploreReferenceDimension, exploreReferenceDimensionCompiled, exploreReferenceInJoin, exploreReferenceInJoinCompiled, exploreTableSelfReference, exploreTableSelfReferenceCompiled, exploreTableSelfReferenceCompiledSqlWhere, exploreTableSelfReferenceSqlWhere, exploreWithHiddenJoin, exploreWithInvalidParameterReference, exploreWithJoinWithFieldsAndGroups, exploreWithMetricNumber, exploreWithMetricNumberCompiled, exploreWithParameters, exploreWithRequiredAttributes, exploreWithRequiredAttributesCompiled, joinedExploreOverridingAliasAndLabel, joinedExploreOverridingJoinAlias, joinedExploreOverridingJoinLabel, joinedExploreWithJoinAliasAndSubsetOfFieldsThatDontIncludeSqlFields, joinedExploreWithSubsetOfFields, joinedExploreWithSubsetOfFieldsThatDontIncludeSqlFields, joinedExploreWithTwoJoinsToTheSameTable, simpleJoinedExplore, simpleJoinedExploreWithAlwaysTrue, tablesWithMetricsWithFilters, warehouseClientMock, } from './exploreCompiler.mock';
5
6
  const compiler = new ExploreCompiler(warehouseClientMock);
6
7
  test('Should compile empty table', () => {
@@ -508,5 +509,171 @@ describe('Explore compilation with model-level parameters', () => {
508
509
  ]);
509
510
  });
510
511
  });
512
+ describe('Field Sets', () => {
513
+ it('should expand field sets in join.fields', () => {
514
+ const explore = {
515
+ name: 'test_explore',
516
+ label: 'Test Explore',
517
+ tags: [],
518
+ baseTable: 'a',
519
+ groupLabel: undefined,
520
+ joinedTables: [
521
+ {
522
+ table: 'b',
523
+ sqlOn: '${a.dim1} = ${b.dim1}',
524
+ fields: ['all_fields*', '-dim3'],
525
+ },
526
+ ],
527
+ tables: {
528
+ a: {
529
+ name: 'a',
530
+ label: 'a',
531
+ database: 'database',
532
+ schema: 'schema',
533
+ sqlTable: 'test.a',
534
+ dimensions: {
535
+ dim1: {
536
+ fieldType: FieldType.DIMENSION,
537
+ type: DimensionType.STRING,
538
+ name: 'dim1',
539
+ label: 'Dim 1',
540
+ table: 'a',
541
+ tableLabel: 'a',
542
+ sql: '${TABLE}.dim1',
543
+ hidden: false,
544
+ index: 0,
545
+ },
546
+ },
547
+ metrics: {},
548
+ lineageGraph: {},
549
+ },
550
+ b: {
551
+ name: 'b',
552
+ label: 'b',
553
+ database: 'database',
554
+ schema: 'schema',
555
+ sqlTable: 'test.b',
556
+ dimensions: {
557
+ dim1: {
558
+ fieldType: FieldType.DIMENSION,
559
+ type: DimensionType.STRING,
560
+ name: 'dim1',
561
+ label: 'Dim 1',
562
+ table: 'b',
563
+ tableLabel: 'b',
564
+ sql: '${TABLE}.dim1',
565
+ hidden: false,
566
+ index: 0,
567
+ },
568
+ dim2: {
569
+ fieldType: FieldType.DIMENSION,
570
+ type: DimensionType.STRING,
571
+ name: 'dim2',
572
+ label: 'Dim 2',
573
+ table: 'b',
574
+ tableLabel: 'b',
575
+ sql: '${TABLE}.dim2',
576
+ hidden: false,
577
+ index: 1,
578
+ },
579
+ dim3: {
580
+ fieldType: FieldType.DIMENSION,
581
+ type: DimensionType.STRING,
582
+ name: 'dim3',
583
+ label: 'Dim 3',
584
+ table: 'b',
585
+ tableLabel: 'b',
586
+ sql: '${TABLE}.dim3',
587
+ hidden: false,
588
+ index: 2,
589
+ },
590
+ },
591
+ metrics: {},
592
+ lineageGraph: {},
593
+ sets: {
594
+ id_fields: {
595
+ fields: ['dim1', 'dim2'],
596
+ },
597
+ all_fields: {
598
+ fields: ['id_fields*', 'dim3'],
599
+ },
600
+ },
601
+ },
602
+ },
603
+ targetDatabase: SupportedDbtAdapter.POSTGRES,
604
+ meta: {},
605
+ };
606
+ const result = compiler.compileExplore(explore);
607
+ // Should include dim1 and dim2 from id_fields, but exclude dim3
608
+ expect(result.tables.b.dimensions).toHaveProperty('dim1');
609
+ expect(result.tables.b.dimensions).toHaveProperty('dim2');
610
+ expect(result.tables.b.dimensions).not.toHaveProperty('dim3');
611
+ });
612
+ it('should throw error for non-existent set in join', () => {
613
+ const explore = {
614
+ name: 'test_explore',
615
+ label: 'Test Explore',
616
+ tags: [],
617
+ baseTable: 'a',
618
+ groupLabel: undefined,
619
+ joinedTables: [
620
+ {
621
+ table: 'b',
622
+ sqlOn: '${a.dim1} = ${b.dim1}',
623
+ fields: ['nonexistent_set*'],
624
+ },
625
+ ],
626
+ tables: {
627
+ a: {
628
+ name: 'a',
629
+ label: 'a',
630
+ database: 'database',
631
+ schema: 'schema',
632
+ sqlTable: 'test.a',
633
+ dimensions: {
634
+ dim1: {
635
+ fieldType: FieldType.DIMENSION,
636
+ type: DimensionType.STRING,
637
+ name: 'dim1',
638
+ label: 'Dim 1',
639
+ table: 'a',
640
+ tableLabel: 'a',
641
+ sql: '${TABLE}.dim1',
642
+ hidden: false,
643
+ index: 0,
644
+ },
645
+ },
646
+ metrics: {},
647
+ lineageGraph: {},
648
+ },
649
+ b: {
650
+ name: 'b',
651
+ label: 'b',
652
+ database: 'database',
653
+ schema: 'schema',
654
+ sqlTable: 'test.b',
655
+ dimensions: {
656
+ dim1: {
657
+ fieldType: FieldType.DIMENSION,
658
+ type: DimensionType.STRING,
659
+ name: 'dim1',
660
+ label: 'Dim 1',
661
+ table: 'b',
662
+ tableLabel: 'b',
663
+ sql: '${TABLE}.dim1',
664
+ hidden: false,
665
+ index: 0,
666
+ },
667
+ },
668
+ metrics: {},
669
+ lineageGraph: {},
670
+ },
671
+ },
672
+ targetDatabase: SupportedDbtAdapter.POSTGRES,
673
+ meta: {},
674
+ };
675
+ expect(() => compiler.compileExplore(explore)).toThrow(/Set "nonexistent_set" not found/);
676
+ });
677
+ });
511
678
  });
512
679
  //# 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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"}
@@ -0,0 +1,14 @@
1
+ import { type Table } from '../types/explore';
2
+ /**
3
+ * Expands field references that include set references (ending with *)
4
+ * and applies exclusions (starting with -)
5
+ *
6
+ * Supports one level of set nesting: a set can reference another set,
7
+ * but the referenced set cannot contain set references.
8
+ *
9
+ * @param fields - Array of field names, set references (ending with *), or exclusions (starting with -)
10
+ * @param currentTable - The table containing the sets being expanded
11
+ * @returns Expanded field list with exclusions applied and duplicates removed
12
+ */
13
+ export declare function expandFieldsWithSets(fields: string[], currentTable: Table): string[];
14
+ //# sourceMappingURL=fieldSetExpander.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldSetExpander.d.ts","sourceRoot":"","sources":["../../../src/compiler/fieldSetExpander.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAgK9C;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,YAAY,EAAE,KAAK,GACpB,MAAM,EAAE,CAMV"}
@@ -0,0 +1,119 @@
1
+ import { CompileError } from '../types/errors';
2
+ /**
3
+ * Separates field references into inclusions and exclusions based on '-' prefix
4
+ */
5
+ function separateInclusionsAndExclusions(fields) {
6
+ const inclusions = [];
7
+ const exclusions = new Set();
8
+ for (const field of fields) {
9
+ if (field.startsWith('-')) {
10
+ exclusions.add(field.substring(1)); // Remove the '-' prefix
11
+ }
12
+ else {
13
+ inclusions.push(field);
14
+ }
15
+ }
16
+ return { inclusions, exclusions };
17
+ }
18
+ /**
19
+ * Applies exclusions and removes duplicates while preserving order
20
+ */
21
+ function applyExclusionsAndDeduplicate(expandedFields, exclusions) {
22
+ const result = [];
23
+ const seen = new Set();
24
+ for (const field of expandedFields) {
25
+ if (!exclusions.has(field) && !seen.has(field)) {
26
+ result.push(field);
27
+ seen.add(field);
28
+ }
29
+ }
30
+ return result;
31
+ }
32
+ /**
33
+ * Expands a single set, handling nested set references (one level deep only)
34
+ * and applying any exclusions defined within the set
35
+ */
36
+ function expandSingleSet(setName, setDefinition, currentTable) {
37
+ // Separate inclusions and exclusions within this set definition
38
+ const { inclusions, exclusions } = separateInclusionsAndExclusions(setDefinition.fields);
39
+ const expandedFields = [];
40
+ for (const setField of inclusions) {
41
+ if (setField.endsWith('*')) {
42
+ // Nested set reference - expand it directly (one level)
43
+ const nestedSetName = setField.substring(0, setField.length - 1);
44
+ // Check if nested set exists
45
+ if (!currentTable.sets || !currentTable.sets[nestedSetName]) {
46
+ const availableSets = currentTable.sets
47
+ ? Object.keys(currentTable.sets).join(', ')
48
+ : 'none';
49
+ throw new CompileError(`Nested set "${nestedSetName}" referenced by set "${setName}" not found in table "${currentTable.name}". Available sets: ${availableSets}`);
50
+ }
51
+ const nestedSetDef = currentTable.sets[nestedSetName];
52
+ // Check for circular reference (A references B, B references A)
53
+ if (nestedSetDef.fields.some((f) => f.endsWith('*') &&
54
+ f.substring(0, f.length - 1) === setName)) {
55
+ throw new CompileError(`Circular reference detected: set "${setName}" references set "${nestedSetName}", which references "${setName}"`);
56
+ }
57
+ // Nested sets cannot themselves contain set references
58
+ // (this ensures max one level of nesting)
59
+ if (nestedSetDef.fields.some((f) => f.endsWith('*') && !f.startsWith('-'))) {
60
+ throw new CompileError(`Set "${nestedSetName}" contains set references, but only one level of nesting is allowed. Set "${setName}" → "${nestedSetName}" → another set is not permitted.`);
61
+ }
62
+ // Expand the nested set (which will also handle its own exclusions)
63
+ const nestedExpanded = expandSingleSet(nestedSetName, nestedSetDef, currentTable);
64
+ expandedFields.push(...nestedExpanded);
65
+ }
66
+ else {
67
+ // Regular field or cross-table reference
68
+ expandedFields.push(setField);
69
+ }
70
+ }
71
+ // Apply exclusions defined in this set to the expanded fields
72
+ return applyExclusionsAndDeduplicate(expandedFields, exclusions);
73
+ }
74
+ /**
75
+ * Expands all set references from the inclusions list
76
+ */
77
+ function expandSetReferences(inclusions, currentTable) {
78
+ const expandedFields = [];
79
+ for (const inclusion of inclusions) {
80
+ if (inclusion.endsWith('*')) {
81
+ // This is a set reference
82
+ const setName = inclusion.substring(0, inclusion.length - 1);
83
+ // Check if set exists
84
+ if (!currentTable.sets || !currentTable.sets[setName]) {
85
+ const availableSets = currentTable.sets
86
+ ? Object.keys(currentTable.sets).join(', ')
87
+ : 'none';
88
+ throw new CompileError(`Set "${setName}" not found in table "${currentTable.name}". Available sets: ${availableSets}`);
89
+ }
90
+ const setDefinition = currentTable.sets[setName];
91
+ // Expand the set
92
+ const setFields = expandSingleSet(setName, setDefinition, currentTable);
93
+ expandedFields.push(...setFields);
94
+ }
95
+ else {
96
+ // Regular field reference
97
+ expandedFields.push(inclusion);
98
+ }
99
+ }
100
+ return expandedFields;
101
+ }
102
+ /**
103
+ * Expands field references that include set references (ending with *)
104
+ * and applies exclusions (starting with -)
105
+ *
106
+ * Supports one level of set nesting: a set can reference another set,
107
+ * but the referenced set cannot contain set references.
108
+ *
109
+ * @param fields - Array of field names, set references (ending with *), or exclusions (starting with -)
110
+ * @param currentTable - The table containing the sets being expanded
111
+ * @returns Expanded field list with exclusions applied and duplicates removed
112
+ */
113
+ export function expandFieldsWithSets(fields, currentTable) {
114
+ const { inclusions, exclusions } = separateInclusionsAndExclusions(fields);
115
+ const expandedFields = expandSetReferences(inclusions, currentTable);
116
+ const result = applyExclusionsAndDeduplicate(expandedFields, exclusions);
117
+ return result;
118
+ }
119
+ //# sourceMappingURL=fieldSetExpander.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldSetExpander.js","sourceRoot":"","sources":["../../../src/compiler/fieldSetExpander.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=fieldSetExpander.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldSetExpander.test.d.ts","sourceRoot":"","sources":["../../../src/compiler/fieldSetExpander.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,184 @@
1
+ import { DimensionType, FieldType, MetricType } from '../types/field';
2
+ import { expandFieldsWithSets } from './fieldSetExpander';
3
+ const createMockTable = (name, dimensions, metrics, sets) => ({
4
+ name,
5
+ label: name,
6
+ database: 'test_db',
7
+ schema: 'test_schema',
8
+ sqlTable: name,
9
+ description: `${name} table`,
10
+ dimensions: dimensions.reduce((acc, dim) => ({
11
+ ...acc,
12
+ [dim]: {
13
+ fieldType: FieldType.DIMENSION,
14
+ type: DimensionType.STRING,
15
+ name: dim,
16
+ label: dim,
17
+ table: name,
18
+ tableLabel: name,
19
+ sql: `\${TABLE}.${dim}`,
20
+ hidden: false,
21
+ index: 0,
22
+ },
23
+ }), {}),
24
+ metrics: metrics.reduce((acc, metric) => ({
25
+ ...acc,
26
+ [metric]: {
27
+ fieldType: FieldType.METRIC,
28
+ type: MetricType.COUNT,
29
+ name: metric,
30
+ label: metric,
31
+ table: name,
32
+ tableLabel: name,
33
+ sql: `COUNT(\${${metric}})`,
34
+ hidden: false,
35
+ index: 0,
36
+ isAutoGenerated: false,
37
+ },
38
+ }), {}),
39
+ lineageGraph: {},
40
+ sets,
41
+ });
42
+ describe('expandFieldsWithSets', () => {
43
+ describe('Basic Expansion', () => {
44
+ it('should expand a simple set reference', () => {
45
+ const table = createMockTable('orders', ['order_id', 'customer_id', 'total'], ['count'], {
46
+ basic_fields: {
47
+ fields: ['order_id', 'customer_id'],
48
+ },
49
+ });
50
+ const result = expandFieldsWithSets(['basic_fields*'], table);
51
+ expect(result).toEqual(['order_id', 'customer_id']);
52
+ });
53
+ it('should pass through regular field references unchanged', () => {
54
+ const table = createMockTable('orders', ['order_id', 'customer_id'], []);
55
+ const result = expandFieldsWithSets(['order_id', 'customer_id'], table);
56
+ expect(result).toEqual(['order_id', 'customer_id']);
57
+ });
58
+ it('should mix set references and regular fields', () => {
59
+ const table = createMockTable('orders', ['order_id', 'customer_id', 'created_at', 'total'], [], {
60
+ id_fields: {
61
+ fields: ['order_id', 'customer_id'],
62
+ },
63
+ });
64
+ const result = expandFieldsWithSets(['id_fields*', 'created_at', 'total'], table);
65
+ expect(result).toEqual([
66
+ 'order_id',
67
+ 'customer_id',
68
+ 'created_at',
69
+ 'total',
70
+ ]);
71
+ });
72
+ });
73
+ describe('Exclusions', () => {
74
+ it('should exclude fields with - prefix', () => {
75
+ const table = createMockTable('orders', ['order_id', 'customer_id', 'total', 'tax'], [], {
76
+ all_fields: {
77
+ fields: ['order_id', 'customer_id', 'total', 'tax'],
78
+ },
79
+ });
80
+ const result = expandFieldsWithSets(['all_fields*', '-tax'], table);
81
+ expect(result).toEqual(['order_id', 'customer_id', 'total']);
82
+ });
83
+ it('should handle multiple exclusions', () => {
84
+ const table = createMockTable('orders', ['a', 'b', 'c', 'd', 'e'], [], {
85
+ all_fields: {
86
+ fields: ['a', 'b', 'c', 'd', 'e'],
87
+ },
88
+ });
89
+ const result = expandFieldsWithSets(['all_fields*', '-b', '-d'], table);
90
+ expect(result).toEqual(['a', 'c', 'e']);
91
+ });
92
+ it('handles nested exclusions', () => {
93
+ const table = createMockTable('orders', ['a', 'b', 'c', 'd', 'e'], [], {
94
+ base_fields: {
95
+ fields: ['a', 'b', 'c'],
96
+ },
97
+ all_fields: {
98
+ fields: ['base_fields*', '-c'],
99
+ },
100
+ });
101
+ const result = expandFieldsWithSets(['all_fields*'], table);
102
+ expect(result).toEqual(['a', 'b']);
103
+ });
104
+ it('should preserve order when excluding', () => {
105
+ const table = createMockTable('orders', ['created_at', 'order_id', 'customer_id', 'updated_at'], [], {
106
+ middle_fields: {
107
+ fields: ['order_id', 'customer_id'],
108
+ },
109
+ });
110
+ const result = expandFieldsWithSets(['created_at', 'middle_fields*', 'updated_at', '-customer_id'], table);
111
+ expect(result).toEqual(['created_at', 'order_id', 'updated_at']);
112
+ });
113
+ });
114
+ describe('Nested Sets', () => {
115
+ it('should expand nested set references (one level)', () => {
116
+ const table = createMockTable('orders', ['order_id', 'customer_id', 'total', 'tax'], [], {
117
+ id_fields: {
118
+ fields: ['order_id', 'customer_id'],
119
+ },
120
+ money_fields: {
121
+ fields: ['total', 'tax'],
122
+ },
123
+ all_fields: {
124
+ fields: ['id_fields*', 'money_fields*'],
125
+ },
126
+ });
127
+ const result = expandFieldsWithSets(['all_fields*'], table);
128
+ expect(result).toEqual(['order_id', 'customer_id', 'total', 'tax']);
129
+ });
130
+ it('should throw error for sets with more than one level of nesting', () => {
131
+ const table = createMockTable('orders', ['a', 'b', 'c'], [], {
132
+ level1: { fields: ['a'] },
133
+ level2: { fields: ['level1*', 'b'] },
134
+ level3: { fields: ['level2*', 'c'] },
135
+ });
136
+ // level3 contains level2*, and level2 contains level1*
137
+ // This violates one-level nesting rule
138
+ expect(() => expandFieldsWithSets(['level3*'], table)).toThrow(/only one level of nesting is allowed/);
139
+ });
140
+ });
141
+ describe('Error Handling', () => {
142
+ it('should throw error for non-existent set', () => {
143
+ const table = createMockTable('orders', ['order_id'], []);
144
+ expect(() => expandFieldsWithSets(['nonexistent_set*'], table)).toThrow(/Set "nonexistent_set" not found/);
145
+ });
146
+ it('should detect direct circular references', () => {
147
+ const table = createMockTable('orders', ['field1'], [], {
148
+ set_a: { fields: ['set_b*'] },
149
+ set_b: { fields: ['set_a*'] },
150
+ });
151
+ expect(() => expandFieldsWithSets(['set_a*'], table)).toThrow(/Circular reference detected/);
152
+ });
153
+ });
154
+ describe('Deduplication', () => {
155
+ it('should deduplicate fields from multiple sets', () => {
156
+ const table = createMockTable('orders', ['order_id', 'customer_id', 'total'], [], {
157
+ set1: { fields: ['order_id', 'customer_id'] },
158
+ set2: { fields: ['customer_id', 'total'] },
159
+ });
160
+ const result = expandFieldsWithSets(['set1*', 'set2*'], table);
161
+ expect(result).toEqual(['order_id', 'customer_id', 'total']);
162
+ });
163
+ it('should not duplicate explicitly listed fields', () => {
164
+ const table = createMockTable('orders', ['order_id', 'customer_id'], [], {
165
+ id_fields: { fields: ['order_id', 'customer_id'] },
166
+ });
167
+ const result = expandFieldsWithSets(['order_id', 'id_fields*'], table);
168
+ expect(result).toEqual(['order_id', 'customer_id']);
169
+ });
170
+ });
171
+ describe('Empty Sets', () => {
172
+ it('should handle empty field list', () => {
173
+ const table = createMockTable('orders', ['order_id'], []);
174
+ const result = expandFieldsWithSets([], table);
175
+ expect(result).toEqual([]);
176
+ });
177
+ it('should handle only exclusions', () => {
178
+ const table = createMockTable('orders', ['order_id'], []);
179
+ const result = expandFieldsWithSets(['-order_id'], table);
180
+ expect(result).toEqual([]);
181
+ });
182
+ });
183
+ });
184
+ //# sourceMappingURL=fieldSetExpander.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldSetExpander.test.js","sourceRoot":"","sources":["../../../src/compiler/fieldSetExpander.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"translator.d.ts","sourceRoot":"","sources":["../../../src/compiler/translator.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EASnB,KAAK,SAAS,EAEd,KAAK,YAAY,EAEpB,MAAM,cAAc,CAAC;AAMtB,OAAO,EAEH,KAAK,OAAO,EACZ,KAAK,YAAY,EACjB,KAAK,KAAK,EACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,aAAa,EAShB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAG9E,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAIH,KAAK,OAAO,EACf,MAAM,qBAAqB,CAAC;AAiS7B,eAAO,MAAM,YAAY,gBACR,mBAAmB,SACzB,YAAY,cACP,SAAS,EAAE,mBACN,sBAAsB,CAAC,WAAW,CAAC,gBACtC,OAAO,GAAG,IAAI,KAC7B,IAAI,CAAC,KAAK,EAAE,cAAc,CAqR5B,CAAC;AA6CF,eAAO,MAAM,eAAe,WAChB,YAAY,EAAE,eACT,OAAO,eACP,mBAAmB,WACvB,SAAS,EAAE,uBACC,mBAAmB,0BAChB,sBAAsB,KAC/C,OAAO,CAAC,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,CAuMpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,WACpB,YAAY,EAAE,oBACJ;IACd,CAAC,QAAQ,EAAE,MAAM,GAAG;QAChB,CAAC,MAAM,EAAE,MAAM,GAAG;YACd,CAAC,KAAK,EAAE,MAAM,GAAG;gBAAE,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAA;aAAE,CAAC;SACxD,CAAC;KACL,CAAC;CACL,+BAC2B,OAAO,0BACZ,OAAO,KAC/B,YAAY,EA6Fd,CAAC;AAEF,eAAO,MAAM,+BAA+B,cAC7B,YAAY,EAAE,KAC1B;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAK/C,CAAC"}
1
+ {"version":3,"file":"translator.d.ts","sourceRoot":"","sources":["../../../src/compiler/translator.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EASnB,KAAK,SAAS,EAEd,KAAK,YAAY,EAEpB,MAAM,cAAc,CAAC;AAMtB,OAAO,EAEH,KAAK,OAAO,EACZ,KAAK,YAAY,EACjB,KAAK,KAAK,EACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,aAAa,EAShB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAG9E,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAIH,KAAK,OAAO,EACf,MAAM,qBAAqB,CAAC;AA0Y7B,eAAO,MAAM,YAAY,gBACR,mBAAmB,SACzB,YAAY,cACP,SAAS,EAAE,mBACN,sBAAsB,CAAC,WAAW,CAAC,gBACtC,OAAO,GAAG,IAAI,KAC7B,IAAI,CAAC,KAAK,EAAE,cAAc,CA0R5B,CAAC;AA6CF,eAAO,MAAM,eAAe,WAChB,YAAY,EAAE,eACT,OAAO,eACP,mBAAmB,WACvB,SAAS,EAAE,uBACC,mBAAmB,0BAChB,sBAAsB,KAC/C,OAAO,CAAC,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,CAuMpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,WACpB,YAAY,EAAE,oBACJ;IACd,CAAC,QAAQ,EAAE,MAAM,GAAG;QAChB,CAAC,MAAM,EAAE,MAAM,GAAG;YACd,CAAC,KAAK,EAAE,MAAM,GAAG;gBAAE,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAA;aAAE,CAAC;SACxD,CAAC;KACL,CAAC;CACL,+BAC2B,OAAO,0BACZ,OAAO,KAC/B,YAAY,EA6Fd,CAAC;AAEF,eAAO,MAAM,+BAA+B,cAC7B,YAAY,EAAE,KAC1B;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAK/C,CAAC"}