@typespec/compiler 0.67.0-dev.9 → 0.67.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 (303) hide show
  1. package/dist/generated-defs/TypeSpec.d.ts +28 -1
  2. package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
  3. package/dist/manifest.js +2 -2
  4. package/dist/src/ast/index.d.ts +14 -0
  5. package/dist/src/ast/index.d.ts.map +1 -0
  6. package/dist/src/ast/index.js +13 -0
  7. package/dist/src/ast/index.js.map +1 -0
  8. package/dist/src/config/config-loader.d.ts.map +1 -1
  9. package/dist/src/config/config-loader.js +2 -1
  10. package/dist/src/config/config-loader.js.map +1 -1
  11. package/dist/src/config/config-to-options.d.ts.map +1 -1
  12. package/dist/src/config/config-to-options.js +2 -1
  13. package/dist/src/config/config-to-options.js.map +1 -1
  14. package/dist/src/core/binder.d.ts.map +1 -1
  15. package/dist/src/core/binder.js +18 -137
  16. package/dist/src/core/binder.js.map +1 -1
  17. package/dist/src/core/checker.d.ts +7 -23
  18. package/dist/src/core/checker.d.ts.map +1 -1
  19. package/dist/src/core/checker.js +59 -780
  20. package/dist/src/core/checker.js.map +1 -1
  21. package/dist/src/core/cli/actions/compile/args.d.ts +1 -0
  22. package/dist/src/core/cli/actions/compile/args.d.ts.map +1 -1
  23. package/dist/src/core/cli/actions/compile/args.js +3 -0
  24. package/dist/src/core/cli/actions/compile/args.js.map +1 -1
  25. package/dist/src/core/cli/actions/compile/compile.js +1 -1
  26. package/dist/src/core/cli/actions/compile/compile.js.map +1 -1
  27. package/dist/src/core/cli/cli.js +14 -4
  28. package/dist/src/core/cli/cli.js.map +1 -1
  29. package/dist/src/core/cli/utils.d.ts.map +1 -1
  30. package/dist/src/core/cli/utils.js +5 -1
  31. package/dist/src/core/cli/utils.js.map +1 -1
  32. package/dist/src/core/decorator-utils.d.ts.map +1 -1
  33. package/dist/src/core/decorator-utils.js +1 -3
  34. package/dist/src/core/decorator-utils.js.map +1 -1
  35. package/dist/src/core/diagnostic-error.d.ts +7 -0
  36. package/dist/src/core/diagnostic-error.d.ts.map +1 -0
  37. package/dist/src/core/diagnostic-error.js +9 -0
  38. package/dist/src/core/diagnostic-error.js.map +1 -0
  39. package/dist/src/core/diagnostics.d.ts +6 -6
  40. package/dist/src/core/diagnostics.d.ts.map +1 -1
  41. package/dist/src/core/diagnostics.js +10 -11
  42. package/dist/src/core/diagnostics.js.map +1 -1
  43. package/dist/src/core/emitter-utils.js +2 -2
  44. package/dist/src/core/emitter-utils.js.map +1 -1
  45. package/dist/src/core/entrypoint-resolution.d.ts.map +1 -1
  46. package/dist/src/core/entrypoint-resolution.js +2 -1
  47. package/dist/src/core/entrypoint-resolution.js.map +1 -1
  48. package/dist/src/core/helpers/discriminator-utils.d.ts +1 -6
  49. package/dist/src/core/helpers/discriminator-utils.d.ts.map +1 -1
  50. package/dist/src/core/helpers/discriminator-utils.js +1 -57
  51. package/dist/src/core/helpers/discriminator-utils.js.map +1 -1
  52. package/dist/src/core/helpers/index.d.ts +1 -1
  53. package/dist/src/core/helpers/index.d.ts.map +1 -1
  54. package/dist/src/core/helpers/index.js +1 -1
  55. package/dist/src/core/helpers/index.js.map +1 -1
  56. package/dist/src/core/helpers/syntax-utils.d.ts +2 -1
  57. package/dist/src/core/helpers/syntax-utils.d.ts.map +1 -1
  58. package/dist/src/core/helpers/syntax-utils.js +8 -4
  59. package/dist/src/core/helpers/syntax-utils.js.map +1 -1
  60. package/dist/src/core/inspector/symbol.d.ts.map +1 -1
  61. package/dist/src/core/inspector/symbol.js +9 -11
  62. package/dist/src/core/inspector/symbol.js.map +1 -1
  63. package/dist/src/core/js-marshaller.d.ts +0 -9
  64. package/dist/src/core/js-marshaller.d.ts.map +1 -1
  65. package/dist/src/core/js-marshaller.js +0 -26
  66. package/dist/src/core/js-marshaller.js.map +1 -1
  67. package/dist/src/core/logger/console-sink.browser.d.ts.map +1 -1
  68. package/dist/src/core/logger/console-sink.browser.js +0 -16
  69. package/dist/src/core/logger/console-sink.browser.js.map +1 -1
  70. package/dist/src/core/logger/console-sink.d.ts +2 -3
  71. package/dist/src/core/logger/console-sink.d.ts.map +1 -1
  72. package/dist/src/core/logger/console-sink.js +16 -43
  73. package/dist/src/core/logger/console-sink.js.map +1 -1
  74. package/dist/src/core/logger/dynamic-task.d.ts +16 -0
  75. package/dist/src/core/logger/dynamic-task.d.ts.map +1 -0
  76. package/dist/src/core/logger/dynamic-task.js +93 -0
  77. package/dist/src/core/logger/dynamic-task.js.map +1 -0
  78. package/dist/src/core/logger/logger.d.ts.map +1 -1
  79. package/dist/src/core/logger/logger.js +11 -1
  80. package/dist/src/core/logger/logger.js.map +1 -1
  81. package/dist/src/core/messages.d.ts +35 -45
  82. package/dist/src/core/messages.d.ts.map +1 -1
  83. package/dist/src/core/messages.js +9 -11
  84. package/dist/src/core/messages.js.map +1 -1
  85. package/dist/src/core/name-resolver.d.ts.map +1 -1
  86. package/dist/src/core/name-resolver.js +12 -23
  87. package/dist/src/core/name-resolver.js.map +1 -1
  88. package/dist/src/core/node-host.d.ts +0 -3
  89. package/dist/src/core/node-host.d.ts.map +1 -1
  90. package/dist/src/core/node-host.js +5 -51
  91. package/dist/src/core/node-host.js.map +1 -1
  92. package/dist/src/core/node-system-host.d.ts +9 -0
  93. package/dist/src/core/node-system-host.d.ts.map +1 -0
  94. package/dist/src/core/node-system-host.js +57 -0
  95. package/dist/src/core/node-system-host.js.map +1 -0
  96. package/dist/src/core/options.d.ts +9 -0
  97. package/dist/src/core/options.d.ts.map +1 -1
  98. package/dist/src/core/parser.d.ts.map +1 -1
  99. package/dist/src/core/parser.js +50 -654
  100. package/dist/src/core/parser.js.map +1 -1
  101. package/dist/src/core/program.d.ts +6 -16
  102. package/dist/src/core/program.d.ts.map +1 -1
  103. package/dist/src/core/program.js +48 -24
  104. package/dist/src/core/program.js.map +1 -1
  105. package/dist/src/core/scanner.d.ts +37 -1
  106. package/dist/src/core/scanner.d.ts.map +1 -1
  107. package/dist/src/core/scanner.js +150 -3
  108. package/dist/src/core/scanner.js.map +1 -1
  109. package/dist/src/core/semantic-walker.d.ts.map +1 -1
  110. package/dist/src/core/semantic-walker.js +0 -9
  111. package/dist/src/core/semantic-walker.js.map +1 -1
  112. package/dist/src/core/source-loader.d.ts.map +1 -1
  113. package/dist/src/core/source-loader.js +2 -1
  114. package/dist/src/core/source-loader.js.map +1 -1
  115. package/dist/src/core/state-accessors.d.ts +53 -12
  116. package/dist/src/core/state-accessors.d.ts.map +1 -1
  117. package/dist/src/core/state-accessors.js +75 -48
  118. package/dist/src/core/state-accessors.js.map +1 -1
  119. package/dist/src/core/type-relation-checker.d.ts.map +1 -1
  120. package/dist/src/core/type-relation-checker.js +4 -22
  121. package/dist/src/core/type-relation-checker.js.map +1 -1
  122. package/dist/src/core/type-utils.js +2 -2
  123. package/dist/src/core/type-utils.js.map +1 -1
  124. package/dist/src/core/types.d.ts +58 -324
  125. package/dist/src/core/types.d.ts.map +1 -1
  126. package/dist/src/core/types.js +24 -55
  127. package/dist/src/core/types.js.map +1 -1
  128. package/dist/src/core/visibility/lifecycle.d.ts.map +1 -1
  129. package/dist/src/core/visibility/lifecycle.js +2 -11
  130. package/dist/src/core/visibility/lifecycle.js.map +1 -1
  131. package/dist/src/emitter-framework/asset-emitter.js +2 -2
  132. package/dist/src/emitter-framework/asset-emitter.js.map +1 -1
  133. package/dist/src/emitter-framework/index.d.ts +74 -8
  134. package/dist/src/emitter-framework/index.d.ts.map +1 -1
  135. package/dist/src/emitter-framework/index.js +32 -8
  136. package/dist/src/emitter-framework/index.js.map +1 -1
  137. package/dist/src/experimental/freeze-graph.d.ts.map +1 -1
  138. package/dist/src/experimental/freeze-graph.js +0 -3
  139. package/dist/src/experimental/freeze-graph.js.map +1 -1
  140. package/dist/src/experimental/mutators.d.ts +2 -2
  141. package/dist/src/experimental/mutators.d.ts.map +1 -1
  142. package/dist/src/experimental/mutators.js +1 -7
  143. package/dist/src/experimental/mutators.js.map +1 -1
  144. package/dist/src/experimental/typekit/kits/model.d.ts +6 -0
  145. package/dist/src/experimental/typekit/kits/model.d.ts.map +1 -1
  146. package/dist/src/experimental/typekit/kits/model.js +10 -0
  147. package/dist/src/experimental/typekit/kits/model.js.map +1 -1
  148. package/dist/src/experimental/typekit/kits/type.d.ts +0 -6
  149. package/dist/src/experimental/typekit/kits/type.d.ts.map +1 -1
  150. package/dist/src/experimental/typekit/kits/type.js +15 -9
  151. package/dist/src/experimental/typekit/kits/type.js.map +1 -1
  152. package/dist/src/experimental/typekit/kits/union.d.ts +6 -0
  153. package/dist/src/experimental/typekit/kits/union.d.ts.map +1 -1
  154. package/dist/src/experimental/typekit/kits/union.js +4 -0
  155. package/dist/src/experimental/typekit/kits/union.js.map +1 -1
  156. package/dist/src/formatter/print/comment-handler.js +1 -0
  157. package/dist/src/formatter/print/comment-handler.js.map +1 -1
  158. package/dist/src/formatter/print/needs-parens.d.ts.map +1 -1
  159. package/dist/src/formatter/print/needs-parens.js +0 -4
  160. package/dist/src/formatter/print/needs-parens.js.map +1 -1
  161. package/dist/src/formatter/print/printer.d.ts +4 -12
  162. package/dist/src/formatter/print/printer.d.ts.map +1 -1
  163. package/dist/src/formatter/print/printer.js +14 -196
  164. package/dist/src/formatter/print/printer.js.map +1 -1
  165. package/dist/src/index.d.ts +11 -14
  166. package/dist/src/index.d.ts.map +1 -1
  167. package/dist/src/index.js +17 -13
  168. package/dist/src/index.js.map +1 -1
  169. package/dist/src/init/core-templates.d.ts +2 -2
  170. package/dist/src/init/core-templates.d.ts.map +1 -1
  171. package/dist/src/init/core-templates.js.map +1 -1
  172. package/dist/src/init/init.d.ts +0 -2
  173. package/dist/src/init/init.d.ts.map +1 -1
  174. package/dist/src/init/init.js +17 -51
  175. package/dist/src/init/init.js.map +1 -1
  176. package/dist/src/init/scaffold.d.ts +4 -3
  177. package/dist/src/init/scaffold.d.ts.map +1 -1
  178. package/dist/src/init/scaffold.js +3 -4
  179. package/dist/src/init/scaffold.js.map +1 -1
  180. package/dist/src/install/config.d.ts +9 -0
  181. package/dist/src/install/config.d.ts.map +1 -0
  182. package/dist/src/install/config.js +16 -0
  183. package/dist/src/install/config.js.map +1 -0
  184. package/dist/src/install/install.d.ts +14 -0
  185. package/dist/src/install/install.d.ts.map +1 -0
  186. package/dist/src/install/install.js +191 -0
  187. package/dist/src/install/install.js.map +1 -0
  188. package/dist/src/install/spec.d.ts +39 -0
  189. package/dist/src/install/spec.d.ts.map +1 -0
  190. package/dist/src/install/spec.js +152 -0
  191. package/dist/src/install/spec.js.map +1 -0
  192. package/dist/src/internals/index.d.ts +8 -0
  193. package/dist/src/internals/index.d.ts.map +1 -0
  194. package/dist/src/internals/index.js +11 -0
  195. package/dist/src/internals/index.js.map +1 -0
  196. package/dist/src/lib/decorators.d.ts +16 -4
  197. package/dist/src/lib/decorators.d.ts.map +1 -1
  198. package/dist/src/lib/decorators.js +86 -46
  199. package/dist/src/lib/decorators.js.map +1 -1
  200. package/dist/src/lib/examples.js +1 -5
  201. package/dist/src/lib/examples.js.map +1 -1
  202. package/dist/src/lib/service.d.ts.map +1 -1
  203. package/dist/src/lib/service.js +0 -4
  204. package/dist/src/lib/service.js.map +1 -1
  205. package/dist/src/lib/tsp-index.d.ts.map +1 -1
  206. package/dist/src/lib/tsp-index.js +2 -2
  207. package/dist/src/lib/tsp-index.js.map +1 -1
  208. package/dist/src/module-resolver/module-resolver.d.ts.map +1 -1
  209. package/dist/src/module-resolver/module-resolver.js +20 -13
  210. package/dist/src/module-resolver/module-resolver.js.map +1 -1
  211. package/dist/src/package-manger/npm-registry-utils.d.ts +83 -0
  212. package/dist/src/package-manger/npm-registry-utils.d.ts.map +1 -0
  213. package/dist/src/package-manger/npm-registry-utils.js +42 -0
  214. package/dist/src/package-manger/npm-registry-utils.js.map +1 -0
  215. package/dist/src/server/classify.d.ts.map +1 -1
  216. package/dist/src/server/classify.js +0 -26
  217. package/dist/src/server/classify.js.map +1 -1
  218. package/dist/src/server/compile-service.d.ts.map +1 -1
  219. package/dist/src/server/compile-service.js +2 -1
  220. package/dist/src/server/compile-service.js.map +1 -1
  221. package/dist/src/server/completion.d.ts.map +1 -1
  222. package/dist/src/server/completion.js +21 -10
  223. package/dist/src/server/completion.js.map +1 -1
  224. package/dist/src/server/constants.js +1 -1
  225. package/dist/src/server/server.js +1 -1
  226. package/dist/src/server/server.js.map +1 -1
  227. package/dist/src/server/serverlib.d.ts.map +1 -1
  228. package/dist/src/server/serverlib.js +2 -1
  229. package/dist/src/server/serverlib.js.map +1 -1
  230. package/dist/src/server/tmlanguage.d.ts.map +1 -1
  231. package/dist/src/server/tmlanguage.js +0 -125
  232. package/dist/src/server/tmlanguage.js.map +1 -1
  233. package/dist/src/server/type-signature.js +4 -15
  234. package/dist/src/server/type-signature.js.map +1 -1
  235. package/dist/src/testing/code-fix-testing.js +1 -1
  236. package/dist/src/testing/code-fix-testing.js.map +1 -1
  237. package/dist/src/testing/expect.d.ts +1 -7
  238. package/dist/src/testing/expect.d.ts.map +1 -1
  239. package/dist/src/testing/expect.js +0 -12
  240. package/dist/src/testing/expect.js.map +1 -1
  241. package/dist/src/testing/index.d.ts +6 -6
  242. package/dist/src/testing/index.d.ts.map +1 -1
  243. package/dist/src/testing/index.js +5 -6
  244. package/dist/src/testing/index.js.map +1 -1
  245. package/dist/src/testing/source-utils.d.ts +20 -0
  246. package/dist/src/testing/source-utils.d.ts.map +1 -0
  247. package/dist/src/testing/source-utils.js +23 -0
  248. package/dist/src/testing/source-utils.js.map +1 -0
  249. package/dist/src/testing/test-host.d.ts.map +1 -1
  250. package/dist/src/testing/test-host.js +0 -4
  251. package/dist/src/testing/test-host.js.map +1 -1
  252. package/dist/src/testing/test-server-host.d.ts +0 -19
  253. package/dist/src/testing/test-server-host.d.ts.map +1 -1
  254. package/dist/src/testing/test-server-host.js +0 -22
  255. package/dist/src/testing/test-server-host.js.map +1 -1
  256. package/dist/src/testing/test-utils.js +1 -1
  257. package/dist/src/testing/test-utils.js.map +1 -1
  258. package/dist/src/types/package-json.d.ts +14 -0
  259. package/dist/src/types/package-json.d.ts.map +1 -1
  260. package/dist/src/utils/custom-key-map.d.ts.map +1 -0
  261. package/dist/src/utils/custom-key-map.js.map +1 -0
  262. package/dist/src/utils/fs-utils.d.ts +3 -0
  263. package/dist/src/utils/fs-utils.d.ts.map +1 -0
  264. package/dist/src/utils/fs-utils.js +19 -0
  265. package/dist/src/utils/fs-utils.js.map +1 -0
  266. package/dist/src/utils/io.d.ts +16 -0
  267. package/dist/src/utils/io.d.ts.map +1 -0
  268. package/dist/src/utils/io.js +77 -0
  269. package/dist/src/utils/io.js.map +1 -0
  270. package/dist/src/utils/misc.d.ts +4 -18
  271. package/dist/src/utils/misc.d.ts.map +1 -1
  272. package/dist/src/utils/misc.js +1 -77
  273. package/dist/src/utils/misc.js.map +1 -1
  274. package/dist/typespec.tmLanguage +0 -342
  275. package/lib/std/decorators.tsp +37 -2
  276. package/package.json +13 -7
  277. package/templates/__snapshots__/emitter-ts/src/emitter.ts +4 -6
  278. package/templates/emitter-ts/src/emitter.ts +4 -6
  279. package/templates/scaffolding.json +4 -4
  280. package/dist/src/core/helpers/projected-names-utils.d.ts +0 -20
  281. package/dist/src/core/helpers/projected-names-utils.d.ts.map +0 -1
  282. package/dist/src/core/helpers/projected-names-utils.js +0 -42
  283. package/dist/src/core/helpers/projected-names-utils.js.map +0 -1
  284. package/dist/src/core/install.d.ts +0 -3
  285. package/dist/src/core/install.d.ts.map +0 -1
  286. package/dist/src/core/install.js +0 -60
  287. package/dist/src/core/install.js.map +0 -1
  288. package/dist/src/core/projected-program.d.ts +0 -3
  289. package/dist/src/core/projected-program.d.ts.map +0 -1
  290. package/dist/src/core/projected-program.js +0 -4
  291. package/dist/src/core/projected-program.js.map +0 -1
  292. package/dist/src/core/projection-members.d.ts +0 -8
  293. package/dist/src/core/projection-members.d.ts.map +0 -1
  294. package/dist/src/core/projection-members.js +0 -382
  295. package/dist/src/core/projection-members.js.map +0 -1
  296. package/dist/src/core/projector.d.ts +0 -26
  297. package/dist/src/core/projector.d.ts.map +0 -1
  298. package/dist/src/core/projector.js +0 -572
  299. package/dist/src/core/projector.js.map +0 -1
  300. package/dist/src/emitter-framework/custom-key-map.d.ts.map +0 -1
  301. package/dist/src/emitter-framework/custom-key-map.js.map +0 -1
  302. /package/dist/src/{emitter-framework → utils}/custom-key-map.d.ts +0 -0
  303. /package/dist/src/{emitter-framework → utils}/custom-key-map.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../src/utils/misc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../src/utils/misc.ts"],"names":[],"mappings":"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"}
