@voxgig/apidef 1.1.1 → 1.3.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,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.manualTransform = manualTransform;
3
+ exports.manualTransform = void 0;
4
4
  const jsonic_next_1 = require("@jsonic/jsonic-next");
5
5
  const { deep } = jsonic_next_1.Jsonic.util;
6
- async function manualTransform(ctx, tspec, model, def) {
7
- const { guide: { guide: { manual } } } = ctx;
6
+ const manualTransform = async function (ctx, guide, tspec, model, def) {
7
+ const { model: { main: { guide: { manual } } } } = ctx;
8
8
  deep(model, manual);
9
9
  return { ok: true, msg: 'manual' };
10
- }
10
+ };
11
+ exports.manualTransform = manualTransform;
11
12
  //# sourceMappingURL=manual.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manual.js","sourceRoot":"","sources":["../../src/transform/manual.ts"],"names":[],"mappings":";;AAoBE,0CAAe;AAnBjB,qDAA4C;AAO5C,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAM,CAAC,IAAI,CAAA;AAE5B,KAAK,UAAU,eAAe,CAAC,GAAiB,EAAE,KAAoB,EAAE,KAAU,EAAE,GAAQ;IAC1F,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,CAAA;IAE5C,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAEnB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"manual.js","sourceRoot":"","sources":["../../src/transform/manual.ts"],"names":[],"mappings":";;;AACA,qDAA4C;AAO5C,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAM,CAAC,IAAI,CAAA;AAE5B,MAAM,eAAe,GAAG,KAAK,WAC3B,GAAiB,EACjB,KAAY,EACZ,KAAoB,EACpB,KAAU,EACV,GAAQ;IAGR,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,CAAA;IAEtD,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAEnB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAA;AACpC,CAAC,CAAA;AAIC,0CAAe"}
