nitro-graphql 2.0.0-beta.4 → 2.0.0-beta.41

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 (168) hide show
  1. package/README.md +438 -27
  2. package/dist/cli/commands/generate.d.mts +26 -0
  3. package/dist/cli/commands/generate.mjs +196 -0
  4. package/dist/cli/commands/index.d.mts +4 -0
  5. package/dist/cli/commands/index.mjs +5 -0
  6. package/dist/cli/commands/init.d.mts +46 -0
  7. package/dist/cli/commands/init.mjs +195 -0
  8. package/dist/cli/commands/validate.d.mts +10 -0
  9. package/dist/cli/commands/validate.mjs +69 -0
  10. package/dist/cli/completions.d.mts +7 -0
  11. package/dist/cli/completions.mjs +34 -0
  12. package/dist/cli/config.d.mts +75 -0
  13. package/dist/cli/config.mjs +20 -0
  14. package/dist/cli/index.d.mts +24 -0
  15. package/dist/cli/index.mjs +253 -0
  16. package/dist/config.d.mts +2 -0
  17. package/dist/config.mjs +3 -0
  18. package/dist/core/codegen/client.d.mts +23 -0
  19. package/dist/core/codegen/client.mjs +150 -0
  20. package/dist/core/codegen/document-loader.d.mts +10 -0
  21. package/dist/core/codegen/document-loader.mjs +18 -0
  22. package/dist/core/codegen/index.d.mts +8 -0
  23. package/dist/core/codegen/index.mjs +9 -0
  24. package/dist/core/codegen/plugin.d.mts +20 -0
  25. package/dist/core/codegen/plugin.mjs +30 -0
  26. package/dist/core/codegen/runtime.d.mts +20 -0
  27. package/dist/core/codegen/runtime.mjs +60 -0
  28. package/dist/core/codegen/schema-loader.d.mts +28 -0
  29. package/dist/core/codegen/schema-loader.mjs +128 -0
  30. package/dist/core/codegen/server.d.mts +28 -0
  31. package/dist/core/codegen/server.mjs +143 -0
  32. package/dist/core/codegen/validation.d.mts +13 -0
  33. package/dist/core/codegen/validation.mjs +96 -0
  34. package/dist/core/config.d.mts +50 -0
  35. package/dist/core/config.mjs +82 -0
  36. package/dist/core/constants.d.mts +188 -0
  37. package/dist/core/constants.mjs +210 -0
  38. package/dist/core/index.d.mts +33 -0
  39. package/dist/core/index.mjs +27 -0
  40. package/dist/core/manifest.d.mts +46 -0
  41. package/dist/core/manifest.mjs +76 -0
  42. package/dist/core/scanning/ast-scanner.d.mts +28 -0
  43. package/dist/core/scanning/ast-scanner.mjs +122 -0
  44. package/dist/core/scanning/common.d.mts +37 -0
  45. package/dist/core/scanning/common.mjs +60 -0
  46. package/dist/core/scanning/directives.d.mts +10 -0
  47. package/dist/core/scanning/directives.mjs +29 -0
  48. package/dist/core/scanning/documents.d.mts +21 -0
  49. package/dist/core/scanning/documents.mjs +43 -0
  50. package/dist/core/scanning/index.d.mts +7 -0
  51. package/dist/core/scanning/index.mjs +8 -0
  52. package/dist/core/scanning/resolvers.d.mts +15 -0
  53. package/dist/core/scanning/resolvers.mjs +59 -0
  54. package/dist/core/scanning/schemas.d.mts +14 -0
  55. package/dist/core/scanning/schemas.mjs +64 -0
  56. package/dist/core/schema/builder.d.mts +53 -0
  57. package/dist/core/schema/builder.mjs +70 -0
  58. package/dist/core/schema/federation.d.mts +34 -0
  59. package/dist/core/schema/federation.mjs +40 -0
  60. package/dist/core/schema/index.d.mts +3 -0
  61. package/dist/core/schema/index.mjs +4 -0
  62. package/dist/core/types/adapter.d.mts +58 -0
  63. package/dist/core/types/codegen.d.mts +133 -0
  64. package/dist/core/types/config.d.mts +210 -0
  65. package/dist/core/types/config.mjs +1 -0
  66. package/dist/{utils/define.d.ts → core/types/define.d.mts} +3 -30
  67. package/dist/core/types/define.mjs +1 -0
  68. package/dist/core/types/index.d.mts +5 -0
  69. package/dist/core/types/index.mjs +1 -0
  70. package/dist/core/types/scanning.d.mts +69 -0
  71. package/dist/core/types/scanning.mjs +1 -0
  72. package/dist/{utils/directive-parser.d.ts → core/utils/directive-parser.d.mts} +21 -4
  73. package/dist/{utils/directive-parser.js → core/utils/directive-parser.mjs} +25 -34
  74. package/dist/core/utils/errors.d.mts +77 -0
  75. package/dist/core/utils/errors.mjs +93 -0
  76. package/dist/core/utils/file-io.d.mts +24 -0
  77. package/dist/core/utils/file-io.mjs +47 -0
  78. package/dist/core/utils/imports.d.mts +15 -0
  79. package/dist/core/utils/imports.mjs +25 -0
  80. package/dist/core/utils/index.d.mts +7 -0
  81. package/dist/core/utils/index.mjs +8 -0
  82. package/dist/core/utils/logger.d.mts +19 -0
  83. package/dist/core/utils/logger.mjs +38 -0
  84. package/dist/core/utils/ofetch-templates.d.mts +30 -0
  85. package/dist/core/utils/ofetch-templates.mjs +135 -0
  86. package/dist/core/validation/external-services.d.mts +11 -0
  87. package/dist/core/validation/external-services.mjs +34 -0
  88. package/dist/core/validation/index.d.mts +2 -0
  89. package/dist/core/validation/index.mjs +3 -0
  90. package/dist/define.d.mts +294 -0
  91. package/dist/define.mjs +323 -0
  92. package/dist/index.d.mts +6 -0
  93. package/dist/index.mjs +6 -0
  94. package/dist/nitro/adapter.d.mts +30 -0
  95. package/dist/nitro/adapter.mjs +97 -0
  96. package/dist/{utils/apollo.d.ts → nitro/apollo.d.mts} +3 -3
  97. package/dist/nitro/apollo.mjs +59 -0
  98. package/dist/nitro/codegen.d.mts +19 -0
  99. package/dist/nitro/codegen.mjs +141 -0
  100. package/dist/nitro/config.d.mts +51 -0
  101. package/dist/nitro/config.mjs +57 -0
  102. package/dist/nitro/index.d.mts +46 -0
  103. package/dist/nitro/index.mjs +65 -0
  104. package/dist/nitro/paths.d.mts +54 -0
  105. package/dist/nitro/paths.mjs +92 -0
  106. package/dist/nitro/rollup.d.mts +6 -0
  107. package/dist/nitro/rollup.mjs +95 -0
  108. package/dist/nitro/routes/apollo-server.d.mts +6 -0
  109. package/dist/nitro/routes/apollo-server.mjs +71 -0
  110. package/dist/nitro/routes/debug-template.d.mts +15 -0
  111. package/dist/nitro/routes/debug-template.mjs +385 -0
  112. package/dist/nitro/routes/debug.d.mts +55 -0
  113. package/dist/nitro/routes/debug.mjs +102 -0
  114. package/dist/nitro/routes/graphql-yoga.d.mts +6 -0
  115. package/dist/nitro/routes/graphql-yoga.mjs +62 -0
  116. package/dist/nitro/routes/health.d.mts +10 -0
  117. package/dist/{routes/health.js → nitro/routes/health.mjs} +4 -3
  118. package/dist/nitro/setup/extend-loader.d.mts +19 -0
  119. package/dist/nitro/setup/extend-loader.mjs +129 -0
  120. package/dist/nitro/setup/file-watcher.d.mts +16 -0
  121. package/dist/nitro/setup/file-watcher.mjs +98 -0
  122. package/dist/nitro/setup/logging.d.mts +17 -0
  123. package/dist/nitro/setup/logging.mjs +66 -0
  124. package/dist/nitro/setup/rollup-integration.d.mts +16 -0
  125. package/dist/nitro/setup/rollup-integration.mjs +90 -0
  126. package/dist/nitro/setup/routes.d.mts +10 -0
  127. package/dist/nitro/setup/routes.mjs +35 -0
  128. package/dist/nitro/setup/ts-config.d.mts +11 -0
  129. package/dist/nitro/setup/ts-config.mjs +69 -0
  130. package/dist/nitro/setup.d.mts +12 -0
  131. package/dist/nitro/setup.mjs +234 -0
  132. package/dist/nitro/types.d.mts +374 -0
  133. package/dist/nitro/types.mjs +1 -0
  134. package/dist/nitro/virtual/generators.d.mts +31 -0
  135. package/dist/nitro/virtual/generators.mjs +113 -0
  136. package/dist/nitro/virtual/stubs.d.mts +20 -0
  137. package/dist/nitro/virtual/stubs.mjs +31 -0
  138. package/dist/{ecosystem/nuxt.d.ts → nuxt.d.mts} +1 -1
  139. package/dist/nuxt.mjs +109 -0
  140. package/dist/{graphql/server.d.ts → stubs/index.d.mts} +5 -1
  141. package/dist/stubs/index.mjs +1 -0
  142. package/package.json +102 -77
  143. package/dist/ecosystem/nuxt.js +0 -67
  144. package/dist/graphql/index.d.ts +0 -5
  145. package/dist/index.d.ts +0 -8
  146. package/dist/index.js +0 -264
  147. package/dist/rollup.js +0 -119
  148. package/dist/routes/apollo-server.d.ts +0 -6
  149. package/dist/routes/apollo-server.js +0 -89
  150. package/dist/routes/graphql-yoga.d.ts +0 -6
  151. package/dist/routes/graphql-yoga.js +0 -91
  152. package/dist/routes/health.d.ts +0 -6
  153. package/dist/types/index.d.ts +0 -128
  154. package/dist/types/standard-schema.d.ts +0 -59
  155. package/dist/utils/apollo.js +0 -61
  156. package/dist/utils/client-codegen.d.ts +0 -38
  157. package/dist/utils/client-codegen.js +0 -290
  158. package/dist/utils/define.js +0 -57
  159. package/dist/utils/index.d.ts +0 -39
  160. package/dist/utils/index.js +0 -250
  161. package/dist/utils/server-codegen.d.ts +0 -7
  162. package/dist/utils/server-codegen.js +0 -136
  163. package/dist/utils/type-generation.d.ts +0 -7
  164. package/dist/utils/type-generation.js +0 -287
  165. package/dist/vite.d.ts +0 -25
  166. package/dist/vite.js +0 -40
  167. /package/dist/{graphql/index.js → core/types/adapter.mjs} +0 -0
  168. /package/dist/{graphql/server.js → core/types/codegen.mjs} +0 -0