@@ -423,67 +423,6 @@
423
423
  </dict>
424
424
  </dict>
425
425
  </dict>
426
- <key>else-expression</key>
427
- <dict>
428
- <key>name</key>
429
- <string>meta.else-expression.typespec</string>
430
- <key>begin</key>
431
- <string>\b(else)\b</string>
432
- <key>beginCaptures</key>
433
- <dict>
434
- <key>1</key>
435
- <dict>
436
- <key>name</key>
437
- <string>keyword.other.tsp</string>
438
- </dict>
439
- </dict>
440
- <key>end</key>
441
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
442
- <key>patterns</key>
443
- <array>
444
- <dict>
445
- <key>include</key>
446
- <string>#projection-expression</string>
447
- </dict>
448
- <dict>
449
- <key>include</key>
450
- <string>#projection-body</string>
451
- </dict>
452
- </array>
453
- </dict>
454
- <key>else-if-expression</key>
455
- <dict>
456
- <key>name</key>
457
- <string>meta.else-if-expression.typespec</string>
458
- <key>begin</key>
459
- <string>\b(else)\s+(if)\b</string>
460
- <key>beginCaptures</key>
461
- <dict>
462
- <key>1</key>
463
- <dict>
464
- <key>name</key>
465
- <string>keyword.other.tsp</string>
466
- </dict>
467
- <key>2</key>
468
- <dict>
469
- <key>name</key>
470
- <string>keyword.other.tsp</string>
471
- </dict>
472
- </dict>
473
- <key>end</key>
474
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
475
- <key>patterns</key>
476
- <array>
477
- <dict>
478
- <key>include</key>
479
- <string>#projection-expression</string>
480
- </dict>
481
- <dict>
482
- <key>include</key>
483
- <string>#projection-body</string>
484
- </dict>
485
- </array>
486
- </dict>
487
426
  <key>enum-body</key>
