@kubb/plugin-oas 5.0.0-alpha.2 → 5.0.0-alpha.21

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.
Files changed (57) hide show
  1. package/dist/{createGenerator-B8BypXNu.d.ts → createGenerator-BiZ9IsdY.d.ts} +106 -58
  2. package/dist/{generators-vAAte6w6.cjs → generators-85sP4GIS.cjs} +7 -7
  3. package/dist/generators-85sP4GIS.cjs.map +1 -0
  4. package/dist/{generators-B8HiBWvT.js → generators-hPE06pZB.js} +7 -7
  5. package/dist/generators-hPE06pZB.js.map +1 -0
  6. package/dist/generators.cjs +1 -1
  7. package/dist/generators.d.ts +4 -3
  8. package/dist/generators.js +1 -1
  9. package/dist/{getFooter-Pw3tLCiV.js → getFooter-Dz4u5Mg4.js} +5 -2
  10. package/dist/getFooter-Dz4u5Mg4.js.map +1 -0
  11. package/dist/{getFooter-BBzsC616.cjs → getFooter-gshcRE1-.cjs} +5 -2
  12. package/dist/getFooter-gshcRE1-.cjs.map +1 -0
  13. package/dist/hooks.cjs +26 -45
  14. package/dist/hooks.cjs.map +1 -1
  15. package/dist/hooks.d.ts +6 -23
  16. package/dist/hooks.js +29 -47
  17. package/dist/hooks.js.map +1 -1
  18. package/dist/index.cjs +15 -15
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.ts +22 -38
  21. package/dist/index.js +14 -14
  22. package/dist/index.js.map +1 -1
  23. package/dist/{requestBody-FpiwLR1p.cjs → requestBody-BHEEK1Z3.cjs} +87 -126
  24. package/dist/requestBody-BHEEK1Z3.cjs.map +1 -0
  25. package/dist/{requestBody-DQMKhTin.js → requestBody-bs_SwfEj.js} +77 -116
  26. package/dist/requestBody-bs_SwfEj.js.map +1 -0
  27. package/dist/utils.cjs +61 -11
  28. package/dist/utils.cjs.map +1 -1
  29. package/dist/utils.d.ts +1 -1
  30. package/dist/utils.js +61 -11
  31. package/dist/utils.js.map +1 -1
  32. package/package.json +7 -7
  33. package/src/OperationGenerator.ts +15 -15
  34. package/src/SchemaGenerator.ts +17 -20
  35. package/src/generators/createGenerator.ts +12 -15
  36. package/src/generators/createReactGenerator.ts +12 -15
  37. package/src/generators/index.ts +2 -2
  38. package/src/generators/jsonGenerator.ts +3 -3
  39. package/src/generators/types.ts +5 -40
  40. package/src/hooks/index.ts +0 -1
  41. package/src/hooks/useOas.ts +5 -2
  42. package/src/hooks/useOperationManager.ts +19 -18
  43. package/src/hooks/useSchemaManager.ts +5 -4
  44. package/src/index.ts +2 -2
  45. package/src/plugin.ts +5 -5
  46. package/src/types.ts +3 -2
  47. package/src/utils/getBanner.ts +1 -1
  48. package/src/utils/getFooter.ts +1 -1
  49. package/src/utils/getParams.ts +2 -2
  50. package/src/utils.tsx +50 -137
  51. package/dist/generators-B8HiBWvT.js.map +0 -1
  52. package/dist/generators-vAAte6w6.cjs.map +0 -1
  53. package/dist/getFooter-BBzsC616.cjs.map +0 -1
  54. package/dist/getFooter-Pw3tLCiV.js.map +0 -1
  55. package/dist/requestBody-DQMKhTin.js.map +0 -1
  56. package/dist/requestBody-FpiwLR1p.cjs.map +0 -1
  57. package/src/hooks/useRootNode.ts +0 -25
package/dist/hooks.cjs CHANGED
@@ -3,8 +3,11 @@ require("./chunk-ByKO4r7w.cjs");
3
3
  let _kubb_react_fabric = require("@kubb/react-fabric");
4
4
  let _kubb_core_hooks = require("@kubb/core/hooks");
5
5
  //#region src/hooks/useOas.ts
6
+ /**
7
+ * @deprecated use schemaNode or operationNode instead
8
+ */
6
9
  function useOas() {
7
- const { meta } = (0, _kubb_react_fabric.useApp)();
10
+ const { meta } = (0, _kubb_react_fabric.useFabric)();
8
11
  return meta.oas;
9
12
  }
10
13
  //#endregion
