@duckcodeailabs/dql-core 1.6.0 → 1.6.2

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 (60) hide show
  1. package/README.md +7 -5
  2. package/dist/ast/index.d.ts +1 -1
  3. package/dist/ast/index.d.ts.map +1 -1
  4. package/dist/ast/index.js.map +1 -1
  5. package/dist/ast/nodes.d.ts +51 -1
  6. package/dist/ast/nodes.d.ts.map +1 -1
  7. package/dist/ast/nodes.js +3 -0
  8. package/dist/ast/nodes.js.map +1 -1
  9. package/dist/ast/printer.d.ts.map +1 -1
  10. package/dist/ast/printer.js +62 -0
  11. package/dist/ast/printer.js.map +1 -1
  12. package/dist/ast/visitor.d.ts +5 -1
  13. package/dist/ast/visitor.d.ts.map +1 -1
  14. package/dist/ast/visitor.js +16 -0
  15. package/dist/ast/visitor.js.map +1 -1
  16. package/dist/formatter/formatter.d.ts.map +1 -1
  17. package/dist/formatter/formatter.js +122 -0
  18. package/dist/formatter/formatter.js.map +1 -1
  19. package/dist/lexer/token.d.ts +5 -0
  20. package/dist/lexer/token.d.ts.map +1 -1
  21. package/dist/lexer/token.js +10 -0
  22. package/dist/lexer/token.js.map +1 -1
  23. package/dist/lineage/builder.d.ts +33 -0
  24. package/dist/lineage/builder.d.ts.map +1 -1
  25. package/dist/lineage/builder.js +108 -11
  26. package/dist/lineage/builder.js.map +1 -1
  27. package/dist/lineage/index.d.ts +2 -2
  28. package/dist/lineage/index.d.ts.map +1 -1
  29. package/dist/lineage/index.js +1 -1
  30. package/dist/lineage/index.js.map +1 -1
  31. package/dist/lineage/lineage-graph.d.ts +2 -2
  32. package/dist/lineage/lineage-graph.d.ts.map +1 -1
  33. package/dist/lineage/lineage-graph.js +2 -0
  34. package/dist/lineage/lineage-graph.js.map +1 -1
  35. package/dist/lineage/query.d.ts +64 -0
  36. package/dist/lineage/query.d.ts.map +1 -1
  37. package/dist/lineage/query.js +260 -0
  38. package/dist/lineage/query.js.map +1 -1
  39. package/dist/manifest/builder.d.ts +8 -0
  40. package/dist/manifest/builder.d.ts.map +1 -1
  41. package/dist/manifest/builder.js +481 -73
  42. package/dist/manifest/builder.js.map +1 -1
  43. package/dist/manifest/index.d.ts +2 -2
  44. package/dist/manifest/index.d.ts.map +1 -1
  45. package/dist/manifest/index.js +1 -1
  46. package/dist/manifest/index.js.map +1 -1
  47. package/dist/manifest/types.d.ts +63 -0
  48. package/dist/manifest/types.d.ts.map +1 -1
  49. package/dist/parser/parser.d.ts +4 -0
  50. package/dist/parser/parser.d.ts.map +1 -1
  51. package/dist/parser/parser.js +320 -3
  52. package/dist/parser/parser.js.map +1 -1
  53. package/dist/semantic/analyzer.d.ts +2 -0
  54. package/dist/semantic/analyzer.d.ts.map +1 -1
  55. package/dist/semantic/analyzer.js +28 -0
  56. package/dist/semantic/analyzer.js.map +1 -1
  57. package/dist/semantic/semantic-layer.d.ts.map +1 -1
  58. package/dist/semantic/semantic-layer.js +24 -2
  59. package/dist/semantic/semantic-layer.js.map +1 -1
  60. package/package.json +2 -2
package/README.md CHANGED
@@ -16,15 +16,17 @@ pnpm add @duckcodeailabs/dql-core
16
16
  import { parse, analyze } from '@duckcodeailabs/dql-core';
17
17
 
18
18
  const source = `
19
- block revenue_by_segment {
19
+ block "Revenue by segment" {
20
+ domain = "finance"
20
21
  type = "custom"
21
- title = "Revenue by Segment"
22
+ status = "draft"
23
+ description = "Revenue by segment."
22
24
 
23
- query = <<SQL
25
+ query = """
24
26
  select segment, sum(revenue) as revenue
25
27
  from revenue
26
28
  group by 1
27
- SQL
29
+ """
28
30
  }
29
31
  `;
30
32
 
@@ -43,5 +45,5 @@ console.log(diagnostics);
43
45
 
44
46
  ## Learn More
45
47
 
46
- - Language spec: [`../../docs/dql-language-spec.md`](../../docs/dql-language-spec.md)
48
+ - Language reference: [`../../docs/reference/language.md`](../../docs/reference/language.md)
47
49
  - Root docs: [`../../README.md`](../../README.md)
