@typespec/compiler 0.66.0-dev.1 → 0.66.0-dev.12

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 (143) hide show
  1. package/dist/generated-defs/TypeSpec.d.ts +60 -5
  2. package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
  3. package/dist/manifest.js +2 -2
  4. package/dist/src/core/cli/cli.js +2 -1
  5. package/dist/src/core/cli/cli.js.map +1 -1
  6. package/dist/src/core/compiler-code-fixes/remove-unused-code.codefix.d.ts +6 -0
  7. package/dist/src/core/compiler-code-fixes/remove-unused-code.codefix.d.ts.map +1 -0
  8. package/dist/src/core/compiler-code-fixes/remove-unused-code.codefix.js +15 -0
  9. package/dist/src/core/compiler-code-fixes/remove-unused-code.codefix.js.map +1 -0
  10. package/dist/src/core/compiler-code-fixes/triple-quote-indent.codefix.d.ts +3 -0
  11. package/dist/src/core/compiler-code-fixes/triple-quote-indent.codefix.d.ts.map +1 -0
  12. package/dist/src/core/compiler-code-fixes/triple-quote-indent.codefix.js +49 -0
  13. package/dist/src/core/compiler-code-fixes/triple-quote-indent.codefix.js.map +1 -0
  14. package/dist/src/core/decorator-utils.d.ts.map +1 -1
  15. package/dist/src/core/decorator-utils.js +6 -0
  16. package/dist/src/core/decorator-utils.js.map +1 -1
  17. package/dist/src/core/helpers/discriminator-utils.d.ts +16 -2
  18. package/dist/src/core/helpers/discriminator-utils.d.ts.map +1 -1
  19. package/dist/src/core/helpers/discriminator-utils.js +80 -10
  20. package/dist/src/core/helpers/discriminator-utils.js.map +1 -1
  21. package/dist/src/core/helpers/syntax-utils.d.ts +1 -0
  22. package/dist/src/core/helpers/syntax-utils.d.ts.map +1 -1
  23. package/dist/src/core/helpers/syntax-utils.js +28 -0
  24. package/dist/src/core/helpers/syntax-utils.js.map +1 -1
  25. package/dist/src/core/intrinsic-type-state.d.ts +2 -0
  26. package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
  27. package/dist/src/core/intrinsic-type-state.js +2 -0
  28. package/dist/src/core/intrinsic-type-state.js.map +1 -1
  29. package/dist/src/core/linter.d.ts +11 -2
  30. package/dist/src/core/linter.d.ts.map +1 -1
  31. package/dist/src/core/linter.js +51 -3
  32. package/dist/src/core/linter.js.map +1 -1
  33. package/dist/src/core/messages.d.ts +17 -2
  34. package/dist/src/core/messages.d.ts.map +1 -1
  35. package/dist/src/core/messages.js +3 -0
  36. package/dist/src/core/messages.js.map +1 -1
  37. package/dist/src/core/name-resolver.d.ts +3 -1
  38. package/dist/src/core/name-resolver.d.ts.map +1 -1
  39. package/dist/src/core/name-resolver.js +40 -1
  40. package/dist/src/core/name-resolver.js.map +1 -1
  41. package/dist/src/core/parser.d.ts.map +1 -1
  42. package/dist/src/core/parser.js +1 -1
  43. package/dist/src/core/parser.js.map +1 -1
  44. package/dist/src/core/program.d.ts.map +1 -1
  45. package/dist/src/core/program.js +4 -3
  46. package/dist/src/core/program.js.map +1 -1
  47. package/dist/src/core/scanner.d.ts.map +1 -1
  48. package/dist/src/core/scanner.js +13 -6
  49. package/dist/src/core/scanner.js.map +1 -1
  50. package/dist/src/experimental/typekit/define-kit.d.ts +1 -0
  51. package/dist/src/experimental/typekit/define-kit.d.ts.map +1 -1
  52. package/dist/src/experimental/typekit/define-kit.js +14 -1
  53. package/dist/src/experimental/typekit/define-kit.js.map +1 -1
  54. package/dist/src/experimental/typekit/index.d.ts.map +1 -1
  55. package/dist/src/experimental/typekit/index.js +9 -3
  56. package/dist/src/experimental/typekit/index.js.map +1 -1
  57. package/dist/src/experimental/typekit/kits/array.d.ts +28 -0
  58. package/dist/src/experimental/typekit/kits/array.d.ts.map +1 -0
  59. package/dist/src/experimental/typekit/kits/array.js +26 -0
  60. package/dist/src/experimental/typekit/kits/array.js.map +1 -0
  61. package/dist/src/experimental/typekit/kits/builtin.d.ts +117 -0
  62. package/dist/src/experimental/typekit/kits/builtin.d.ts.map +1 -0
  63. package/dist/src/experimental/typekit/kits/builtin.js +81 -0
  64. package/dist/src/experimental/typekit/kits/builtin.js.map +1 -0
  65. package/dist/src/experimental/typekit/kits/enum-member.d.ts +52 -0
  66. package/dist/src/experimental/typekit/kits/enum-member.d.ts.map +1 -0
  67. package/dist/src/experimental/typekit/kits/enum-member.js +22 -0
  68. package/dist/src/experimental/typekit/kits/enum-member.js.map +1 -0
  69. package/dist/src/experimental/typekit/kits/enum.d.ts +54 -0
  70. package/dist/src/experimental/typekit/kits/enum.d.ts.map +1 -0
  71. package/dist/src/experimental/typekit/kits/enum.js +47 -0
  72. package/dist/src/experimental/typekit/kits/enum.js.map +1 -0
  73. package/dist/src/experimental/typekit/kits/index.d.ts +7 -0
  74. package/dist/src/experimental/typekit/kits/index.d.ts.map +1 -1
  75. package/dist/src/experimental/typekit/kits/index.js +7 -0
  76. package/dist/src/experimental/typekit/kits/index.js.map +1 -1
  77. package/dist/src/experimental/typekit/kits/model-property.d.ts +29 -1
  78. package/dist/src/experimental/typekit/kits/model-property.d.ts.map +1 -1
  79. package/dist/src/experimental/typekit/kits/model-property.js +11 -0
  80. package/dist/src/experimental/typekit/kits/model-property.js.map +1 -1
  81. package/dist/src/experimental/typekit/kits/model.d.ts +29 -4
  82. package/dist/src/experimental/typekit/kits/model.d.ts.map +1 -1
  83. package/dist/src/experimental/typekit/kits/model.js +49 -2
  84. package/dist/src/experimental/typekit/kits/model.js.map +1 -1
  85. package/dist/src/experimental/typekit/kits/operation.d.ts +49 -0
  86. package/dist/src/experimental/typekit/kits/operation.d.ts.map +1 -0
  87. package/dist/src/experimental/typekit/kits/operation.js +28 -0
  88. package/dist/src/experimental/typekit/kits/operation.js.map +1 -0
  89. package/dist/src/experimental/typekit/kits/record.d.ts +33 -0
  90. package/dist/src/experimental/typekit/kits/record.d.ts.map +1 -0
  91. package/dist/src/experimental/typekit/kits/record.js +26 -0
  92. package/dist/src/experimental/typekit/kits/record.js.map +1 -0
  93. package/dist/src/experimental/typekit/kits/type.d.ts +94 -1
  94. package/dist/src/experimental/typekit/kits/type.d.ts.map +1 -1
  95. package/dist/src/experimental/typekit/kits/type.js +59 -0
  96. package/dist/src/experimental/typekit/kits/type.js.map +1 -1
  97. package/dist/src/experimental/typekit/kits/union-variant.d.ts +5 -1
  98. package/dist/src/experimental/typekit/kits/union-variant.d.ts.map +1 -1
  99. package/dist/src/experimental/typekit/kits/union-variant.js.map +1 -1
  100. package/dist/src/experimental/typekit/kits/union.d.ts +15 -1
  101. package/dist/src/experimental/typekit/kits/union.d.ts.map +1 -1
  102. package/dist/src/experimental/typekit/kits/union.js +7 -0
  103. package/dist/src/experimental/typekit/kits/union.js.map +1 -1
  104. package/dist/src/experimental/typekit/kits/value.d.ts +84 -0
  105. package/dist/src/experimental/typekit/kits/value.d.ts.map +1 -0
  106. package/dist/src/experimental/typekit/kits/value.js +81 -0
  107. package/dist/src/experimental/typekit/kits/value.js.map +1 -0
  108. package/dist/src/experimental/typekit/utils/get-plausible-name.d.ts +7 -0
  109. package/dist/src/experimental/typekit/utils/get-plausible-name.d.ts.map +1 -0
  110. package/dist/src/experimental/typekit/utils/get-plausible-name.js +17 -0
  111. package/dist/src/experimental/typekit/utils/get-plausible-name.js.map +1 -0
  112. package/dist/src/experimental/typekit/utils/index.d.ts +2 -0
  113. package/dist/src/experimental/typekit/utils/index.d.ts.map +1 -0
  114. package/dist/src/experimental/typekit/utils/index.js +2 -0
  115. package/dist/src/experimental/typekit/utils/index.js.map +1 -0
  116. package/dist/src/formatter/print/printer.d.ts.map +1 -1
  117. package/dist/src/formatter/print/printer.js +1 -29
  118. package/dist/src/formatter/print/printer.js.map +1 -1
  119. package/dist/src/init/scaffold.d.ts.map +1 -1
  120. package/dist/src/init/scaffold.js +7 -9
  121. package/dist/src/init/scaffold.js.map +1 -1
  122. package/dist/src/lib/decorators.d.ts +3 -2
  123. package/dist/src/lib/decorators.d.ts.map +1 -1
  124. package/dist/src/lib/decorators.js +15 -3
  125. package/dist/src/lib/decorators.js.map +1 -1
  126. package/dist/src/lib/tsp-index.d.ts.map +1 -1
  127. package/dist/src/lib/tsp-index.js +2 -1
  128. package/dist/src/lib/tsp-index.js.map +1 -1
  129. package/dist/src/server/compile-service.d.ts.map +1 -1
  130. package/dist/src/server/compile-service.js +13 -4
  131. package/dist/src/server/compile-service.js.map +1 -1
  132. package/dist/src/server/serverlib.d.ts.map +1 -1
  133. package/dist/src/server/serverlib.js +15 -2
  134. package/dist/src/server/serverlib.js.map +1 -1
  135. package/dist/src/server/tmlanguage.js +1 -1
  136. package/dist/src/server/tmlanguage.js.map +1 -1
  137. package/dist/src/server/types.d.ts +2 -1
  138. package/dist/src/server/types.d.ts.map +1 -1
  139. package/dist/src/server/types.js.map +1 -1
  140. package/dist/typespec.tmLanguage +3 -3
  141. package/lib/std/decorators.tsp +74 -5
  142. package/package.json +1 -1
  143. package/templates/scaffolding.json +4 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAkC7C,SAAS,CAAmB;IAC1B,MAAM,EAAE;QACN,EAAE,CAAC,IAAI;YACL,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,CAC7F,CAAC;QACJ,CAAC;QACD,cAAc,CAAC,IAAI;YACjB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,IAAI,CAAC,OAAQ,CAAC,KAAK,CAAC;QAC7B,CAAC;QACD,MAAM,CAAC,WAAW;YAChB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBACvB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE;oBACP,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;oBACxB,KAAK,EAAE,WAAW;iBACnB;aACF,CAAC,CAAC;QACL,CAAC;KACF;CACF,CAAC,CAAC"}
