@nxgt/shared-graphql 3.0.1 → 3.1.0

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/README.md CHANGED
@@ -255,7 +255,11 @@ describes them (`sub`, `uid`, `scope`). It is not `Principal`, which is the
255
255
  header-derived shape used by the REST services.
256
256
 
257
257
  `createYogaHono` / `honoYoga` (from this package's integrations) mount Yoga on
258
- Hono. `sandboxExplorer` serves Apollo Sandbox. Subscriptions go over Redis
258
+ Hono. `sandboxExplorer` serves Apollo Sandbox, started at the GraphQL endpoint
259
+ of the server that served the page — the request's own origin, behind a proxy
260
+ and over HTTPS alike — unless `port`, `hostname`, `protocol` or a whole
261
+ `initialEndpoint` pins it; `createYogaHono` points it at `yoga.graphqlEndpoint`.
262
+ Subscriptions go over Redis
259
263
  (`graphql-subscriptions` is re-exported). `DataLoader` is re-exported so a
260
264
  subgraph does not take a second copy.
261
265
 
package/dist/index.js CHANGED
@@ -226,19 +226,25 @@ directive @authenticated(
226
226
  ) on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM
227
227
  `;
228
228
  // src/integrations/hono.ts
229
+ import { LANGUAGE_KEY, registerLanguageSource } from "@nxgt/i18n";
229
230
  import { Hono } from "hono";
230
- import { contextStorage } from "hono/context-storage";
231
+ import { contextStorage, tryGetContext } from "hono/context-storage";
231
232
  import { createMiddleware } from "hono/factory";
232
233
  import { languageDetector } from "hono/language";
233
234
 
234
235
  // src/utils/sandbox.ts
235
236
  import { html } from "hono/html";
236
- var renderSandbox = ({
237
+ var path = (endpoint) => endpoint.replace(/^\/+/, "");
238
+ var sandboxEndpoint = ({
239
+ initialEndpoint,
237
240
  port = 8080,
238
241
  hostname = "localhost",
239
242
  graphqlEndpoint = "graphql",
240
- protocol = "http",
241
- title = "Sandbox Explorer"
243
+ protocol = "http"
244
+ }) => initialEndpoint ?? `${protocol}://${hostname}:${port}/${path(graphqlEndpoint)}`;
245
+ var renderSandbox = ({
246
+ title = "Sandbox Explorer",
247
+ ...options
242
248
  }) => html`
243
249
  <title>${title}</title>
244
250
  <div id="sandbox" style="position:absolute;top:0;right:0;bottom:0;left:0"></div>
@@ -248,7 +254,7 @@ var renderSandbox = ({
248
254
  target: "#sandbox",
249
255
  // Pass through your server href if you are embedding on an endpoint.
250
256
  // Otherwise, you can pass whatever endpoint you want Sandbox to start up with here.
251
- initialEndpoint: "${protocol}://${hostname}:${port}/${graphqlEndpoint}",
257
+ initialEndpoint: "${sandboxEndpoint(options)}",
252
258
  handleRequest: (endpointUrl, options) => {
253
259
  return fetch(endpointUrl, {
254
260
  ...options,
@@ -266,10 +272,19 @@ var renderSandbox = ({
266
272
 
267
273
  // src/integrations/hono.ts
268
274
  function sandboxExplorer(options) {
275
+ const pinned = options.port !== undefined || options.hostname !== undefined || options.protocol !== undefined || options.initialEndpoint !== undefined;
269
276
  return createMiddleware(async (ctx) => {
270
- return ctx.html(renderSandbox(options));
277
+ if (pinned)
278
+ return ctx.html(renderSandbox(options));
279
+ const origin = new URL(ctx.req.url).origin;
280
+ const endpoint = (options.graphqlEndpoint ?? "graphql").replace(/^\/+/, "");
281
+ return ctx.html(renderSandbox({ ...options, initialEndpoint: `${origin}/${endpoint}` }));
271
282
  });
272
283
  }
284
+ var honoLanguage = () => {
285
+ const language = tryGetContext()?.get(LANGUAGE_KEY);
286
+ return typeof language === "string" ? language : undefined;
287
+ };
273
288
  function honoYoga(yoga) {
274
289
  return createMiddleware(async (ctx) => {
275
290
  const response = await yoga.fetch(ctx.req.raw);
@@ -278,6 +293,7 @@ function honoYoga(yoga) {
278
293
  }
279
294
  function createYogaHono(yoga, options) {
280
295
  const app = new Hono;
296
+ registerLanguageSource(honoLanguage);
281
297
  app.use(contextStorage());
282
298
  app.use(languageDetector({
283
299
  order: ["header"],
@@ -288,7 +304,10 @@ function createYogaHono(yoga, options) {
288
304
  app.get("/health", (ctx) => {
289
305
  return ctx.json({ status: "ok" }, 200);
290
306
  });
291
- app.get(options?.sandbox?.endpoint || "sandbox", sandboxExplorer(options?.sandbox || {}));
307
+ app.get(options?.sandbox?.endpoint || "sandbox", sandboxExplorer({
308
+ graphqlEndpoint: yoga.graphqlEndpoint,
309
+ ...options?.sandbox
310
+ }));
292
311
  app.use(yoga.graphqlEndpoint, honoYoga(yoga));
293
312
  return app;
294
313
  }
@@ -1495,6 +1514,7 @@ export {
1495
1514
  requireUser,
1496
1515
  resolveOryPrincipal,
1497
1516
  resolveWsUser,
1517
+ sandboxEndpoint,
1498
1518
  sandboxExplorer,
1499
1519
  serviceUnavailableError,
1500
1520
  setupYogaWebSocketServer,
@@ -1505,5 +1525,5 @@ export {
1505
1525
  useOryAuth
1506
1526
  };
1507
1527
 
1508
- //# debugId=A1D566582D44C98864756E2164756E21
1528
+ //# debugId=62AFFF96A460B5E264756E2164756E21
1509
1529
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -10,8 +10,8 @@
10
10
  "import type { getDirective } from '@graphql-tools/utils';\nimport type { RequirementScope } from './validate';\n\n/** A field definition or a field config — whatever `getDirective` reads. */\nexport type FieldNode = Parameters<typeof getDirective>[1];\n\n/** What a schema may add to the build-time checks of `@permission`. */\nexport type ReadOptions = {\n\t/**\n\t * The namespaces of the stack's OPL document. When given, a `type`\n\t * outside it is refused at build.\n\t */\n\tnamespaces?: readonly string[];\n};\n\n/**\n * The scope a field's requirements are validated in: the message prefix, the\n * arguments the field declares — read from a field config's `args` map or a\n * definition node's `arguments` list — and the known namespaces.\n */\nexport function scopeOf(\n\tnode: FieldNode,\n\twhere: string,\n\toptions: ReadOptions,\n): RequirementScope {\n\treturn {\n\t\twhere,\n\t\targumentNames: argumentNamesOf(node),\n\t\tnamespaces: options.namespaces,\n\t};\n}\n\nfunction argumentNamesOf(node: FieldNode): string[] {\n\tconst field = node as {\n\t\targs?: Record<string, unknown> | { name: string }[];\n\t\targuments?: readonly { name: { value: string } }[];\n\t};\n\tif (Array.isArray(field.args)) return field.args.map((arg) => arg.name);\n\tif (field.args) return Object.keys(field.args);\n\treturn field.arguments?.map((arg) => arg.name.value) ?? [];\n}\n",
11
11
  "import { assertRequirement, type PermissionRequirement } from '@nxgt/ory-sdk';\nimport { assertDeclaredArgument, assertReadablePath } from './paths';\n\n/**\n * What a requirement is checked against when the schema is built.\n *\n * `namespaces` is optional: without it any namespace is taken on trust. With\n * it — the namespaces of the stack's OPL document — a misspelt `type` stops\n * the server from booting instead of answering `false` for ever, which Keto\n * does, without an error, for a namespace it does not know.\n */\nexport type RequirementScope = {\n\t/** `@permission on Query.note` — the directive and the field, for the message. */\n\twhere: string;\n\targumentNames: readonly string[];\n\tnamespaces?: readonly string[];\n};\n\n/**\n * Every mistake a requirement can carry that is visible without a request, as\n * a `TypeError` naming the field: an empty name or type, a path naming no\n * root, an argument the field does not declare, and a namespace the model\n * does not have.\n */\nexport function assertRequirementShape(\n\tpermissions: PermissionRequirement,\n\tscope: RequirementScope,\n) {\n\tconst { where, argumentNames, namespaces } = scope;\n\ttry {\n\t\tassertRequirement(permissions, where);\n\t} catch (error) {\n\t\tthrow new TypeError((error as Error).message);\n\t}\n\tfor (const group of permissions) {\n\t\tfor (const term of group) {\n\t\t\tassertReadablePath(term, where);\n\t\t\tassertDeclaredArgument(term, argumentNames, where);\n\t\t\tif (namespaces && !namespaces.includes(term.namespace)) {\n\t\t\t\tthrow new TypeError(\n\t\t\t\t\t`${where}: unknown namespace ${JSON.stringify(term.namespace)} — known: ${namespaces.join(', ')}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n}\n",
