@fougere/adapter-graphql 0.16.8-alpha.0 → 0.17.0-alpha.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.
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsConfig.d.ts","sourceRoot":"","sources":["../src/OperationsConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAO1D,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,GAAG,CAAC;IACV,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,uEAAuE;IACvE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,CAAC;CACtD;AAmSD,mEAAmE;AACnE,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAC3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GACxC,GAAG,CAsCL;AAID,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,GAAG,CAgIjG;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,GAAG,GAAG,CAgCnG;AAoOD,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAmF9G"}
1
+ {"version":3,"file":"OperationsConfig.d.ts","sourceRoot":"","sources":["../src/OperationsConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAO1D,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,GAAG,CAAC;IACV,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,uEAAuE;IACvE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,CAAC;CACtD;AAmSD,mEAAmE;AACnE,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAC3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GACxC,GAAG,CAsCL;AAID,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,GAAG,CAgIjG;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,GAAG,GAAG,CAgCnG;AAqOD,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAmF9G"}
@@ -590,6 +590,8 @@ function resolveOutputType(sig, config, meta, opName) {
590
590
  ? config.viewType(meta.output, opName)
591
591
  : undefined;
592
592
  const type = declared ?? config.type;
593
+ if (!type)
594
+ return { type: undefined, isList: false, nullable: false };
593
595
  if (rt?.array) {
594
596
  return { type: [type], isList: false, nullable: false };
595
597
  }
@@ -601,7 +603,7 @@ export function registerOperations(builder, config) {
601
603
  // Pre-register list wrapper type if list op exists
602
604
  let listWrapperType;
603
605
  const listMeta = config.operations.get('list');
604
- if (listMeta && typeof config.facade.list === 'function') {
606
+ if (listMeta && config.type && typeof config.facade.list === 'function') {
605
607
  listWrapperType = registerObjectType(builder, `${config.name}List`, {
606
608
  items: { type: [config.type] },
607
609
  total: {
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsConfig.js","sourceRoot":"","sources":["../src/OperationsConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationsConfig.js","sourceRoot":"","sources":["../src/OperationsConfig.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,6 @@ interface EntityEntry {
6
6
  name: string;
7
7
  /** A live class in-process, a card from a frond whose class never crossed. */
8
8
  entityClass: SchemaView;
9
- exposed?: boolean;
10
9
  }
11
10
  interface HandlerEntry {
12
11
  /**
@@ -16,10 +15,9 @@ interface HandlerEntry {
16
15
  address: string;
17
16
  operations: Map<string, OperationMeta>;
18
17
  surface?: string;
19
- outputOverride?: SchemaView;
18
+ exposed?: boolean;
20
19
  /** `name` is the class's own — it names the handler when two ops claim one root field. */
21
20
  ctor?: {
22
- __output?: SchemaView;
23
21
  name?: string;
24
22
  };
25
23
  }
@@ -49,16 +47,16 @@ interface FrondLike {
49
47
  }
50
48
  interface AppLike {
51
49
  fronds: FrondLike[];
52
- /** The façade an entity exposes to one audience — `undefined` when none. */
53
- facadeFor(entity: string, surface?: string): Record<string, Function> | undefined;
50
+ /** The façade an address serves to one audience — `undefined` when none. */
51
+ facadeFor(address: string, surface?: string): Record<string, Function> | undefined;
54
52
  /** Canonical operation table produced by core. */
55
- operationsFor(entity: string, surface?: string): Map<string, OperationMeta> | undefined;
53
+ operationsFor(address: string, surface?: string): Map<string, OperationMeta> | undefined;
56
54
  /** The presenter of an entity — `undefined` when none. */
57
55
  presenterFor(entity: string): unknown | undefined;
58
56
  }
59
57
  export interface RegisterAllOptions {
60
- /** Override which entities to expose. Default: all scanned entities with a handler. */
61
- filter?: (entity: EntityEntry, frondName: string) => boolean;
58
+ /** Keep only the addresses this answers true for. Default: every address served. */
59
+ filter?: (address: string, frondName: string) => boolean;
62
60
  /** Surface name for filtering (e.g. 'graphql', 'rest'). Uses frond.config.ts surfaces if set. */
63
61
  surface?: string;
64
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auto-register.d.ts","sourceRoot":"","sources":["../src/auto-register.ts"],"names":[],"mappings":"AACA,qEAAqE;AACrE,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA8FxD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,YAAY;IACpB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,0FAA0F;IAC1F,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,UAAU,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,cAAc;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QACnC,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,UAAU,OAAO;IACf,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,4EAA4E;IAC5E,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC;IAClF,kDAAkD;IAClD,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC;IACxF,0DAA0D;IAC1D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACnD;AAoBD,MAAM,WAAW,kBAAkB;IACjC,uFAAuF;IACvF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7D,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAiBD,qEAAqE;AACrE,wBAAgB,WAAW,CACzB,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAC3C,GAAG,EAAE,OAAO,EACZ,OAAO,CAAC,EAAE,kBAAkB,GAC3B,IAAI,CAqNN"}
1
+ {"version":3,"file":"auto-register.d.ts","sourceRoot":"","sources":["../src/auto-register.ts"],"names":[],"mappings":"AACA,qEAAqE;AACrE,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA8FxD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,WAAW,EAAE,UAAU,CAAC;CACzB;AAED,UAAU,YAAY;IACpB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0FAA0F;IAC1F,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,cAAc;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QACnC,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,UAAU,OAAO;IACf,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,4EAA4E;IAC5E,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC;IACnF,kDAAkD;IAClD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC;IACzF,0DAA0D;IAC1D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACnD;AAoBD,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAiBD,qEAAqE;AACrE,wBAAgB,WAAW,CACzB,OAAO,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,EAC3C,GAAG,EAAE,OAAO,EACZ,OAAO,CAAC,EAAE,kBAAkB,GAC3B,IAAI,CAsON"}
@@ -94,7 +94,7 @@ function viewTypeOf(builder, view, name) {
94
94
  export function registerAll(builder, app, options) {
95
95
  // Collect registered types across all fronds for relation wiring, keyed by entity NAME.
96
96
  //
97
- // The name is the identity everywhere else in the system — `facadeFor(entity)`,
97
+ // The name is the identity everywhere else in the system —
98
98
  // `storageFor(entity)`, `schemaFor(entity)` all take one, and the table, the GraphQL type
99
99
  // and the DI match are all derived from it. This registry keyed by class OBJECT was the
100
100
  // lone dissent, and it cost a silent failure: a relation target that is not the very
@@ -102,67 +102,82 @@ export function registerAll(builder, app, options) {
102
102
  // stand-in) missed the lookup, hit `if (!targetEntry) continue`, and the relation
103
103
  // vanished from the schema without a word. `schema-sql` already resolved by name.
104
104
  const typeRegistry = new Map();
105
- // ── Pass 1: register types + operations ────────
105
+ // ── Pass 1: a type per schema an operation returns, a root field per operation ──
106
+ //
107
+ // A type is a projection of a SCHEMA, so it is built from what the operations answer; a root
108
+ // field is an operation at an ADDRESS, so it is built from the handlers. An entity is never
109
+ // where a call goes — `checkout.pay` names none, `article.list` answers `Post`.
110
+ const entities = app.fronds.flatMap((frond) => frond.entities.map((entity) => ({ entity, frond })));
111
+ const entityOf = (view) => entities.find(({ entity }) => entity.entityClass === view)?.entity;
112
+ const presenters = new Map(app.fronds.flatMap((frond) => (frond.presenters ?? []).map((presenter) => [registryKey(presenter.entityName), presenter])));
113
+ /** The GraphQL type of an entity, built the first time an operation returns it. */
114
+ const entityType = (entity) => {
115
+ const known = typeRegistry.get(registryKey(entity.name));
116
+ if (known)
117
+ return known.type;
118
+ const name = upperFirst(entity.name);
119
+ const presenterMeta = presenters.get(registryKey(entity.name));
120
+ const presenter = presenterMeta
121
+ ? app.presenterFor(entity.name)
122
+ : undefined;
123
+ const type = registerType(builder, {
124
+ name,
125
+ entity: entity.entityClass,
126
+ presenter: presenter,
127
+ presenterFields: presenterMeta?.fields,
128
+ presenterFieldMeta: presenterMeta?.fieldMeta,
129
+ presenterViews: presenterMeta?.views,
130
+ viewType: (view, fieldName) => viewTypeOf(builder, view, `${name}${upperFirst(fieldName)}`),
131
+ });
132
+ // The presenter's computed field names travel too: pass 2 must not derive a relation over a
133
+ // name the author wrote.
134
+ typeRegistry.set(registryKey(entity.name), {
135
+ name, type,
136
+ presenterFields: new Set(presenterMeta?.fields ?? []),
137
+ fields: entity.entityClass.getFields(),
138
+ });
139
+ return type;
140
+ };
141
+ /** What an operation's declared output becomes: its entity's type, or a type of its own. */
142
+ const typeOf = (view, name) => {
143
+ const entity = entityOf(view);
144
+ return entity ? entityType(entity) : viewTypeOf(builder, view, name);
145
+ };
106
146
  for (const frond of app.fronds) {
107
- const handlerMap = new Map(frond.handlers.filter((h) => !h.surface).map((h) => [h.address, h]));
108
- const presenterMap = new Map((frond.presenters ?? []).map((p) => [p.entityName, p]));
109
147
  const surfaceName = options?.surface;
110
- for (const entity of frond.entities) {
148
+ for (const address of new Set(frond.handlers.map((handler) => handler.address))) {
111
149
  // Membership is core's answer, not ours — one rule, read here (see App.facadeFor).
112
- const facade = app.facadeFor(entity.name, surfaceName);
150
+ const facade = app.facadeFor(address, surfaceName);
113
151
  if (!facade)
114
152
  continue;
115
- if (options?.filter && !options.filter(entity, frond.name))
116
- continue;
117
- if (!surfaceName && entity.exposed === false)
153
+ if (options?.filter && !options.filter(address, frond.name))
118
154
  continue;
119
155
  const handler = (surfaceName
120
- ? frond.handlers.find((h) => h.address === entity.name && h.surface === surfaceName)
121
- : undefined) ?? handlerMap.get(entity.name);
122
- const typeName = upperFirst(entity.name);
123
- const presenterMeta = presenterMap.get(entity.name);
124
- let presenter;
125
- if (presenterMeta) {
126
- presenter = app.presenterFor(entity.name);
127
- }
128
- // Use handler's output schema if declared, otherwise entity
129
- const outputSchema = handler?.outputOverride
130
- ?? handler?.ctor?.__output
131
- ?? entity.entityClass;
132
- const type = registerType(builder, {
133
- name: typeName,
134
- entity: outputSchema,
135
- presenter: presenter,
136
- presenterFields: presenterMeta?.fields,
137
- presenterFieldMeta: presenterMeta?.fieldMeta,
138
- presenterViews: presenterMeta?.views,
139
- viewType: (view, fieldName) => viewTypeOf(builder, view, `${typeName}${upperFirst(fieldName)}`),
140
- });
141
- // Track for relation wiring. The presenter's computed field names travel too: pass 2
142
- // must not derive a relation over a name the author wrote.
143
- typeRegistry.set(registryKey(entity.name), {
144
- name: typeName, type, facade,
145
- presenterFields: new Set(presenterMeta?.fields ?? []),
146
- fields: entity.entityClass.getFields(),
147
- });
148
- const opOverrides = frond.operationsOverrides;
149
- const operations = app.operationsFor(entity.name, surfaceName);
156
+ ? frond.handlers.find((h) => h.address === address && h.surface === surfaceName)
157
+ : undefined) ?? frond.handlers.find((h) => !h.surface && h.address === address);
158
+ if (!surfaceName && handler?.exposed === false)
159
+ continue;
160
+ const operations = app.operationsFor(address, surfaceName);
150
161
  if (!operations) {
151
- throw new Error(`GraphQL cannot project '${entity.name}' without its EffectiveOperation table.`);
162
+ throw new Error(`GraphQL cannot project '${address}' without its EffectiveOperation table.`);
163
+ }
164
+ const name = upperFirst(address);
165
+ const rows = operations.get('list')?.output ?? operations.get('findById')?.output;
166
+ // A relation reads its target through the address that serves its rows.
167
+ const target = rows && entityOf(rows);
168
+ if (target) {
169
+ entityType(target);
170
+ typeRegistry.get(registryKey(target.name)).facade ??= facade;
152
171
  }
153
172
  registerOperations(builder, {
154
- name: typeName,
155
- type,
173
+ name,
174
+ type: rows ? typeOf(rows, name) : undefined,
156
175
  facade,
157
176
  operations,
158
- operationsOverrides: opOverrides,
177
+ operationsOverrides: frond.operationsOverrides,
159
178
  // Named so a root-field clash can say WHICH two handlers, in which fronds.
160
- origin: `${frond.name}/${handler?.ctor?.name ?? `${typeName}Handler`}`,
161
- // What an op declares as its return becomes its GraphQL type — unless that IS
162
- // the entity's own schema, which already has one.
163
- viewType: (view, opName) => view === outputSchema || view === entity.entityClass
164
- ? type
165
- : viewTypeOf(builder, view, `${typeName}${upperFirst(opName)}`),
179
+ origin: `${frond.name}/${handler?.ctor?.name ?? `${name}Handler`}`,
180
+ viewType: (view, opName) => typeOf(view, `${name}${upperFirst(opName)}`),
166
181
  });
167
182
  }
168
183
  }
@@ -175,7 +190,8 @@ export function registerAll(builder, app, options) {
175
190
  if (!target)
176
191
  continue;
177
192
  const targetEntry = typeRegistry.get(targetKey(target));
178
- if (!targetEntry)
193
+ const targetFacade = targetEntry?.facade;
194
+ if (!targetEntry || !targetFacade)
179
195
  continue;
180
196
  // authorId → author, user_id → user. Both spellings, because a foreign key
181
197
  // is named by its author and `/Id$/` alone left `user_id` untouched — the
@@ -189,7 +205,7 @@ export function registerAll(builder, app, options) {
189
205
  continue;
190
206
  const nullable = Shapes.isNullable(field.shape);
191
207
  const targetKeyName = primaryNameOf(targetEntry.fields);
192
- const targetList = targetEntry.facade.list;
208
+ const targetList = targetFacade.list;
193
209
  relationFields[relationName] = (t) => t.field({
194
210
  type: targetEntry.type,
195
211
  nullable,
@@ -200,13 +216,13 @@ export function registerAll(builder, app, options) {
200
216
  // A facade that serves no list — a handler narrowed to `findById` — keeps the
201
217
  // row-at-a-time path rather than losing the relation entirely.
202
218
  if (typeof targetList !== 'function') {
203
- return targetEntry.facade.findById({ params: { id: fk }, query: {}, input: undefined, state: {} });
219
+ return targetFacade.findById({ params: { id: fk }, query: {}, input: undefined, state: {} });
204
220
  }
205
221
  return loadByKey(ctx, directionKey(targetKey(target), targetKeyName), String(fk), (ids) =>
206
222
  // The facade the `many` dual already uses, with a SET where it names one
207
223
  // value. Nothing new is published: a criterion learned to name several.
208
224
  readInSlices(ids, async (slice) => {
209
- const result = await targetList.call(targetEntry.facade, {
225
+ const result = await targetList.call(targetFacade, {
210
226
  params: {}, query: { where: { [targetKeyName]: slice } }, input: undefined, state: {},
211
227
  });
212
228
  const rows = Array.isArray(result) ? result : result?.items ?? result?.data ?? [];
@@ -220,7 +236,8 @@ export function registerAll(builder, app, options) {
220
236
  if (!target)
221
237
  continue;
222
238
  const targetEntry = typeRegistry.get(targetKey(target));
223
- if (!targetEntry)
239
+ const targetFacade = targetEntry?.facade;
240
+ if (!targetEntry || !targetFacade)
224
241
  continue;
225
242
  // Trouver la FK inverse sur l'entité cible (la relation « one » qui pointe ici).
226
243
  // Read off the registry, not off the target object: a target rebuilt from a card is
@@ -243,7 +260,7 @@ export function registerAll(builder, app, options) {
243
260
  // dans les options de `list()`, qui ignore ce qu'elle ne connaît pas : la
244
261
  // relation rendait alors TOUTE la table cible, sans un mot.
245
262
  return loadByKey(ctx, directionKey(targetKey(target), reverseFkName), String(id), (ids) => readInSlices(ids, async (slice) => {
246
- const result = await targetEntry.facade.list({
263
+ const result = await targetFacade.list({
247
264
  params: {}, query: { where: { [reverseFkName]: slice } }, input: undefined, state: {},
248
265
  });
249
266
  const rows = Array.isArray(result) ? result : result?.items ?? result?.data ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"auto-register.js","sourceRoot":"","sources":["../src/auto-register.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-register.js","sourceRoot":"","sources":["../src/auto-register.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fougere/adapter-graphql",
3
- "version": "0.16.8-alpha.0",
3
+ "version": "0.17.0-alpha.0",
4
4
  "description": "Entity → GraphQL types, inputs and CRUD, through Pothos.",
5
5
  "keywords": [
6
6
  "fougere",
@@ -34,8 +34,8 @@
34
34
  "src"
35
35
  ],
36
36
  "dependencies": {
37
- "@fougere/schema": "0.16.8-alpha.0",
38
- "@fougere/http": "0.16.8-alpha.0"
37
+ "@fougere/schema": "0.17.0-alpha.0",
38
+ "@fougere/http": "0.17.0-alpha.0"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "@pothos/core": ">=4.0.0",
@@ -752,6 +752,7 @@ function resolveOutputType(
752
752
  ? config.viewType(meta.output, opName)
753
753
  : undefined;
754
754
  const type = declared ?? config.type;
755
+ if (!type) return { type: undefined, isList: false, nullable: false };
755
756
 
756
757
  if (rt?.array) {
757
758
  return { type: [type], isList: false, nullable: false };
@@ -767,7 +768,7 @@ export function registerOperations(builder: InstanceType<typeof SchemaBuilder>,
767
768
  // Pre-register list wrapper type if list op exists
768
769
  let listWrapperType: any;
769
770
  const listMeta = config.operations.get('list');
770
- if (listMeta && typeof config.facade.list === 'function') {
771
+ if (listMeta && config.type && typeof config.facade.list === 'function') {
771
772
  listWrapperType = registerObjectType(builder, `${config.name}List`, {
772
773
  items: { type: [config.type] },
773
774
  total: {
@@ -101,7 +101,6 @@ interface EntityEntry {
101
101
  name: string;
102
102
  /** A live class in-process, a card from a frond whose class never crossed. */
103
103
  entityClass: SchemaView;
104
- exposed?: boolean;
105
104
  }
106
105
 
107
106
  interface HandlerEntry {
@@ -112,9 +111,9 @@ interface HandlerEntry {
112
111
  address: string;
113
112
  operations: Map<string, OperationMeta>;
114
113
  surface?: string;
115
- outputOverride?: SchemaView;
114
+ exposed?: boolean;
116
115
  /** `name` is the class's own — it names the handler when two ops claim one root field. */
117
- ctor?: { __output?: SchemaView; name?: string };
116
+ ctor?: { name?: string };
118
117
  }
119
118
 
120
119
  interface PresenterFieldMeta {
@@ -146,10 +145,10 @@ interface FrondLike {
146
145
 
147
146
  interface AppLike {
148
147
  fronds: FrondLike[];
149
- /** The façade an entity exposes to one audience — `undefined` when none. */
150
- facadeFor(entity: string, surface?: string): Record<string, Function> | undefined;
148
+ /** The façade an address serves to one audience — `undefined` when none. */
149
+ facadeFor(address: string, surface?: string): Record<string, Function> | undefined;
151
150
  /** Canonical operation table produced by core. */
152
- operationsFor(entity: string, surface?: string): Map<string, OperationMeta> | undefined;
151
+ operationsFor(address: string, surface?: string): Map<string, OperationMeta> | undefined;
153
152
  /** The presenter of an entity — `undefined` when none. */
154
153
  presenterFor(entity: string): unknown | undefined;
155
154
  }
@@ -173,8 +172,8 @@ function targetKey(target: unknown): string {
173
172
  // ─── Public API ─────────────────────────────────
174
173
 
175
174
  export interface RegisterAllOptions {
176
- /** Override which entities to expose. Default: all scanned entities with a handler. */
177
- filter?: (entity: EntityEntry, frondName: string) => boolean;
175
+ /** Keep only the addresses this answers true for. Default: every address served. */
176
+ filter?: (address: string, frondName: string) => boolean;
178
177
  /** Surface name for filtering (e.g. 'graphql', 'rest'). Uses frond.config.ts surfaces if set. */
179
178
  surface?: string;
180
179
  }
@@ -202,7 +201,7 @@ export function registerAll(
202
201
  ): void {
203
202
  // Collect registered types across all fronds for relation wiring, keyed by entity NAME.
204
203
  //
205
- // The name is the identity everywhere else in the system — `facadeFor(entity)`,
204
+ // The name is the identity everywhere else in the system —
206
205
  // `storageFor(entity)`, `schemaFor(entity)` all take one, and the table, the GraphQL type
207
206
  // and the DI match are all derived from it. This registry keyed by class OBJECT was the
208
207
  // lone dissent, and it cost a silent failure: a relation target that is not the very
@@ -214,86 +213,101 @@ export function registerAll(
214
213
  {
215
214
  name: string;
216
215
  type: any;
217
- facade: HandlerFacade;
216
+ /** The facade that lists the entity's rows — absent when no address does. */
217
+ facade?: HandlerFacade;
218
218
  presenterFields: Set<string>;
219
219
  /** The entity's OWN fields — pass 2 wires relations from these, not from an output view. */
220
220
  fields: Fields;
221
221
  }
222
222
  >();
223
223
 
224
- // ── Pass 1: register types + operations ────────
224
+ // ── Pass 1: a type per schema an operation returns, a root field per operation ──
225
+ //
226
+ // A type is a projection of a SCHEMA, so it is built from what the operations answer; a root
227
+ // field is an operation at an ADDRESS, so it is built from the handlers. An entity is never
228
+ // where a call goes — `checkout.pay` names none, `article.list` answers `Post`.
229
+
230
+ const entities = app.fronds.flatMap((frond) => frond.entities.map((entity) => ({ entity, frond })));
231
+ const entityOf = (view: SchemaView): EntityEntry | undefined =>
232
+ entities.find(({ entity }) => entity.entityClass === view)?.entity;
233
+ const presenters = new Map(app.fronds.flatMap((frond) =>
234
+ (frond.presenters ?? []).map((presenter) => [registryKey(presenter.entityName), presenter] as const)));
235
+
236
+ /** The GraphQL type of an entity, built the first time an operation returns it. */
237
+ const entityType = (entity: EntityEntry): any => {
238
+ const known = typeRegistry.get(registryKey(entity.name));
239
+ if (known) return known.type;
240
+
241
+ const name = upperFirst(entity.name);
242
+ const presenterMeta = presenters.get(registryKey(entity.name));
243
+ const presenter = presenterMeta
244
+ ? app.presenterFor(entity.name) as Record<string, Function> | undefined
245
+ : undefined;
246
+ const type = registerType(builder, {
247
+ name,
248
+ entity: entity.entityClass as any,
249
+ presenter: presenter as any,
250
+ presenterFields: presenterMeta?.fields,
251
+ presenterFieldMeta: presenterMeta?.fieldMeta,
252
+ presenterViews: presenterMeta?.views as any,
253
+ viewType: (view, fieldName) => viewTypeOf(builder, view, `${name}${upperFirst(fieldName)}`),
254
+ });
255
+ // The presenter's computed field names travel too: pass 2 must not derive a relation over a
256
+ // name the author wrote.
257
+ typeRegistry.set(registryKey(entity.name), {
258
+ name, type,
259
+ presenterFields: new Set(presenterMeta?.fields ?? []),
260
+ fields: entity.entityClass.getFields(),
261
+ });
225
262
 
226
- for (const frond of app.fronds) {
227
- const handlerMap = new Map(frond.handlers.filter((h) => !h.surface).map((h) => [h.address, h]));
228
- const presenterMap = new Map((frond.presenters ?? []).map((p) => [p.entityName, p]));
263
+ return type;
264
+ };
265
+
266
+ /** What an operation's declared output becomes: its entity's type, or a type of its own. */
267
+ const typeOf = (view: SchemaView, name: string): any => {
268
+ const entity = entityOf(view);
229
269
 
270
+ return entity ? entityType(entity) : viewTypeOf(builder, view, name);
271
+ };
272
+
273
+ for (const frond of app.fronds) {
230
274
  const surfaceName = options?.surface;
231
275
 
232
- for (const entity of frond.entities) {
276
+ for (const address of new Set(frond.handlers.map((handler) => handler.address))) {
233
277
  // Membership is core's answer, not ours — one rule, read here (see App.facadeFor).
234
- const facade = app.facadeFor(entity.name, surfaceName) as HandlerFacade | undefined;
278
+ const facade = app.facadeFor(address, surfaceName) as HandlerFacade | undefined;
235
279
  if (!facade) continue;
236
-
237
- if (options?.filter && !options.filter(entity, frond.name)) continue;
238
- if (!surfaceName && entity.exposed === false) continue;
280
+ if (options?.filter && !options.filter(address, frond.name)) continue;
239
281
 
240
282
  const handler = (surfaceName
241
- ? frond.handlers.find((h) => h.address === entity.name && h.surface === surfaceName)
242
- : undefined) ?? handlerMap.get(entity.name);
243
- const typeName = upperFirst(entity.name);
244
-
245
- const presenterMeta = presenterMap.get(entity.name);
246
- let presenter: Record<string, Function> | undefined;
247
- if (presenterMeta) {
248
- presenter = app.presenterFor(entity.name) as Record<string, Function> | undefined;
249
- }
283
+ ? frond.handlers.find((h) => h.address === address && h.surface === surfaceName)
284
+ : undefined) ?? frond.handlers.find((h) => !h.surface && h.address === address);
285
+ if (!surfaceName && handler?.exposed === false) continue;
250
286
 
251
- // Use handler's output schema if declared, otherwise entity
252
- const outputSchema = handler?.outputOverride
253
- ?? (handler?.ctor as any)?.__output
254
- ?? entity.entityClass;
255
-
256
- const type = registerType(builder, {
257
- name: typeName,
258
- entity: outputSchema as any,
259
- presenter: presenter as any,
260
- presenterFields: presenterMeta?.fields,
261
- presenterFieldMeta: presenterMeta?.fieldMeta,
262
- presenterViews: presenterMeta?.views as any,
263
- viewType: (view, fieldName) => viewTypeOf(builder, view, `${typeName}${upperFirst(fieldName)}`),
264
- });
265
-
266
- // Track for relation wiring. The presenter's computed field names travel too: pass 2
267
- // must not derive a relation over a name the author wrote.
268
- typeRegistry.set(registryKey(entity.name), {
269
- name: typeName, type, facade,
270
- presenterFields: new Set(presenterMeta?.fields ?? []),
271
- fields: entity.entityClass.getFields(),
272
- });
287
+ const operations = app.operationsFor(address, surfaceName);
288
+ if (!operations) {
289
+ throw new Error(`GraphQL cannot project '${address}' without its EffectiveOperation table.`);
290
+ }
273
291
 
274
- const opOverrides = frond.operationsOverrides;
292
+ const name = upperFirst(address);
293
+ const rows = operations.get('list')?.output ?? operations.get('findById')?.output;
275
294
 
276
- const operations = app.operationsFor(entity.name, surfaceName);
277
- if (!operations) {
278
- throw new Error(
279
- `GraphQL cannot project '${entity.name}' without its EffectiveOperation table.`,
280
- );
295
+ // A relation reads its target through the address that serves its rows.
296
+ const target = rows && entityOf(rows);
297
+ if (target) {
298
+ entityType(target);
299
+ typeRegistry.get(registryKey(target.name))!.facade ??= facade;
281
300
  }
282
301
 
283
302
  registerOperations(builder, {
284
- name: typeName,
285
- type,
303
+ name,
304
+ type: rows ? typeOf(rows, name) : undefined,
286
305
  facade,
287
306
  operations,
288
- operationsOverrides: opOverrides,
307
+ operationsOverrides: frond.operationsOverrides,
289
308
  // Named so a root-field clash can say WHICH two handlers, in which fronds.
290
- origin: `${frond.name}/${handler?.ctor?.name ?? `${typeName}Handler`}`,
291
- // What an op declares as its return becomes its GraphQL type — unless that IS
292
- // the entity's own schema, which already has one.
293
- viewType: (view, opName) =>
294
- view === outputSchema || view === entity.entityClass
295
- ? type
296
- : viewTypeOf(builder, view, `${typeName}${upperFirst(opName)}`),
309
+ origin: `${frond.name}/${handler?.ctor?.name ?? `${name}Handler`}`,
310
+ viewType: (view, opName) => typeOf(view, `${name}${upperFirst(opName)}`),
297
311
  });
298
312
  }
299
313
  }
@@ -308,7 +322,8 @@ export function registerAll(
308
322
  const target = Role.of(field).target;
309
323
  if (!target) continue;
310
324
  const targetEntry = typeRegistry.get(targetKey(target));
311
- if (!targetEntry) continue;
325
+ const targetFacade = targetEntry?.facade;
326
+ if (!targetEntry || !targetFacade) continue;
312
327
 
313
328
  // authorId → author, user_id → user. Both spellings, because a foreign key
314
329
  // is named by its author and `/Id$/` alone left `user_id` untouched — the
@@ -322,7 +337,7 @@ export function registerAll(
322
337
  const nullable = Shapes.isNullable(field.shape);
323
338
 
324
339
  const targetKeyName = primaryNameOf(targetEntry.fields);
325
- const targetList = targetEntry.facade.list;
340
+ const targetList = targetFacade.list;
326
341
  relationFields[relationName] = (t: any) => t.field({
327
342
  type: targetEntry.type,
328
343
  nullable,
@@ -332,14 +347,14 @@ export function registerAll(
332
347
  // A facade that serves no list — a handler narrowed to `findById` — keeps the
333
348
  // row-at-a-time path rather than losing the relation entirely.
334
349
  if (typeof targetList !== 'function') {
335
- return targetEntry.facade.findById({ params: { id: fk }, query: {}, input: undefined, state: {} });
350
+ return targetFacade.findById({ params: { id: fk }, query: {}, input: undefined, state: {} });
336
351
  }
337
352
 
338
353
  return loadByKey(ctx, directionKey(targetKey(target), targetKeyName), String(fk), (ids) =>
339
354
  // The facade the `many` dual already uses, with a SET where it names one
340
355
  // value. Nothing new is published: a criterion learned to name several.
341
356
  readInSlices(ids, async (slice) => {
342
- const result = await targetList.call(targetEntry.facade, {
357
+ const result = await targetList.call(targetFacade, {
343
358
  params: {}, query: { where: { [targetKeyName]: slice } }, input: undefined, state: {},
344
359
  }) as any;
345
360
  const rows = Array.isArray(result) ? result : result?.items ?? result?.data ?? [];
@@ -355,7 +370,8 @@ export function registerAll(
355
370
  const target = Role.of(field).target;
356
371
  if (!target) continue;
357
372
  const targetEntry = typeRegistry.get(targetKey(target));
358
- if (!targetEntry) continue;
373
+ const targetFacade = targetEntry?.facade;
374
+ if (!targetEntry || !targetFacade) continue;
359
375
 
360
376
  // Trouver la FK inverse sur l'entité cible (la relation « one » qui pointe ici).
361
377
  // Read off the registry, not off the target object: a target rebuilt from a card is
@@ -382,7 +398,7 @@ export function registerAll(
382
398
  // relation rendait alors TOUTE la table cible, sans un mot.
383
399
  return loadByKey(ctx, directionKey(targetKey(target), reverseFkName), String(id), (ids) =>
384
400
  readInSlices(ids, async (slice) => {
385
- const result = await targetEntry.facade.list({
401
+ const result = await targetFacade.list({
386
402
  params: {}, query: { where: { [reverseFkName]: slice } }, input: undefined, state: {},
387
403
  }) as any;
388
404
  const rows = Array.isArray(result) ? result : result?.items ?? result?.data ?? [];