@typespec/compiler 0.51.0-dev.9 → 0.52.0-dev.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 (72) hide show
  1. package/dist/manifest.js +2 -2
  2. package/dist/src/config/config-to-options.d.ts.map +1 -1
  3. package/dist/src/config/config-to-options.js +1 -0
  4. package/dist/src/config/config-to-options.js.map +1 -1
  5. package/dist/src/core/checker.d.ts.map +1 -1
  6. package/dist/src/core/checker.js +44 -1
  7. package/dist/src/core/checker.js.map +1 -1
  8. package/dist/src/core/helpers/index.d.ts +1 -0
  9. package/dist/src/core/helpers/index.d.ts.map +1 -1
  10. package/dist/src/core/helpers/index.js +1 -0
  11. package/dist/src/core/helpers/index.js.map +1 -1
  12. package/dist/src/core/helpers/string-template-utils.d.ts +11 -0
  13. package/dist/src/core/helpers/string-template-utils.d.ts.map +1 -0
  14. package/dist/src/core/helpers/string-template-utils.js +65 -0
  15. package/dist/src/core/helpers/string-template-utils.js.map +1 -0
  16. package/dist/src/core/helpers/type-name-utils.d.ts.map +1 -1
  17. package/dist/src/core/helpers/type-name-utils.js +2 -0
  18. package/dist/src/core/helpers/type-name-utils.js.map +1 -1
  19. package/dist/src/core/messages.d.ts +20 -2
  20. package/dist/src/core/messages.d.ts.map +1 -1
  21. package/dist/src/core/messages.js +6 -0
  22. package/dist/src/core/messages.js.map +1 -1
  23. package/dist/src/core/options.d.ts +1 -1
  24. package/dist/src/core/options.d.ts.map +1 -1
  25. package/dist/src/core/parser.d.ts.map +1 -1
  26. package/dist/src/core/parser.js +96 -0
  27. package/dist/src/core/parser.js.map +1 -1
  28. package/dist/src/core/program.d.ts.map +1 -1
  29. package/dist/src/core/program.js +8 -2
  30. package/dist/src/core/program.js.map +1 -1
  31. package/dist/src/core/scanner.d.ts +85 -66
  32. package/dist/src/core/scanner.d.ts.map +1 -1
  33. package/dist/src/core/scanner.js +229 -127
  34. package/dist/src/core/scanner.js.map +1 -1
  35. package/dist/src/core/schema-validator.d.ts.map +1 -1
  36. package/dist/src/core/schema-validator.js +42 -8
  37. package/dist/src/core/schema-validator.js.map +1 -1
  38. package/dist/src/core/semantic-walker.d.ts.map +1 -1
  39. package/dist/src/core/semantic-walker.js +22 -0
  40. package/dist/src/core/semantic-walker.js.map +1 -1
  41. package/dist/src/core/types.d.ts +99 -69
  42. package/dist/src/core/types.d.ts.map +1 -1
  43. package/dist/src/core/types.js +55 -50
  44. package/dist/src/core/types.js.map +1 -1
  45. package/dist/src/emitter-framework/asset-emitter.d.ts.map +1 -1
  46. package/dist/src/emitter-framework/asset-emitter.js +95 -66
  47. package/dist/src/emitter-framework/asset-emitter.js.map +1 -1
  48. package/dist/src/emitter-framework/type-emitter.d.ts +3 -1
  49. package/dist/src/emitter-framework/type-emitter.d.ts.map +1 -1
  50. package/dist/src/emitter-framework/type-emitter.js +6 -0
  51. package/dist/src/emitter-framework/type-emitter.js.map +1 -1
  52. package/dist/src/emitter-framework/types.d.ts +4 -1
  53. package/dist/src/emitter-framework/types.d.ts.map +1 -1
  54. package/dist/src/emitter-framework/types.js.map +1 -1
  55. package/dist/src/formatter/print/printer.d.ts +2 -1
  56. package/dist/src/formatter/print/printer.d.ts.map +1 -1
  57. package/dist/src/formatter/print/printer.js +17 -0
  58. package/dist/src/formatter/print/printer.js.map +1 -1
  59. package/dist/src/server/serverlib.d.ts.map +1 -1
  60. package/dist/src/server/serverlib.js +84 -6
  61. package/dist/src/server/serverlib.js.map +1 -1
  62. package/dist/src/server/tmlanguage.d.ts +1 -1
  63. package/dist/src/server/tmlanguage.d.ts.map +1 -1
  64. package/dist/src/server/tmlanguage.js +15 -2
  65. package/dist/src/server/tmlanguage.js.map +1 -1
  66. package/dist/src/server/type-signature.js +13 -0
  67. package/dist/src/server/type-signature.js.map +1 -1
  68. package/dist/src/yaml/types.d.ts +8 -0
  69. package/dist/src/yaml/types.d.ts.map +1 -1
  70. package/dist/typespec.tmLanguage +40 -0
  71. package/lib/reflection.tsp +1 -0
  72. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../src/core/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../src/core/scanner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../src/core/schema-validator.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,cAAc,EAAE,mBAAmB,EAAwB,MAAM,YAAY,CAAC;AAEnG,MAAM,WAAW,0BAA0B;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EACzC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,0BAA6C,GACrD,mBAAmB,CA4BrB;AAwCD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ1D"}