12
12
  "/**\n * The directive declarations `graphql/directives/*.graphqls` ship, as strings,\n * for a schema assembled in code rather than loaded from `SHARED_SCHEMA_PATH`\n * — an edge runtime with no file system, or a test.\n *\n * The files are the source; these are copies of their declarations, without\n * the `#` comments, and `sdl.spec.ts` holds each equal to its file once both\n * are parsed and printed. Edit the file, then this.\n */\n\n/** `@permission` and its `PermissionDenial` enum. */\nexport const PERMISSION_DIRECTIVE_SDL = `\"\"\"\nWhat a refused @permission looks like from outside.\n\"\"\"\nenum PermissionDenial {\n\t\"\"\"\n\tThe same answer as for an id that never existed, so ids cannot be probed.\n\tThe default.\n\t\"\"\"\n\tNOT_FOUND\n\n\t\"\"\"\n\tFor a permission asked of an object the caller can already see: a viewer\n\tasked to edit already knows it exists, and \"you may not change it\" is\n\thonest.\n\t\"\"\"\n\tFORBIDDEN\n}\n\n\"\"\"\nThe permission a field requires: the caller must hold the permit \\`name\\` on the\n\\`type\\` object whose id \\`id\\` points at.\n\nRepeatable, and repeated ones are AND, evaluated in declaration order — the\n404-then-403 ladder:\n\n updateNote(id: ID!, input: UpdateNoteInput!): Note!\n @permission(name: \"view\", type: \"Note\")\n @permission(name: \"edit\", type: \"Note\", onDeny: FORBIDDEN)\n\nNOT for a field that answers a LIST the caller is entitled to: fold a Keto\nquery into the database filter before the read instead.\n\"\"\"\ndirective @permission(\n\t\"\"\"\n\tThe permit asked of Keto, e.g. \"view\". A plain relation works too; Keto\n\tanswers \\`false\\`, not an error, for a name it does not know.\n\t\"\"\"\n\tname: String!\n\n\t\"\"\"\n\tThe Keto namespace, e.g. \"Note\" — from the stack's OPL document.\n\t\"\"\"\n\ttype: String!\n\n\t\"\"\"\n\tWhere the object id is read: \\`args.<path>\\` or \\`parent.<path>\\`, dotted\n\tpaths allowed, \\`args.id\\` when omitted. A value that turns out to be a LIST\n\trequires the permit on every element.\n\t\"\"\"\n\tid: String\n\n\tonDeny: PermissionDenial! = NOT_FOUND\n\n\t\"\"\"\n\tThe i18n key the denial carries, e.g. \"notes.errors.not-found\". Defaults to\n\t\\`errors.not-found\\` / \\`errors.insufficient-permissions\\`, the shared keys.\n\tSet it when the service layer words the same refusal with a domain message,\n\tso the wording does not tell a caller which layer refused.\n\t\"\"\"\n\tmessage: String\n) repeatable on FIELD_DEFINITION\n`;\n\n/**\n * Every directive `useKetoChecks` answers, for\n * `createSchema({ typeDefs: [KETO_DIRECTIVES_SDL, …] })`. Since `@check` was\n * removed in 3.0, that is `@permission` alone.\n */\nexport const KETO_DIRECTIVES_SDL = PERMISSION_DIRECTIVE_SDL;\n\n/**\n * `@authenticated`, with the `type:` `useAuthenticated` reads: any caller\n * without it, a caller of one of the types with it. Part of\n * `SHARED_TYPE_DEFS`, and not in `graphql/`: a federation subgraph loads\n * `SHARED_SCHEMA_PATH` and imports federation's own `@authenticated`, which\n * takes no argument — a shape `useAuthenticated` reads as \"any caller\".\n */\nexport const AUTHENTICATED_DIRECTIVE_SDL = `\"\"\"\nA signed-in caller — of one of the types \\`type\\` names, when it names some.\n\"\"\"\ndirective @authenticated(\n\t\"\"\"\n\tThe kinds of caller admitted: \"session\" or \"token\" by default. Any caller\n\twhen omitted.\n\t\"\"\"\n\ttype: [String!]\n) on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM\n`;\n",