488
427
  <dict>
489
428
  <key>name</key>
@@ -659,43 +598,6 @@
659
598
  </dict>
660
599
  </array>
661
600
  </dict>
662
- <key>function-call</key>
663
- <dict>
664
- <key>name</key>
665
- <string>meta.function-call.typespec</string>
666
- <key>begin</key>
667
- <string>(\b[_$[:alpha:]][_$[:alnum:]]*\b|`(?:[^`\\]|\\.)*`)\s*(\()</string>
668
- <key>beginCaptures</key>
669
- <dict>
670
- <key>1</key>
671
- <dict>
672
- <key>name</key>
673
- <string>entity.name.function.tsp</string>
674
- </dict>
675
- <key>2</key>
676
- <dict>
677
- <key>name</key>
678
- <string>punctuation.parenthesis.open.tsp</string>
679
- </dict>
680
- </dict>
681
- <key>end</key>
682
- <string>\)</string>
683
- <key>endCaptures</key>
684
- <dict>
685
- <key>0</key>
686
- <dict>
687
- <key>name</key>
688
- <string>punctuation.parenthesis.close.tsp</string>
689
- </dict>
690
- </dict>
691
- <key>patterns</key>
692
- <array>
693
- <dict>
694
- <key>include</key>
695
- <string>#expression</string>
696
- </dict>
697
- </array>
698
- </dict>
699
601
  <key>function-declaration-statement</key>
700
602
  <dict>
701
603
  <key>name</key>
@@ -745,34 +647,6 @@
745
647
  <key>match</key>
746
648
  <string>\b[_$[:alpha:]][_$[:alnum:]]*\b|`(?:[^`\\]|\\.)*`</string>
747
649
  </dict>
748
- <key>if-expression</key>
749
- <dict>
750
- <key>name</key>
751
- <string>meta.if-expression.typespec</string>
752
- <key>begin</key>
753
- <string>\b(if)\b</string>
754
- <key>beginCaptures</key>
755
- <dict>
756
- <key>1</key>
757
- <dict>
758
- <key>name</key>
759
- <string>keyword.other.tsp</string>
760
- </dict>
761
- </dict>
762
- <key>end</key>
763
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
764
- <key>patterns</key>
765
- <array>
766
- <dict>
767
- <key>include</key>
768
- <string>#projection-expression</string>
769
- </dict>
770
- <dict>
771
- <key>include</key>
772
- <string>#projection-body</string>
773
- </dict>
774
- </array>
775
- </dict>
776
650
  <key>import-statement</key>
777
651
  <dict>
778
652
  <key>name</key>
@@ -1452,218 +1326,6 @@
1452
1326
  </dict>
1453
1327
  </array>
1454
1328
  </dict>
1455
- <key>projection</key>
1456
- <dict>
1457
- <key>name</key>
1458
- <string>meta.projection.typespec</string>
1459
- <key>begin</key>
1460
- <string>(from|to)</string>
1461
- <key>beginCaptures</key>
1462
- <dict>
1463
- <key>1</key>
1464
- <dict>
1465
- <key>name</key>
1466
- <string>keyword.other.tsp</string>
1467
- </dict>
1468
- </dict>
1469
- <key>end</key>
1470
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1471
- <key>patterns</key>
1472
- <array>
1473
- <dict>
1474
- <key>include</key>
1475
- <string>#projection-parameters</string>
1476
- </dict>
1477
- <dict>
1478
- <key>include</key>
1479
- <string>#projection-body</string>
1480
- </dict>
1481
- </array>
1482
- </dict>
1483
- <key>projection-body</key>
1484
- <dict>
1485
- <key>name</key>
1486
- <string>meta.projection-body.typespec</string>
1487
- <key>begin</key>
1488
- <string>\{</string>
1489
- <key>beginCaptures</key>
1490
- <dict>
1491
- <key>0</key>
1492
- <dict>
1493
- <key>name</key>
1494
- <string>punctuation.curlybrace.open.tsp</string>
1495
- </dict>
1496
- </dict>
1497
- <key>end</key>
1498
- <string>\}</string>
1499
- <key>endCaptures</key>
1500
- <dict>
1501
- <key>0</key>
1502
- <dict>
1503
- <key>name</key>
1504
- <string>punctuation.curlybrace.close.tsp</string>
1505
- </dict>
1506
- </dict>
1507
- <key>patterns</key>
1508
- <array>
1509
- <dict>
1510
- <key>include</key>
1511
- <string>#projection-expression</string>
1512
- </dict>
1513
- <dict>
1514
- <key>include</key>
1515
- <string>#punctuation-semicolon</string>
1516
- </dict>
1517
- </array>
1518
- </dict>
1519
- <key>projection-expression</key>
1520
- <dict>
1521
- <key>patterns</key>
1522
- <array>
1523
- <dict>
1524
- <key>include</key>
1525
- <string>#else-if-expression</string>
1526
- </dict>
1527
- <dict>
1528
- <key>include</key>
1529
- <string>#if-expression</string>
1530
- </dict>
1531
- <dict>
1532
- <key>include</key>
1533
- <string>#else-expression</string>
1534
- </dict>
1535
- <dict>
1536
- <key>include</key>
1537
- <string>#function-call</string>
1538
- </dict>
1539
- </array>
1540
- </dict>
1541
- <key>projection-parameter</key>
1542
- <dict>
1543
- <key>name</key>
1544
- <string>meta.projection-parameter.typespec</string>
1545
- <key>begin</key>
1546
- <string>(\b[_$[:alpha:]][_$[:alnum:]]*\b|`(?:[^`\\]|\\.)*`)</string>
1547
- <key>beginCaptures</key>
1548
- <dict>
1549
- <key>1</key>
1550
- <dict>
1551
- <key>name</key>
1552
- <string>variable.name.tsp</string>
1553
- </dict>
1554
- </dict>
1555
- <key>end</key>
1556
- <string>(?=\))|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1557
- <key>patterns</key>
1558
- <array/>
1559
- </dict>
1560
- <key>projection-parameters</key>
1561
- <dict>
1562
- <key>name</key>
1563
- <string>meta.projection-parameters.typespec</string>
1564
- <key>begin</key>
1565
- <string>\(</string>
1566
- <key>beginCaptures</key>
1567
- <dict>
1568
- <key>0</key>
1569
- <dict>
1570
- <key>name</key>
1571
- <string>punctuation.parenthesis.open.tsp</string>
1572
- </dict>
1573
- </dict>
1574
- <key>end</key>
1575
- <string>\)</string>
1576
- <key>endCaptures</key>
1577
- <dict>
1578
- <key>0</key>
1579
- <dict>
1580
- <key>name</key>
1581
- <string>punctuation.parenthesis.close.tsp</string>
1582
- </dict>
1583
- </dict>
1584
- <key>patterns</key>
1585
- <array>
1586
- <dict>
1587
- <key>include</key>
1588
- <string>#token</string>
1589
- </dict>
1590
- <dict>
1591
- <key>include</key>
1592
- <string>#projection-parameter</string>
1593
- </dict>
1594
- </array>
1595
- </dict>
1596
- <key>projection-statement</key>
1597
- <dict>
1598
- <key>name</key>
1599
- <string>meta.projection-statement.typespec</string>
1600
- <key>begin</key>
1601
- <string>\b(projection)\b\s+(\b[_$[:alpha:]][_$[:alnum:]]*\b|`(?:[^`\\]|\\.)*`)(#)(\b[_$[:alpha:]][_$[:alnum:]]*\b|`(?:[^`\\]|\\.)*`)</string>
1602
- <key>beginCaptures</key>
1603
- <dict>
1604
- <key>1</key>
1605
- <dict>
1606
- <key>name</key>
1607
- <string>keyword.other.tsp</string>
1608
- </dict>
1609
- <key>2</key>
1610
- <dict>
1611
- <key>name</key>
1612
- <string>keyword.other.tsp</string>
1613
- </dict>
1614
- <key>3</key>
1615
- <dict>
1616
- <key>name</key>
1617
- <string>keyword.operator.selector.tsp</string>
1618
- </dict>
1619
- <key>4</key>
1620
- <dict>
1621
- <key>name</key>
1622
- <string>variable.name.tsp</string>
1623
- </dict>
1624
- </dict>
1625
- <key>end</key>
1626
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1627
- <key>patterns</key>
1628
- <array>
1629
- <dict>
1630
- <key>include</key>
1631
- <string>#projection-statement-body</string>
1632
- </dict>
1633
- </array>
1634
- </dict>
1635
- <key>projection-statement-body</key>
1636
- <dict>
1637
- <key>name</key>
1638
- <string>meta.projection-statement-body.typespec</string>
1639
- <key>begin</key>
1640
- <string>\{</string>
1641
- <key>beginCaptures</key>
1642
- <dict>
1643
- <key>0</key>
1644
- <dict>
1645
- <key>name</key>
1646
- <string>punctuation.curlybrace.open.tsp</string>
1647
- </dict>
1648
- </dict>
1649
- <key>end</key>
1650
- <string>\}</string>
1651
- <key>endCaptures</key>
1652
- <dict>
1653
- <key>0</key>
1654
- <dict>
1655
- <key>name</key>
1656
- <string>punctuation.curlybrace.close.tsp</string>
1657
- </dict>
1658
- </dict>
1659
- <key>patterns</key>
1660
- <array>
1661
- <dict>
1662
- <key>include</key>
1663
- <string>#projection</string>
1664
- </dict>
1665
- </array>
1666
- </dict>
1667
1329
  <key>punctuation-accessor</key>
1668
1330
  <dict>
1669
1331
  <key>name</key>
@@ -1927,10 +1589,6 @@
1927
1589
  <key>include</key>
1928
1590
  <string>#function-declaration-statement</string>
1929
1591
  </dict>
1930
- <dict>
1931
- <key>include</key>
1932
- <string>#projection-statement</string>
1933
- </dict>
1934
1592
  <dict>
1935
1593
  <key>include</key>
1936
1594
  <string>#punctuation-semicolon</string>
@@ -108,6 +108,41 @@ extern dec service(target: Namespace, options?: valueof ServiceOptions);
108
108
  */
109
109
  extern dec error(target: Model);
110
110
 
111
+ /**
112
+ * Applies a media type hint to a TypeSpec type. Emitters and libraries may choose to use this hint to determine how a
113
+ * type should be serialized. For example, the `@typespec/http` library will use the media type hint of the response
114
+ * body type as a default `Content-Type` if one is not explicitly specified in the operation.
115
+ *
116
+ * Media types (also known as MIME types) are defined by RFC 6838. The media type hint should be a valid media type
117
+ * string as defined by the RFC, but the decorator does not enforce or validate this constraint.
118
+ *
119
+ * Notes: the applied media type is _only_ a hint. It may be overridden or not used at all. Media type hints are
120
+ * inherited by subtypes. If a media type hint is applied to a model, it will be inherited by all other models that
121
+ * `extend` it unless they delcare their own media type hint.
122
+ *
123
+ * @param mediaType The media type hint to apply to the target type.
124
+ *
125
+ * @example create a model that serializes as XML by default
126
+ *
127
+ * ```tsp
128
+ * @mediaTypeHint("application/xml")
129
+ * model Example {
130
+ * @visibility(Lifecycle.Read)
131
+ * id: string;
132
+ *
133
+ * name: string;
134
+ * }
135
+ * ```
136
+ */
137
+ extern dec mediaTypeHint(target: Model | Scalar | Enum | Union, mediaType: valueof string);
138
+
139
+ // Cannot apply this to the scalar itself. Needs to be applied here so that we don't crash nostdlib scenarios
140
+ @@mediaTypeHint(TypeSpec.bytes, "application/octet-stream");
141
+
142
+ // @@mediaTypeHint(TypeSpec.string "text/plain") -- This is hardcoded in the compiler to avoid circularity
143
+ // between the initialization of the string scalar and the `valueof string` required to call the
144
+ // `mediaTypeHint` decorator.
145
+
111
146
  /**
112
147
  * Specify a known data format hint for this string type. For example `uuid`, `uri`, etc.
113
148
  * This differs from the `@pattern` decorator which is meant to specify a regular expression while `@format` accepts a known format name.
@@ -121,7 +156,7 @@ extern dec error(target: Model);
121
156
  * scalar uuid extends string;
122
157
  * ```
123
158
  */
124
- extern dec format(target: string | bytes | ModelProperty, format: valueof string);
159
+ extern dec format(target: string | ModelProperty, format: valueof string);
125
160
 
126
161
  /**
127
162
  * Specify the the pattern this string should respect using simple regular expression syntax.
@@ -422,7 +457,7 @@ extern dec discriminated(target: Union, options?: valueof DiscriminatedOptions);
422
457
  * model Dog extends Pet {kind: "dog", bark: boolean}
423
458
  * ```
424
459
  */
425
- extern dec discriminator(target: Model | Union, propertyName: valueof string);
460
+ extern dec discriminator(target: Model, propertyName: valueof string);
426
461
 
427
462
  /**
428
463
  * Known encoding to use on utcDateTime or offsetDateTime
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/compiler",
3
- "version": "0.67.0-dev.9",
3
+ "version": "0.67.0",
4
4
  "description": "TypeSpec Compiler Preview",
5
5
  "author": "Microsoft Corporation",
6
6
  "license": "MIT",
@@ -38,6 +38,9 @@
38
38
  "types": "./dist/module-resolver/module-resolver.d.ts",
39
39
  "default": "./dist/src/module-resolver/module-resolver.js"
40
40
  },
41
+ "./ast": {
42
+ "import": "./dist/src/ast/index.js"
43
+ },
41
44
  "./emitter-framework": {
42
45
  "types": "./dist/src/emitter-framework/index.d.ts",
43
46
  "default": "./dist/src/emitter-framework/index.js"
@@ -49,6 +52,10 @@
49
52
  "./experimental/typekit": {
50
53
  "types": "./dist/src/experimental/typekit/index.d.ts",
51
54
  "default": "./dist/src/experimental/typekit/index.js"
55
+ },
56
+ "./internals": {
57
+ "types": "./dist/src/internals/index.d.ts",
58
+ "import": "./dist/src/internals/index.js"
52
59
  }
53
60
  },
54
61
  "browser": {
@@ -72,15 +79,16 @@
72
79
  "dependencies": {
73
80
  "@babel/code-frame": "~7.26.2",
74
81
  "@inquirer/prompts": "^7.3.1",
75
- "@npmcli/arborist": "^8.0.0",
76
82
  "ajv": "~8.17.1",
77
83
  "change-case": "~5.4.4",
84
+ "env-paths": "^3.0.0",
78
85
  "globby": "~14.1.0",
79
86
  "is-unicode-supported": "^2.1.0",
80
87
  "mustache": "~4.2.0",
81
88
  "picocolors": "~1.1.1",
82
89
  "prettier": "~3.5.3",
83
90
  "semver": "^7.7.1",
91
+ "tar": "^7.4.3",
84
92
  "temporal-polyfill": "^0.2.5",
85
93
  "vscode-languageserver": "~9.0.1",
86
94
  "vscode-languageserver-textdocument": "~1.0.12",
@@ -91,10 +99,8 @@
91
99
  "@types/babel__code-frame": "~7.0.6",
92
100
  "@types/mustache": "~4.2.5",
93
101
  "@types/node": "~22.13.9",
94
- "@types/npmcli__arborist": "^6.3.0",
95
102
  "@types/semver": "^7.5.8",
96
103
  "@types/yargs": "~17.0.33",
97
- "@typespec/internal-build-utils": "^0.66.0 || >=0.67.0-dev <0.67.0",
98
104
  "@vitest/coverage-v8": "^3.0.7",
99
105
  "@vitest/ui": "^3.0.7",
100
106
  "c8": "^10.1.3",
@@ -102,13 +108,13 @@
102
108
  "pathe": "^2.0.3",
103
109
  "rimraf": "~6.0.1",
104
110
  "source-map-support": "~0.5.21",
105
- "tmlanguage-generator": "^0.5.11 || >=0.6.0-dev <0.6.0",
106
111
  "typescript": "~5.8.2",
107
112
  "vitest": "^3.0.7",
108
113
  "vscode-oniguruma": "~2.0.1",
109
- "vscode-textmate": "~9.2.0"
114
+ "vscode-textmate": "~9.2.0",
115
+ "@typespec/internal-build-utils": "^0.67.0",
116
+ "tmlanguage-generator": "^0.6.0"
110
117
  },
111
- "peerDependencies": {},
112
118
  "scripts": {
113
119
  "clean": "rimraf ./dist ./temp",
114
120
  "build:init-templates-index": "tsx ./.scripts/build-init-templates.ts",
@@ -1,10 +1,8 @@
1
1
  import { EmitContext, emitFile, resolvePath } from "@typespec/compiler";
2
2
 
3
3
  export async function $onEmit(context: EmitContext) {
4
- if (!context.program.compilerOptions.noEmit) {
5
- await emitFile(context.program, {
6
- path: resolvePath(context.emitterOutputDir, "output.txt"),
7
- content: "Hello world\n",
8
- });
9
- }
4
+ await emitFile(context.program, {
5
+ path: resolvePath(context.emitterOutputDir, "output.txt"),
6
+ content: "Hello world\n",
7
+ });
10
8
  }
@@ -1,10 +1,8 @@
1
1
  import { EmitContext, emitFile, resolvePath } from "@typespec/compiler";
2
2
 
3
3
  export async function $onEmit(context: EmitContext) {
4
- if (!context.program.compilerOptions.noEmit) {
5
- await emitFile(context.program, {
6
- path: resolvePath(context.emitterOutputDir, "output.txt"),
7
- content: "Hello world\n",
8
- });
9
- }
4
+ await emitFile(context.program, {
5
+ path: resolvePath(context.emitterOutputDir, "output.txt"),
6
+ content: "Hello world\n",
7
+ });
10
8
  }
@@ -2,7 +2,7 @@
2
2
  "rest": {
3
3
  "title": "Generic REST API",
4
4
  "description": "Create a project representing a generic REST API service.",
5
- "compilerVersion": "0.66.0",
5
+ "compilerVersion": "0.67.0",
6
6
  "libraries": [
7
7
  "@typespec/http",
8
8
  "@typespec/rest",
@@ -51,7 +51,7 @@
51
51
  }
52
52
  },
53
53
  "@typespec/http-server-js": {
54
- "description": "JavaScript server stubs",
54
+ "label": "JavaScript server stubs",
55
55
  "options": {
56
56
  "emitter-output-dir": "{output-dir}/server"
57
57
  }
@@ -67,7 +67,7 @@
67
67
  "library-ts": {
68
68
  "title": "TypeSpec library",
69
69
  "description": "Build your own TypeSpec library with custom types, decorators or linters.",
70
- "compilerVersion": "0.66.0",
70
+ "compilerVersion": "0.67.0",
71
71
  "libraries": [],
72
72
  "files": [
73
73
  {
@@ -143,7 +143,7 @@
143
143
  "emitter-ts": {
144
144
  "title": "TypeSpec emitter",
145
145
  "description": "Create a new package that emits artifacts from TypeSpec.",
146
- "compilerVersion": "0.66.0",
146
+ "compilerVersion": "0.67.0",
147
147
  "libraries": [],
148
148
  "files": [
149
149
  {
@@ -1,20 +0,0 @@
1
- import type { Program, ProjectedProgram } from "../program.js";
2
- import type { Type } from "../types.js";
3
- export interface ProjectedNameView {
4
- program: ProjectedProgram;
5
- /**
6
- * Get the name of the given entity in that scope.
7
- * If there is a projected name it returns that one otherwise return the original name.
8
- */
9
- getProjectedName(target: Type & {
10
- name: string;
11
- }): string;
12
- }
13
- /**
14
- * Create an helper to manager project names.
15
- * @param program Program
16
- * @param target Name of the projected name target(e.g. json, csharp, etc.)
17
- * @returns ProjectedNameView
18
- */
19
- export declare function createProjectedNameProgram(program: Program, target: string): ProjectedNameView;
20
- //# sourceMappingURL=projected-names-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projected-names-utils.d.ts","sourceRoot":"","sources":["../../../../src/core/helpers/projected-names-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,KAAK,EAAa,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,gBAAgB,CAAC;IAE1B;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,IAAI,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;CAC3D;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAyB9F"}