@@ -1,4 +1,4 @@
1
- export { NodeKind, type BaseNode, type ChartType, type ProgramNode, type StatementNode, type DashboardNode, type DashboardBodyItem, type ChartCallNode, type FilterCallNode, type FilterType, type SQLQueryNode, type TemplateInterpolation, type VariableDeclNode, type DecoratorNode, type NamedArgNode, type ExpressionNode, type StringLiteralNode, type NumberLiteralNode, type BooleanLiteralNode, type ArrayLiteralNode, type IdentifierNode, type BinaryExprNode, type IntervalExprNode, type FunctionCallNode, type TemplateStringNode, type WorkbookNode, type PageNode, type ParamType, type ParamDeclNode, type ImportDeclNode, type UseDeclNode, type LayoutBlockNode, type LayoutRowNode, type LayoutRowItem, type BlockDeclNode, type BlockParamsNode, type BlockParamEntry, type BlockVisualizationNode, type BlockTestNode, type DigestNode, type NarrativeNode, } from './nodes.js';
1
+ export { NodeKind, type BaseNode, type ChartType, type ProgramNode, type StatementNode, type DashboardNode, type DashboardBodyItem, type ChartCallNode, type FilterCallNode, type FilterType, type SQLQueryNode, type TemplateInterpolation, type VariableDeclNode, type DecoratorNode, type NamedArgNode, type ExpressionNode, type StringLiteralNode, type NumberLiteralNode, type BooleanLiteralNode, type ArrayLiteralNode, type IdentifierNode, type BinaryExprNode, type IntervalExprNode, type FunctionCallNode, type TemplateStringNode, type WorkbookNode, type PageNode, type ParamType, type ParamDeclNode, type ImportDeclNode, type UseDeclNode, type LayoutBlockNode, type LayoutRowNode, type LayoutRowItem, type BlockDeclNode, type TermDeclNode, type BusinessViewDeclNode, type BusinessViewIncludeNode, type BlockParamsNode, type BlockParamEntry, type BlockVisualizationNode, type BlockTestNode, type DigestNode, type NarrativeNode, } from './nodes.js';
2
2
  export { type ASTVisitor, BaseVisitor } from './visitor.js';
3
3
  export { printAST } from './printer.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,aAAa,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,aAAa,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,GAyCT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAmB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,GA4CT,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAmB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