@@ -1,6 +1,3 @@
1
- import type { TransformCtx, TransformSpec } from '../transform';
2
- declare function operationTransform(ctx: TransformCtx, tspec: TransformSpec, model: any, def: any): Promise<{
3
- ok: boolean;
4
- msg: string;
5
- }>;
1
+ import type { TransformCtx, TransformSpec, TransformResult, Guide } from '../transform';
2
+ declare const operationTransform: (ctx: TransformCtx, guide: Guide, tspec: TransformSpec, model: any, def: any) => Promise<TransformResult>;
6
3
  export { operationTransform };
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.operationTransform = operationTransform;
3
+ exports.operationTransform = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const transform_1 = require("../transform");
6
- async function operationTransform(ctx, tspec, model, def) {
7
- const { guide: { guide } } = ctx;
6
+ const operationTransform = async function (ctx, guide, tspec, model, def) {
8
7
  let msg = 'operations: ';
9
8
  const paramBuilder = (paramMap, paramDef, entityModel, pathdef, op, path, entity, model) => {
10
9
  paramMap[paramDef.name] = {
@@ -22,18 +21,94 @@ async function operationTransform(ctx, tspec, model, def) {
22
21
  const type = queryDef.schema ? queryDef.schema.type : queryDef.type;
23
22
  (0, transform_1.fixName)(queryMap[queryDef.name], type, 'type');
24
23
  };
24
+ // Resolve the JSON path to the data (the "place").
25
+ const resolvePlace = (op, kind, pathdef) => {
26
+ const opname = op.key$;
27
+ // console.log('RP', kind, op)
28
+ let place = null == op.place ? '' : op.place;
29
+ if (null != place && '' !== place) {
30
+ return place;
31
+ }
32
+ const method = op.method;
33
+ const mdef = pathdef[method];
34
+ // TODO: fix getx
35
+ const content = 'res' === kind ?
36
+ ((0, jostraca_1.getx)(mdef, 'responses.200.content') ||
37
+ (0, jostraca_1.getx)(mdef, 'responses.201.content')) :
38
+ (0, jostraca_1.getx)(mdef, 'requestBody.content');
39
+ // console.log('RP', kind, op, 'content', null == content)
40
+ if (null == content) {
41
+ return place;
42
+ }
43
+ const schema = content['application/json']?.schema;
44
+ // console.log('RP', kind, op, 'schema', null == schema)
45
+ if (null == schema) {
46
+ return place;
47
+ }
48
+ const propkeys = null == schema.properties ? [] : Object.keys(schema.properties);
49
+ // HEURISTIC: guess place
50
+ if ('list' === opname) {
51
+ if ('array' === schema.type) {
52
+ place = '';
53
+ }
54
+ else {
55
+ if (1 === propkeys.length) {
56
+ place = propkeys[0];
57
+ }
58
+ else {
59
+ // Use sub property that is an array
60
+ for (let pk of propkeys) {
61
+ if ('array' === schema.properties[pk]?.type) {
62
+ place = pk;
63
+ break;
64
+ }
65
+ }
66
+ }
67
+ }
68
+ }
69
+ else {
70
+ if ('object' === schema.type) {
71
+ if (schema.properties.id) {
72
+ place = ''; // top level
73
+ }
74
+ else {
75
+ if (1 === propkeys.length) {
76
+ place = propkeys[0];
77
+ }
78
+ else {
79
+ // Use sub property with an id
80
+ for (let pk of propkeys) {
81
+ if (schema.properties[pk].properties?.id) {
82
+ place = pk;
83
+ break;
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
90
+ // console.log('PLACE', op, kind, schema.type, 'P=', place)
91
+ return place;
92
+ };
25
93
  const opBuilder = {
26
94
  any: (entityModel, pathdef, op, path, entity, model) => {
27
- const em = entityModel.op[op.key$] = {
95
+ // console.log('OP', op, pathdef, path, entity)
96
+ const opname = op.key$;
97
+ const method = op.val$;
98
+ const kind = transform_1.OPKIND[opname];
99
+ // console.log('EM', entityModel.name)
100
+ const em = entityModel.op[opname] = {
28
101
  path: path.key$,
29
102
  method: op.val$,
103
+ kind,
30
104
  param: {},
31
105
  query: {},
106
+ place: resolvePlace(op, kind, pathdef)
32
107
  };
33
108
  (0, transform_1.fixName)(em, op.key$);
34
109
  // Params are in the path
35
110
  if (0 < path.params$.length) {
36
- let params = (0, jostraca_1.getx)(pathdef[op.val$], 'parameters?in=path') || [];
111
+ let params = (0, jostraca_1.getx)(pathdef[method], 'parameters?in=path') || [];
37
112
  if (Array.isArray(params)) {
38
113
  params.reduce((a, p) => (paramBuilder(a, p, entityModel, pathdef, op, path, entity, model), a), em.param);
39
114
  }
@@ -54,7 +129,7 @@ async function operationTransform(ctx, tspec, model, def) {
54
129
  create: (entityModel, pathdef, op, path, entity, model) => {
55
130
  return opBuilder.any(entityModel, pathdef, op, path, entity, model);
56
131
  },
57
- save: (entityModel, pathdef, op, path, entity, model) => {
132
+ update: (entityModel, pathdef, op, path, entity, model) => {
58
133
  return opBuilder.any(entityModel, pathdef, op, path, entity, model);
59
134
  },
60
135
  remove: (entityModel, pathdef, op, path, entity, model) => {
@@ -77,5 +152,6 @@ async function operationTransform(ctx, tspec, model, def) {
77
152
  msg += guideEntity.name + '=' + opcount + ' ';
78
153
  });
79
154
  return { ok: true, msg };
80
- }
155
+ };
156
+ exports.operationTransform = operationTransform;
81
157
  //# sourceMappingURL=operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/transform/operation.ts"],"names":[],"mappings":";;AA2HE,gDAAkB;AAzHpB,uCAAqC;AAIrC,4CAAsC;AAItC,KAAK,UAAU,kBAAkB,CAC/B,GAAiB,EACjB,KAAoB,EACpB,KAAU,EACV,GAAQ;IAER,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,GAAG,CAAA;IAChC,IAAI,GAAG,GAAG,cAAc,CAAA;IAExB,MAAM,YAAY,GAAG,CAAC,QAAa,EAAE,QAAa,EAChD,WAAgB,EAAE,OAAY,EAC9B,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;QAE/C,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;YACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAA;QACD,IAAA,mBAAO,EAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE/C,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAA;QACnE,IAAA,mBAAO,EAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAChD,CAAC,CAAA;IAGD,MAAM,YAAY,GAAG,CAAC,QAAa,EAAE,QAAa,EAChD,WAAgB,EAAE,OAAY,EAC9B,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;QAC/C,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;YACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAA;QACD,IAAA,mBAAO,EAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE/C,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAA;QACnE,IAAA,mBAAO,EAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,MAAM,SAAS,GAAQ;QACrB,GAAG,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACnF,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;gBACnC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,EAAE,CAAC,IAAI;gBACf,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;aACV,CAAA;YACD,IAAA,mBAAO,EAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;YAEpB,yBAAyB;YACzB,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC5B,IAAI,MAAM,GAAG,IAAA,eAAI,EAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,EAAE,CAAA;gBAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAC/B,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;gBACrF,CAAC;YACH,CAAC;YAED,0BAA0B;YAC1B,IAAI,OAAO,GAAG,IAAA,eAAI,EAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,IAAI,EAAE,CAAA;YACjE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAChC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;YACrF,CAAC;YAED,OAAO,EAAE,CAAA;QACX,CAAC;QAGD,IAAI,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACpF,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACpF,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACtF,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACpF,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,EAAE,CAAC,WAAgB,EAAE,OAAY,EAAE,EAAO,EAAE,IAAS,EAAE,MAAW,EAAE,KAAU,EAAE,EAAE;YACtF,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC;KAEF,CAAA;IAID,IAAA,eAAI,EAAC,KAAK,CAAC,MAAM,EAAE,CAAC,WAAgB,EAAE,EAAE;QACtC,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC3D,IAAA,eAAI,EAAC,WAAW,CAAC,IAAI,EAAE,CAAC,SAAc,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAEzC,IAAA,eAAI,EAAC,SAAS,CAAC,EAAE,EAAE,CAAC,EAAO,EAAE,EAAE;gBAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;gBAElC,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;oBAChE,OAAO,EAAE,CAAA;gBACX,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,GAAG,IAAI,WAAW,CAAC,IAAI,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/transform/operation.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,3 @@
1
- import type { TransformCtx, TransformSpec } from '../transform';
2
- declare function topTransform(ctx: TransformCtx, tspec: TransformSpec, model: any, def: any): Promise<{
3
- ok: boolean;
4
- msg: any;
5
- }>;
1
+ import type { TransformCtx, TransformSpec, TransformResult, Guide } from '../transform';
2
+ declare const topTransform: (ctx: TransformCtx, guide: Guide, tspec: TransformSpec, model: any, def: any) => Promise<TransformResult>;
6
3
  export { topTransform };
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.topTransform = topTransform;
4
- const transform_1 = require("../transform");
5
- async function topTransform(ctx, tspec, model, def) {
3
+ exports.topTransform = void 0;
4
+ const topTransform = async function (ctx, guide, tspec, model, def) {
6
5
  const { spec } = ctx;
7
- (0, transform_1.fixName)(model.main.api, spec.meta.name);
8
- model.main.def.desc = def.info.description;
9
- return { ok: true, msg: spec.meta.name };
10
- }
6
+ model.main.def.info = def.info;
7
+ model.main.def.servers = def.servers;
8
+ return { ok: true, msg: 'top' };
9
+ };
10
+ exports.topTransform = topTransform;
11
11
  //# sourceMappingURL=top.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"top.js","sourceRoot":"","sources":["../../src/transform/top.ts"],"names":[],"mappings":";;AAmBE,oCAAY;AAdd,4CAAsC;AAGtC,KAAK,UAAU,YAAY,CAAC,GAAiB,EAAE,KAAoB,EAAE,KAAU,EAAE,GAAQ;IACvF,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAEpB,IAAA,mBAAO,EAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,CAAA;IAE1C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"top.js","sourceRoot":"","sources":["../../src/transform/top.ts"],"names":[],"mappings":";;;AAQA,MAAM,YAAY,GAAG,KAAK,WACxB,GAAiB,EACjB,KAAY,EACZ,KAAoB,EACpB,KAAU,EACV,GAAQ;IAER,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAEpB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAEpC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;AACjC,CAAC,CAAA;AAIC,oCAAY"}
@@ -1,7 +1,7 @@
1
1
  type TransformCtx = {
2
2
  log: any;
3
3
  spec: any;
4
- guide: any;
4
+ model: any;
5
5
  opts: any;
6
6
  util: any;
7
7
  defpath: string;
@@ -12,15 +12,81 @@ type TransformSpec = {
12
12
  type TransformResult = {
13
13
  ok: boolean;
14
14
  msg: string;
15
+ err?: any;
16
+ transform?: any;
15
17
  };
16
- type Transform = (ctx: TransformCtx, tspec: TransformSpec, model: any, def: any) => Promise<TransformResult>;
18
+ type Transform = (ctx: TransformCtx, guide: Guide, tspec: TransformSpec, apimodel: any, def: any) => Promise<TransformResult>;
17
19
  type ProcessResult = {
18
20
  ok: boolean;
19
21
  msg: string;
20
22
  results: TransformResult[];
21
23
  };
24
+ declare const OPKIND: any;
25
+ declare const GuideShape: {
26
+ <V>(root?: V | undefined, ctx?: import("gubu").Context): V & {
27
+ entity: {};
28
+ control: {};
29
+ transform: {};
30
+ };
31
+ valid: <V>(root?: V | undefined, ctx?: import("gubu").Context) => root is V & {
32
+ entity: {};
33
+ control: {};
34
+ transform: {};
35
+ };
36
+ match(root?: any, ctx?: import("gubu").Context): boolean;
37
+ error(root?: any, ctx?: import("gubu").Context): {
38
+ gubu: boolean;
39
+ code: string;
40
+ gname: string;
41
+ props: ({
42
+ path: string;
43
+ type: string;
44
+ value: any;
45
+ }[]);
46
+ desc: () => ({
47
+ name: string;
48
+ code: string;
49
+ err: {
50
+ key: string;
51
+ type: string;
52
+ node: import("gubu").Node<any>;
53
+ value: any;
54
+ path: string;
55
+ why: string;
56
+ check: string;
57
+ args: Record<string, any>;
58
+ mark: number;
59
+ text: string;
60
+ use: any;
61
+ }[];
62
+ ctx: any;
63
+ });
64
+ toJSON(): /*elided*/ any & {
65
+ err: any;
66
+ name: string;
67
+ message: string;
68
+ };
69
+ name: string;
70
+ message: string;
71
+ stack?: string;
72
+ }[];
73
+ spec(): any;
74
+ node(): import("gubu").Node<{
75
+ entity: {};
76
+ control: {};
77
+ transform: {};
78
+ }>;
79
+ stringify(...rest: any[]): string;
80
+ jsonify(): any;
81
+ toString(this: any): string;
82
+ gubu: {
83
+ gubu$: symbol;
84
+ v$: string;
85
+ };
86
+ };
87
+ type Guide = ReturnType<typeof GuideShape>;
22
88
  declare function resolveTransforms(ctx: TransformCtx): Promise<TransformSpec>;
23
- declare function processTransforms(ctx: TransformCtx, spec: TransformSpec, model: any, def: any): Promise<ProcessResult>;
89
+ declare function processTransforms(ctx: TransformCtx, spec: TransformSpec, apimodel: any, def: any): Promise<ProcessResult>;
24
90
  declare function fixName(base: any, name: string, prop?: string): void;
25
- export type { TransformCtx, TransformSpec, };
26
- export { fixName, resolveTransforms, processTransforms, };
91
+ export type { TransformCtx, TransformSpec, Transform, TransformResult, Guide, };
92
+ export { fixName, OPKIND, GuideShape, resolveTransforms, processTransforms, };
package/dist/transform.js CHANGED
@@ -4,11 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.GuideShape = exports.OPKIND = void 0;
7
8
  exports.fixName = fixName;
8
9
  exports.resolveTransforms = resolveTransforms;
9
10
  exports.processTransforms = processTransforms;
10
11
  const node_path_1 = __importDefault(require("node:path"));
11
12
  const jostraca_1 = require("jostraca");
13
+ const gubu_1 = require("gubu");
12
14
  const top_1 = require("./transform/top");
13
15
  const entity_1 = require("./transform/entity");
14
16
  const operation_1 = require("./transform/operation");
@@ -21,8 +23,35 @@ const TRANSFORM = {
21
23
  field: field_1.fieldTransform,
22
24
  manual: manual_1.manualTransform,
23
25
  };
26
+ const OPKIND = {
27
+ list: 'res',
28
+ load: 'res',
29
+ remove: 'res',
30
+ create: 'req',
31
+ update: 'req',
32
+ };
33
+ exports.OPKIND = OPKIND;
34
+ const GuideShape = (0, gubu_1.Gubu)({
35
+ /*
36
+ entity: Child({
37
+ key$: '',
38
+ name: String,
39
+ path: Child({
40
+ op: Child({
41
+ method: Exact('get', 'post', 'put', 'patch', 'delete'),
42
+ place: ''
43
+ })
44
+ })
45
+ }),
46
+ */
47
+ entity: {},
48
+ control: {},
49
+ transform: {},
50
+ });
51
+ exports.GuideShape = GuideShape;
24
52
  async function resolveTransforms(ctx) {
25
- const { log, guide: { guide } } = ctx;
53
+ const { log, model: { main: { guide } } } = ctx;
54
+ // console.dir(api, { depth: null })
26
55
  const tspec = {
27
56
  transform: []
28
57
  };
@@ -32,18 +61,23 @@ async function resolveTransforms(ctx) {
32
61
  .split(/\s*,\s*/)
33
62
  .map((t) => t.trim())
34
63
  .filter((t) => '' != t);
35
- log.info({ point: 'transform', note: 'order', order: transformNames });
64
+ log.info({
65
+ point: 'transform', note: 'order: ' + transformNames.join(';'),
66
+ order: transformNames
67
+ });
36
68
  for (const tn of transformNames) {
37
- log.debug({ what: 'transform', transform: tn });
69
+ log.debug({ what: 'transform', transform: tn, note: tn });
38
70
  const transform = await resolveTransform(tn, ctx);
39
71
  tspec.transform.push(transform);
40
72
  }
73
+ // console.log('TSPEC', tspec)
41
74
  return tspec;
42
75
  }
43
76
  async function resolveTransform(tn, ctx) {
44
- const { log, defpath, guide: { guide } } = ctx;
77
+ const { log, defpath, model: { guide } } = ctx;
45
78
  let transform = TRANSFORM[tn];
46
79
  if (transform) {
80
+ // console.log('resolveTransform', tn, transform)
47
81
  return transform;
48
82
  }
49
83
  const tdef = guide.transform[tn];
@@ -70,26 +104,28 @@ async function resolveTransform(tn, ctx) {
70
104
  }
71
105
  return transform;
72
106
  }
73
- async function processTransforms(ctx, spec, model, def) {
107
+ async function processTransforms(ctx, spec, apimodel, def) {
74
108
  const pres = {
75
109
  ok: true,
76
110
  msg: '',
77
111
  results: []
78
112
  };
113
+ const guide = GuideShape(ctx.model.main.guide);
79
114
  for (let tI = 0; tI < spec.transform.length; tI++) {
80
115
  const transform = spec.transform[tI];
81
116
  try {
82
- const tres = await transform(ctx, spec, model, def);
117
+ const tres = await transform(ctx, guide, spec, apimodel, def);
83
118
  pres.ok = pres.ok && tres.ok;
84
- pres.msg += tres.msg + '\n';
85
119
  pres.results.push(tres);
86
120
  }
87
121
  catch (err) {
88
122
  pres.ok = false;
89
- pres.msg += err.message + '\n';
123
+ pres.msg += transform.name + ': ' + err.message + '\n';
90
124
  pres.results.push({
91
125
  ok: false,
92
- msg: err.message
126
+ msg: err.message,
127
+ err,
128
+ transform
93
129
  });
94
130
  }
95
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/apidef.ts","../src/transform.ts","../src/transform/entity.ts","../src/transform/field.ts","../src/transform/manual.ts","../src/transform/operation.ts","../src/transform/top.ts"],"version":"5.6.3"}
1
+ {"root":["../src/apidef.ts","../src/parse.ts","../src/transform.ts","../src/transform/entity.ts","../src/transform/field.ts","../src/transform/manual.ts","../src/transform/operation.ts","../src/transform/top.ts"],"version":"5.7.2"}
@@ -0,0 +1,44 @@
1
+
2
+ main: guide: control: transform: &: {
3
+ order: string
4
+ }
5
+
6
+ main: guide: control: transform: openapi: {
7
+ order: *`
8
+
9
+ top,
10
+ entity,
11
+ operation,
12
+ field,
13
+ manual,
14
+
15
+ ` | string
16
+ }
17
+
18
+
19
+ main: guide: transform: &: {
20
+ name: .$KEY
21
+ load: string
22
+ }
23
+
24
+ main: guide: transform: {
25
+ top: {}
26
+ entity: {}
27
+ operation: {}
28
+ field: {}
29
+ manual: {}
30
+ }
31
+
32
+
33
+ main: guide: entity: &: {
34
+ name: .$KEY
35
+ path: &: {
36
+ op: &: {
37
+ method: *'get' | string
38
+ place: *'' | string
39
+ }
40
+ }
41
+ }
42
+
43
+
44
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voxgig/apidef",
3
- "version": "1.1.1",
3
+ "version": "1.3.0",
4
4
  "main": "dist/apidef.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/apidef.d.ts",
@@ -41,19 +41,19 @@
41
41
  "devDependencies": {
42
42
  "@hapi/code": "^9.0.3",
43
43
  "@types/js-yaml": "^4.0.9",
44
- "@types/node": "22.9.0",
45
- "aontu": "^0.25.1",
46
- "esbuild": "^0.24.0",
44
+ "@types/node": "22.10.2",
45
+ "aontu": "^0.25.3",
46
+ "esbuild": "^0.24.1",
47
47
  "json-schema-to-ts": "^3.1.1",
48
- "memfs": "^4.14.0",
49
- "typescript": "^5.6.3"
48
+ "memfs": "^4.15.0",
49
+ "typescript": "^5.7.2"
50
50
  },
51
51
  "dependencies": {
52
- "@redocly/openapi-core": "^1.25.11",
53
- "@voxgig/util": "^0.0.5",
54
- "chokidar": "^4.0.1",
55
- "gubu": "^8.3.0",
56
- "jostraca": "^0.8.0",
52
+ "@redocly/openapi-core": "^1.26.1",
53
+ "@voxgig/util": "^0.0.9",
54
+ "chokidar": "^4.0.3",
55
+ "gubu": "^9.0.0",
56
+ "jostraca": "^0.15.1",
57
57
  "pino": "^9.5.0",
58
58
  "pino-pretty": "^13.0.0",
59
59
  "sonic-boom": "^4.2.0"