@voxgig/apidef 8.11.0 → 8.12.1

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 (79) hide show
  1. package/dist/apidef.d.ts +4 -1
  2. package/dist/apidef.js +12 -34
  3. package/dist/apidef.js.map +1 -1
  4. package/dist/builder/entity/entity.js +0 -33
  5. package/dist/builder/entity/entity.js.map +1 -1
  6. package/dist/builder/entity/info.js +0 -4
  7. package/dist/builder/entity/info.js.map +1 -1
  8. package/dist/builder/flow.d.ts +4 -1
  9. package/dist/builder/flow.js +36 -27
  10. package/dist/builder/flow.js.map +1 -1
  11. package/dist/guide/graphql01.js +0 -55
  12. package/dist/guide/graphql01.js.map +1 -1
  13. package/dist/guide/guide.js +3 -126
  14. package/dist/guide/guide.js.map +1 -1
  15. package/dist/guide/heuristic01.js +40 -181
  16. package/dist/guide/heuristic01.js.map +1 -1
  17. package/dist/parse/graphql.js +0 -25
  18. package/dist/parse/graphql.js.map +1 -1
  19. package/dist/parse.js +51 -56
  20. package/dist/parse.js.map +1 -1
  21. package/dist/resolved.d.ts +23 -0
  22. package/dist/resolved.js +92 -0
  23. package/dist/resolved.js.map +1 -0
  24. package/dist/resolver.js +0 -2
  25. package/dist/resolver.js.map +1 -1
  26. package/dist/transform/args.js +2 -25
  27. package/dist/transform/args.js.map +1 -1
  28. package/dist/transform/casecollide.d.ts +3 -0
  29. package/dist/transform/casecollide.js +67 -0
  30. package/dist/transform/casecollide.js.map +1 -0
  31. package/dist/transform/contract.js +43 -38
  32. package/dist/transform/contract.js.map +1 -1
  33. package/dist/transform/entity.js +0 -56
  34. package/dist/transform/entity.js.map +1 -1
  35. package/dist/transform/field.js +1 -368
  36. package/dist/transform/field.js.map +1 -1
  37. package/dist/transform/flowstep.js +0 -49
  38. package/dist/transform/flowstep.js.map +1 -1
  39. package/dist/transform/graphql.js +0 -36
  40. package/dist/transform/graphql.js.map +1 -1
  41. package/dist/transform/operation.js +0 -23
  42. package/dist/transform/operation.js.map +1 -1
  43. package/dist/transform/top.js +1 -128
  44. package/dist/transform/top.js.map +1 -1
  45. package/dist/transform.js.map +1 -1
  46. package/dist/tsconfig.tsbuildinfo +1 -1
  47. package/dist/types.d.ts +2 -0
  48. package/dist/types.js.map +1 -1
  49. package/dist/utility.d.ts +2 -1
  50. package/dist/utility.js +17 -316
  51. package/dist/utility.js.map +1 -1
  52. package/model/apidef.aon +20 -113
  53. package/model/guide.aon +1 -32
  54. package/package.json +5 -5
  55. package/src/apidef.ts +22 -33
  56. package/src/builder/entity/entity.ts +0 -33
  57. package/src/builder/entity/info.ts +0 -4
  58. package/src/builder/flow.ts +39 -24
  59. package/src/desc.ts +0 -22
  60. package/src/guide/graphql01.ts +0 -75
  61. package/src/guide/guide.ts +5 -127
  62. package/src/guide/heuristic01.ts +47 -182
  63. package/src/model.ts +6 -85
  64. package/src/parse/graphql.ts +0 -25
  65. package/src/parse.ts +61 -56
  66. package/src/resolved.ts +136 -0
  67. package/src/resolver.ts +0 -2
  68. package/src/transform/args.ts +2 -25
  69. package/src/transform/casecollide.ts +80 -0
  70. package/src/transform/contract.ts +44 -34
  71. package/src/transform/entity.ts +0 -56
  72. package/src/transform/field.ts +2 -368
  73. package/src/transform/flowstep.ts +0 -49
  74. package/src/transform/graphql.ts +0 -36
  75. package/src/transform/operation.ts +0 -23
  76. package/src/transform/top.ts +1 -131
  77. package/src/transform.ts +0 -1
  78. package/src/types.ts +4 -13
  79. package/src/utility.ts +18 -314
package/dist/apidef.d.ts CHANGED
@@ -2,6 +2,8 @@ import type { ApiDefOptions, ApiDefResult } from './types';
2
2
  import { KIT } from './types';
3
3
  import { parse } from './parse';
4
4
  import { nom, formatJSONIC, depluralize, sanitizeSlug, slugToPascalCase, getModelPath, VALID_CANON, CANON_ONE } from './utility';