13
- "import type { YogaInitialContext, YogaServerInstance } from 'graphql-yoga';\nimport { Hono } from 'hono';\nimport { contextStorage } from 'hono/context-storage';\nimport { createMiddleware } from 'hono/factory';\nimport { languageDetector } from 'hono/language';\nimport { type RenderSandboxOptions, renderSandbox } from '../utils/sandbox';\n\nexport function sandboxExplorer(options: RenderSandboxOptions) {\n\treturn createMiddleware(async (ctx) => {\n\t\treturn ctx.html(renderSandbox(options));\n\t});\n}\n\ntype HonoYogaOptions = {\n\tsandbox?: RenderSandboxOptions & { endpoint?: string };\n};\n\nexport function honoYoga<\n\tServerContext extends Partial<YogaInitialContext>,\n\tUserContext extends {},\n>(yoga: YogaServerInstance<ServerContext, UserContext>) {\n\treturn createMiddleware(async (ctx) => {\n\t\tconst response = await yoga.fetch(ctx.req.raw);\n\n\t\treturn response;\n\t});\n}\n\nexport function createYogaHono<\n\tServerContext extends Partial<YogaInitialContext>,\n\tUserContext extends {},\n>(\n\tyoga: YogaServerInstance<ServerContext, UserContext>,\n\toptions?: HonoYogaOptions,\n) {\n\tconst app = new Hono();\n\n\tapp.use(contextStorage());\n\tapp.use(\n\t\tlanguageDetector({\n\t\t\torder: ['header'],\n\t\t\tsupportedLanguages: ['en', 'fr'],\n\t\t\tfallbackLanguage: 'en',\n\t\t\tcaches: [],\n\t\t}),\n\t);\n\n\tapp.get('/health', (ctx) => {\n\t\treturn ctx.json({ status: 'ok' }, 200);\n\t});\n\n\tapp.get(\n\t\toptions?.sandbox?.endpoint || 'sandbox',\n\t\tsandboxExplorer(options?.sandbox || {}),\n\t);\n\n\tapp.use(yoga.graphqlEndpoint, honoYoga(yoga));\n\n\treturn app;\n}\n",
14
- "import { html } from 'hono/html';\n\nexport type RenderSandboxOptions = {\n\tport?: number;\n\tgraphqlEndpoint?: string;\n\tprotocol?: string;\n\thostname?: string;\n\ttitle?: string;\n};\n\nexport const renderSandbox = ({\n\tport = 8080,\n\thostname = 'localhost',\n\tgraphqlEndpoint = 'graphql',\n\tprotocol = 'http',\n\ttitle = 'Sandbox Explorer',\n}: RenderSandboxOptions) => html`\n<title>${title}</title>\n<div id=\"sandbox\" style=\"position:absolute;top:0;right:0;bottom:0;left:0\"></div>\n<script src=\"https://embeddable-sandbox.cdn.apollographql.com/_latest/embeddable-sandbox.umd.production.min.js\"></script>\n<script>\n new window.EmbeddedSandbox({\n target: \"#sandbox\",\n // Pass through your server href if you are embedding on an endpoint.\n // Otherwise, you can pass whatever endpoint you want Sandbox to start up with here.\n initialEndpoint: \"${protocol}://${hostname}:${port}/${graphqlEndpoint}\",\n handleRequest: (endpointUrl, options) => {\n return fetch(endpointUrl, {\n ...options,\n headers: {\n ...options.headers\n },\n })\n },\n hideCookieToggle: true,\n });\n // advanced options: https://www.apollographql.com/docs/studio/explorer/sandbox#embedding-sandbox\n</script>\n\n`;\n",
13
+ "import { LANGUAGE_KEY, registerLanguageSource } from '@nxgt/i18n';\nimport type { YogaInitialContext, YogaServerInstance } from 'graphql-yoga';\nimport { Hono } from 'hono';\nimport { contextStorage, tryGetContext } from 'hono/context-storage';\nimport { createMiddleware } from 'hono/factory';\nimport { languageDetector } from 'hono/language';\nimport { type RenderSandboxOptions, renderSandbox } from '../utils/sandbox';\n\n/**\n * Serves Apollo Sandbox. Given neither `port`, `hostname` nor `protocol`, it\n * starts at `graphqlEndpoint` on the server that served the page — the\n * request's own origin, behind a proxy and over HTTPS alike.\n */\nexport function sandboxExplorer(options: RenderSandboxOptions) {\n\tconst pinned =\n\t\toptions.port !== undefined ||\n\t\toptions.hostname !== undefined ||\n\t\toptions.protocol !== undefined ||\n\t\toptions.initialEndpoint !== undefined;\n\treturn createMiddleware(async (ctx) => {\n\t\tif (pinned) return ctx.html(renderSandbox(options));\n\t\tconst origin = new URL(ctx.req.url).origin;\n\t\tconst endpoint = (options.graphqlEndpoint ?? 'graphql').replace(/^\\/+/, '');\n\t\treturn ctx.html(\n\t\t\trenderSandbox({ ...options, initialEndpoint: `${origin}/${endpoint}` }),\n\t\t);\n\t});\n}\n\n/**\n * The Hono request's language, for `@nxgt/i18n`'s `getLanguage()`: the\n * `languageDetector()` below sets it, and the errors this package formats are\n * translated in it.\n *\n * `@nxgt/shared-hono`'s `honoLanguageSource`, kept twice on purpose: this\n * package does not depend on `@nxgt/shared-hono`, and an app may serve Yoga\n * without it. Registered once, whichever registers first; the registry keeps\n * one of each.\n */\nconst honoLanguage = () => {\n\tconst language: unknown = tryGetContext()?.get(LANGUAGE_KEY as never);\n\treturn typeof language === 'string' ? language : undefined;\n};\n\ntype HonoYogaOptions = {\n\tsandbox?: RenderSandboxOptions & { endpoint?: string };\n};\n\nexport function honoYoga<\n\tServerContext extends Partial<YogaInitialContext>,\n\tUserContext extends {},\n>(yoga: YogaServerInstance<ServerContext, UserContext>) {\n\treturn createMiddleware(async (ctx) => {\n\t\tconst response = await yoga.fetch(ctx.req.raw);\n\n\t\treturn response;\n\t});\n}\n\nexport function createYogaHono<\n\tServerContext extends Partial<YogaInitialContext>,\n\tUserContext extends {},\n>(\n\tyoga: YogaServerInstance<ServerContext, UserContext>,\n\toptions?: HonoYogaOptions,\n) {\n\tconst app = new Hono();\n\n\tregisterLanguageSource(honoLanguage);\n\tapp.use(contextStorage());\n\tapp.use(\n\t\tlanguageDetector({\n\t\t\torder: ['header'],\n\t\t\tsupportedLanguages: ['en', 'fr'],\n\t\t\tfallbackLanguage: 'en',\n\t\t\tcaches: [],\n\t\t}),\n\t);\n\n\tapp.get('/health', (ctx) => {\n\t\treturn ctx.json({ status: 'ok' }, 200);\n\t});\n\n\tapp.get(\n\t\toptions?.sandbox?.endpoint || 'sandbox',\n\t\tsandboxExplorer({\n\t\t\tgraphqlEndpoint: yoga.graphqlEndpoint,\n\t\t\t...options?.sandbox,\n\t\t}),\n\t);\n\n\tapp.use(yoga.graphqlEndpoint, honoYoga(yoga));\n\n\treturn app;\n}\n",
14
+ "import { html } from 'hono/html';\n\nexport type RenderSandboxOptions = {\n\tport?: number;\n\tgraphqlEndpoint?: string;\n\tprotocol?: string;\n\thostname?: string;\n\ttitle?: string;\n\t/**\n\t * The whole URL the Sandbox starts at. `sandboxExplorer` sets it from\n\t * the request when neither `port`, `hostname` nor `protocol` is given,\n\t * so the page asks the server it was served by — a proxy, HTTPS and a\n\t * prefix included — and not `localhost:8080`.\n\t */\n\tinitialEndpoint?: string;\n};\n\n/** `graphqlEndpoint` without its leading slashes: it is joined after one. */\nconst path = (endpoint: string) => endpoint.replace(/^\\/+/, '');\n\n/**\n * The URL the Sandbox starts at: `initialEndpoint`, else the one `port`,\n * `hostname` and `protocol` compose — `http://localhost:8080/graphql` by\n * default, as before 3.1.\n */\nexport const sandboxEndpoint = ({\n\tinitialEndpoint,\n\tport = 8080,\n\thostname = 'localhost',\n\tgraphqlEndpoint = 'graphql',\n\tprotocol = 'http',\n}: RenderSandboxOptions): string =>\n\tinitialEndpoint ??\n\t`${protocol}://${hostname}:${port}/${path(graphqlEndpoint)}`;\n\nexport const renderSandbox = ({\n\ttitle = 'Sandbox Explorer',\n\t...options\n}: RenderSandboxOptions) => html`\n<title>${title}</title>\n<div id=\"sandbox\" style=\"position:absolute;top:0;right:0;bottom:0;left:0\"></div>\n<script src=\"https://embeddable-sandbox.cdn.apollographql.com/_latest/embeddable-sandbox.umd.production.min.js\"></script>\n<script>\n new window.EmbeddedSandbox({\n target: \"#sandbox\",\n // Pass through your server href if you are embedding on an endpoint.\n // Otherwise, you can pass whatever endpoint you want Sandbox to start up with here.\n initialEndpoint: \"${sandboxEndpoint(options)}\",\n handleRequest: (endpointUrl, options) => {\n return fetch(endpointUrl, {\n ...options,\n headers: {\n ...options.headers\n },\n })\n },\n hideCookieToggle: true,\n });\n // advanced options: https://www.apollographql.com/docs/studio/explorer/sandbox#embedding-sandbox\n</script>\n\n`;\n",
15
15
  "import { MapperKind, mapSchema } from '@graphql-tools/utils';\nimport { ErrorCode } from '@nxgt/shared-exceptions';\nimport {\n\ttype GraphQLFieldConfig,\n\ttype GraphQLSchema,\n\tgetNamedType,\n\tisEnumType,\n\tisObjectType,\n\tisScalarType,\n} from 'graphql';\nimport {\n\ttype AuthenticatedOptions,\n\tCALLER_TYPES,\n\ttype CallerRequirement,\n\tcombineRequirements,\n\treadAuthenticated,\n} from '../directives/authenticated';\nimport type { PrincipalContext } from '../types';\nimport { denial } from '../utils/errors/denial';\nimport { guardField, isGuarded } from './field-guard';\nimport type { OryContext } from './ory-auth';\n\ntype FieldConfig = GraphQLFieldConfig<unknown, unknown>;\n\nconst MARK = '@nxgt/shared-graphql:authenticated';\n\n/**\n * Wraps every object field that an `@authenticated` applies to — on the field,\n * on its type, on one of its type's interfaces or on that interface's field,\n * or on the scalar or enum it returns — so the caller is checked before its\n * resolver (and a subscription's `subscribe`) runs: none is\n * `UNAUTHENTICATED` (401), one of a type no `type:` names is `FORBIDDEN`\n * (403). Every one that applies must hold.\n *\n * Read and validated when the schema is built: `type: []`, a type outside\n * `options.types` (`session`, `token` by default) and restrictions with no\n * type in common each throw a `TypeError` naming `Type.field`.\n *\n * The caller is `context.user`, which `useOryAuth` and `useAuth` set; its\n * type is `context.ory.kind`, or `context.user.tokenType` without Ory. A field\n * already guarded is left alone, and a schema with none left to guard is\n * returned as it is, so the plugin's `onSchemaChange` settles.\n */\nexport function applyAuthenticated(\n\tschema: GraphQLSchema,\n\toptions: AuthenticatedOptions = {},\n): GraphQLSchema {\n\tconst known = options.types ?? CALLER_TYPES;\n\tlet guardedNow = 0;\n\tconst mapped = mapSchema(schema, {\n\t\t[MapperKind.OBJECT_FIELD]: (fieldConfig, fieldName, typeName) => {\n\t\t\tconst where = `${typeName}.${fieldName}`;\n\t\t\tconst requirement = requirementOf(schema, fieldConfig, where, known);\n\t\t\tif (!requirement || isGuarded(fieldConfig, MARK)) return fieldConfig;\n\t\t\tguardedNow += 1;\n\t\t\treturn guarded(fieldConfig, requirement);\n\t\t},\n\t});\n\treturn guardedNow > 0 ? mapped : schema;\n}\n\n/** Every `@authenticated` that applies to `Type.field`, combined. */\nfunction requirementOf(\n\tschema: GraphQLSchema,\n\tfieldConfig: FieldConfig,\n\twhere: string,\n\tknown: readonly string[],\n): CallerRequirement | null {\n\tconst [typeName = '', fieldName = ''] = where.split('.');\n\tconst type = schema.getType(typeName);\n\tconst interfaces = isObjectType(type) ? type.getInterfaces() : [];\n\tconst read = (node: Parameters<typeof readAuthenticated>[1], at: string) =>\n\t\treadAuthenticated(schema, node, at, known);\n\treturn combineRequirements(\n\t\t[\n\t\t\tread(fieldConfig, where),\n\t\t\ttype ? read(type, typeName) : null,\n\t\t\t...interfaces.flatMap((iface) => {\n\t\t\t\tconst field = iface.getFields()[fieldName];\n\t\t\t\treturn [\n\t\t\t\t\tread(iface, iface.name),\n\t\t\t\t\tfield ? read(field, `${iface.name}.${fieldName}`) : null,\n\t\t\t\t];\n\t\t\t}),\n\t\t\tleafRequirement(schema, fieldConfig, read),\n\t\t],\n\t\twhere,\n\t);\n}\n\n/**\n * A scalar or an enum has no resolver of its own, so its `@authenticated`\n * guards every field that returns it — the reading federation's router gives\n * the same declaration.\n */\nfunction leafRequirement(\n\tschema: GraphQLSchema,\n\tfieldConfig: FieldConfig,\n\tread: (\n\t\tnode: Parameters<typeof readAuthenticated>[1],\n\t\tat: string,\n\t) => CallerRequirement | null,\n): CallerRequirement | null {\n\tconst leaf = schema.getType(getNamedType(fieldConfig.type).name);\n\tif (!leaf || !(isScalarType(leaf) || isEnumType(leaf))) return null;\n\treturn read(leaf, leaf.name);\n}\n\nfunction guarded(\n\tfieldConfig: FieldConfig,\n\t{ types }: CallerRequirement,\n): FieldConfig {\n\treturn guardField(fieldConfig, {\n\t\tmark: MARK,\n\t\trank: 0,\n\t\tonSubscribe: true,\n\t\tcheck: (_source, _args, context) => {\n\t\t\tconst ctx = (context ?? {}) as PrincipalContext & OryContext;\n\t\t\tif (!ctx.user) throw denial(ErrorCode.Unauthenticated);\n\t\t\tif (types && !types.includes(callerTypeOf(ctx) ?? '')) {\n\t\t\t\tthrow denial(ErrorCode.Forbidden);\n\t\t\t}\n\t\t},\n\t});\n}\n\nfunction callerTypeOf(ctx: PrincipalContext & OryContext): string | undefined {\n\treturn ctx.ory?.kind ?? ctx.user?.tokenType;\n}\n",
