{"version":3,"sources":["../src/utils/getComments.ts","../src/utils/getParams.ts"],"names":["URLPath","transformers","isParameterObject","isValidVarName","camelCase"],"mappings":";;;;;;;;;;;;;AAKO,SAAS,YAAY,SAAgC,EAAA;AAC1D,EAAO,OAAA;AAAA,IACL,UAAU,cAAe,EAAA,IAAK,CAAgB,aAAA,EAAA,SAAA,CAAU,gBAAgB,CAAA,CAAA;AAAA,IACxE,UAAU,UAAW,EAAA,IAAK,CAAY,SAAA,EAAA,SAAA,CAAU,YAAY,CAAA,CAAA;AAAA,IAC5D,SAAA,CAAU,QAAQ,CAAU,OAAA,EAAA,IAAIA,cAAQ,SAAU,CAAA,IAAI,EAAE,GAAG,CAAA,CAAA,CAAA;AAAA,IAC3D,SAAA,CAAU,cAAkB,IAAA;AAAA,GAC9B,CACG,MAAO,CAAA,OAAO,CACd,CAAA,GAAA,CAAI,CAAC,IAAS,KAAAC,6BAAA,CAAa,IAAK,CAAA,IAAI,CAAC,CAAA;AAC1C;ACFO,SAAS,aACd,eACA,EAAA;AAAA,EACE,KAAQ,GAAA,KAAA;AAAA,EACR;AACF,CAAA,GAGI,EACiB,EAAA;AACrB,EAAI,IAAA,CAAC,mBAAmB,CAAC,eAAA,CAAgB,OAAO,UAAc,IAAA,CAAC,gBAAgB,IAAM,EAAA;AACnF,IAAA,OAAO,EAAC;AAAA;AAGV,EAAO,OAAA,MAAA,CAAO,OAAQ,CAAA,eAAA,CAAgB,MAAO,CAAA,UAAU,CAAE,CAAA,GAAA,CAAI,CAAC,CAAC,IAAM,EAAA,MAAM,CAAuC,KAAA;AAChH,IAAM,MAAA,OAAA,GAAUC,sBAAkB,MAAM,CAAA;AACxC,IAAA,MAAM,IAA0B,GAAA;AAAA,MAC9B,IAAA;AAAA,MACA,OAAA,EAAS,CAAC,CAAC,IAAA;AAAA,MACX,QAAA,EAAU,OAAU,GAAA,MAAA,CAAO,QAAW,GAAA,IAAA;AAAA,MACtC,MAAM,KAAQ,GAAA,CAAA,EAAG,gBAAgB,IAAI,CAAA,EAAA,EAAK,IAAI,CAAO,EAAA,CAAA,GAAA;AAAA,KACvD;AAEA,IAAO,OAAA,QAAA,GAAW,QAAS,CAAA,IAAI,CAAI,GAAA,IAAA;AAAA,GACpC,CAAA;AACH;AAEO,SAAS,aACd,CAAA,eAAA,EACA,OAII,GAAA,EACJ,EAAA;AACA,EAAA,OAAO,aAAa,eAAiB,EAAA,OAAO,EAAE,MAAO,CAAA,CAAC,KAAK,IAAS,KAAA;AAClE,IAAI,IAAA,IAAA,CAAK,IAAQ,IAAA,IAAA,CAAK,OAAS,EAAA;AAC7B,MAAI,IAAA,IAAA,GAAOC,4BAAe,IAAK,CAAA,IAAI,IAAI,IAAK,CAAA,IAAA,GAAOC,sBAAU,CAAA,IAAA,CAAK,IAAI,CAAA;AAEtE,MAAI,IAAA,OAAA,CAAQ,WAAW,WAAa,EAAA;AAClC,QAAA,IAAA,GAAOA,uBAAU,IAAI,CAAA;AAAA;AAGvB,MAAA,GAAA,CAAI,IAAI,CAAI,GAAA;AAAA,QACV,SAAS,IAAK,CAAA,OAAA;AAAA,QACd,MAAM,IAAK,CAAA,IAAA;AAAA,QACX,QAAA,EAAU,CAAC,IAAK,CAAA;AAAA,OAClB;AAAA;AAGF,IAAO,OAAA,GAAA;AAAA,GACT,EAAG,EAAY,CAAA;AACjB","file":"utils.cjs","sourcesContent":["import transformers from '@kubb/core/transformers'\nimport { URLPath } from '@kubb/core/utils'\n\nimport type { Operation } from '@kubb/oas'\n\nexport function getComments(operation: Operation): string[] {\n  return [\n    operation.getDescription() && `@description ${operation.getDescription()}`,\n    operation.getSummary() && `@summary ${operation.getSummary()}`,\n    operation.path && `{@link ${new URLPath(operation.path).URL}}`,\n    operation.isDeprecated() && '@deprecated',\n  ]\n    .filter(Boolean)\n    .map((text) => transformers.trim(text))\n}\n","import { isParameterObject } from '@kubb/oas'\n\nimport { camelCase, isValidVarName } from '@kubb/core/transformers'\nimport type { FunctionParamsAST } from '@kubb/core/utils'\nimport type { OasTypes } from '@kubb/oas'\nimport type { Params } from '@kubb/react/types'\nimport type { OperationSchema } from '../types.ts'\n/**\n *\n * @deprecated\n * TODO move to operationManager hook\n */\nexport function getASTParams(\n  operationSchema: OperationSchema | undefined,\n  {\n    typed = false,\n    override,\n  }: {\n    typed?: boolean\n    override?: (data: FunctionParamsAST) => FunctionParamsAST\n  } = {},\n): FunctionParamsAST[] {\n  if (!operationSchema || !operationSchema.schema.properties || !operationSchema.name) {\n    return []\n  }\n\n  return Object.entries(operationSchema.schema.properties).map(([name, schema]: [string, OasTypes.SchemaObject]) => {\n    const isParam = isParameterObject(schema)\n    const data: FunctionParamsAST = {\n      name,\n      enabled: !!name,\n      required: isParam ? schema.required : true,\n      type: typed ? `${operationSchema.name}[\"${name}\"]` : undefined,\n    }\n\n    return override ? override(data) : data\n  })\n}\n\nexport function getPathParams(\n  operationSchema: OperationSchema | undefined,\n  options: {\n    typed?: boolean\n    casing?: 'camelcase'\n    override?: (data: FunctionParamsAST) => FunctionParamsAST\n  } = {},\n) {\n  return getASTParams(operationSchema, options).reduce((acc, curr) => {\n    if (curr.name && curr.enabled) {\n      let name = isValidVarName(curr.name) ? curr.name : camelCase(curr.name)\n\n      if (options.casing === 'camelcase') {\n        name = camelCase(name)\n      }\n\n      acc[name] = {\n        default: curr.default,\n        type: curr.type,\n        optional: !curr.required,\n      }\n    }\n\n    return acc\n  }, {} as Params)\n}\n"]}