@voxgig/sdkgen 0.34.8 → 0.34.10
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.
- package/bin/voxgig-sdkgen +1 -1
- package/package.json +1 -1
- package/project/.sdk/src/cmp/js/Entity_js.ts +1 -0
- package/project/.sdk/src/cmp/ts/Entity_ts.ts +1 -0
- package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +2 -2
- package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +34 -9
- package/project/.sdk/tm/go/utility/make_target.go +5 -0
- package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +5 -0
package/bin/voxgig-sdkgen
CHANGED
package/package.json
CHANGED
|
@@ -121,7 +121,7 @@ function directSetup(mockres?: any) {
|
|
|
121
121
|
|
|
122
122
|
function generateDirectLoad(model: any, entity: any) {
|
|
123
123
|
const loadOp = entity.op.load
|
|
124
|
-
const loadPoint = loadOp
|
|
124
|
+
const loadPoint = loadOp?.points?.[0]
|
|
125
125
|
|
|
126
126
|
if (null == loadPoint) {
|
|
127
127
|
return
|
|
@@ -218,7 +218,7 @@ ${paramAsserts} }
|
|
|
218
218
|
|
|
219
219
|
function generateDirectList(model: any, entity: any) {
|
|
220
220
|
const listOp = entity.op.list
|
|
221
|
-
const listPoint = listOp
|
|
221
|
+
const listPoint = listOp?.points?.[0]
|
|
222
222
|
|
|
223
223
|
if (null == listPoint) {
|
|
224
224
|
return
|
|
@@ -189,11 +189,33 @@ const generateCreate: OpGen = (
|
|
|
189
189
|
const entvar = step.input.entvar ?? ref + '_ent'
|
|
190
190
|
const datavar = step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? ''))
|
|
191
191
|
|
|
192
|
+
const priorSteps = Object.values(flow.step).slice(0, Number(index))
|
|
193
|
+
const needsEnt = !priorSteps.some((s: any) =>
|
|
194
|
+
['create', 'list', 'load', 'remove'].includes(s.op))
|
|
195
|
+
|
|
196
|
+
const hasDatvar = priorSteps.some((s: any) => {
|
|
197
|
+
if ('create' === s.op) {
|
|
198
|
+
const priorRef = s.input?.ref ?? entity.name + '_ref01'
|
|
199
|
+
const priorDatvar = s.input?.datavar ?? (priorRef + '_data' + (s.input?.suffix ?? ''))
|
|
200
|
+
return priorDatvar === datavar
|
|
201
|
+
}
|
|
202
|
+
return false
|
|
203
|
+
})
|
|
204
|
+
|
|
192
205
|
Content(`
|
|
193
206
|
// CREATE
|
|
194
|
-
const ${entvar} = client.${nom(entity, 'Name')}()
|
|
195
|
-
let ${datavar} = setup.data.new.${entity.name}['${ref}']
|
|
196
207
|
`)
|
|
208
|
+
if (needsEnt) {
|
|
209
|
+
Content(` const ${entvar} = client.${nom(entity, 'Name')}()
|
|
210
|
+
`)
|
|
211
|
+
}
|
|
212
|
+
if (hasDatvar) {
|
|
213
|
+
Content(` ${datavar} = setup.data.new.${entity.name}['${ref}']
|
|
214
|
+
`)
|
|
215
|
+
} else {
|
|
216
|
+
Content(` let ${datavar} = setup.data.new.${entity.name}['${ref}']
|
|
217
|
+
`)
|
|
218
|
+
}
|
|
197
219
|
|
|
198
220
|
each(step.match, (mi: any) => {
|
|
199
221
|
Content(` ${datavar}['${mi.key$}'] = setup.idmap['${mi.val$}']
|
|
@@ -219,8 +241,9 @@ const generateList: OpGen = (
|
|
|
219
241
|
const matchvar = step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? ''))
|
|
220
242
|
const listvar = step.input.listvar ?? (ref + '_list' + (step.input.suffix ?? ''))
|
|
221
243
|
|
|
222
|
-
const priorSteps = Object.values(flow.step).slice(0, index
|
|
223
|
-
const needsEnt = !priorSteps.some((s: any) =>
|
|
244
|
+
const priorSteps = Object.values(flow.step).slice(0, Number(index))
|
|
245
|
+
const needsEnt = !priorSteps.some((s: any) =>
|
|
246
|
+
['create', 'list', 'load', 'remove'].includes(s.op))
|
|
224
247
|
|
|
225
248
|
Content(`
|
|
226
249
|
// LIST
|
|
@@ -331,13 +354,14 @@ const generateLoad: OpGen = (
|
|
|
331
354
|
const datavar = step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? ''))
|
|
332
355
|
const srcdatavar = step.input.srcdatavar ?? (ref + '_data' + (step.input.suffix ?? ''))
|
|
333
356
|
|
|
334
|
-
const priorSteps = Object.values(flow.step).slice(0, index
|
|
335
|
-
const
|
|
357
|
+
const priorSteps = Object.values(flow.step).slice(0, Number(index))
|
|
358
|
+
const hasEntVar = priorSteps.some((s: any) =>
|
|
359
|
+
['create', 'list', 'load', 'remove'].includes(s.op))
|
|
336
360
|
|
|
337
361
|
Content(`
|
|
338
362
|
// LOAD
|
|
339
363
|
`)
|
|
340
|
-
if (!
|
|
364
|
+
if (!hasEntVar) {
|
|
341
365
|
Content(` const ${entvar} = client.${nom(entity, 'Name')}()
|
|
342
366
|
const ${srcdatavar} = Object.values(setup.data.existing.${entity.name})[0] as any
|
|
343
367
|
`)
|
|
@@ -362,8 +386,9 @@ const generateRemove: OpGen = (
|
|
|
362
386
|
const matchvar = step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? ''))
|
|
363
387
|
const srcdatavar = step.input.srcdatavar ?? (ref + '_data')
|
|
364
388
|
|
|
365
|
-
const priorSteps = Object.values(flow.step).slice(0, index
|
|
366
|
-
const needsEnt = !priorSteps.some((s: any) =>
|
|
389
|
+
const priorSteps = Object.values(flow.step).slice(0, Number(index))
|
|
390
|
+
const needsEnt = !priorSteps.some((s: any) =>
|
|
391
|
+
['create', 'list', 'load', 'remove'].includes(s.op))
|
|
367
392
|
|
|
368
393
|
Content(`
|
|
369
394
|
// REMOVE
|
|
@@ -26,6 +26,11 @@ func makePointUtil(ctx *core.Context) (map[string]any, error) {
|
|
|
26
26
|
"\" not allowed by SDK option allow.op value: \""+allowOp+"\"")
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
+
if len(op.Points) == 0 {
|
|
30
|
+
return nil, ctx.MakeError("point_no_points",
|
|
31
|
+
"Operation \""+op.Name+"\" has no endpoint definitions.")
|
|
32
|
+
}
|
|
33
|
+
|
|
29
34
|
if len(op.Points) == 1 {
|
|
30
35
|
ctx.Point = op.Points[0]
|
|
31
36
|
} else {
|
|
@@ -16,6 +16,11 @@ function makePoint(ctx: Context): Point | Error {
|
|
|
16
16
|
'" not allowed by SDK option allow.op value: "' + options.allow.op + '"')
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
if (0 === op.points.length) {
|
|
20
|
+
return ctx.error('point_no_points',
|
|
21
|
+
'Operation "' + op.name + '" has no endpoint definitions.')
|
|
22
|
+
}
|
|
23
|
+
|
|
19
24
|
// Choose the appropriate point based on the match or data.
|
|
20
25
|
if (1 === op.points.length) {
|
|
21
26
|
ctx.point = op.points[0]
|