@kubb/plugin-swr 3.5.1 → 3.5.3

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,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkOQB3Y5YU_cjs = require('./chunk-OQB3Y5YU.cjs');
4
+ var pluginClient = require('@kubb/plugin-client');
4
5
  var components = require('@kubb/plugin-client/components');
5
6
  var pluginOas = require('@kubb/plugin-oas');
6
7
  var hooks = require('@kubb/plugin-oas/hooks');
@@ -17,7 +18,8 @@ var queryGenerator = pluginOas.createReactGenerator({
17
18
  const {
18
19
  plugin: {
19
20
  options: { output }
20
- }
21
+ },
22
+ pluginManager
21
23
  } = react.useApp();
22
24
  const oas = hooks.useOas();
23
25
  const { getSchemas, getName, getFile } = hooks.useOperationManager();
@@ -31,8 +33,15 @@ var queryGenerator = pluginOas.createReactGenerator({
31
33
  typeName: getName(operation, { type: "type" }),
32
34
  file: getFile(operation, { prefix: "use" })
33
35
  };
36
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClient.pluginClientName]);
34
37
  const client = {
35
- name: getName(operation, { type: "function" })
38
+ name: hasClientPlugin ? getName(operation, {
39
+ type: "function",
40
+ pluginKey: [pluginClient.pluginClientName]
41
+ }) : getName(operation, {
42
+ type: "function"
43
+ }),
44
+ file: getFile(operation, { pluginKey: [pluginClient.pluginClientName] })
36
45
  };
37
46
  const queryOptions = {
38
47
  name: getName(operation, { type: "function", suffix: "QueryOptions" })
@@ -63,7 +72,8 @@ var queryGenerator = pluginOas.createReactGenerator({
63
72
  footer: utils.getFooter({ oas, output }),
64
73
  children: [
65
74
  options.parser === "zod" && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: [zod.schemas.response.name], root: query.file.path, path: zod.file.path }),
66
- /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: "client", path: options.client.importPath }),
75
+ !hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: "client", path: options.client.importPath }),
76
+ !!hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: [client.name], root: query.file.path, path: client.file.path }),
67
77
  /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: ["RequestConfig", "ResponseErrorConfig"], path: options.client.importPath, isTypeOnly: true }),
68
78
  options.client.dataReturnType === "full" && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: ["ResponseConfig"], path: options.client.importPath, isTypeOnly: true }),
69
79
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -94,12 +104,10 @@ var queryGenerator = pluginOas.createReactGenerator({
94
104
  transformer: options.queryKey
95
105
  }
96
106
  ),
97
- /* @__PURE__ */ jsxRuntime.jsx(
107
+ !hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(
98
108
  components.Client,
99
109
  {
100
110
  name: client.name,
101
- isExportable: false,
102
- isIndexable: false,
103
111
  baseURL: options.client.baseURL,
104
112
  operation,
105
113
  typeSchemas: type.schemas,
@@ -152,7 +160,8 @@ var mutationGenerator = pluginOas.createReactGenerator({
152
160
  const {
153
161
  plugin: {
154
162
  options: { output }
155
- }
163
+ },
164
+ pluginManager
156
165
  } = react.useApp();
157
166
  const oas = hooks.useOas();
158
167
  const { getSchemas, getName, getFile } = hooks.useOperationManager();
@@ -173,8 +182,15 @@ var mutationGenerator = pluginOas.createReactGenerator({
173
182
  file: getFile(operation, { pluginKey: [pluginZod.pluginZodName] }),
174
183
  schemas: getSchemas(operation, { pluginKey: [pluginZod.pluginZodName], type: "function" })
175
184
  };
185
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClient.pluginClientName]);
176
186
  const client = {
177
- name: getName(operation, { type: "function" })
187
+ name: hasClientPlugin ? getName(operation, {
188
+ type: "function",
189
+ pluginKey: [pluginClient.pluginClientName]
190
+ }) : getName(operation, {
191
+ type: "function"
192
+ }),
193
+ file: getFile(operation, { pluginKey: [pluginClient.pluginClientName] })
178
194
  };
179
195
  const mutationKey = {
180
196
  name: getName(operation, { type: "const", suffix: "MutationKey" }),
@@ -195,7 +211,8 @@ var mutationGenerator = pluginOas.createReactGenerator({
195
211
  options.parser === "zod" && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: [zod.schemas.response.name], root: mutation.file.path, path: zod.file.path }),
196
212
  /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: "useSWRMutation", path: importPath }),
197
213
  /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: ["SWRMutationResponse"], path: importPath, isTypeOnly: true }),
198
- /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: "client", path: options.client.importPath }),
214
+ !hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: "client", path: options.client.importPath }),
215
+ !!hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: [client.name], root: mutation.file.path, path: client.file.path }),
199
216
  /* @__PURE__ */ jsxRuntime.jsx(react.File.Import, { name: ["RequestConfig", "ResponseConfig", "ResponseErrorConfig"], path: options.client.importPath, isTypeOnly: true }),