5
+ import { operationFacts, operationIndex, resolvedSpec } from './resolved';
6
+ import type { OperationFacts, ResolvedSpec } from './resolved';
5
7
  import { gcEntityFiles } from './builder/entity/entity';
6
8
  declare function warningsFileText(history: any[]): string;
7
9
  declare function ApiDef(opts: ApiDefOptions): {
@@ -17,4 +19,5 @@ export type { ApiDefOptions, };
17
19
  export type { PathDef, MethodDef, ServerDef, ServerVariableDef, ParameterDef, SchemaDef, } from './def';
18
20
  export type { CmpDesc, BasicMethodDesc, MethodDesc, MethodEntityDesc, EntityDesc, EntityPathDesc, PathDesc, OpDesc, } from './desc';
19
21
  export type { OpName, ArgKind, NamesCluster, ModelEntityRelations, ModelOpMap, ModelFieldOp, ModelField, ModelArg, ModelPoint, ModelOp, ModelEntity, Model, ModelEntityFlow, ModelEntityFlowStep, ModelEntityFlowStepInput, ModelEntityFlowStepValidator, ModelEntityFlowStepSpec, } from './model';
20
- export { KIT, ApiDef, gcEntityFiles, warningsFileText, parse, formatJSONIC, depluralize, sanitizeSlug, slugToPascalCase, getModelPath, nom, VALID_CANON, CANON_ONE, };
22
+ export { KIT, ApiDef, gcEntityFiles, warningsFileText, parse, formatJSONIC, depluralize, sanitizeSlug, slugToPascalCase, getModelPath, nom, VALID_CANON, CANON_ONE, operationFacts, operationIndex, resolvedSpec, };
23
+ export type { OperationFacts, ResolvedSpec, };
package/dist/apidef.js CHANGED
@@ -37,7 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.CANON_ONE = exports.VALID_CANON = exports.nom = exports.getModelPath = exports.slugToPascalCase = exports.sanitizeSlug = exports.depluralize = exports.formatJSONIC = exports.parse = exports.gcEntityFiles = exports.KIT = void 0;
40
+ exports.resolvedSpec = exports.operationIndex = exports.operationFacts = exports.CANON_ONE = exports.VALID_CANON = exports.nom = exports.getModelPath = exports.slugToPascalCase = exports.sanitizeSlug = exports.depluralize = exports.formatJSONIC = exports.parse = exports.gcEntityFiles = exports.KIT = void 0;
41
41
  exports.ApiDef = ApiDef;
42
42
  exports.warningsFileText = warningsFileText;
43
43
  const Fs = __importStar(require("node:fs"));
@@ -67,27 +67,20 @@ const graphql_1 = require("./transform/graphql");
67
67
  const args_1 = require("./transform/args");
68
68
  const select_1 = require("./transform/select");
69
69
  const field_1 = require("./transform/field");
70
+ const casecollide_1 = require("./transform/casecollide");
70
71
  const flow_1 = require("./transform/flow");
71
72
  const flowstep_1 = require("./transform/flowstep");
72
73
  const clean_1 = require("./transform/clean");
74
+ const resolved_1 = require("./resolved");
75
+ Object.defineProperty(exports, "operationFacts", { enumerable: true, get: function () { return resolved_1.operationFacts; } });
76
+ Object.defineProperty(exports, "operationIndex", { enumerable: true, get: function () { return resolved_1.operationIndex; } });
77
+ Object.defineProperty(exports, "resolvedSpec", { enumerable: true, get: function () { return resolved_1.resolvedSpec; } });
73
78
  const entity_2 = require("./builder/entity");
74
79
  const entity_3 = require("./builder/entity/entity");
75
80
  Object.defineProperty(exports, "gcEntityFiles", { enumerable: true, get: function () { return entity_3.gcEntityFiles; } });
76
81
  const flow_2 = require("./builder/flow");
77
82
  // Log non-fatal wierdness.
78
83
  const dlog = (0, utility_1.getdlog)('apidef', __filename);
79
- // THE WARNINGS FILE IS A REVIEWABLE ARTIFACT, so it carries no clock.
80
- //
81
- // Every warning is stamped with `when: Date.now()` — useful in a live log,
82
- // and fatal in a file that consumers COMMIT. An SDK project regenerates and
83
- // commits `.sdk/apidef-warnings.txt`, and its CI asserts that a regeneration
84
- // reproduces the committed tree byte for byte; with a timestamp in it that
85
- // check can never pass, and every regeneration produces a diff saying
86
- // nothing about the warnings themselves. github-sdk failed exactly that way:
87
- // one file, three changed lines, all of them clocks.
88
- //
89
- // The timestamp stays on the in-memory history, where a caller streaming
90
- // warnings still wants it.
91
84
  function warningsFileText(history) {
92
85
  return history
93
86
  .map((n) => {
@@ -97,7 +90,6 @@ function warningsFileText(history) {
97
90
  .join('\n\n');
98
91
  }
99
92
  function ApiDef(opts) {
100
- // TODO: shape opts!
101
93
  const fs = opts.fs || Fs;
102
94
  const pino = (0, util_1.prettyPino)('apidef', opts);
103
95
  const log = pino.child({ cmp: 'apidef' });
@@ -145,7 +137,6 @@ function ApiDef(opts) {
145
137
  defpath,
146
138
  start
147
139
  });
148
- // TODO: Validate spec
149
140
  ctx = {
150
141
  fs,
151
142
  fsInjected: null != opts.fs,
@@ -160,7 +151,6 @@ function ApiDef(opts) {
160
151
  def: undefined,
161
152
  note: {},
162
153
  warn,
163
- // TODO: remove (moved to guide)
164
154
  metrics: {
165
155
  count: {
166
156
  path: 0,
@@ -200,6 +190,7 @@ function ApiDef(opts) {
200
190
  fs.writeFileSync(defpath + '.full.json', fullsrc);
201
191
  }
202
192
  ctx.def = def;
193
+ ctx.resolved = (0, resolved_1.publishResolved)(spec.buildctx, spec.config?.kind ?? "openapi3", def);
203
194
  steps.push('parse');
204
195
  // Step: guide (derive).
205
196
  if (!ctrl.step.guide) {
@@ -232,6 +223,8 @@ function ApiDef(opts) {
232
223
  await (0, args_1.argsTransform)(ctx);
233
224
  await (0, select_1.selectTransform)(ctx);
234
225
  await (0, field_1.fieldTransform)(ctx);
226
+ // Before flowTransform, so no flow is built for an entity it drops.
227
+ await (0, casecollide_1.casecollideTransform)(ctx);
235
228
  await (0, flow_1.flowTransform)(ctx);
236
229
  await (0, flowstep_1.flowstepTransform)(ctx);
237
230
  await (0, clean_1.cleanTransform)(ctx);
@@ -245,7 +238,6 @@ function ApiDef(opts) {
245
238
  }
246
239
  const builders = [
247
240
  await (0, entity_2.makeEntityBuilder)(ctx),
248
- // TODO: move to sdkgen
249
241
  await (0, flow_2.makeFlowBuilder)(ctx),
250
242
  ];
251
243
  steps.push('builders');
@@ -271,11 +263,6 @@ function ApiDef(opts) {
271
263
  // folder: Path.dirname(opts.folder as string),
272
264
  folder: opts.folder,
273
265
  model: jmodel,
274
- // Overwrite the generated model source (.aontu) rather than 3-way merge:
275
- // merging against a drifting .jostraca base silently keeps stale files
276
- // and can inject <<<<<<< conflict markers. Generated output is
277
- // model-derived and never hand-edited. See sdkgen
278
- // docs/explanation/regeneration-overwrite.md.
279
266
  existing: { txt: { write: true, merge: false } }
280
267
  }, root);
281
268
  const dlogs = dlog.log();
@@ -285,11 +272,6 @@ function ApiDef(opts) {
285
272
  }
286
273
  }
287
274
  steps.push('generate');
288
- // Garbage-collect entity model files no longer derived from the def.
289
- // The builders only ever WRITE: a spec change that removes or renames a
290
- // derived entity used to leave the old <name>.aontu behind forever.
291
- // Runs after generate so the current set is on disk; guarded so only
292
- // apidef-generated files under this build's outprefix are touched.
293
275
  try {
294
276
  const kitEntity = ctx.apimodel?.main?.[types_1.KIT]?.entity || {};
295
277
  (0, entity_3.gcEntityFiles)(fs, log, opts.folder, opts.outprefix, Object.keys(kitEntity));
@@ -304,12 +286,6 @@ function ApiDef(opts) {
304
286
  if (hasWarnings) {
305
287
  (0, utility_1.writeFileSyncWarn)(warn, fs, './apidef-warnings.txt', warningsFileText(warn.history));
306
288
  }
307
- // apidef writes model source files (entity, flow, guide aontu files) into
308
- // .sdk/model/. Downstream actions (sdkgen, etc.) read those via
309
- // sdk.aontu @-includes, so voxgig-model has to re-resolve the model
310
- // before the post-step actions run. Signal reload whenever jostraca
311
- // wrote or merged any files; if nothing changed on disk,
312
- // voxgig-model's resolveModel cache short-circuits the re-read.
313
289
  const jfiles = jres?.files;
314
290
  const reload = !!jfiles && ((jfiles.written?.length ?? 0) > 0 ||
315
291
  (jfiles.merged?.length ?? 0) > 0);
@@ -403,7 +379,9 @@ ApiDef.makeBuild = async function (opts) {
403
379
  });
404
380
  }
405
381
  const ctrl = build.spec.buildargs?.apidef?.ctrl || {};
406
- return await apidef.generate({ model, build, config, ctrl });
382
+ // `buildctx` is the model build's own context, shared across its pre and
383
+ // post steps, and is where the resolved definition is published.
384
+ return await apidef.generate({ model, build, config, ctrl, buildctx: _ctx });
407
385
  };
408
386
  build.step = 'pre';
409
387
  return build;
@@ -1 +1 @@
1
- {"version":3,"file":"apidef.js","sourceRoot":"","sources":["../src/apidef.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apidef.js","sourceRoot":"","sources":["../src/apidef.ts"],"names":[],"mappings":"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"}
@@ -27,9 +27,6 @@ function resolveEntity(apimodel, opts) {
27
27
  entityJSONIC +
28
28
  '\n\n}\n';
29
29
  entityFiles.push({ name: entityFile, src: entitySrc });
30
- // `./` — aontu 0.65 reads a bare single-segment include as a PACKAGE
31
- // name (ADR-039), so `@"account.aon"` now resolves against the package
32
- // stores and refuses. A sibling file has to say it is one.
33
30
  barrel.push(`@"./${node_path_1.default.basename(entityFile)}"`);
34
31
  }));
35
32
  const indexFile = (null == opts.outprefix ? '' : opts.outprefix) + 'entity-index.aon';
@@ -42,23 +39,6 @@ function resolveEntity(apimodel, opts) {
42
39
  });
43
40
  };
44
41
  }
45
- // Garbage-collect orphaned entity model files.
46
- //
47
- // The builder above EMITS one <outprefix><name>.aon per derived entity but
48
- // never removes anything, so an entity that disappears from the def — a spec
49
- // rename, a dropped path, a schema rename that changes the derived entity
50
- // name — leaves its old file behind on every regen. The orphan is not in the
51
- // regenerated entity-index barrel, so it is silently dead weight at best; at
52
- // worst a later hand-include resurrects a stale surface.
53
- //
54
- // Deletion is guarded three ways, so nothing a user could own is touched:
55
- // 1. only `<outprefix>*.aon` / `*.aontu` files in the entity folder
56
- // (a different outprefix belongs to a different def sharing the folder);
57
- // 2. the current entity set and the index barrel are always kept;
58
- // 3. the file must START with the generated header (`# Entity: `) — a file
59
- // apidef did not write is left alone.
60
- //
61
- // GC failure must never fail a build: errors are logged and swallowed.
62
42
  function gcEntityFiles(fs, log, modelFolder, outprefix, entityNames) {
63
43
  const removed = [];
64
44
  const prefix = null == outprefix ? '' : outprefix;
@@ -73,11 +53,6 @@ function gcEntityFiles(fs, log, modelFolder, outprefix, entityNames) {
73
53
  return removed; // no entity folder yet — nothing to collect
74
54
  }
75
55
  for (const entry of entries) {
76
- // BOTH extensions are candidates. `.aon` is what the builder emits
77
- // now; `.aontu` is what it emitted before the rename, and such files
78
- // are orphaned by definition — the regenerated index barrel no longer
79
- // includes them. The `# Entity: ` header guard below still applies, so
80
- // only a file apidef itself wrote is ever removed.
81
56
  if (!entry.endsWith('.aon') && !entry.endsWith('.aontu')) {
82
57
  continue;
83
58
  }
@@ -110,14 +85,6 @@ function gcEntityFiles(fs, log, modelFolder, outprefix, entityNames) {
110
85
  return removed;
111
86
  }
112
87
  function fieldAliases(_entity) {
113
- // Field aliasing (mapping e.g. a `<name>_id` field onto the canonical
114
- // `id`) is not currently implemented. The original heuristic referenced
115
- // properties that don't exist on the entity at this stage
116
- // (`entity.field`, `op.param`, `p.keys` — entities carry `fields`, ops
117
- // carry `points`, and `each` stamps `key$`), so it always produced `{}`
118
- // and would have thrown if any branch ran. Emit an empty alias map
119
- // explicitly until the alias semantics are specified.
120
- // Parity: go/builder.go buildFieldAliases (also `{}`).
121
88
  return '{}';
122
89
  }
123
90
  //# sourceMappingURL=entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/builder/entity/entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/builder/entity/entity.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,6 @@ function resolveInfo(apimodel, opts) {
9
9
  const kit = apimodel.main[types_1.KIT];
10
10
  const infoFile = (null == opts.outprefix ? '' : opts.outprefix) + 'api-info.aon';
11
11
  const modelInfo = { main: { kit: { info: kit.info } } };
12
- // .trim() first so substring(1, len-1) strips the wrapping `{` and `}`.
13
- // Without it, formatJSONIC's trailing newline is removed instead of the
14
- // closing brace, leaving a dangling `}` in the output. Mirrors the sibling
15
- // entity builder (builder/entity/entity.ts), which trims for this reason.
16
12
  let modelDefSrc = (0, utility_1.formatJSONIC)(modelInfo).trim();
17
13
  modelDefSrc =
18
14
  '# API Information\n\n' +
@@ -1 +1 @@
1
- {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/builder/entity/info.ts"],"names":[],"mappings":";AAAA,4CAA4C;;QAuD1C,WAAW;AApDb,2CAA4C;AAU5C,uCAEoB;AAEpB,uCAIiB;AAGjB,SAAS,WAAW,CAClB,QAAa,EACb,IAAmB;IAEnB,MAAM,GAAG,GAAa,QAAQ,CAAC,IAAI,CAAC,WAAG,CAAC,CAAA;IAExC,MAAM,QAAQ,GACZ,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,cAAc,CAAA;IAEjE,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAA;IAEvD,wEAAwE;IACxE,wEAAwE;IACxE,2EAA2E;IAC3E,0EAA0E;IAC1E,IAAI,WAAW,GAAG,IAAA,sBAAY,EAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;IAEhD,WAAW;QACT,uBAAuB;YACvB,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAEzE,OAAO,SAAS,WAAW;QACzB,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE;YAC3B,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,kBAAO,EAAC,WAAW,CAAC,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AAEH,CAAC"}
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/builder/entity/info.ts"],"names":[],"mappings":";AAAA,4CAA4C;;QAmD1C,WAAW;AAhDb,2CAA4C;AAU5C,uCAEoB;AAEpB,uCAIiB;AAGjB,SAAS,WAAW,CAClB,QAAa,EACb,IAAmB;IAEnB,MAAM,GAAG,GAAa,QAAQ,CAAC,IAAI,CAAC,WAAG,CAAC,CAAA;IAExC,MAAM,QAAQ,GACZ,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,cAAc,CAAA;IAEjE,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAA;IAEvD,IAAI,WAAW,GAAG,IAAA,sBAAY,EAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;IAEhD,WAAW;QACT,uBAAuB;YACvB,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAEzE,OAAO,SAAS,WAAW;QACzB,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE;YAC3B,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,kBAAO,EAAC,WAAW,CAAC,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AAEH,CAAC"}
@@ -1,3 +1,6 @@
1
1
  import { ApiDefContext } from '../types';
2
2
  declare function makeFlowBuilder(ctx: ApiDefContext): Promise<Function>;
3
- export { makeFlowBuilder };
3
+ export { makeFlowBuilder, flowFileBases, };
4
+ declare function flowFileBases(names: string[]): {
5
+ [name: string]: string;
6
+ };
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
- // TODO: move this to sdkgen
3
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
4
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
4
  };
6
5
  Object.defineProperty(exports, "__esModule", { value: true });
7
6
  exports.makeFlowBuilder = makeFlowBuilder;
7
+ exports.flowFileBases = flowFileBases;
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const jostraca_1 = require("jostraca");
10
10
  const types_1 = require("../types");
@@ -18,30 +18,18 @@ async function makeFlowBuilder(ctx) {
18
18
  note: 'Unable to generate flow definitions as flows were not resolved.'
19
19
  });
20
20
  };
21
- /*
22
- if ('heuristic01' === ctx.opts.strategy) {
23
- try {
24
- flows = await flowHeuristic01(ctx)
25
- }
26
- catch (err: any) {
27
- err.foo = { x: 1, y: [2] }
28
- err.foo.z = err.foo
29
- ctx.warn({
30
- step: 'flow',
31
- note: 'Unable to resolve flows due to unexpected error: ' + err.message,
32
- err,
33
- })
34
- return flowBuilder
35
- }
36
- }
37
- else {
38
- ctx.warn({
39
- step: 'flow',
40
- note: 'Unable to resolve flows: unknown guide strategy: ' + ctx.opts.strategy
41
- })
42
- return flowBuilder
21
+ const flownames = [];
22
+ (0, jostraca_1.each)(flows, (flow) => flownames.push(String(flow.name)));
23
+ const filebase = flowFileBases(flownames);
24
+ for (const name of flownames) {
25
+ if (name !== filebase[name] && ctx.warn) {
26
+ ctx.warn({
27
+ step: 'flow',
28
+ note: 'flow name ' + name + ' collides with another when case is' +
29
+ ' ignored: file written as ' + filebase[name] + '.aon'
30
+ });
31
+ }
43
32
  }
44
- */
45
33
  flowBuilder = () => {
46
34
  (0, jostraca_1.Folder)({ name: 'flow' }, () => {
47
35
  const barrel = [
@@ -49,14 +37,12 @@ async function makeFlowBuilder(ctx) {
49
37
  ];
50
38
  (0, jostraca_1.each)(flows, (flow) => {
51
39
  let flowfile = node_path_1.default.join(ctx.opts.folder, 'flow', (null == ctx.opts.outprefix ? '' : ctx.opts.outprefix) +
52
- flow.name + '.aon');
40
+ (filebase[flow.name] || flow.name) + '.aon');
53
41
  let flowModelSrc = (0, utility_1.formatJsonSrc)(JSON.stringify(flow, null, 2));
54
42
  let flowsrc = `# ${(0, utility_1.nom)(flow, 'Name')}
55
43
 
56
44
  main: ${types_1.KIT}: flow: ${flow.name}:
57
45
  ` + flowModelSrc;
58
- // `./` — see the entity barrel: aontu 0.65 reads a bare
59
- // single-segment include as a package name and refuses it.
60
46
  barrel.push(`@"./${node_path_1.default.basename(flowfile)}"`);
61
47
  (0, jostraca_1.File)({ name: node_path_1.default.basename(flowfile) }, () => (0, jostraca_1.Content)(flowsrc));
62
48
  });
@@ -67,4 +53,27 @@ main: ${types_1.KIT}: flow: ${flow.name}:
67
53
  };
68
54
  return flowBuilder;
69
55
  }
56
+ // Flow file base names, unique when case is ignored. Every member of a
57
+ // colliding group is suffixed in sorted-name order, so no member keeps the
58
+ // bare name and the result is the same on every run. Names that do not
59
+ // collide are returned unchanged.
60
+ function flowFileBases(names) {
61
+ const bylower = {};
62
+ for (const name of names) {
63
+ const lower = name.toLowerCase();
64
+ bylower[lower] = bylower[lower] || [];
65
+ bylower[lower].push(name);
66
+ }
67
+ const base = {};
68
+ for (const lower of Object.keys(bylower)) {
69
+ const group = bylower[lower].sort();
70
+ if (1 === group.length) {
71
+ base[group[0]] = group[0];
72
+ }
73
+ else {
74
+ group.forEach((name, i) => (base[name] = name + '__' + (i + 1)));
75
+ }
76
+ }
77
+ return base;
78
+ }
70
79
  //# sourceMappingURL=flow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/builder/flow.ts"],"names":[],"mappings":";AACA,4BAA4B;;;;;QAqG1B,eAAe;AAlGjB,0DAA4B;AAE5B,uCAAsD;AAGtD,oCAGiB;AAGjB,wCAGmB;AAMnB,KAAK,UAAU,eAAe,CAAC,GAAkB;IAC/C,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAG,CAAC,CAAC,IAAI,CAAA;IAErC,IAAI,WAAW,GAAG,GAAG,EAAE;QACrB,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,iEAAiE;SACxE,CAAC,CAAA;IACJ,CAAC,CAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;MAuBE;IAEF,WAAW,GAAG,GAAG,EAAE;QAEjB,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE;YAC5B,MAAM,MAAM,GAAG;gBACb,WAAW;aACZ,CAAA;YAED,IAAA,eAAI,EAAC,KAAK,EAAE,CAAC,IAAS,EAAE,EAAE;gBACxB,IAAI,QAAQ,GACV,mBAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAC/B,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;oBACtD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAA;gBAEvB,IAAI,YAAY,GAAG,IAAA,uBAAa,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;gBAE/D,IAAI,OAAO,GAAG,KAAK,IAAA,aAAG,EAAC,IAAI,EAAE,MAAM,CAAC;;QAEpC,WAAG,WAAW,IAAI,CAAC,IAAI;CAC9B,GAAG,YAAY,CAAA;gBAER,wDAAwD;gBACxD,2DAA2D;gBAC3D,MAAM,CAAC,IAAI,CAAC,OAAO,mBAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;gBAE9C,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,mBAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,kBAAO,EAAC,OAAO,CAAC,CAAC,CAAA;YACjE,CAAC,CAAC,CAAA;YAEF,MAAM,UAAU,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAA;YAE5F,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAEvC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,kBAAO,EAAC,aAAa,CAAC,CAAC,CAAA;QAC1D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,OAAO,WAAW,CAAA;AACpB,CAAC"}
1
+ {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/builder/flow.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,6 @@ const UPDATE_RE = /^(update|edit|modify|patch|set)$/i;
13
13
  const REMOVE_RE = /^(delete|remove|destroy|drop)$/i;
14
14
  // Type-name suffixes that mark schema machinery rather than API entities.
15
15
  const MACHINERY_RE = /(Connection|Edge|PageInfo|Payload|Input|Filter|Comparator|Sort|OrderBy)$/;
16
- // Strip a leading entity name off a mutation field name, returning the
17
- // residual verb. `issueCreate` -> `Create`; `createIssue` -> `create`.
18
16
  function splitEntityVerb(fieldName, entity) {
19
17
  const lowerField = fieldName.toLowerCase();
20
18
  const lowerEnt = entity.toLowerCase();
@@ -26,14 +24,6 @@ function splitEntityVerb(fieldName, entity) {
26
24
  }
27
25
  return fieldName;
28
26
  }
29
- // Does this field take a required id-ish argument?
30
- //
31
- // Any required id counts, not just a lone one: a command like
32
- // `planetForbid(id: String!, forbid: Boolean!)` addresses an existing record
33
- // just as much as `planetArchive(id: String!)` does. Requiring it to be the
34
- // only required argument made an operation stop looking id-addressed the
35
- // moment the API made a second argument mandatory, which flipped it from an
36
- // update action to a create.
37
27
  function idArg(args) {
38
28
  return args.find((a) => a.reqd && /^(id|.*Id)$/i.test(a.name));
39
29
  }
@@ -63,12 +53,10 @@ function classifyGraphQLField(sig, profile) {
63
53
  }
64
54
  const id = idArg(sig.args);
65
55
  if ('query' === sig.optype) {
66
- // Connection or list of the entity -> list.
67
56
  if ('connection' === ret.kind || 'list' === ret.kind) {
68
57
  why.push('query:' + ret.kind);
69
58
  return { entity, op: 'list', optype: 'query', why };
70
59
  }
71
- // Single entity behind one required id -> load.
72
60
  if ('entity' === ret.kind) {
73
61
  if (null != id) {
74
62
  why.push('query:entity:id=' + id.name);
@@ -86,7 +74,6 @@ function classifyGraphQLField(sig, profile) {
86
74
  why.push('query:unmatched:' + ret.kind);
87
75
  return { exclude: true, why };
88
76
  }
89
- // --- mutation ---
90
77
  const verb = splitEntityVerb(sig.name, entity).replace(/^[_-]+/, '');
91
78
  const input = sig.inputTypeName ?? '';
92
79
  // create: <Entity>CreateInput, or a create-ish verb, and no id argument.
@@ -95,13 +82,11 @@ function classifyGraphQLField(sig, profile) {
95
82
  why.push(createByInput ? 'mutation:input:' + input : 'mutation:verb:' + verb);
96
83
  return { entity, op: 'create', optype: 'mutation', why };
97
84
  }
98
- // update: <Entity>UpdateInput, or an update-ish verb.
99
85
  const updateByInput = new RegExp('^' + entity + '(Update|Edit|Patch|Set)Input$', 'i').test(input);
100
86
  if (updateByInput || UPDATE_RE.test(verb)) {
101
87
  why.push(updateByInput ? 'mutation:input:' + input : 'mutation:verb:' + verb);
102
88
  return { entity, op: 'update', optype: 'mutation', why };
103
89
  }
104
- // remove: a delete-ish verb.
105
90
  if (REMOVE_RE.test(verb)) {
106
91
  why.push('mutation:verb:' + verb);
107
92
  return { entity, op: 'remove', optype: 'mutation', why };
@@ -128,7 +113,6 @@ function deriveRetShape(field, types) {
128
113
  if ('OBJECT' !== named.kind && 'INTERFACE' !== named.kind) {
129
114
  return { kind: 'other' };
130
115
  }
131
- // Relay connection: has pageInfo plus nodes and/or edges.
132
116
  const fnames = Object.keys(named.fields);
133
117
  if (fnames.includes('pageInfo') &&
134
118
  (fnames.includes('nodes') || fnames.includes('edges'))) {
@@ -163,9 +147,6 @@ function deriveRetShape(field, types) {
163
147
  !f.list && !MACHINERY_RE.test(ftype.name) &&
164
148
  !/^(errors?|userErrors?)$/i.test(fname);
165
149
  });
166
- // Prefer the field whose name matches the payload's own entity prefix
167
- // (IssuePayload -> issue), which is the convention every CRUD-regular
168
- // GraphQL API follows; fall back to the single remaining candidate.
169
150
  const prefix = named.name.replace(/Payload$/, '');
170
151
  const byName = candidates.find((fname) => fname.toLowerCase() === prefix.toLowerCase() ||
171
152
  types[named.fields[fname].type]?.name === prefix);
@@ -182,15 +163,12 @@ function deriveRetShape(field, types) {
182
163
  if (MACHINERY_RE.test(named.name)) {
183
164
  return { kind: 'other' };
184
165
  }
185
- // A list of the entity is a list op even without connection machinery.
186
166
  if (field.list) {
187
167
  return { kind: 'list', entity: named.name };
188
168
  }
189
169
  return { kind: 'entity', entity: named.name };
190
170
  }
191
- // Build the classifier signature for a root field.
192
171
  function fieldSig(optype, field, types) {
193
- // The input-object argument, if any, drives create/update detection.
194
172
  let inputTypeName = undefined;
195
173
  for (const arg of field.args) {
196
174
  const at = types[arg.type];
@@ -210,8 +188,6 @@ function fieldSig(optype, field, types) {
210
188
  nameEntity: nameEntityType(field.name, types),
211
189
  };
212
190
  }
213
- // Verb suffixes a mutation field name may carry, longest first so
214
- // `issueUnarchive` strips `Unarchive` rather than `Archive`.
215
191
  const NAME_VERBS = [
216
192
  'Unarchive', 'Archive', 'Delete', 'Remove', 'Destroy',
217
193
  'Create', 'Update', 'Insert', 'Upsert',
@@ -237,41 +213,12 @@ function nameEntityType(fieldName, types) {
237
213
  }
238
214
  return undefined;
239
215
  }
240
- // Entity model name from a GraphQL type name: Issue -> issue,
241
- // WorkflowState -> workflow_state (canonize handles the casing rules that
242
- // the REST path classifier already uses).
243
216
  function rawEntityName(typeName) {
244
217
  return (0, utility_1.depluralize)((0, utility_1.canonize)((0, utility_1.normalizeFieldName)(typeName)));
245
218
  }
246
- // The leading-digit guard is applied here rather than inherited: the REST
247
- // side gets it from `ensureMinEntityName`, which this path deliberately does
248
- // not call (its min-length padding is the REST classifier's rule, and
249
- // entities here merge by name on purpose). GraphQL type names cannot begin
250
- // with a digit, but they can begin with `_`, which `normalizeFieldName`
251
- // strips — so `_3DSSessions` reaches an SDK as the entity `3_ds_session` and
252
- // every generated language rejects the identifier.
253
219
  function entityName(typeName) {
254
220
  return (0, utility_1.prefixLeadingDigit)(rawEntityName(typeName));
255
221
  }
256
- // Two GraphQL types that canonize to ONE entity name merge, deliberately:
257
- // `_3DSSession` and `_3DSSessions` are the singular and plural spellings of
258
- // one thing, and `Issue`/`Issues` likewise. That is what canonicalization is
259
- // for, and the caller's `guide.entity[entname] ?? {…}` is how it happens.
260
- //
261
- // The leading-digit guard opens one collision that is NOT that. A guarded
262
- // name (`_3DSSessions` -> `3_ds_session` -> `n3_ds_session`) can land on a
263
- // name another type already owns natively (`N3DSSession` -> `n3_ds_session`).
264
- // Those are unrelated types, and merging them would fold two entities' fields
265
- // and ops together under a name whose `orig` records only the first — with no
266
- // second guide entry for a user to correct, since guide.aon is the only
267
- // correction surface (ADR-002).
268
- //
269
- // So a collision between a guarded name and an unguarded one takes a numeric
270
- // suffix, the same convention `ensureMinEntityName` uses on the REST side.
271
- // The scope is exactly the collisions this guard creates: when both names are
272
- // guarded, or neither is, the merge is what it was before the guard existed
273
- // and stands untouched. The same type re-encountered on another root field
274
- // always reuses its own entry.
275
222
  function resolveEntityName(typeName, entities) {
276
223
  const raw = rawEntityName(typeName);
277
224
  const base = (0, utility_1.prefixLeadingDigit)(raw);
@@ -296,7 +243,6 @@ function newGuidePath() {
296
243
  op: {},
297
244
  };
298
245
  }
299
- // The GraphQL guide strategy.
300
246
  async function graphql01(ctx) {
301
247
  const def = ctx.def;
302
248
  const profile = (ctx.opts.profile ?? 'none');
@@ -325,7 +271,6 @@ async function graphql01(ctx) {
325
271
  { optype: 'mutation', fields: def.mutation ?? {} },
326
272
  ];
327
273
  for (const root of roots) {
328
- // Sorted iteration: byte-stable guide output.
329
274
  for (const fname of Object.keys(root.fields).sort()) {
330
275
  guide.metrics.count.field++;
331
276
  const field = root.fields[fname];