{"version":3,"file":"nullable.cjs","names":["def: ZodNullableDef","refs: Refs","primitiveMappings","base","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,iBACdA,KACAC,MACqC;AACrC,KACE;EAAC;EAAa;EAAa;EAAa;EAAc;CAAU,EAAC,SAC/D,IAAI,UAAU,KAAK,SACpB,KACA,CAAC,IAAI,UAAU,KAAK,UAAU,CAAC,IAAI,UAAU,KAAK,OAAO,SAC1D;AACA,MAAI,KAAK,WAAW,WAClB,QAAO;GACL,MAAMC,gCACJ,IAAI,UAAU,KAAK;GAErB,UAAU;EACX;AAGH,SAAO,EACL,MAAM,CACJA,gCACE,IAAI,UAAU,KAAK,WAErB,MACD,EACF;CACF;AAED,KAAI,KAAK,WAAW,YAAY;EAC9B,MAAMC,SAAOC,0BAAS,IAAI,UAAU,MAAM;GACxC,GAAG;GACH,aAAa,CAAC,GAAG,KAAK,WAAY;EACnC,EAAC;AAEF,MAAID,UAAQ,UAAUA,OAAM,QAAO;GAAE,OAAO,CAACA,MAAK;GAAE,UAAU;EAAM;AAEpE,SAAOA,UAAS;GAAE,GAAGA;GAAM,UAAU;EAAM;CAC5C;CAED,MAAM,OAAOC,0BAAS,IAAI,UAAU,MAAM;EACxC,GAAG;EACH,aAAa;GAAC,GAAG,KAAK;GAAa;GAAS;EAAI;CACjD,EAAC;AAEF,QAAO,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,OAAQ,CAAC,EAAE;AACnD"}