@typespec/compiler 0.61.0-dev.2 → 0.61.0-dev.20

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 (179) hide show
  1. package/dist/manifest.js +2 -2
  2. package/dist/src/config/config-interpolation.d.ts.map +1 -1
  3. package/dist/src/config/config-interpolation.js +39 -11
  4. package/dist/src/config/config-interpolation.js.map +1 -1
  5. package/dist/src/config/config-to-options.d.ts +1 -0
  6. package/dist/src/config/config-to-options.d.ts.map +1 -1
  7. package/dist/src/config/config-to-options.js +45 -2
  8. package/dist/src/config/config-to-options.js.map +1 -1
  9. package/dist/src/core/binder.d.ts.map +1 -1
  10. package/dist/src/core/binder.js +7 -1
  11. package/dist/src/core/binder.js.map +1 -1
  12. package/dist/src/core/checker.d.ts.map +1 -1
  13. package/dist/src/core/checker.js +4 -34
  14. package/dist/src/core/checker.js.map +1 -1
  15. package/dist/src/core/cli/actions/compile/args.d.ts +2 -0
  16. package/dist/src/core/cli/actions/compile/args.d.ts.map +1 -1
  17. package/dist/src/core/cli/actions/compile/args.js.map +1 -1
  18. package/dist/src/core/cli/actions/compile/compile.d.ts +1 -4
  19. package/dist/src/core/cli/actions/compile/compile.d.ts.map +1 -1
  20. package/dist/src/core/cli/actions/compile/compile.js +26 -13
  21. package/dist/src/core/cli/actions/compile/compile.js.map +1 -1
  22. package/dist/src/core/diagnostic-creator.d.ts.map +1 -1
  23. package/dist/src/core/diagnostic-creator.js +5 -1
  24. package/dist/src/core/diagnostic-creator.js.map +1 -1
  25. package/dist/src/core/index.d.ts +1 -1
  26. package/dist/src/core/index.d.ts.map +1 -1
  27. package/dist/src/core/index.js +1 -1
  28. package/dist/src/core/index.js.map +1 -1
  29. package/dist/src/core/js-marshaller.d.ts.map +1 -1
  30. package/dist/src/core/js-marshaller.js +16 -1
  31. package/dist/src/core/js-marshaller.js.map +1 -1
  32. package/dist/src/core/logger/console-sink.js +1 -1
  33. package/dist/src/core/logger/console-sink.js.map +1 -1
  34. package/dist/src/core/messages.d.ts +27 -12
  35. package/dist/src/core/messages.d.ts.map +1 -1
  36. package/dist/src/core/messages.js +9 -2
  37. package/dist/src/core/messages.js.map +1 -1
  38. package/dist/src/core/numeric.js +1 -1
  39. package/dist/src/core/numeric.js.map +1 -1
  40. package/dist/src/core/program.d.ts.map +1 -1
  41. package/dist/src/core/program.js +19 -38
  42. package/dist/src/core/program.js.map +1 -1
  43. package/dist/src/core/source-loader.d.ts +4 -2
  44. package/dist/src/core/source-loader.d.ts.map +1 -1
  45. package/dist/src/core/source-loader.js +26 -12
  46. package/dist/src/core/source-loader.js.map +1 -1
  47. package/dist/src/core/types.d.ts +30 -4
  48. package/dist/src/core/types.d.ts.map +1 -1
  49. package/dist/src/experimental/index.d.ts +5 -0
  50. package/dist/src/experimental/index.d.ts.map +1 -0
  51. package/dist/src/experimental/index.js +5 -0
  52. package/dist/src/experimental/index.js.map +1 -0
  53. package/dist/src/experimental/mutators.d.ts +57 -0
  54. package/dist/src/experimental/mutators.d.ts.map +1 -0
  55. package/dist/src/experimental/mutators.js +173 -0
  56. package/dist/src/experimental/mutators.js.map +1 -0
  57. package/dist/src/experimental/realm.d.ts +34 -0
  58. package/dist/src/experimental/realm.d.ts.map +1 -0
  59. package/dist/src/experimental/realm.js +128 -0
  60. package/dist/src/experimental/realm.js.map +1 -0
  61. package/dist/src/experimental/state-accessor.d.ts +13 -0
  62. package/dist/src/experimental/state-accessor.d.ts.map +1 -0
  63. package/dist/src/experimental/state-accessor.js +14 -0
  64. package/dist/src/experimental/state-accessor.js.map +1 -0
  65. package/dist/src/experimental/typekit/define-kit.d.ts +28 -0
  66. package/dist/src/experimental/typekit/define-kit.d.ts.map +1 -0
  67. package/dist/src/experimental/typekit/define-kit.js +45 -0
  68. package/dist/src/experimental/typekit/define-kit.js.map +1 -0
  69. package/dist/src/experimental/typekit/index.d.ts +3 -0
  70. package/dist/src/experimental/typekit/index.d.ts.map +1 -0
  71. package/dist/src/experimental/typekit/index.js +3 -0
  72. package/dist/src/experimental/typekit/index.js.map +1 -0
  73. package/dist/src/experimental/typekit/kits/index.d.ts +9 -0
  74. package/dist/src/experimental/typekit/kits/index.d.ts.map +1 -0
  75. package/dist/src/experimental/typekit/kits/index.js +9 -0
  76. package/dist/src/experimental/typekit/kits/index.js.map +1 -0
  77. package/dist/src/experimental/typekit/kits/literal.d.ts +59 -0
  78. package/dist/src/experimental/typekit/kits/literal.d.ts.map +1 -0
  79. package/dist/src/experimental/typekit/kits/literal.js +51 -0
  80. package/dist/src/experimental/typekit/kits/literal.js.map +1 -0
  81. package/dist/src/experimental/typekit/kits/model-property.d.ts +45 -0
  82. package/dist/src/experimental/typekit/kits/model-property.d.ts.map +1 -0
  83. package/dist/src/experimental/typekit/kits/model-property.js +19 -0
  84. package/dist/src/experimental/typekit/kits/model-property.js.map +1 -0
  85. package/dist/src/experimental/typekit/kits/model.d.ts +48 -0
  86. package/dist/src/experimental/typekit/kits/model.d.ts.map +1 -0
  87. package/dist/src/experimental/typekit/kits/model.js +26 -0
  88. package/dist/src/experimental/typekit/kits/model.js.map +1 -0
  89. package/dist/src/experimental/typekit/kits/realm.d.ts +24 -0
  90. package/dist/src/experimental/typekit/kits/realm.d.ts.map +1 -0
  91. package/dist/src/experimental/typekit/kits/realm.js +17 -0
  92. package/dist/src/experimental/typekit/kits/realm.js.map +1 -0
  93. package/dist/src/experimental/typekit/kits/scalar.d.ts +354 -0
  94. package/dist/src/experimental/typekit/kits/scalar.d.ts.map +1 -0
  95. package/dist/src/experimental/typekit/kits/scalar.js +91 -0
  96. package/dist/src/experimental/typekit/kits/scalar.js.map +1 -0
  97. package/dist/src/experimental/typekit/kits/type.d.ts +25 -0
  98. package/dist/src/experimental/typekit/kits/type.d.ts.map +1 -0
  99. package/dist/src/experimental/typekit/kits/type.js +55 -0
  100. package/dist/src/experimental/typekit/kits/type.js.map +1 -0
  101. package/dist/src/experimental/typekit/kits/union-variant.d.ts +43 -0
  102. package/dist/src/experimental/typekit/kits/union-variant.d.ts.map +1 -0
  103. package/dist/src/experimental/typekit/kits/union-variant.js +22 -0
  104. package/dist/src/experimental/typekit/kits/union-variant.js.map +1 -0
  105. package/dist/src/experimental/typekit/kits/union.d.ts +56 -0
  106. package/dist/src/experimental/typekit/kits/union.d.ts.map +1 -0
  107. package/dist/src/experimental/typekit/kits/union.js +69 -0
  108. package/dist/src/experimental/typekit/kits/union.js.map +1 -0
  109. package/dist/src/experimental/typekit/utils.d.ts +8 -0
  110. package/dist/src/experimental/typekit/utils.d.ts.map +1 -0
  111. package/dist/src/experimental/typekit/utils.js +28 -0
  112. package/dist/src/experimental/typekit/utils.js.map +1 -0
  113. package/dist/src/index.d.ts +3 -0
  114. package/dist/src/index.d.ts.map +1 -1
  115. package/dist/src/init/scaffold.d.ts.map +1 -1
  116. package/dist/src/init/scaffold.js.map +1 -1
  117. package/dist/src/lib/decorators.d.ts +35 -19
  118. package/dist/src/lib/decorators.d.ts.map +1 -1
  119. package/dist/src/lib/decorators.js +70 -88
  120. package/dist/src/lib/decorators.js.map +1 -1
  121. package/dist/src/lib/encoded-names.js +6 -8
  122. package/dist/src/lib/encoded-names.js.map +1 -1
  123. package/dist/src/lib/examples.d.ts.map +1 -1
  124. package/dist/src/lib/examples.js +6 -4
  125. package/dist/src/lib/examples.js.map +1 -1
  126. package/dist/src/lib/service.d.ts +3 -1
  127. package/dist/src/lib/service.d.ts.map +1 -1
  128. package/dist/src/lib/service.js +5 -8
  129. package/dist/src/lib/service.js.map +1 -1
  130. package/dist/src/lib/utils.d.ts +4 -0
  131. package/dist/src/lib/utils.d.ts.map +1 -0
  132. package/dist/src/lib/utils.js +11 -0
  133. package/dist/src/lib/utils.js.map +1 -0
  134. package/dist/src/module-resolver/esm/resolve-package-exports.d.ts +9 -0
  135. package/dist/src/module-resolver/esm/resolve-package-exports.d.ts.map +1 -0
  136. package/dist/src/module-resolver/esm/resolve-package-exports.js +58 -0
  137. package/dist/src/module-resolver/esm/resolve-package-exports.js.map +1 -0
  138. package/dist/src/module-resolver/esm/resolve-package-imports-exports.d.ts +11 -0
  139. package/dist/src/module-resolver/esm/resolve-package-imports-exports.d.ts.map +1 -0
  140. package/dist/src/module-resolver/esm/resolve-package-imports-exports.js +72 -0
  141. package/dist/src/module-resolver/esm/resolve-package-imports-exports.js.map +1 -0
  142. package/dist/src/module-resolver/esm/resolve-package-target.d.ts +10 -0
  143. package/dist/src/module-resolver/esm/resolve-package-target.d.ts.map +1 -0
  144. package/dist/src/module-resolver/esm/resolve-package-target.js +133 -0
  145. package/dist/src/module-resolver/esm/resolve-package-target.js.map +1 -0
  146. package/dist/src/module-resolver/esm/utils.d.ts +35 -0
  147. package/dist/src/module-resolver/esm/utils.d.ts.map +1 -0
  148. package/dist/src/module-resolver/esm/utils.js +40 -0
  149. package/dist/src/module-resolver/esm/utils.js.map +1 -0
  150. package/dist/src/{core → module-resolver}/module-resolver.d.ts +16 -25
  151. package/dist/src/module-resolver/module-resolver.d.ts.map +1 -0
  152. package/dist/src/module-resolver/module-resolver.js +272 -0
  153. package/dist/src/module-resolver/module-resolver.js.map +1 -0
  154. package/dist/src/module-resolver/utils.d.ts +6 -0
  155. package/dist/src/module-resolver/utils.d.ts.map +1 -0
  156. package/dist/src/module-resolver/utils.js +16 -0
  157. package/dist/src/module-resolver/utils.js.map +1 -0
  158. package/dist/src/runner.js +1 -1
  159. package/dist/src/runner.js.map +1 -1
  160. package/dist/src/server/completion.d.ts.map +1 -1
  161. package/dist/src/server/completion.js.map +1 -1
  162. package/dist/src/server/file-system-cache.js +2 -2
  163. package/dist/src/server/file-system-cache.js.map +1 -1
  164. package/dist/src/testing/test-host.js +1 -1
  165. package/dist/src/testing/test-host.js.map +1 -1
  166. package/dist/src/types/package-json.d.ts +40 -0
  167. package/dist/src/types/package-json.d.ts.map +1 -0
  168. package/dist/src/types/package-json.js +2 -0
  169. package/dist/src/types/package-json.js.map +1 -0
  170. package/package.json +11 -7
  171. package/templates/__snapshots__/emitter-ts/.gitignore +9 -0
  172. package/templates/__snapshots__/emitter-ts/eslint.config.js +1 -1
  173. package/templates/__snapshots__/library-ts/.gitignore +9 -0
  174. package/templates/__snapshots__/library-ts/eslint.config.js +1 -1
  175. package/templates/emitter-ts/eslint.config.js +1 -1
  176. package/templates/library-ts/eslint.config.js +1 -1
  177. package/dist/src/core/module-resolver.d.ts.map +0 -1
  178. package/dist/src/core/module-resolver.js +0 -169
  179. package/dist/src/core/module-resolver.js.map +0 -1