@@ -25,6 +25,9 @@ export declare enum NodeKind {
25
25
  FunctionCall = "FunctionCall",
26
26
  TemplateString = "TemplateString",
27
27
  BlockDecl = "BlockDecl",
28
+ TermDecl = "TermDecl",
29
+ BusinessViewDecl = "BusinessViewDecl",
30
+ BusinessViewInclude = "BusinessViewInclude",
28
31
  BlockParams = "BlockParams",
29
32
  BlockVisualization = "BlockVisualization",
30
33
  BlockTest = "BlockTest",
@@ -40,7 +43,7 @@ export interface ProgramNode extends BaseNode {
40
43
  kind: NodeKind.Program;
41
44
  statements: StatementNode[];
42
45
  }
43
- export type StatementNode = DashboardNode | ChartCallNode | WorkbookNode | ImportDeclNode | BlockDeclNode | DigestNode;
46
+ export type StatementNode = DashboardNode | ChartCallNode | WorkbookNode | ImportDeclNode | BlockDeclNode | TermDeclNode | BusinessViewDeclNode | DigestNode;
44
47
  export interface DashboardNode extends BaseNode {
45
48
  kind: NodeKind.Dashboard;
46
49
  title: string;
@@ -175,9 +178,13 @@ export interface BlockDeclNode extends BaseNode {
175
178
  metricRef?: string;
176
179
  /** For blockType 'semantic': multiple metric references. Takes precedence over metricRef when present. */
177
180
  metricsRef?: string[];
181
+ /** For blockType 'semantic': semantic dimension references used to group the metric query. */
182
+ dimensionsRef?: string[];
178
183
  description?: string;
179
184
  tags?: string[];
180
185
  owner?: string;
186
+ /** Business glossary terms this block implements or depends on. */
187
+ termRefs?: string[];
181
188
  params?: BlockParamsNode;
182
189
  /** For blockType 'custom': the SQL query. Must not be present on 'semantic' blocks. */
183
190
  query?: SQLQueryNode;
@@ -220,6 +227,25 @@ export interface BlockDeclNode extends BaseNode {
220
227
  */
221
228
  datalexContract?: string;
222
229
  }
230
+ export interface TermDeclNode extends BaseNode {
231
+ kind: NodeKind.TermDecl;
232
+ name: string;
233
+ domain?: string;
234
+ termType?: string;
235
+ status?: string;
236
+ description?: string;
237
+ tags?: string[];
238
+ owner?: string;
239
+ identifiers?: string[];
240
+ synonyms?: string[];
241
+ businessOutcome?: string;
242
+ businessOwner?: string;
243
+ decisionUse?: string;
244
+ reviewCadence?: string;
245
+ businessRules?: string[];
246
+ caveats?: string[];
247
+ decorators: DecoratorNode[];
248
+ }
223
249
  export interface BlockParamsNode extends BaseNode {
224
250
  kind: NodeKind.BlockParams;
225
251
  params: BlockParamEntry[];
@@ -239,6 +265,30 @@ export interface BlockTestNode extends BaseNode {
239
265
  operator: '>' | '<' | '>=' | '<=' | '==' | '!=' | 'IN';
240
266
  expected: ExpressionNode;
241
267
  }
268
+ export interface BusinessViewDeclNode extends BaseNode {
269
+ kind: NodeKind.BusinessViewDecl;
270
+ name: string;
271
+ domain?: string;
272
+ status?: string;
273
+ description?: string;
274
+ tags?: string[];
275
+ owner?: string;
276
+ /** Business glossary terms this composed view represents. */
277
+ termRefs?: string[];
278
+ businessOutcome?: string;
279
+ businessOwner?: string;
280
+ decisionUse?: string;
281
+ reviewCadence?: string;
282
+ businessRules?: string[];
283
+ caveats?: string[];
284
+ includes: BusinessViewIncludeNode[];
285
+ decorators: DecoratorNode[];
286
+ }
287
+ export interface BusinessViewIncludeNode extends BaseNode {
288
+ kind: NodeKind.BusinessViewInclude;
289
+ refType: 'block' | 'business_view';
290
+ name: string;
291
+ }
242
292
  export interface LayoutBlockNode extends BaseNode {
243
293
  kind: NodeKind.LayoutBlock;
244
294
  columns: number;
@@ -1 +1 @@
1
- {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAI1D,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;IACzC,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAID,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;CAClB;AAID,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,KAAK,GACL,KAAK,GACL,KAAK,GACL,SAAS,GACT,MAAM,GACN,SAAS,GACT,OAAO,GACP,QAAQ,GACR,aAAa,GACb,aAAa,GACb,OAAO,GACP,WAAW,GACX,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,WAAW,GACX,iBAAiB,GACjB,OAAO,GACP,WAAW,GACX,SAAS,GACT,KAAK,CAAC;AAIV,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;IACvB,UAAU,EAAE,aAAa,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,UAAU,CAAC;AAIvH,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,IAAI,EAAE,iBAAiB,EAAE,CAAC;CAC3B;AAED,MAAM,MAAM,iBAAiB,GAAG,gBAAgB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,WAAW,GAAG,eAAe,CAAC;AAOlI,MAAM,WAAW,UAAW,SAAQ,QAAQ;IAC1C,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,iBAAiB,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,UAAU,EAAE,YAAY,EAAE,CAAC;CAC5B;AAID,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,YAAY,CAAC;IACpB,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,UAAU,EAAE,aAAa,EAAE,CAAC;CAC7B;AAID,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,cAAc,GAAG,OAAO,CAAC;AAIvF,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC1B,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAID,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,qBAAqB,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,CAAC;CAClB;AAID,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,cAAc,CAAC;CAC7B;AAID,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B;AAID,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,CAAC;CACvB;AAID,MAAM,MAAM,cAAc,GACtB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IACjD,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IACjD,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAmB,SAAQ,QAAQ;IAClD,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC1B,QAAQ,EAAE,GAAG,GAAG,GAAG,CAAC;IACpB,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,cAAc,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,QAAQ;IAClD,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC;IAC9B,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC;CACvC;AAID,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,iBAAiB,EAAE,CAAC;CAC3B;AAID,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjE,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAID,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6GAA6G;IAC7G,SAAS,EAAE,UAAU,GAAG,QAAQ,CAAC;IACjC,wGAAwG;IACxG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,uFAAuF;IACvF,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,cAAc,CAAC;IAC5B,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,sBAAuB,SAAQ,QAAQ;IACtD,IAAI,EAAE,QAAQ,CAAC,kBAAkB,CAAC;IAClC,UAAU,EAAE,YAAY,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACvD,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAID,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,aAAa,GAAG,cAAc,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"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"}
package/dist/ast/nodes.js CHANGED
@@ -26,6 +26,9 @@ export var NodeKind;
26
26
  NodeKind["FunctionCall"] = "FunctionCall";
27
27
  NodeKind["TemplateString"] = "TemplateString";
28
28
  NodeKind["BlockDecl"] = "BlockDecl";
29
+ NodeKind["TermDecl"] = "TermDecl";
30
+ NodeKind["BusinessViewDecl"] = "BusinessViewDecl";
31
+ NodeKind["BusinessViewInclude"] = "BusinessViewInclude";
29
32
  NodeKind["BlockParams"] = "BlockParams";
30
33
  NodeKind["BlockVisualization"] = "BlockVisualization";
31
34
  NodeKind["BlockTest"] = "BlockTest";
@@ -1 +1 @@
1
- {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"AAEA,uBAAuB;AAEvB,MAAM,CAAN,IAAY,QA+BX;AA/BD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,yCAA6B,CAAA;IAC7B,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,+BAAmB,CAAA;IACnB,uCAA2B,CAAA;IAC3B,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,iCAAqB,CAAA;IACrB,iCAAqB,CAAA;IACrB,2CAA+B,CAAA;IAC/B,2CAA+B,CAAA;IAC/B,6CAAiC,CAAA;IACjC,yCAA6B,CAAA;IAC7B,qCAAyB,CAAA;IACzB,qCAAyB,CAAA;IACzB,yCAA6B,CAAA;IAC7B,yCAA6B,CAAA;IAC7B,6CAAiC,CAAA;IACjC,mCAAuB,CAAA;IACvB,uCAA2B,CAAA;IAC3B,qDAAyC,CAAA;IACzC,mCAAuB,CAAA;IACvB,6BAAiB,CAAA;IACjB,mCAAuB,CAAA;AACzB,CAAC,EA/BW,QAAQ,KAAR,QAAQ,QA+BnB"}
1
+ {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"AAEA,uBAAuB;AAEvB,MAAM,CAAN,IAAY,QAkCX;AAlCD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,yCAA6B,CAAA;IAC7B,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,+BAAmB,CAAA;IACnB,uCAA2B,CAAA;IAC3B,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,iCAAqB,CAAA;IACrB,iCAAqB,CAAA;IACrB,2CAA+B,CAAA;IAC/B,2CAA+B,CAAA;IAC/B,6CAAiC,CAAA;IACjC,yCAA6B,CAAA;IAC7B,qCAAyB,CAAA;IACzB,qCAAyB,CAAA;IACzB,yCAA6B,CAAA;IAC7B,yCAA6B,CAAA;IAC7B,6CAAiC,CAAA;IACjC,mCAAuB,CAAA;IACvB,iCAAqB,CAAA;IACrB,iDAAqC,CAAA;IACrC,uDAA2C,CAAA;IAC3C,uCAA2B,CAAA;IAC3B,qDAAyC,CAAA;IACzC,mCAAuB,CAAA;IACvB,6BAAiB,CAAA;IACjB,mCAAuB,CAAA;AACzB,CAAC,EAlCW,QAAQ,KAAR,QAAQ,QAkCnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../src/ast/printer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAWZ,MAAM,YAAY,CAAC;AAGpB,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAMlD"}
1
+ {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../src/ast/printer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAaZ,MAAM,YAAY,CAAC;AAGpB,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAMlD"}
@@ -18,6 +18,10 @@ function printStatement(node, indent) {
18
18
  return `${' '.repeat(indent)}Import [${node.names.join(', ')}] from "${node.path}"\n`;
19
19
  case NodeKind.BlockDecl:
20
20
  return printBlockDecl(node, indent);
21
+ case NodeKind.TermDecl:
22
+ return printTermDecl(node, indent);
23
+ case NodeKind.BusinessViewDecl:
24
+ return printBusinessViewDecl(node, indent);
21
25
  default:
22
26
  return '';
23
27
  }
@@ -117,6 +121,14 @@ function printBlockDecl(node, indent) {
117
121
  result += `${prefix} description = "${node.description}"\n`;
118
122
  if (node.tags)
119
123
  result += `${prefix} tags = [${node.tags.map(t => `"${t}"`).join(', ')}]\n`;
124
+ if (node.termRefs)
125
+ result += `${prefix} terms = [${node.termRefs.map(t => `"${t}"`).join(', ')}]\n`;
126
+ if (node.metricRef !== undefined)
127
+ result += `${prefix} metric = "${node.metricRef}"\n`;
128
+ if (node.metricsRef)
129
+ result += `${prefix} metrics = [${node.metricsRef.map(t => `"${t}"`).join(', ')}]\n`;
130
+ if (node.dimensionsRef)
131
+ result += `${prefix} dimensions = [${node.dimensionsRef.map(t => `"${t}"`).join(', ')}]\n`;
120
132
  if (node.query)
121
133
  result += `${prefix} SQL: ${node.query.rawSQL.substring(0, 60)}...\n`;
122
134
  if (node.visualization) {
@@ -130,6 +142,56 @@ function printBlockDecl(node, indent) {
130
142
  }
131
143
  return result;
132
144
  }
145
+ function printTermDecl(node, indent) {
146
+ const prefix = ' '.repeat(indent);
147
+ let result = `${prefix}Term "${node.name}"\n`;
148
+ for (const dec of node.decorators) {
149
+ result += printDecorator(dec, indent + 1);
150
+ }
151
+ if (node.domain)
152
+ result += `${prefix} domain = "${node.domain}"\n`;
153
+ if (node.termType)
154
+ result += `${prefix} type = "${node.termType}"\n`;
155
+ if (node.status)
156
+ result += `${prefix} status = "${node.status}"\n`;
157
+ if (node.description)
158
+ result += `${prefix} description = "${node.description}"\n`;
159
+ if (node.tags)
160
+ result += `${prefix} tags = [${node.tags.map(t => `"${t}"`).join(', ')}]\n`;
161
+ if (node.owner)
162
+ result += `${prefix} owner = "${node.owner}"\n`;
163
+ if (node.identifiers)
164
+ result += `${prefix} identifiers = [${node.identifiers.map(t => `"${t}"`).join(', ')}]\n`;
165
+ if (node.synonyms)
166
+ result += `${prefix} synonyms = [${node.synonyms.map(t => `"${t}"`).join(', ')}]\n`;
167
+ return result;
168
+ }
169
+ function printBusinessViewDecl(node, indent) {
170
+ const prefix = ' '.repeat(indent);
171
+ let result = `${prefix}BusinessView "${node.name}"\n`;
172
+ for (const dec of node.decorators) {
173
+ result += printDecorator(dec, indent + 1);
174
+ }
175
+ if (node.domain)
176
+ result += `${prefix} domain = "${node.domain}"\n`;
177
+ if (node.status)
178
+ result += `${prefix} status = "${node.status}"\n`;
179
+ if (node.description)
180
+ result += `${prefix} description = "${node.description}"\n`;
181
+ if (node.tags)
182
+ result += `${prefix} tags = [${node.tags.map(t => `"${t}"`).join(', ')}]\n`;
183
+ if (node.owner)
184
+ result += `${prefix} owner = "${node.owner}"\n`;
185
+ if (node.termRefs)
186
+ result += `${prefix} terms = [${node.termRefs.map(t => `"${t}"`).join(', ')}]\n`;
187
+ if (node.includes.length > 0) {
188
+ result += `${prefix} includes\n`;
189
+ for (const ref of node.includes) {
190
+ result += `${prefix} ${ref.refType} "${ref.name}"\n`;
191
+ }
192
+ }
193
+ return result;
194
+ }
133
195
  function expressionToString(node) {
134
196
  switch (node.kind) {
135
197
  case NodeKind.StringLiteral:
@@ -1 +1 @@
1
- {"version":3,"file":"printer.js","sourceRoot":"","sources":["../../src/ast/printer.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,UAAU,QAAQ,CAAC,IAAiB;IACxC,IAAI,MAAM,GAAG,WAAW,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,IAAmB,EAAE,MAAc;IACzD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ,CAAC,SAAS;YACrB,OAAO,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,KAAK,QAAQ,CAAC,SAAS;YACrB,OAAO,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClC,KAAK,QAAQ,CAAC,QAAQ;YACpB,OAAO,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACrC,KAAK,QAAQ,CAAC,UAAU;YACtB,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,KAAK,CAAC;QACzF,KAAK,QAAQ,CAAC,SAAS;YACrB,OAAO,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAkB,EAAE,MAAc;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,aAAa,IAAI,CAAC,KAAK,KAAK,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,WAAW,IAAI,CAAC,KAAK,KAAK,CAAC;QAC9C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,QAAQ,CAAC,YAAY;oBACxB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC1C,MAAM;gBACR,KAAK,QAAQ,CAAC,SAAS;oBACrB,MAAM,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;oBACvC,MAAM;gBACR,KAAK,QAAQ,CAAC,UAAU;oBACtB,MAAM,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;oBACxC,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,IAAmB,EAAE,MAAc;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,cAAc,IAAI,CAAC,KAAK,KAAK,CAAC;IACpD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,QAAQ,CAAC,YAAY;gBACxB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC1C,MAAM;YACR,KAAK,QAAQ,CAAC,SAAS;gBACrB,MAAM,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,QAAQ,CAAC,UAAU;gBACtB,MAAM,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;gBACxC,MAAM;QACV,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,UAAU,CAAC,IAAmB,EAAE,MAAc;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,cAAc,IAAI,CAAC,SAAS,IAAI,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,IAAoB,EAAE,MAAc;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,eAAe,IAAI,CAAC,UAAU,IAAI,CAAC;IACzD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,MAAM,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;IACrD,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,IAAsB,EAAE,MAAc;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,GAAG,MAAM,OAAO,IAAI,CAAC,IAAI,MAAM,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AACjF,CAAC;AAED,SAAS,cAAc,CAAC,IAAmB,EAAE,MAAc;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACtC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC/F,CAAC;IACD,OAAO,MAAM,GAAG,IAAI,CAAC;AACvB,CAAC;AAED,SAAS,aAAa,CAAC,IAAkB,EAAE,MAAc;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI,MAAM,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AACvE,CAAC;AAED,SAAS,cAAc,CAAC,IAAmB,EAAE,MAAc;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,GAAG,MAAM,UAAU,IAAI,CAAC,IAAI,KAAK,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,GAAG,MAAM,eAAe,IAAI,CAAC,MAAM,KAAK,CAAC;IACpE,IAAI,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,GAAG,MAAM,aAAa,IAAI,CAAC,SAAS,KAAK,CAAC;IACxE,IAAI,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,GAAG,MAAM,oBAAoB,IAAI,CAAC,WAAW,KAAK,CAAC;IACnF,IAAI,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,GAAG,MAAM,aAAa,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC5F,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,GAAG,MAAM,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC;IACvF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;YACjD,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,MAAM,YAAY,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;IACxD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAoB;IAC9C,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ,CAAC,aAAa;YACzB,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;QAC3B,KAAK,QAAQ,CAAC,aAAa;YACzB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,QAAQ,CAAC,cAAc;YAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,QAAQ,CAAC,UAAU;YACtB,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,KAAK,QAAQ,CAAC,YAAY;YACxB,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACjE,KAAK,QAAQ,CAAC,UAAU;YACtB,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACjG,KAAK,QAAQ,CAAC,YAAY;YACxB,OAAO,aAAa,IAAI,CAAC,KAAK,GAAG,CAAC;QACpC,KAAK,QAAQ,CAAC,YAAY;YACxB,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAChF,KAAK,QAAQ,CAAC,cAAc;YAC1B,OAAO,IAAI,CAAC,KAAK;iBACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;iBACtE,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"printer.js","sourceRoot":"","sources":["../../src/ast/printer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ProgramNode, DashboardNode, ChartCallNode, FilterCallNode, VariableDeclNode, DecoratorNode, SQLQueryNode, NamedArgNode, StringLiteralNode, NumberLiteralNode, BooleanLiteralNode, ArrayLiteralNode, IdentifierNode, BinaryExprNode, IntervalExprNode, FunctionCallNode, TemplateStringNode, ExpressionNode, DashboardBodyItem, StatementNode, BlockDeclNode } from './nodes.js';
1
+ import type { ProgramNode, DashboardNode, ChartCallNode, FilterCallNode, VariableDeclNode, DecoratorNode, SQLQueryNode, NamedArgNode, StringLiteralNode, NumberLiteralNode, BooleanLiteralNode, ArrayLiteralNode, IdentifierNode, BinaryExprNode, IntervalExprNode, FunctionCallNode, TemplateStringNode, ExpressionNode, DashboardBodyItem, StatementNode, BlockDeclNode, TermDeclNode, BusinessViewDeclNode } from './nodes.js';
2
2
  export interface ASTVisitor<T = void> {
3
3
  visitProgram(node: ProgramNode): T;
4
4
  visitDashboard(node: DashboardNode): T;
@@ -18,6 +18,8 @@ export interface ASTVisitor<T = void> {
18
18
  visitFunctionCall(node: FunctionCallNode): T;
19
19
  visitTemplateString(node: TemplateStringNode): T;
20
20
  visitBlockDecl(node: BlockDeclNode): T;
21
+ visitTermDecl(node: TermDeclNode): T;
22
+ visitBusinessViewDecl(node: BusinessViewDeclNode): T;
21
23
  }
22
24
  export declare abstract class BaseVisitor<T = void> implements ASTVisitor<T> {
23
25
  visitProgram(node: ProgramNode): T;
@@ -41,5 +43,7 @@ export declare abstract class BaseVisitor<T = void> implements ASTVisitor<T> {
41
43
  visitFunctionCall(node: FunctionCallNode): T;
42
44
  visitTemplateString(node: TemplateStringNode): T;
43
45
  visitBlockDecl(node: BlockDeclNode): T;
46
+ visitTermDecl(node: TermDeclNode): T;
47
+ visitBusinessViewDecl(node: BusinessViewDeclNode): T;
44
48
  }
45
49
  //# sourceMappingURL=visitor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../src/ast/visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../src/ast/visitor.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,10 @@ export class BaseVisitor {
14
14
  return this.visitChartCall(node);
15
15
  case NodeKind.BlockDecl:
16
16
  return this.visitBlockDecl(node);
17
+ case NodeKind.TermDecl:
18
+ return this.visitTermDecl(node);
19
+ case NodeKind.BusinessViewDecl:
20
+ return this.visitBusinessViewDecl(node);
17
21
  default:
18
22
  return undefined;
19
23
  }
@@ -151,5 +155,17 @@ export class BaseVisitor {
151
155
  }
152
156
  return undefined;
153
157
  }
158
+ visitTermDecl(node) {
159
+ for (const dec of node.decorators) {
160
+ this.visitDecorator(dec);
161
+ }
162
+ return undefined;
163
+ }
164
+ visitBusinessViewDecl(node) {
165
+ for (const dec of node.decorators) {
166
+ this.visitDecorator(dec);
167
+ }
168
+ return undefined;
169
+ }
154
170
  }
155
171
  //# sourceMappingURL=visitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/ast/visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/ast/visitor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/formatter/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAcV,WAAW,EAMZ,MAAM,iBAAiB,CAAC;AAIzB,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CAG7E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CAYvF"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/formatter/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAkBV,WAAW,EAMZ,MAAM,iBAAiB,CAAC;AAIzB,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CAG7E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CAYvF"}
@@ -31,6 +31,12 @@ function formatStatement(node, level, state) {
31
31
  return formatImport(node, level, state);
32
32
  case NodeKind.BlockDecl:
33
33
  return formatBlock(node, level, state);
34
+ case NodeKind.TermDecl:
35
+ return formatTerm(node, level, state);
36
+ case NodeKind.BusinessViewDecl:
37
+ return formatBusinessView(node, level, state);
38
+ case NodeKind.Digest:
39
+ return formatDigest(node, level, state);
34
40
  default:
35
41
  return '';
36
42
  }
@@ -45,6 +51,28 @@ function formatDashboard(node, level, state) {
45
51
  lines.push(`${indent(level, state)}}`);
46
52
  return lines.join('\n');
47
53
  }
54
+ function formatDigest(node, level, state) {
55
+ const lines = [];
56
+ lines.push(...formatDecorators(node.decorators, level, state));
57
+ lines.push(`${indent(level, state)}digest ${quote(node.title)} {`);
58
+ if (node.narrative) {
59
+ lines.push(formatNarrative(node.narrative, level + 1, state));
60
+ }
61
+ for (const item of node.body) {
62
+ lines.push(formatDashboardBodyItem(item, level + 1, state));
63
+ }
64
+ lines.push(`${indent(level, state)}}`);
65
+ return lines.join('\n');
66
+ }
67
+ function formatNarrative(node, level, state) {
68
+ const lines = [];
69
+ lines.push(`${indent(level, state)}narrative {`);
70
+ for (const prop of node.properties) {
71
+ lines.push(`${indent(level + 1, state)}${formatNamedArg(prop)}`);
72
+ }
73
+ lines.push(`${indent(level, state)}}`);
74
+ return lines.join('\n');
75
+ }
48
76
  function formatWorkbook(node, level, state) {
49
77
  const lines = [];
50
78
  lines.push(...formatDecorators(node.decorators, level, state));
@@ -177,6 +205,9 @@ function formatBlock(node, level, state) {
177
205
  }
178
206
  if (node.owner)
179
207
  lines.push(`${indent(level + 1, state)}owner = ${quote(node.owner)}`);
208
+ if (node.termRefs && node.termRefs.length > 0) {
209
+ lines.push(`${indent(level + 1, state)}terms = [${node.termRefs.map(quote).join(', ')}]`);
210
+ }
180
211
  if (node.llmContext)
181
212
  lines.push(`${indent(level + 1, state)}llmContext = ${quote(node.llmContext)}`);
182
213
  if (node.businessOutcome)
@@ -199,6 +230,17 @@ function formatBlock(node, level, state) {
199
230
  if (node.invariants && node.invariants.length > 0) {
200
231
  lines.push(`${indent(level + 1, state)}invariants = [${node.invariants.map(quote).join(', ')}]`);
201
232
  }
233
+ if (node.blockType === 'semantic') {
234
+ if (node.metricsRef && node.metricsRef.length > 0) {
235
+ lines.push(`${indent(level + 1, state)}metrics = [${node.metricsRef.map(quote).join(', ')}]`);
236
+ }
237
+ else if (node.metricRef !== undefined) {
238
+ lines.push(`${indent(level + 1, state)}metric = ${quote(node.metricRef)}`);
239
+ }
240
+ if (node.dimensionsRef !== undefined) {
241
+ lines.push(`${indent(level + 1, state)}dimensions = [${node.dimensionsRef.map(quote).join(', ')}]`);
242
+ }
243
+ }
202
244
  if (node.params) {
203
245
  lines.push(`${indent(level + 1, state)}params {`);
204
246
  for (const entry of node.params.params) {
@@ -228,6 +270,86 @@ function formatBlock(node, level, state) {
228
270
  lines.push(`${indent(level, state)}}`);
229
271
  return lines.join('\n');
230
272
  }
273
+ function formatTerm(node, level, state) {
274
+ const lines = [];
275
+ lines.push(...formatDecorators(node.decorators, level, state));
276
+ lines.push(`${indent(level, state)}term ${quote(node.name)} {`);
277
+ if (node.domain)
278
+ lines.push(`${indent(level + 1, state)}domain = ${quote(node.domain)}`);
279
+ if (node.termType)
280
+ lines.push(`${indent(level + 1, state)}type = ${quote(node.termType)}`);
281
+ if (node.status)
282
+ lines.push(`${indent(level + 1, state)}status = ${quote(node.status)}`);
283
+ if (node.description)
284
+ lines.push(`${indent(level + 1, state)}description = ${quote(node.description)}`);
285
+ if (node.tags && node.tags.length > 0) {
286
+ lines.push(`${indent(level + 1, state)}tags = [${node.tags.map(quote).join(', ')}]`);
287
+ }
288
+ if (node.owner)
289
+ lines.push(`${indent(level + 1, state)}owner = ${quote(node.owner)}`);
290
+ if (node.identifiers && node.identifiers.length > 0) {
291
+ lines.push(`${indent(level + 1, state)}identifiers = [${node.identifiers.map(quote).join(', ')}]`);
292
+ }
293
+ if (node.synonyms && node.synonyms.length > 0) {
294
+ lines.push(`${indent(level + 1, state)}synonyms = [${node.synonyms.map(quote).join(', ')}]`);
295
+ }
296
+ if (node.businessOutcome)
297
+ lines.push(`${indent(level + 1, state)}businessOutcome = ${quote(node.businessOutcome)}`);
298
+ if (node.businessOwner)
299
+ lines.push(`${indent(level + 1, state)}businessOwner = ${quote(node.businessOwner)}`);
300
+ if (node.decisionUse)
301
+ lines.push(`${indent(level + 1, state)}decisionUse = ${quote(node.decisionUse)}`);
302
+ if (node.reviewCadence)
303
+ lines.push(`${indent(level + 1, state)}reviewCadence = ${quote(node.reviewCadence)}`);
304
+ if (node.businessRules && node.businessRules.length > 0) {
305
+ lines.push(`${indent(level + 1, state)}businessRules = [${node.businessRules.map(quote).join(', ')}]`);
306
+ }
307
+ if (node.caveats && node.caveats.length > 0) {
308
+ lines.push(`${indent(level + 1, state)}caveats = [${node.caveats.map(quote).join(', ')}]`);
309
+ }
310
+ lines.push(`${indent(level, state)}}`);
311
+ return lines.join('\n');
312
+ }
313
+ function formatBusinessView(node, level, state) {
314
+ const lines = [];
315
+ lines.push(...formatDecorators(node.decorators, level, state));
316
+ lines.push(`${indent(level, state)}business_view ${quote(node.name)} {`);
317
+ if (node.domain)
318
+ lines.push(`${indent(level + 1, state)}domain = ${quote(node.domain)}`);
319
+ if (node.status)
320
+ lines.push(`${indent(level + 1, state)}status = ${quote(node.status)}`);
321
+ if (node.description)
322
+ lines.push(`${indent(level + 1, state)}description = ${quote(node.description)}`);
323
+ if (node.tags && node.tags.length > 0) {
324
+ lines.push(`${indent(level + 1, state)}tags = [${node.tags.map(quote).join(', ')}]`);
325
+ }
326
+ if (node.owner)
327
+ lines.push(`${indent(level + 1, state)}owner = ${quote(node.owner)}`);
328
+ if (node.termRefs && node.termRefs.length > 0) {
329
+ lines.push(`${indent(level + 1, state)}terms = [${node.termRefs.map(quote).join(', ')}]`);
330
+ }
331
+ if (node.businessOutcome)
332
+ lines.push(`${indent(level + 1, state)}businessOutcome = ${quote(node.businessOutcome)}`);
333
+ if (node.businessOwner)
334
+ lines.push(`${indent(level + 1, state)}businessOwner = ${quote(node.businessOwner)}`);
335
+ if (node.decisionUse)
336
+ lines.push(`${indent(level + 1, state)}decisionUse = ${quote(node.decisionUse)}`);
337
+ if (node.reviewCadence)
338
+ lines.push(`${indent(level + 1, state)}reviewCadence = ${quote(node.reviewCadence)}`);
339
+ if (node.businessRules && node.businessRules.length > 0) {
340
+ lines.push(`${indent(level + 1, state)}businessRules = [${node.businessRules.map(quote).join(', ')}]`);
341
+ }
342
+ if (node.caveats && node.caveats.length > 0) {
343
+ lines.push(`${indent(level + 1, state)}caveats = [${node.caveats.map(quote).join(', ')}]`);
344
+ }
345
+ lines.push(`${indent(level + 1, state)}includes {`);
346
+ for (const ref of node.includes) {
347
+ lines.push(`${indent(level + 2, state)}${ref.refType} ${quote(ref.name)}`);
348
+ }
349
+ lines.push(`${indent(level + 1, state)}}`);
350
+ lines.push(`${indent(level, state)}}`);
351
+ return lines.join('\n');
352
+ }
231
353
  function formatSQLQuery(query, level, state) {
232
354
  const sql = query.rawSQL.replace(/^\n+|\s+$/g, '');
233
355
  if (!sql.trim())