package/dist/nuxt.mjs ADDED
@@ -0,0 +1,109 @@
1
+ import { getDefaultPaths, getTypesConfig, resolveFilePath } from "./nitro/paths.mjs";
2
+ import { dirname, join, relative, resolve } from "pathe";
3
+ import { existsSync, mkdirSync, writeFileSync } from "node:fs";
4
+ import { defineNuxtModule, getLayerDirectories } from "@nuxt/kit";
5
+
6
+ //#region src/nuxt.ts
7
+ var nuxt_default = defineNuxtModule({
8
+ meta: {
9
+ name: "nitro-graphql-nuxt",
10
+ configKey: "nitro-graphql-nuxt",
11
+ compatibility: { nuxt: ">=3.16.0" }
12
+ },
13
+ setup: async (_options, nuxt) => {
14
+ nuxt.hooks.hook("prepare:types", (options) => {
15
+ const mockNitro$1 = { options: {
16
+ rootDir: nuxt.options.rootDir,
17
+ buildDir: nuxt.options.buildDir,
18
+ framework: { name: "nuxt" },
19
+ graphql: nuxt.options.nitro?.graphql
20
+ } };
21
+ const placeholders$1 = getDefaultPaths(mockNitro$1);
22
+ const typesConfig$1 = getTypesConfig(mockNitro$1);
23
+ const tsconfigDir = dirname(join(nuxt.options.buildDir, "tsconfig.json"));
24
+ const relativeWithDot = (from, to) => {
25
+ const rel = relative(from, to);
26
+ return rel.startsWith(".") ? rel : `./${rel}`;
27
+ };
28
+ const clientTypesPath$1 = resolveFilePath(typesConfig$1.client, typesConfig$1.enabled, true, "{typesDir}/nitro-graphql-client.d.ts", placeholders$1);
29
+ if (clientTypesPath$1) {
30
+ const relativePath = relativeWithDot(tsconfigDir, clientTypesPath$1);
31
+ options.references.push({ path: relativePath });
32
+ options.tsConfig ??= {};
33
+ options.tsConfig.compilerOptions ??= {};
34
+ options.tsConfig.compilerOptions.paths ??= {};
35
+ options.tsConfig.compilerOptions.paths["#graphql/client"] = [relativePath];
36
+ options.tsConfig.include = options.tsConfig.include || [];
37
+ options.tsConfig.include.push(relativePath);
38
+ }
39
+ const externalServices$1 = nuxt.options.nitro?.graphql?.externalServices || [];
40
+ for (const service of externalServices$1) {
41
+ const servicePlaceholders = {
42
+ ...placeholders$1,
43
+ serviceName: service.name
44
+ };
45
+ const externalTypesPath = resolveFilePath(service.paths?.types ?? typesConfig$1.external, typesConfig$1.enabled, true, "{typesDir}/nitro-graphql-client-{serviceName}.d.ts", servicePlaceholders);
46
+ if (externalTypesPath) {
47
+ const relativePath = relativeWithDot(tsconfigDir, externalTypesPath);
48
+ options.references.push({ path: relativePath });
49
+ if (options.tsConfig.compilerOptions) options.tsConfig.compilerOptions.paths[`#graphql/client/${service.name}`] = [relativePath];
50
+ if (options.tsConfig.include) options.tsConfig.include.push(relativePath);
51
+ }
52
+ }
53
+ });
54
+ nuxt.options.alias = nuxt.options.alias || {};
55
+ const mockNitro = { options: {
56
+ rootDir: nuxt.options.rootDir,
57
+ buildDir: nuxt.options.buildDir,
58
+ framework: { name: "nuxt" },
59
+ graphql: nuxt.options.nitro?.graphql
60
+ } };
61
+ const placeholders = getDefaultPaths(mockNitro);
62
+ const typesConfig = getTypesConfig(mockNitro);
63
+ const clientTypesPath = resolveFilePath(typesConfig.client, typesConfig.enabled, true, "{typesDir}/nitro-graphql-client.d.ts", placeholders);
64
+ if (clientTypesPath) nuxt.options.alias["#graphql/client"] = clientTypesPath;
65
+ const externalServices = nuxt.options.nitro?.graphql?.externalServices || [];
66
+ for (const service of externalServices) {
67
+ const servicePlaceholders = {
68
+ ...placeholders,
69
+ serviceName: service.name
70
+ };
71
+ const externalTypesPath = resolveFilePath(service.paths?.types ?? typesConfig.external, typesConfig.enabled, true, "{typesDir}/nitro-graphql-client-{serviceName}.d.ts", servicePlaceholders);
72
+ if (externalTypesPath) nuxt.options.alias[`#graphql/client/${service.name}`] = externalTypesPath;
73
+ }
74
+ nuxt.hook("imports:dirs", (dirs) => {
75
+ const graphqlServerPath = nuxt.options.nitro?.graphql?.serverDir || resolve(nuxt.options.srcDir, "graphql");
76
+ dirs.push(graphqlServerPath);
77
+ });
78
+ nuxt.hook("nitro:config", async (nitroConfig) => {
79
+ const clientDir = join(nuxt.options.buildDir, "graphql");
80
+ const layerDirs = await getLayerDirectories(nuxt);
81
+ const layerDirectories = layerDirs.map((layer) => layer.root.replace(/\/$/, "")).filter((root) => root !== nuxt.options.rootDir);
82
+ const layerServerDirs = layerDirs.filter((layer) => layer.root !== `${nuxt.options.rootDir}/`).map((layer) => layer.server?.replace(/\/$/, "")).filter(Boolean);
83
+ const layerAppDirs = layerDirs.filter((layer) => layer.root !== `${nuxt.options.rootDir}/`).map((layer) => layer.app?.replace(/\/$/, "")).filter(Boolean);
84
+ if (!nitroConfig.graphql) nitroConfig.graphql = {};
85
+ nitroConfig.graphql.layerDirectories = layerDirectories;
86
+ nitroConfig.graphql.layerServerDirs = layerServerDirs;
87
+ nitroConfig.graphql.layerAppDirs = layerAppDirs;
88
+ if (!existsSync(resolve(nuxt.options.rootDir, "app/graphql"))) {
89
+ const defaultDir = join(clientDir, "default");
90
+ if (!existsSync(defaultDir)) mkdirSync(defaultDir, { recursive: true });
91
+ const sampleQueryFile = join(defaultDir, "queries.graphql");
92
+ if (!existsSync(sampleQueryFile)) writeFileSync(sampleQueryFile, `# Example GraphQL queries
93
+ # Add your GraphQL queries here
94
+
95
+ # query GetUser($id: ID!) {
96
+ # user(id: $id) {
97
+ # id
98
+ # name
99
+ # email
100
+ # }
101
+ # }
102
+ `, "utf-8");
103
+ }
104
+ });
105
+ }
106
+ });
107
+
108
+ //#endregion
109
+ export { nuxt_default as default };
@@ -1,4 +1,8 @@
1
- //#region src/graphql/server.d.ts
1
+ //#region src/stubs/index.d.ts
2
+ /**
3
+ * Runtime type stubs for GraphQL types
4
+ * These interfaces are replaced by generated types at build time
5
+ */
2
6
  interface StandardSchemaV1 extends Record<string, any> {}
