@kubb/plugin-swr 4.15.1 → 4.15.2

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.
@@ -1,4 +1,4 @@
1
- const require_generators = require('./generators-CexgebyO.cjs');
1
+ const require_generators = require('./generators-DYGNV6IH.cjs');
2
2
  let _kubb_core_utils = require("@kubb/core/utils");
3
3
  let _kubb_oas = require("@kubb/oas");
4
4
  let _kubb_plugin_client_components = require("@kubb/plugin-client/components");
@@ -304,33 +304,36 @@ QueryKey.getTransformer = getTransformer;
304
304
  //#endregion
305
305
  //#region src/components/QueryOptions.tsx
306
306
  function getParams$1({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
307
- if (paramsType === "object") return _kubb_react_fabric.FunctionParams.factory({
308
- data: {
309
- mode: "object",
310
- children: {
311
- ...(0, _kubb_plugin_oas_utils.getPathParams)(typeSchemas.pathParams, {
312
- typed: true,
313
- casing: paramsCasing
314
- }),
315
- data: typeSchemas.request?.name ? {
316
- type: typeSchemas.request?.name,
317
- optional: (0, _kubb_oas.isOptional)(typeSchemas.request?.schema)
318
- } : void 0,
319
- params: typeSchemas.queryParams?.name ? {
320
- type: typeSchemas.queryParams?.name,
321
- optional: (0, _kubb_oas.isOptional)(typeSchemas.queryParams?.schema)
322
- } : void 0,
323
- headers: typeSchemas.headerParams?.name ? {
324
- type: typeSchemas.headerParams?.name,
325
- optional: (0, _kubb_oas.isOptional)(typeSchemas.headerParams?.schema)
326
- } : void 0
307
+ if (paramsType === "object") {
308
+ const pathParams = (0, _kubb_plugin_oas_utils.getPathParams)(typeSchemas.pathParams, {
309
+ typed: true,
310
+ casing: paramsCasing
311
+ });
312
+ return _kubb_react_fabric.FunctionParams.factory({
313
+ data: {
314
+ mode: "object",
315
+ children: {
316
+ ...pathParams,
317
+ data: typeSchemas.request?.name ? {
318
+ type: typeSchemas.request?.name,
319
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.request?.schema)
320
+ } : void 0,
321
+ params: typeSchemas.queryParams?.name ? {
322
+ type: typeSchemas.queryParams?.name,
323
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.queryParams?.schema)
324
+ } : void 0,
325
+ headers: typeSchemas.headerParams?.name ? {
326
+ type: typeSchemas.headerParams?.name,
327
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.headerParams?.schema)
328
+ } : void 0
329
+ }
330
+ },
331
+ config: {
332
+ type: typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }",
333
+ default: "{}"
327
334
  }
328
- },
329
- config: {
330
- type: typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }",
331
- default: "{}"
332
- }
333
- });
335
+ });
336
+ }
334
337
  return _kubb_react_fabric.FunctionParams.factory({
335
338
  pathParams: typeSchemas.pathParams?.name ? {
336
339
  mode: pathParamsType === "object" ? "object" : "inlineSpread",
@@ -338,7 +341,7 @@ function getParams$1({ paramsType, paramsCasing, pathParamsType, typeSchemas })
338
341
  typed: true,
339
342
  casing: paramsCasing
340
343
  }),
341
- optional: (0, _kubb_oas.isOptional)(typeSchemas.pathParams?.schema)
344
+ default: (0, _kubb_oas.isAllOptional)(typeSchemas.pathParams?.schema) ? "{}" : void 0
342
345
  } : void 0,