16
16
  "import { type LocaleKey, translate } from '@nxgt/i18n';\nimport { ErrorCode } from '@nxgt/shared-exceptions';\nimport { GraphQLError } from 'graphql';\n\n/** The refusals a guard answers, each with its HTTP status. */\nexport type DenialCode =\n\t| ErrorCode.Unauthenticated\n\t| ErrorCode.Forbidden\n\t| ErrorCode.NotFound;\n\nconst STATUS: Record<DenialCode, number> = {\n\t[ErrorCode.Unauthenticated]: 401,\n\t[ErrorCode.Forbidden]: 403,\n\t[ErrorCode.NotFound]: 404,\n};\n\n/** The shared i18n keys a denial carries when it names none. */\nconst DEFAULT_MESSAGE: Record<DenialCode, string> = {\n\t[ErrorCode.Unauthenticated]: 'errors.unauthenticated',\n\t[ErrorCode.Forbidden]: 'errors.insufficient-permissions',\n\t[ErrorCode.NotFound]: 'errors.not-found',\n};\n\n/**\n * Where a denial keeps its i18n key. A registered symbol, so a denial from a\n * second copy of this package is still recognised, and never serialised: the\n * client reads `message`, not the key.\n */\nconst MESSAGE_KEY = Symbol.for('@nxgt/shared-graphql/denial-message');\n\n/**\n * A refusal, as the `GraphQLError` a client reads: `extensions.code` and\n * `extensions.http.status` — `UNAUTHENTICATED` 401, `FORBIDDEN` 403,\n * `NOT_FOUND` 404 — so any server answers it with its status, with or without\n * `createMaskError`. What `@permission`, `@authenticated`, `requireUser` and\n * `can` throw.\n *\n * `message` is an i18n key (the shared `errors.*` one by default). It is\n * translated here with `@nxgt/i18n`'s resources, in the request's language\n * when one is known; `createMaskError(translate)` and\n * `createFormatError(translate)` translate it again with yours.\n */\nexport function denial(code: DenialCode, message?: string): GraphQLError {\n\tconst key = message ?? DEFAULT_MESSAGE[code];\n\tconst error = new GraphQLError(translate(key as LocaleKey), {\n\t\textensions: { code, http: { status: STATUS[code] } },\n\t});\n\tObject.defineProperty(error, MESSAGE_KEY, { value: key });\n\treturn error;\n}\n\n/** The i18n key of a `denial()`, or `undefined` for any other error. */\nexport function denialMessageKey(error: unknown): string | undefined {\n\tif (!error || typeof error !== 'object') return undefined;\n\tconst key = (error as { [MESSAGE_KEY]?: unknown })[MESSAGE_KEY];\n\treturn typeof key === 'string' ? key : undefined;\n}\n",