3
7
  interface ResolversTypes extends Record<string, any> {}
4
8
  interface Resolvers extends Record<string, any> {}
@@ -0,0 +1 @@
1
+ export { };
package/package.json CHANGED
@@ -1,127 +1,143 @@
1
1
  {
2
2
  "name": "nitro-graphql",
3
3
  "type": "module",
4
- "version": "2.0.0-beta.4",
4
+ "version": "2.0.0-beta.41",
5
5
  "description": "GraphQL integration for Nitro",
6
6
  "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/productdevbook/nitro-graphql"
10
+ },
7
11
  "sideEffects": false,
8
12
  "imports": {
9
13
  "#graphql/server": {
10
- "types": "./dist/graphql/server.d.ts",
11
- "import": "./dist/graphql/server.js"
14
+ "types": "./dist/stubs/index.d.mts",
15
+ "import": "./dist/stubs/index.mjs"
16
+ },
17
+ "#nitro-graphql/graphql-config": {
18
+ "types": "./dist/nitro/virtual/stubs.d.mts",
19
+ "import": "./dist/nitro/virtual/stubs.mjs"
20
+ },
21
+ "#nitro-graphql/server-schemas": {
22
+ "types": "./dist/nitro/virtual/stubs.d.mts",
23
+ "import": "./dist/nitro/virtual/stubs.mjs"
24
+ },
25
+ "#nitro-graphql/server-resolvers": {
26
+ "types": "./dist/nitro/virtual/stubs.d.mts",
27
+ "import": "./dist/nitro/virtual/stubs.mjs"
28
+ },
29
+ "#nitro-graphql/server-directives": {
30
+ "types": "./dist/nitro/virtual/stubs.d.mts",
31
+ "import": "./dist/nitro/virtual/stubs.mjs"
32
+ },
33
+ "#nitro-graphql/module-config": {
34
+ "types": "./dist/nitro/virtual/stubs.d.mts",
35
+ "import": "./dist/nitro/virtual/stubs.mjs"
36
+ },
37
+ "#nitro-graphql/debug-info": {
38
+ "types": "./dist/nitro/virtual/stubs.d.mts",
39
+ "import": "./dist/nitro/virtual/stubs.mjs"
12
40
  }
13
41
  },
