@voxgig/apidef 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/apidef.js +14 -20
  2. package/dist/apidef.js.map +1 -1
  3. package/dist/builder/flow/flowHeuristic01.js +37 -9
  4. package/dist/builder/flow/flowHeuristic01.js.map +1 -1
  5. package/dist/builder/flow.js +3 -3
  6. package/dist/builder/flow.js.map +1 -1
  7. package/dist/guide/heuristic01.js +197 -117
  8. package/dist/guide/heuristic01.js.map +1 -1
  9. package/dist/guide.js +37 -11
  10. package/dist/guide.js.map +1 -1
  11. package/dist/parse.d.ts +2 -1
  12. package/dist/parse.js +81 -3
  13. package/dist/parse.js.map +1 -1
  14. package/dist/transform/clean.d.ts +3 -0
  15. package/dist/transform/clean.js +16 -0
  16. package/dist/transform/clean.js.map +1 -0
  17. package/dist/transform/entity.js +21 -2
  18. package/dist/transform/entity.js.map +1 -1
  19. package/dist/transform/field.js +24 -1
  20. package/dist/transform/field.js.map +1 -1
  21. package/dist/transform/operation.js +131 -47
  22. package/dist/transform/operation.js.map +1 -1
  23. package/dist/transform.d.ts +1 -8
  24. package/dist/transform.js +121 -95
  25. package/dist/transform.js.map +1 -1
  26. package/dist/tsconfig.tsbuildinfo +1 -1
  27. package/dist/types.d.ts +9 -0
  28. package/dist/types.js +3 -2
  29. package/dist/types.js.map +1 -1
  30. package/dist/utility.d.ts +7 -1
  31. package/dist/utility.js +85 -32
  32. package/dist/utility.js.map +1 -1
  33. package/model/apidef.jsonic +1 -0
  34. package/package.json +8 -9
  35. package/src/apidef.ts +23 -33
  36. package/src/builder/flow/flowHeuristic01.ts +44 -9
  37. package/src/builder/flow.ts +4 -3
  38. package/src/guide/heuristic01.ts +281 -124
  39. package/src/guide.ts +49 -14
  40. package/src/parse.ts +106 -4
  41. package/src/transform/clean.ts +28 -0
  42. package/src/transform/entity.ts +26 -3
  43. package/src/transform/field.ts +27 -1
  44. package/src/transform/operation.ts +203 -64
  45. package/src/transform.ts +29 -23
  46. package/src/types.ts +3 -2
  47. package/src/utility.ts +113 -1
  48. package/src/builder/flow/flowHeuristic01.ts~ +0 -45