17
17
  "import {\n\tdefaultFieldResolver,\n\ttype GraphQLFieldConfig,\n\ttype GraphQLFieldResolver,\n} from 'graphql';\n\ntype FieldConfig = GraphQLFieldConfig<unknown, unknown>;\ntype Resolver = GraphQLFieldResolver<unknown, unknown>;\n\n/** What a guard asks before a field runs; it throws to refuse. */\nexport type FieldCheck = (\n\tsource: unknown,\n\targs: Record<string, unknown>,\n\tcontext: unknown,\n) => void | Promise<void>;\n\n/**\n * One transform's guard on one field: its mark, its rank (lower runs first),\n * its check, and whether the check can run before a subscription's stream is\n * opened — only when it reads nothing off an event (`parent.<path>`).\n */\nexport type FieldGuard = {\n\tmark: string;\n\trank: number;\n\tcheck: FieldCheck;\n\tonSubscribe: boolean;\n};\n\n/**\n * The guards on a field, kept on its own `extensions` — which `mapSchema` and\n * `mergeSchemas` carry over with the field — with the resolvers they wrap\n * and the wrappers built from them.\n */\ntype Guarded = {\n\tguards: FieldGuard[];\n\tresolve: Resolver;\n\tsubscribe?: Resolver;\n\twrapped: { resolve: Resolver; subscribe?: Resolver };\n};\n\nconst GUARDS = '@nxgt/shared-graphql:guards';\n\n/**\n * The field's guards while its resolvers are still the wrappers they built.\n * A resolver replaced since — `addResolversToSchema`, a merge with\n * resolvers — keeps the field's `extensions` but not its guards, so the\n * record no longer counts.\n */\nfunction intactGuards(config: FieldConfig): Guarded | undefined {\n\tconst record = config.extensions?.[GUARDS] as Guarded | undefined;\n\tif (!record || record.wrapped.resolve !== config.resolve) return undefined;\n\tif (record.wrapped.subscribe !== config.subscribe) return undefined;\n\treturn record;\n}\n\n/**\n * Whether the transform owning `mark` guards this field as it stands. A\n * merged schema's unguarded half, or a field whose resolver was replaced,\n * is not — so a transform run again wraps it, never one twice.\n */\nexport function isGuarded(config: FieldConfig, mark: string): boolean {\n\treturn !!intactGuards(config)?.guards.some((guard) => guard.mark === mark);\n}\n\n/**\n * The field with `guard` added. Every guard runs by rank — `@authenticated`\n * before `@permission`, whichever transform ran first — before the resolver;\n * those with `onSubscribe` also run before `subscribe`, so a refused\n * subscription opens no stream.\n */\nexport function guardField(\n\tconfig: FieldConfig,\n\tguard: FieldGuard,\n): FieldConfig {\n\tconst previous = intactGuards(config);\n\tconst base = previous\n\t\t? { resolve: previous.resolve, subscribe: previous.subscribe }\n\t\t: {\n\t\t\t\tresolve: config.resolve ?? defaultFieldResolver,\n\t\t\t\tsubscribe: config.subscribe,\n\t\t\t};\n\tconst guards = [...(previous?.guards ?? []), guard].sort(\n\t\t(a, b) => a.rank - b.rank,\n\t);\n\tconst wrapped = {\n\t\tresolve: checked(guards, base.resolve),\n\t\tsubscribe:\n\t\t\tbase.subscribe &&\n\t\t\tchecked(\n\t\t\t\tguards.filter((one) => one.onSubscribe),\n\t\t\t\tbase.subscribe,\n\t\t\t),\n\t};\n\treturn {\n\t\t...config,\n\t\textensions: {\n\t\t\t...config.extensions,\n\t\t\t[GUARDS]: { guards, ...base, wrapped } satisfies Guarded,\n\t\t},\n\t\tresolve: wrapped.resolve,\n\t\tsubscribe: wrapped.subscribe,\n\t};\n}\n\nfunction checked(guards: FieldGuard[], next: Resolver): Resolver {\n\treturn async (source, args, context, info) => {\n\t\tfor (const { check } of guards) await check(source, args, context);\n\t\treturn next(source, args, context, info);\n\t};\n}\n",
