@kubb/plugin-zod 5.7.0-canary.20261024T190548 → 5.7.0

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/index.cjs CHANGED
@@ -732,7 +732,7 @@ function mapSchemaItems(node, transform) {
732
732
  }
733
733
  //#endregion
734
734
  //#region src/components/Zod.tsx
735
- function Zod({ name, node, printer, inferTypeName, typeGuards, isName, assertName, mini, cyclic, compile }) {
735
+ function Zod({ name, node, printer, inferTypeName, inferKind = "infer", typeGuards, isName, assertName, mini, cyclic, compile }) {
736
736
  const output = printer.print(node);
737
737
  const printerImports = printer.drainImports();
738
738
  if (!output) return;
@@ -774,7 +774,7 @@ function Zod({ name, node, printer, inferTypeName, typeGuards, isName, assertNam
774
774
  children: /* @__PURE__ */ (0, kubb_jsx_jsx_runtime.jsx)(kubb_jsx.Type, {
775
775
  export: true,
776
776
  name: inferTypeName,
777
- children: `z.infer<typeof ${name}>`
777
+ children: `z.${inferKind}<typeof ${name}>`
778
778
  })
779
779
  }),
780
780
  shouldGenerateIs && /* @__PURE__ */ (0, kubb_jsx_jsx_runtime.jsx)(kubb_jsx.File.Source, {
@@ -1684,6 +1684,14 @@ const printerZodMini = kubb_kit.ast.createPrinter((options) => {
1684
1684
  });
1685
1685
  //#endregion
1686
1686
  //#region src/generators/zodGenerator.tsx
1687
+ /**
1688
+ * The helper an inferred alias is printed with. `'direction'` reads a request (encode) schema from its
1689
+ * input and a response (decode) schema from its output; `true` keeps `z.infer` for both.
1690
+ */
1691
+ function aliasKind(inferred, direction) {
1692
+ if (inferred !== "direction") return "infer";
1693
+ return direction === "encode" ? "input" : "output";
1694
+ }
1687
1695
  const zodPrinterCache = /* @__PURE__ */ new WeakMap();
1688
1696
  const zodMiniPrinterCache = /* @__PURE__ */ new WeakMap();
1689
1697
  /**
@@ -1799,7 +1807,6 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
1799
1807
  group: group ?? void 0
1800
1808
  })
1801
1809
  };
1802
- const inferTypeName = inferred ? resolver.schema.typeName(node.name) : null;
1803
1810
  const isName = typeGuards ? resolver.schema.isName(node.name) : null;
1804
1811
  const assertName = typeGuards ? resolver.schema.assertName(node.name) : null;
1805
1812
  const stdPrinters = mini ? null : getStdPrinters(resolver, {
@@ -1858,7 +1865,8 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
1858
1865
  name: meta.name,
1859
1866
  node,
1860
1867
  printer: schemaPrinter,
1861
- inferTypeName,
1868
+ inferTypeName: inferred ? resolver.schema.typeName(node.name) : null,
1869
+ inferKind: aliasKind(inferred, "decode"),
1862
1870
  typeGuards,
1863
1871
  isName,
1864
1872
  assertName,
@@ -1871,6 +1879,7 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
1871
1879
  node,
1872
1880
  printer: stdPrinters.encode,
1873
1881
  inferTypeName: inferred ? resolver.schema.inputTypeName(node.name) : null,
1882
+ inferKind: aliasKind(inferred, "encode"),
1874
1883
  typeGuards,
1875
1884
  isName: typeGuards ? resolver.schema.isName(resolver.schema.inputName(node.name)) : null,
1876
1885
  assertName: typeGuards ? resolver.schema.assertName(resolver.schema.inputName(node.name)) : null,
@@ -1909,7 +1918,6 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
1909
1918
  };
1910
1919
  function renderSchemaEntry({ schema, name, keysToOmit, direction = "decode" }) {
1911
1920
  if (!schema) return null;
1912
- const inferTypeName = inferred ? resolver.schema.type(name) : null;
1913
1921
  const directionalRefNames = direction === "encode" && !mini ? new Set(collectDirectionalRefNames({
1914
1922
  node: schema,
1915
1923
  printerOptions
@@ -1969,7 +1977,8 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
1969
1977
  name,
1970
1978
  node: schema,
1971
1979
  printer: schemaPrinter,
1972
- inferTypeName,
1980
+ inferTypeName: inferred ? resolver.schema.type(name) : null,
1981
+ inferKind: aliasKind(inferred, direction),
1973
1982
  cyclic: false,
1974
1983
  compile
1975
1984
  })] });
@@ -2062,7 +2071,7 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
2062
2071
  }), "encode");
2063
2072
  })();
2064
2073
  const { path, query, header } = getOperationParameters(node);
2065
- const paramGroupSchemas = inferred ? [
2074
+ const paramGroupSchemas = [
2066
2075
  {
2067
2076
  kind: "path",
2068
2077
  params: path
@@ -2087,7 +2096,7 @@ const zodGenerator = (0, kubb_kit.defineGenerator)({
2087
2096
  }),
2088
2097
  name: resolver.param[kind](node, params[0]),
2089
2098
  direction: "encode"
2090
- })) : [];
2099
+ }));
2091
2100
  const optionsSchema = inferred ? renderSchemaEntry({
2092
2101
  schema: buildOptionsSchema(node, resolver),
2093
2102
  name: resolver.name(`${node.operationId} Options`),
@@ -2143,7 +2152,7 @@ var compatibility = {
2143
2152
  };
2144
2153
  //#endregion
2145
2154
  //#region package.json
2146
- var version = "5.7.0-canary.20261024T190548";
2155
+ var version = "5.7.0";
2147
2156
  //#endregion
2148
2157
  //#region src/resolvers/resolverZod.ts
2149
2158
  /**