343
346
  data: typeSchemas.request?.name ? {
344
347
  type: typeSchemas.request?.name,
@@ -397,30 +400,34 @@ QueryOptions.getParams = getParams$1;
397
400
  function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, typeSchemas }) {
398
401
  const TData = dataReturnType === "data" ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`;
399
402
  const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(" | ") || "Error"}>`;
400
- if (paramsType === "object") return _kubb_react_fabric.FunctionParams.factory({
401
- data: {
402
- mode: "object",
403
- children: {
404
- ...(0, _kubb_plugin_oas_utils.getPathParams)(typeSchemas.pathParams, {
405
- typed: true,
406
- casing: paramsCasing
407
- }),
408
- data: typeSchemas.request?.name ? {
409
- type: typeSchemas.request?.name,
410
- optional: (0, _kubb_oas.isOptional)(typeSchemas.request?.schema)
411
- } : void 0,
412
- params: typeSchemas.queryParams?.name ? {
413
- type: typeSchemas.queryParams?.name,
414
- optional: (0, _kubb_oas.isOptional)(typeSchemas.queryParams?.schema)
415
- } : void 0,
416
- headers: typeSchemas.headerParams?.name ? {
417
- type: typeSchemas.headerParams?.name,
418
- optional: (0, _kubb_oas.isOptional)(typeSchemas.headerParams?.schema)
419
- } : void 0
420
- }
421
- },
422
- options: {
423
- type: `
403
+ if (paramsType === "object") {
404
+ const children = {
405
+ ...(0, _kubb_plugin_oas_utils.getPathParams)(typeSchemas.pathParams, {
406
+ typed: true,
407
+ casing: paramsCasing
408
+ }),
409
+ data: typeSchemas.request?.name ? {
410
+ type: typeSchemas.request?.name,
411
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.request?.schema)
412
+ } : void 0,
413
+ params: typeSchemas.queryParams?.name ? {
414
+ type: typeSchemas.queryParams?.name,
415
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.queryParams?.schema)
416
+ } : void 0,
417
+ headers: typeSchemas.headerParams?.name ? {
418
+ type: typeSchemas.headerParams?.name,
419
+ optional: (0, _kubb_oas.isOptional)(typeSchemas.headerParams?.schema)
420
+ } : void 0
421
+ };
422
+ const allChildrenAreOptional = Object.values(children).every((child) => !child || child.optional);
423
+ return _kubb_react_fabric.FunctionParams.factory({
424
+ data: {
425
+ mode: "object",
426
+ children,
427
+ default: allChildrenAreOptional ? "{}" : void 0
428
+ },
429
+ options: {
430
+ type: `
424
431
  {
425
432
  query?: Parameters<typeof useSWR<${[TData, TError].join(", ")}>>[2],
426
433
  client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }"},
@@ -428,9 +435,10 @@ function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, t
428
435
  immutable?: boolean
429
436
  }
430
437
  `,
431
- default: "{}"
432
- }
433
- });
438
+ default: "{}"
439
+ }
440
+ });
441
+ }
434
442
  return _kubb_react_fabric.FunctionParams.factory({
435
443
  pathParams: typeSchemas.pathParams?.name ? {
436
444
  mode: pathParamsType === "object" ? "object" : "inlineSpread",
@@ -438,7 +446,7 @@ function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, t
438
446
  typed: true,
439
447
  casing: paramsCasing
440
448
  }),
441
- optional: (0, _kubb_oas.isOptional)(typeSchemas.pathParams?.schema)
449
+ default: (0, _kubb_oas.isAllOptional)(typeSchemas.pathParams?.schema) ? "{}" : void 0
442
450
  } : void 0,
443
451
  data: typeSchemas.request?.name ? {
444
452
  type: typeSchemas.request?.name,
@@ -551,4 +559,4 @@ Object.defineProperty(exports, 'QueryOptions', {
551
559
  return QueryOptions;
552
560
  }
553
561
  });
554
- //# sourceMappingURL=components-DD7X6DkL.cjs.map
562
+ //# sourceMappingURL=components-BFtjMdmk.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-BFtjMdmk.cjs","names":["getParams","FunctionParams","getTransformer: Transformer","URLPath","getTransformer","File","Function","Type","getParams","FunctionParams","Client","params","generics","File","Type","Function","getParams","FunctionParams","getTransformer: Transformer","URLPath","File","Function","Type","getParams","FunctionParams","Client","File","Function","FunctionParams","File","Function"],"sources":["../src/components/MutationKey.tsx","../src/components/Mutation.tsx","../src/components/QueryKey.tsx","../src/components/QueryOptions.tsx","../src/components/Query.tsx"],"sourcesContent":["import { URLPath } from '@kubb/core/utils'\nimport type { Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({}: GetParamsProps) {\n return FunctionParams.factory({})\n}\n\nconst getTransformer: Transformer = ({ operation, casing }) => {\n const path = new URLPath(operation.path, { casing })\n\n return [`{ url: '${path.toURLPath()}' }`]\n}\n\nexport function MutationKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): KubbNode {\n const params = getParams({ pathParamsType, typeSchemas })\n const keys = transformer({ operation, schemas: typeSchemas, casing: paramsCasing })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nMutationKey.getParams = getParams\nMutationKey.getTransformer = getTransformer\n","import { isOptional, type Operation } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode, Params } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\nimport { MutationKey } from './MutationKey.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n typeName: string\n clientName: string\n mutationKeyName: string\n mutationKeyTypeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n /**\n * When true, mutation parameters are passed via trigger() instead of as hook arguments\n * @default false\n */\n paramsToTrigger?: boolean\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n mutationKeyTypeName: string\n}\n\n// Original getParams - used when paramsToTrigger is false (default)\nfunction getParams({ pathParamsType, paramsCasing, dataReturnType, typeSchemas, mutationKeyTypeName }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const TExtraArg = typeSchemas.request?.name || 'never'\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n },\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n mutation?: SWRMutationConfiguration<${TData}, ${TError}, ${mutationKeyTypeName} | null, ${TExtraArg}> & { throwOnError?: boolean },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n}\n`,\n default: '{}',\n },\n })\n}\n\ntype GetTriggerParamsProps = {\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n mutationKeyTypeName: string\n mutationArgTypeName: string\n}\n\n// New getParams - used when paramsToTrigger is true\nfunction getTriggerParams({ dataReturnType, typeSchemas, mutationKeyTypeName, mutationArgTypeName }: GetTriggerParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n return FunctionParams.factory({\n options: {\n type: `\n{\n mutation?: SWRMutationConfiguration<${TData}, ${TError}, ${mutationKeyTypeName} | null, ${mutationArgTypeName}> & { throwOnError?: boolean },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n}\n`,\n default: '{}',\n },\n })\n}\n\ntype GetMutationParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n typeSchemas: OperationSchemas\n}\n\nfunction getMutationParams({ paramsCasing, typeSchemas }: GetMutationParamsProps) {\n return FunctionParams.factory({\n ...getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n })\n}\n\nexport function Mutation({\n name,\n clientName,\n mutationKeyName,\n mutationKeyTypeName,\n paramsType,\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n operation,\n paramsToTrigger = false,\n}: Props): KubbNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const mutationKeyParams = MutationKey.getParams({\n pathParamsType,\n typeSchemas,\n })\n\n const clientParams = Client.getParams({\n paramsCasing,\n paramsType,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n\n // Use the new trigger-based approach when paramsToTrigger is true\n if (paramsToTrigger) {\n // Build the mutation params type (for arg destructuring)\n const mutationParams = getMutationParams({\n paramsCasing,\n typeSchemas,\n })\n\n // Get the arg type name\n const mutationArgTypeName = `${mutationKeyTypeName.replace('MutationKey', '')}MutationArg`\n\n // Check if there are any mutation params (path, data, params, headers)\n const hasMutationParams = Object.keys(mutationParams.params).length > 0\n\n // Build the arg type for useSWRMutation\n const argParams = FunctionParams.factory({\n data: {\n mode: 'object',\n children: Object.entries(mutationParams.params).reduce((acc, [key, value]) => {\n if (value) {\n acc[key] = {\n ...value,\n type: undefined,\n }\n }\n return acc\n }, {} as Params),\n },\n })\n\n const params = getTriggerParams({\n dataReturnType,\n typeSchemas,\n mutationKeyTypeName,\n mutationArgTypeName,\n })\n\n const generics = [TData, TError, `${mutationKeyTypeName} | null`, mutationArgTypeName].filter(Boolean)\n\n const mutationArg = mutationParams.toConstructor()\n\n return (\n <>\n <File.Source name={mutationArgTypeName} isExportable isIndexable isTypeOnly>\n <Type name={mutationArgTypeName} export>\n {hasMutationParams ? `{${mutationArg}}` : 'never'}\n </Type>\n </File.Source>\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { mutation: mutationOptions, client: config = {}, shouldFetch = true } = options ?? {}\n const mutationKey = ${mutationKeyName}(${mutationKeyParams.toCall()})\n\n return useSWRMutation<${generics.join(', ')}>(\n shouldFetch ? mutationKey : null,\n async (_url${hasMutationParams ? `, { arg: ${argParams.toCall()} }` : ''}) => {\n return ${clientName}(${clientParams.toCall()})\n },\n mutationOptions\n )\n `}\n </Function>\n </File.Source>\n </>\n )\n }\n\n // Original behavior (default)\n const generics = [\n TData,\n TError,\n `${mutationKeyTypeName} | null`,\n typeSchemas.request?.name, // TExtraArg - the arg type for useSWRMutation\n ].filter(Boolean)\n\n const params = getParams({\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n mutationKeyTypeName,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { mutation: mutationOptions, client: config = {}, shouldFetch = true } = options ?? {}\n const mutationKey = ${mutationKeyName}(${mutationKeyParams.toCall()})\n\n return useSWRMutation<${generics.join(', ')}>(\n shouldFetch ? mutationKey : null,\n async (_url${typeSchemas.request?.name ? ', { arg: data }' : ''}) => {\n return ${clientName}(${clientParams.toCall()})\n },\n mutationOptions\n )\n `}\n </Function>\n </File.Source>\n )\n}\n","import { URLPath } from '@kubb/core/utils'\nimport { isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ pathParamsType, paramsCasing, typeSchemas }: GetParamsProps) {\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n },\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n })\n}\n\nconst getTransformer: Transformer = ({ operation, schemas, casing }) => {\n const path = new URLPath(operation.path, { casing })\n const keys = [\n path.toObject({\n type: 'path',\n stringify: true,\n }),\n schemas.queryParams?.name ? '...(params ? [params] : [])' : undefined,\n schemas.request?.name ? '...(data ? [data] : [])' : undefined,\n ].filter(Boolean)\n\n return keys\n}\n\nexport function QueryKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): KubbNode {\n const params = getParams({ pathParamsType, paramsCasing, typeSchemas })\n const keys = transformer({\n operation,\n schemas: typeSchemas,\n casing: paramsCasing,\n })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nQueryKey.getParams = getParams\nQueryKey.getTransformer = getTransformer\n","import { isAllOptional, isOptional } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\n\ntype Props = {\n name: string\n clientName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n}\n\ntype GetParamsProps = {\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas }: GetParamsProps) {\n if (paramsType === 'object') {\n const pathParams = getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing })\n\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...pathParams,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: typeSchemas.pathParams?.name\n ? {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n default: isAllOptional(typeSchemas.pathParams?.schema) ? '{}' : undefined,\n }\n : undefined,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n}\n\nexport function QueryOptions({ name, clientName, typeSchemas, paramsCasing, paramsType, pathParamsType }: Props): KubbNode {\n const params = getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas })\n const clientParams = Client.getParams({\n paramsCasing,\n paramsType,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function name={name} export params={params.toConstructor()}>\n {`\n return {\n fetcher: async () => {\n return ${clientName}(${clientParams.toCall()})\n },\n }\n `}\n </Function>\n </File.Source>\n )\n}\n\nQueryOptions.getParams = getParams\n","import { isAllOptional, isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\nimport { QueryOptions } from './QueryOptions.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n queryOptionsName: string\n queryKeyName: string\n queryKeyTypeName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n operation: Operation\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, typeSchemas }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n if (paramsType === 'object') {\n const pathParams = getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing })\n\n const children = {\n ...pathParams,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n }\n\n // Check if all children are optional or undefined\n const allChildrenAreOptional = Object.values(children).every((child) => !child || child.optional)\n\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children,\n default: allChildrenAreOptional ? '{}' : undefined,\n },\n options: {\n type: `\n{\n query?: Parameters<typeof useSWR<${[TData, TError].join(', ')}>>[2],\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n immutable?: boolean\n}\n`,\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: typeSchemas.pathParams?.name\n ? {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n default: isAllOptional(typeSchemas.pathParams?.schema) ? '{}' : undefined,\n }\n : undefined,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n query?: Parameters<typeof useSWR<${[TData, TError].join(', ')}>>[2],\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n immutable?: boolean\n}\n`,\n default: '{}',\n },\n })\n}\n\nexport function Query({\n name,\n typeSchemas,\n queryKeyName,\n queryKeyTypeName,\n queryOptionsName,\n operation,\n dataReturnType,\n paramsType,\n paramsCasing,\n pathParamsType,\n}: Props): KubbNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const generics = [TData, TError, `${queryKeyTypeName} | null`]\n\n const queryKeyParams = QueryKey.getParams({\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const params = getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n })\n\n const queryOptionsParams = QueryOptions.getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n typeSchemas,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { query: queryOptions, client: config = {}, shouldFetch = true, immutable } = options ?? {}\n\n const queryKey = ${queryKeyName}(${queryKeyParams.toCall()})\n\n return useSWR<${generics.join(', ')}>(\n shouldFetch ? queryKey : null,\n {\n ...${queryOptionsName}(${queryOptionsParams.toCall()}),\n ...(immutable ? {\n revalidateIfStale: false,\n revalidateOnFocus: false,\n revalidateOnReconnect: false\n } : { }),\n ...queryOptions\n }\n )\n `}\n </Function>\n </File.Source>\n )\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { URLPath } from "@kubb/core/utils";
2
- import { isOptional } from "@kubb/oas";
2
+ import { isAllOptional, isOptional } from "@kubb/oas";
3
3
  import { Client } from "@kubb/plugin-client/components";
