effect 4.0.0-beta.22 → 4.0.0-beta.23

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.
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaAST.d.ts","sourceRoot":"","sources":["../src/SchemaAST.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaAST.d.ts","sourceRoot":"","sources":["../src/SchemaAST.ts"],"names":[],"mappings":"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"}
package/dist/SchemaAST.js CHANGED
@@ -2058,6 +2058,10 @@ export function replaceContext(ast, context) {
2058
2058
  });
2059
2059
  }
2060
2060
  /** @internal */
2061
+ export function getLastEncoding(ast) {
2062
+ return ast.encoding ? getLastEncoding(ast.encoding[ast.encoding.length - 1].to) : ast;
2063
+ }
2064
+ /** @internal */
2061
2065
  export function annotate(ast, annotations) {
2062
2066
  if (ast.checks) {
2063
2067
  const last = ast.checks[ast.checks.length - 1];
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaAST.js","names":["Arr","Cause","Effect","format","formatPropertyKey","memoize","effectIsExit","internalRecord","InternalAnnotations","Option","Pipeable","Predicate","RegEx","Result","Getter","Issue","Transformation","makeGuard","tag","ast","_tag","isAST","u","hasProperty","TypeId","isDeclaration","isNull","isUndefined","isVoid","isNever","isUnknown","isAny","isString","isNumber","isBoolean","isBigInt","isSymbol","isLiteral","isUniqueSymbol","isObjectKeyword","isEnum","isTemplateLiteral","isArrays","isObjects","isUnion","isSuspend","Link","to","transformation","constructor","defaultParseOptions","Context","isOptional","isMutable","defaultValue","annotations","undefined","Base","checks","encoding","context","toString","Declaration","typeParameters","run","getParser","oinput","options","isNone","succeedNone","mapEager","value","some","recur","tps","mapOrSame","getExpected","expected","Null","fromConst","null_","null","Undefined","encodeToNull","replaceEncoding","undefinedToNull","transform","undefined_","Void","void_","void","Never","fromRefinement","never","Any","any","Unknown","unknown","ObjectKeyword","objectKeyword","Enum","enums","values","Set","map","v","input","has","toCodecStringTree","_","coercions","Object","fromEntries","globalThis","String","Union","keys","k","Literal","s","JSON","stringify","join","isTemplateLiteralPart","types","every","TemplateLiteral","parts","encodedParts","part","encoded","toEncoded","push","Error","parser","asTemplateLiteralParser","mapBothEager","onSuccess","onFailure","issue","Composite","tuple","Arrays","templateLiteralPartFromString","regExp","getTemplateLiteralRegExp","decodeTo","string","transformOrFail","match","exec","succeed","slice","length","fail","InvalidValue","message","source","UniqueSymbol","symbol","symbolToString","literal","Number","isFinite","toCodecJson","literalToString","literalAsString","hasCheck","numberToJson","finiteToString","numberToString","c","meta","number","Boolean","boolean","Symbol","BigInt","bigIntToString","bigInt","elements","rest","i","findIndex","e","elementLen","fnUntracedEager","Array","isArray","InvalidType","output","issues","errorsAllOption","errors","none","eff","exit","issueElement","findError","cause","isFailure","Pointer","success","MissingKey","len","head","tail","keyAnnotations","issueRest","j","index","tailj","UnexpectedKey","FINITE_PATTERN","isNumberStringRegExp","RegExp","getIndexSignatureKeys","parameter","filter","test","getOwnPropertySymbols","flatMap","t","PropertySignature","name","type","KeyValueCombiner","decode","encode","flip","IndexSignature","merge","containsUndefined","Objects","propertySignatures","indexSignatures","duplicates","ps","arr","indexOf","expectedKeys","expectedKeysSet","properties","propertyCount","add","indexCount","isNotNullish","out","onExcessPropertyError","onExcessProperty","onExcessPropertyPreserve","inputKeys","Reflect","ownKeys","key","set","p","hasOwn","issueProp","is","parserKey","indexSignatureParameterFromString","effKey","exitKey","issueKey","parserValue","effValue","exitValue","issueValue","k2","v2","combine","propertyOrder","concat","preserved","rebuild","flipMerge","props","indexes","mergeChecks","b","struct","fields","getAST","self","union","members","mode","structWithRest","records","r","tupleWithRest","getCandidateTypes","from","collectSentinels","thunk","candidateIndexCache","WeakMap","getIndex","idx","get","a","sentinels","byType","bySentinel","Map","m","otherwise","filterLiterals","getCandidates","runtimeType","base","oneOf","candidates","tracking","successes","candidate","issueResult","OneOf","AnyOf","literals","formatIsMutable","formatIsOptional","nonFiniteLiterals","n","memoizeThunk","f","done","Suspend","Filter","Class","aborted","annotate","abort","and","other","FilterGroup","makeFilter","make","makeFilterByGuard","isPattern","toArbitraryConstraint","patterns","modifyOwnPropertyDescriptors","d","getOwnPropertyDescriptors","create","getPrototypeOf","replaceContext","last","replaceChecks","append","appendChecks","updateLastLink","links","applyToLastLink","middlewareDecoding","middleware","appendTransformation","toType","middlewareEncoding","link","brand","existing","resolveBrands","brands","as","changed","fa","annotateKey","optionalKeyLastLink","optionalKey","mutableKeyLastLink","mutableKey","withConstructorDefault","o","isNotUndefined","oe","isEffect","passthrough","parseParameter","isPropertyKey","parameters","parsed","record","keyValueCombiner","flipEncoding","ls","unshift","getTemplateLiteralSource","top","handleTemplateLiteralASTPartParens","getTemplateLiteralASTPartPattern","escape","STRING_PATTERN","BIGINT_PATTERN","succeedSome","refinement","enumsToLiterals","title","toCodec","isStringFiniteRegExp","isStringFinite","finiteString","numberFromString","isStringBigIntRegExp","isStringBigInt","bigIntString","REGEXP_PATTERN","isStringSymbolRegExp","symbolString","isStringSymbol","description","for","sym","keyFor","Forbidden","collectIssues","check","runChecks","isArrayNonEmpty","ClassTypeId","STRUCTURAL_ANNOTATION_KEY","resolve","resolveAt","resolveIdentifier","resolveTitle","resolveDescription"],"sources":["../src/SchemaAST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SchemaAST.js","names":["Arr","Cause","Effect","format","formatPropertyKey","memoize","effectIsExit","internalRecord","InternalAnnotations","Option","Pipeable","Predicate","RegEx","Result","Getter","Issue","Transformation","makeGuard","tag","ast","_tag","isAST","u","hasProperty","TypeId","isDeclaration","isNull","isUndefined","isVoid","isNever","isUnknown","isAny","isString","isNumber","isBoolean","isBigInt","isSymbol","isLiteral","isUniqueSymbol","isObjectKeyword","isEnum","isTemplateLiteral","isArrays","isObjects","isUnion","isSuspend","Link","to","transformation","constructor","defaultParseOptions","Context","isOptional","isMutable","defaultValue","annotations","undefined","Base","checks","encoding","context","toString","Declaration","typeParameters","run","getParser","oinput","options","isNone","succeedNone","mapEager","value","some","recur","tps","mapOrSame","getExpected","expected","Null","fromConst","null_","null","Undefined","encodeToNull","replaceEncoding","undefinedToNull","transform","undefined_","Void","void_","void","Never","fromRefinement","never","Any","any","Unknown","unknown","ObjectKeyword","objectKeyword","Enum","enums","values","Set","map","v","input","has","toCodecStringTree","_","coercions","Object","fromEntries","globalThis","String","Union","keys","k","Literal","s","JSON","stringify","join","isTemplateLiteralPart","types","every","TemplateLiteral","parts","encodedParts","part","encoded","toEncoded","push","Error","parser","asTemplateLiteralParser","mapBothEager","onSuccess","onFailure","issue","Composite","tuple","Arrays","templateLiteralPartFromString","regExp","getTemplateLiteralRegExp","decodeTo","string","transformOrFail","match","exec","succeed","slice","length","fail","InvalidValue","message","source","UniqueSymbol","symbol","symbolToString","literal","Number","isFinite","toCodecJson","literalToString","literalAsString","hasCheck","numberToJson","finiteToString","numberToString","c","meta","number","Boolean","boolean","Symbol","BigInt","bigIntToString","bigInt","elements","rest","i","findIndex","e","elementLen","fnUntracedEager","Array","isArray","InvalidType","output","issues","errorsAllOption","errors","none","eff","exit","issueElement","findError","cause","isFailure","Pointer","success","MissingKey","len","head","tail","keyAnnotations","issueRest","j","index","tailj","UnexpectedKey","FINITE_PATTERN","isNumberStringRegExp","RegExp","getIndexSignatureKeys","parameter","filter","test","getOwnPropertySymbols","flatMap","t","PropertySignature","name","type","KeyValueCombiner","decode","encode","flip","IndexSignature","merge","containsUndefined","Objects","propertySignatures","indexSignatures","duplicates","ps","arr","indexOf","expectedKeys","expectedKeysSet","properties","propertyCount","add","indexCount","isNotNullish","out","onExcessPropertyError","onExcessProperty","onExcessPropertyPreserve","inputKeys","Reflect","ownKeys","key","set","p","hasOwn","issueProp","is","parserKey","indexSignatureParameterFromString","effKey","exitKey","issueKey","parserValue","effValue","exitValue","issueValue","k2","v2","combine","propertyOrder","concat","preserved","rebuild","flipMerge","props","indexes","mergeChecks","b","struct","fields","getAST","self","union","members","mode","structWithRest","records","r","tupleWithRest","getCandidateTypes","from","collectSentinels","thunk","candidateIndexCache","WeakMap","getIndex","idx","get","a","sentinels","byType","bySentinel","Map","m","otherwise","filterLiterals","getCandidates","runtimeType","base","oneOf","candidates","tracking","successes","candidate","issueResult","OneOf","AnyOf","literals","formatIsMutable","formatIsOptional","nonFiniteLiterals","n","memoizeThunk","f","done","Suspend","Filter","Class","aborted","annotate","abort","and","other","FilterGroup","makeFilter","make","makeFilterByGuard","isPattern","toArbitraryConstraint","patterns","modifyOwnPropertyDescriptors","d","getOwnPropertyDescriptors","create","getPrototypeOf","replaceContext","getLastEncoding","last","replaceChecks","append","appendChecks","updateLastLink","links","applyToLastLink","middlewareDecoding","middleware","appendTransformation","toType","middlewareEncoding","link","brand","existing","resolveBrands","brands","as","changed","fa","annotateKey","optionalKeyLastLink","optionalKey","mutableKeyLastLink","mutableKey","withConstructorDefault","o","isNotUndefined","oe","isEffect","passthrough","parseParameter","isPropertyKey","parameters","parsed","record","keyValueCombiner","flipEncoding","ls","unshift","getTemplateLiteralSource","top","handleTemplateLiteralASTPartParens","getTemplateLiteralASTPartPattern","escape","STRING_PATTERN","BIGINT_PATTERN","succeedSome","refinement","enumsToLiterals","title","toCodec","isStringFiniteRegExp","isStringFinite","finiteString","numberFromString","isStringBigIntRegExp","isStringBigInt","bigIntString","REGEXP_PATTERN","isStringSymbolRegExp","symbolString","isStringSymbol","description","for","sym","keyFor","Forbidden","collectIssues","check","runChecks","isArrayNonEmpty","ClassTypeId","STRUCTURAL_ANNOTATION_KEY","resolve","resolveAt","resolveIdentifier","resolveTitle","resolveDescription"],"sources":["../src/SchemaAST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -24,96 +24,12 @@ export function fromASTs(asts) {
24
24
  const references = {};
25
25
  const referenceMap = new Map();
26
26
  const uniqueReferences = new Set();
27
- const usedReferences = new Set();
27
+ const visiting = new Set();
28
28
  const schemas = Arr.map(asts, ast => recur(ast));
29
29
  return {
30
- representations: Arr.map(schemas, compact),
31
- references: Rec.map(Rec.filter(references, (_, k) => !isCompactable(k)), compact)
30
+ representations: schemas,
31
+ references
32
32
  };
33
- function isCompactable($ref) {
34
- return !usedReferences.has($ref);
35
- }
36
- function compact(s) {
37
- switch (s._tag) {
38
- default:
39
- return s;
40
- case "Declaration":
41
- return {
42
- ...s,
43
- typeParameters: s.typeParameters.map(compact),
44
- encodedSchema: compact(s.encodedSchema)
45
- };
46
- case "Reference":
47
- {
48
- if (isCompactable(s.$ref)) {
49
- return compact(references[s.$ref]);
50
- }
51
- return s;
52
- }
53
- case "Suspend":
54
- return {
55
- ...s,
56
- thunk: compact(s.thunk)
57
- };
58
- case "String":
59
- return {
60
- ...s,
61
- ...(s.contentSchema ? {
62
- contentSchema: compact(s.contentSchema)
63
- } : undefined)
64
- };
65
- case "TemplateLiteral":
66
- return {
67
- ...s,
68
- parts: s.parts.map(compact)
69
- };
70
- case "Arrays":
71
- return {
72
- ...s,
73
- elements: s.elements.map(e => ({
74
- ...e,
75
- type: compact(e.type)
76
- })),
77
- rest: s.rest.map(compact)
78
- };
79
- case "Objects":
80
- return {
81
- ...s,
82
- checks: s.checks.map(compactCheck),
83
- propertySignatures: s.propertySignatures.map(ps => ({
84
- ...ps,
85
- type: compact(ps.type)
86
- })),
87
- indexSignatures: s.indexSignatures.map(is => ({
88
- ...is,
89
- parameter: compact(is.parameter),
90
- type: compact(is.type)
91
- }))
92
- };
93
- case "Union":
94
- return {
95
- ...s,
96
- types: s.types.map(compact)
97
- };
98
- }
99
- }
100
- function compactCheck(check) {
101
- switch (check._tag) {
102
- case "Filter":
103
- return {
104
- ...check,
105
- meta: check.meta._tag === "isPropertyNames" ? {
106
- _tag: "isPropertyNames",
107
- propertyNames: compact(check.meta.propertyNames)
108
- } : check.meta
109
- };
110
- case "FilterGroup":
111
- return {
112
- ...check,
113
- checks: Arr.map(check.checks, compactCheck)
114
- };
115
- }
116
- }
117
33
  function gen(prefix = "_") {
118
34
  let candidate = prefix;
119
35
  let suffix = 0;
@@ -126,29 +42,50 @@ export function fromASTs(asts) {
126
42
  function recur(ast, prefix) {
127
43
  const found = referenceMap.get(ast);
128
44
  if (found !== undefined) {
129
- usedReferences.add(found);
130
45
  return {
131
46
  _tag: "Reference",
132
47
  $ref: found
133
48
  };
134
49
  }
135
- const last = getLastEncoding(ast);
136
- if (ast === last) {
137
- const reference = ast._tag === "Declaration" ? gen(ast._tag) : gen(InternalAnnotations.resolveIdentifier(ast) ?? prefix ?? `${ast._tag}_`);
138
- const encodedSchemaPrefix = ast._tag === "Declaration" ? InternalAnnotations.resolveIdentifier(ast) ?? prefix : prefix;
50
+ const last = AST.getLastEncoding(ast);
51
+ const identifier = InternalAnnotations.resolveIdentifier(ast) ?? prefix;
52
+ if (ast !== last) {
53
+ return recur(last, identifier);
54
+ }
55
+ // Has identifier → always create reference
56
+ if (identifier !== undefined) {
57
+ const reference = gen(identifier);
139
58
  referenceMap.set(ast, reference);
140
- const out = on(ast, encodedSchemaPrefix);
59
+ const out = on(ast);
141
60
  references[reference] = out;
142
61
  return {
143
62
  _tag: "Reference",
144
63
  $ref: reference
145
64
  };
146
- } else {
147
- return recur(last, InternalAnnotations.resolveIdentifier(ast) ?? prefix);
148
65
  }
149
- }
150
- function getLastEncoding(ast) {
151
- return ast.encoding ? ast.encoding[ast.encoding.length - 1].to : ast;
66
+ // Recursion detected → create reference
67
+ if (visiting.has(ast)) {
68
+ const reference = gen(`${ast._tag}_`);
69
+ referenceMap.set(ast, reference);
70
+ return {
71
+ _tag: "Reference",
72
+ $ref: reference
73
+ };
74
+ }
75
+ // Normal case → inline
76
+ visiting.add(ast);
77
+ const out = on(ast);
78
+ visiting.delete(ast);
79
+ // A descendant triggered reference creation (recursion)
80
+ const ref = referenceMap.get(ast);
81
+ if (ref !== undefined) {
82
+ references[ref] = out;
83
+ return {
84
+ _tag: "Reference",
85
+ $ref: ref
86
+ };
87
+ }
88
+ return out;
152
89
  }
153
90
  function getEncodedSchema(last) {
154
91
  const getLink = last.annotations?.toCodecJson ?? last.annotations?.toCodec;
@@ -159,13 +96,13 @@ export function fromASTs(asts) {
159
96
  }
160
97
  return AST.null;
161
98
  }
162
- function on(last, encodedSchemaPrefix) {
99
+ function on(last) {
163
100
  const annotations = fromASTAnnotations(last.annotations);
164
101
  switch (last._tag) {
165
102
  case "Declaration":
166
103
  {
167
104
  // this must be executed before transforming the type parameters
168
- const encodedSchema = recur(getEncodedSchema(last), encodedSchemaPrefix);
105
+ const encodedSchema = recur(getEncodedSchema(last));
169
106
  return {
170
107
  _tag: "Declaration",
171
108
  typeParameters: last.typeParameters.map(ast => recur(ast)),
@@ -239,7 +176,7 @@ export function fromASTs(asts) {
239
176
  return {
240
177
  _tag: last._tag,
241
178
  elements: last.elements.map(e => {
242
- const last = getLastEncoding(e);
179
+ const last = AST.getLastEncoding(e);
243
180
  return {
244
181
  isOptional: AST.isOptional(last),
245
182
  type: recur(e),
@@ -254,7 +191,7 @@ export function fromASTs(asts) {
254
191
  return {
255
192
  _tag: last._tag,
256
193
  propertySignatures: last.propertySignatures.map(ps => {
257
- const last = getLastEncoding(ps.type);
194
+ const last = AST.getLastEncoding(ps.type);
258
195
  return {
259
196
  name: ps.name,
260
197
  type: recur(ps.type),
@@ -1 +1 @@
1
- {"version":3,"file":"representation.js","names":["Arr","format","escapeToken","Predicate","Rec","RegEx","AST","InternalAnnotations","InternalSchema","InternalToCodec","fromAST","ast","references","representations","schemas","fromASTs","representation","asts","referenceMap","Map","uniqueReferences","Set","usedReferences","map","recur","compact","filter","_","k","isCompactable","$ref","has","s","_tag","typeParameters","encodedSchema","thunk","contentSchema","undefined","parts","elements","e","type","rest","checks","compactCheck","propertySignatures","ps","indexSignatures","is","parameter","types","check","meta","propertyNames","gen","prefix","candidate","suffix","add","found","get","last","getLastEncoding","reference","resolveIdentifier","encodedSchemaPrefix","set","out","on","encoding","length","to","getEncodedSchema","getLink","annotations","toCodecJson","toCodec","isFunction","tps","tp","make","toEncoded","link","replaceEncoding","null","fromASTAnnotations","fromASTChecks","contentMediaType","isAST","literal","symbol","enums","isOptional","context","name","isMutable","jsonReorder","mode","getCheck","c","isArrayNonEmpty","fromASTBlacklist","ClassTypeId","filtered","isEmptyRecord","toJsonSchemaDocument","document","options","definitions","dialect","source","toJsonSchemaMultiDocument","schema","multiDocument","generateDescriptions","additionalProperties","d","js","a","collectJsonSchemaAnnotations","collectJsonSchemaChecks","appendJsonSchema","not","hasCheck","enum","String","title","value","pattern","getPartPattern","join","globalThis","Error","minItems","prefixItems","v","maxItems","items","Object","keys","anyOf","properties","required","push","patternProperties","patterns","getParameterPatterns","isObject","oneOf","description","expected","default","Array","isArray","examples","readOnly","writeOnly","contentEncoding","collectJsonSchemaCheck","filterToJsonSchema","allOf","minLength","maxLength","minimum","maximum","regExp","multipleOf","divisor","exclusiveMinimum","exclusiveMaximum","uniqueItems","minProperties","maxProperties","getPatterns","flatMap","tag","some","b","len","members","part","escape","STRING_PATTERN","FINITE_PATTERN","cause"],"sources":["../../../src/internal/schema/representation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"representation.js","names":["Arr","format","escapeToken","Predicate","Rec","RegEx","AST","InternalAnnotations","InternalSchema","InternalToCodec","fromAST","ast","references","representations","schemas","fromASTs","representation","asts","referenceMap","Map","uniqueReferences","Set","visiting","map","recur","gen","prefix","candidate","suffix","has","add","found","get","undefined","_tag","$ref","last","getLastEncoding","identifier","resolveIdentifier","reference","set","out","on","delete","ref","getEncodedSchema","getLink","annotations","toCodecJson","toCodec","isFunction","tps","typeParameters","tp","make","toEncoded","link","replaceEncoding","null","fromASTAnnotations","encodedSchema","checks","fromASTChecks","contentMediaType","contentSchema","isAST","literal","symbol","enums","parts","elements","e","isOptional","type","context","rest","propertySignatures","ps","name","isMutable","indexSignatures","is","parameter","types","jsonReorder","mode","thunk","getCheck","filter","c","meta","propertyNames","isArrayNonEmpty","fromASTBlacklist","ClassTypeId","filtered","_","k","isEmptyRecord","toJsonSchemaDocument","document","options","definitions","dialect","source","toJsonSchemaMultiDocument","schema","multiDocument","generateDescriptions","additionalProperties","d","s","js","a","collectJsonSchemaAnnotations","collectJsonSchemaChecks","check","appendJsonSchema","not","hasCheck","enum","String","title","value","pattern","getPartPattern","join","length","globalThis","Error","minItems","prefixItems","v","maxItems","items","Object","keys","anyOf","properties","required","push","patternProperties","patterns","getParameterPatterns","isObject","oneOf","description","expected","default","Array","isArray","examples","readOnly","writeOnly","contentEncoding","collectJsonSchemaCheck","filterToJsonSchema","allOf","minLength","maxLength","minimum","maximum","regExp","multipleOf","divisor","exclusiveMinimum","exclusiveMaximum","uniqueItems","minProperties","maxProperties","getPatterns","flatMap","tag","some","b","len","members","part","escape","STRING_PATTERN","FINITE_PATTERN","cause"],"sources":["../../../src/internal/schema/representation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -295,7 +295,7 @@ export function fromApi(api, options) {
295
295
  }
296
296
  function processParameters(schema, i) {
297
297
  if (schema) {
298
- const ast = AST.toEncoded(schema.ast);
298
+ const ast = AST.getLastEncoding(schema.ast);
299
299
  if (AST.isObjects(ast)) {
300
300
  for (const ps of ast.propertySignatures) {
301
301
  op.parameters.push({
@@ -1 +1 @@
1
- {"version":3,"file":"OpenApi.js","names":["Arr","constFalse","JsonPatch","escapeToken","JsonSchema","Option","Schema","AST","SchemaRepresentation","ServiceMap","HttpMethod","HttpApi","HttpApiEndpoint","HttpApiMiddleware","HttpApiSchema","Identifier","Service","Title","Version","Description","License","ExternalDocs","Servers","Format","Summary","Deprecated","Override","Exclude","Reference","defaultValue","Transform","servicesPartial","tags","entries","Object","options","context","empty","key","tag","undefined","add","annotations","identifier","title","version","description","license","summary","deprecated","externalDocs","servers","format","override","exclude","transform","apiCache","WeakMap","processAnnotation","ctx","annotation","f","o","getOption","isSome","value","fromApi","api","cached","get","spec","openapi","info","paths","components","schemas","securitySchemes","security","pathOps","reflect","onGroup","group","name","getOrElse","assign","transformFn","push","onEndpoint","endpoint","mergedAnnotations","middleware","op","operationId","topLevel","parameters","responses","path","replace","method","toLowerCase","processRequestBodies","payloadMap","size","c","hasContent","forEach","encoding","contentType","filtered","filter","s","isNoContent","ast","length","asts","map","getAST","Union","_tag","toEncodingAST","schema","requestBody","content","required","processResponseBodies","bodies","defaultDescription","status","descriptions","Array","from","join","String","processParameters","i","toEncoded","isObjects","ps","propertySignatures","in","isOptional","type","isSecurity","processHttpApiSecurity","makeSecurityScheme","hasBody","payload","params","entry","values","next","headers","query","extractResponseBodies","getSuccessSchemas","getStatusSuccess","resolveDescriptionOrIdentifier","getErrorSchemas","getStatusError","AdditionalSchemas","componentSchemas","componentSchema","resolveIdentifier","globalThis","Error","escapePath","isArrayNonEmpty","multiDocument","fromASTs","jsonSchemaMultiDocument","toMultiDocumentOpenApi3_1","toJsonSchemaMultiDocument","additionalProperties","patchOps","oppath","definitions","definition","apply","keys","VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP","test","set","isVoid","getStatus","getDescription","Map","process","addNoContent","addContent","getResponseEncoding","statusMap","Set","contentTypeMap","resolveDescription","Uint8ArrayEncoding","annotate","persistedFileToBinaryEncoding","isDeclaration","typeConstructor","recur","meta","scheme","pipe","bearerFormat","getOrUndefined"],"sources":["../../../src/unstable/httpapi/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OpenApi.js","names":["Arr","constFalse","JsonPatch","escapeToken","JsonSchema","Option","Schema","AST","SchemaRepresentation","ServiceMap","HttpMethod","HttpApi","HttpApiEndpoint","HttpApiMiddleware","HttpApiSchema","Identifier","Service","Title","Version","Description","License","ExternalDocs","Servers","Format","Summary","Deprecated","Override","Exclude","Reference","defaultValue","Transform","servicesPartial","tags","entries","Object","options","context","empty","key","tag","undefined","add","annotations","identifier","title","version","description","license","summary","deprecated","externalDocs","servers","format","override","exclude","transform","apiCache","WeakMap","processAnnotation","ctx","annotation","f","o","getOption","isSome","value","fromApi","api","cached","get","spec","openapi","info","paths","components","schemas","securitySchemes","security","pathOps","reflect","onGroup","group","name","getOrElse","assign","transformFn","push","onEndpoint","endpoint","mergedAnnotations","middleware","op","operationId","topLevel","parameters","responses","path","replace","method","toLowerCase","processRequestBodies","payloadMap","size","c","hasContent","forEach","encoding","contentType","filtered","filter","s","isNoContent","ast","length","asts","map","getAST","Union","_tag","toEncodingAST","schema","requestBody","content","required","processResponseBodies","bodies","defaultDescription","status","descriptions","Array","from","join","String","processParameters","i","getLastEncoding","isObjects","ps","propertySignatures","in","isOptional","type","isSecurity","processHttpApiSecurity","makeSecurityScheme","hasBody","payload","params","entry","values","next","headers","query","extractResponseBodies","getSuccessSchemas","getStatusSuccess","resolveDescriptionOrIdentifier","getErrorSchemas","getStatusError","AdditionalSchemas","componentSchemas","componentSchema","resolveIdentifier","globalThis","Error","escapePath","isArrayNonEmpty","multiDocument","fromASTs","jsonSchemaMultiDocument","toMultiDocumentOpenApi3_1","toJsonSchemaMultiDocument","additionalProperties","patchOps","oppath","definitions","definition","apply","keys","VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP","test","set","isVoid","toEncoded","getStatus","getDescription","Map","process","addNoContent","addContent","getResponseEncoding","statusMap","Set","contentTypeMap","resolveDescription","Uint8ArrayEncoding","annotate","persistedFileToBinaryEncoding","isDeclaration","typeConstructor","recur","meta","scheme","pipe","bearerFormat","getOrUndefined"],"sources":["../../../src/unstable/httpapi/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "effect",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.22",
4
+ "version": "4.0.0-beta.23",
5
5
  "license": "MIT",
6
6
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
7
7
  "homepage": "https://effect.website",
package/src/SchemaAST.ts CHANGED
@@ -2640,6 +2640,11 @@ export function replaceContext<A extends AST>(ast: A, context: Context | undefin
2640
2640
  })
2641
2641
  }
2642
2642
 
2643
+ /** @internal */
2644
+ export function getLastEncoding(ast: AST): AST {
2645
+ return ast.encoding ? getLastEncoding(ast.encoding[ast.encoding.length - 1].to) : ast
2646
+ }
2647
+
2643
2648
  /** @internal */
2644
2649
  export function annotate<A extends AST>(ast: A, annotations: Schema.Annotations.Annotations): A {
2645
2650
  if (ast.checks) {
@@ -24,80 +24,13 @@ export function fromASTs(asts: readonly [AST.AST, ...Array<AST.AST>]): SchemaRep
24
24
 
25
25
  const referenceMap = new Map<AST.AST, string>()
26
26
  const uniqueReferences = new Set<string>()
27
- const usedReferences = new Set<string>()
27
+ const visiting = new Set<AST.AST>()
28
28
 
29
29
  const schemas = Arr.map(asts, (ast) => recur(ast))
30
30
 
31
31
  return {
32
- representations: Arr.map(schemas, compact),
33
- references: Rec.map(Rec.filter(references, (_, k) => !isCompactable(k)), compact)
34
- }
35
-
36
- function isCompactable($ref: string): boolean {
37
- return !usedReferences.has($ref)
38
- }
39
-
40
- function compact(s: SchemaRepresentation.Representation): SchemaRepresentation.Representation {
41
- switch (s._tag) {
42
- default:
43
- return s
44
- case "Declaration":
45
- return {
46
- ...s,
47
- typeParameters: s.typeParameters.map(compact),
48
- encodedSchema: compact(s.encodedSchema)
49
- }
50
- case "Reference": {
51
- if (isCompactable(s.$ref)) {
52
- return compact(references[s.$ref])
53
- }
54
- return s
55
- }
56
- case "Suspend":
57
- return { ...s, thunk: compact(s.thunk) }
58
- case "String":
59
- return {
60
- ...s,
61
- ...(s.contentSchema ? { contentSchema: compact(s.contentSchema) } : undefined)
62
- }
63
- case "TemplateLiteral":
64
- return { ...s, parts: s.parts.map(compact) }
65
- case "Arrays":
66
- return {
67
- ...s,
68
- elements: s.elements.map((e) => ({ ...e, type: compact(e.type) })),
69
- rest: s.rest.map(compact)
70
- }
71
- case "Objects":
72
- return {
73
- ...s,
74
- checks: s.checks.map(compactCheck),
75
- propertySignatures: s.propertySignatures.map((ps) => ({ ...ps, type: compact(ps.type) })),
76
- indexSignatures: s.indexSignatures.map((is) => ({
77
- ...is,
78
- parameter: compact(is.parameter),
79
- type: compact(is.type)
80
- }))
81
- }
82
- case "Union":
83
- return { ...s, types: s.types.map(compact) }
84
- }
85
- }
86
-
87
- function compactCheck<M extends SchemaRepresentation.Meta>(
88
- check: SchemaRepresentation.Check<M>
89
- ): SchemaRepresentation.Check<M> {
90
- switch (check._tag) {
91
- case "Filter":
92
- return {
93
- ...check,
94
- meta: check.meta._tag === "isPropertyNames"
95
- ? { _tag: "isPropertyNames", propertyNames: compact(check.meta.propertyNames) } as M
96
- : check.meta
97
- }
98
- case "FilterGroup":
99
- return { ...check, checks: Arr.map(check.checks, compactCheck) }
100
- }
32
+ representations: schemas,
33
+ references
101
34
  }
102
35
 
103
36
  function gen(prefix: string = "_"): string {
@@ -115,32 +48,45 @@ export function fromASTs(asts: readonly [AST.AST, ...Array<AST.AST>]): SchemaRep
115
48
  function recur(ast: AST.AST, prefix?: string): SchemaRepresentation.Representation {
116
49
  const found = referenceMap.get(ast)
117
50
  if (found !== undefined) {
118
- usedReferences.add(found)
119
51
  return { _tag: "Reference", $ref: found }
120
52
  }
121
53
 
122
- const last = getLastEncoding(ast)
123
-
124
- if (ast === last) {
125
- const reference = ast._tag === "Declaration"
126
- ? gen(ast._tag)
127
- : gen(InternalAnnotations.resolveIdentifier(ast) ?? prefix ?? `${ast._tag}_`)
54
+ const last = AST.getLastEncoding(ast)
55
+ const identifier = InternalAnnotations.resolveIdentifier(ast) ?? prefix
128
56
 
129
- const encodedSchemaPrefix = ast._tag === "Declaration"
130
- ? InternalAnnotations.resolveIdentifier(ast) ?? prefix
131
- : prefix
57
+ if (ast !== last) {
58
+ return recur(last, identifier)
59
+ }
132
60
 
61
+ // Has identifier → always create reference
62
+ if (identifier !== undefined) {
63
+ const reference = gen(identifier)
133
64
  referenceMap.set(ast, reference)
134
- const out = on(ast, encodedSchemaPrefix)
65
+ const out = on(ast)
135
66
  references[reference] = out
136
67
  return { _tag: "Reference", $ref: reference }
137
- } else {
138
- return recur(last, InternalAnnotations.resolveIdentifier(ast) ?? prefix)
139
68
  }
140
- }
141
69
 
142
- function getLastEncoding(ast: AST.AST): AST.AST {
143
- return ast.encoding ? ast.encoding[ast.encoding.length - 1].to : ast
70
+ // Recursion detected create reference
71
+ if (visiting.has(ast)) {
72
+ const reference = gen(`${ast._tag}_`)
73
+ referenceMap.set(ast, reference)
74
+ return { _tag: "Reference", $ref: reference }
75
+ }
76
+
77
+ // Normal case → inline
78
+ visiting.add(ast)
79
+ const out = on(ast)
80
+ visiting.delete(ast)
81
+
82
+ // A descendant triggered reference creation (recursion)
83
+ const ref = referenceMap.get(ast)
84
+ if (ref !== undefined) {
85
+ references[ref] = out
86
+ return { _tag: "Reference", $ref: ref }
87
+ }
88
+
89
+ return out
144
90
  }
145
91
 
146
92
  function getEncodedSchema(last: AST.Declaration): AST.AST {
@@ -153,12 +99,12 @@ export function fromASTs(asts: readonly [AST.AST, ...Array<AST.AST>]): SchemaRep
153
99
  return AST.null
154
100
  }
155
101
 
156
- function on(last: AST.AST, encodedSchemaPrefix?: string): SchemaRepresentation.Representation {
102
+ function on(last: AST.AST): SchemaRepresentation.Representation {
157
103
  const annotations = fromASTAnnotations(last.annotations)
158
104
  switch (last._tag) {
159
105
  case "Declaration": {
160
106
  // this must be executed before transforming the type parameters
161
- const encodedSchema = recur(getEncodedSchema(last), encodedSchemaPrefix)
107
+ const encodedSchema = recur(getEncodedSchema(last))
162
108
  return {
163
109
  _tag: "Declaration",
164
110
  typeParameters: last.typeParameters.map((ast) => recur(ast)),
@@ -228,7 +174,7 @@ export function fromASTs(asts: readonly [AST.AST, ...Array<AST.AST>]): SchemaRep
228
174
  return {
229
175
  _tag: last._tag,
230
176
  elements: last.elements.map((e) => {
231
- const last = getLastEncoding(e)
177
+ const last = AST.getLastEncoding(e)
232
178
  return {
233
179
  isOptional: AST.isOptional(last),
234
180
  type: recur(e),
@@ -243,7 +189,7 @@ export function fromASTs(asts: readonly [AST.AST, ...Array<AST.AST>]): SchemaRep
243
189
  return {
244
190
  _tag: last._tag,
245
191
  propertySignatures: last.propertySignatures.map((ps) => {
246
- const last = getLastEncoding(ps.type)
192
+ const last = AST.getLastEncoding(ps.type)
247
193
  return {
248
194
  name: ps.name,
249
195
  type: recur(ps.type),
@@ -363,7 +363,7 @@ export function fromApi<Id extends string, Groups extends HttpApiGroup.Any>(
363
363
 
364
364
  function processParameters(schema: Schema.Top | undefined, i: OpenAPISpecParameter["in"]) {
365
365
  if (schema) {
366
- const ast = AST.toEncoded(schema.ast)
366
+ const ast = AST.getLastEncoding(schema.ast)
367
367
  if (AST.isObjects(ast)) {
368
368
  for (const ps of ast.propertySignatures) {
369
369
  op.parameters.push({