@@ -41,10 +41,10 @@
41
41
  "import {\n\ttype LocaleKey,\n\ttype TranslationContext,\n\ttranslate as translateBase,\n} from '@nxgt/i18n';\nimport { CustomException, ErrorCode } from '@nxgt/shared-exceptions';\nimport { MONGO_UTILS, mongoose } from '@nxgt/shared-mongo';\nimport { GraphQLError } from 'graphql';\nimport type { MaskError } from 'graphql-yoga';\nimport { denialMessageKey } from './denial';\nimport { isOryUnavailable, serviceUnavailableError } from './ory-unavailable';\n\ntype Translate<K extends LocaleKey> = (\n\tmessage: K,\n\tcontext?: TranslationContext,\n) => string;\n\n/**\n * Yoga's `maskedErrors.maskError`, taught this repo's exceptions.\n *\n * Yoga masks anything that is not a `GraphQLError` as \"Unexpected error.\" —\n * and `CustomException` extends `Error`, so out of the box a service's\n * `notFound()` or `forbidden()` reaches the client as an opaque 500. This\n * turns one into a `GraphQLError` with the translated message, the\n * exception's `code` in `extensions`, and a matching HTTP status\n * (`UNAUTHENTICATED` 401, `FORBIDDEN` 403, `NOT_FOUND` 404); a Mongoose error\n * goes through `castError` first, as `createFormatError` does for Apollo.\n * `OryUnavailable` (@nxgt/ory-sdk) becomes a 503 `SERVICE_UNAVAILABLE`, never\n * a denial. A `denial()` — what the directives, `requireUser` and `can` throw\n * — keeps its code and status, and its message is translated with `translate`. Everything else is masked as Yoga's default masks it: a\n * `GraphQLError` thrown on purpose — or raised by validation — passes, and one\n * that only wraps a plain `Error` a resolver threw is replaced by `message`,\n * so an internal message never reaches the client.\n *\n * createYoga({ maskedErrors: { maskError: createMaskError(translate) } })\n */\nexport function createMaskError<K extends LocaleKey>(\n\ttranslate: Translate<K> = translateBase,\n): MaskError {\n\treturn (error, message, isDev) => {\n\t\tconst original =\n\t\t\terror instanceof GraphQLError && error.originalError\n\t\t\t\t? error.originalError\n\t\t\t\t: error;\n\n\t\tif (isOryUnavailable(original)) return serviceUnavailableError(original);\n\n\t\tconst key = denialMessageKey(original);\n\t\tif (key !== undefined) {\n\t\t\treturn new GraphQLError(translate(key as K), {\n\t\t\t\t...locationOf(error),\n\t\t\t\textensions: (original as GraphQLError).extensions,\n\t\t\t});\n\t\t}\n\n\t\tif (\n\t\t\toriginal instanceof CustomException ||\n\t\t\toriginal instanceof mongoose.MongooseError\n\t\t) {\n\t\t\treturn exceptionError(original, translate);\n\t\t}\n\n\t\tif (isOriginalGraphQLError(error)) return error;\n\t\treturn new GraphQLError(message, {\n\t\t\t...locationOf(error),\n\t\t\textensions: isDev\n\t\t\t\t? {\n\t\t\t\t\t\tcode: ErrorCode.InternalServerError,\n\t\t\t\t\t\tdebugMessage: String(original),\n\t\t\t\t\t}\n\t\t\t\t: { code: ErrorCode.InternalServerError },\n\t\t});\n\t};\n}\n\nfunction exceptionError<K extends LocaleKey>(\n\toriginal: CustomException | mongoose.MongooseError,\n\ttranslate: Translate<K>,\n): GraphQLError {\n\tconst exception =\n\t\toriginal instanceof mongoose.MongooseError\n\t\t\t? MONGO_UTILS.castError(original)\n\t\t\t: original;\n\t// The exception carries the status itself.\n\tconst status = exception.code;\n\treturn new GraphQLError(\n\t\texception.errorCode === ErrorCode.ValidationError\n\t\t\t? exception.message\n\t\t\t: translate(exception.message as K, exception.options),\n\t\t{\n\t\t\textensions: {\n\t\t\t\tcode: exception.errorCode,\n\t\t\t\t...(status ? { http: { status } } : {}),\n\t\t\t\t...(exception.debugMessage\n\t\t\t\t\t? { debugMessage: exception.debugMessage }\n\t\t\t\t\t: {}),\n\t\t\t},\n\t\t},\n\t);\n}\n\n/**\n * Yoga's own test: a `GraphQLError` is \"original\" when it — or the error it\n * wraps, all the way down — was a `GraphQLError` to begin with. Graphql-js\n * wraps every resolver error in one, so `instanceof GraphQLError` alone lets\n * a plain `Error`'s message through.\n */\nfunction isOriginalGraphQLError(error: unknown): error is GraphQLError {\n\tif (!(error instanceof GraphQLError)) return false;\n\treturn error.originalError == null\n\t\t? true\n\t\t: isOriginalGraphQLError(error.originalError);\n}\n\n/** Where the masked error happened, kept so the client still sees a `path`. */\nfunction locationOf(error: unknown) {\n\tif (!(error instanceof GraphQLError)) return {};\n\treturn {\n\t\tnodes: error.nodes,\n\t\tsource: error.source,\n\t\tpositions: error.positions,\n\t\tpath: error.path,\n\t};\n}\n",
42
42
  "import { createRedisEventTarget } from '@graphql-yoga/redis-event-target';\nimport { createPubSub } from 'graphql-yoga';\nimport type { Redis } from 'ioredis';\n\nexport const createYogaPubSub = ({\n\tpublishClient,\n\tsubscribeClient,\n}: {\n\tpublishClient: Redis;\n\tsubscribeClient: Redis;\n}) => {\n\tconst eventTarget = createRedisEventTarget({\n\t\tpublishClient,\n\t\tsubscribeClient,\n\t});\n\n\treturn createPubSub({ eventTarget });\n};\n",