4
4
  import { getComments, getPathParams } from "@kubb/plugin-oas/utils";
5
5
  import { File, Function, FunctionParams, Type } from "@kubb/react-fabric";
@@ -303,33 +303,36 @@ QueryKey.getTransformer = getTransformer;
303
303
  //#endregion
304
304
  //#region src/components/QueryOptions.tsx
305
305
  function getParams$1({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
306
- if (paramsType === "object") return FunctionParams.factory({
307
- data: {
308
- mode: "object",
309
- children: {
310
- ...getPathParams(typeSchemas.pathParams, {
311
- typed: true,
312
- casing: paramsCasing
313
- }),
314
- data: typeSchemas.request?.name ? {
315
- type: typeSchemas.request?.name,
316
- optional: isOptional(typeSchemas.request?.schema)
317
- } : void 0,
318
- params: typeSchemas.queryParams?.name ? {
319
- type: typeSchemas.queryParams?.name,
320
- optional: isOptional(typeSchemas.queryParams?.schema)
321
- } : void 0,
322
- headers: typeSchemas.headerParams?.name ? {
323
- type: typeSchemas.headerParams?.name,
324
- optional: isOptional(typeSchemas.headerParams?.schema)
325
- } : void 0
306
+ if (paramsType === "object") {
307
+ const pathParams = getPathParams(typeSchemas.pathParams, {
308
+ typed: true,
309
+ casing: paramsCasing
310
+ });
311
+ return FunctionParams.factory({
312
+ data: {
313
+ mode: "object",
314
+ children: {
315
+ ...pathParams,
316
+ data: typeSchemas.request?.name ? {
317
+ type: typeSchemas.request?.name,
318
+ optional: isOptional(typeSchemas.request?.schema)
319
+ } : void 0,
320
+ params: typeSchemas.queryParams?.name ? {
321
+ type: typeSchemas.queryParams?.name,
322
+ optional: isOptional(typeSchemas.queryParams?.schema)
323
+ } : void 0,
324
+ headers: typeSchemas.headerParams?.name ? {
325
+ type: typeSchemas.headerParams?.name,
326
+ optional: isOptional(typeSchemas.headerParams?.schema)
327
+ } : void 0
328
+ }
329
+ },
330
+ config: {
331
+ type: typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }",
332
+ default: "{}"
326
333
  }
327
- },
328
- config: {
329
- type: typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }",
330
- default: "{}"
331
- }
332
- });
334
+ });
335
+ }
333
336
  return FunctionParams.factory({
334
337
  pathParams: typeSchemas.pathParams?.name ? {
335
338
  mode: pathParamsType === "object" ? "object" : "inlineSpread",
@@ -337,7 +340,7 @@ function getParams$1({ paramsType, paramsCasing, pathParamsType, typeSchemas })
337
340
  typed: true,
338
341
  casing: paramsCasing
339
342
  }),
340
- optional: isOptional(typeSchemas.pathParams?.schema)
343
+ default: isAllOptional(typeSchemas.pathParams?.schema) ? "{}" : void 0
341
344
  } : void 0,
342
345
  data: typeSchemas.request?.name ? {
343
346
  type: typeSchemas.request?.name,
@@ -396,30 +399,34 @@ QueryOptions.getParams = getParams$1;
396
399
  function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, typeSchemas }) {
397
400
  const TData = dataReturnType === "data" ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`;
398
401
  const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(" | ") || "Error"}>`;
399
- if (paramsType === "object") return FunctionParams.factory({
400
- data: {
401
- mode: "object",
402
- children: {
403
- ...getPathParams(typeSchemas.pathParams, {
404
- typed: true,
405
- casing: paramsCasing
406
- }),
407
- data: typeSchemas.request?.name ? {
408
- type: typeSchemas.request?.name,
409
- optional: isOptional(typeSchemas.request?.schema)
410
- } : void 0,
411
- params: typeSchemas.queryParams?.name ? {
412
- type: typeSchemas.queryParams?.name,
413
- optional: isOptional(typeSchemas.queryParams?.schema)
414
- } : void 0,
415
- headers: typeSchemas.headerParams?.name ? {
416
- type: typeSchemas.headerParams?.name,
417
- optional: isOptional(typeSchemas.headerParams?.schema)
418
- } : void 0
419
- }
420
- },
421
- options: {
422
- type: `
402
+ if (paramsType === "object") {
403
+ const children = {
404
+ ...getPathParams(typeSchemas.pathParams, {
405
+ typed: true,
406
+ casing: paramsCasing
407
+ }),
408
+ data: typeSchemas.request?.name ? {
409
+ type: typeSchemas.request?.name,
410
+ optional: isOptional(typeSchemas.request?.schema)
411
+ } : void 0,
412
+ params: typeSchemas.queryParams?.name ? {
413
+ type: typeSchemas.queryParams?.name,
414
+ optional: isOptional(typeSchemas.queryParams?.schema)
415
+ } : void 0,
416
+ headers: typeSchemas.headerParams?.name ? {
417
+ type: typeSchemas.headerParams?.name,
418
+ optional: isOptional(typeSchemas.headerParams?.schema)
419
+ } : void 0
420
+ };
421
+ const allChildrenAreOptional = Object.values(children).every((child) => !child || child.optional);
422
+ return FunctionParams.factory({
423
+ data: {
424
+ mode: "object",
425
+ children,
426
+ default: allChildrenAreOptional ? "{}" : void 0
427
+ },
428
+ options: {
429
+ type: `
423
430
  {
424
431
  query?: Parameters<typeof useSWR<${[TData, TError].join(", ")}>>[2],
425
432
  client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : "Partial<RequestConfig> & { client?: typeof fetch }"},
@@ -427,9 +434,10 @@ function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, t
427
434
  immutable?: boolean
428
435
  }
429
436
  `,
430
- default: "{}"
431
- }
432
- });
437
+ default: "{}"
438
+ }
439
+ });
440
+ }
433
441
  return FunctionParams.factory({
434
442
  pathParams: typeSchemas.pathParams?.name ? {
435
443
  mode: pathParamsType === "object" ? "object" : "inlineSpread",
@@ -437,7 +445,7 @@ function getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, t
437
445
  typed: true,
438
446
  casing: paramsCasing
439
447
  }),
440
- optional: isOptional(typeSchemas.pathParams?.schema)
448
+ default: isAllOptional(typeSchemas.pathParams?.schema) ? "{}" : void 0
441
449
  } : void 0,
442
450
  data: typeSchemas.request?.name ? {
443
451
  type: typeSchemas.request?.name,
@@ -521,4 +529,4 @@ function Query({ name, typeSchemas, queryKeyName, queryKeyTypeName, queryOptions
521
529
 
522
530
  //#endregion
523
531
  export { MutationKey as a, Mutation as i, QueryOptions as n, QueryKey as r, Query as t };
524
- //# sourceMappingURL=components-bS6nIkbY.js.map
532
+ //# sourceMappingURL=components-Cwjp4hSO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-Cwjp4hSO.js","names":["getParams","getTransformer: Transformer","getTransformer","getParams","params","generics","getParams","getTransformer: Transformer","getParams"],"sources":["../src/components/MutationKey.tsx","../src/components/Mutation.tsx","../src/components/QueryKey.tsx","../src/components/QueryOptions.tsx","../src/components/Query.tsx"],"sourcesContent":["import { URLPath } from '@kubb/core/utils'\nimport type { Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({}: GetParamsProps) {\n return FunctionParams.factory({})\n}\n\nconst getTransformer: Transformer = ({ operation, casing }) => {\n const path = new URLPath(operation.path, { casing })\n\n return [`{ url: '${path.toURLPath()}' }`]\n}\n\nexport function MutationKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): KubbNode {\n const params = getParams({ pathParamsType, typeSchemas })\n const keys = transformer({ operation, schemas: typeSchemas, casing: paramsCasing })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nMutationKey.getParams = getParams\nMutationKey.getTransformer = getTransformer\n","import { isOptional, type Operation } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode, Params } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\nimport { MutationKey } from './MutationKey.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n typeName: string\n clientName: string\n mutationKeyName: string\n mutationKeyTypeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n /**\n * When true, mutation parameters are passed via trigger() instead of as hook arguments\n * @default false\n */\n paramsToTrigger?: boolean\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n mutationKeyTypeName: string\n}\n\n// Original getParams - used when paramsToTrigger is false (default)\nfunction getParams({ pathParamsType, paramsCasing, dataReturnType, typeSchemas, mutationKeyTypeName }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const TExtraArg = typeSchemas.request?.name || 'never'\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n },\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n mutation?: SWRMutationConfiguration<${TData}, ${TError}, ${mutationKeyTypeName} | null, ${TExtraArg}> & { throwOnError?: boolean },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n}\n`,\n default: '{}',\n },\n })\n}\n\ntype GetTriggerParamsProps = {\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n mutationKeyTypeName: string\n mutationArgTypeName: string\n}\n\n// New getParams - used when paramsToTrigger is true\nfunction getTriggerParams({ dataReturnType, typeSchemas, mutationKeyTypeName, mutationArgTypeName }: GetTriggerParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n return FunctionParams.factory({\n options: {\n type: `\n{\n mutation?: SWRMutationConfiguration<${TData}, ${TError}, ${mutationKeyTypeName} | null, ${mutationArgTypeName}> & { throwOnError?: boolean },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n}\n`,\n default: '{}',\n },\n })\n}\n\ntype GetMutationParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n typeSchemas: OperationSchemas\n}\n\nfunction getMutationParams({ paramsCasing, typeSchemas }: GetMutationParamsProps) {\n return FunctionParams.factory({\n ...getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n })\n}\n\nexport function Mutation({\n name,\n clientName,\n mutationKeyName,\n mutationKeyTypeName,\n paramsType,\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n operation,\n paramsToTrigger = false,\n}: Props): KubbNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const mutationKeyParams = MutationKey.getParams({\n pathParamsType,\n typeSchemas,\n })\n\n const clientParams = Client.getParams({\n paramsCasing,\n paramsType,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n\n // Use the new trigger-based approach when paramsToTrigger is true\n if (paramsToTrigger) {\n // Build the mutation params type (for arg destructuring)\n const mutationParams = getMutationParams({\n paramsCasing,\n typeSchemas,\n })\n\n // Get the arg type name\n const mutationArgTypeName = `${mutationKeyTypeName.replace('MutationKey', '')}MutationArg`\n\n // Check if there are any mutation params (path, data, params, headers)\n const hasMutationParams = Object.keys(mutationParams.params).length > 0\n\n // Build the arg type for useSWRMutation\n const argParams = FunctionParams.factory({\n data: {\n mode: 'object',\n children: Object.entries(mutationParams.params).reduce((acc, [key, value]) => {\n if (value) {\n acc[key] = {\n ...value,\n type: undefined,\n }\n }\n return acc\n }, {} as Params),\n },\n })\n\n const params = getTriggerParams({\n dataReturnType,\n typeSchemas,\n mutationKeyTypeName,\n mutationArgTypeName,\n })\n\n const generics = [TData, TError, `${mutationKeyTypeName} | null`, mutationArgTypeName].filter(Boolean)\n\n const mutationArg = mutationParams.toConstructor()\n\n return (\n <>\n <File.Source name={mutationArgTypeName} isExportable isIndexable isTypeOnly>\n <Type name={mutationArgTypeName} export>\n {hasMutationParams ? `{${mutationArg}}` : 'never'}\n </Type>\n </File.Source>\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { mutation: mutationOptions, client: config = {}, shouldFetch = true } = options ?? {}\n const mutationKey = ${mutationKeyName}(${mutationKeyParams.toCall()})\n\n return useSWRMutation<${generics.join(', ')}>(\n shouldFetch ? mutationKey : null,\n async (_url${hasMutationParams ? `, { arg: ${argParams.toCall()} }` : ''}) => {\n return ${clientName}(${clientParams.toCall()})\n },\n mutationOptions\n )\n `}\n </Function>\n </File.Source>\n </>\n )\n }\n\n // Original behavior (default)\n const generics = [\n TData,\n TError,\n `${mutationKeyTypeName} | null`,\n typeSchemas.request?.name, // TExtraArg - the arg type for useSWRMutation\n ].filter(Boolean)\n\n const params = getParams({\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n mutationKeyTypeName,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { mutation: mutationOptions, client: config = {}, shouldFetch = true } = options ?? {}\n const mutationKey = ${mutationKeyName}(${mutationKeyParams.toCall()})\n\n return useSWRMutation<${generics.join(', ')}>(\n shouldFetch ? mutationKey : null,\n async (_url${typeSchemas.request?.name ? ', { arg: data }' : ''}) => {\n return ${clientName}(${clientParams.toCall()})\n },\n mutationOptions\n )\n `}\n </Function>\n </File.Source>\n )\n}\n","import { URLPath } from '@kubb/core/utils'\nimport { isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ pathParamsType, paramsCasing, typeSchemas }: GetParamsProps) {\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n },\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n })\n}\n\nconst getTransformer: Transformer = ({ operation, schemas, casing }) => {\n const path = new URLPath(operation.path, { casing })\n const keys = [\n path.toObject({\n type: 'path',\n stringify: true,\n }),\n schemas.queryParams?.name ? '...(params ? [params] : [])' : undefined,\n schemas.request?.name ? '...(data ? [data] : [])' : undefined,\n ].filter(Boolean)\n\n return keys\n}\n\nexport function QueryKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): KubbNode {\n const params = getParams({ pathParamsType, paramsCasing, typeSchemas })\n const keys = transformer({\n operation,\n schemas: typeSchemas,\n casing: paramsCasing,\n })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nQueryKey.getParams = getParams\nQueryKey.getTransformer = getTransformer\n","import { isAllOptional, isOptional } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\n\ntype Props = {\n name: string\n clientName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n}\n\ntype GetParamsProps = {\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas }: GetParamsProps) {\n if (paramsType === 'object') {\n const pathParams = getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing })\n\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...pathParams,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: typeSchemas.pathParams?.name\n ? {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n default: isAllOptional(typeSchemas.pathParams?.schema) ? '{}' : undefined,\n }\n : undefined,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n}\n\nexport function QueryOptions({ name, clientName, typeSchemas, paramsCasing, paramsType, pathParamsType }: Props): KubbNode {\n const params = getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas })\n const clientParams = Client.getParams({\n paramsCasing,\n paramsType,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function name={name} export params={params.toConstructor()}>\n {`\n return {\n fetcher: async () => {\n return ${clientName}(${clientParams.toCall()})\n },\n }\n `}\n </Function>\n </File.Source>\n )\n}\n\nQueryOptions.getParams = getParams\n","import { isAllOptional, isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react-fabric'\nimport type { KubbNode } from '@kubb/react-fabric/types'\nimport type { PluginSwr } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\nimport { QueryOptions } from './QueryOptions.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n queryOptionsName: string\n queryKeyName: string\n queryKeyTypeName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n operation: Operation\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginSwr['resolvedOptions']['paramsCasing']\n paramsType: PluginSwr['resolvedOptions']['paramsType']\n pathParamsType: PluginSwr['resolvedOptions']['pathParamsType']\n dataReturnType: PluginSwr['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, typeSchemas }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n if (paramsType === 'object') {\n const pathParams = getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing })\n\n const children = {\n ...pathParams,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n }\n\n // Check if all children are optional or undefined\n const allChildrenAreOptional = Object.values(children).every((child) => !child || child.optional)\n\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children,\n default: allChildrenAreOptional ? '{}' : undefined,\n },\n options: {\n type: `\n{\n query?: Parameters<typeof useSWR<${[TData, TError].join(', ')}>>[2],\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n immutable?: boolean\n}\n`,\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: typeSchemas.pathParams?.name\n ? {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n default: isAllOptional(typeSchemas.pathParams?.schema) ? '{}' : undefined,\n }\n : undefined,\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n query?: Parameters<typeof useSWR<${[TData, TError].join(', ')}>>[2],\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n shouldFetch?: boolean,\n immutable?: boolean\n}\n`,\n default: '{}',\n },\n })\n}\n\nexport function Query({\n name,\n typeSchemas,\n queryKeyName,\n queryKeyTypeName,\n queryOptionsName,\n operation,\n dataReturnType,\n paramsType,\n paramsCasing,\n pathParamsType,\n}: Props): KubbNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const generics = [TData, TError, `${queryKeyTypeName} | null`]\n\n const queryKeyParams = QueryKey.getParams({\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const params = getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n })\n\n const queryOptionsParams = QueryOptions.getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n typeSchemas,\n })\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { query: queryOptions, client: config = {}, shouldFetch = true, immutable } = options ?? {}\n\n const queryKey = ${queryKeyName}(${queryKeyParams.toCall()})\n\n return useSWR<${generics.join(', ')}>(\n shouldFetch ? queryKey : null,\n {\n ...${queryOptionsName}(${queryOptionsParams.toCall()}),\n ...(immutable ? {\n revalidateIfStale: false,\n revalidateOnFocus: false,\n revalidateOnReconnect: false\n } : { }),\n ...queryOptions\n }\n )\n `}\n </Function>\n </File.Source>\n )\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- const require_components = require('./components-DD7X6DkL.cjs');
1
+ const require_components = require('./components-BFtjMdmk.cjs');
2
2
 