@@ -1,4 +1,6 @@
1
- import { type Type } from "../../../core/types.js";
1
+ import { DiscriminatedUnion } from "../../../core/helpers/discriminator-utils.js";
2
+ import { Discriminator } from "../../../core/intrinsic-type-state.js";
3
+ import { Enum, Model, Scalar, Union, type Type } from "../../../core/types.js";
2
4
  /** @experimental */
3
5
  export interface TypeTypekit {
4
6
  /**
@@ -10,6 +12,97 @@ export interface TypeTypekit {
10
12
  * Finishes a type, applying all the decorators.
11
13
  */
12
14
  finishType(type: Type): void;
15
+ /**
16
+ * Checks if a type is decorated with @error
17
+ * @param type The type to check.
18
+ */
19
+ isError(type: Type): boolean;
20
+ /**
21
+ * Get the name of this type in the specified encoding.
22
+ */
23
+ getEncodedName(type: Type & {
24
+ name: string;
25
+ }, encoding: string): string;
26
+ /**
27
+ * Get the summary of this type as specified by the `@summary` decorator.
28
+ *
29
+ * @param type The type to get the summary for.
30
+ */
31
+ getSummary(type: Type): string | undefined;
32
+ /**
33
+ * Get the documentation of this type as specified by the `@doc` decorator or
34
+ * the JSDoc comment.
35
+ *
36
+ * @param type The type to get the documentation for.
37
+ */
38
+ getDoc(type: Type): string | undefined;
39
+ /**
40
+ * Get the plausible name of a type. If the type has a name, it will use it otherwise it will try generate a name based on the context.
41
+ * If the type can't get a name, it will return an empty string.
42
+ * If the type is a TemplateInstance, it will prefix the name with the template arguments.
43
+ * @param type The scalar to get the name of.z
44
+ */
45
+ getPlausibleName(type: Model | Union | Enum | Scalar): string;
46
+ /**
47
+ * Resolves a discriminated union for the given model or union.
48
+ * @param type Model or Union to resolve the discriminated union for.
49
+ */
50
+ getDiscriminatedUnion(type: Union): DiscriminatedUnion | undefined;
51
+ /**
52
+ * Resolves the discriminator for a discriminated union. Returns undefined if the type is not a discriminated union.
53
+ * @param type
54
+ */
55
+ getDiscriminator(type: Model | Union): Discriminator | undefined;
56
+ /**
57
+ * Gets the maximum value for a numeric or model property type.
58
+ * @param type type to get the maximum value for
59
+ */
60
+ maxValue(type: Type): number | undefined;
61
+ /**
62
+ * Gets the minimum value for a numeric or model property type.
63
+ * @param type type to get the minimum value for
64
+ */
65
+ minValue(type: Type): number | undefined;
66
+ /**
67
+ * Gets the maximum value this numeric type should be, exclusive of the given value.
68
+ * @param type
69
+ */
70
+ maxValueExclusive(type: Type): number | undefined;
71
+ /**
72
+ * Gets the minimum value this numeric type should be, exclusive of the given value.
73
+ * @param type type to get the minimum value for
74
+ */
75
+ minValueExclusive(type: Type): number | undefined;
76
+ /**
77
+ * Gets the maximum length for a string type.
78
+ * @param type type to get the maximum length for
79
+ */
80
+ maxLength(type: Type): number | undefined;
81
+ /**
82
+ * Gets the minimum length for a string type.
83
+ * @param type type to get the minimum length for
84
+ */
85
+ minLength(type: Type): number | undefined;
86
+ /**
87
+ * Gets the maximum number of items for an array type.
88
+ * @param type type to get the maximum number of items for
89
+ */
90
+ maxItems(type: Type): number | undefined;
91
+ /**
92
+ * Gets the minimum number of items for an array type.
93
+ * @param type type to get the minimum number of items for
94
+ */
95
+ minItems(type: Type): number | undefined;
96
+ /**
97
+ * Checks if the given type is a never type.
98
+ */
99
+ isNever(type: Type): boolean;
100
+ /**
101
+ * Checks if the given type is a user defined type. Non-user defined types are defined in the compiler or other libraries imported by the spec.
102
+ * @param type The type to check.
103
+ * @returns True if the type is a user defined type, false otherwise.
104
+ */
105
+ isUserDefined(type: Type): boolean;
13
106
  }