1
+ {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../src/core/schema-validator.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,cAAc,EACd,mBAAmB,EAGpB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,0BAA0B;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EACzC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,0BAA6C,GACrD,mBAAmB,CAkCrB;AA8ED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ1D"}
@@ -1,13 +1,21 @@
1
1
  import Ajv from "ajv";
2
2
  import { getLocationInYamlScript } from "../yaml/diagnostics.js";
3
3
  import { compilerAssert } from "./diagnostics.js";
4
- import { NoTarget } from "./types.js";
4
+ import { createDiagnostic } from "./messages.js";
5
+ import { isPathAbsolute } from "./path-utils.js";
6
+ import { NoTarget, } from "./types.js";
5
7
  export function createJSONSchemaValidator(schema, options = { strict: true }) {
6
8
  const ajv = new Ajv({
7
9
  strict: options.strict,
8
10
  coerceTypes: options.coerceTypes,
9
11
  allErrors: true,
10
12
  });
13
+ ajv.addFormat("absolute-path", {
14
+ type: "string",
15
+ validate: (path) => {
16
+ return !path.startsWith(".") && isPathAbsolute(path);
17
+ },
18
+ });
11
19
  return { validate };
12
20
  function validate(config, target) {
13
21
  var _a;
@@ -16,14 +24,22 @@ export function createJSONSchemaValidator(schema, options = { strict: true }) {
16
24
  compilerAssert(!valid || !validate.errors, "There should be errors reported if the schema is not valid.");
17
25
  const diagnostics = [];
18
26
  for (const error of (_a = validate.errors) !== null && _a !== void 0 ? _a : []) {
19
- const diagnostic = ajvErrorToDiagnostic(error, target);
27
+ const diagnostic = ajvErrorToDiagnostic(config, error, target);
20
28
  diagnostics.push(diagnostic);
21
29
  }
22
30
  return diagnostics;
23
31
  }
24
32
  }
25
33
  const IGNORED_AJV_PARAMS = new Set(["type", "errors"]);
26
- function ajvErrorToDiagnostic(error, target) {
34
+ function ajvErrorToDiagnostic(obj, error, target) {
35
+ const tspTarget = resolveTarget(error, target);
36
+ if (error.params.format === "absolute-path") {
37
+ return createDiagnostic({
38
+ code: "config-path-absolute",
39
+ format: { path: getErrorValue(obj, error) },
40
+ target: tspTarget,
41
+ });
42
+ }
27
43
  const messageLines = [`Schema violation: ${error.message} (${error.instancePath || "/"})`];
28
44
  for (const [name, value] of Object.entries(error.params).filter(([name]) => !IGNORED_AJV_PARAMS.has(name))) {
29
45
  const formattedValue = Array.isArray(value) ? [...new Set(value)].join(", ") : value;
@@ -34,13 +50,23 @@ function ajvErrorToDiagnostic(error, target) {
34
50
  code: "invalid-schema",
35
51
  message,
36
52
  severity: "error",
37
- target: target === NoTarget
38
- ? target
39
- : "kind" in target
40
- ? getLocationInYamlScript(target, getErrorPath(error), "key")
41
- : { file: target, pos: 0, end: 0 },
53
+ target: tspTarget,
42
54
  };
43
55
  }
56
+ function resolveTarget(error, target) {
57
+ if (target === NoTarget) {
58
+ return NoTarget;
59
+ }
60
+ if (!("kind" in target)) {
61
+ return { file: target, pos: 0, end: 0 };
62
+ }
63
+ switch (target.kind) {
64
+ case "yaml-script":
65
+ return getLocationInYamlScript(target, getErrorPath(error), "key");
66
+ case "path-target":
67
+ return getLocationInYamlScript(target.script, [...target.path, ...getErrorPath(error)], "key");
68
+ }
69
+ }
44
70
  function getErrorPath(error) {
45
71
  const instancePath = parseJsonPointer(error.instancePath);
46
72
  switch (error.keyword) {
@@ -50,6 +76,14 @@ function getErrorPath(error) {
50
76
  return instancePath;
51
77
  }
52
78
  }
79
+ function getErrorValue(obj, error) {
80
+ const path = getErrorPath(error);
81
+ let current = obj;
82
+ for (const segment of path) {
83
+ current = current[segment];
84
+ }
85
+ return current;
86
+ }
53
87
  /**
54
88
  * Converts a json pointer into a array of reference tokens
55
89
  */
@@ -1 +1 @@
1
- {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/core/schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,GAA8B,MAAM,KAAK,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAmD,QAAQ,EAAc,MAAM,YAAY,CAAC;AAOnG,MAAM,UAAU,yBAAyB,CACvC,MAAyB,EACzB,UAAsC,EAAE,MAAM,EAAE,IAAI,EAAE;IAEtD,MAAM,GAAG,GAAG,IAAK,GAAW,CAAC;QAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,IAAI;KACE,CAAC,CAAC;IAErB,OAAO,EAAE,QAAQ,EAAE,CAAC;IAEpB,SAAS,QAAQ,CACf,MAAe,EACf,MAAiD;;QAEjD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,cAAc,CACZ,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,EAC1B,6DAA6D,CAC9D,CAAC;QAEF,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,MAAA,QAAQ,CAAC,MAAM,mCAAI,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACvD,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC9B;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEvD,SAAS,oBAAoB,CAC3B,KAAmB,EACnB,MAAiD;IAEjD,MAAM,YAAY,GAAG,CAAC,qBAAqB,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,YAAY,IAAI,GAAG,GAAG,CAAC,CAAC;IAC3F,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAC1C,EAAE;QACD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACrF,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,cAAc,EAAE,CAAC,CAAC;KACnD;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO;QACP,QAAQ,EAAE,OAAO;QACjB,MAAM,EACJ,MAAM,KAAK,QAAQ;YACjB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,MAAM,IAAI,MAAM;gBAChB,CAAC,CAAC,uBAAuB,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;gBAC7D,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAmB;IACvC,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1D,QAAQ,KAAK,CAAC,OAAO,EAAE;QACrB,KAAK,sBAAsB;YACzB,OAAO,CAAC,GAAG,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC5D;YACE,OAAO,YAAY,CAAC;KACvB;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,IAAI,OAAO,KAAK,EAAE,EAAE;QAClB,OAAO,EAAE,CAAC;KACX;IACD,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;QAC7B,cAAc,CAAC,KAAK,EAAE,0BAA0B,OAAO,GAAG,CAAC,CAAC;KAC7D;IACD,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,GAAW;IAC3B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/core/schema-validator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-walker.d.ts","sourceRoot":"","sources":["../../../src/core/semantic-walker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAKL,KAAK,EACL,aAAa,EACb,SAAS,EAGT,oBAAoB,EAGpB,IAAI,EACJ,aAAa,EAGd,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,GAAE,iBAAsB,QAMhC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,iBAAiB,QAI3B;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,aAAa,EAChE,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,CAAC,EACZ,OAAO,GAAE,0BAA+B,GACvC,CAAC,CAgBH;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,aAAa,EACxB,OAAO,GAAE,0BAA0B,GAAG,iBAAsB,QAG7D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,YAAY,CAAC,oBAAoB,CAAC,GAC/C,oBAAoB,CAStB;AAiQD,wBAAgB,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAQxF;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAA;CAAE;IAC1E,OAAO,CAAC,SAAS,CAA2D;IAErE,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;IAS3E,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAQlE"}
1
+ {"version":3,"file":"semantic-walker.d.ts","sourceRoot":"","sources":["../../../src/core/semantic-walker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAKL,KAAK,EACL,aAAa,EACb,SAAS,EAGT,oBAAoB,EAKpB,IAAI,EACJ,aAAa,EAGd,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,GAAE,iBAAsB,QAMhC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,iBAAiB,QAI3B;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,aAAa,EAChE,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,CAAC,EACZ,OAAO,GAAE,0BAA+B,GACvC,CAAC,CAgBH;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,aAAa,EACxB,OAAO,GAAE,0BAA0B,GAAG,iBAAsB,QAG7D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,YAAY,CAAC,oBAAoB,CAAC,GAC/C,oBAAoB,CAStB;AAqRD,wBAAgB,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAQxF;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAA;CAAE;IAC1E,OAAO,CAAC,SAAS,CAA2D;IAErE,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;IAS3E,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAQlE"}
@@ -233,6 +233,24 @@ function navigateTupleType(type, context) {
233
233
  navigateTypeInternal(value, context);
234
234
  }
235
235
  }
236
+ function navigateStringTemplate(type, context) {
237
+ if (checkVisited(context.visited, type)) {
238
+ return;
239
+ }
240
+ if (context.emit("stringTemplate", type) === ListenerFlow.NoRecursion)
241
+ return;
242
+ for (const value of type.spans) {
243
+ navigateTypeInternal(value, context);
244
+ }
245
+ }
246
+ function navigateStringTemplateSpan(type, context) {
247
+ if (checkVisited(context.visited, type)) {
248
+ return;
249
+ }
250
+ if (context.emit("stringTemplateSpan", type) === ListenerFlow.NoRecursion)
251
+ return;
252
+ navigateTypeInternal(type.type, context);
253
+ }
236
254
  function navigateTemplateParameter(type, context) {
237
255
  if (checkVisited(context.visited, type)) {
238
256
  return;
@@ -269,6 +287,10 @@ function navigateTypeInternal(type, context) {
269
287
  return navigateUnionTypeVariant(type, context);
270
288
  case "Tuple":
271
289
  return navigateTupleType(type, context);
290
+ case "StringTemplate":
291
+ return navigateStringTemplate(type, context);
292
+ case "StringTemplateSpan":
293
+ return navigateStringTemplateSpan(type, context);
272
294
  case "TemplateParameter":
273
295
  return navigateTemplateParameter(type, context);
274
296
  case "Decorator":
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-walker.js","sourceRoot":"","sources":["../../../src/core/semantic-walker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-walker.js","sourceRoot":"","sources":["../../../src/core/semantic-walker.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import type { JSONSchemaType as AjvJSONSchemaType } from "ajv";
2
2
  import { TypeEmitter } from "../emitter-framework/type-emitter.js";
3
3
  import { AssetEmitter } from "../emitter-framework/types.js";
4
- import { YamlScript } from "../yaml/types.js";
5
4
  import { ModuleResolutionResult } from "./module-resolver.js";
6
5
  import { Program } from "./program.js";
7
6
  export type MarshalledValue<Type> = Type extends StringLiteral ? string : Type extends NumericLiteral ? number : Type extends BooleanLiteral ? boolean : Type;
@@ -65,7 +64,7 @@ export interface TemplatedTypeBase {
65
64
  templateArguments?: Type[];
66
65
  templateNode?: Node;
67
66
  }
68
- export type Type = Model | ModelProperty | Scalar | Interface | Enum | EnumMember | TemplateParameter | Namespace | Operation | StringLiteral | NumericLiteral | BooleanLiteral | Tuple | Union | UnionVariant | IntrinsicType | FunctionType | Decorator | FunctionParameter | ObjectType | Projection;
67
+ export type Type = Model | ModelProperty | Scalar | Interface | Enum | EnumMember | TemplateParameter | Namespace | Operation | StringLiteral | NumericLiteral | BooleanLiteral | StringTemplate | StringTemplateSpan | Tuple | Union | UnionVariant | IntrinsicType | FunctionType | Decorator | FunctionParameter | ObjectType | Projection;
69
68
  export type StdTypes = {
70
69
  Array: Model;
71
70
  Record: Model;
@@ -341,6 +340,24 @@ export interface BooleanLiteral extends BaseType {
341
340
  node?: BooleanLiteralNode;
342
341
  value: boolean;
343
342
  }
343
+ export interface StringTemplate extends BaseType {
344
+ kind: "StringTemplate";
345
+ node: StringTemplateExpressionNode;
346
+ spans: StringTemplateSpan[];
347
+ }
348
+ export type StringTemplateSpan = StringTemplateSpanLiteral | StringTemplateSpanValue;
349
+ export interface StringTemplateSpanLiteral extends BaseType {
350
+ kind: "StringTemplateSpan";
351
+ node: StringTemplateHeadNode | StringTemplateMiddleNode | StringTemplateTailNode;
352
+ isInterpolated: false;
353
+ type: StringLiteral;
354
+ }
355
+ export interface StringTemplateSpanValue extends BaseType {
356
+ kind: "StringTemplateSpan";
357
+ node: Expression;
358
+ isInterpolated: true;
359
+ type: Type;
360
+ }
344
361
  export interface Tuple extends BaseType {
345
362
  kind: "Tuple";
346
363
  node: TupleExpressionNode;
@@ -562,56 +579,61 @@ export declare enum SyntaxKind {
562
579
  StringLiteral = 32,
563
580
  NumericLiteral = 33,
564
581
  BooleanLiteral = 34,
565
- ExternKeyword = 35,
566
- VoidKeyword = 36,
567
- NeverKeyword = 37,
568
- UnknownKeyword = 38,
569
- ValueOfExpression = 39,
570
- TypeReference = 40,
571
- ProjectionReference = 41,
572
- TemplateParameterDeclaration = 42,
573
- EmptyStatement = 43,
574
- InvalidStatement = 44,
575
- LineComment = 45,
576
- BlockComment = 46,
577
- Doc = 47,
578
- DocText = 48,
579
- DocParamTag = 49,
580
- DocReturnsTag = 50,
581
- DocErrorsTag = 51,
582
- DocTemplateTag = 52,
583
- DocUnknownTag = 53,
584
- Projection = 54,
585
- ProjectionParameterDeclaration = 55,
586
- ProjectionModelSelector = 56,
587
- ProjectionModelPropertySelector = 57,
588
- ProjectionOperationSelector = 58,
589
- ProjectionUnionSelector = 59,
590
- ProjectionUnionVariantSelector = 60,
591
- ProjectionInterfaceSelector = 61,
592
- ProjectionEnumSelector = 62,
593
- ProjectionEnumMemberSelector = 63,
594
- ProjectionExpressionStatement = 64,
595
- ProjectionIfExpression = 65,
596
- ProjectionBlockExpression = 66,
597
- ProjectionMemberExpression = 67,
598
- ProjectionLogicalExpression = 68,
599
- ProjectionEqualityExpression = 69,
600
- ProjectionUnaryExpression = 70,
601
- ProjectionRelationalExpression = 71,
602
- ProjectionArithmeticExpression = 72,
603
- ProjectionCallExpression = 73,
604
- ProjectionLambdaExpression = 74,
605
- ProjectionLambdaParameterDeclaration = 75,
606
- ProjectionModelExpression = 76,
607
- ProjectionModelProperty = 77,
608
- ProjectionModelSpreadProperty = 78,
609
- ProjectionSpreadProperty = 79,
610
- ProjectionTupleExpression = 80,
611
- ProjectionStatement = 81,
612
- ProjectionDecoratorReferenceExpression = 82,
613
- Return = 83,
614
- JsNamespaceDeclaration = 84
582
+ StringTemplateExpression = 35,
583
+ StringTemplateHead = 36,
584
+ StringTemplateMiddle = 37,
585
+ StringTemplateTail = 38,
586
+ StringTemplateSpan = 39,
587
+ ExternKeyword = 40,
588
+ VoidKeyword = 41,
589
+ NeverKeyword = 42,
590
+ UnknownKeyword = 43,
591
+ ValueOfExpression = 44,
592
+ TypeReference = 45,
593
+ ProjectionReference = 46,
594
+ TemplateParameterDeclaration = 47,
595
+ EmptyStatement = 48,
596
+ InvalidStatement = 49,
597
+ LineComment = 50,
598
+ BlockComment = 51,
599
+ Doc = 52,
600
+ DocText = 53,
601
+ DocParamTag = 54,
602
+ DocReturnsTag = 55,
603
+ DocErrorsTag = 56,
604
+ DocTemplateTag = 57,
605
+ DocUnknownTag = 58,
606
+ Projection = 59,
607
+ ProjectionParameterDeclaration = 60,
608
+ ProjectionModelSelector = 61,
609
+ ProjectionModelPropertySelector = 62,
610
+ ProjectionOperationSelector = 63,
611
+ ProjectionUnionSelector = 64,
612
+ ProjectionUnionVariantSelector = 65,
613
+ ProjectionInterfaceSelector = 66,
614
+ ProjectionEnumSelector = 67,
615
+ ProjectionEnumMemberSelector = 68,
616
+ ProjectionExpressionStatement = 69,
617
+ ProjectionIfExpression = 70,
618
+ ProjectionBlockExpression = 71,
619
+ ProjectionMemberExpression = 72,
620
+ ProjectionLogicalExpression = 73,
621
+ ProjectionEqualityExpression = 74,
622
+ ProjectionUnaryExpression = 75,
623
+ ProjectionRelationalExpression = 76,
624
+ ProjectionArithmeticExpression = 77,
625
+ ProjectionCallExpression = 78,
626
+ ProjectionLambdaExpression = 79,
627
+ ProjectionLambdaParameterDeclaration = 80,
628
+ ProjectionModelExpression = 81,
629
+ ProjectionModelProperty = 82,
630
+ ProjectionModelSpreadProperty = 83,
631
+ ProjectionSpreadProperty = 84,
632
+ ProjectionTupleExpression = 85,
633
+ ProjectionStatement = 86,
634
+ ProjectionDecoratorReferenceExpression = 87,
635
+ Return = 88,
636
+ JsNamespaceDeclaration = 89
615
637
  }
616
638
  export declare const enum NodeFlags {
617
639
  None = 0,
@@ -657,7 +679,7 @@ export interface TemplateDeclarationNode {
657
679
  readonly templateParameters: readonly TemplateParameterDeclarationNode[];
658
680
  readonly locals?: SymbolTable;
659
681
  }
660
- export type Node = TypeSpecScriptNode | JsSourceFileNode | JsNamespaceDeclarationNode | TemplateParameterDeclarationNode | ProjectionParameterDeclarationNode | ProjectionLambdaParameterDeclarationNode | ModelPropertyNode | UnionVariantNode | OperationStatementNode | OperationSignatureDeclarationNode | OperationSignatureReferenceNode | EnumMemberNode | EnumSpreadMemberNode | ModelSpreadPropertyNode | DecoratorExpressionNode | DirectiveExpressionNode | Statement | Expression | FunctionParameterNode | Modifier | DocNode | DocContent | DocTag | ProjectionStatementItem | ProjectionExpression | ProjectionModelSelectorNode | ProjectionModelPropertySelectorNode | ProjectionInterfaceSelectorNode | ProjectionOperationSelectorNode | ProjectionEnumSelectorNode | ProjectionEnumMemberSelectorNode | ProjectionUnionSelectorNode | ProjectionUnionVariantSelectorNode | ProjectionModelPropertyNode | ProjectionModelSpreadPropertyNode | ProjectionStatementNode | ProjectionNode;
682
+ export type Node = TypeSpecScriptNode | JsSourceFileNode | JsNamespaceDeclarationNode | TemplateParameterDeclarationNode | ProjectionParameterDeclarationNode | ProjectionLambdaParameterDeclarationNode | ModelPropertyNode | UnionVariantNode | OperationStatementNode | OperationSignatureDeclarationNode | OperationSignatureReferenceNode | EnumMemberNode | EnumSpreadMemberNode | ModelSpreadPropertyNode | DecoratorExpressionNode | DirectiveExpressionNode | Statement | Expression | FunctionParameterNode | StringTemplateSpanNode | StringTemplateHeadNode | StringTemplateMiddleNode | StringTemplateTailNode | Modifier | DocNode | DocContent | DocTag | ProjectionStatementItem | ProjectionExpression | ProjectionModelSelectorNode | ProjectionModelPropertySelectorNode | ProjectionInterfaceSelectorNode | ProjectionOperationSelectorNode | ProjectionEnumSelectorNode | ProjectionEnumMemberSelectorNode | ProjectionUnionSelectorNode | ProjectionUnionVariantSelectorNode | ProjectionModelPropertyNode | ProjectionModelSpreadPropertyNode | ProjectionStatementNode | ProjectionNode;
661
683
  /**
662
684
  * Node that can be used as template
663
685
  */
@@ -735,7 +757,7 @@ export interface DirectiveExpressionNode extends BaseNode {
735
757
  readonly arguments: readonly DirectiveArgument[];
736
758
  }
737
759
  export type DirectiveArgument = StringLiteralNode | IdentifierNode;
738
- export type Expression = ArrayExpressionNode | MemberExpressionNode | ModelExpressionNode | TupleExpressionNode | UnionExpressionNode | IntersectionExpressionNode | TypeReferenceNode | ValueOfExpressionNode | IdentifierNode | StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | VoidKeywordNode | NeverKeywordNode | AnyKeywordNode;
760
+ export type Expression = ArrayExpressionNode | MemberExpressionNode | ModelExpressionNode | TupleExpressionNode | UnionExpressionNode | IntersectionExpressionNode | TypeReferenceNode | ValueOfExpressionNode | IdentifierNode | StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | StringTemplateExpressionNode | VoidKeywordNode | NeverKeywordNode | AnyKeywordNode;
739
761
  export type ProjectionExpression = ProjectionLogicalExpressionNode | ProjectionRelationalExpressionNode | ProjectionEqualityExpressionNode | ProjectionUnaryExpressionNode | ProjectionArithmeticExpressionNode | ProjectionCallExpressionNode | ProjectionMemberExpressionNode | ProjectionDecoratorReferenceExpressionNode | ProjectionTupleExpressionNode | ProjectionModelExpressionNode | ProjectionIfExpressionNode | ProjectionBlockExpressionNode | ProjectionLambdaExpressionNode | StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | IdentifierNode | VoidKeywordNode | NeverKeywordNode | AnyKeywordNode | ReturnExpressionNode;
740
762
  export type ReferenceExpression = TypeReferenceNode | MemberExpressionNode | IdentifierNode | VoidKeywordNode | NeverKeywordNode;
741
763
  export interface MemberExpressionNode extends BaseNode {
@@ -861,7 +883,7 @@ export interface ModelSpreadPropertyNode extends BaseNode {
861
883
  readonly target: TypeReferenceNode;
862
884
  readonly parent?: ModelStatementNode | ModelExpressionNode;
863
885
  }
864
- export type LiteralNode = StringLiteralNode | NumericLiteralNode | BooleanLiteralNode;
886
+ export type LiteralNode = StringLiteralNode | NumericLiteralNode | BooleanLiteralNode | StringTemplateHeadNode | StringTemplateMiddleNode | StringTemplateTailNode;
865
887
  export interface StringLiteralNode extends BaseNode {
866
888
  readonly kind: SyntaxKind.StringLiteral;
867
889
  readonly value: string;
@@ -875,6 +897,28 @@ export interface BooleanLiteralNode extends BaseNode {
875
897
  readonly kind: SyntaxKind.BooleanLiteral;
876
898
  readonly value: boolean;
877
899
  }
900
+ export interface StringTemplateExpressionNode extends BaseNode {
901
+ readonly kind: SyntaxKind.StringTemplateExpression;
902
+ readonly head: StringTemplateHeadNode;
903
+ readonly spans: readonly StringTemplateSpanNode[];
904
+ }
905
+ export interface StringTemplateSpanNode extends BaseNode {
906
+ readonly kind: SyntaxKind.StringTemplateSpan;
907
+ readonly expression: Expression;
908
+ readonly literal: StringTemplateMiddleNode | StringTemplateTailNode;
909
+ }
910
+ export interface StringTemplateLiteralLikeNode extends BaseNode {
911
+ readonly value: string;
912
+ }
913
+ export interface StringTemplateHeadNode extends StringTemplateLiteralLikeNode {
914
+ readonly kind: SyntaxKind.StringTemplateHead;
915
+ }
916
+ export interface StringTemplateMiddleNode extends StringTemplateLiteralLikeNode {
917
+ readonly kind: SyntaxKind.StringTemplateMiddle;
918
+ }
919
+ export interface StringTemplateTailNode extends StringTemplateLiteralLikeNode {
920
+ readonly kind: SyntaxKind.StringTemplateTail;
921
+ }
878
922
  export interface ExternKeywordNode extends BaseNode {
879
923
  readonly kind: SyntaxKind.ExternKeyword;
880
924
  }
@@ -1428,16 +1472,6 @@ export interface DiagnosticCreator<T extends {
1428
1472
  }
1429
1473
  export type TypeOfDiagnostics<T extends DiagnosticMap<any>> = T extends DiagnosticMap<infer D> ? D : never;
1430
1474
  export type JSONSchemaType<T> = AjvJSONSchemaType<T>;
1431
- export interface JSONSchemaValidator {
1432
- /**
1433
- * Validate the configuration against its JSON Schema.
1434
- *
1435
- * @param config Configuration to validate.
1436
- * @param target Source file target to use for diagnostics.
1437
- * @returns Diagnostics produced by schema validation of the configuration.
1438
- */
1439
- validate(config: unknown, target: YamlScript | SourceFile | typeof NoTarget): Diagnostic[];
1440
- }
1441
1475
  /** @deprecated Use TypeSpecLibraryDef */
1442
1476
  export type CadlLibraryDef<T extends {
1443
1477
  [code: string]: DiagnosticMessages;
@@ -1525,10 +1559,6 @@ export type CadlLibrary<T extends {
1525
1559
  export interface TypeSpecLibrary<T extends {
1526
1560
  [code: string]: DiagnosticMessages;
1527
1561
  }, E extends Record<string, any> = Record<string, never>> extends TypeSpecLibraryDef<T, E> {
1528
- /**
1529
- * JSON Schema validator for emitter options
1530
- */
1531
- readonly emitterOptionValidator?: JSONSchemaValidator;
1532
1562
  reportDiagnostic<C extends keyof T, M extends keyof T[C]>(program: Program, diag: DiagnosticReport<T, C, M>): void;
1533
1563
  createDiagnostic<C extends keyof T, M extends keyof T[C]>(diag: DiagnosticReport<T, C, M>): Diagnostic;
1534
1564
  /**