@@ -4,6 +4,7 @@ import { compilerAssert, getDiscriminatedUnion, getTypeName, ignoreDiagnostics,
4
4
  import { getDocDataInternal, getMaxItemsAsNumeric, getMaxLengthAsNumeric, getMaxValueAsNumeric, getMaxValueExclusiveAsNumeric, getMinItemsAsNumeric, getMinLengthAsNumeric, getMinValueAsNumeric, getMinValueExclusiveAsNumeric, setDiscriminator, setDocData, setMaxItems, setMaxLength, setMaxValue, setMaxValueExclusive, setMinItems, setMinLength, setMinValue, setMinValueExclusive, } from "../core/intrinsic-type-state.js";
5
5
  import { createDiagnostic, reportDiagnostic } from "../core/messages.js";
6
6
  import { SyntaxKind, } from "../core/types.js";
7
+ import { useStateMap, useStateSet } from "./utils.js";
7
8
  export { $encodedName, resolveEncodedName } from "./encoded-names.js";
8
9
  export { serializeValueAsJson } from "./examples.js";
9
10
  export * from "./service.js";
@@ -20,7 +21,7 @@ function replaceTemplatedStringFromProperties(formatString, sourceObject) {
20
21
  function createStateSymbol(name) {
21
22
  return Symbol.for(`TypeSpec.${name}`);
22
23
  }
23
- const summaryKey = createStateSymbol("summary");
24
+ const [getSummary, setSummary] = useStateMap("summary");
24
25
  /**
25
26
  * @summary attaches a documentation string. It is typically used to give a short, single-line
26
27
  * description, and can be used in combination with or instead of @doc.
@@ -34,11 +35,9 @@ export const $summary = (context, target, text, sourceObject) => {
34
35
  if (sourceObject) {
35
36
  text = replaceTemplatedStringFromProperties(text, sourceObject);
36
37
  }
37
- context.program.stateMap(summaryKey).set(target, text);
38
+ setSummary(context.program, target, text);
38
39
  };
39
- export function getSummary(program, type) {
40
- return program.stateMap(summaryKey).get(type);
41
- }
40
+ export { getSummary };
42
41
  /**
43
42
  * @doc attaches a documentation string. Works great with multi-line string literals.
44
43
  *
@@ -175,14 +174,14 @@ function validateTargetingAString(context, target, decoratorName) {
175
174
  return valid;
176
175
  }
177
176
  // -- @error decorator ----------------------
178
- const errorKey = createStateSymbol("error");
177
+ const [getErrorState, setErrorState] = useStateSet("error");
179
178
  /**
180
179
  * `@error` decorator marks a model as an error type.
181
180
  * Any derived models (using extends) will also be seen as error types.
182
181
  */
183
182
  export const $error = (context, entity) => {
184
183
  validateDecoratorUniqueOnNode(context, entity, $error);
185
- context.program.stateSet(errorKey).add(entity);
184
+ setErrorState(context.program, entity);
186
185
  };
187
186
  /**
188
187
  * Check if the type is an error model or a descendant of an error model.
@@ -193,7 +192,7 @@ export function isErrorModel(program, target) {
193
192
  }
194
193
  let current = target;
195
194
  while (current) {
196
- if (program.stateSet(errorKey).has(current)) {
195
+ if (getErrorState(program, current)) {
197
196
  return true;
198
197
  }
199
198
  current = current.baseModel;
@@ -201,7 +200,7 @@ export function isErrorModel(program, target) {
201
200
  return false;
202
201
  }
203
202
  // -- @format decorator ---------------------
204
- const formatValuesKey = createStateSymbol("formatValues");
203
+ const [getFormat, setFormat] = useStateMap("format");
205
204
  /**
206
205
  * `@format` - specify the data format hint for a string type
207
206
  *
@@ -224,13 +223,11 @@ export const $format = (context, target, format) => {
224
223
  if (targetType.kind === "Scalar" && isIntrinsicType(context.program, targetType, "bytes")) {
225
224
  reportDeprecated(context.program, "Using `@format` on a bytes scalar is deprecated. Use `@encode` instead. https://github.com/microsoft/typespec/issues/1873", target);
226
225
  }
227
- context.program.stateMap(formatValuesKey).set(target, format);
226
+ setFormat(context.program, target, format);
228
227
  };
229
- export function getFormat(program, target) {
230
- return program.stateMap(formatValuesKey).get(target);
231
- }
228
+ export { getFormat };
232
229
  // -- @pattern decorator ---------------------
233
- const patternValuesKey = createStateSymbol("patternValues");
230
+ const [getPatternData, setPatternData] = useStateMap("patternValues");
234
231
  export const $pattern = (context, target, pattern, validationMessage) => {
235
232
  validateDecoratorUniqueOnNode(context, target, $pattern);
236
233
  if (!validateTargetingAString(context, target, "@pattern")) {
@@ -240,7 +237,7 @@ export const $pattern = (context, target, pattern, validationMessage) => {
240
237
  pattern,
241
238
  validationMessage,
242
239
  };
243
- context.program.stateMap(patternValuesKey).set(target, patternData);
240
+ setPatternData(context.program, target, patternData);
244
241
  };
245
242
  /**
246
243
  * Gets the pattern regular expression associated with a given type, if one has been set.
@@ -254,6 +251,7 @@ export const $pattern = (context, target, pattern, validationMessage) => {
254
251
  export function getPattern(program, target) {
255
252
  return getPatternData(program, target)?.pattern;
256
253
  }
254
+ export {
257
255
  /**
258
256
  * Gets the associated pattern data, including the pattern regular expression and optional validation message, if any
259
257
  * has been set.
@@ -262,9 +260,7 @@ export function getPattern(program, target) {
262
260
  * @param target - the type to get the pattern data for
263
261
  * @returns the pattern data, if any was set
264
262
  */
265
- export function getPatternData(program, target) {
266
- return program.stateMap(patternValuesKey).get(target);
267
- }
263
+ getPatternData, };
268
264
  // -- @minLength decorator ---------------------
269
265
  export const $minLength = (context, target, minLength) => {
270
266
  validateDecoratorUniqueOnNode(context, target, $minLength);
@@ -376,7 +372,7 @@ export const $maxValueExclusive = (context, target, maxValueExclusive) => {
376
372
  setMaxValueExclusive(program, target, maxValueExclusive);
377
373
  };
378
374
  // -- @secret decorator ---------------------
379
- const secretTypesKey = createStateSymbol("secretTypes");
375
+ const [isSecret, markSecret] = useStateSet("secretTypes");
380
376
  /**
381
377
  * Mark a string as a secret value that should be treated carefully to avoid exposure
382
378
  * @param context Decorator context
@@ -387,12 +383,10 @@ export const $secret = (context, target) => {
387
383
  if (!validateTargetingAString(context, target, "@secret")) {
388
384
  return;
389
385
  }
390
- context.program.stateMap(secretTypesKey).set(target, true);
386
+ markSecret(context.program, target);
391
387
  };
392
- export function isSecret(program, target) {
393
- return program.stateMap(secretTypesKey).get(target);
394
- }
395
- const encodeKey = createStateSymbol("encode");
388
+ export { isSecret };
389
+ const [getEncode, setEncodeData] = useStateMap("encode");
396
390
  export const $encode = (context, target, encoding, encodeAs) => {
397
391
  validateDecoratorUniqueOnNode(context, target, $encode);
398
392
  const encodeData = computeEncoding(context.program, encoding, encodeAs);
@@ -401,7 +395,7 @@ export const $encode = (context, target, encoding, encodeAs) => {
401
395
  }
402
396
  const targetType = getPropertyType(target);
403
397
  validateEncodeData(context, targetType, encodeData);
404
- context.program.stateMap(encodeKey).set(target, encodeData);
398
+ setEncodeData(context.program, target, encodeData);
405
399
  };
406
400
  function computeEncoding(program, encodingOrEncodeAs, encodeAs) {
407
401
  const strType = program.checker.getStdType("string");
@@ -486,20 +480,16 @@ function validateEncodeData(context, target, encodeData) {
486
480
  return check(["numeric"], ["string"]);
487
481
  }
488
482
  }
489
- export function getEncode(program, target) {
490
- return program.stateMap(encodeKey).get(target);
491
- }
483
+ export { getEncode };
492
484
  // -- @visibility decorator ---------------------
493
- const visibilitySettingsKey = createStateSymbol("visibilitySettings");
485
+ const [getVisibility, setVisibility, getVisibilityStateMap] = useStateMap("visibilitySettings");
494
486
  export const $visibility = (context, target, ...visibilities) => {
495
487
  validateDecoratorUniqueOnNode(context, target, $visibility);
496
- context.program.stateMap(visibilitySettingsKey).set(target, visibilities);
488
+ setVisibility(context.program, target, visibilities);
497
489
  };
498
- export function getVisibility(program, target) {
499
- return program.stateMap(visibilitySettingsKey).get(target);
500
- }
490
+ export { getVisibility };
501
491
  function clearVisibilities(program, target) {
502
- program.stateMap(visibilitySettingsKey).delete(target);
492
+ getVisibilityStateMap(program).delete(target);
503
493
  }
504
494
  export const $withVisibility = (context, target, ...visibilities) => {
505
495
  filterModelPropertiesInPlace(target, (p) => isVisible(context.program, p, visibilities));
@@ -576,6 +566,7 @@ const listPropertiesKey = createStateSymbol("listProperties");
576
566
  /**
577
567
  * @deprecated Use the `listsResource` decorator in `@typespec/rest` instead.
578
568
  */
569
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
579
570
  export const $list = (context, target, listedType) => {
580
571
  if (listedType && listedType.kind === "TemplateParameter") {
581
572
  // Silently return because this is probably being used in a templated interface
@@ -604,21 +595,21 @@ export function isListOperation(program, target) {
604
595
  return program.stateMap(listPropertiesKey).has(target);
605
596
  }
606
597
  // -- @tag decorator ---------------------
607
- const tagPropertiesKey = createStateSymbol("tagProperties");
598
+ const [getTagsState, setTags] = useStateMap("tagProperties");
608
599
  // Set a tag on an operation, interface, or namespace. There can be multiple tags on an
609
600
  // operation, interface, or namespace.
610
601
  export const $tag = (context, target, tag) => {
611
- const tags = context.program.stateMap(tagPropertiesKey).get(target);
602
+ const tags = getTagsState(context.program, target);
612
603
  if (tags) {
613
604
  tags.push(tag);
614
605
  }
615
606
  else {
616
- context.program.stateMap(tagPropertiesKey).set(target, [tag]);
607
+ setTags(context.program, target, [tag]);
617
608
  }
618
609
  };
619
610
  // Return the tags set on an operation or namespace
620
611
  export function getTags(program, target) {
621
- return program.stateMap(tagPropertiesKey).get(target) || [];
612
+ return getTagsState(program, target) || [];
622
613
  }
623
614
  // Merge the tags for a operation with the tags that are on the namespace or
624
615
  // interface it resides within.
@@ -641,7 +632,7 @@ export function getAllTags(program, target) {
641
632
  return tags.size > 0 ? Array.from(tags).reverse() : undefined;
642
633
  }
643
634
  // -- @friendlyName decorator ---------------------
644
- const friendlyNamesKey = createStateSymbol("friendlyNames");
635
+ const [getFriendlyName, setFriendlyName] = useStateMap("friendlyNames");
645
636
  export const $friendlyName = (context, target, friendlyName, sourceObject) => {
646
637
  // workaround for current lack of functionality in compiler
647
638
  // https://github.com/microsoft/typespec/issues/2717
@@ -661,12 +652,10 @@ export const $friendlyName = (context, target, friendlyName, sourceObject) => {
661
652
  if (sourceObject) {
662
653
  friendlyName = replaceTemplatedStringFromProperties(friendlyName, sourceObject);
663
654
  }
664
- context.program.stateMap(friendlyNamesKey).set(target, friendlyName);
655
+ setFriendlyName(context.program, target, friendlyName);
665
656
  };
666
- export function getFriendlyName(program, target) {
667
- return program.stateMap(friendlyNamesKey).get(target);
668
- }
669
- const knownValuesKey = createStateSymbol("knownValues");
657
+ export { getFriendlyName };
658
+ const [getKnownValues, setKnownValues] = useStateMap("knownValues");
670
659
  /**
671
660
  * `@knownValues` marks a string type with an enum that contains all known values
672
661
  *
@@ -702,7 +691,7 @@ export const $knownValues = (context, target, knownValues) => {
702
691
  return;
703
692
  }
704
693
  }
705
- context.program.stateMap(knownValuesKey).set(target, knownValues);
694
+ setKnownValues(context.program, target, knownValues);
706
695
  };
707
696
  function isEnumMemberAssignableToType(program, typeName, member) {
708
697
  const memberType = member.value !== undefined ? typeof member.value : "string";
@@ -715,10 +704,8 @@ function isEnumMemberAssignableToType(program, typeName, member) {
715
704
  return false;
716
705
  }
717
706
  }
718
- export function getKnownValues(program, target) {
719
- return program.stateMap(knownValuesKey).get(target);
720
- }
721
- const keyKey = createStateSymbol("key");
707
+ export { getKnownValues };
708
+ const [getKey, setKey] = useStateMap("key");
722
709
  /**
723
710
  * `@key` - mark a model property as the key to identify instances of that type
724
711
  *
@@ -738,13 +725,13 @@ export const $key = (context, entity, altName) => {
738
725
  return;
739
726
  }
740
727
  // Register the key property
741
- context.program.stateMap(keyKey).set(entity, altName || entity.name);
728
+ setKey(context.program, entity, altName || entity.name);
742
729
  };
743
730
  export function isKey(program, property) {
744
- return program.stateMap(keyKey).has(property);
731
+ return getKey(program, property) !== undefined;
745
732
  }
746
733
  export function getKeyName(program, property) {
747
- return program.stateMap(keyKey).get(property);
734
+ return getKey(program, property);
748
735
  }
749
736
  export const $withDefaultKeyVisibility = (context, entity, visibility) => {
750
737
  const keyProperties = [];
@@ -781,6 +768,7 @@ export const $withDefaultKeyVisibility = (context, entity, visibility) => {
781
768
  * model Foo {}
782
769
  * ```
783
770
  */
771
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
784
772
  export const $deprecated = (context, target, message) => {
785
773
  markDeprecated(context.program, target, { message });
786
774
  };
@@ -792,8 +780,8 @@ export const $deprecated = (context, target, message) => {
792
780
  export function getDeprecated(program, type) {
793
781
  return getDeprecationDetails(program, type)?.message;
794
782
  }
795
- const overloadedByKey = createStateSymbol("overloadedByKey");
796
- const overloadsOperationKey = createStateSymbol("overloadsOperation");
783
+ const [getOverloads, setOverloads] = useStateMap("overloadedByKey");
784
+ const [getOverloadedOperation, setOverloadBase] = useStateMap("overloadsOperation");
797
785
  /**
798
786
  * `@overload` - Indicate that the target overloads (specializes) the overloads type.
799
787
  * @param context DecoratorContext
@@ -815,9 +803,9 @@ export const $overload = (context, target, overloadBase) => {
815
803
  });
816
804
  }
817
805
  // Save the information about the overloaded operation
818
- context.program.stateMap(overloadsOperationKey).set(target, overloadBase);
806
+ setOverloadBase(context.program, target, overloadBase);
819
807
  const existingOverloads = getOverloads(context.program, overloadBase) || new Array();
820
- context.program.stateMap(overloadedByKey).set(overloadBase, existingOverloads.concat(target));
808
+ setOverloads(context.program, overloadBase, existingOverloads.concat(target));
821
809
  };
822
810
  function areOperationsInSameContainer(op1, op2) {
823
811
  return op1.interface || op2.interface
@@ -838,24 +826,21 @@ function getBaseInterface(int1) {
838
826
  ? int1
839
827
  : getBaseInterface(int1.projectionSource);
840
828
  }
841
- /**
842
- * Get all operations that are marked as overloads of the given operation
843
- * @param program Program
844
- * @param operation Operation
845
- * @returns An array of operations that overload the given operation.
846
- */
847
- export function getOverloads(program, operation) {
848
- return program.stateMap(overloadedByKey).get(operation);
849
- }
829
+ export {
850
830
  /**
851
831
  * If the given operation overloads another operation, return that operation.
852
832
  * @param program Program
853
833
  * @param operation The operation to check for an overload target.
854
834
  * @returns The operation this operation overloads, if any.
855
835
  */
856
- export function getOverloadedOperation(program, operation) {
857
- return program.stateMap(overloadsOperationKey).get(operation);
858
- }
836
+ getOverloadedOperation,
837
+ /**
838
+ * Get all operations that are marked as overloads of the given operation
839
+ * @param program Program
840
+ * @param operation Operation
841
+ * @returns An array of operations that overload the given operation.
842
+ */
843
+ getOverloads, };
859
844
  const projectedNameKey = createStateSymbol("projectedNameKey");
860
845
  /**
861
846
  * `@projectedName` - Indicate that this entity should be renamed according to the given projection.
@@ -924,33 +909,31 @@ export const $discriminator = (context, entity, propertyName) => {
924
909
  }
925
910
  setDiscriminator(context.program, entity, discriminator);
926
911
  };
927
- const parameterVisibilityKey = createStateSymbol("parameterVisibility");
912
+ const [getParameterVisibility, setParameterVisibility] = useStateMap("parameterVisibility");
928
913
  export const $parameterVisibility = (context, entity, ...visibilities) => {
929
914
  validateDecoratorUniqueOnNode(context, entity, $parameterVisibility);
930
- context.program.stateMap(parameterVisibilityKey).set(entity, visibilities);
915
+ setParameterVisibility(context.program, entity, visibilities);
931
916
  };
917
+ export {
932
918
  /**
933
919
  * Returns the visibilities of the parameters of the given operation, if provided with `@parameterVisibility`.
934
920
  *
935
921
  * @see {@link $parameterVisibility}
936
922
  */
937
- export function getParameterVisibility(program, entity) {
938
- return program.stateMap(parameterVisibilityKey).get(entity);
939
- }
940
- const returnTypeVisibilityKey = createStateSymbol("returnTypeVisibility");
923
+ getParameterVisibility, };
924
+ const [getReturnTypeVisibility, setReturnTypeVisibility] = useStateMap("returnTypeVisibility");
941
925
  export const $returnTypeVisibility = (context, entity, ...visibilities) => {
942
926
  validateDecoratorUniqueOnNode(context, entity, $returnTypeVisibility);
943
- context.program.stateMap(returnTypeVisibilityKey).set(entity, visibilities);
927
+ setReturnTypeVisibility(context.program, entity, visibilities);
944
928
  };
929
+ export {
945
930
  /**
946
931
  * Returns the visibilities of the return type of the given operation, if provided with `@returnTypeVisibility`.
947
932
  *
948
933
  * @see {@link $returnTypeVisibility}
949
934
  */
950
- export function getReturnTypeVisibility(program, entity) {
951
- return program.stateMap(returnTypeVisibilityKey).get(entity);
952
- }
953
- const exampleKey = createStateSymbol("examples");
935
+ getReturnTypeVisibility, };
936
+ const [getExamplesState, setExamples] = useStateMap("examples");
954
937
  export const $example = (context, target, _example, options) => {
955
938
  const decorator = target.decorators.find((d) => d.decorator === $example && d.node === context.decoratorTarget);
956
939
  compilerAssert(decorator, `Couldn't find @example decorator`, context.decoratorTarget);
@@ -961,19 +944,18 @@ export const $example = (context, target, _example, options) => {
961
944
  return;
962
945
  }
963
946
  }
964
- let list = context.program.stateMap(exampleKey).get(target);
947
+ let list = getExamplesState(context.program, target);
965
948
  if (list === undefined) {
966
949
  list = [];
967
- context.program.stateMap(exampleKey).set(target, list);
950
+ setExamples(context.program, target, list);
968
951
  }
969
952
  list.push({ value: rawExample, ...options });
970
953
  };
971
954
  export function getExamples(program, target) {
972
- return program.stateMap(exampleKey).get(target) ?? [];
955
+ return getExamplesState(program, target) ?? [];
973
956
  }
974
- const opExampleKey = createStateSymbol("opExamples");
975
- export const $opExample = (context, target, _example, options // TODO: change `options?: ExampleOptions` when tspd supports it
976
- ) => {
957
+ const [getOpExamplesState, setOpExamples] = useStateMap("opExamples");
958
+ export const $opExample = (context, target, _example, options) => {
977
959
  const decorator = target.decorators.find((d) => d.decorator === $opExample && d.node === context.decoratorTarget);
978
960
  compilerAssert(decorator, `Couldn't find @opExample decorator`, context.decoratorTarget);
979
961
  const rawExampleConfig = decorator.args[0].value;
@@ -990,10 +972,10 @@ export const $opExample = (context, target, _example, options // TODO: change `o
990
972
  return;
991
973
  }
992
974
  }
993
- let list = context.program.stateMap(opExampleKey).get(target);
975
+ let list = getOpExamplesState(context.program, target);
994
976
  if (list === undefined) {
995
977
  list = [];
996
- context.program.stateMap(opExampleKey).set(target, list);
978
+ setOpExamples(context.program, target, list);
997
979
  }
998
980
  list.push({ parameters, returnType, ...options });
999
981
  };
@@ -1006,6 +988,6 @@ function checkExampleValid(program, value, target, diagnosticTarget) {
1006
988
  return assignable;
1007
989
  }
1008
990
  export function getOpExamples(program, target) {
1009
- return program.stateMap(opExampleKey).get(target) ?? [];
991
+ return getOpExamplesState(program, target) ?? [];
1010
992
  }
1011
993
  //# sourceMappingURL=decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/lib/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/lib/decorators.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,13 @@
1
1
  import { reportDiagnostic } from "../core/messages.js";
2
2
  import { parseMimeType } from "../core/mime-type.js";
3
3
  import { DuplicateTracker } from "../utils/index.js";
4
- function createStateSymbol(name) {
5
- return Symbol.for(`TypeSpec.${name}`);
6
- }
7
- const encodedNameKey = createStateSymbol("encodedName");
4
+ import { useStateMap } from "./utils.js";
5
+ const [getEncodedNamesMap, setEncodedNamesMap, getEncodedNamesStateMap] = useStateMap("encodedName");
8
6
  export function $encodedName(context, target, mimeType, name) {
9
- let existing = context.program.stateMap(encodedNameKey).get(target);
7
+ let existing = getEncodedNamesMap(context.program, target);
10
8
  if (existing === undefined) {
11
9
  existing = new Map();
12
- context.program.stateMap(encodedNameKey).set(target, existing);
10
+ setEncodedNamesMap(context.program, target, existing);
13
11
  }
14
12
  const mimeTypeObj = parseMimeType(mimeType);
15
13
  if (mimeTypeObj === undefined) {
@@ -36,7 +34,7 @@ function getEncodedName(program, target, mimeType) {
36
34
  const resolvedMimeType = mimeTypeObj?.suffix
37
35
  ? `${mimeTypeObj.type}/${mimeTypeObj.suffix}`
38
36
  : mimeType;
39
- return program.stateMap(encodedNameKey).get(target)?.get(resolvedMimeType);
37
+ return getEncodedNamesMap(program, target)?.get(resolvedMimeType);
40
38
  }
41
39
  /**
42
40
  * Resolve the encoded name for the given type when serialized to the given mime type.
@@ -83,7 +81,7 @@ export function validateEncodedNamesConflicts(program) {
83
81
  }
84
82
  return tracker;
85
83
  }
86
- for (const [target, map] of program.stateMap(encodedNameKey).entries()) {
84
+ for (const [target, map] of getEncodedNamesStateMap(program).entries()) {
87
85
  const scope = getScope(target);
88
86
  if (scope === undefined) {
89
87
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"encoded-names.js","sourceRoot":"","sources":["../../../src/lib/encoded-names.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encoded-names.js","sourceRoot":"","sources":["../../../src/lib/encoded-names.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../../src/lib/examples.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAIL,KAAK,IAAI,EACT,KAAK,KAAK,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,QAAQ,CAAC,EAAE,UAAU,GACpB,OAAO,CA6BT"}
1
+ {"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../../src/lib/examples.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAIL,KAAK,IAAI,EACT,KAAK,KAAK,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAiC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEjF;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,QAAQ,CAAC,EAAE,UAAU,GACpB,OAAO,CA6BT"}