@formspec/build 0.1.0-alpha.34 → 0.1.0-alpha.35

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.
package/dist/index.js CHANGED
@@ -4173,9 +4173,10 @@ function shouldEmitPrimitiveAliasDefinition(typeNode, checker) {
4173
4173
  const resolved = checker.getTypeFromTypeNode(aliasDecl.type);
4174
4174
  return !!(resolved.flags & (ts3.TypeFlags.String | ts3.TypeFlags.Number | ts3.TypeFlags.BigInt | ts3.TypeFlags.BigIntLiteral | ts3.TypeFlags.Boolean | ts3.TypeFlags.Null));
4175
4175
  }
4176
- function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiting, metadataPolicy = createAnalyzerMetadataPolicy(void 0), extensionRegistry, diagnostics) {
4176
+ function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiting, metadataPolicy = createAnalyzerMetadataPolicy(void 0), extensionRegistry, diagnostics, visitedAliases = /* @__PURE__ */ new Set()) {
4177
4177
  const nestedAliasDecl = type.aliasSymbol?.declarations?.find(ts3.isTypeAliasDeclaration);
4178
- if (nestedAliasDecl !== void 0) {
4178
+ if (nestedAliasDecl !== void 0 && !visitedAliases.has(nestedAliasDecl)) {
4179
+ visitedAliases.add(nestedAliasDecl);
4179
4180
  return resolveAliasedPrimitiveTarget(
4180
4181
  checker.getTypeFromTypeNode(nestedAliasDecl.type),
4181
4182
  checker,
@@ -4184,9 +4185,25 @@ function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiti
4184
4185
  visiting,
4185
4186
  metadataPolicy,
4186
4187
  extensionRegistry,
4187
- diagnostics
4188
+ diagnostics,
4189
+ visitedAliases
4188
4190
  );
4189
4191
  }
4192
+ if (type.flags & ts3.TypeFlags.String) {
4193
+ return { kind: "primitive", primitiveKind: "string" };
4194
+ }
4195
+ if (type.flags & ts3.TypeFlags.Number) {
4196
+ return { kind: "primitive", primitiveKind: "number" };
4197
+ }
4198
+ if (type.flags & (ts3.TypeFlags.BigInt | ts3.TypeFlags.BigIntLiteral)) {
4199
+ return { kind: "primitive", primitiveKind: "bigint" };
4200
+ }
4201
+ if (type.flags & ts3.TypeFlags.Boolean) {
4202
+ return { kind: "primitive", primitiveKind: "boolean" };
4203
+ }
4204
+ if (type.flags & ts3.TypeFlags.Null) {
4205
+ return { kind: "primitive", primitiveKind: "null" };
4206
+ }
4190
4207
  return resolveTypeNode(
4191
4208
  type,
4192
4209
  checker,