@@ -14,9 +17,10 @@ function useOas() {
14
17
  */
15
18
  function useOperationManager(generator) {
16
19
  const plugin = (0, _kubb_core_hooks.usePlugin)();
17
- const pluginManager = (0, _kubb_core_hooks.usePluginManager)();
18
- const getName = (operation, { prefix = "", suffix = "", pluginName = plugin.name, type }) => {
19
- return pluginManager.resolveName({
20
+ const driver = (0, _kubb_core_hooks.useDriver)();
21
+ const defaultPluginName = plugin.name;
22
+ const getName = (operation, { prefix = "", suffix = "", pluginName = defaultPluginName, type }) => {
23
+ return driver.resolveName({
20
24
  name: `${prefix} ${operation.getOperationId()} ${suffix}`,
21
25
  pluginName,
22
26
  type
@@ -24,19 +28,19 @@ function useOperationManager(generator) {
24
28
  };
25
29
  const getGroup = (operation) => {
26
30
  return {
27
- tag: operation.getTags().at(0)?.name,
31
+ tag: operation.getTags().at(0)?.name ?? "default",
28
32
  path: operation.path
29
33
  };
30
34
  };
31
35
  const getSchemas = (operation, params) => {
32
36
  if (!generator) throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`);
33
- return generator.getSchemas(operation, { resolveName: (name) => pluginManager.resolveName({
37
+ return generator.getSchemas(operation, { resolveName: (name) => driver.resolveName({
34
38
  name,
35
- pluginName: params?.pluginName,
39
+ pluginName: params?.pluginName ?? defaultPluginName,
36
40
  type: params?.type
37
41
  }) });
38
42
  };
39
- const getFile = (operation, { prefix, suffix, pluginName = plugin.name, extname = ".ts" } = {}) => {
43
+ const getFile = (operation, { prefix, suffix, pluginName = defaultPluginName, extname = ".ts" } = {}) => {
40
44
  const name = getName(operation, {
41
45
  type: "file",
42
46
  pluginName,
@@ -44,7 +48,7 @@ function useOperationManager(generator) {
44
48
  suffix
45
49
  });
46
50
  const group = getGroup(operation);
47
- const file = pluginManager.getFile({
51
+ const file = driver.getFile({
48
52
  name,
49
53
  extname,
50
54
  pluginName,
@@ -64,12 +68,12 @@ function useOperationManager(generator) {
64
68
  }
65
69
  };
66
70
  };
67
- const groupSchemasByName = (operation, { pluginName = plugin.name, type }) => {
71
+ const groupSchemasByName = (operation, { pluginName = defaultPluginName, type }) => {
68
72
  if (!generator) throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`);
69
- const schemas = generator.getSchemas(operation);
73
+ const schemas = getSchemas(operation);
70
74
  const errors = (schemas.errors || []).reduce((prev, acc) => {
71
75
  if (!acc.statusCode) return prev;
72
- prev[acc.statusCode] = pluginManager.resolveName({
76
+ prev[acc.statusCode] = driver.resolveName({
73
77
  name: acc.name,
74
78
  pluginName,
75
79
  type
@@ -78,7 +82,7 @@ function useOperationManager(generator) {
78
82
  }, {});
79
83
  const responses = (schemas.responses || []).reduce((prev, acc) => {
80
84
  if (!acc.statusCode) return prev;
81
- prev[acc.statusCode] = pluginManager.resolveName({
85
+ prev[acc.statusCode] = driver.resolveName({
82
86
  name: acc.name,
83
87
  pluginName,
84
88
  type
@@ -86,23 +90,23 @@ function useOperationManager(generator) {
86
90
  return prev;
87
91
  }, {});
88
92
  return {
89
- request: schemas.request?.name ? pluginManager.resolveName({
93
+ request: schemas.request?.name ? driver.resolveName({
90
94
  name: schemas.request.name,
91
95
  pluginName,
92
96
  type
93
97
  }) : void 0,
94
98
  parameters: {
95
- path: schemas.pathParams?.name ? pluginManager.resolveName({
99
+ path: schemas.pathParams?.name ? driver.resolveName({
96
100
  name: schemas.pathParams.name,
97
101
  pluginName,
98
102
  type
99
103
  }) : void 0,
100
- query: schemas.queryParams?.name ? pluginManager.resolveName({
104
+ query: schemas.queryParams?.name ? driver.resolveName({
101
105
  name: schemas.queryParams.name,
102
106
  pluginName,
103
107
  type
104
108
  }) : void 0,
105
- header: schemas.headerParams?.name ? pluginManager.resolveName({
109
+ header: schemas.headerParams?.name ? driver.resolveName({
106
110
  name: schemas.headerParams.name,
107
111
  pluginName,
108
112
  type
@@ -110,7 +114,7 @@ function useOperationManager(generator) {
110
114
  },
111
115
  responses: {
112
116
  ...responses,
113
- ["default"]: pluginManager.resolveName({
117
+ ["default"]: driver.resolveName({
114
118
  name: schemas.response.name,
115
119
  pluginName,
116
120
  type
@@ -129,38 +133,16 @@ function useOperationManager(generator) {
129
133
  };
130
134
  }
131
135
  //#endregion
132
- //#region src/hooks/useRootNode.ts
133
- /**
134
- * Returns the universal `@kubb/ast` `RootNode` produced by the configured adapter.
135
- *
136
- * Use this hook inside generator components when you want to consume the
137
- * format-agnostic AST directly instead of going through `useOas()`.
138
- *
139
- * Returns `undefined` when no adapter was configured (legacy OAS-only mode).
140
- *
141
- * @example
142
- * ```tsx
143
- * function MyComponent() {
144
- * const rootNode = useRootNode()
145
- * if (!rootNode) return null
146
- * return <>{rootNode.schemas.map(s => <Schema key={s.name} node={s} />)}</>
147
- * }
148
- * ```
149
- */
150
- function useRootNode() {
151
- const { meta } = (0, _kubb_react_fabric.useApp)();
152
- return meta.pluginManager?.rootNode;
153
- }
154
- //#endregion
155
136
  //#region src/hooks/useSchemaManager.ts
156
137
  /**
157
138
  * `useSchemaManager` returns helper functions to get the schema file and schema name.
139
+ * @deprecated
158
140
  */
159
141
  function useSchemaManager() {
160
142
  const plugin = (0, _kubb_core_hooks.usePlugin)();
161
- const pluginManager = (0, _kubb_core_hooks.usePluginManager)();
143
+ const driver = (0, _kubb_core_hooks.useDriver)();
162
144
  const getName = (name, { pluginName = plugin.name, type }) => {
163
- return pluginManager.resolveName({
145
+ return driver.resolveName({
164
146
  name,
165
147
  pluginName,
166
148
  type
@@ -171,7 +153,7 @@ function useSchemaManager() {
171
153
  type: "file",
172
154
  pluginName
173
155
  });
174
- const file = pluginManager.getFile({
156
+ const file = driver.getFile({
175
157
  name: resolvedName,
176
158
  extname,
177
159
  pluginName,
@@ -198,7 +180,6 @@ function useSchemaManager() {
198
180
  //#endregion
199
181
  exports.useOas = useOas;
200
182
  exports.useOperationManager = useOperationManager;
201
- exports.useRootNode = useRootNode;
202
183
  exports.useSchemaManager = useSchemaManager;
203
184
 
204
185
  //# sourceMappingURL=hooks.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.cjs","names":[],"sources":["../src/hooks/useOas.ts","../src/hooks/useOperationManager.ts","../src/hooks/useRootNode.ts","../src/hooks/useSchemaManager.ts"],"sourcesContent":["import type { Oas } from '@kubb/oas'\n\nimport { useApp } from '@kubb/react-fabric'\n\nexport function useOas(): Oas {\n const { meta } = useApp<{ oas: Oas }>()\n\n return meta.oas\n}\n","import type { FileMetaBase, PluginFactoryOptions, ResolveNameParams } from '@kubb/core'\nimport { usePlugin, usePluginManager } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\nimport type { Operation, Operation as OperationType } from '@kubb/oas'\nimport type { OperationGenerator } from '../OperationGenerator.ts'\nimport type { OperationSchemas } from '../types.ts'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\nexport type SchemaNames = {\n request: string | undefined\n parameters: {\n path: string | undefined\n query: string | undefined\n header: string | undefined\n }\n responses: { default?: string } & Record<number | string, string>\n errors: Record<number | string, string>\n}\n\ntype UseOperationManagerResult = {\n getName: (\n operation: OperationType,\n params: {\n prefix?: string\n suffix?: string\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => string\n getFile: (\n operation: OperationType,\n params?: {\n prefix?: string\n suffix?: string\n pluginName?: string\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n groupSchemasByName: (\n operation: OperationType,\n params: {\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => SchemaNames\n getSchemas: (operation: Operation, params?: { pluginName?: string; type?: ResolveNameParams['type'] }) => OperationSchemas\n getGroup: (operation: Operation) => FileMeta['group'] | undefined\n}\n\n/**\n * `useOperationManager` returns helper functions to get the operation file and operation name.\n */\nexport function useOperationManager<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions>(\n generator: Omit<OperationGenerator<TPluginOptions>, 'build'>,\n): UseOperationManagerResult {\n const plugin = usePlugin()\n const pluginManager = usePluginManager()\n\n const getName: UseOperationManagerResult['getName'] = (operation, { prefix = '', suffix = '', pluginName = plugin.name, type }) => {\n return pluginManager.resolveName({\n name: `${prefix} ${operation.getOperationId()} ${suffix}`,\n pluginName,\n type,\n })\n }\n\n const getGroup: UseOperationManagerResult['getGroup'] = (operation) => {\n return {\n tag: operation.getTags().at(0)?.name,\n path: operation.path,\n }\n }\n\n const getSchemas: UseOperationManagerResult['getSchemas'] = (operation, params) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n return generator.getSchemas(operation, {\n resolveName: (name) =>\n pluginManager.resolveName({\n name,\n pluginName: params?.pluginName,\n type: params?.type,\n }),\n })\n }\n\n const getFile: UseOperationManagerResult['getFile'] = (operation, { prefix, suffix, pluginName = plugin.name, extname = '.ts' } = {}) => {\n const name = getName(operation, { type: 'file', pluginName, prefix, suffix })\n const group = getGroup(operation)\n\n const file = pluginManager.getFile({\n name,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name,\n pluginName,\n group,\n },\n }\n }\n\n const groupSchemasByName: UseOperationManagerResult['groupSchemasByName'] = (operation, { pluginName = plugin.name, type }) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n const schemas = generator.getSchemas(operation)\n\n const errors = (schemas.errors || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = pluginManager.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n const responses = (schemas.responses || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = pluginManager.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n return {\n request: schemas.request?.name\n ? pluginManager.resolveName({\n name: schemas.request.name,\n pluginName,\n type,\n })\n : undefined,\n parameters: {\n path: schemas.pathParams?.name\n ? pluginManager.resolveName({\n name: schemas.pathParams.name,\n pluginName,\n type,\n })\n : undefined,\n query: schemas.queryParams?.name\n ? pluginManager.resolveName({\n name: schemas.queryParams.name,\n pluginName,\n type,\n })\n : undefined,\n header: schemas.headerParams?.name\n ? pluginManager.resolveName({\n name: schemas.headerParams.name,\n pluginName,\n type,\n })\n : undefined,\n },\n responses: {\n ...responses,\n ['default']: pluginManager.resolveName({\n name: schemas.response.name,\n pluginName,\n type,\n }),\n ...errors,\n },\n errors,\n }\n }\n\n return {\n getName,\n getFile,\n getSchemas,\n groupSchemasByName,\n getGroup,\n }\n}\n","import type { RootNode } from '@kubb/ast/types'\nimport { useApp } from '@kubb/react-fabric'\n\n/**\n * Returns the universal `@kubb/ast` `RootNode` produced by the configured adapter.\n *\n * Use this hook inside generator components when you want to consume the\n * format-agnostic AST directly instead of going through `useOas()`.\n *\n * Returns `undefined` when no adapter was configured (legacy OAS-only mode).\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const rootNode = useRootNode()\n * if (!rootNode) return null\n * return <>{rootNode.schemas.map(s => <Schema key={s.name} node={s} />)}</>\n * }\n * ```\n */\nexport function useRootNode(): RootNode | undefined {\n const { meta } = useApp<{ pluginManager?: { rootNode?: RootNode } }>()\n\n return meta.pluginManager?.rootNode\n}\n","import type { FileMetaBase, ResolveNameParams } from '@kubb/core'\nimport { usePlugin, usePluginManager } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\ntype UseSchemaManagerResult = {\n getName: (name: string, params: { pluginName?: string; type: ResolveNameParams['type'] }) => string\n getFile: (\n name: string,\n params?: {\n pluginName?: string\n mode?: KubbFile.Mode\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n}\n\n/**\n * `useSchemaManager` returns helper functions to get the schema file and schema name.\n */\nexport function useSchemaManager(): UseSchemaManagerResult {\n const plugin = usePlugin()\n const pluginManager = usePluginManager()\n\n const getName: UseSchemaManagerResult['getName'] = (name, { pluginName = plugin.name, type }) => {\n return pluginManager.resolveName({\n name,\n pluginName,\n type,\n })\n }\n\n const getFile: UseSchemaManagerResult['getFile'] = (name, { mode = 'split', pluginName = plugin.name, extname = '.ts', group } = {}) => {\n const resolvedName = mode === 'single' ? '' : getName(name, { type: 'file', pluginName })\n\n const file = pluginManager.getFile({\n name: resolvedName,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name: resolvedName,\n pluginName,\n },\n }\n }\n\n return {\n getName,\n getFile,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"hooks.cjs","names":[],"sources":["../src/hooks/useOas.ts","../src/hooks/useOperationManager.ts","../src/hooks/useSchemaManager.ts"],"sourcesContent":["import type { Oas } from '@kubb/oas'\n\nimport { useFabric } from '@kubb/react-fabric'\n\n/**\n * @deprecated use schemaNode or operationNode instead\n */\nexport function useOas(): Oas {\n const { meta } = useFabric<{ oas: Oas }>()\n\n return meta.oas\n}\n","import type { FileMetaBase, PluginFactoryOptions, ResolveNameParams } from '@kubb/core'\nimport { useDriver, usePlugin } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\nimport type { Operation, Operation as OperationType } from '@kubb/oas'\nimport type { OperationGenerator } from '../OperationGenerator.ts'\nimport type { OperationSchemas } from '../types.ts'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\nexport type SchemaNames = {\n request: string | undefined\n parameters: {\n path: string | undefined\n query: string | undefined\n header: string | undefined\n }\n responses: { default?: string } & Record<number | string, string>\n errors: Record<number | string, string>\n}\n\ntype UseOperationManagerResult = {\n getName: (\n operation: OperationType,\n params: {\n prefix?: string\n suffix?: string\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => string\n getFile: (\n operation: OperationType,\n params?: {\n prefix?: string\n suffix?: string\n pluginName?: string\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n groupSchemasByName: (\n operation: OperationType,\n params: {\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => SchemaNames\n getSchemas: (operation: Operation, params?: { pluginName?: string; type?: ResolveNameParams['type'] }) => OperationSchemas\n getGroup: (operation: Operation) => FileMeta['group'] | undefined\n}\n\n/**\n * `useOperationManager` returns helper functions to get the operation file and operation name.\n */\nexport function useOperationManager<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions>(\n generator: Omit<OperationGenerator<TPluginOptions>, 'build'>,\n): UseOperationManagerResult {\n const plugin = usePlugin()\n const driver = useDriver()\n const defaultPluginName = plugin.name\n\n const getName: UseOperationManagerResult['getName'] = (operation, { prefix = '', suffix = '', pluginName = defaultPluginName, type }) => {\n return driver.resolveName({\n name: `${prefix} ${operation.getOperationId()} ${suffix}`,\n pluginName,\n type,\n })\n }\n\n const getGroup: UseOperationManagerResult['getGroup'] = (operation) => {\n return {\n tag: operation.getTags().at(0)?.name ?? 'default',\n path: operation.path,\n }\n }\n\n const getSchemas: UseOperationManagerResult['getSchemas'] = (operation, params) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n return generator.getSchemas(operation, {\n resolveName: (name) =>\n driver.resolveName({\n name,\n pluginName: params?.pluginName ?? defaultPluginName,\n type: params?.type,\n }),\n })\n }\n\n const getFile: UseOperationManagerResult['getFile'] = (operation, { prefix, suffix, pluginName = defaultPluginName, extname = '.ts' } = {}) => {\n const name = getName(operation, { type: 'file', pluginName, prefix, suffix })\n const group = getGroup(operation)\n\n const file = driver.getFile({\n name,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name,\n pluginName,\n group,\n },\n }\n }\n\n const groupSchemasByName: UseOperationManagerResult['groupSchemasByName'] = (operation, { pluginName = defaultPluginName, type }) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n const schemas = getSchemas(operation)\n\n const errors = (schemas.errors || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = driver.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n const responses = (schemas.responses || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = driver.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n return {\n request: schemas.request?.name\n ? driver.resolveName({\n name: schemas.request.name,\n pluginName,\n type,\n })\n : undefined,\n parameters: {\n path: schemas.pathParams?.name\n ? driver.resolveName({\n name: schemas.pathParams.name,\n pluginName,\n type,\n })\n : undefined,\n query: schemas.queryParams?.name\n ? driver.resolveName({\n name: schemas.queryParams.name,\n pluginName,\n type,\n })\n : undefined,\n header: schemas.headerParams?.name\n ? driver.resolveName({\n name: schemas.headerParams.name,\n pluginName,\n type,\n })\n : undefined,\n },\n responses: {\n ...responses,\n ['default']: driver.resolveName({\n name: schemas.response.name,\n pluginName,\n type,\n }),\n ...errors,\n },\n errors,\n }\n }\n\n return {\n getName,\n getFile,\n getSchemas,\n groupSchemasByName,\n getGroup,\n }\n}\n","import type { FileMetaBase, ResolveNameParams } from '@kubb/core'\nimport { useDriver, usePlugin } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\ntype UseSchemaManagerResult = {\n getName: (name: string, params: { pluginName?: string; type: ResolveNameParams['type'] }) => string\n getFile: (\n name: string,\n params?: {\n pluginName?: string\n mode?: KubbFile.Mode\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n}\n\n/**\n * `useSchemaManager` returns helper functions to get the schema file and schema name.\n * @deprecated\n */\nexport function useSchemaManager(): UseSchemaManagerResult {\n const plugin = usePlugin()\n const driver = useDriver()\n\n const getName: UseSchemaManagerResult['getName'] = (name, { pluginName = plugin.name, type }) => {\n return driver.resolveName({\n name,\n pluginName,\n type,\n })\n }\n\n const getFile: UseSchemaManagerResult['getFile'] = (name, { mode = 'split', pluginName = plugin.name, extname = '.ts', group } = {}) => {\n const resolvedName = mode === 'single' ? '' : getName(name, { type: 'file', pluginName })\n\n const file = driver.getFile({\n name: resolvedName,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name: resolvedName,\n pluginName,\n },\n }\n }\n\n return {\n getName,\n getFile,\n }\n}\n"],"mappings":";;;;;;;;AAOA,SAAgB,SAAc;CAC5B,MAAM,EAAE,UAAA,GAAA,mBAAA,YAAkC;AAE1C,QAAO,KAAK;;;;;;;ACsDd,SAAgB,oBACd,WAC2B;CAC3B,MAAM,UAAA,GAAA,iBAAA,YAAoB;CAC1B,MAAM,UAAA,GAAA,iBAAA,YAAoB;CAC1B,MAAM,oBAAoB,OAAO;CAEjC,MAAM,WAAiD,WAAW,EAAE,SAAS,IAAI,SAAS,IAAI,aAAa,mBAAmB,WAAW;AACvI,SAAO,OAAO,YAAY;GACxB,MAAM,GAAG,OAAO,GAAG,UAAU,gBAAgB,CAAC,GAAG;GACjD;GACA;GACD,CAAC;;CAGJ,MAAM,YAAmD,cAAc;AACrE,SAAO;GACL,KAAK,UAAU,SAAS,CAAC,GAAG,EAAE,EAAE,QAAQ;GACxC,MAAM,UAAU;GACjB;;CAGH,MAAM,cAAuD,WAAW,WAAW;AACjF,MAAI,CAAC,UACH,OAAM,IAAI,MAAM,8EAA8E;AAGhG,SAAO,UAAU,WAAW,WAAW,EACrC,cAAc,SACZ,OAAO,YAAY;GACjB;GACA,YAAY,QAAQ,cAAc;GAClC,MAAM,QAAQ;GACf,CAAC,EACL,CAAC;;CAGJ,MAAM,WAAiD,WAAW,EAAE,QAAQ,QAAQ,aAAa,mBAAmB,UAAU,UAAU,EAAE,KAAK;EAC7I,MAAM,OAAO,QAAQ,WAAW;GAAE,MAAM;GAAQ;GAAY;GAAQ;GAAQ,CAAC;EAC7E,MAAM,QAAQ,SAAS,UAAU;EAEjC,MAAM,OAAO,OAAO,QAAQ;GAC1B;GACA;GACA;GACA,SAAS;IAAE,MAAM;IAAQ;IAAY;IAAO;GAC7C,CAAC;AAEF,SAAO;GACL,GAAG;GACH,MAAM;IACJ,GAAG,KAAK;IACR;IACA;IACA;IACD;GACF;;CAGH,MAAM,sBAAuE,WAAW,EAAE,aAAa,mBAAmB,WAAW;AACnI,MAAI,CAAC,UACH,OAAM,IAAI,MAAM,8EAA8E;EAGhG,MAAM,UAAU,WAAW,UAAU;EAErC,MAAM,UAAU,QAAQ,UAAU,EAAE,EAAE,QACnC,MAAM,QAAQ;AACb,OAAI,CAAC,IAAI,WACP,QAAO;AAGT,QAAK,IAAI,cAAc,OAAO,YAAY;IACxC,MAAM,IAAI;IACV;IACA;IACD,CAAC;AAEF,UAAO;KAET,EAAE,CACH;EAED,MAAM,aAAa,QAAQ,aAAa,EAAE,EAAE,QACzC,MAAM,QAAQ;AACb,OAAI,CAAC,IAAI,WACP,QAAO;AAGT,QAAK,IAAI,cAAc,OAAO,YAAY;IACxC,MAAM,IAAI;IACV;IACA;IACD,CAAC;AAEF,UAAO;KAET,EAAE,CACH;AAED,SAAO;GACL,SAAS,QAAQ,SAAS,OACtB,OAAO,YAAY;IACjB,MAAM,QAAQ,QAAQ;IACtB;IACA;IACD,CAAC,GACF,KAAA;GACJ,YAAY;IACV,MAAM,QAAQ,YAAY,OACtB,OAAO,YAAY;KACjB,MAAM,QAAQ,WAAW;KACzB;KACA;KACD,CAAC,GACF,KAAA;IACJ,OAAO,QAAQ,aAAa,OACxB,OAAO,YAAY;KACjB,MAAM,QAAQ,YAAY;KAC1B;KACA;KACD,CAAC,GACF,KAAA;IACJ,QAAQ,QAAQ,cAAc,OAC1B,OAAO,YAAY;KACjB,MAAM,QAAQ,aAAa;KAC3B;KACA;KACD,CAAC,GACF,KAAA;IACL;GACD,WAAW;IACT,GAAG;KACF,YAAY,OAAO,YAAY;KAC9B,MAAM,QAAQ,SAAS;KACvB;KACA;KACD,CAAC;IACF,GAAG;IACJ;GACD;GACD;;AAGH,QAAO;EACL;EACA;EACA;EACA;EACA;EACD;;;;;;;;ACrLH,SAAgB,mBAA2C;CACzD,MAAM,UAAA,GAAA,iBAAA,YAAoB;CAC1B,MAAM,UAAA,GAAA,iBAAA,YAAoB;CAE1B,MAAM,WAA8C,MAAM,EAAE,aAAa,OAAO,MAAM,WAAW;AAC/F,SAAO,OAAO,YAAY;GACxB;GACA;GACA;GACD,CAAC;;CAGJ,MAAM,WAA8C,MAAM,EAAE,OAAO,SAAS,aAAa,OAAO,MAAM,UAAU,OAAO,UAAU,EAAE,KAAK;EACtI,MAAM,eAAe,SAAS,WAAW,KAAK,QAAQ,MAAM;GAAE,MAAM;GAAQ;GAAY,CAAC;EAEzF,MAAM,OAAO,OAAO,QAAQ;GAC1B,MAAM;GACN;GACA;GACA,SAAS;IAAE,MAAM;IAAQ;IAAY;IAAO;GAC7C,CAAC;AAEF,SAAO;GACL,GAAG;GACH,MAAM;IACJ,GAAG,KAAK;IACR,MAAM;IACN;IACD;GACF;;AAGH,QAAO;EACL;EACA;EACD"}
package/dist/hooks.d.ts CHANGED
@@ -1,11 +1,13 @@
1
1
  import { t as __name } from "./chunk--u3MIqq1.js";
2
- import { _ as OperationSchemas, f as OperationGenerator } from "./createGenerator-B8BypXNu.js";
2
+ import { d as OperationGenerator, g as OperationSchemas } from "./createGenerator-BiZ9IsdY.js";
3
3
  import { Oas, Operation } from "@kubb/oas";
4
4
  import { FileMetaBase, PluginFactoryOptions, ResolveNameParams } from "@kubb/core";
5
5
  import { KubbFile } from "@kubb/fabric-core/types";
6
- import { RootNode } from "@kubb/ast/types";
7
6
 
8
7
  //#region src/hooks/useOas.d.ts
8
+ /**
9
+ * @deprecated use schemaNode or operationNode instead
10
+ */
9
11
  declare function useOas(): Oas;
10
12
  //#endregion
11
13
  //#region src/hooks/useOperationManager.d.ts
@@ -61,26 +63,6 @@ type UseOperationManagerResult = {
61
63
  */
62
64
  declare function useOperationManager<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions>(generator: Omit<OperationGenerator<TPluginOptions>, 'build'>): UseOperationManagerResult;
63
65
  //#endregion
64
- //#region src/hooks/useRootNode.d.ts
65
- /**
66
- * Returns the universal `@kubb/ast` `RootNode` produced by the configured adapter.
67
- *
68
- * Use this hook inside generator components when you want to consume the
69
- * format-agnostic AST directly instead of going through `useOas()`.
70
- *
71
- * Returns `undefined` when no adapter was configured (legacy OAS-only mode).
72
- *
73
- * @example
74
- * ```tsx
75
- * function MyComponent() {
76
- * const rootNode = useRootNode()
77
- * if (!rootNode) return null
78
- * return <>{rootNode.schemas.map(s => <Schema key={s.name} node={s} />)}</>
79
- * }
80
- * ```
81
- */
82
- declare function useRootNode(): RootNode | undefined;
83
- //#endregion
84
66
  //#region src/hooks/useSchemaManager.d.ts
85
67
  type FileMeta = FileMetaBase & {
86
68
  pluginName: string;
@@ -107,8 +89,9 @@ type UseSchemaManagerResult = {
107
89
  };
108
90
  /**
109
91
  * `useSchemaManager` returns helper functions to get the schema file and schema name.
92
+ * @deprecated
110
93
  */
111
94
  declare function useSchemaManager(): UseSchemaManagerResult;
112
95
  //#endregion
113
- export { type SchemaNames, useOas, useOperationManager, useRootNode, useSchemaManager };
96
+ export { type SchemaNames, useOas, useOperationManager, useSchemaManager };
114
97
  //# sourceMappingURL=hooks.d.ts.map
package/dist/hooks.js CHANGED
@@ -1,9 +1,12 @@
1
1
  import "./chunk--u3MIqq1.js";
2
- import { useApp } from "@kubb/react-fabric";
3
- import { usePlugin, usePluginManager } from "@kubb/core/hooks";
2
+ import { useFabric } from "@kubb/react-fabric";
3
+ import { useDriver, usePlugin } from "@kubb/core/hooks";
4
4
  //#region src/hooks/useOas.ts
5
+ /**
6
+ * @deprecated use schemaNode or operationNode instead
7
+ */
5
8
  function useOas() {
6
- const { meta } = useApp();
9
+ const { meta } = useFabric();
7
10
  return meta.oas;
8
11
  }
9
12
  //#endregion
@@ -13,9 +16,10 @@ function useOas() {
13
16
  */
14
17
  function useOperationManager(generator) {
15
18
  const plugin = usePlugin();
16
- const pluginManager = usePluginManager();
17
- const getName = (operation, { prefix = "", suffix = "", pluginName = plugin.name, type }) => {
18
- return pluginManager.resolveName({
19
+ const driver = useDriver();
20
+ const defaultPluginName = plugin.name;
21
+ const getName = (operation, { prefix = "", suffix = "", pluginName = defaultPluginName, type }) => {
22
+ return driver.resolveName({
19
23
  name: `${prefix} ${operation.getOperationId()} ${suffix}`,
20
24
  pluginName,
21
25
  type
@@ -23,19 +27,19 @@ function useOperationManager(generator) {
23
27
  };
24
28
  const getGroup = (operation) => {
25
29
  return {
26
- tag: operation.getTags().at(0)?.name,
30
+ tag: operation.getTags().at(0)?.name ?? "default",
27
31
  path: operation.path
28
32
  };
29
33
  };
30
34
  const getSchemas = (operation, params) => {
31
35
  if (!generator) throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`);
32
- return generator.getSchemas(operation, { resolveName: (name) => pluginManager.resolveName({
36
+ return generator.getSchemas(operation, { resolveName: (name) => driver.resolveName({
33
37
  name,
34
- pluginName: params?.pluginName,
38
+ pluginName: params?.pluginName ?? defaultPluginName,
35
39
  type: params?.type
36
40
  }) });
37
41
  };
38
- const getFile = (operation, { prefix, suffix, pluginName = plugin.name, extname = ".ts" } = {}) => {
42
+ const getFile = (operation, { prefix, suffix, pluginName = defaultPluginName, extname = ".ts" } = {}) => {
39
43
  const name = getName(operation, {
40
44
  type: "file",
41
45
  pluginName,
@@ -43,7 +47,7 @@ function useOperationManager(generator) {
43
47
  suffix
44
48
  });
45
49
  const group = getGroup(operation);
46
- const file = pluginManager.getFile({
50
+ const file = driver.getFile({
47
51
  name,
48
52
  extname,
49
53
  pluginName,
@@ -63,12 +67,12 @@ function useOperationManager(generator) {
63
67
  }
64
68
  };
65
69
  };
66
- const groupSchemasByName = (operation, { pluginName = plugin.name, type }) => {
70
+ const groupSchemasByName = (operation, { pluginName = defaultPluginName, type }) => {
67
71
  if (!generator) throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`);
68
- const schemas = generator.getSchemas(operation);
72
+ const schemas = getSchemas(operation);
69
73
  const errors = (schemas.errors || []).reduce((prev, acc) => {
70
74
  if (!acc.statusCode) return prev;
71
- prev[acc.statusCode] = pluginManager.resolveName({
75
+ prev[acc.statusCode] = driver.resolveName({
72
76
  name: acc.name,
73
77
  pluginName,
74
78
  type
@@ -77,7 +81,7 @@ function useOperationManager(generator) {
77
81
  }, {});
78
82
  const responses = (schemas.responses || []).reduce((prev, acc) => {
79
83
  if (!acc.statusCode) return prev;
80
- prev[acc.statusCode] = pluginManager.resolveName({
84
+ prev[acc.statusCode] = driver.resolveName({
81
85
  name: acc.name,
82
86
  pluginName,
83
87
  type
@@ -85,23 +89,23 @@ function useOperationManager(generator) {
85
89
  return prev;
86
90
  }, {});
87
91
  return {
88
- request: schemas.request?.name ? pluginManager.resolveName({
92
+ request: schemas.request?.name ? driver.resolveName({
89
93
  name: schemas.request.name,
90
94
  pluginName,
91
95
  type
92
96
  }) : void 0,
93
97
  parameters: {
94
- path: schemas.pathParams?.name ? pluginManager.resolveName({
98
+ path: schemas.pathParams?.name ? driver.resolveName({
95
99
  name: schemas.pathParams.name,
96
100
  pluginName,
97
101
  type
98
102
  }) : void 0,
99
- query: schemas.queryParams?.name ? pluginManager.resolveName({
103
+ query: schemas.queryParams?.name ? driver.resolveName({
100
104
  name: schemas.queryParams.name,
101
105
  pluginName,
102
106
  type
103
107
  }) : void 0,
104
- header: schemas.headerParams?.name ? pluginManager.resolveName({
108
+ header: schemas.headerParams?.name ? driver.resolveName({
105
109
  name: schemas.headerParams.name,
106
110
  pluginName,
107
111
  type
@@ -109,7 +113,7 @@ function useOperationManager(generator) {
109
113
  },
110
114
  responses: {
111
115
  ...responses,
112
- ["default"]: pluginManager.resolveName({
116
+ ["default"]: driver.resolveName({
113
117
  name: schemas.response.name,
114
118
  pluginName,
115
119
  type
@@ -128,38 +132,16 @@ function useOperationManager(generator) {
128
132
  };
129
133
  }
130
134
  //#endregion
131
- //#region src/hooks/useRootNode.ts
132
- /**
133
- * Returns the universal `@kubb/ast` `RootNode` produced by the configured adapter.
134
- *
135
- * Use this hook inside generator components when you want to consume the
136
- * format-agnostic AST directly instead of going through `useOas()`.
137
- *
138
- * Returns `undefined` when no adapter was configured (legacy OAS-only mode).
139
- *
140
- * @example
141
- * ```tsx
142
- * function MyComponent() {
143
- * const rootNode = useRootNode()
144
- * if (!rootNode) return null
145
- * return <>{rootNode.schemas.map(s => <Schema key={s.name} node={s} />)}</>
146
- * }
147
- * ```
148
- */
149
- function useRootNode() {
150
- const { meta } = useApp();
151
- return meta.pluginManager?.rootNode;
152
- }
153
- //#endregion
154
135
  //#region src/hooks/useSchemaManager.ts
155
136
  /**
156
137
  * `useSchemaManager` returns helper functions to get the schema file and schema name.
138
+ * @deprecated
157
139
  */
158
140
  function useSchemaManager() {
159
141
  const plugin = usePlugin();
160
- const pluginManager = usePluginManager();
142
+ const driver = useDriver();
161
143
  const getName = (name, { pluginName = plugin.name, type }) => {
162
- return pluginManager.resolveName({
144
+ return driver.resolveName({
163
145
  name,
164
146
  pluginName,
165
147
  type
@@ -170,7 +152,7 @@ function useSchemaManager() {
170
152
  type: "file",
171
153
  pluginName
172
154
  });
173
- const file = pluginManager.getFile({
155
+ const file = driver.getFile({
174
156
  name: resolvedName,
175
157
  extname,
176
158
  pluginName,
@@ -195,6 +177,6 @@ function useSchemaManager() {
195
177
  };
196
178
  }
197
179
  //#endregion
198
- export { useOas, useOperationManager, useRootNode, useSchemaManager };
180
+ export { useOas, useOperationManager, useSchemaManager };
199
181
 
200
182
  //# sourceMappingURL=hooks.js.map
package/dist/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","names":[],"sources":["../src/hooks/useOas.ts","../src/hooks/useOperationManager.ts","../src/hooks/useRootNode.ts","../src/hooks/useSchemaManager.ts"],"sourcesContent":["import type { Oas } from '@kubb/oas'\n\nimport { useApp } from '@kubb/react-fabric'\n\nexport function useOas(): Oas {\n const { meta } = useApp<{ oas: Oas }>()\n\n return meta.oas\n}\n","import type { FileMetaBase, PluginFactoryOptions, ResolveNameParams } from '@kubb/core'\nimport { usePlugin, usePluginManager } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\nimport type { Operation, Operation as OperationType } from '@kubb/oas'\nimport type { OperationGenerator } from '../OperationGenerator.ts'\nimport type { OperationSchemas } from '../types.ts'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\nexport type SchemaNames = {\n request: string | undefined\n parameters: {\n path: string | undefined\n query: string | undefined\n header: string | undefined\n }\n responses: { default?: string } & Record<number | string, string>\n errors: Record<number | string, string>\n}\n\ntype UseOperationManagerResult = {\n getName: (\n operation: OperationType,\n params: {\n prefix?: string\n suffix?: string\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => string\n getFile: (\n operation: OperationType,\n params?: {\n prefix?: string\n suffix?: string\n pluginName?: string\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n groupSchemasByName: (\n operation: OperationType,\n params: {\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => SchemaNames\n getSchemas: (operation: Operation, params?: { pluginName?: string; type?: ResolveNameParams['type'] }) => OperationSchemas\n getGroup: (operation: Operation) => FileMeta['group'] | undefined\n}\n\n/**\n * `useOperationManager` returns helper functions to get the operation file and operation name.\n */\nexport function useOperationManager<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions>(\n generator: Omit<OperationGenerator<TPluginOptions>, 'build'>,\n): UseOperationManagerResult {\n const plugin = usePlugin()\n const pluginManager = usePluginManager()\n\n const getName: UseOperationManagerResult['getName'] = (operation, { prefix = '', suffix = '', pluginName = plugin.name, type }) => {\n return pluginManager.resolveName({\n name: `${prefix} ${operation.getOperationId()} ${suffix}`,\n pluginName,\n type,\n })\n }\n\n const getGroup: UseOperationManagerResult['getGroup'] = (operation) => {\n return {\n tag: operation.getTags().at(0)?.name,\n path: operation.path,\n }\n }\n\n const getSchemas: UseOperationManagerResult['getSchemas'] = (operation, params) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n return generator.getSchemas(operation, {\n resolveName: (name) =>\n pluginManager.resolveName({\n name,\n pluginName: params?.pluginName,\n type: params?.type,\n }),\n })\n }\n\n const getFile: UseOperationManagerResult['getFile'] = (operation, { prefix, suffix, pluginName = plugin.name, extname = '.ts' } = {}) => {\n const name = getName(operation, { type: 'file', pluginName, prefix, suffix })\n const group = getGroup(operation)\n\n const file = pluginManager.getFile({\n name,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name,\n pluginName,\n group,\n },\n }\n }\n\n const groupSchemasByName: UseOperationManagerResult['groupSchemasByName'] = (operation, { pluginName = plugin.name, type }) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n const schemas = generator.getSchemas(operation)\n\n const errors = (schemas.errors || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = pluginManager.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n const responses = (schemas.responses || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = pluginManager.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n return {\n request: schemas.request?.name\n ? pluginManager.resolveName({\n name: schemas.request.name,\n pluginName,\n type,\n })\n : undefined,\n parameters: {\n path: schemas.pathParams?.name\n ? pluginManager.resolveName({\n name: schemas.pathParams.name,\n pluginName,\n type,\n })\n : undefined,\n query: schemas.queryParams?.name\n ? pluginManager.resolveName({\n name: schemas.queryParams.name,\n pluginName,\n type,\n })\n : undefined,\n header: schemas.headerParams?.name\n ? pluginManager.resolveName({\n name: schemas.headerParams.name,\n pluginName,\n type,\n })\n : undefined,\n },\n responses: {\n ...responses,\n ['default']: pluginManager.resolveName({\n name: schemas.response.name,\n pluginName,\n type,\n }),\n ...errors,\n },\n errors,\n }\n }\n\n return {\n getName,\n getFile,\n getSchemas,\n groupSchemasByName,\n getGroup,\n }\n}\n","import type { RootNode } from '@kubb/ast/types'\nimport { useApp } from '@kubb/react-fabric'\n\n/**\n * Returns the universal `@kubb/ast` `RootNode` produced by the configured adapter.\n *\n * Use this hook inside generator components when you want to consume the\n * format-agnostic AST directly instead of going through `useOas()`.\n *\n * Returns `undefined` when no adapter was configured (legacy OAS-only mode).\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const rootNode = useRootNode()\n * if (!rootNode) return null\n * return <>{rootNode.schemas.map(s => <Schema key={s.name} node={s} />)}</>\n * }\n * ```\n */\nexport function useRootNode(): RootNode | undefined {\n const { meta } = useApp<{ pluginManager?: { rootNode?: RootNode } }>()\n\n return meta.pluginManager?.rootNode\n}\n","import type { FileMetaBase, ResolveNameParams } from '@kubb/core'\nimport { usePlugin, usePluginManager } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\ntype UseSchemaManagerResult = {\n getName: (name: string, params: { pluginName?: string; type: ResolveNameParams['type'] }) => string\n getFile: (\n name: string,\n params?: {\n pluginName?: string\n mode?: KubbFile.Mode\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n}\n\n/**\n * `useSchemaManager` returns helper functions to get the schema file and schema name.\n */\nexport function useSchemaManager(): UseSchemaManagerResult {\n const plugin = usePlugin()\n const pluginManager = usePluginManager()\n\n const getName: UseSchemaManagerResult['getName'] = (name, { pluginName = plugin.name, type }) => {\n return pluginManager.resolveName({\n name,\n pluginName,\n type,\n })\n }\n\n const getFile: UseSchemaManagerResult['getFile'] = (name, { mode = 'split', pluginName = plugin.name, extname = '.ts', group } = {}) => {\n const resolvedName = mode === 'single' ? '' : getName(name, { type: 'file', pluginName })\n\n const file = pluginManager.getFile({\n name: resolvedName,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name: resolvedName,\n pluginName,\n },\n }\n }\n\n return {\n getName,\n getFile,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","names":[],"sources":["../src/hooks/useOas.ts","../src/hooks/useOperationManager.ts","../src/hooks/useSchemaManager.ts"],"sourcesContent":["import type { Oas } from '@kubb/oas'\n\nimport { useFabric } from '@kubb/react-fabric'\n\n/**\n * @deprecated use schemaNode or operationNode instead\n */\nexport function useOas(): Oas {\n const { meta } = useFabric<{ oas: Oas }>()\n\n return meta.oas\n}\n","import type { FileMetaBase, PluginFactoryOptions, ResolveNameParams } from '@kubb/core'\nimport { useDriver, usePlugin } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\nimport type { Operation, Operation as OperationType } from '@kubb/oas'\nimport type { OperationGenerator } from '../OperationGenerator.ts'\nimport type { OperationSchemas } from '../types.ts'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\nexport type SchemaNames = {\n request: string | undefined\n parameters: {\n path: string | undefined\n query: string | undefined\n header: string | undefined\n }\n responses: { default?: string } & Record<number | string, string>\n errors: Record<number | string, string>\n}\n\ntype UseOperationManagerResult = {\n getName: (\n operation: OperationType,\n params: {\n prefix?: string\n suffix?: string\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => string\n getFile: (\n operation: OperationType,\n params?: {\n prefix?: string\n suffix?: string\n pluginName?: string\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n groupSchemasByName: (\n operation: OperationType,\n params: {\n pluginName?: string\n type: ResolveNameParams['type']\n },\n ) => SchemaNames\n getSchemas: (operation: Operation, params?: { pluginName?: string; type?: ResolveNameParams['type'] }) => OperationSchemas\n getGroup: (operation: Operation) => FileMeta['group'] | undefined\n}\n\n/**\n * `useOperationManager` returns helper functions to get the operation file and operation name.\n */\nexport function useOperationManager<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions>(\n generator: Omit<OperationGenerator<TPluginOptions>, 'build'>,\n): UseOperationManagerResult {\n const plugin = usePlugin()\n const driver = useDriver()\n const defaultPluginName = plugin.name\n\n const getName: UseOperationManagerResult['getName'] = (operation, { prefix = '', suffix = '', pluginName = defaultPluginName, type }) => {\n return driver.resolveName({\n name: `${prefix} ${operation.getOperationId()} ${suffix}`,\n pluginName,\n type,\n })\n }\n\n const getGroup: UseOperationManagerResult['getGroup'] = (operation) => {\n return {\n tag: operation.getTags().at(0)?.name ?? 'default',\n path: operation.path,\n }\n }\n\n const getSchemas: UseOperationManagerResult['getSchemas'] = (operation, params) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n return generator.getSchemas(operation, {\n resolveName: (name) =>\n driver.resolveName({\n name,\n pluginName: params?.pluginName ?? defaultPluginName,\n type: params?.type,\n }),\n })\n }\n\n const getFile: UseOperationManagerResult['getFile'] = (operation, { prefix, suffix, pluginName = defaultPluginName, extname = '.ts' } = {}) => {\n const name = getName(operation, { type: 'file', pluginName, prefix, suffix })\n const group = getGroup(operation)\n\n const file = driver.getFile({\n name,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name,\n pluginName,\n group,\n },\n }\n }\n\n const groupSchemasByName: UseOperationManagerResult['groupSchemasByName'] = (operation, { pluginName = defaultPluginName, type }) => {\n if (!generator) {\n throw new Error(`useOperationManager: 'generator' parameter is required but was not provided`)\n }\n\n const schemas = getSchemas(operation)\n\n const errors = (schemas.errors || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = driver.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n const responses = (schemas.responses || []).reduce(\n (prev, acc) => {\n if (!acc.statusCode) {\n return prev\n }\n\n prev[acc.statusCode] = driver.resolveName({\n name: acc.name,\n pluginName,\n type,\n })\n\n return prev\n },\n {} as Record<number, string>,\n )\n\n return {\n request: schemas.request?.name\n ? driver.resolveName({\n name: schemas.request.name,\n pluginName,\n type,\n })\n : undefined,\n parameters: {\n path: schemas.pathParams?.name\n ? driver.resolveName({\n name: schemas.pathParams.name,\n pluginName,\n type,\n })\n : undefined,\n query: schemas.queryParams?.name\n ? driver.resolveName({\n name: schemas.queryParams.name,\n pluginName,\n type,\n })\n : undefined,\n header: schemas.headerParams?.name\n ? driver.resolveName({\n name: schemas.headerParams.name,\n pluginName,\n type,\n })\n : undefined,\n },\n responses: {\n ...responses,\n ['default']: driver.resolveName({\n name: schemas.response.name,\n pluginName,\n type,\n }),\n ...errors,\n },\n errors,\n }\n }\n\n return {\n getName,\n getFile,\n getSchemas,\n groupSchemasByName,\n getGroup,\n }\n}\n","import type { FileMetaBase, ResolveNameParams } from '@kubb/core'\nimport { useDriver, usePlugin } from '@kubb/core/hooks'\nimport type { KubbFile } from '@kubb/fabric-core/types'\n\ntype FileMeta = FileMetaBase & {\n pluginName: string\n name: string\n group?: {\n tag?: string\n path?: string\n }\n}\n\ntype UseSchemaManagerResult = {\n getName: (name: string, params: { pluginName?: string; type: ResolveNameParams['type'] }) => string\n getFile: (\n name: string,\n params?: {\n pluginName?: string\n mode?: KubbFile.Mode\n extname?: KubbFile.Extname\n group?: {\n tag?: string\n path?: string\n }\n },\n ) => KubbFile.File<FileMeta>\n}\n\n/**\n * `useSchemaManager` returns helper functions to get the schema file and schema name.\n * @deprecated\n */\nexport function useSchemaManager(): UseSchemaManagerResult {\n const plugin = usePlugin()\n const driver = useDriver()\n\n const getName: UseSchemaManagerResult['getName'] = (name, { pluginName = plugin.name, type }) => {\n return driver.resolveName({\n name,\n pluginName,\n type,\n })\n }\n\n const getFile: UseSchemaManagerResult['getFile'] = (name, { mode = 'split', pluginName = plugin.name, extname = '.ts', group } = {}) => {\n const resolvedName = mode === 'single' ? '' : getName(name, { type: 'file', pluginName })\n\n const file = driver.getFile({\n name: resolvedName,\n extname,\n pluginName,\n options: { type: 'file', pluginName, group },\n })\n\n return {\n ...file,\n meta: {\n ...file.meta,\n name: resolvedName,\n pluginName,\n },\n }\n }\n\n return {\n getName,\n getFile,\n }\n}\n"],"mappings":"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"}
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("./chunk-ByKO4r7w.cjs");
3
- const require_generators = require("./generators-vAAte6w6.cjs");
4
- const require_getFooter = require("./getFooter-BBzsC616.cjs");
5
- const require_requestBody = require("./requestBody-FpiwLR1p.cjs");
3
+ const require_generators = require("./generators-85sP4GIS.cjs");
4
+ const require_getFooter = require("./getFooter-gshcRE1-.cjs");
5
+ const require_requestBody = require("./requestBody-BHEEK1Z3.cjs");
6
6
  const require_SchemaMapper = require("./SchemaMapper-CeavHZlp.cjs");
7
7
  let node_path = require("node:path");
8
8
  node_path = require_chunk.__toESM(node_path);
@@ -228,8 +228,8 @@ var OperationGenerator = class {
228
228
  const operationTasks = operations.map(({ operation, method }) => operationLimit(async () => {
229
229
  const options = this.getOptions(operation, method);
230
230
  if (v1Generator.type === "react") {
231
- await require_requestBody.buildOperation(operation, {
232
- config: this.context.pluginManager.config,
231
+ await require_requestBody.renderOperation(operation, {
232
+ config: this.context.driver.config,
233
233
  fabric: this.context.fabric,
234
234
  Component: v1Generator.Operation,
235
235
  generator: this,
@@ -245,7 +245,7 @@ var OperationGenerator = class {
245
245
  }
246
246
  return await v1Generator.operation?.({
247
247
  generator: this,
248
- config: this.context.pluginManager.config,
248
+ config: this.context.driver.config,
249
249
  operation,
250
250
  plugin: {
251
251
  ...this.context.plugin,
@@ -258,9 +258,9 @@ var OperationGenerator = class {
258
258
  }));
259
259
  const opResultsFlat = (await Promise.all(operationTasks)).flat();
260
260
  if (v1Generator.type === "react") {
261
- await require_requestBody.buildOperations(operations.map((op) => op.operation), {
261
+ await require_requestBody.renderOperations(operations.map((op) => op.operation), {
262
262
  fabric: this.context.fabric,
263
- config: this.context.pluginManager.config,
263
+ config: this.context.driver.config,
264
264
  Component: v1Generator.Operations,
265
265
  generator: this,
266
266
  plugin: this.context.plugin
@@ -269,7 +269,7 @@ var OperationGenerator = class {
269
269
  }
270
270
  const operationsResult = await v1Generator.operations?.({
271
271
  generator: this,
272
- config: this.context.pluginManager.config,
272
+ config: this.context.driver.config,
273
273
  operations: operations.map((op) => op.operation),
274
274
  plugin: this.context.plugin
275
275
  });
@@ -281,7 +281,7 @@ var OperationGenerator = class {
281
281
  //#endregion
282
282
  //#region src/plugin.ts
283
283
  const pluginOasName = "plugin-oas";
284
- const pluginOas = (0, _kubb_core.definePlugin)((options) => {
284
+ const pluginOas = (0, _kubb_core.createPlugin)((options) => {
285
285
  const { output = { path: "schemas" }, group, validate = true, generators = [require_generators.jsonGenerator], serverIndex, serverVariables, contentType, oasClass, discriminator = "strict", collisionDetection = false } = options;
286
286
  const getOas = async ({ validate, config, events }) => {
287
287
  const oas = await (0, _kubb_oas.parseFromConfig)(config, oasClass);
@@ -368,7 +368,7 @@ const pluginOas = (0, _kubb_core.definePlugin)((options) => {
368
368
  }, {
369
369
  fabric: this.fabric,
370
370
  oas,
371
- pluginManager: this.pluginManager,
371
+ driver: this.driver,
372
372
  events: this.events,
373
373
  plugin: this.plugin,
374
374
  contentType,
@@ -381,7 +381,7 @@ const pluginOas = (0, _kubb_core.definePlugin)((options) => {
381
381
  const operationFiles = await new OperationGenerator(this.plugin.options, {
382
382
  fabric: this.fabric,
383
383
  oas,
384
- pluginManager: this.pluginManager,
384
+ driver: this.driver,
385
385
  events: this.events,
386
386
  plugin: this.plugin,
387
387
  contentType,
@@ -407,9 +407,6 @@ const createReactGenerator = require_generators.createReactGenerator;
407
407
  //#endregion
408
408
  exports.OperationGenerator = OperationGenerator;
409
409
  exports.SchemaGenerator = require_requestBody.SchemaGenerator;
410
- exports.buildOperation = require_requestBody.buildOperation;
411
- exports.buildOperations = require_requestBody.buildOperations;
412
- exports.buildSchema = require_requestBody.buildSchema;
413
410
  exports.createGenerator = createGenerator;
414
411
  exports.createParser = createParser;
415
412
  exports.createReactGenerator = createReactGenerator;
@@ -417,6 +414,9 @@ exports.findSchemaKeyword = findSchemaKeyword;
417
414
  exports.isKeyword = require_SchemaMapper.isKeyword;
418
415
  exports.pluginOas = pluginOas;
419
416
  exports.pluginOasName = pluginOasName;
417
+ exports.renderOperation = require_requestBody.renderOperation;
418
+ exports.renderOperations = require_requestBody.renderOperations;
419
+ exports.renderSchema = require_requestBody.renderSchema;
420
420
  exports.schemaKeywords = require_SchemaMapper.schemaKeywords;
421
421
 
422
422
  //# sourceMappingURL=index.cjs.map