43
43
  "import { existsSync } from 'node:fs';\nimport { dirname, join } from 'node:path';\nimport { fileURLToPath } from 'node:url';\nimport { buildSubgraphSchema as buildSubgraphSchemaBase } from '@apollo/subgraph';\nimport { loadFilesSync } from '@graphql-tools/load-files';\nimport { mergeTypeDefs } from '@graphql-tools/merge';\nimport { pruneSchema } from '@graphql-tools/utils';\nimport { printSchema } from 'graphql';\n\n/**\n * The `.graphqls` this package ships live in `graphql/` at its root, so that\n * they survive `bun pm pack` — the bundle in `dist/` carries no assets. Their\n * directory is not at a fixed depth from this file: it is `src/utils` in the\n * workspace and `dist` in the published bundle, which Bun flattens. Walking up\n * to the nearest `package.json` finds the package root in both.\n */\nfunction packageRoot() {\n\tlet dir = dirname(fileURLToPath(import.meta.url));\n\twhile (!existsSync(join(dir, 'package.json'))) {\n\t\tconst parent = dirname(dir);\n\t\tif (parent === dir)\n\t\t\tthrow new Error('@nxgt/shared-graphql: no package root');\n\t\tdir = parent;\n\t}\n\treturn dir;\n}\n\nexport const SHARED_SCHEMA_PATH = join(packageRoot(), 'graphql/**/*.graphqls');\n\nexport function loadTypeDefs(...paths: string[]) {\n\tconst typeDefs = mergeTypeDefs([\n\t\t...paths.flatMap((path) =>\n\t\t\tloadFilesSync(path, {\n\t\t\t\trecursive: true,\n\t\t\t}),\n\t\t),\n\t]);\n\n\treturn typeDefs;\n}\n\nexport function buildSubgraphSchema(\n\tmodulesOrSdl: Parameters<typeof buildSubgraphSchemaBase>[0],\n) {\n\treturn pruneSchema(buildSubgraphSchemaBase(modulesOrSdl), {\n\t\tskipUnusedTypesPruning: false,\n\t});\n}\n\n/**\n * Utility function to generate a GraphQL schema file from the provided type definitions.\n * @param output - The path where the generated schema file should be saved.\n * @param paths - An array of glob patterns to locate the GraphQL type definition files.\n */\nexport async function generateSchema(output: string, ...paths: string[]) {\n\tawait Bun.write(\n\t\toutput,\n\t\tprintSchema(buildSubgraphSchema(loadTypeDefs(...paths))),\n\t);\n}\n",
44
- "import { createServer } from 'node:http';\nimport type { ServerOptions } from 'graphql-ws';\nimport { useServer } from 'graphql-ws/use/ws';\nimport type { YogaServerInstance } from 'graphql-yoga';\nimport { WebSocketServer } from 'ws';\n\nexport function setupYogaWebSocketServer<\n\tServerContext extends {},\n\tUserContext extends {},\n>({\n\tyoga,\n\tcontext,\n}: {\n\tyoga: YogaServerInstance<ServerContext, UserContext>;\n\tcontext?: ServerOptions['context'];\n}) {\n\tconst httpServer = createServer(yoga);\n\tconst wsServer = new WebSocketServer({\n\t\tserver: httpServer,\n\t\tpath: yoga.graphqlEndpoint,\n\t});\n\n\t// biome-ignore lint/correctness/useHookAtTopLevel: Not react related\n\tuseServer(\n\t\t{\n\t\t\texecute: (args: any) => args.rootValue.execute(args),\n\t\t\tsubscribe: (args: any) => args.rootValue.subscribe(args),\n\t\t\tonSubscribe: async (ctx, _id, params) => {\n\t\t\t\tconst { schema, execute, subscribe, contextFactory, parse, validate } =\n\t\t\t\t\tyoga.getEnveloped({\n\t\t\t\t\t\t...ctx,\n\t\t\t\t\t\treq: ctx.extra.request,\n\t\t\t\t\t\tsocket: ctx.extra.socket,\n\t\t\t\t\t\tparams,\n\t\t\t\t\t});\n\n\t\t\t\tconst args = {\n\t\t\t\t\tschema,\n\t\t\t\t\toperationName: params.operationName,\n\t\t\t\t\tdocument: parse(params.query),\n\t\t\t\t\tvariableValues: params.variables,\n\t\t\t\t\tcontextValue: await contextFactory(),\n\t\t\t\t\trootValue: {\n\t\t\t\t\t\texecute,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\tconst errors = validate(args.schema, args.document);\n\t\t\t\tif (errors.length) return errors;\n\t\t\t\treturn args;\n\t\t\t},\n\t\t\tcontext,\n\t\t},\n\t\twsServer,\n\t);\n\n\tconst startServer = (port: number) =>\n\t\tnew Promise<void>((resolve) => httpServer.listen({ port }, resolve));\n\treturn { yoga, httpServer, startServer };\n}\n",
44
+ "import { createServer } from 'node:http';\nimport type { ServerOptions } from 'graphql-ws';\nimport { useServer } from 'graphql-ws/use/ws';\nimport type { YogaServerInstance } from 'graphql-yoga';\nimport { WebSocketServer } from 'ws';\n\nexport function setupYogaWebSocketServer<\n\tServerContext extends {},\n\tUserContext extends {},\n>({\n\tyoga,\n\tcontext,\n}: {\n\tyoga: YogaServerInstance<ServerContext, UserContext>;\n\tcontext?: ServerOptions['context'];\n}) {\n\tconst httpServer = createServer(yoga);\n\tconst wsServer = new WebSocketServer({\n\t\tserver: httpServer,\n\t\tpath: yoga.graphqlEndpoint,\n\t});\n\n\tuseServer(\n\t\t{\n\t\t\texecute: (args: any) => args.rootValue.execute(args),\n\t\t\tsubscribe: (args: any) => args.rootValue.subscribe(args),\n\t\t\tonSubscribe: async (ctx, _id, params) => {\n\t\t\t\tconst { schema, execute, subscribe, contextFactory, parse, validate } =\n\t\t\t\t\tyoga.getEnveloped({\n\t\t\t\t\t\t...ctx,\n\t\t\t\t\t\treq: ctx.extra.request,\n\t\t\t\t\t\tsocket: ctx.extra.socket,\n\t\t\t\t\t\tparams,\n\t\t\t\t\t});\n\n\t\t\t\tconst args = {\n\t\t\t\t\tschema,\n\t\t\t\t\toperationName: params.operationName,\n\t\t\t\t\tdocument: parse(params.query),\n\t\t\t\t\tvariableValues: params.variables,\n\t\t\t\t\tcontextValue: await contextFactory(),\n\t\t\t\t\trootValue: {\n\t\t\t\t\t\texecute,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\tconst errors = validate(args.schema, args.document);\n\t\t\t\tif (errors.length) return errors;\n\t\t\t\treturn args;\n\t\t\t},\n\t\t\tcontext,\n\t\t},\n\t\twsServer,\n\t);\n\n\tconst startServer = (port: number) =>\n\t\tnew Promise<void>((resolve) => httpServer.listen({ port }, resolve));\n\treturn { yoga, httpServer, startServer };\n}\n",
45
45
  "import type { TokenPrincipal } from '@nxgt/shared';\nimport type { Context } from 'graphql-ws';\nimport type { createAuthClient } from 'stx-sdk/auth';\n\ntype AuthClient = ReturnType<typeof createAuthClient>;\n\nexport interface ResolvedWsUser {\n\tuser: TokenPrincipal | undefined;\n\ttoken: string | undefined;\n}\n\n/**\n * Resolves the authenticated TokenPrincipal for a `graphql-ws` connection - the\n * WS-transport equivalent of the HTTP-path `useOryAuth()` / `useAuth()`\n * plugins. There is no gateway hop for WS connections, so each app performs\n * the OAuth introspection call itself using its own `auth` client.\n *\n * Reads the bearer token off `connectionParams.authorization` /\n * `connectionParams.Authorization` (both casings are used by existing\n * clients), strips the `Bearer ` prefix, and introspects it. Returns\n * `user: undefined` for a missing, invalid, or inactive token - callers\n * pass `user ?? null` into their own `services()` factory, exactly as the\n * HTTP-path plugins already do.\n */\nexport async function resolveWsUser(\n\tconnectionParams: Context['connectionParams'],\n\tauthClient: AuthClient,\n): Promise<ResolvedWsUser> {\n\tconst rawToken =\n\t\t(connectionParams?.authorization as string | undefined) ??\n\t\t(connectionParams?.Authorization as string | undefined);\n\tconst token = rawToken?.replace('Bearer ', '');\n\n\tconst { data } = token\n\t\t? await authClient.POST('/oauth/introspect', { body: { token } })\n\t\t: { data: null };\n\n\tconst user = data?.active\n\t\t? ({ ...(data as any), name: (data as any).sub } as TokenPrincipal)\n\t\t: undefined;\n\n\treturn { user, token };\n}\n"