@@ -3,30 +3,37 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.operationTransform = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const transform_1 = require("../transform");
6
+ const utility_1 = require("../utility");
6
7
  const operationTransform = async function (ctx) {
7
8
  const { apimodel, model, def } = ctx;
8
9
  const guide = model.main.api.guide;
9
10
  let msg = 'operations: ';
10
- const paramBuilder = (paramMap, paramDef, entityModel, pathdef, op, path, entity, model) => {
11
- paramMap[paramDef.name] = {
11
+ const paramBuilder = (paramMap, paramDef, opModel, entityModel, pathdef, op, path, entity, model) => {
12
+ const paramSpec = paramMap[paramDef.name] = {
12
13
  required: paramDef.required
13
14
  };
14
- (0, transform_1.fixName)(paramMap[paramDef.name], paramDef.name);
15
+ (0, transform_1.fixName)(paramSpec, paramDef.name);
15
16
  const type = paramDef.schema ? paramDef.schema.type : paramDef.type;
16
- (0, transform_1.fixName)(paramMap[paramDef.name], type, 'type');
17
+ (0, transform_1.fixName)(paramSpec, type, 'type');
18
+ // Path params are always required.
19
+ opModel.validate.params[paramDef.name] = `\`$${paramSpec.TYPE}\``;
17
20
  };
18
- const queryBuilder = (queryMap, queryDef, entityModel, pathdef, op, path, entity, model) => {
19
- queryMap[queryDef.name] = {
21
+ const queryBuilder = (queryMap, queryDef, opModel, entityModel, pathdef, op, path, entity, model) => {
22
+ const querySpec = queryMap[queryDef.name] = {
20
23
  required: queryDef.required
21
24
  };
22
25
  (0, transform_1.fixName)(queryMap[queryDef.name], queryDef.name);
23
26
  const type = queryDef.schema ? queryDef.schema.type : queryDef.type;
24
27
  (0, transform_1.fixName)(queryMap[queryDef.name], type, 'type');
28
+ if (queryDef.required) {
29
+ opModel.validate.params[queryDef.name] = `\`$${querySpec.TYPE}\``;
30
+ }
25
31
  };
26
32
  // Resolve the JSON structure of the request or response.
27
33
  // NOTE: uses heuristics.
28
34
  const resolveTransform = (entityModel, op, kind, direction, pathdef) => {
29
35
  let out;
36
+ let why = 'none';
30
37
  if (null != op.transform?.[direction]) {
31
38
  out = op.transform[direction];
32
39
  }
@@ -34,44 +41,47 @@ const operationTransform = async function (ctx) {
34
41
  const method = op.method;
35
42
  const mdef = pathdef[method];
36
43
  // TODO: fix getx
37
- const content = 'res' === kind ?
44
+ // const content = 'res' === kind ?
45
+ const content = 'resform' === direction ?
38
46
  ((0, jostraca_1.getx)(mdef, 'responses.200.content') ||
39
47
  (0, jostraca_1.getx)(mdef, 'responses.201.content')) :
40
48
  (0, jostraca_1.getx)(mdef, 'requestBody.content');
41
- // console.log(entityModel)
42
- // console.log(mdef)
43
- // console.log(getx(mdef, 'responses.200.content'))
44
- // console.log(kind, method, pathdef, content)
45
49
  if (content) {
46
50
  const schema = content['application/json']?.schema;
47
51
  const propkeys = null == schema?.properties ? [] : Object.keys(schema.properties);
48
52
  const resolveDirectionTransform = 'resform' === direction ? resolveResponseTransform : resolveRequestTransform;
49
- const transform = resolveDirectionTransform(op, kind, method, mdef, content, schema, propkeys);
53
+ [out, why]
54
+ = resolveDirectionTransform(entityModel, op, kind, direction, method, mdef, content, schema, propkeys);
50
55
  // out = JSON.stringify(transform)
51
- out = transform;
56
+ // out = transform
52
57
  }
53
58
  else {
54
59
  out = 'res' === kind ? '`body`' : '`reqdata`';
55
60
  }
56
61
  }
57
- return out;
62
+ return [out, why];
58
63
  };
59
- const resolveResponseTransform = (op, kind, method, mdef, content, schema, propkeys) => {
64
+ const resolveResponseTransform = (entityModel, op, kind, direction, method, mdef, content, schema, propkeys) => {
65
+ let why = 'default';
60
66
  let transform = '`body`';
61
- if (null == content || null == schema || null == propkeys) {
62
- return transform;
67
+ const properties = schema?.properties;
68
+ if (null == content || null == schema || null == propkeys || null == properties) {
69
+ return [transform, why];
63
70
  }
64
71
  const opname = op.key$;
65
72
  if ('list' === opname) {
66
73
  if ('array' !== schema.type) {
67
74
  if (1 === propkeys.length) {
75
+ why = 'list-single-prop:' + propkeys[0];
68
76
  transform = '`body.' + propkeys[0] + '`';
69
77
  }
70
78
  else {
71
79
  // Use sub property that is an array
72
80
  for (let pk of propkeys) {
73
- if ('array' === schema.properties[pk]?.type) {
81
+ if ('array' === properties[pk]?.type) {
82
+ why = 'list-single-array:' + pk;
74
83
  transform = '`body.' + pk + '`';
84
+ // TODO: if each item has prop === name of entity, use that, get with $EACH
75
85
  break;
76
86
  }
77
87
  }
@@ -80,13 +90,15 @@ const operationTransform = async function (ctx) {
80
90
  }
81
91
  else {
82
92
  if ('object' === schema.type) {
83
- if (null == schema.properties.id) {
93
+ if (null == properties.id) {
84
94
  if (1 === propkeys.length) {
95
+ why = 'map-single-prop:' + propkeys[0];
85
96
  transform = '`body.' + propkeys[0] + '`';
86
97
  }
87
98
  else {
88
99
  for (let pk of propkeys) {
89
- if (schema.properties[pk].properties?.id) {
100
+ if (properties[pk]?.properties?.id) {
101
+ why = 'map-sub-prop:' + pk;
90
102
  transform = '`body.' + pk + '`';
91
103
  break;
92
104
  }
@@ -95,24 +107,28 @@ const operationTransform = async function (ctx) {
95
107
  }
96
108
  }
97
109
  }
98
- return transform;
110
+ return [transform, why];
99
111
  };
100
- const resolveRequestTransform = (op, kind, method, mdef, content, schema, propkeys) => {
101
- let transform = '`data`';
102
- if (null == content || null == schema || null == propkeys) {
103
- return transform;
112
+ const resolveRequestTransform = (entityModel, op, kind, direction, method, mdef, content, schema, propkeys) => {
113
+ let transform = '`reqdata`';
114
+ let why = 'default';
115
+ const properties = schema?.properties;
116
+ if (null == content || null == schema || null == propkeys || null == properties) {
117
+ return [transform, why];
104
118
  }
105
119
  const opname = op.key$;
106
120
  if ('list' === opname) {
107
121
  if ('array' !== schema.type) {
108
122
  if (1 === propkeys.length) {
109
- transform = { [propkeys[0]]: '`data`' };
123
+ why = 'list-single-prop:' + propkeys[0];
124
+ transform = { [propkeys[0]]: '`reqdata`' };
110
125
  }
111
126
  else {
112
127
  // Use sub property that is an array
113
128
  for (let pk of propkeys) {
114
- if ('array' === schema.properties[pk]?.type) {
115
- transform = { [pk]: '`data`' };
129
+ if ('array' === properties[pk]?.type) {
130
+ why = 'list-single-array:' + pk;
131
+ transform = { [pk]: '`reqdata`' };
116
132
  break;
117
133
  }
118
134
  }
@@ -121,14 +137,16 @@ const operationTransform = async function (ctx) {
121
137
  }
122
138
  else {
123
139
  if ('object' === schema.type) {
124
- if (null == schema.properties.id) {
140
+ if (null == properties.id) {
125
141
  if (1 === propkeys.length) {
126
- transform = { [propkeys[0]]: '`data`' };
142
+ why = 'map-single-prop:' + propkeys[0];
143
+ transform = { [propkeys[0]]: '`reqdata`' };
127
144
  }
128
145
  else {
129
146
  for (let pk of propkeys) {
130
- if (schema.properties[pk].properties?.id) {
131
- transform = { [pk]: '`data`' };
147
+ if (properties[pk]?.properties?.id) {
148
+ why = 'map-sub-prop:' + pk;
149
+ transform = { [pk]: '`reqdata`' };
132
150
  break;
133
151
  }
134
152
  }
@@ -136,38 +154,73 @@ const operationTransform = async function (ctx) {
136
154
  }
137
155
  }
138
156
  }
139
- return transform;
157
+ return [transform, why];
140
158
  };
141
159
  const opBuilder = {
142
160
  any: (entityModel, pathdef, op, path, entity, model) => {
143
161
  const opname = op.key$;
144
162
  const method = op.method;
145
163
  const kind = transform_1.OPKIND[opname];
146
- const em = entityModel.op[opname] = {
164
+ const [resform, resform_COMMENT] = resolveTransform(entityModel, op, kind, 'resform', pathdef);
165
+ const [reqform, reqform_COMMENT] = resolveTransform(entityModel, op, kind, 'reqform', pathdef);
166
+ const opModel = {
147
167
  path: path.key$,
168
+ pathalt: [],
148
169
  method,
149
170
  kind,
150
171
  param: {},
151
172
  query: {},
152
- // transform: {
153
- resform: resolveTransform(entityModel, op, kind, 'resform', pathdef),
154
- reqform: resolveTransform(entityModel, op, kind, 'reqform', pathdef),
155
- // }
173
+ resform_COMMENT: 'derivation: ' + resform_COMMENT,
174
+ resform,
175
+ reqform_COMMENT: 'derivation: ' + reqform_COMMENT,
176
+ reqform,
177
+ validate: {
178
+ params: { '`$OPEN`': true }
179
+ }
156
180
  };
157
- (0, transform_1.fixName)(em, op.key$);
181
+ (0, transform_1.fixName)(opModel, op.key$);
182
+ let params = [];
158
183
  // Params are in the path
159
184
  if (0 < path.params$.length) {
160
- let params = (0, jostraca_1.getx)(pathdef[method], 'parameters?in=path') || [];
161
- if (Array.isArray(params)) {
162
- params.reduce((a, p) => (paramBuilder(a, p, entityModel, pathdef, op, path, entity, model), a), em.param);
163
- }
185
+ let sharedparams = (0, jostraca_1.getx)(pathdef, 'parameters?in=path') || [];
186
+ params = sharedparams.concat((0, jostraca_1.getx)(pathdef[method], 'parameters?in=path') || []);
187
+ // if (Array.isArray(params)) {
188
+ params.reduce((a, p) => (paramBuilder(a, p, opModel, entityModel, pathdef, op, path, entity, model), a), opModel.param);
189
+ //}
164
190
  }
165
191
  // Queries are after the ?
166
- let queries = (0, jostraca_1.getx)(pathdef[op.val$], 'parameters?in!=path') || [];
167
- if (Array.isArray(queries)) {
168
- queries.reduce((a, p) => (queryBuilder(a, p, entityModel, pathdef, op, path, entity, model), a), em.query);
192
+ let sharedqueries = (0, jostraca_1.getx)(pathdef, 'parameters?in!=path') || [];
193
+ let queries = sharedqueries.concat((0, jostraca_1.getx)(pathdef[method], 'parameters?in!=path') || []);
194
+ queries.reduce((a, p) => (queryBuilder(a, p, opModel, entityModel, pathdef, op, path, entity, model), a), opModel.query);
195
+ let pathalt = [];
196
+ const pathselector = makePathSelector(path.key$); // , params)
197
+ let before = false;
198
+ if (null != entityModel.op[opname]) {
199
+ pathalt = entityModel.op[opname].pathalt;
200
+ // Ordering for pathalts: most to least paramrs, then alphanumberic
201
+ for (let i = 0; i < pathalt.length; i++) {
202
+ let current = pathalt[i];
203
+ before =
204
+ pathselector.pn$ > current.pn$ ||
205
+ (pathselector.pn$ === current.pn$ &&
206
+ pathselector.path <= current.path);
207
+ if (before) {
208
+ pathalt = [
209
+ ...pathalt.slice(0, i),
210
+ pathselector,
211
+ ...pathalt.slice(i),
212
+ ];
213
+ break;
214
+ }
215
+ }
216
+ }
217
+ if (!before) {
218
+ pathalt.push(pathselector);
169
219
  }
170
- return em;
220
+ opModel.path = pathalt[pathalt.length - 1].path;
221
+ opModel.pathalt = pathalt;
222
+ entityModel.op[opname] = opModel;
223
+ return opModel;
171
224
  },
172
225
  list: (entityModel, pathdef, op, path, entity, model) => {
173
226
  return opBuilder.any(entityModel, pathdef, op, path, entity, model);
@@ -185,6 +238,22 @@ const operationTransform = async function (ctx) {
185
238
  return opBuilder.any(entityModel, pathdef, op, path, entity, model);
186
239
  },
187
240
  };
241
+ /*
242
+ console.dir(
243
+ transform({ guide }, {
244
+ entity: {
245
+ '`$PACK`': ['guide.entity', {
246
+ '`$KEY`': 'name',
247
+ op: {
248
+ // load: ['`$IF`', ['`$SELECT`',{path:{'`$ANY`':{op:{load:'`$EXISTS`'}}}}], {
249
+ load: ['`$IF`', 'path.*.op.load', {
250
+ path: () => 'foo'
251
+ }]
252
+ }
253
+ }]
254
+ }
255
+ }), { depth: null })
256
+ */
188
257
  (0, jostraca_1.each)(guide.entity, (guideEntity) => {
189
258
  let opcount = 0;
190
259
  const entityModel = apimodel.main.api.entity[guideEntity.key$];
@@ -203,4 +272,19 @@ const operationTransform = async function (ctx) {
203
272
  return { ok: true, msg };
204
273
  };
205
274
  exports.operationTransform = operationTransform;
275
+ function makePathSelector(path) {
276
+ let out = { path };
277
+ let pn$ = 0;
278
+ for (const m of path.matchAll(/\/[^\/]+\/{([^}]+)\}/g)) {
279
+ const paramName = (0, utility_1.depluralize)((0, jostraca_1.snakify)(m[1]));
280
+ out[paramName] = true;
281
+ pn$++;
282
+ }
283
+ out.pn$ = pn$;
284
+ // for (let p of params) {
285
+ // setprop(out, p.name, getprop(out, p.name, false))
286
+ // console.log('SP', p.name, out[p.name])
287
+ // }
288
+ return out;
289
+ }
206
290
  //# sourceMappingURL=operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/transform/operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../src/transform/operation.ts"],"names":[],"mappings":"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"}
@@ -16,11 +16,6 @@ type TransformResult = {
16
16
  transform?: any;
17
17
  };
18
18
  type Transform = (ctx: TransformCtx, guide: Guide, tspec: TransformSpec, apimodel: any, def: any) => Promise<TransformResult>;
19
- type ProcessResult = {
20
- ok: boolean;
21
- msg: string;
22
- results: TransformResult[];
23
- };
24
19
  declare const OPKIND: any;
25
20
  declare const GuideShape: {
26
21
  <V>(root?: V | undefined, ctx?: import("gubu").Context): V & {
@@ -88,8 +83,6 @@ declare const GuideShape: {
88
83
  };
89
84
  };
90
85
  type Guide = ReturnType<typeof GuideShape>;
91
- declare function resolveTransforms(ctx: TransformCtx): Promise<TransformSpec>;
92
- declare function processTransforms(ctx: TransformCtx, transforms: any[], apimodel: any, def: any): Promise<ProcessResult>;
93
86
  declare function fixName(base: any, name: string, prop?: string): void;
94
87
  export type { TransformCtx, TransformSpec, Transform, TransformResult, Guide, };
95
- export { fixName, OPKIND, GuideShape, resolveTransforms, processTransforms, };
88
+ export { fixName, OPKIND, GuideShape, };
package/dist/transform.js CHANGED
@@ -1,14 +1,8 @@
1
1
  "use strict";
2
2
  /* Copyright (c) 2024 Voxgig, MIT License */
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
3
  Object.defineProperty(exports, "__esModule", { value: true });
7
4
  exports.GuideShape = exports.OPKIND = void 0;
8
5
  exports.fixName = fixName;
9
- exports.resolveTransforms = resolveTransforms;
10
- exports.processTransforms = processTransforms;
11
- const node_path_1 = __importDefault(require("node:path"));
12
6
  const jostraca_1 = require("jostraca");
13
7
  const gubu_1 = require("gubu");
14
8
  const top_1 = require("./transform/top");
@@ -37,100 +31,132 @@ const GuideShape = (0, gubu_1.Gubu)({
37
31
  manual: {},
38
32
  });
39
33
  exports.GuideShape = GuideShape;
40
- async function resolveTransforms(ctx) {
41
- const { log, model: { main: { api: { guide } } } } = ctx;
42
- const tspec = {
43
- transform: []
44
- };
45
- // TODO: parameterize
46
- const defkind = 'openapi';
47
- const transformNames = guide.control.transform[defkind].order
48
- .split(/\s*,\s*/)
49
- .map((t) => t.trim())
50
- .filter((t) => '' != t);
51
- log.info({
52
- point: 'transform', note: 'order: ' + transformNames.join(';'),
53
- order: transformNames
54
- });
55
- try {
56
- for (const tn of transformNames) {
57
- log.debug({ what: 'transform', transform: tn, note: tn });
58
- const transform = await resolveTransform(tn, ctx);
59
- tspec.transform.push(transform);
60
- }
61
- }
62
- catch (err) {
63
- console.log(err);
64
- throw err;
65
- }
66
- return tspec;
34
+ /*
35
+ async function resolveTransforms(ctx: TransformCtx): Promise<TransformSpec> {
36
+ const { log, model: { main: { api: { guide } } } } = ctx
37
+
38
+ const tspec: TransformSpec = {
39
+ transform: []
40
+ }
41
+
42
+ // TODO: parameterize
43
+ const defkind = 'openapi'
44
+ const transformNames = guide.control.transform[defkind].order
45
+ .split(/\s*,\s* /)
46
+ .map((t: string) => t.trim())
47
+ .filter((t: string) => '' != t)
48
+
49
+ log.info({
50
+ point: 'transform', note: 'order: ' + transformNames.join(';'),
51
+ order: transformNames
52
+ })
53
+
54
+ try {
55
+ for (const tn of transformNames) {
56
+ log.debug({ what: 'transform', transform: tn, note: tn })
57
+ const transform = await resolveTransform(tn, ctx)
58
+ tspec.transform.push(transform)
59
+ }
67
60
  }
68
- async function resolveTransform(tn, ctx) {
69
- const { log, defpath, model: { main: { api: { guide } } } } = ctx;
70
- let transform = TRANSFORM[tn];
71
- if (transform) {
72
- return transform;
73
- }
74
- const tdef = guide.transform[tn];
75
- if (null == tdef) {
76
- const err = new Error('Unknown transform: ' + tn);
77
- log.error({ what: 'transform', transform: tn, fail: 'unknown', err });
78
- throw err;
79
- }
80
- if (!tn.startsWith('custom')) {
81
- const err = new Error('Custom transform name must start with "custom": ' + tn);
82
- log.error({ what: 'transform', transform: tn, fail: 'prefix', err });
83
- throw err;
84
- }
85
- const customtpath = node_path_1.default.join(defpath, tdef.load);
61
+ catch (err: any) {
62
+ throw err
63
+ }
64
+
65
+ return tspec
66
+ }
67
+
68
+
69
+ async function resolveTransform(tn: string, ctx: TransformCtx) {
70
+ const { log, defpath, model: { main: { api: { guide } } } } = ctx
71
+
72
+ let transform = TRANSFORM[tn]
73
+ if (transform) {
74
+ return transform
75
+ }
76
+
77
+ const tdef = guide.transform[tn]
78
+ if (null == tdef) {
79
+ const err = new Error('Unknown transform: ' + tn)
80
+ log.error({ what: 'transform', transform: tn, fail: 'unknown', err })
81
+ throw err
82
+ }
83
+
84
+ if (!tn.startsWith('custom')) {
85
+ const err =
86
+ new Error('Custom transform name must start with "custom": ' + tn)
87
+ log.error({ what: 'transform', transform: tn, fail: 'prefix', err })
88
+ throw err
89
+ }
90
+
91
+ const customtpath = Path.join(defpath, tdef.load)
92
+ try {
93
+ const transformModule = require(customtpath)
94
+ transform = transformModule[tn]
95
+ }
96
+ catch (e: any) {
97
+ const err = new Error('Custom transform not found: ' +
98
+ customtpath + ': ' + e.message)
99
+ log.error({ what: 'transform', transform: tn, fail: 'require', err })
100
+ throw err
101
+ }
102
+
103
+ return transform
104
+ }
105
+
106
+
107
+ async function processTransforms(
108
+ ctx: TransformCtx,
109
+ // spec: TransformSpec,
110
+ transforms: any[],
111
+ apimodel: any,
112
+ def: any
113
+ ): Promise<ProcessResult> {
114
+ const pres: ProcessResult = {
115
+ ok: true,
116
+ msg: '',
117
+ results: []
118
+ }
119
+
120
+ const guide: Guide = GuideShape(ctx.model.main.api.guide)
121
+
122
+
123
+ // for (let tI = 0; tI < spec.transform.length; tI++) {
124
+ // const transform = spec.transform[tI]
125
+
126
+ for (let tI = 0; tI < transforms.length; tI++) {
127
+ const transform = transforms[tI]
128
+
86
129
  try {
87
- const transformModule = require(customtpath);
88
- transform = transformModule[tn];
130
+ const tres = await transform(ctx, guide, apimodel, def)
131
+ pres.ok = pres.ok && tres.ok
132
+ pres.results.push(tres)
89
133
  }
90
- catch (e) {
91
- const err = new Error('Custom transform not found: ' +
92
- customtpath + ': ' + e.message);
93
- log.error({ what: 'transform', transform: tn, fail: 'require', err });
94
- throw err;
134
+ catch (err: any) {
135
+ // TODO: fix: this error does not get printed
136
+ console.error(err)
137
+
138
+ pres.ok = false
139
+ pres.msg += transform.name + ': ' + err.message + '\n'
140
+ pres.results.push({
141
+ ok: false,
142
+ msg: err.message,
143
+ err,
144
+ transform
145
+ })
95
146
  }
96
- return transform;
97
- }
98
- async function processTransforms(ctx,
99
- // spec: TransformSpec,
100
- transforms, apimodel, def) {
101
- const pres = {
102
- ok: true,
103
- msg: '',
104
- results: []
105
- };
106
- const guide = GuideShape(ctx.model.main.api.guide);
107
- // for (let tI = 0; tI < spec.transform.length; tI++) {
108
- // const transform = spec.transform[tI]
109
- for (let tI = 0; tI < transforms.length; tI++) {
110
- const transform = transforms[tI];
111
- try {
112
- const tres = await transform(ctx, guide, apimodel, def);
113
- pres.ok = pres.ok && tres.ok;
114
- pres.results.push(tres);
115
- }
116
- catch (err) {
117
- // TODO: fix: this error does not get printed
118
- console.log(err);
119
- pres.ok = false;
120
- pres.msg += transform.name + ': ' + err.message + '\n';
121
- pres.results.push({
122
- ok: false,
123
- msg: err.message,
124
- err,
125
- transform
126
- });
127
- }
128
- }
129
- return pres;
147
+ }
148
+
149
+ return pres
130
150
  }
151
+ */
131
152
  function fixName(base, name, prop = 'name') {
132
- base[prop.toLowerCase()] = name.toLowerCase();
133
- base[(0, jostraca_1.camelify)(prop)] = (0, jostraca_1.camelify)(name);
134
- base[prop.toUpperCase()] = name.toUpperCase();
153
+ if (null != base && 'object' === typeof base && 'string' === typeof name) {
154
+ base[prop.toLowerCase()] = name.toLowerCase();
155
+ base[(0, jostraca_1.camelify)(prop)] = (0, jostraca_1.camelify)(name);
156
+ base[prop.toUpperCase()] = name.toUpperCase();
157
+ }
158
+ else {
159
+ // record to a "wierds" log
160
+ }
135
161
  }
136
162
  //# sourceMappingURL=transform.js.map
@@ -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":";AAAA,4CAA4C;;;AAmO1C,0BAAO;AA9NT,uCAA+C;AAE/C,+BAAyC;AAEzC,yCAA8C;AAC9C,+CAAoD;AACpD,qDAA0D;AAC1D,6CAAkD;AAwClD,MAAM,SAAS,GAA8B;IAC3C,GAAG,EAAE,kBAAY;IACjB,MAAM,EAAE,wBAAe;IACvB,SAAS,EAAE,8BAAkB;IAC7B,KAAK,EAAE,sBAAc;IACrB,2BAA2B;CAC5B,CAAA;AAID,MAAM,MAAM,GAAQ;IAClB,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;CACd,CAAA;AAgKC,wBAAM;AA7JR,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC;IACtB,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,EAAE;CACX,CAAC,CAAA;AAyJA,gCAAU;AApJZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqHE;AAIF,SAAS,OAAO,CAAC,IAAS,EAAE,IAAY,EAAE,IAAI,GAAG,MAAM;IACrD,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;QACzE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC7C,IAAI,CAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAA;QACrC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAC/C,CAAC;SACI,CAAC;QACJ,2BAA2B;IAC7B,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"root":["../src/apidef.ts","../src/guide.ts","../src/parse.ts","../src/resolver.ts","../src/transform.ts","../src/types.ts","../src/utility.ts","../src/builder/entity.ts","../src/builder/flow.ts","../src/builder/entity/apientity.ts","../src/builder/entity/def.ts","../src/builder/flow/flowheuristic01.ts","../src/guide/heuristic01.ts","../src/transform/entity.ts","../src/transform/field.ts","../src/transform/operation.ts","../src/transform/top.ts"],"version":"5.8.3"}
1
+ {"root":["../src/apidef.ts","../src/guide.ts","../src/parse.ts","../src/resolver.ts","../src/transform.ts","../src/types.ts","../src/utility.ts","../src/builder/entity.ts","../src/builder/flow.ts","../src/builder/entity/apientity.ts","../src/builder/entity/def.ts","../src/builder/flow/flowheuristic01.ts","../src/guide/heuristic01.ts","../src/transform/clean.ts","../src/transform/entity.ts","../src/transform/field.ts","../src/transform/operation.ts","../src/transform/top.ts"],"version":"5.8.3"}