200
217
  /* @__PURE__ */ jsxRuntime.jsx(
201
218
  react.File.Import,
@@ -225,12 +242,10 @@ var mutationGenerator = pluginOas.createReactGenerator({
225
242
  transformer: options.mutationKey
226
243
  }
227
244
  ),
228
- /* @__PURE__ */ jsxRuntime.jsx(
245
+ !hasClientPlugin && /* @__PURE__ */ jsxRuntime.jsx(
229
246
  components.Client,
230
247
  {
231
248
  name: client.name,
232
- isExportable: false,
233
- isIndexable: false,
234
249
  baseURL: options.client.baseURL,
235
250
  operation,
236
251
  typeSchemas: type.schemas,
@@ -266,5 +281,5 @@ var mutationGenerator = pluginOas.createReactGenerator({
266
281
 
267
282
  exports.mutationGenerator = mutationGenerator;
268
283
  exports.queryGenerator = queryGenerator;
269
- //# sourceMappingURL=chunk-GO7HPDQP.cjs.map
270
- //# sourceMappingURL=chunk-GO7HPDQP.cjs.map
284
+ //# sourceMappingURL=chunk-7CSXJ4S7.cjs.map
285
+ //# sourceMappingURL=chunk-7CSXJ4S7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generators/queryGenerator.tsx","../src/generators/mutationGenerator.tsx"],"names":["createReactGenerator","useApp","useOas","useOperationManager","difference","pluginClientName","pluginTsName","pluginZodName","jsxs","File","getBanner","getFooter","jsx","QueryKey","Client","QueryOptions","Fragment","Query","MutationKey","Mutation"],"mappings":"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","file":"chunk-7CSXJ4S7.cjs","sourcesContent":["import { pluginClientName } from '@kubb/plugin-client'\nimport { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { Query, QueryOptions } from '../components'\nimport { QueryKey } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const queryGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-query',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n pluginManager,\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = typeof options.query === 'boolean' ? true : options.query?.methods.some((method) => operation.method === method)\n const isMutation = difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some(\n (method) => operation.method === method,\n )\n const importPath = options.query ? options.query.importPath : 'swr/mutation'\n\n const query = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])\n const client = {\n name: hasClientPlugin\n ? getName(operation, {\n type: 'function',\n pluginKey: [pluginClientName],\n })\n : getName(operation, {\n type: 'function',\n }),\n file: getFile(operation, { pluginKey: [pluginClientName] }),\n }\n\n const queryOptions = {\n name: getName(operation, { type: 'function', suffix: 'QueryOptions' }),\n }\n const queryKey = {\n name: getName(operation, { type: 'const', suffix: 'QueryKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'QueryKey' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n if (!isQuery || isMutation) {\n return null\n }\n\n return (\n <File\n baseName={query.file.baseName}\n path={query.file.path}\n meta={query.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={query.file.path} path={zod.file.path} />}\n {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}\n {!!hasClientPlugin && <File.Import name={[client.name]} root={query.file.path} path={client.file.path} />}\n <File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n {options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}\n\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={query.file.path}\n path={type.file.path}\n isTypeOnly\n />\n <QueryKey\n name={queryKey.name}\n typeName={queryKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.queryKey}\n />\n {!hasClientPlugin && (\n <Client\n name={client.name}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n )}\n <QueryOptions\n name={queryOptions.name}\n clientName={client.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n />\n {options.query && (\n <>\n <File.Import name=\"useSWR\" path={importPath} />\n <File.Import name={['SWRResponse']} path={importPath} isTypeOnly />\n <Query\n name={query.name}\n queryOptionsName={queryOptions.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n queryKeyName={queryKey.name}\n paramsCasing={options.paramsCasing}\n queryKeyTypeName={queryKey.typeName}\n />\n </>\n )}\n </File>\n )\n },\n})\n","import { pluginClientName } from '@kubb/plugin-client'\nimport { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { MutationKey } from '../components'\nimport { Mutation } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const mutationGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-mutation',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n pluginManager,\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = !!options.query && options.query?.methods.some((method) => operation.method === method)\n const isMutation =\n !isQuery &&\n difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some((method) => operation.method === method)\n\n const importPath = options.mutation ? options.mutation.importPath : 'swr'\n\n const mutation = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])\n const client = {\n name: hasClientPlugin\n ? getName(operation, {\n type: 'function',\n pluginKey: [pluginClientName],\n })\n : getName(operation, {\n type: 'function',\n }),\n file: getFile(operation, { pluginKey: [pluginClientName] }),\n }\n\n const mutationKey = {\n name: getName(operation, { type: 'const', suffix: 'MutationKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'MutationKey' }),\n }\n\n if (!isMutation) {\n return null\n }\n\n return (\n <File\n baseName={mutation.file.baseName}\n path={mutation.file.path}\n meta={mutation.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={mutation.file.path} path={zod.file.path} />}\n <File.Import name=\"useSWRMutation\" path={importPath} />\n <File.Import name={['SWRMutationResponse']} path={importPath} isTypeOnly />\n {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}\n {!!hasClientPlugin && <File.Import name={[client.name]} root={mutation.file.path} path={client.file.path} />}\n <File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={mutation.file.path}\n path={type.file.path}\n isTypeOnly\n />\n\n <MutationKey\n name={mutationKey.name}\n typeName={mutationKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.mutationKey}\n />\n\n {!hasClientPlugin && (\n <Client\n name={client.name}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n )}\n {options.mutation && (\n <Mutation\n name={mutation.name}\n clientName={client.name}\n typeName={mutation.typeName}\n typeSchemas={type.schemas}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n mutationKeyName={mutationKey.name}\n mutationKeyTypeName={mutationKey.typeName}\n />\n )}\n </File>\n )\n },\n})\n"]}
@@ -1,4 +1,5 @@
1
1
  import { QueryKey, QueryOptions, Query, MutationKey, Mutation } from './chunk-VNUP6G3W.js';
2
+ import { pluginClientName } from '@kubb/plugin-client';
2
3
  import { Client } from '@kubb/plugin-client/components';
3
4
  import { createReactGenerator } from '@kubb/plugin-oas';
4
5
  import { useOas, useOperationManager } from '@kubb/plugin-oas/hooks';
@@ -15,7 +16,8 @@ var queryGenerator = createReactGenerator({
15
16
  const {
16
17
  plugin: {
17
18
  options: { output }
18
- }
19
+ },
20
+ pluginManager
19
21
  } = useApp();
20
22
  const oas = useOas();
21
23
  const { getSchemas, getName, getFile } = useOperationManager();
@@ -29,8 +31,15 @@ var queryGenerator = createReactGenerator({
29
31
  typeName: getName(operation, { type: "type" }),
30
32
  file: getFile(operation, { prefix: "use" })
31
33
  };
34
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName]);
32
35
  const client = {
33
- name: getName(operation, { type: "function" })
36
+ name: hasClientPlugin ? getName(operation, {
37
+ type: "function",
38
+ pluginKey: [pluginClientName]
39
+ }) : getName(operation, {
40
+ type: "function"
41
+ }),
42
+ file: getFile(operation, { pluginKey: [pluginClientName] })
34
43
  };
35
44
  const queryOptions = {
36
45
  name: getName(operation, { type: "function", suffix: "QueryOptions" })
@@ -61,7 +70,8 @@ var queryGenerator = createReactGenerator({
61
70
  footer: getFooter({ oas, output }),
62
71
  children: [
63
72
  options.parser === "zod" && /* @__PURE__ */ jsx(File.Import, { name: [zod.schemas.response.name], root: query.file.path, path: zod.file.path }),
64
- /* @__PURE__ */ jsx(File.Import, { name: "client", path: options.client.importPath }),
73
+ !hasClientPlugin && /* @__PURE__ */ jsx(File.Import, { name: "client", path: options.client.importPath }),
74
+ !!hasClientPlugin && /* @__PURE__ */ jsx(File.Import, { name: [client.name], root: query.file.path, path: client.file.path }),
65
75
  /* @__PURE__ */ jsx(File.Import, { name: ["RequestConfig", "ResponseErrorConfig"], path: options.client.importPath, isTypeOnly: true }),
66
76
  options.client.dataReturnType === "full" && /* @__PURE__ */ jsx(File.Import, { name: ["ResponseConfig"], path: options.client.importPath, isTypeOnly: true }),
67
77
  /* @__PURE__ */ jsx(
@@ -92,12 +102,10 @@ var queryGenerator = createReactGenerator({
92
102
  transformer: options.queryKey
93
103
  }
94
104
  ),
95
- /* @__PURE__ */ jsx(
105
+ !hasClientPlugin && /* @__PURE__ */ jsx(
96
106
  Client,
97
107
  {
98
108
  name: client.name,
99
- isExportable: false,
100
- isIndexable: false,
101
109
  baseURL: options.client.baseURL,
102
110
  operation,
103
111
  typeSchemas: type.schemas,
@@ -150,7 +158,8 @@ var mutationGenerator = createReactGenerator({
150
158
  const {
151
159
  plugin: {
152
160
  options: { output }
153
- }
161
+ },
162
+ pluginManager
154
163
  } = useApp();
155
164
  const oas = useOas();
156
165
  const { getSchemas, getName, getFile } = useOperationManager();
@@ -171,8 +180,15 @@ var mutationGenerator = createReactGenerator({
171
180
  file: getFile(operation, { pluginKey: [pluginZodName] }),
172
181
  schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: "function" })
173
182
  };
183
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName]);
174
184
  const client = {
175
- name: getName(operation, { type: "function" })
185
+ name: hasClientPlugin ? getName(operation, {
186
+ type: "function",
187
+ pluginKey: [pluginClientName]
188
+ }) : getName(operation, {
189
+ type: "function"
190
+ }),
191
+ file: getFile(operation, { pluginKey: [pluginClientName] })
176
192
  };
177
193
  const mutationKey = {
178
194
  name: getName(operation, { type: "const", suffix: "MutationKey" }),
@@ -193,7 +209,8 @@ var mutationGenerator = createReactGenerator({
193
209
  options.parser === "zod" && /* @__PURE__ */ jsx(File.Import, { name: [zod.schemas.response.name], root: mutation.file.path, path: zod.file.path }),
194
210
  /* @__PURE__ */ jsx(File.Import, { name: "useSWRMutation", path: importPath }),
195
211
  /* @__PURE__ */ jsx(File.Import, { name: ["SWRMutationResponse"], path: importPath, isTypeOnly: true }),
196
- /* @__PURE__ */ jsx(File.Import, { name: "client", path: options.client.importPath }),
212
+ !hasClientPlugin && /* @__PURE__ */ jsx(File.Import, { name: "client", path: options.client.importPath }),
213
+ !!hasClientPlugin && /* @__PURE__ */ jsx(File.Import, { name: [client.name], root: mutation.file.path, path: client.file.path }),
197
214
  /* @__PURE__ */ jsx(File.Import, { name: ["RequestConfig", "ResponseConfig", "ResponseErrorConfig"], path: options.client.importPath, isTypeOnly: true }),
198
215
  /* @__PURE__ */ jsx(
199
216
  File.Import,
@@ -223,12 +240,10 @@ var mutationGenerator = createReactGenerator({
223
240
  transformer: options.mutationKey
224
241
  }
225
242
  ),
226
- /* @__PURE__ */ jsx(
243
+ !hasClientPlugin && /* @__PURE__ */ jsx(
227
244
  Client,
228
245
  {
229
246
  name: client.name,
230
- isExportable: false,
231
- isIndexable: false,
232
247
  baseURL: options.client.baseURL,
233
248
  operation,
234
249
  typeSchemas: type.schemas,
@@ -263,5 +278,5 @@ var mutationGenerator = createReactGenerator({
263
278
  });
264
279
 
265
280
  export { mutationGenerator, queryGenerator };
266
- //# sourceMappingURL=chunk-HDCT362M.js.map
267
- //# sourceMappingURL=chunk-HDCT362M.js.map
281
+ //# sourceMappingURL=chunk-PDTRQMFL.js.map
282
+ //# sourceMappingURL=chunk-PDTRQMFL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generators/queryGenerator.tsx","../src/generators/mutationGenerator.tsx"],"names":["createReactGenerator","useApp","useOas","useOperationManager","difference","pluginTsName","pluginZodName","pluginClientName","jsxs","File","getBanner","getFooter","jsx","Client"],"mappings":"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","file":"chunk-PDTRQMFL.js","sourcesContent":["import { pluginClientName } from '@kubb/plugin-client'\nimport { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { Query, QueryOptions } from '../components'\nimport { QueryKey } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const queryGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-query',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n pluginManager,\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = typeof options.query === 'boolean' ? true : options.query?.methods.some((method) => operation.method === method)\n const isMutation = difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some(\n (method) => operation.method === method,\n )\n const importPath = options.query ? options.query.importPath : 'swr/mutation'\n\n const query = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])\n const client = {\n name: hasClientPlugin\n ? getName(operation, {\n type: 'function',\n pluginKey: [pluginClientName],\n })\n : getName(operation, {\n type: 'function',\n }),\n file: getFile(operation, { pluginKey: [pluginClientName] }),\n }\n\n const queryOptions = {\n name: getName(operation, { type: 'function', suffix: 'QueryOptions' }),\n }\n const queryKey = {\n name: getName(operation, { type: 'const', suffix: 'QueryKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'QueryKey' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n if (!isQuery || isMutation) {\n return null\n }\n\n return (\n <File\n baseName={query.file.baseName}\n path={query.file.path}\n meta={query.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={query.file.path} path={zod.file.path} />}\n {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}\n {!!hasClientPlugin && <File.Import name={[client.name]} root={query.file.path} path={client.file.path} />}\n <File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n {options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}\n\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={query.file.path}\n path={type.file.path}\n isTypeOnly\n />\n <QueryKey\n name={queryKey.name}\n typeName={queryKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.queryKey}\n />\n {!hasClientPlugin && (\n <Client\n name={client.name}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n )}\n <QueryOptions\n name={queryOptions.name}\n clientName={client.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n />\n {options.query && (\n <>\n <File.Import name=\"useSWR\" path={importPath} />\n <File.Import name={['SWRResponse']} path={importPath} isTypeOnly />\n <Query\n name={query.name}\n queryOptionsName={queryOptions.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n queryKeyName={queryKey.name}\n paramsCasing={options.paramsCasing}\n queryKeyTypeName={queryKey.typeName}\n />\n </>\n )}\n </File>\n )\n },\n})\n","import { pluginClientName } from '@kubb/plugin-client'\nimport { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { MutationKey } from '../components'\nimport { Mutation } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const mutationGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-mutation',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n pluginManager,\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = !!options.query && options.query?.methods.some((method) => operation.method === method)\n const isMutation =\n !isQuery &&\n difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some((method) => operation.method === method)\n\n const importPath = options.mutation ? options.mutation.importPath : 'swr'\n\n const mutation = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])\n const client = {\n name: hasClientPlugin\n ? getName(operation, {\n type: 'function',\n pluginKey: [pluginClientName],\n })\n : getName(operation, {\n type: 'function',\n }),\n file: getFile(operation, { pluginKey: [pluginClientName] }),\n }\n\n const mutationKey = {\n name: getName(operation, { type: 'const', suffix: 'MutationKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'MutationKey' }),\n }\n\n if (!isMutation) {\n return null\n }\n\n return (\n <File\n baseName={mutation.file.baseName}\n path={mutation.file.path}\n meta={mutation.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={mutation.file.path} path={zod.file.path} />}\n <File.Import name=\"useSWRMutation\" path={importPath} />\n <File.Import name={['SWRMutationResponse']} path={importPath} isTypeOnly />\n {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}\n {!!hasClientPlugin && <File.Import name={[client.name]} root={mutation.file.path} path={client.file.path} />}\n <File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={mutation.file.path}\n path={type.file.path}\n isTypeOnly\n />\n\n <MutationKey\n name={mutationKey.name}\n typeName={mutationKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.mutationKey}\n />\n\n {!hasClientPlugin && (\n <Client\n name={client.name}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n )}\n {options.mutation && (\n <Mutation\n name={mutation.name}\n clientName={client.name}\n typeName={mutation.typeName}\n typeSchemas={type.schemas}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n mutationKeyName={mutationKey.name}\n mutationKeyTypeName={mutationKey.typeName}\n />\n )}\n </File>\n )\n },\n})\n"]}
@@ -1,17 +1,17 @@
1
1
  'use strict';
2
2
 
3
- var chunkGO7HPDQP_cjs = require('./chunk-GO7HPDQP.cjs');
3
+ var chunk7CSXJ4S7_cjs = require('./chunk-7CSXJ4S7.cjs');
4
4
  require('./chunk-OQB3Y5YU.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "mutationGenerator", {
9
9
  enumerable: true,
10
- get: function () { return chunkGO7HPDQP_cjs.mutationGenerator; }
10
+ get: function () { return chunk7CSXJ4S7_cjs.mutationGenerator; }
11
11
  });
12
12
  Object.defineProperty(exports, "queryGenerator", {
13
13
  enumerable: true,
14
- get: function () { return chunkGO7HPDQP_cjs.queryGenerator; }
14
+ get: function () { return chunk7CSXJ4S7_cjs.queryGenerator; }
15
15
  });
16
16
  //# sourceMappingURL=generators.cjs.map
17
17
  //# sourceMappingURL=generators.cjs.map
@@ -1,4 +1,4 @@
1
- export { mutationGenerator, queryGenerator } from './chunk-HDCT362M.js';
1
+ export { mutationGenerator, queryGenerator } from './chunk-PDTRQMFL.js';
2
2
  import './chunk-VNUP6G3W.js';
3
3
  //# sourceMappingURL=generators.js.map
4
4
  //# sourceMappingURL=generators.js.map
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkGO7HPDQP_cjs = require('./chunk-GO7HPDQP.cjs');
3
+ var chunk7CSXJ4S7_cjs = require('./chunk-7CSXJ4S7.cjs');
4
4
  var chunkOQB3Y5YU_cjs = require('./chunk-OQB3Y5YU.cjs');
5
5
  var path = require('path');
6
6
  var core = require('@kubb/core');
@@ -30,7 +30,7 @@ var pluginSwr = core.createPlugin((options) => {
30
30
  pathParamsType = "inline",
31
31
  mutationKey = chunkOQB3Y5YU_cjs.MutationKey.getTransformer,
32
32
  queryKey = chunkOQB3Y5YU_cjs.QueryKey.getTransformer,
33
- generators = [chunkGO7HPDQP_cjs.queryGenerator, chunkGO7HPDQP_cjs.mutationGenerator].filter(Boolean),
33
+ generators = [chunk7CSXJ4S7_cjs.queryGenerator, chunk7CSXJ4S7_cjs.mutationGenerator].filter(Boolean),
34
34
  paramsCasing
35
35
  } = options;
36
36
  return {
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { queryGenerator, mutationGenerator } from './chunk-HDCT362M.js';
1
+ import { queryGenerator, mutationGenerator } from './chunk-PDTRQMFL.js';
2
2
  import { MutationKey, QueryKey } from './chunk-VNUP6G3W.js';
3
3
  import path from 'node:path';
4
4
  import { createPlugin, FileManager, PluginManager } from '@kubb/core';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubb/plugin-swr",
3
- "version": "3.5.1",
3
+ "version": "3.5.3",
4
4
  "description": "Generator plugin-swr",
5
5
  "keywords": [
6
6
  "typescript",
@@ -63,23 +63,23 @@
63
63
  "!/**/__tests__/**"
64
64
  ],
65
65
  "dependencies": {
66
- "remeda": "^2.19.1",
67
- "@kubb/core": "3.5.1",
68
- "@kubb/fs": "3.5.1",
69
- "@kubb/oas": "3.5.1",
70
- "@kubb/plugin-client": "3.5.1",
71
- "@kubb/plugin-oas": "3.5.1",
72
- "@kubb/plugin-ts": "3.5.1",
73
- "@kubb/plugin-zod": "3.5.1",
74
- "@kubb/react": "3.5.1"
66
+ "remeda": "^2.19.2",
67
+ "@kubb/core": "3.5.3",
68
+ "@kubb/fs": "3.5.3",
69
+ "@kubb/oas": "3.5.3",
70
+ "@kubb/plugin-client": "3.5.3",
71
+ "@kubb/plugin-oas": "3.5.3",
72
+ "@kubb/plugin-ts": "3.5.3",
73
+ "@kubb/plugin-zod": "3.5.3",
74
+ "@kubb/react": "3.5.3"
75
75
  },
76
76
  "devDependencies": {
77
77
  "@types/react": "^18.3.18",
78
78
  "react": "^18.3.1",
79
79
  "tsup": "^8.3.5",
80
80
  "typescript": "^5.7.3",
81
- "@kubb/config-ts": "3.5.1",
82
- "@kubb/config-tsup": "3.5.1"
81
+ "@kubb/config-ts": "3.5.3",
82
+ "@kubb/config-tsup": "3.5.3"
83
83
  },
84
84
  "peerDependencies": {
85
85
  "@kubb/react": "^3.0.0"
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -10,7 +10,11 @@ export type UpdatePetWithFormMutationKey = ReturnType<typeof updatePetWithFormMu
10
10
  * @summary Updates a pet in the store with form data
11
11
  * {@link /pet/:petId}
12
12
  */
13
- async function updatePetWithForm(petId: UpdatePetWithFormPathParams['petId'], params?: UpdatePetWithFormQueryParams, config: Partial<RequestConfig> = {}) {
13
+ export async function updatePetWithForm(
14
+ petId: UpdatePetWithFormPathParams['petId'],
15
+ params?: UpdatePetWithFormQueryParams,
16
+ config: Partial<RequestConfig> = {},
17
+ ) {
14
18
  const res = await client<UpdatePetWithFormMutationResponse, ResponseErrorConfig<UpdatePetWithForm405>, unknown>({
15
19
  method: 'POST',
16
20
  url: `/pet/${petId}`,
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -11,7 +11,7 @@ export type FindPetsByTagsQueryKey = ReturnType<typeof findPetsByTagsQueryKey>
11
11
  * @summary Finds Pets by tags
12
12
  * {@link /pet/findByTags}
13
13
  */
14
- async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
14
+ export async function findPetsByTags({ params }: { params?: FindPetsByTagsQueryParams }, config: Partial<RequestConfig> = {}) {
15
15
  const res = await client<FindPetsByTagsQueryResponse, ResponseErrorConfig<FindPetsByTags400>, unknown>({
16
16
  method: 'GET',
17
17
  url: `/pet/findByTags`,
@@ -11,7 +11,7 @@ export type UpdatePetWithFormQueryKey = ReturnType<typeof updatePetWithFormQuery
11
11
  * @summary Updates a pet in the store with form data
12
12
  * {@link /pet/:petId}
13
13
  */
14
- async function updatePetWithForm(
14
+ export async function updatePetWithForm(
15
15
  { petId, params }: { petId: UpdatePetWithFormPathParams['petId']; params?: UpdatePetWithFormQueryParams },
16
16
  config: Partial<RequestConfig> = {},
17
17
  ) {
@@ -10,7 +10,11 @@ export type UpdatePetWithFormMutationKey = ReturnType<typeof updatePetWithFormMu
10
10
  * @summary Updates a pet in the store with form data
11
11
  * {@link /pet/:petId}
12
12
  */
13
- async function updatePetWithForm(petId: UpdatePetWithFormPathParams['petId'], params?: UpdatePetWithFormQueryParams, config: Partial<RequestConfig> = {}) {
13
+ export async function updatePetWithForm(
14
+ petId: UpdatePetWithFormPathParams['petId'],
15
+ params?: UpdatePetWithFormQueryParams,
16
+ config: Partial<RequestConfig> = {},
17
+ ) {
14
18
  const res = await client<UpdatePetWithFormMutationResponse, ResponseErrorConfig<UpdatePetWithForm405>, unknown>({
15
19
  method: 'POST',
16
20
  url: `/pet/${petId}`,
@@ -10,7 +10,7 @@ export type UpdatePetWithFormMutationKey = ReturnType<typeof updatePetWithFormMu
10
10
  * @summary Updates a pet in the store with form data
11
11
  * {@link /pet/:petId}
12
12
  */
13
- async function updatePetWithForm(
13
+ export async function updatePetWithForm(
14
14
  { petId }: { petId: UpdatePetWithFormPathParams['petId'] },
15
15
  params?: UpdatePetWithFormQueryParams,
16
16
  config: Partial<RequestConfig> = {},
@@ -1,3 +1,4 @@
1
+ import { pluginClientName } from '@kubb/plugin-client'
1
2
  import { Client } from '@kubb/plugin-client/components'
2
3
  import { createReactGenerator } from '@kubb/plugin-oas'
3
4
  import { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'
@@ -17,6 +18,7 @@ export const mutationGenerator = createReactGenerator<PluginSwr>({
17
18
  plugin: {
18
19
  options: { output },
19
20
  },
21
+ pluginManager,
20
22
  } = useApp<PluginSwr>()
21
23
  const oas = useOas()
22
24
  const { getSchemas, getName, getFile } = useOperationManager()
@@ -45,8 +47,17 @@ export const mutationGenerator = createReactGenerator<PluginSwr>({
45
47
  schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),
46
48
  }
47
49
 
50
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])
48
51
  const client = {
49
- name: getName(operation, { type: 'function' }),
52
+ name: hasClientPlugin
53
+ ? getName(operation, {
54
+ type: 'function',
55
+ pluginKey: [pluginClientName],
56
+ })
57
+ : getName(operation, {
58
+ type: 'function',
59
+ }),
60
+ file: getFile(operation, { pluginKey: [pluginClientName] }),
50
61
  }
51
62
 
52
63
  const mutationKey = {
@@ -69,7 +80,8 @@ export const mutationGenerator = createReactGenerator<PluginSwr>({
69
80
  {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={mutation.file.path} path={zod.file.path} />}
70
81
  <File.Import name="useSWRMutation" path={importPath} />
71
82
  <File.Import name={['SWRMutationResponse']} path={importPath} isTypeOnly />
72
- <File.Import name={'client'} path={options.client.importPath} />
83
+ {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}
84
+ {!!hasClientPlugin && <File.Import name={[client.name]} root={mutation.file.path} path={client.file.path} />}
73
85
  <File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
74
86
  <File.Import
75
87
  name={[
@@ -95,20 +107,20 @@ export const mutationGenerator = createReactGenerator<PluginSwr>({
95
107
  transformer={options.mutationKey}
96
108
  />
97
109
 
98
- <Client
99
- name={client.name}
100
- isExportable={false}
101
- isIndexable={false}
102
- baseURL={options.client.baseURL}
103
- operation={operation}
104
- typeSchemas={type.schemas}
105
- zodSchemas={zod.schemas}
106
- dataReturnType={options.client.dataReturnType}
107
- paramsCasing={options.paramsCasing}
108
- paramsType={options.paramsType}
109
- pathParamsType={options.pathParamsType}
110
- parser={options.parser}
111
- />
110
+ {!hasClientPlugin && (
111
+ <Client
112
+ name={client.name}
113
+ baseURL={options.client.baseURL}
114
+ operation={operation}
115
+ typeSchemas={type.schemas}
116
+ zodSchemas={zod.schemas}
117
+ dataReturnType={options.client.dataReturnType}
118
+ paramsCasing={options.paramsCasing}
119
+ paramsType={options.paramsType}
120
+ pathParamsType={options.pathParamsType}
121
+ parser={options.parser}
122
+ />
123
+ )}
112
124
  {options.mutation && (
113
125
  <Mutation
114
126
  name={mutation.name}
@@ -1,3 +1,4 @@
1
+ import { pluginClientName } from '@kubb/plugin-client'
1
2
  import { Client } from '@kubb/plugin-client/components'
2
3
  import { createReactGenerator } from '@kubb/plugin-oas'
3
4
  import { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'
@@ -17,6 +18,7 @@ export const queryGenerator = createReactGenerator<PluginSwr>({
17
18
  plugin: {
18
19
  options: { output },
19
20
  },
21
+ pluginManager,
20
22
  } = useApp<PluginSwr>()
21
23
  const oas = useOas()
22
24
  const { getSchemas, getName, getFile } = useOperationManager()
@@ -33,8 +35,17 @@ export const queryGenerator = createReactGenerator<PluginSwr>({
33
35
  file: getFile(operation, { prefix: 'use' }),
34
36
  }
35
37
 
38
+ const hasClientPlugin = !!pluginManager.getPluginByKey([pluginClientName])
36
39
  const client = {
37
- name: getName(operation, { type: 'function' }),
40
+ name: hasClientPlugin
41
+ ? getName(operation, {
42
+ type: 'function',
43
+ pluginKey: [pluginClientName],
44
+ })
45
+ : getName(operation, {
46
+ type: 'function',
47
+ }),
48
+ file: getFile(operation, { pluginKey: [pluginClientName] }),
38
49
  }
39
50
 
40
51
  const queryOptions = {
@@ -69,8 +80,8 @@ export const queryGenerator = createReactGenerator<PluginSwr>({
69
80
  footer={getFooter({ oas, output })}
70
81
  >
71
82
  {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={query.file.path} path={zod.file.path} />}
72
-
73
- <File.Import name={'client'} path={options.client.importPath} />
83
+ {!hasClientPlugin && <File.Import name={'client'} path={options.client.importPath} />}
84
+ {!!hasClientPlugin && <File.Import name={[client.name]} root={query.file.path} path={client.file.path} />}
74
85
  <File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
75
86
  {options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}
76
87
 
@@ -96,20 +107,20 @@ export const queryGenerator = createReactGenerator<PluginSwr>({
96
107
  paramsCasing={options.paramsCasing}
97
108
  transformer={options.queryKey}
98
109
  />
99
- <Client
100
- name={client.name}
101
- isExportable={false}
102
- isIndexable={false}
103
- baseURL={options.client.baseURL}
104
- operation={operation}
105
- typeSchemas={type.schemas}
106
- zodSchemas={zod.schemas}
107
- dataReturnType={options.client.dataReturnType}
108
- paramsCasing={options.paramsCasing}
109
- paramsType={options.paramsType}
110
- pathParamsType={options.pathParamsType}
111
- parser={options.parser}
112
- />
110
+ {!hasClientPlugin && (
111
+ <Client
112
+ name={client.name}
113
+ baseURL={options.client.baseURL}
114
+ operation={operation}
115
+ typeSchemas={type.schemas}
116
+ zodSchemas={zod.schemas}
117
+ dataReturnType={options.client.dataReturnType}
118
+ paramsCasing={options.paramsCasing}
119
+ paramsType={options.paramsType}
120
+ pathParamsType={options.pathParamsType}
121
+ parser={options.parser}
122
+ />
123
+ )}
113
124
  <QueryOptions
114
125
  name={queryOptions.name}
115
126
  clientName={client.name}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/generators/queryGenerator.tsx","../src/generators/mutationGenerator.tsx"],"names":["createReactGenerator","useApp","useOas","useOperationManager","difference","pluginTsName","pluginZodName","jsxs","File","getBanner","getFooter","jsx","QueryKey","Client","QueryOptions","Fragment","Query","MutationKey","Mutation"],"mappings":"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","file":"chunk-GO7HPDQP.cjs","sourcesContent":["import { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { Query, QueryOptions } from '../components'\nimport { QueryKey } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const queryGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-query',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = typeof options.query === 'boolean' ? true : options.query?.methods.some((method) => operation.method === method)\n const isMutation = difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some(\n (method) => operation.method === method,\n )\n const importPath = options.query ? options.query.importPath : 'swr/mutation'\n\n const query = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const client = {\n name: getName(operation, { type: 'function' }),\n }\n\n const queryOptions = {\n name: getName(operation, { type: 'function', suffix: 'QueryOptions' }),\n }\n const queryKey = {\n name: getName(operation, { type: 'const', suffix: 'QueryKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'QueryKey' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n if (!isQuery || isMutation) {\n return null\n }\n\n return (\n <File\n baseName={query.file.baseName}\n path={query.file.path}\n meta={query.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={query.file.path} path={zod.file.path} />}\n\n <File.Import name={'client'} path={options.client.importPath} />\n <File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n {options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}\n\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={query.file.path}\n path={type.file.path}\n isTypeOnly\n />\n <QueryKey\n name={queryKey.name}\n typeName={queryKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.queryKey}\n />\n <Client\n name={client.name}\n isExportable={false}\n isIndexable={false}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n <QueryOptions\n name={queryOptions.name}\n clientName={client.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n />\n {options.query && (\n <>\n <File.Import name=\"useSWR\" path={importPath} />\n <File.Import name={['SWRResponse']} path={importPath} isTypeOnly />\n <Query\n name={query.name}\n queryOptionsName={queryOptions.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n queryKeyName={queryKey.name}\n paramsCasing={options.paramsCasing}\n queryKeyTypeName={queryKey.typeName}\n />\n </>\n )}\n </File>\n )\n },\n})\n","import { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { MutationKey } from '../components'\nimport { Mutation } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const mutationGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-mutation',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = !!options.query && options.query?.methods.some((method) => operation.method === method)\n const isMutation =\n !isQuery &&\n difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some((method) => operation.method === method)\n\n const importPath = options.mutation ? options.mutation.importPath : 'swr'\n\n const mutation = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n const client = {\n name: getName(operation, { type: 'function' }),\n }\n\n const mutationKey = {\n name: getName(operation, { type: 'const', suffix: 'MutationKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'MutationKey' }),\n }\n\n if (!isMutation) {\n return null\n }\n\n return (\n <File\n baseName={mutation.file.baseName}\n path={mutation.file.path}\n meta={mutation.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={mutation.file.path} path={zod.file.path} />}\n <File.Import name=\"useSWRMutation\" path={importPath} />\n <File.Import name={['SWRMutationResponse']} path={importPath} isTypeOnly />\n <File.Import name={'client'} path={options.client.importPath} />\n <File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={mutation.file.path}\n path={type.file.path}\n isTypeOnly\n />\n\n <MutationKey\n name={mutationKey.name}\n typeName={mutationKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.mutationKey}\n />\n\n <Client\n name={client.name}\n isExportable={false}\n isIndexable={false}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n {options.mutation && (\n <Mutation\n name={mutation.name}\n clientName={client.name}\n typeName={mutation.typeName}\n typeSchemas={type.schemas}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n mutationKeyName={mutationKey.name}\n mutationKeyTypeName={mutationKey.typeName}\n />\n )}\n </File>\n )\n },\n})\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/generators/queryGenerator.tsx","../src/generators/mutationGenerator.tsx"],"names":["createReactGenerator","useApp","useOas","useOperationManager","difference","pluginTsName","pluginZodName","jsxs","File","getBanner","getFooter","jsx","Client"],"mappings":"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","file":"chunk-HDCT362M.js","sourcesContent":["import { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { Query, QueryOptions } from '../components'\nimport { QueryKey } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const queryGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-query',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = typeof options.query === 'boolean' ? true : options.query?.methods.some((method) => operation.method === method)\n const isMutation = difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some(\n (method) => operation.method === method,\n )\n const importPath = options.query ? options.query.importPath : 'swr/mutation'\n\n const query = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const client = {\n name: getName(operation, { type: 'function' }),\n }\n\n const queryOptions = {\n name: getName(operation, { type: 'function', suffix: 'QueryOptions' }),\n }\n const queryKey = {\n name: getName(operation, { type: 'const', suffix: 'QueryKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'QueryKey' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n if (!isQuery || isMutation) {\n return null\n }\n\n return (\n <File\n baseName={query.file.baseName}\n path={query.file.path}\n meta={query.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={query.file.path} path={zod.file.path} />}\n\n <File.Import name={'client'} path={options.client.importPath} />\n <File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n {options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}\n\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={query.file.path}\n path={type.file.path}\n isTypeOnly\n />\n <QueryKey\n name={queryKey.name}\n typeName={queryKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.queryKey}\n />\n <Client\n name={client.name}\n isExportable={false}\n isIndexable={false}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n <QueryOptions\n name={queryOptions.name}\n clientName={client.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n />\n {options.query && (\n <>\n <File.Import name=\"useSWR\" path={importPath} />\n <File.Import name={['SWRResponse']} path={importPath} isTypeOnly />\n <Query\n name={query.name}\n queryOptionsName={queryOptions.name}\n typeSchemas={type.schemas}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n queryKeyName={queryKey.name}\n paramsCasing={options.paramsCasing}\n queryKeyTypeName={queryKey.typeName}\n />\n </>\n )}\n </File>\n )\n },\n})\n","import { Client } from '@kubb/plugin-client/components'\nimport { createReactGenerator } from '@kubb/plugin-oas'\nimport { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'\nimport { getBanner, getFooter } from '@kubb/plugin-oas/utils'\nimport { pluginTsName } from '@kubb/plugin-ts'\nimport { pluginZodName } from '@kubb/plugin-zod'\nimport { File, useApp } from '@kubb/react'\nimport { difference } from 'remeda'\nimport { MutationKey } from '../components'\nimport { Mutation } from '../components'\nimport type { PluginSwr } from '../types'\n\nexport const mutationGenerator = createReactGenerator<PluginSwr>({\n name: 'swr-mutation',\n Operation({ options, operation }) {\n const {\n plugin: {\n options: { output },\n },\n } = useApp<PluginSwr>()\n const oas = useOas()\n const { getSchemas, getName, getFile } = useOperationManager()\n\n const isQuery = !!options.query && options.query?.methods.some((method) => operation.method === method)\n const isMutation =\n !isQuery &&\n difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some((method) => operation.method === method)\n\n const importPath = options.mutation ? options.mutation.importPath : 'swr'\n\n const mutation = {\n name: getName(operation, { type: 'function', prefix: 'use' }),\n typeName: getName(operation, { type: 'type' }),\n file: getFile(operation, { prefix: 'use' }),\n }\n\n const type = {\n file: getFile(operation, { pluginKey: [pluginTsName] }),\n //todo remove type?\n schemas: getSchemas(operation, { pluginKey: [pluginTsName], type: 'type' }),\n }\n\n const zod = {\n file: getFile(operation, { pluginKey: [pluginZodName] }),\n schemas: getSchemas(operation, { pluginKey: [pluginZodName], type: 'function' }),\n }\n\n const client = {\n name: getName(operation, { type: 'function' }),\n }\n\n const mutationKey = {\n name: getName(operation, { type: 'const', suffix: 'MutationKey' }),\n typeName: getName(operation, { type: 'type', suffix: 'MutationKey' }),\n }\n\n if (!isMutation) {\n return null\n }\n\n return (\n <File\n baseName={mutation.file.baseName}\n path={mutation.file.path}\n meta={mutation.file.meta}\n banner={getBanner({ oas, output })}\n footer={getFooter({ oas, output })}\n >\n {options.parser === 'zod' && <File.Import name={[zod.schemas.response.name]} root={mutation.file.path} path={zod.file.path} />}\n <File.Import name=\"useSWRMutation\" path={importPath} />\n <File.Import name={['SWRMutationResponse']} path={importPath} isTypeOnly />\n <File.Import name={'client'} path={options.client.importPath} />\n <File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />\n <File.Import\n name={[\n type.schemas.request?.name,\n type.schemas.response.name,\n type.schemas.pathParams?.name,\n type.schemas.queryParams?.name,\n type.schemas.headerParams?.name,\n ...(type.schemas.statusCodes?.map((item) => item.name) || []),\n ].filter(Boolean)}\n root={mutation.file.path}\n path={type.file.path}\n isTypeOnly\n />\n\n <MutationKey\n name={mutationKey.name}\n typeName={mutationKey.typeName}\n operation={operation}\n pathParamsType={options.pathParamsType}\n typeSchemas={type.schemas}\n paramsCasing={options.paramsCasing}\n transformer={options.mutationKey}\n />\n\n <Client\n name={client.name}\n isExportable={false}\n isIndexable={false}\n baseURL={options.client.baseURL}\n operation={operation}\n typeSchemas={type.schemas}\n zodSchemas={zod.schemas}\n dataReturnType={options.client.dataReturnType}\n paramsCasing={options.paramsCasing}\n paramsType={options.paramsType}\n pathParamsType={options.pathParamsType}\n parser={options.parser}\n />\n {options.mutation && (\n <Mutation\n name={mutation.name}\n clientName={client.name}\n typeName={mutation.typeName}\n typeSchemas={type.schemas}\n operation={operation}\n dataReturnType={options.client.dataReturnType}\n paramsType={options.paramsType}\n paramsCasing={options.paramsCasing}\n pathParamsType={options.pathParamsType}\n mutationKeyName={mutationKey.name}\n mutationKeyTypeName={mutationKey.typeName}\n />\n )}\n </File>\n )\n },\n})\n"]}