nuxt-openapi-hyperfetch 0.3.1-beta → 0.3.2-beta

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.
@@ -62,7 +62,7 @@ export async function generateConnectors(options, logger = createClackLogger())
62
62
  const generatedNames = [];
63
63
  for (const resource of resourceMap.values()) {
64
64
  try {
65
- const code = generateConnectorFile(resource, composablesRelDir);
65
+ const code = generateConnectorFile(resource, composablesRelDir, '../..', runtimeRelDir);
66
66
  const formatted = await formatCode(code, logger);
67
67
  const fileName = connectorFileName(resource.composableName);
68
68
  const filePath = path.join(outputDir, fileName);
@@ -6,7 +6,7 @@ import type { ResourceInfo } from '../schema-analyzer/types.js';
6
6
  * @param composablesRelDir Relative path from the connector dir to the
7
7
  * useAsyncData composables dir (e.g. '../use-async-data')
8
8
  */
9
- export declare function generateConnectorFile(resource: ResourceInfo, composablesRelDir: string, sdkRelDir?: string): string;
9
+ export declare function generateConnectorFile(resource: ResourceInfo, composablesRelDir: string, sdkRelDir?: string, runtimeRelDir?: string): string;
10
10
  /**
11
11
  * Derive the output filename for a connector.
12
12
  * 'usePetsConnector' → 'use-pets-connector.ts'
@@ -33,7 +33,7 @@ function toFileName(composableName) {
33
33
  /**
34
34
  * Build all `import` lines for a resource connector.
35
35
  */
36
- function buildImports(resource, composablesRelDir, sdkRelDir) {
36
+ function buildImports(resource, composablesRelDir, sdkRelDir, runtimeRelDir) {
37
37
  const lines = [];
38
38
  // zod
39
39
  lines.push(`import { z } from 'zod';`);
@@ -49,7 +49,7 @@ function buildImports(resource, composablesRelDir, sdkRelDir) {
49
49
  if (resource.deleteEndpoint) {
50
50
  connectorTypeImports.push('DeleteConnectorReturn');
51
51
  }
52
- lines.push(`import type { ${connectorTypeImports.join(', ')} } from '#nxh/runtime/connector-types';`);
52
+ lines.push(`import type { ${connectorTypeImports.join(', ')} } from '${runtimeRelDir}/connector-types';`);
53
53
  lines.push('');
54
54
  // SDK request/response types (for the params overload signature)
55
55
  if (resource.listEndpoint) {
@@ -57,7 +57,7 @@ function buildImports(resource, composablesRelDir, sdkRelDir) {
57
57
  lines.push(`import type { ${requestTypeName} } from '${sdkRelDir}';`);
58
58
  lines.push('');
59
59
  }
60
- // runtime helpers (Nuxt alias set up by the Nuxt module)
60
+ // runtime helpers relative path works in both CLI and Nuxt module contexts
61
61
  // useListConnector is always imported to support the optional factory pattern
62
62
  const runtimeHelpers = ['useListConnector'];
63
63
  if (resource.detailEndpoint) {
@@ -70,7 +70,7 @@ function buildImports(resource, composablesRelDir, sdkRelDir) {
70
70
  runtimeHelpers.push('useDeleteConnector');
71
71
  }
72
72
  for (const helper of runtimeHelpers) {
73
- lines.push(`import { ${helper} } from '#nxh/runtime/${helper}';`);
73
+ lines.push(`import { ${helper} } from '${runtimeRelDir}/${helper}';`);
74
74
  }
75
75
  lines.push('');
76
76
  // generated useAsyncData composables
@@ -312,9 +312,9 @@ function buildFunctionBody(resource) {
312
312
  * @param composablesRelDir Relative path from the connector dir to the
313
313
  * useAsyncData composables dir (e.g. '../use-async-data')
314
314
  */
315
- export function generateConnectorFile(resource, composablesRelDir, sdkRelDir = '../..') {
315
+ export function generateConnectorFile(resource, composablesRelDir, sdkRelDir = '../..', runtimeRelDir = '../../runtime') {
316
316
  const header = generateFileHeader();
317
- const imports = buildImports(resource, composablesRelDir, sdkRelDir);
317
+ const imports = buildImports(resource, composablesRelDir, sdkRelDir, runtimeRelDir);
318
318
  const schemas = buildZodSchemas(resource);
319
319
  const columns = buildColumns(resource);
320
320
  const optionsInterface = buildOptionsInterface(resource);
@@ -70,15 +70,12 @@ export default defineNuxtModule({
70
70
  if (options.createUseAsyncDataConnectors &&
71
71
  selectedGenerators.includes('useAsyncData')) {
72
72
  const connectorsOutputDir = path.join(composablesOutputDir, 'connectors');
73
- const runtimeDir = path.join(resolvedOutput, 'runtime');
74
73
  await generateConnectors({
75
74
  inputSpec: resolvedInput,
76
75
  outputDir: connectorsOutputDir,
77
76
  composablesRelDir: '../use-async-data',
78
77
  runtimeRelDir: '../../runtime',
79
78
  }, logger);
80
- // Register #nxh alias so generated connector imports resolve
81
- nuxt.options.alias['#nxh'] = runtimeDir;
82
79
  }
83
80
  };
84
81
  // --- Hooks: dev build / production build ---
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nuxt-openapi-hyperfetch",
3
- "version": "0.3.1-beta",
3
+ "version": "0.3.2-beta",
4
4
  "description": "Nuxt useFetch, useAsyncData and Nuxt server OpenAPI generator",
5
5
  "type": "module",
6
6
  "author": "",
@@ -78,7 +78,7 @@ export async function generateConnectors(
78
78
 
79
79
  for (const resource of resourceMap.values()) {
80
80
  try {
81
- const code = generateConnectorFile(resource, composablesRelDir);
81
+ const code = generateConnectorFile(resource, composablesRelDir, '../..', runtimeRelDir);
82
82
  const formatted = await formatCode(code, logger);
83
83
  const fileName = connectorFileName(resource.composableName);
84
84
  const filePath = path.join(outputDir, fileName);
@@ -41,7 +41,7 @@ function toFileName(composableName: string): string {
41
41
  /**
42
42
  * Build all `import` lines for a resource connector.
43
43
  */
44
- function buildImports(resource: ResourceInfo, composablesRelDir: string, sdkRelDir: string): string {
44
+ function buildImports(resource: ResourceInfo, composablesRelDir: string, sdkRelDir: string, runtimeRelDir: string): string {
45
45
  const lines: string[] = [];
46
46
 
47
47
  // zod
@@ -59,7 +59,7 @@ function buildImports(resource: ResourceInfo, composablesRelDir: string, sdkRelD
59
59
  if (resource.deleteEndpoint) {
60
60
  connectorTypeImports.push('DeleteConnectorReturn');
61
61
  }
62
- lines.push(`import type { ${connectorTypeImports.join(', ')} } from '#nxh/runtime/connector-types';`);
62
+ lines.push(`import type { ${connectorTypeImports.join(', ')} } from '${runtimeRelDir}/connector-types';`);
63
63
  lines.push('');
64
64
 
65
65
  // SDK request/response types (for the params overload signature)
@@ -69,7 +69,7 @@ function buildImports(resource: ResourceInfo, composablesRelDir: string, sdkRelD
69
69
  lines.push('');
70
70
  }
71
71
 
72
- // runtime helpers (Nuxt alias set up by the Nuxt module)
72
+ // runtime helpers relative path works in both CLI and Nuxt module contexts
73
73
  // useListConnector is always imported to support the optional factory pattern
74
74
  const runtimeHelpers: string[] = ['useListConnector'];
75
75
  if (resource.detailEndpoint) {
@@ -83,7 +83,7 @@ function buildImports(resource: ResourceInfo, composablesRelDir: string, sdkRelD
83
83
  }
84
84
 
85
85
  for (const helper of runtimeHelpers) {
86
- lines.push(`import { ${helper} } from '#nxh/runtime/${helper}';`);
86
+ lines.push(`import { ${helper} } from '${runtimeRelDir}/${helper}';`);
87
87
  }
88
88
  lines.push('');
89
89
 
@@ -375,10 +375,11 @@ function buildFunctionBody(resource: ResourceInfo): string {
375
375
  export function generateConnectorFile(
376
376
  resource: ResourceInfo,
377
377
  composablesRelDir: string,
378
- sdkRelDir = '../..'
378
+ sdkRelDir = '../..',
379
+ runtimeRelDir = '../../runtime'
379
380
  ): string {
380
381
  const header = generateFileHeader();
381
- const imports = buildImports(resource, composablesRelDir, sdkRelDir);
382
+ const imports = buildImports(resource, composablesRelDir, sdkRelDir, runtimeRelDir);
382
383
  const schemas = buildZodSchemas(resource);
383
384
  const columns = buildColumns(resource);
384
385
  const optionsInterface = buildOptionsInterface(resource);
@@ -108,7 +108,6 @@ export default defineNuxtModule<ModuleOptions>({
108
108
  selectedGenerators.includes('useAsyncData')
109
109
  ) {
110
110
  const connectorsOutputDir = path.join(composablesOutputDir, 'connectors');
111
- const runtimeDir = path.join(resolvedOutput, 'runtime');
112
111
  await generateConnectors(
113
112
  {
114
113
  inputSpec: resolvedInput,
@@ -118,8 +117,6 @@ export default defineNuxtModule<ModuleOptions>({
118
117
  },
119
118
  logger
120
119
  );
121
- // Register #nxh alias so generated connector imports resolve
122
- nuxt.options.alias['#nxh'] = runtimeDir;
123
120
  }
124
121
  };
125
122