@lewebsimple/nuxt-graphql 0.7.5 → 0.7.7

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.
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-graphql",
3
3
  "configKey": "graphql",
4
- "version": "0.7.5",
4
+ "version": "0.7.7",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "unknown"
package/dist/module.mjs CHANGED
@@ -16,7 +16,7 @@ import zodPreset from '@lewebsimple/graphql-codegen-zod';
16
16
  import { createRequire } from 'node:module';
17
17
  import { resolveCacheConfig } from '../dist/runtime/app/lib/cache-config.js';
18
18
 
19
- const version = "0.7.5";
19
+ const version = "0.7.7";
20
20
 
21
21
  const buildCache = /* @__PURE__ */ new Map();
22
22
  function getCachedLoader(baseKey, loader) {
@@ -95,8 +95,16 @@ function getContextTemplate({ paths }) {
95
95
  }
96
96
 
97
97
  const DOCUMENT_IGNORE_GLOBS = ["**/.nuxt/**", "**/.output/**", "**/dist/**", "**/node_modules/**"];
98
+ const DEFAULT_DOCUMENT_GLOBS = [
99
+ "app/**/*.{gql,ts,vue}",
100
+ "server/**/*.{gql,ts}",
101
+ "shared/**/*.{gql,ts}"
102
+ ];
98
103
  const GRAPHQL_FILE_EXTENSIONS = /* @__PURE__ */ new Set([".gql", ".graphql"]);
99
104
  const CODE_FILE_EXTENSIONS = /* @__PURE__ */ new Set([".ts", ".mts", ".cts", ".js", ".mjs", ".cjs", ".vue"]);
105
+ function getDocumentGlobs(globs) {
106
+ return [...globs ?? DEFAULT_DOCUMENT_GLOBS];
107
+ }
100
108
  async function resolveDocumentGlobs(globs, nuxt) {
101
109
  const { resolvePath } = createResolver(nuxt.options.rootDir);
102
110
  return Promise.all(
@@ -535,7 +543,7 @@ const module$1 = defineNuxtModule({
535
543
  return schema;
536
544
  });
537
545
  const documentGlobs = await resolveDocumentGlobs(
538
- options.client?.documents ?? nuxt.options._prepare ? [] : ["app/**/*.{gql,ts,vue}", "server/**/*.{gql,ts}", "shared/**/*.{gql,ts}"],
546
+ getDocumentGlobs(options.client?.documents),
539
547
  nuxt
540
548
  );
541
549
  const loadDocumentsCached = getCachedLoader(
@@ -1,5 +1,6 @@
1
+ import type { GraphQLContext } from "#graphql/context";
1
2
  /** GraphQL remote executor request. */
2
- type GraphQLRemoteExecutorRequest = {
3
+ export type GraphQLRemoteExecutorRequest<TContext extends Record<string, unknown> = GraphQLContext> = {
3
4
  /** GraphQL document node. */
4
5
  document: unknown;
5
6
  /** Operation variables. */
@@ -12,25 +13,25 @@ type GraphQLRemoteExecutorRequest = {
12
13
  headers?: Record<string, string>;
13
14
  };
14
15
  /** Execution context. */
15
- context?: unknown;
16
+ context?: TContext;
16
17
  };
17
18
  /** Remote executor hook handlers. */
18
- type GraphQLRemoteExecutorHook = {
19
+ export type GraphQLRemoteExecutorHook<TContext extends Record<string, unknown> = GraphQLContext> = {
19
20
  /** Called before sending remote request. */
20
- onRequest?: (request: GraphQLRemoteExecutorRequest, context: unknown) => void | Promise<void>;
21
+ onRequest?: (request: GraphQLRemoteExecutorRequest<TContext>, context: TContext | undefined) => void | Promise<void>;
21
22
  /** Called after receiving a result. */
22
- onResult?: (result: unknown, context: unknown) => void | Promise<void>;
23
+ onResult?: (result: unknown, context: TContext | undefined) => void | Promise<void>;
23
24
  /** Called when execution throws. */
24
- onError?: (error: unknown, context: unknown) => void | Promise<void>;
25
+ onError?: (error: unknown, context: TContext | undefined) => void | Promise<void>;
25
26
  };
26
27
  /** Remote executor factory input. */
27
- type RemoteExecutorInput = {
28
+ type RemoteExecutorInput<TContext extends Record<string, unknown> = GraphQLContext> = {
28
29
  /** Remote GraphQL endpoint URL. */
29
30
  endpoint: string;
30
31
  /** Static request headers. */
31
32
  headers: Record<string, string>;
32
33
  /** Hook handlers. */
33
- hooks: GraphQLRemoteExecutorHook[];
34
+ hooks: GraphQLRemoteExecutorHook<TContext>[];
34
35
  };
35
36
  /**
36
37
  * Create a remote GraphQL executor bound to an endpoint.
@@ -38,12 +39,12 @@ type RemoteExecutorInput = {
38
39
  * @param input Remote executor options.
39
40
  * @returns Async executor function.
40
41
  */
41
- export declare function getRemoteExecutor({ endpoint, headers, hooks }: RemoteExecutorInput): (request: GraphQLRemoteExecutorRequest) => Promise<unknown>;
42
+ export declare function getRemoteExecutor<TContext extends Record<string, unknown> = GraphQLContext>({ endpoint, headers, hooks, }: RemoteExecutorInput<TContext>): (request: GraphQLRemoteExecutorRequest<TContext>) => Promise<unknown>;
42
43
  /**
43
44
  * Define remote executor hooks with proper typing.
44
45
  *
45
46
  * @param hooks Hooks implementation.
46
47
  * @returns The same hooks object.
47
48
  */
48
- export declare function defineRemoteExecutorHooks(hooks: GraphQLRemoteExecutorHook): GraphQLRemoteExecutorHook;
49
+ export declare function defineRemoteExecutorHooks<TContext extends Record<string, unknown> = GraphQLContext>(hooks: GraphQLRemoteExecutorHook<TContext>): GraphQLRemoteExecutorHook<TContext>;
49
50
  export {};
@@ -1,5 +1,9 @@
1
1
  import { print } from "graphql";
2
- export function getRemoteExecutor({ endpoint, headers, hooks }) {
2
+ export function getRemoteExecutor({
3
+ endpoint,
4
+ headers,
5
+ hooks
6
+ }) {
3
7
  return async function execute(request) {
4
8
  const context = request.context;
5
9
  try {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lewebsimple/nuxt-graphql",
3
- "version": "0.7.5",
3
+ "version": "0.7.7",
4
4
  "description": "Opinionated Nuxt module for using GraphQL",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": "lewebsimple/nuxt-graphql",