14
42
  "exports": {
15
43
  ".": {
16
- "types": "./dist/index.d.ts",
17
- "import": "./dist/index.js"
18
- },
19
- "./codegen": {
20
- "types": "./dist/codegen.d.ts",
21
- "import": "./dist/codegen.js"
44
+ "types": "./dist/index.d.mts",
45
+ "import": "./dist/index.mjs"
22
46
  },
23
- "./watcher": {
24
- "types": "./dist/watcher.d.ts",
25
- "import": "./dist/watcher.js"
47
+ "./core": {
48
+ "types": "./dist/core/index.d.mts",
49
+ "import": "./dist/core/index.mjs"
26
50
  },
27
- "./client-watcher": {
28
- "types": "./dist/client-watcher.d.ts",
29
- "import": "./dist/client-watcher.js"
51
+ "./cli": {
52
+ "types": "./dist/cli/index.d.mts",
53
+ "import": "./dist/cli/index.mjs"
30
54
  },
31
- "./context": {
32
- "types": "./dist/context.d.ts",
33
- "import": "./dist/context.js"
55
+ "./config": {
56
+ "types": "./dist/config.d.mts",
57
+ "import": "./dist/config.mjs"
34
58
  },
35
- "./utils": {
36
- "types": "./dist/utils/index.d.ts",
37
- "import": "./dist/utils/index.js"
59
+ "./define": {
60
+ "types": "./dist/define.d.mts",
61
+ "import": "./dist/define.mjs"
38
62
  },
39
- "./utils/define": {
40
- "types": "./dist/utils/define.d.ts",
41
- "import": "./dist/utils/define.js"
42
- },
43
- "./utils/apollo": {
44
- "types": "./dist/utils/apollo.d.ts",
45
- "import": "./dist/utils/apollo.js"
46
- },
47
- "./internal": {
48
- "types": "./dist/internal/index.d.ts",
49
- "import": "./dist/internal/index.js"
63
+ "./apollo": {
64
+ "types": "./dist/nitro/apollo.d.mts",
65
+ "import": "./dist/nitro/apollo.mjs"
50
66
  },
51
67
  "./nuxt": {
52
- "types": "./dist/ecosystem/nuxt.d.ts",
53
- "import": "./dist/ecosystem/nuxt.js"
54
- },
55
- "./vite": {
56
- "types": "./dist/vite.d.ts",
57
- "import": "./dist/vite.js"
68
+ "types": "./dist/nuxt.d.mts",
69
+ "import": "./dist/nuxt.mjs"
58
70
  }
59
71
  },
60
- "module": "./dist/index.js",
61
- "types": "./dist/index.d.ts",
72
+ "module": "./dist/index.mjs",
73
+ "types": "./dist/index.d.mts",
74
+ "bin": {
75
+ "nitro-graphql": "./dist/cli/index.mjs"
76
+ },
62
77
  "files": [
63
78
  "dist"
64
79
  ],
65
80
  "peerDependencies": {
66
81
  "@apollo/server": "^5.0.0",
67
- "@apollo/utils.withrequired": "^3.0.0",
68
- "@as-integrations/h3": "^2.0.0",
69
82
  "graphql": "^16.11.0",
70
- "h3": "^2.0.1-rc.2",
71
83
  "nitro": "^3.0.1-alpha.0"
72
84
  },
73
85
  "peerDependenciesMeta": {
74
86
  "@apollo/server": {
75
87
  "optional": true
76
- },
77
- "@apollo/utils.withrequired": {
78
- "optional": true
79
- },
80
- "@as-integrations/h3": {
81
- "optional": true
82
88
  }
83
89
  },
84
90
  "dependencies": {
85
- "@apollo/subgraph": "^2.11.3",
91
+ "@apollo/subgraph": "^2.12.2",
92
+ "@bomb.sh/tab": "^0.0.11",
86
93
  "@graphql-codegen/core": "^5.0.0",
87
94
  "@graphql-codegen/import-types-preset": "^3.0.1",
88
- "@graphql-codegen/typescript": "^5.0.2",
95
+ "@graphql-codegen/typed-document-node": "^6.1.5",
96
+ "@graphql-codegen/typescript": "^5.0.7",
89
97
  "@graphql-codegen/typescript-generic-sdk": "^4.0.2",
90
- "@graphql-codegen/typescript-operations": "^5.0.2",
91
- "@graphql-codegen/typescript-resolvers": "^5.1.0",
92
- "@graphql-tools/graphql-file-loader": "^8.1.2",
93
- "@graphql-tools/load": "^8.1.2",
98
+ "@graphql-codegen/typescript-operations": "^5.0.7",
99
+ "@graphql-codegen/typescript-resolvers": "^5.1.5",
100
+ "@graphql-tools/graphql-file-loader": "^8.1.8",
101
+ "@graphql-tools/load": "^8.1.7",
94
102
  "@graphql-tools/load-files": "^7.0.1",
95
- "@graphql-tools/merge": "^9.1.1",
96
- "@graphql-tools/schema": "^10.0.25",
97
- "@graphql-tools/url-loader": "^9.0.0",
98
- "@graphql-tools/utils": "^10.9.1",
99
- "chokidar": "^4.0.3",
103
+ "@graphql-tools/merge": "^9.1.6",
104
+ "@graphql-tools/schema": "^10.0.30",
105
+ "@graphql-tools/url-loader": "^9.0.5",
106
+ "@graphql-tools/utils": "^10.11.0",
107
+ "c12": "^3.3.3",
108
+ "chokidar": "^5.0.0",
109
+ "citty": "^0.1.6",
100
110
  "consola": "^3.4.2",
101
111
  "defu": "^6.1.4",
112
+ "giget": "^2.0.0",
102
113
  "graphql-config": "^5.1.5",
103
114
  "graphql-scalars": "^1.25.0",
104
- "knitwork": "^1.2.0",
115
+ "knitwork": "^1.3.0",
116
+ "mlly": "^1.8.0",
105
117
  "ohash": "^2.0.11",
106
- "oxc-parser": "^0.95.0",
118
+ "oxc-parser": "^0.106.0",
107
119
  "pathe": "^2.0.3",
108
120
  "tinyglobby": "^0.2.15"
109
121
  },
110
122
  "devDependencies": {
111
- "@antfu/eslint-config": "^6.0.0",
112
- "@nuxt/kit": "^4.1.3",
113
- "@nuxt/schema": "^4.1.3",
114
- "@types/node": "^24.7.2",
115
- "bumpp": "^10.3.1",
123
+ "@antfu/eslint-config": "^6.7.3",
124
+ "@nuxt/kit": "^4.2.2",
125
+ "@nuxt/schema": "^4.2.2",
126
+ "@types/node": "^25.0.3",
127
+ "@vitejs/devtools": "^0.0.0-alpha.16",
128
+ "@vitest/ui": "^4.0.16",
129
+ "bumpp": "^10.3.2",
116
130
  "changelogen": "^0.6.2",
117
- "crossws": "0.3.5",
118
- "eslint": "^9.37.0",
119
- "graphql": "16.11.0",
120
- "graphql-yoga": "^5.16.0",
121
- "h3": "^2.0.1-rc.2",
122
- "nitro": "^3.0.1-alpha.0",
123
- "tsdown": "^0.15.7",
124
- "typescript": "^5.9.3"
131
+ "crossws": "^0.4.1",
132
+ "eslint": "^9.39.2",
133
+ "graphql": "16.12.0",
134
+ "graphql-yoga": "5.16.2",
135
+ "nitro": "3.0.1-alpha.1",
136
+ "tsdown": "^0.18.4",
137
+ "typescript": "^5.9.3",
138
+ "vite": "8.0.0-beta.5",
139
+ "vitepress-plugin-llms": "^1.10.0",
140
+ "vitest": "^4.0.16"
125
141
  },
126
142
  "resolutions": {
127
143
  "nitro-graphql": "link:."
@@ -130,11 +146,20 @@
130
146
  "build": "tsdown",
131
147
  "dev": "tsdown --watch",
132
148
  "bumpp": "bumpp package.json",
133
- "release": "pnpm build && pnpm bumpp && pnpm publish --no-git-checks --access public",
149
+ "release": "pnpm build && pnpm bumpp",
134
150
  "playground:nitro": "cd playgrounds/nitro && pnpm install && pnpm dev",
135
151
  "playground:nuxt": "cd playgrounds/nuxt && pnpm install && pnpm dev",
136
152
  "playground:federation": "cd playgrounds/federation && pnpm install && pnpm dev",
153
+ "docs:dev": "cd .docs && pnpm install && pnpm update:metadata && pnpm dev",
154
+ "docs:build": "cd .docs && pnpm install && pnpm update:metadata && pnpm build",
155
+ "docs:preview": "cd .docs && pnpm preview",
156
+ "cli": "node ./dist/cli/index.mjs",
137
157
  "lint": "eslint .",
138
- "lint:fix": "eslint . --fix"
158
+ "lint:fix": "eslint . --fix",
159
+ "test": "vitest",
160
+ "test:ui": "vitest --ui",
161
+ "test:run": "vitest run",
162
+ "test:coverage": "vitest run --coverage",
163
+ "test:types": "tsc --noEmit"
139
164
  }
140
165
  }
@@ -1,67 +0,0 @@
1
- import { existsSync, mkdirSync, writeFileSync } from "node:fs";
2
- import { join, resolve } from "pathe";
3
- import { defineNuxtModule, getLayerDirectories } from "@nuxt/kit";
4
-
5
- //#region src/ecosystem/nuxt.ts
6
- var nuxt_default = defineNuxtModule({
7
- meta: {
8
- name: "nitro-graphql-nuxt",
9
- configKey: "nitro-graphql-nuxt",
10
- compatibility: { nuxt: ">=3.16.0" }
11
- },
12
- setup: async (_options, nuxt) => {
13
- nuxt.hooks.hook("prepare:types", (options) => {
14
- options.references.push({ path: "types/nitro-graphql-client.d.ts" });
15
- options.tsConfig ??= {};
16
- options.tsConfig.compilerOptions ??= {};
17
- options.tsConfig.compilerOptions.paths ??= {};
18
- options.tsConfig.compilerOptions.paths["#graphql/client"] = ["./types/nitro-graphql-client.d.ts"];
19
- const externalServices$1 = nuxt.options.nitro?.graphql?.externalServices || [];
20
- for (const service of externalServices$1) {
21
- options.references.push({ path: `types/nitro-graphql-client-${service.name}.d.ts` });
22
- options.tsConfig.compilerOptions.paths[`#graphql/client/${service.name}`] = [`./types/nitro-graphql-client-${service.name}.d.ts`];
23
- }
24
- options.tsConfig.include = options.tsConfig.include || [];
25
- options.tsConfig.include.push("./types/nitro-graphql-client.d.ts");
26
- for (const service of externalServices$1) options.tsConfig.include.push(`./types/nitro-graphql-client-${service.name}.d.ts`);
27
- });
28
- nuxt.options.alias = nuxt.options.alias || {};
29
- nuxt.options.alias["#graphql/client"] = join(nuxt.options.buildDir, "types/nitro-graphql-client.d.ts");
30
- const externalServices = nuxt.options.nitro?.graphql?.externalServices || [];
31
- for (const service of externalServices) nuxt.options.alias[`#graphql/client/${service.name}`] = join(nuxt.options.buildDir, `types/nitro-graphql-client-${service.name}.d.ts`);
32
- nuxt.hook("imports:dirs", (dirs) => {
33
- const graphqlServerPath = nuxt.options.nitro?.graphql?.serverDir || resolve(nuxt.options.srcDir, "graphql");
34
- dirs.push(graphqlServerPath);
35
- });
36
- nuxt.hook("nitro:config", async (nitroConfig) => {
37
- const clientDir = join(nuxt.options.buildDir, "graphql");
38
- const layerDirs = await getLayerDirectories(nuxt);
39
- const layerDirectories = layerDirs.map((layer) => layer.root.replace(/\/$/, "")).filter((root) => root !== nuxt.options.rootDir);
40
- const layerServerDirs = layerDirs.filter((layer) => layer.root !== `${nuxt.options.rootDir}/`).map((layer) => layer.server?.replace(/\/$/, "")).filter(Boolean);
41
- const layerAppDirs = layerDirs.filter((layer) => layer.root !== `${nuxt.options.rootDir}/`).map((layer) => layer.app?.replace(/\/$/, "")).filter(Boolean);
42
- if (!nitroConfig.graphql) nitroConfig.graphql = {};
43
- nitroConfig.graphql.layerDirectories = layerDirectories;
44
- nitroConfig.graphql.layerServerDirs = layerServerDirs;
45
- nitroConfig.graphql.layerAppDirs = layerAppDirs;
46
- if (!existsSync(resolve(nuxt.options.rootDir, "app/graphql"))) {
47
- const defaultDir = join(clientDir, "default");
48
- if (!existsSync(defaultDir)) mkdirSync(defaultDir, { recursive: true });
49
- const sampleQueryFile = join(defaultDir, "queries.graphql");
50
- if (!existsSync(sampleQueryFile)) writeFileSync(sampleQueryFile, `# Example GraphQL queries
51
- # Add your GraphQL queries here
52
-
53
- # query GetUser($id: ID!) {
54
- # user(id: $id) {
55
- # id
56
- # name
57
- # email
58
- # }
59
- # }
60
- `, "utf-8");
61
- }
62
- });
63
- }
64
- });
65
-
66
- //#endregion
67
- export { nuxt_default as default };
@@ -1,5 +0,0 @@
1
- //#region src/graphql/index.d.ts
2
- interface StandardSchemaV1 extends Record<string, any> {}
3
- interface ResolversTypes extends Record<string, any> {}
4
- //#endregion
5
- export { ResolversTypes, StandardSchemaV1 };
package/dist/index.d.ts DELETED
@@ -1,8 +0,0 @@
1
- import { StandardSchemaV1 } from "./types/standard-schema.js";
2
- import { CodegenClientConfig, CodegenServerConfig, ExternalGraphQLService, FederationConfig, GenImport, GenericSdkConfig, NitroGraphQLOptions } from "./types/index.js";
3
- import * as nitro_types0 from "nitro/types";
4
-
5
- //#region src/index.d.ts
6
- declare const _default: nitro_types0.NitroModule;
7
- //#endregion
8
- export { CodegenClientConfig, CodegenServerConfig, ExternalGraphQLService, FederationConfig, GenImport, GenericSdkConfig, NitroGraphQLOptions, StandardSchemaV1, _default as default };