@voxgig/apidef 2.4.0 → 3.0.2

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 (96) hide show
  1. package/dist/apidef.d.ts +5 -1
  2. package/dist/apidef.js +197 -112
  3. package/dist/apidef.js.map +1 -1
  4. package/dist/builder/entity/entity.d.ts +3 -0
  5. package/dist/builder/entity/{apiEntity.js → entity.js} +12 -9
  6. package/dist/builder/entity/entity.js.map +1 -0
  7. package/dist/builder/entity/info.d.ts +3 -0
  8. package/dist/builder/entity/info.js +22 -0
  9. package/dist/builder/entity/info.js.map +1 -0
  10. package/dist/builder/entity.js +7 -21
  11. package/dist/builder/entity.js.map +1 -1
  12. package/dist/builder/flow/flowHeuristic01.js +21 -11
  13. package/dist/builder/flow/flowHeuristic01.js.map +1 -1
  14. package/dist/builder/flow.d.ts +2 -1
  15. package/dist/builder/flow.js +29 -4
  16. package/dist/builder/flow.js.map +1 -1
  17. package/dist/def.d.ts +62 -0
  18. package/dist/def.js +4 -0
  19. package/dist/def.js.map +1 -0
  20. package/dist/desc.d.ts +89 -0
  21. package/dist/desc.js +4 -0
  22. package/dist/desc.js.map +1 -0
  23. package/dist/guide/guide.d.ts +2 -1
  24. package/dist/guide/guide.js +161 -30
  25. package/dist/guide/guide.js.map +1 -1
  26. package/dist/guide/heuristic01.d.ts +2 -1
  27. package/dist/guide/heuristic01.js +1120 -234
  28. package/dist/guide/heuristic01.js.map +1 -1
  29. package/dist/model.d.ts +55 -0
  30. package/dist/model.js +4 -0
  31. package/dist/model.js.map +1 -0
  32. package/dist/parse.d.ts +1 -2
  33. package/dist/parse.js +8 -47
  34. package/dist/parse.js.map +1 -1
  35. package/dist/transform/args.d.ts +3 -0
  36. package/dist/transform/args.js +58 -0
  37. package/dist/transform/args.js.map +1 -0
  38. package/dist/transform/clean.js +27 -3
  39. package/dist/transform/clean.js.map +1 -1
  40. package/dist/transform/entity.d.ts +11 -3
  41. package/dist/transform/entity.js +57 -41
  42. package/dist/transform/entity.js.map +1 -1
  43. package/dist/transform/field.d.ts +3 -3
  44. package/dist/transform/field.js +90 -65
  45. package/dist/transform/field.js.map +1 -1
  46. package/dist/transform/operation.d.ts +1 -1
  47. package/dist/transform/operation.js +94 -296
  48. package/dist/transform/operation.js.map +1 -1
  49. package/dist/transform/select.d.ts +3 -0
  50. package/dist/transform/select.js +44 -0
  51. package/dist/transform/select.js.map +1 -0
  52. package/dist/transform/top.d.ts +9 -0
  53. package/dist/transform/top.js +11 -2
  54. package/dist/transform/top.js.map +1 -1
  55. package/dist/transform.js +4 -0
  56. package/dist/transform.js.map +1 -1
  57. package/dist/tsconfig.tsbuildinfo +1 -1
  58. package/dist/types.d.ts +112 -19
  59. package/dist/types.js +4 -2
  60. package/dist/types.js.map +1 -1
  61. package/dist/utility.d.ts +30 -2
  62. package/dist/utility.js +381 -6
  63. package/dist/utility.js.map +1 -1
  64. package/model/apidef.jsonic +75 -1
  65. package/model/guide.jsonic +14 -44
  66. package/package.json +19 -14
  67. package/src/apidef.ts +264 -121
  68. package/src/builder/entity/{apiEntity.ts → entity.ts} +18 -11
  69. package/src/builder/entity/info.ts +53 -0
  70. package/src/builder/entity.ts +9 -35
  71. package/src/builder/flow/flowHeuristic01.ts +46 -12
  72. package/src/builder/flow.ts +39 -5
  73. package/src/def.ts +91 -0
  74. package/src/desc.ts +143 -0
  75. package/src/guide/guide.ts +207 -134
  76. package/src/guide/heuristic01.ts +1651 -272
  77. package/src/model.ts +98 -0
  78. package/src/parse.ts +5 -61
  79. package/src/schematron.ts.off +317 -0
  80. package/src/transform/args.ts +102 -0
  81. package/src/transform/clean.ts +43 -8
  82. package/src/transform/entity.ts +100 -51
  83. package/src/transform/field.ts +150 -71
  84. package/src/transform/operation.ts +118 -414
  85. package/src/transform/select.ts +90 -0
  86. package/src/transform/top.ts +76 -3
  87. package/src/transform.ts +4 -0
  88. package/src/types.ts +185 -5
  89. package/src/utility.ts +481 -9
  90. package/dist/builder/entity/apiEntity.d.ts +0 -3
  91. package/dist/builder/entity/apiEntity.js.map +0 -1
  92. package/dist/builder/entity/def.d.ts +0 -3
  93. package/dist/builder/entity/def.js +0 -19
  94. package/dist/builder/entity/def.js.map +0 -1
  95. package/src/builder/entity/def.ts +0 -44
  96. package/src/guide.ts.off +0 -136
