While attempting to generate zod schemas from a fairly large set of JSON Schemas we've noted multiple places where a block-scoped variable representing one of the schemas is used before its been declared, meaning the source file generated is unusable
I instrumented the above code and determined that it outputs in the same order as the input as the comparison mapKey[depIndex] === depName is never true.
While attempting to generate zod schemas from a fairly large set of JSON Schemas we've noted multiple places where a block-scoped variable representing one of the schemas is used before its been declared, meaning the source file generated is unusable
The same happens in the Typescript generator, but it doesn't matter there as the interfaces aren't variables
Presumably, this occurs due to a logical error in this code: https://github.com/glideapps/quicktype/blob/9b570a73a896306778940c793c0037a38815304a/packages/quicktype-core/src/language/TypeScriptZod.ts#L201-L228
I assume the issue also affects the TypeScript effect schema language as it uses the same code.
@ryoid @Southclaws @dvdsgl