14
107
  interface TypekitExtension {
15
108
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAInD,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,KAAK,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CAC9B;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/type.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAEnB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EACL,aAAa,EAUd,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAO/E,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,KAAK,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IAC7B;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAExE;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3C;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IACvC;;;;;OAKG;IACH,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9D;;;OAGG;IACH,qBAAqB,CAAC,IAAI,EAAE,KAAK,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACnE;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,aAAa,GAAG,SAAS,CAAC;IACjE;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAEzC;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAElD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAElD;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IAC7B;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;CACpC;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
@@ -1,5 +1,12 @@
1
+ import { getDiscriminatedUnion, } from "../../../core/helpers/discriminator-utils.js";
2
+ import { getLocationContext } from "../../../core/index.js";
3
+ import { getDiscriminator, getMaxItems, getMaxLength, getMaxValue, getMaxValueExclusive, getMinItems, getMinLength, getMinValue, getMinValueExclusive, } from "../../../core/intrinsic-type-state.js";
4
+ import { isErrorType, isNeverType } from "../../../core/type-utils.js";
5
+ import { getDoc, getSummary } from "../../../lib/decorators.js";
6
+ import { resolveEncodedName } from "../../../lib/encoded-names.js";
1
7
  import { defineKit } from "../define-kit.js";
2
8
  import { copyMap } from "../utils.js";
9
+ import { getPlausibleName } from "../utils/get-plausible-name.js";
3
10
  defineKit({
4
11
  type: {
5
12
  finishType(type) {
@@ -79,6 +86,58 @@ defineKit({
79
86
  this.realm.addType(clone);
80
87
  return clone;
81
88
  },
89
+ isError(type) {
90
+ return isErrorType(type);
91
+ },
92
+ getEncodedName(type, encoding) {
93
+ return resolveEncodedName(this.program, type, encoding);
94
+ },
95
+ getSummary(type) {
96
+ return getSummary(this.program, type);
97
+ },
98
+ getDoc(type) {
99
+ return getDoc(this.program, type);
100
+ },
101
+ getPlausibleName(type) {
102
+ return getPlausibleName(type);
103
+ },
104
+ getDiscriminator(type) {
105
+ return getDiscriminator(this.program, type);
106
+ },
107
+ getDiscriminatedUnion(type) {
108
+ const [union] = getDiscriminatedUnion(this.program, type);
109
+ return union;
110
+ },
111
+ maxValue(type) {
112
+ return getMaxValue(this.program, type);
113
+ },
114
+ minValue(type) {
115
+ return getMinValue(this.program, type);
116
+ },
117
+ maxLength(type) {
118
+ return getMaxLength(this.program, type);
119
+ },
120
+ minLength(type) {
121
+ return getMinLength(this.program, type);
122
+ },
123
+ maxItems(type) {
124
+ return getMaxItems(this.program, type);
125
+ },
126
+ maxValueExclusive(type) {
127
+ return getMaxValueExclusive(this.program, type);
128
+ },
129
+ minValueExclusive(type) {
130
+ return getMinValueExclusive(this.program, type);
131
+ },
132
+ minItems(type) {
133
+ return getMinItems(this.program, type);
134
+ },
135
+ isNever(type) {
136
+ return isNeverType(type);
137
+ },
138
+ isUserDefined(type) {
139
+ return getLocationContext(this.program, type).type === "project";
140
+ },
82
141
  },
83
142
  });
84
143
  //# sourceMappingURL=type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/type.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import type { Type, Union, UnionVariant } from "../../../core/types.js";
2
2
  import { DecoratorArgs } from "../utils.js";
3
- interface UnionVariantDescriptor {
3
+ /**
4
+ * A descriptor for a union variant.
5
+ * @experimental
6
+ */
7
+ export interface UnionVariantDescriptor {
4
8
  /**
5
9
  * The name of the union variant.
6
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"union-variant.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union-variant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAExE,OAAO,EAAwB,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE,UAAU,sBAAsB;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAE7B;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IAEX;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,sBAAsB,GAAG,YAAY,CAAC;IAEnD;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,YAAY,CAAC;CACtC;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,YAAY,EAAE,eAAe,CAAC;CAC/B;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
1
+ {"version":3,"file":"union-variant.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union-variant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAExE,OAAO,EAAwB,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAE7B;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IAEX;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,sBAAsB,GAAG,YAAY,CAAC;IAEnD;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,YAAY,CAAC;CACtC;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,YAAY,EAAE,eAAe,CAAC;CAC/B;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"union-variant.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union-variant.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAiB,MAAM,aAAa,CAAC;AA6DlE,SAAS,CAAmB;IAC1B,YAAY,EAAE;QACZ,MAAM,CAAC,IAAI;YACT,MAAM,OAAO,GAAiB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC5D,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC;gBACjC,UAAU,EAAE,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;gBACvD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,SAAgB;gBACtB,KAAK,EAAE,IAAI,CAAC,KAAY;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,EAAE,CAAC,IAAI;YACL,OAAO,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;QACtC,CAAC;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"union-variant.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union-variant.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAiB,MAAM,aAAa,CAAC;AAiElE,SAAS,CAAmB;IAC1B,YAAY,EAAE;QACZ,MAAM,CAAC,IAAI;YACT,MAAM,OAAO,GAAiB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC5D,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC;gBACjC,UAAU,EAAE,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;gBACvD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,SAAgB;gBACtB,KAAK,EAAE,IAAI,CAAC,KAAY;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,EAAE,CAAC,IAAI;YACL,OAAO,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;QACtC,CAAC;KACF;CACF,CAAC,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import type { Type, Union, UnionVariant } from "../../../core/types.js";
2
2
  import { DecoratorArgs } from "../utils.js";
3
- interface UnionDescriptor {
3
+ /**
4
+ * A descriptor for a union type.
5
+ * @experimental
6
+ */
7
+ export interface UnionDescriptor {
4
8
  /**
5
9
  * The name of the union. If name is provided, it is a union declaration.
6
10
  * Otherwise, it is a union expression.
@@ -21,6 +25,11 @@ interface UnionDescriptor {
21
25
  * @experimental
22
26
  */
23
27
  export interface UnionKit {
28
+ /**
29
+ * Creates a union type with filtered variants.
30
+ * @param filterFn Function to filter the union variants
31
+ */
32
+ filter(union: Union, filterFn: (variant: UnionVariant) => boolean): Union;
24
33
  /**
25
34
  * Create a union type.
26
35
  *
@@ -48,6 +57,11 @@ export interface UnionKit {
48
57
  * @param type The union to check.
49
58
  */
50
59
  isExtensible(type: Union): boolean;
60
+ /**
61
+ * Checks if an union is an expression (anonymous) or declared.
62
+ * @param type Uniton to check if it is an expression
63
+ */
64
+ isExpression(type: Union): boolean;
51
65
  }
52
66
  interface TypekitExtension {
53
67
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGxE,OAAO,EAAwB,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE,UAAU,eAAe;IACvB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;CACtE;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,KAAK,CAAC;IAErC;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC;IAE9B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;IAElC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;CACpC;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C;AAED,eAAO,MAAM,QAAQ,MA8EnB,CAAC"}
1
+ {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGxE,OAAO,EAAwB,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;CACtE;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,GAAG,KAAK,CAAC;IAC1E;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,KAAK,CAAC;IAErC;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC;IAE9B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;IAElC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;IAEnC;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;CACpC;AAED,UAAU,gBAAgB;IACxB;;;OAGG;IACH,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C;AAED,eAAO,MAAM,QAAQ,MAsFnB,CAAC"}
@@ -4,6 +4,10 @@ import { defineKit } from "../define-kit.js";
4
4
  import { decoratorApplication } from "../utils.js";
5
5
  export const UnionKit = defineKit({
6
6
  union: {
7
+ filter(union, filterFn) {
8
+ const variants = Array.from(union.variants.values()).filter(filterFn);
9
+ return this.union.create({ variants });
10
+ },
7
11
  create(desc) {
8
12
  const union = this.program.checker.createType({
9
13
  kind: "Union",
@@ -64,6 +68,9 @@ export const UnionKit = defineKit({
64
68
  }
65
69
  return false;
66
70
  },
71
+ isExpression(type) {
72
+ return type.name === undefined || type.name === "";
73
+ },
67
74
  },
68
75
  });
69
76
  //# sourceMappingURL=union.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/union.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ import type { ArrayValue, BooleanValue, EnumValue, NullValue, NumericValue, ObjectValue, ScalarValue, StringValue, Value } from "../../../core/types.js";
2
+ /** @experimental */
3
+ export interface ValueKit {
4
+ /**
5
+ * Create a Value type from a JavaScript value.
6
+ *
7
+ * @param value The JavaScript value to turn into a TypeSpec Value type.
8
+ */
9
+ create(value: string | number | boolean): Value;
10
+ /**
11
+ * Create a string Value type from a JavaScript string value.
12
+ *
13
+ * @param value The string value.
14
+ */
15
+ createString(value: string): StringValue;
16
+ /**
17
+ * Create a numeric Value type from a JavaScript number value.
18
+ *
19
+ * @param value The numeric value.
20
+ */
21
+ createNumeric(value: number): NumericValue;
22
+ /**
23
+ * Create a boolean Value type from a JavaScript boolean value.
24
+ *
25
+ * @param value The boolean value.
26
+ */
27
+ createBoolean(value: boolean): BooleanValue;
28
+ /**
29
+ * Check if `type` is a string Value type.
30
+ *
31
+ * @param type The type to check.
32
+ */
33
+ isString(type: Value): type is StringValue;
34
+ /**
35
+ * Check if `type` is a numeric Value type.
36
+ *
37
+ * @param type The type to check.
38
+ */
39
+ isNumeric(type: Value): type is NumericValue;
40
+ /**
41
+ * Check if `type` is a scalar value type
42
+ * @param type The type to check.
43
+ */
44
+ isScalar(type: Value): type is ScalarValue;
45
+ /**
46
+ * Check if `type` is an object value type
47
+ * @param type The type to check.
48
+ */
49
+ isObject(type: Value): type is ObjectValue;
50
+ /**
51
+ * Check if `type` is an array value type
52
+ * @param type The type to check.
53
+ */
54
+ isArray(type: Value): type is ArrayValue;
55
+ /**
56
+ * Check if `type` is an enum value type
57
+ * @param type The type to check.
58
+ */
59
+ isEnum(type: Value): type is EnumValue;
60
+ /**
61
+ * Check if `type` is a null value Type.
62
+ * @param type The type to check.
63
+ */
64
+ isNull(type: Value): type is NullValue;
65
+ /**
66
+ * Check if `type` is a boolean Value type.
67
+ *
68
+ * @param type The type to check.
69
+ */
70
+ isBoolean(type: Value): type is BooleanValue;
71
+ is(type: {
72
+ valueKind: string;
73
+ }): type is Value;
74
+ }
75
+ interface TypekitExtension {
76
+ /** @experimental */
77
+ value: ValueKit;
78
+ }
79
+ declare module "../define-kit.js" {
80
+ interface Typekit extends TypekitExtension {
81
+ }
82
+ }
83
+ export {};
84
+ //# sourceMappingURL=value.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/value.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,KAAK,EACN,MAAM,wBAAwB,CAAC;AAGhC,oBAAoB;AACpB,MAAM,WAAW,QAAQ;IACvB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IAEhD;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAEzC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAC;IAE3C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAAC;IAE5C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,WAAW,CAAC;IAE3C;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,YAAY,CAAC;IAE7C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,WAAW,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,WAAW,CAAC;IAE3C;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,UAAU,CAAC;IAEzC;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,SAAS,CAAC;IAEvC;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,SAAS,CAAC;IAEvC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,YAAY,CAAC;IAE7C,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,IAAI,KAAK,CAAC;CAChD;AAED,UAAU,gBAAgB;IACxB,oBAAoB;IACpB,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
@@ -0,0 +1,81 @@
1
+ import { Numeric } from "../../../core/numeric.js";
2
+ import { defineKit } from "../define-kit.js";
3
+ defineKit({
4
+ value: {
5
+ is(value) {
6
+ const type = value;
7
+ return (this.value.isString(type) ||
8
+ this.value.isNumeric(type) ||
9
+ this.value.isBoolean(type) ||
10
+ this.value.isArray(type) ||
11
+ this.value.isObject(type) ||
12
+ this.value.isEnum(type) ||
13
+ this.value.isNull(type) ||
14
+ this.value.isScalar(type));
15
+ },
16
+ create(value) {
17
+ if (typeof value === "string") {
18
+ return this.value.createString(value);
19
+ }
20
+ else if (typeof value === "number") {
21
+ return this.value.createNumeric(value);
22
+ }
23
+ else {
24
+ return this.value.createBoolean(value);
25
+ }
26
+ },
27
+ createString(value) {
28
+ return {
29
+ entityKind: "Value",
30
+ value: value,
31
+ valueKind: "StringValue",
32
+ type: this.literal.createString(value),
33
+ scalar: undefined,
34
+ };
35
+ },
36
+ createNumeric(value) {
37
+ const valueAsString = String(value);
38
+ return {
39
+ entityKind: "Value",
40
+ value: Numeric(valueAsString),
41
+ valueKind: "NumericValue",
42
+ type: this.literal.createNumeric(value),
43
+ scalar: undefined,
44
+ };
45
+ },
46
+ createBoolean(value) {
47
+ return {
48
+ entityKind: "Value",
49
+ value: value,
50
+ valueKind: "BooleanValue",
51
+ type: this.literal.createBoolean(value),
52
+ scalar: undefined,
53
+ };
54
+ },
55
+ isBoolean(type) {
56
+ return type.valueKind === "BooleanValue";
57
+ },
58
+ isString(type) {
59
+ return type.valueKind === "StringValue";
60
+ },
61
+ isNumeric(type) {
62
+ return type.valueKind === "NumericValue";
63
+ },
64
+ isArray(type) {
65
+ return type.valueKind === "ArrayValue";
66
+ },
67
+ isObject(type) {
68
+ return type.valueKind === "ObjectValue";
69
+ },
70
+ isEnum(type) {
71
+ return type.valueKind === "EnumValue";
72
+ },
73
+ isNull(type) {
74
+ return type.valueKind === "NullValue";
75
+ },
76
+ isScalar(type) {
77
+ return type.valueKind === "ScalarValue";
78
+ },
79
+ },
80
+ });
81
+ //# sourceMappingURL=value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/kits/value.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Enum, Interface, Model, Scalar, Union } from "../../../core/types.js";
2
+ /**
3
+ * Get a plausible name for the given type.
4
+ * @experimental
5
+ */
6
+ export declare function getPlausibleName(type: Model | Union | Enum | Scalar | Interface): string;
7
+ //# sourceMappingURL=get-plausible-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-plausible-name.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/utils/get-plausible-name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/E;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,UAa/E"}
@@ -0,0 +1,17 @@
1
+ import { isTemplateInstance } from "../../../core/type-utils.js";
2
+ /**
3
+ * Get a plausible name for the given type.
4
+ * @experimental
5
+ */
6
+ export function getPlausibleName(type) {
7
+ let name = type.name;
8
+ if (!name) {
9
+ name = "TypeExpression"; // TODO: Implement automatic name generation based on the type context
10
+ }
11
+ if (isTemplateInstance(type)) {
12
+ const namePrefix = type.templateMapper.args.map((a) => ("name" in a && a.name) || "").join("_");
13
+ name = `${namePrefix}${name}`;
14
+ }
15
+ return name;
16
+ }
17
+ //# sourceMappingURL=get-plausible-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-plausible-name.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/utils/get-plausible-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGjE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAA+C;IAC9E,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAErB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,gBAAgB,CAAC,CAAC,sEAAsE;IACjG,CAAC;IAED,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChG,IAAI,GAAG,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./get-plausible-name.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/experimental/typekit/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./get-plausible-name.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/experimental/typekit/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../../../src/formatter/print/printer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAIxC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,EAG7B,kBAAkB,EAClB,OAAO,EACP,kBAAkB,EAClB,iCAAiC,EACjC,uBAAuB,EACvB,uBAAuB,EAEvB,cAAc,EAEd,iBAAiB,EACjB,gCAAgC,EAGhC,sBAAsB,EACtB,0BAA0B,EAE1B,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EAEjB,kBAAkB,EAClB,IAAI,EAGJ,iBAAiB,EACjB,yBAAyB,EACzB,+BAA+B,EAC/B,iCAAiC,EACjC,+BAA+B,EAC/B,sBAAsB,EACtB,kCAAkC,EAClC,6BAA6B,EAC7B,4BAA4B,EAE5B,gCAAgC,EAGhC,8BAA8B,EAC9B,wCAAwC,EACxC,+BAA+B,EAC/B,8BAA8B,EAC9B,6BAA6B,EAC7B,2BAA2B,EAI3B,kCAAkC,EAElC,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EAKpB,4BAA4B,EAG5B,oBAAoB,EAGpB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAEhB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AA4BxF,eAAO,MAAM,eAAe,EAAE,OAAO,CAAC,IAAI,CAMzC,CAAC;AAEF,wBAAgB,aAAa,CAE3B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EACnB,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAcL;AAOD,wBAAgB,SAAS,CAEvB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EACnB,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAkRL;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CASL;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAK1B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAM1B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AAuBD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAcpD;AAED,wBAAgB,YAAY,CAC1B,WAAW,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,EACpC,OAAO,EAAE,uBAAuB,GAC/B,GAAG,CAYL;AAqDD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAC5B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,EACzB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,GACpC;IAAE,UAAU,EAAE,GAAG,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAazC;AAsBD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACtC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,6BAA6B,CAAC,EAC5C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AAsBD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,uBAQ/F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,uBAS9F;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACtC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AA4DD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,uBAY1B;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,EAChC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAK1B;AAgBD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,EAC7B,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAS1B;AAUD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAM1B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,yBAS1B;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC/B,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAO1B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,EACrC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAgB1B;AAgBD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,EACrC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,yBAiC1B;AA6BD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC,EACzC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,kBAwB1B;AAMD,wBAAgB,UAAU,CACxB,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAEL;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,OAAO,CAAC,mBAAmB,GAAG,6BAA6B,CAAC,EAClE,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAYL;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAIL;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,OAAO,CAAC,mBAAmB,GAAG,6BAA6B,CAAC,EAClE,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAe1B;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,EAChC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,0BAgB1B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,OAAO,CAAC,yBAAyB,CAAC,EACxC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAK1B;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,OAAO,CAAC,+BAA+B,CAAC,EAC9C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAG1B;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC/B,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAa1B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACjC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAoB1B;AAsID,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,CAAC,iBAAiB,GAAG,2BAA2B,CAAC,EAC9D,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAe1B;AAmFD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,CAAC,+BAA+B,CAAC,EAC9C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAiB1B;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,OAAO,CAAC,iCAAiC,CAAC,EAChD,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAG1B;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,OAAO,CAAC,+BAA+B,CAAC,EAC9C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAG1B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,EACrC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAgB1B;AAED,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,IAAI,EACnD,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAChB,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,MAAM,CAAC,kBA0BlB;AAYD,wBAAgB,UAAU,CACxB,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAClC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,mCAoB1B;AASD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,EAChC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAIL;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACnC,QAAQ,EAAE,uBAAuB,EACjC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CASL;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACpC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAGL;AACD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACnC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAGL;AAoFD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,CAAC,iCAAiC,GAAG,gCAAgC,CAAC,EACnF,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,GACxB,GAAG,CAOL;AAkKD,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,OAAO,CAAC,6BAA6B,CAAC,EAC5C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,2DAY1B;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,OAAO,CAAC,8BAA8B,CAAC,EAC7C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,OAAO,CACT,+BAA+B,GAC/B,kCAAkC,GAClC,gCAAgC,GAChC,kCAAkC,CACrC,EACD,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAI1B;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,OAAO,CAAC,6BAA6B,CAAC,EAC5C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAG1B;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,OAAO,CAAC,4BAA4B,CAAC,EAC3C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAW1B;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,OAAO,CAAC,8BAA8B,CAAC,EAC7C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAS1B;AAED,wBAAgB,yCAAyC,CACvD,IAAI,EAAE,OAAO,CAAC,wCAAwC,CAAC,EACvD,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,gBAG1B;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACnC,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,kBAG1B;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,OAAO,CAAC,4BAA4B,CAAC,EAC3C,OAAO,EAAE,uBAAuB,EAChC,KAAK,EAAE,kBAAkB,gEAmC1B"}
1
+ {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../../../src/formatter/print/printer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { builders } from "prettier/doc";
2
2
  import { compilerAssert } from "../../core/diagnostics.js";
3
- import { printIdentifier as printIdentifierString } from "../../core/helpers/syntax-utils.js";
3
+ import { printIdentifier as printIdentifierString, splitLines, } from "../../core/helpers/syntax-utils.js";
4
4
  import { SyntaxKind, } from "../../core/types.js";
5
5
  import { commentHandler } from "./comment-handler.js";
6
6
  import { needsParens } from "./needs-parens.js";
@@ -1192,34 +1192,6 @@ export function printStringTemplateExpression(path, options, print) {
1192
1192
  return content;
1193
1193
  }
1194
1194
  }
1195
- function splitLines(text) {
1196
- const lines = [];
1197
- let start = 0;
1198
- let pos = 0;
1199
- while (pos < text.length) {
1200
- const ch = text.charCodeAt(pos);
1201
- switch (ch) {
1202
- case 13 /* CharCode.CarriageReturn */:
1203
- if (text.charCodeAt(pos + 1) === 10 /* CharCode.LineFeed */) {
1204
- lines.push(text.slice(start, pos));
1205
- start = pos;
1206
- pos++;
1207
- }
1208
- else {
1209
- lines.push(text.slice(start, pos));
1210
- start = pos;
1211
- }
1212
- break;
1213
- case 10 /* CharCode.LineFeed */:
1214
- lines.push(text.slice(start, pos));
1215
- start = pos;
1216
- break;
1217
- }
1218
- pos++;
1219
- }
1220
- lines.push(text.slice(start));
1221
- return lines;
1222
- }
1223
1195
  function trimMultilineString(lines, whitespaceIndent) {
1224
1196
  const newLines = [];
1225
1197
  for (let i = 0; i < lines.length; i++) {