package/dist/apidef.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { ApiDefOptions, ApiDefResult } from './types';
2
2
  import { parse } from './parse';
3
+ import { formatJSONIC } from './utility';
3
4
  declare function ApiDef(opts: ApiDefOptions): {
4
5
  generate: (spec: any) => Promise<ApiDefResult>;
5
6
  };
@@ -10,4 +11,7 @@ declare namespace ApiDef {
10
11
  }>;
11
12
  }
12
13
  export type { ApiDefOptions, };
13
- export { ApiDef, parse, };
14
+ export type { PathDef, MethodDef, ServerDef, ServerVariableDef, ParameterDef, SchemaDef, } from './def';
15
+ export type { CmpDesc, BasicMethodDesc, MethodDesc, MethodEntityDesc, EntityDesc, EntityPathDesc, PathDesc, OpDesc, } from './desc';
16
+ export type { OpName, ModelEntityRelations, ModelOpMap, ModelFieldOp, ModelField, ModelArg, ModelAlt, ModelOp, ModelEntity, } from './model';
17
+ export { ApiDef, parse, formatJSONIC, };
package/dist/apidef.js CHANGED
@@ -37,22 +37,25 @@ 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.parse = void 0;
40
+ exports.formatJSONIC = exports.parse = void 0;
41
41
  exports.ApiDef = ApiDef;
42
42
  const Fs = __importStar(require("node:fs"));
43
43
  const node_path_1 = __importDefault(require("node:path"));
44
44
  const jostraca_1 = require("jostraca");
45
45
  const util_1 = require("@voxgig/util");
46
+ const decircular_1 = __importDefault(require("decircular"));
46
47
  const types_1 = require("./types");
47
48
  const guide_1 = require("./guide/guide");
48
49
  const parse_1 = require("./parse");
49
50
  Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parse_1.parse; } });
50
51
  const transform_1 = require("./transform");
51
- const resolver_1 = require("./resolver");
52
52
  const utility_1 = require("./utility");
53
+ Object.defineProperty(exports, "formatJSONIC", { enumerable: true, get: function () { return utility_1.formatJSONIC; } });
53
54
  const top_1 = require("./transform/top");
54
55
  const entity_1 = require("./transform/entity");
55
56
  const operation_1 = require("./transform/operation");
57
+ const args_1 = require("./transform/args");
58
+ const select_1 = require("./transform/select");
56
59
  const field_1 = require("./transform/field");
57
60
  const clean_1 = require("./transform/clean");
58
61
  const entity_2 = require("./builder/entity");
