@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/cli.js CHANGED
@@ -4278,9 +4278,10 @@ function shouldEmitPrimitiveAliasDefinition(typeNode, checker) {
4278
4278
  const resolved = checker.getTypeFromTypeNode(aliasDecl.type);
4279
4279
  return !!(resolved.flags & (ts3.TypeFlags.String | ts3.TypeFlags.Number | ts3.TypeFlags.BigInt | ts3.TypeFlags.BigIntLiteral | ts3.TypeFlags.Boolean | ts3.TypeFlags.Null));
4280
4280
  }
4281
- function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiting, metadataPolicy = createAnalyzerMetadataPolicy(void 0), extensionRegistry, diagnostics) {
4281
+ function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiting, metadataPolicy = createAnalyzerMetadataPolicy(void 0), extensionRegistry, diagnostics, visitedAliases = /* @__PURE__ */ new Set()) {
4282
4282
  const nestedAliasDecl = type.aliasSymbol?.declarations?.find(ts3.isTypeAliasDeclaration);
4283
- if (nestedAliasDecl !== void 0) {
4283
+ if (nestedAliasDecl !== void 0 && !visitedAliases.has(nestedAliasDecl)) {
4284
+ visitedAliases.add(nestedAliasDecl);
4284
4285
  return resolveAliasedPrimitiveTarget(
4285
4286
  checker.getTypeFromTypeNode(nestedAliasDecl.type),
4286
4287
  checker,
@@ -4289,9 +4290,25 @@ function resolveAliasedPrimitiveTarget(type, checker, file, typeRegistry, visiti
4289
4290
  visiting,
4290
4291
  metadataPolicy,
4291
4292
  extensionRegistry,
4292
- diagnostics
4293
+ diagnostics,
4294
+ visitedAliases
4293
4295
  );
4294
4296
  }
4297
+ if (type.flags & ts3.TypeFlags.String) {
4298
+ return { kind: "primitive", primitiveKind: "string" };
4299
+ }
4300
+ if (type.flags & ts3.TypeFlags.Number) {
4301
+ return { kind: "primitive", primitiveKind: "number" };
4302
+ }
4303
+ if (type.flags & (ts3.TypeFlags.BigInt | ts3.TypeFlags.BigIntLiteral)) {
4304
+ return { kind: "primitive", primitiveKind: "bigint" };
4305
+ }
4306
+ if (type.flags & ts3.TypeFlags.Boolean) {
4307
+ return { kind: "primitive", primitiveKind: "boolean" };
4308
+ }
4309
+ if (type.flags & ts3.TypeFlags.Null) {
4310
+ return { kind: "primitive", primitiveKind: "null" };
4311
+ }
4295
4312
  return resolveTypeNode(
4296
4313
  type,
4297
4314
  checker,