{"version":3,"file":"nullable.cjs","names":["primitiveMappings","parseDef"],"sources":["../../../../src/utils/zod-to-json-schema/parsers/nullable.ts"],"sourcesContent":["import { ZodNullableDef } from \"zod/v3\";\nimport { parseDef } from \"../parseDef.js\";\nimport { JsonSchema7Type } from \"../parseTypes.js\";\nimport { Refs } from \"../Refs.js\";\nimport { JsonSchema7NullType } from \"./null.js\";\nimport { primitiveMappings } from \"./union.js\";\n\nexport type JsonSchema7NullableType =\n  | {\n      anyOf: [JsonSchema7Type, JsonSchema7NullType];\n    }\n  | {\n      type: [string, \"null\"];\n    };\n\nexport function parseNullableDef(\n  def: ZodNullableDef,\n  refs: Refs\n): JsonSchema7NullableType | undefined {\n  if (\n    [\"ZodString\", \"ZodNumber\", \"ZodBigInt\", \"ZodBoolean\", \"ZodNull\"].includes(\n      def.innerType._def.typeName\n    ) &&\n    (!def.innerType._def.checks || !def.innerType._def.checks.length)\n  ) {\n    if (refs.target === \"openApi3\") {\n      return {\n        type: primitiveMappings[\n          def.innerType._def.typeName as keyof typeof primitiveMappings\n        ],\n        nullable: true,\n      } as any;\n    }\n\n    return {\n      type: [\n        primitiveMappings[\n          def.innerType._def.typeName as keyof typeof primitiveMappings\n        ],\n        \"null\",\n      ],\n    };\n  }\n\n  if (refs.target === \"openApi3\") {\n    const base = parseDef(def.innerType._def, {\n      ...refs,\n      currentPath: [...refs.currentPath],\n    });\n\n    if (base && \"$ref\" in base) return { allOf: [base], nullable: true } as any;\n\n    return base && ({ ...base, nullable: true } as any);\n  }\n\n  const base = parseDef(def.innerType._def, {\n    ...refs,\n    currentPath: [...refs.currentPath, \"anyOf\", \"0\"],\n  });\n\n  return base && { anyOf: [base, { type: \"null\" }] };\n}\n"],"mappings":";;;AAeA,SAAgB,iBACd,KACA,MACqC;CACrC,IACE;EAAC;EAAa;EAAa;EAAa;EAAc;CAAS,CAAC,CAAC,SAC/D,IAAI,UAAU,KAAK,QACrB,MACC,CAAC,IAAI,UAAU,KAAK,UAAU,CAAC,IAAI,UAAU,KAAK,OAAO,SAC1D;EACA,IAAI,KAAK,WAAW,YAClB,OAAO;GACL,MAAMA,cAAAA,kBACJ,IAAI,UAAU,KAAK;GAErB,UAAU;EACZ;EAGF,OAAO,EACL,MAAM,CACJA,cAAAA,kBACE,IAAI,UAAU,KAAK,WAErB,MACF,EACF;CACF;CAEA,IAAI,KAAK,WAAW,YAAY;EAC9B,MAAM,OAAOC,iBAAAA,SAAS,IAAI,UAAU,MAAM;GACxC,GAAG;GACH,aAAa,CAAC,GAAG,KAAK,WAAW;EACnC,CAAC;EAED,IAAI,QAAQ,UAAU,MAAM,OAAO;GAAE,OAAO,CAAC,IAAI;GAAG,UAAU;EAAK;EAEnE,OAAO,QAAS;GAAE,GAAG;GAAM,UAAU;EAAK;CAC5C;CAEA,MAAM,OAAOA,iBAAAA,SAAS,IAAI,UAAU,MAAM;EACxC,GAAG;EACH,aAAa;GAAC,GAAG,KAAK;GAAa;GAAS;EAAG;CACjD,CAAC;CAED,OAAO,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,EAAE;AACnD"}