3
3
  exports.Mutation = require_components.Mutation;
4
4
  exports.MutationKey = require_components.MutationKey;
@@ -1,3 +1,3 @@
1
- import { a as MutationKey, i as Mutation, n as QueryOptions, r as QueryKey, t as Query } from "./components-bS6nIkbY.js";
1
+ import { a as MutationKey, i as Mutation, n as QueryOptions, r as QueryKey, t as Query } from "./components-Cwjp4hSO.js";
2
2
 
3
3
  export { Mutation, MutationKey, Query, QueryKey, QueryOptions };
@@ -1,4 +1,4 @@
1
- import { a as MutationKey, i as Mutation, n as QueryOptions, r as QueryKey, t as Query } from "./components-bS6nIkbY.js";
1
+ import { a as MutationKey, i as Mutation, n as QueryOptions, r as QueryKey, t as Query } from "./components-Cwjp4hSO.js";
2
2
  import path from "node:path";
3
3
  import { pluginClientName } from "@kubb/plugin-client";
4
4
  import { pluginTsName } from "@kubb/plugin-ts";
@@ -381,4 +381,4 @@ const queryGenerator = createReactGenerator({
381
381
 
382
382
  //#endregion
383
383
  export { mutationGenerator as n, queryGenerator as t };
384
- //# sourceMappingURL=generators-DWKtejUq.js.map
384
+ //# sourceMappingURL=generators-BSCUSHuc.js.map