@@ -64,124 +67,205 @@ function ApiDef(opts) {
64
67
  const fs = opts.fs || Fs;
65
68
  const pino = (0, util_1.prettyPino)('apidef', opts);
66
69
  const log = pino.child({ cmp: 'apidef' });
70
+ const warn = (0, utility_1.makeWarner)({ point: 'warning', log });
67
71
  opts.strategy = opts.strategy || 'heuristic01';
68
72
  async function generate(spec) {
69
73
  const start = Date.now();
70
74
  const steps = [];
71
- // dlog('start')
72
- const ctrl = (0, types_1.OpenControlShape)(spec.ctrl || {});
73
- const model = (0, types_1.OpenModelShape)(spec.model || {});
74
- const build = (0, types_1.OpenBuildShape)(spec.build || {});
75
- // Step: parse (API spec).
76
- if (!ctrl.step.parse) {
77
- return { ok: false, steps, start, end: Date.now(), ctrl };
78
- }
79
- (0, jostraca_1.names)(model, model.name);
80
- const apimodel = {
81
- main: {
82
- api: {
83
- entity: {}
75
+ let ctx = undefined;
76
+ let ctrl = undefined;
77
+ let jres = undefined;
78
+ try {
79
+ ctrl = (0, types_1.OpenControlShape)(spec.ctrl || {});
80
+ const model = (0, types_1.OpenModelShape)(spec.model || {});
81
+ const build = (0, types_1.OpenBuildShape)(spec.build || {});
82
+ // Step: parse (API spec).
83
+ if (!ctrl.step.parse) {
84
+ return { ok: true, steps, start, end: Date.now(), ctrl };
85
+ }
86
+ (0, jostraca_1.names)(model, model.name);
87
+ const apimodel = {
88
+ main: {
89
+ api: {},
90
+ [types_1.KIT]: {
91
+ info: {},
92
+ entity: {},
93
+ flow: {},
94
+ },
95
+ def: {},
84
96
  },
85
- def: {},
86
- },
87
- };
88
- const buildspec = build.spec;
89
- let defpath = model.def;
90
- // TOOD: defpath should be independently defined
91
- defpath = node_path_1.default.join(buildspec.base, '..', 'def', defpath);
92
- log.info({
93
- point: 'generate-start',
94
- note: defpath.replace(process.cwd(), '.'), defpath, start
95
- });
96
- // TODO: Validate spec
97
- const ctx = {
98
- fs,
99
- log,
100
- spec,
101
- opts,
102
- util: { fixName: transform_1.fixName },
103
- defpath: node_path_1.default.dirname(defpath),
104
- model,
105
- apimodel,
106
- guide: {},
107
- def: undefined,
108
- note: {}
109
- };
110
- const defsrc = (0, utility_1.loadFile)(defpath, 'def', fs, log);
111
- let def = await (0, parse_1.parse)('OpenAPI', defsrc, { file: defpath });
112
- def = (0, parse_1.rewrite)(def);
113
- fs.writeFileSync(defpath + '.full.json', JSON.stringify(def, null, 2));
114
- ctx.def = def;
115
- steps.push('parse');
116
- // Step: guide (derive).
117
- if (!ctrl.step.guide) {
118
- return { ok: false, steps, start, end: Date.now(), ctrl };
119
- }
120
- const guideModel = await (0, guide_1.buildGuide)(ctx);
121
- ctx.guide = guideModel.guide;
122
- steps.push('guide');
123
- // Step: transformers (transform spec and guide into core structures).
124
- if (!ctrl.step.transformers) {
125
- return { ok: false, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
126
- }
127
- // const transformSpec = await resolveTransforms(ctx)
128
- const transforms = await (0, resolver_1.resolveElements)(ctx, 'transform', 'openapi', {
129
- top: top_1.topTransform,
130
- entity: entity_1.entityTransform,
131
- operation: operation_1.operationTransform,
132
- field: field_1.fieldTransform,
133
- clean: clean_1.cleanTransform,
134
- });
135
- steps.push('transformers');
136
- // Step: builders (build generated sub models).
137
- if (!ctrl.step.builders) {
138
- return { ok: false, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
139
- }
140
- const builders = await (0, resolver_1.resolveElements)(ctx, 'builder', 'standard', {
141
- entity: entity_2.makeEntityBuilder,
142
- flow: flow_1.makeFlowBuilder,
143
- });
144
- steps.push('builders');
145
- // Step: generate (generate model files).
146
- if (!ctrl.step.generate) {
147
- return { ok: false, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
148
- }
149
- const jostraca = (0, jostraca_1.Jostraca)({
150
- now: spec.now,
151
- fs: () => fs,
152
- log,
153
- });
154
- const jmodel = {};
155
- const root = () => (0, jostraca_1.Project)({ folder: '.' }, async () => {
156
- for (let builder of builders) {
157
- builder();
97
+ };
98
+ const buildspec = build.spec;
99
+ let defpath = model.def;
100
+ // TOOD: defpath should be independently defined
101
+ defpath = node_path_1.default.join(buildspec.base, '..', 'def', defpath);
102
+ log.info({
103
+ point: 'generate-start',
104
+ note: defpath.replace(process.cwd(), '.'),
105
+ defpath,
106
+ start
107
+ });
108
+ // TODO: Validate spec
109
+ ctx = {
110
+ fs,
111
+ log,
112
+ spec,
113
+ opts,
114
+ util: { fixName: transform_1.fixName },
115
+ defpath: node_path_1.default.dirname(defpath),
116
+ model,
117
+ apimodel,
118
+ guide: {},
119
+ def: undefined,
120
+ note: {},
121
+ warn,
122
+ // TODO: remove (moved to guide)
123
+ metrics: {
124
+ count: {
125
+ path: 0,
126
+ method: 0,
127
+ origcmprefs: {},
128
+ cmp: 0,
129
+ tag: 0,
130
+ entity: 0,
131
+ },
132
+ found: {
133
+ cmp: {},
134
+ tag: {}
135
+ }
136
+ },
137
+ work: {}
138
+ };
139
+ const defsrc = (0, utility_1.loadFile)(defpath, 'def', fs, log);
140
+ const def = await (0, parse_1.parse)('OpenAPI', defsrc, { file: defpath });
141
+ const defkeys = Object.keys(def);
142
+ log.info({
143
+ point: 'root-keys',
144
+ defpath,
145
+ note: defkeys.join(', ')
146
+ });
147
+ const safedef = (0, decircular_1.default)(def);
148
+ const fullsrc = JSON.stringify(safedef, null, 2);
149
+ fs.writeFileSync(defpath + '.full.json', fullsrc);
150
+ ctx.def = safedef;
151
+ steps.push('parse');
152
+ // Step: guide (derive).
153
+ if (!ctrl.step.guide) {
154
+ return { ok: false, steps, start, end: Date.now(), ctrl };
158
155
  }
159
- });
160
- const jres = await jostraca.generate({
161
- // folder: Path.dirname(opts.folder as string),
162
- folder: opts.folder,
163
- model: jmodel,
164
- existing: { txt: { merge: true } }
165
- }, root);
166
- const dlogs = dlog.log();
167
- if (0 < dlogs.length) {
168
- for (let dlogentry of dlogs) {
169
- log.debug({ point: 'generate-warning', dlogentry, note: String(dlogentry) });
156
+ const guideModel = await (0, guide_1.buildGuide)(ctx);
157
+ if (null == guideModel) {
158
+ throw new Error('Unable to build guide.');
170
159
  }
160
+ ctx.guide = guideModel.guide;
161
+ steps.push('guide');
162
+ // Step: transformers (transform spec and guide into core structures).
163
+ if (!ctrl.step.transformers) {
164
+ return { ok: true, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
165
+ }
166
+ /*
167
+ const transres = await resolveElements(ctx, 'transform', 'openapi', {
168
+ top: topTransform,
169
+ entity: entityTransform,
170
+ operation: operationTransform,
171
+ args: argsTransform,
172
+ field: fieldTransform,
173
+ clean: cleanTransform,
174
+ })
175
+ */
176
+ // const transformResult = await runTransform(ctx)
177
+ // if (null == transformResult) {
178
+ // throw new Error('Unable to run Transform.')
179
+ // }
180
+ await (0, top_1.topTransform)(ctx);
181
+ await (0, entity_1.entityTransform)(ctx);
182
+ await (0, operation_1.operationTransform)(ctx);
183
+ await (0, args_1.argsTransform)(ctx);
184
+ await (0, select_1.selectTransform)(ctx);
185
+ await (0, field_1.fieldTransform)(ctx);
186
+ await (0, clean_1.cleanTransform)(ctx);
187
+ steps.push('transformers');
188
+ // Step: builders (build generated sub models).
189
+ if (!ctrl.step.builders) {
190
+ return { ok: true, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
191
+ }
192
+ const builders = [
193
+ await (0, entity_2.makeEntityBuilder)(ctx),
194
+ // TODO: move to sdkgen
195
+ await (0, flow_1.makeFlowBuilder)(ctx),
196
+ ];
197
+ steps.push('builders');
198
+ // Step: generate (generate model files).
199
+ if (!ctrl.step.generate) {
200
+ return { ok: true, steps, start, end: Date.now(), ctrl, guide: ctx.guide };
201
+ }
202
+ const jostraca = (0, jostraca_1.Jostraca)({
203
+ now: spec.now,
204
+ fs: () => fs,
205
+ log,
206
+ });
207
+ const jmodel = {};
208
+ const root = () => (0, jostraca_1.Project)({ folder: '.' }, async () => {
209
+ for (let builder of builders) {
210
+ builder();
211
+ }
212
+ });
213
+ jres = await jostraca.generate({
214
+ // folder: Path.dirname(opts.folder as string),
215
+ folder: opts.folder,
216
+ model: jmodel,
217
+ existing: { txt: { merge: true } }
218
+ }, root);
219
+ const dlogs = dlog.log();
220
+ if (0 < dlogs.length) {
221
+ for (let dlogentry of dlogs) {
222
+ log.debug({ point: 'generate-debug', dlogentry, note: String(dlogentry) });
223
+ }
224
+ }
225
+ steps.push('generate');
226
+ const hasWarnings = 0 < warn.history.length;
227
+ const endnote = hasWarnings ? `PARTIAL BUILD! There were ${warn.history.length} warnings (see above).` :
228
+ 'success';
229
+ log[hasWarnings ? 'warn' : 'info']({ point: 'generate-end', note: endnote, break: true });
230
+ if (hasWarnings) {
231
+ (0, utility_1.writeFileSyncWarn)(warn, fs, './apidef-warnings.txt', warn.history.map(n => (0, utility_1.formatJSONIC)(n)).join('\n\n'));
232
+ }
233
+ return {
234
+ ok: true,
235
+ err: null,
236
+ start,
237
+ end: Date.now(),
238
+ steps,
239
+ ctrl,
240
+ guide: ctx.guide,
241
+ apimodel: ctx.apimodel,
242
+ ctx,
243
+ jres,
244
+ };
245
+ }
246
+ catch (err) {
247
+ const endnote = '!! BUILD FAILED !! ' + err.message;
248
+ log.error({ point: 'generate-end', err, note: endnote, break: true });
249
+ warn.history.push({
250
+ point: warn.point,
251
+ when: Date.now(),
252
+ err,
253
+ note: endnote
254
+ });
255
+ (0, utility_1.writeFileSyncWarn)(warn, fs, './apidef-warnings.txt', warn.history.map(n => (0, utility_1.formatJSONIC)(n)).join('\n\n'));
256
+ return {
257
+ ok: false,
258
+ err,
259
+ start,
260
+ end: Date.now(),
261
+ steps,
262
+ ctrl,
263
+ guide: ctx?.guide,
264
+ apimodel: ctx?.apimodel,
265
+ ctx,
266
+ jres,
267
+ };
171
268
  }
172
- steps.push('generate');
173
- log.info({ point: 'generate-end', note: 'success', break: true });
174
- return {
175
- ok: true,
176
- start,
177
- end: Date.now(),
178
- steps,
179
- ctrl,
180
- guide: ctx.guide,
181
- apimodel,
182
- ctx,
183
- jres,
184
- };
185
269
  }
186
270
  return {
187
271
  generate,
@@ -205,6 +289,7 @@ ApiDef.makeBuild = async function (opts) {
205
289
  outprefix: opts.outprefix,
206
290
  strategy: opts.strategy,
207
291
  pino: build.log,
292
+ why: opts.why,
208
293
  });
209
294
  }
210
295
  const ctrl = build.spec.buildargs?.apidef?.ctrl || {};
@@ -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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"}
@@ -0,0 +1,3 @@
1
+ import type { ApiDefOptions } from '../../types';
2
+ declare function resolveEntity(apimodel: any, opts: ApiDefOptions): () => void;
3
+ export { resolveEntity };
@@ -4,30 +4,33 @@ 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.resolveApiEntity = resolveApiEntity;
7
+ exports.resolveEntity = resolveEntity;
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const jostraca_1 = require("jostraca");
10
+ const types_1 = require("../../types");
10
11
  const utility_1 = require("../../utility");
11
- function resolveApiEntity(apimodel, opts) {
12
+ function resolveEntity(apimodel, opts) {
13
+ const kit = apimodel.main[types_1.KIT];
12
14
  const barrel = [
13
15
  '# Entity Models\n'
14
16
  ];
15
17
  const entityFiles = [];
16
- (0, jostraca_1.each)(apimodel.main.api.entity, ((entity, entityName) => {
18
+ (0, jostraca_1.each)(kit.entity, ((entity, entityName) => {
17
19
  const entityFile = (null == opts.outprefix ? '' : opts.outprefix) + entityName + '.jsonic';
18
- const entityJSON = JSON.stringify(entity, null, 2);
20
+ let entityJSONIC = (0, utility_1.formatJSONIC)(entity).trim();
21
+ entityJSONIC = entityJSONIC.substring(1, entityJSONIC.length - 1);
19
22
  const fieldAliasesSrc = fieldAliases(entity);
20
23
  const entitySrc = `# Entity: ${entity.name}\n\n` +
21
- `main: api: entity: ${entity.name}: {\n\n` +
24
+ `main: ${types_1.KIT}: entity: ${entity.name}: {\n\n` +
22
25
  ` alias: field: ${fieldAliasesSrc}\n` +
23
- (0, utility_1.formatJsonSrc)(entityJSON.substring(1, entityJSON.length - 1)) +
26
+ entityJSONIC +
24
27
  '\n\n}\n';
25
28
  entityFiles.push({ name: entityFile, src: entitySrc });
26
29
  barrel.push(`@"${node_path_1.default.basename(entityFile)}"`);
27
30
  }));
28
- const indexFile = (null == opts.outprefix ? '' : opts.outprefix) + 'api-entity-index.jsonic';
31
+ const indexFile = (null == opts.outprefix ? '' : opts.outprefix) + 'entity-index.jsonic';
29
32
  return function apiEntityBuilder() {
30
- (0, jostraca_1.Folder)({ name: 'api' }, () => {
33
+ (0, jostraca_1.Folder)({ name: 'entity' }, () => {
31
34
  (0, jostraca_1.each)(entityFiles, (entityFile) => {
32
35
  (0, jostraca_1.File)({ name: entityFile.name }, () => (0, jostraca_1.Content)(entityFile.src));
33
36
  });
@@ -48,4 +51,4 @@ function fieldAliases(entity) {
48
51
  .replace(/\n/g, '\n ');
49
52
  return fieldAliasesSrc;
50
53
  }
51
- //# sourceMappingURL=apiEntity.js.map
54
+ //# sourceMappingURL=entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/builder/entity/entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ApiDefOptions } from '../../types';
2
+ declare function resolveInfo(apimodel: any, opts: ApiDefOptions): () => void;
3
+ export { resolveInfo };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ /* Copyright (c) 2025 Voxgig, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.resolveInfo = resolveInfo;
5
+ const utility_1 = require("../../utility");
6
+ const types_1 = require("../../types");
7
+ const jostraca_1 = require("jostraca");
8
+ function resolveInfo(apimodel, opts) {
9
+ const kit = apimodel.main[types_1.KIT];
10
+ const infoFile = (null == opts.outprefix ? '' : opts.outprefix) + 'api-info.jsonic';
11
+ const modelInfo = { main: { info: kit.info } };
12
+ let modelDefSrc = (0, utility_1.formatJSONIC)(modelInfo);
13
+ modelDefSrc =
14
+ '# API Information\n\n' +
15
+ modelDefSrc.substring(1, modelDefSrc.length - 1).replace(/\n /g, '\n');
16
+ return function infoBuilder() {
17
+ (0, jostraca_1.Folder)({ name: 'api' }, () => {
18
+ (0, jostraca_1.File)({ name: infoFile }, () => (0, jostraca_1.Content)(modelDefSrc));
19
+ });
20
+ };
21
+ }
22
+ //# sourceMappingURL=info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/builder/entity/info.ts"],"names":[],"mappings":";AAAA,4CAA4C;;AAmD1C,kCAAW;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,iBAAiB,CAAA;IAEpE,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAA;IAE9C,IAAI,WAAW,GAAG,IAAA,sBAAY,EAAC,SAAS,CAAC,CAAA;IAEzC,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"}
@@ -2,29 +2,15 @@
2
2
  /* Copyright (c) 2025 Voxgig, MIT License */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.makeEntityBuilder = makeEntityBuilder;
5
- // import { each } from 'jostraca'
6
- // import type {
7
- // ApiDefOptions,
8
- // Log,
9
- // FsUtil,
10
- // } from '../types'
11
- // import {
12
- // writeChanged
13
- // } from '../utility'
14
- const apiEntity_1 = require("./entity/apiEntity");
15
- const def_1 = require("./entity/def");
16
- // import {
17
- // resolveSdkEntity
18
- // } from './entity/sdkEntity'
5
+ const entity_1 = require("./entity/entity");
6
+ const info_1 = require("./entity/info");
19
7
  async function makeEntityBuilder(ctx) {
20
8
  const { apimodel, opts } = ctx;
21
- const apiEntityBuilder = (0, apiEntity_1.resolveApiEntity)(apimodel, opts);
22
- const defBuilder = (0, def_1.resolveDef)(apimodel, opts);
23
- // const sdkEntityBuilder = resolveSdkEntity(apimodel, opts)
24
- return function entityBuilder() {
25
- apiEntityBuilder();
26
- defBuilder();
27
- // sdkEntityBuilder()
9
+ const entityBuilder = (0, entity_1.resolveEntity)(apimodel, opts);
10
+ const infoBuilder = (0, info_1.resolveInfo)(apimodel, opts);
11
+ return function fullEntityBuilder() {
12
+ entityBuilder();
13
+ infoBuilder();
28
14
  };
29
15
  }
30
16
  //# sourceMappingURL=entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/builder/entity.ts"],"names":[],"mappings":";AAAA,4CAA4C;;AAoD1C,8CAAiB;AAhDnB,kCAAkC;AAGlC,gBAAgB;AAChB,mBAAmB;AACnB,SAAS;AACT,YAAY;AACZ,oBAAoB;AAGpB,WAAW;AACX,iBAAiB;AACjB,sBAAsB;AAGtB,kDAE2B;AAE3B,sCAEqB;AAErB,WAAW;AACX,qBAAqB;AACrB,8BAA8B;AAI9B,KAAK,UAAU,iBAAiB,CAAC,GAAQ;IACvC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAE9B,MAAM,gBAAgB,GAAG,IAAA,4BAAgB,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACzD,MAAM,UAAU,GAAG,IAAA,gBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC7C,4DAA4D;IAE5D,OAAO,SAAS,aAAa;QAC3B,gBAAgB,EAAE,CAAA;QAClB,UAAU,EAAE,CAAA;QACZ,qBAAqB;IACvB,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/builder/entity.ts"],"names":[],"mappings":";AAAA,4CAA4C;;AA0B1C,8CAAiB;AAvBnB,4CAEwB;AAExB,wCAEsB;AAGtB,KAAK,UAAU,iBAAiB,CAAC,GAAQ;IACvC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAE9B,MAAM,aAAa,GAAG,IAAA,sBAAa,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACnD,MAAM,WAAW,GAAG,IAAA,kBAAW,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAE/C,OAAO,SAAS,iBAAiB;QAC/B,aAAa,EAAE,CAAA;QACf,WAAW,EAAE,CAAA;IACf,CAAC,CAAA;AACH,CAAC"}