46
46
  ],
47
- "mappings": "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",
48
- "debugId": "A1D566582D44C98864756E2164756E21",
47
+ "mappings": "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",
48
+ "debugId": "62AFFF96A460B5E264756E2164756E21",
49
49
  "names": []
50
50
  }
@@ -1,6 +1,11 @@
1
1
  import type { YogaInitialContext, YogaServerInstance } from 'graphql-yoga';
2
2
  import { Hono } from 'hono';
3
3
  import { type RenderSandboxOptions } from '../utils/sandbox';
4
+ /**
5
+ * Serves Apollo Sandbox. Given neither `port`, `hostname` nor `protocol`, it
6
+ * starts at `graphqlEndpoint` on the server that served the page — the
7
+ * request's own origin, behind a proxy and over HTTPS alike.
8
+ */
4
9
  export declare function sandboxExplorer(options: RenderSandboxOptions): import("hono").MiddlewareHandler<any, string, {}, Response>;
5
10
  type HonoYogaOptions = {
6
11
  sandbox?: RenderSandboxOptions & {
@@ -1 +1 @@
1
- {"version":3,"file":"hono.d.ts","sourceRoot":"","sources":["../../src/integrations/hono.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,EAAE,KAAK,oBAAoB,EAAiB,MAAM,kBAAkB,CAAC;AAE5E,wBAAgB,eAAe,CAAC,OAAO,EAAE,oBAAoB,+DAI5D;AAED,KAAK,eAAe,GAAG;IACtB,OAAO,CAAC,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,wBAAgB,QAAQ,CACvB,aAAa,SAAS,OAAO,CAAC,kBAAkB,CAAC,EACjD,WAAW,SAAS,EAAE,EACrB,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,+DAMrD;AAED,wBAAgB,cAAc,CAC7B,aAAa,SAAS,OAAO,CAAC,kBAAkB,CAAC,EACjD,WAAW,SAAS,EAAE,EAEtB,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,EACpD,OAAO,CAAC,EAAE,eAAe,8EA0BzB"}
1
+ {"version":3,"file":"hono.d.ts","sourceRoot":"","sources":["../../src/integrations/hono.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,EAAE,KAAK,oBAAoB,EAAiB,MAAM,kBAAkB,CAAC;AAE5E;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,oBAAoB,+DAc5D;AAiBD,KAAK,eAAe,GAAG;IACtB,OAAO,CAAC,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,wBAAgB,QAAQ,CACvB,aAAa,SAAS,OAAO,CAAC,kBAAkB,CAAC,EACjD,WAAW,SAAS,EAAE,EACrB,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,+DAMrD;AAED,wBAAgB,cAAc,CAC7B,aAAa,SAAS,OAAO,CAAC,kBAAkB,CAAC,EACjD,WAAW,SAAS,EAAE,EAEtB,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,EACpD,OAAO,CAAC,EAAE,eAAe,8EA8BzB"}
@@ -4,6 +4,19 @@ export type RenderSandboxOptions = {
4
4
  protocol?: string;
5
5
  hostname?: string;
6
6
  title?: string;
7
+ /**
8
+ * The whole URL the Sandbox starts at. `sandboxExplorer` sets it from
9
+ * the request when neither `port`, `hostname` nor `protocol` is given,
10
+ * so the page asks the server it was served by — a proxy, HTTPS and a
11
+ * prefix included — and not `localhost:8080`.
12
+ */
13
+ initialEndpoint?: string;
7
14
  };
8
- export declare const renderSandbox: ({ port, hostname, graphqlEndpoint, protocol, title, }: RenderSandboxOptions) => import("hono/utils/html").HtmlEscapedString | Promise<import("hono/utils/html").HtmlEscapedString>;
15
+ /**
16
+ * The URL the Sandbox starts at: `initialEndpoint`, else the one `port`,
17
+ * `hostname` and `protocol` compose — `http://localhost:8080/graphql` by
18
+ * default, as before 3.1.
19
+ */
20
+ export declare const sandboxEndpoint: ({ initialEndpoint, port, hostname, graphqlEndpoint, protocol, }: RenderSandboxOptions) => string;
21
+ export declare const renderSandbox: ({ title, ...options }: RenderSandboxOptions) => import("hono/utils/html").HtmlEscapedString | Promise<import("hono/utils/html").HtmlEscapedString>;
9
22
  //# sourceMappingURL=sandbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,uDAM3B,oBAAoB,uGAuBtB,CAAC"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAKF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,iEAM7B,oBAAoB,KAAG,MAEmC,CAAC;AAE9D,eAAO,MAAM,aAAa,GAAI,uBAG3B,oBAAoB,uGAuBtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/utils/websocket.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,wBAAgB,wBAAwB,CACvC,aAAa,SAAS,EAAE,EACxB,WAAW,SAAS,EAAE,EACrB,EACD,IAAI,EACJ,OAAO,GACP,EAAE;IACF,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACrD,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC;;;wBA0C2B,MAAM;EAGjC"}
1
+ {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/utils/websocket.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,wBAAgB,wBAAwB,CACvC,aAAa,SAAS,EAAE,EACxB,WAAW,SAAS,EAAE,EACrB,EACD,IAAI,EACJ,OAAO,GACP,EAAE;IACF,IAAI,EAAE,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACrD,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC;;;wBAyC2B,MAAM;EAGjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxgt/shared-graphql",
3
- "version": "3.0.1",
3
+ "version": "3.1.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -53,12 +53,12 @@
53
53
  "@graphql-tools/merge": "^9.2.3",
54
54
  "@graphql-tools/utils": "^12.0.0",
55
55
  "@graphql-yoga/redis-event-target": "^3.0.3",
56
- "@nxgt/i18n": "^1.1.0",
56
+ "@nxgt/i18n": "^2.0.0",
57
57
  "@nxgt/security": "^4.2.0",
58
58
  "@nxgt/shared": "^1.0.5",
59
- "@nxgt/shared-exceptions": "^1.0.4",
59
+ "@nxgt/shared-exceptions": "^1.0.5",
60
60
  "@nxgt/shared-logging": "^1.0.4",
61
- "@nxgt/shared-mongo": "^1.1.4",
61
+ "@nxgt/shared-mongo": "^1.1.5",
62
62
  "dataloader": "^2.2.3",
63
63
  "graphql-scalars": "^1.26.0",
64
64
  "graphql-subscriptions": "^3.0.0",