@voxgig/sdkgen 0.14.0 → 0.16.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 (52) hide show
  1. package/bin/voxgig-sdkgen +135 -0
  2. package/dist/action/feature.d.ts +2 -0
  3. package/dist/action/feature.js +76 -0
  4. package/dist/action/feature.js.map +1 -0
  5. package/dist/action/lang.d.ts +2 -0
  6. package/dist/action/lang.js +68 -0
  7. package/dist/action/lang.js.map +1 -0
  8. package/dist/action/target.d.ts +2 -0
  9. package/dist/action/target.js +82 -0
  10. package/dist/action/target.js.map +1 -0
  11. package/dist/cmp/Entity.js +3 -3
  12. package/dist/cmp/Entity.js.map +1 -1
  13. package/dist/cmp/Feature.js +10 -3
  14. package/dist/cmp/Feature.js.map +1 -1
  15. package/dist/cmp/FeatureHook.d.ts +2 -0
  16. package/dist/cmp/FeatureHook.js +17 -0
  17. package/dist/cmp/FeatureHook.js.map +1 -0
  18. package/dist/cmp/Hook.d.ts +2 -0
  19. package/dist/cmp/Hook.js +10 -0
  20. package/dist/cmp/Hook.js.map +1 -0
  21. package/dist/cmp/Main.js +12 -5
  22. package/dist/cmp/Main.js.map +1 -1
  23. package/dist/cmp/Readme.js +8 -8
  24. package/dist/cmp/Readme.js.map +1 -1
  25. package/dist/cmp/ReadmeInstall.js +3 -3
  26. package/dist/cmp/ReadmeInstall.js.map +1 -1
  27. package/dist/cmp/ReadmeOptions.js +2 -2
  28. package/dist/cmp/ReadmeOptions.js.map +1 -1
  29. package/dist/cmp/ReadmeQuick.js +3 -3
  30. package/dist/cmp/ReadmeQuick.js.map +1 -1
  31. package/dist/sdkgen.d.ts +15 -4
  32. package/dist/sdkgen.js +106 -35
  33. package/dist/sdkgen.js.map +1 -1
  34. package/dist/tsconfig.tsbuildinfo +1 -1
  35. package/dist/utility.d.ts +4 -1
  36. package/dist/utility.js +11 -2
  37. package/dist/utility.js.map +1 -1
  38. package/model/sdkgen.jsonic +58 -6
  39. package/package.json +13 -13
  40. package/src/action/feature.ts +120 -0
  41. package/src/action/target.ts +127 -0
  42. package/src/cmp/Entity.ts +6 -4
  43. package/src/cmp/Feature.ts +11 -4
  44. package/src/cmp/FeatureHook.ts +23 -0
  45. package/src/cmp/Main.ts +14 -6
  46. package/src/cmp/Readme.ts +8 -8
  47. package/src/cmp/ReadmeInstall.ts +3 -3
  48. package/src/cmp/ReadmeOptions.ts +2 -2
  49. package/src/cmp/ReadmeQuick.ts +3 -3
  50. package/src/sdkgen.ts +116 -34
  51. package/src/utility.ts +11 -1
  52. package/src/prepare-openapi.ts +0 -59
@@ -0,0 +1,135 @@
1
+ #!/usr/bin/env node
2
+
3
+ const Path = require('node:path')
4
+ const { statSync } = require('node:fs')
5
+ const { parseArgs } = require('node:util')
6
+
7
+ const { Gubu, Fault, One } = require('gubu')
8
+
9
+ const Pkg = require('../package.json')
10
+
11
+ const { SdkGen } = require('../dist/sdkgen.js')
12
+
13
+
14
+ let CONSOLE = console
15
+
16
+ run()
17
+
18
+
19
+ async function run() {
20
+ try {
21
+ let options = resolveOptions()
22
+
23
+ if (options.version) {
24
+ version()
25
+ }
26
+
27
+ if (options.help) {
28
+ help()
29
+ }
30
+
31
+ if (options.version || options.help) {
32
+ exit()
33
+ }
34
+
35
+ options = validateOptions(options)
36
+
37
+ await operate(options)
38
+ }
39
+ catch (err) {
40
+ handleError(err)
41
+ }
42
+ }
43
+
44
+
45
+ function exit(err) {
46
+ let code = 0
47
+ if (err) {
48
+ code = 1
49
+ }
50
+ process.exit(code)
51
+ }
52
+
53
+
54
+ async function operate(options) {
55
+ const sdkgen = new SdkGen({
56
+ debug: options.debug,
57
+ })
58
+
59
+ await sdkgen.action(options.args)
60
+ }
61
+
62
+
63
+
64
+ function resolveOptions() {
65
+
66
+ const args = parseArgs({
67
+ allowPositionals: true,
68
+ options: {
69
+ debug: {
70
+ type: 'string',
71
+ short: 'g',
72
+ default: 'info'
73
+ },
74
+
75
+ help: {
76
+ type: 'boolean',
77
+ short: 'h',
78
+ },
79
+
80
+ version: {
81
+ type: 'boolean',
82
+ short: 'v',
83
+ },
84
+
85
+ }
86
+ })
87
+
88
+ const options = {
89
+ debug: args.values.debug,
90
+ help: !!args.values.help,
91
+ version: !!args.values.version,
92
+ args: args.positionals,
93
+ }
94
+
95
+ return options
96
+ }
97
+
98
+
99
+ function validateOptions(rawOptions) {
100
+ const optShape = Gubu({
101
+ debug: One(String, Boolean),
102
+ help: Boolean,
103
+ version: Boolean,
104
+ args: [String]
105
+ })
106
+
107
+ const err = []
108
+ const options = optShape(rawOptions, { err })
109
+
110
+ if (err[0]) {
111
+ throw new Error(err[0].text)
112
+ }
113
+
114
+ return options
115
+ }
116
+
117
+
118
+ async function handleError(err) {
119
+ const errdesc = 'SdkGenError' === err.name ? err.message : err
120
+ CONSOLE.log('Voxgig SDK Generation Error:', errdesc)
121
+ exit(err)
122
+ }
123
+
124
+
125
+ function version() {
126
+ CONSOLE.log(Pkg.version)
127
+ }
128
+
129
+
130
+ function help() {
131
+ const s = 'TODO'
132
+ CONSOLE.log(s)
133
+ }
134
+
135
+
@@ -0,0 +1,2 @@
1
+ declare function action_feature(args: any[], ctx: any): Promise<void>;
2
+ export { action_feature };
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.action_feature = action_feature;
4
+ const jostraca_1 = require("jostraca");
5
+ const utility_1 = require("../utility");
6
+ const CMD_MAP = {
7
+ add: cmd_feature_add
8
+ };
9
+ const BASE = 'node_modules/@voxgig/sdkgen';
10
+ async function action_feature(args, ctx) {
11
+ const cmdname = args[1];
12
+ const cmd = CMD_MAP[cmdname];
13
+ if (null == cmd) {
14
+ throw new utility_1.SdkGenError('Unknown feature cmd: ' + cmdname);
15
+ }
16
+ await cmd(args, ctx);
17
+ }
18
+ async function cmd_feature_add(args, ctx) {
19
+ let features = args[2];
20
+ features = 'string' === typeof features ? features.split(',') : features;
21
+ const jostraca = (0, jostraca_1.Jostraca)();
22
+ const opts = {
23
+ fs: ctx.fs,
24
+ folder: ctx.folder,
25
+ log: ctx.log.child({ cmp: 'jostraca' }),
26
+ meta: { model: ctx.model, tree: ctx.tree }
27
+ };
28
+ await jostraca.generate(opts, () => FeatureRoot({ features }));
29
+ }
30
+ const FeatureRoot = (0, jostraca_1.cmp)(function FeatureRoot(props) {
31
+ const { ctx$, features } = props;
32
+ // TODO: model should be a top level ctx property
33
+ const model = ctx$.model = ctx$.meta.model;
34
+ const target = model.main.sdk.target;
35
+ (0, jostraca_1.Project)({}, () => {
36
+ (0, jostraca_1.each)(features, (n) => {
37
+ const name = n.val$;
38
+ // TODO: validate feature is a-z0-9-_. only
39
+ (0, jostraca_1.Folder)({ name: 'model/feature' }, () => {
40
+ (0, jostraca_1.Copy)({
41
+ from: BASE + '/project/generate/model/feature/' + name + '.jsonic',
42
+ exclude: true
43
+ });
44
+ });
45
+ (0, jostraca_1.each)(target, (target) => (0, jostraca_1.Folder)({ name: 'tm/' + target.name + '/src/feature/' + name }, () => {
46
+ (0, jostraca_1.Copy)({
47
+ from: BASE + '/project/generate/tm/' + target.name + '/src/feature/' + name,
48
+ exclude: true
49
+ });
50
+ }));
51
+ });
52
+ });
53
+ modifyModel({
54
+ features,
55
+ model: ctx$.meta.model,
56
+ tree: ctx$.meta.tree,
57
+ fs: ctx$.fs
58
+ });
59
+ });
60
+ async function modifyModel({ features, model, tree, fs }) {
61
+ // TODO: This is a kludge.
62
+ // Aontu should provide option for as-is AST so that can be used
63
+ // to find injection point more reliably
64
+ const path = tree.url;
65
+ let src = fs().readFileSync(path, 'utf8');
66
+ // Inject feature file references into model
67
+ features.sort().map((feature) => {
68
+ const lineRE = new RegExp(`@"feature/${feature}.jsonic"`);
69
+ if (!src.match(lineRE)) {
70
+ src = src.replace(/(main:\s+sdk:\s+feature:\s+\{\s*\}\n)/, '$1' +
71
+ `@"feature/${feature}.jsonic"\n`);
72
+ }
73
+ });
74
+ fs().writeFileSync(path, src);
75
+ }
76
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../src/action/feature.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare function action_lang(args: any[], ctx: any): Promise<void>;
2
+ export { action_lang };
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.action_lang = action_lang;
4
+ const jostraca_1 = require("jostraca");
5
+ const utility_1 = require("../utility");
6
+ const CMD_MAP = {
7
+ add: cmd_lang_add
8
+ };
9
+ async function action_lang(args, ctx) {
10
+ const cmdname = args[1];
11
+ const cmd = CMD_MAP[cmdname];
12
+ if (null == cmd) {
13
+ throw new utility_1.SdkGenError('Unknown lang cmd: ' + cmdname);
14
+ }
15
+ await cmd(args, ctx);
16
+ }
17
+ async function cmd_lang_add(args, ctx) {
18
+ let langs = args[2];
19
+ langs = 'string' === typeof langs ? [langs] : langs;
20
+ const jostraca = (0, jostraca_1.Jostraca)();
21
+ const opts = {
22
+ fs: ctx.fs,
23
+ folder: ctx.folder,
24
+ log: ctx.log.child({ cmp: 'jostraca' }),
25
+ meta: { model: ctx.model, tree: ctx.tree }
26
+ };
27
+ await jostraca.generate(opts, () => LangRoot({ langs }));
28
+ }
29
+ const LangRoot = (0, jostraca_1.cmp)(function LangRoot(props) {
30
+ const { ctx$, langs } = props;
31
+ // TODO: model should be a top level ctx property
32
+ ctx$.model = ctx$.meta.model;
33
+ (0, jostraca_1.Project)({}, () => {
34
+ (0, jostraca_1.Folder)({ name: 'model/lang' }, () => {
35
+ (0, jostraca_1.each)(langs, (n) => {
36
+ const lang = n.val$;
37
+ // TODO: validate lang is a-z0-9-_. only
38
+ (0, jostraca_1.Copy)({
39
+ from: 'node_modules/@voxgig/sdkgen/tm/generate/model/lang/' + lang + '.jsonic',
40
+ exclude: true
41
+ });
42
+ });
43
+ });
44
+ });
45
+ modifyModel({
46
+ langs,
47
+ model: ctx$.meta.model,
48
+ tree: ctx$.meta.tree,
49
+ fs: ctx$.fs
50
+ });
51
+ });
52
+ async function modifyModel({ langs, model, tree, fs }) {
53
+ // TODO: This is a kludge.
54
+ // Aontu should provide option for as-is AST so that can be used
55
+ // to find injection point more reliably
56
+ const path = tree.url;
57
+ let src = fs.readFileSync(path, 'utf8');
58
+ // Inject lang file references into model
59
+ langs.sort().map((lang) => {
60
+ const lineRE = new RegExp(`main:\\s+sdk:\\s+lang:\\s+${lang}:\\s+@"lang/${lang}.jsonic"`);
61
+ if (!src.match(lineRE)) {
62
+ src = src.replace(/(main:\s+sdk:\s+lang:\s+\{\s*\}\n)/, '$1' +
63
+ `main: sdk: lang: ${lang}: @"lang/${lang}.jsonic"\n`);
64
+ }
65
+ });
66
+ fs.writeFileSync(path, src);
67
+ }
68
+ //# sourceMappingURL=lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/action/lang.ts"],"names":[],"mappings":";;AA0GE,kCAAW;AAzGb,uCASiB;AAGjB,wCAAwC;AAGxC,MAAM,OAAO,GAAQ;IACnB,GAAG,EAAE,YAAY;CAClB,CAAA;AAED,KAAK,UAAU,WAAW,CAAC,IAAW,EAAE,GAAQ;IAE9C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IAEvB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5B,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,IAAI,qBAAW,CAAC,oBAAoB,GAAG,OAAO,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AACtB,CAAC;AAGD,KAAK,UAAU,YAAY,CAAC,IAAW,EAAE,GAAQ;IAE/C,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,KAAK,GAAG,QAAQ,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAEnD,MAAM,QAAQ,GAAG,IAAA,mBAAQ,GAAE,CAAA;IAE3B,MAAM,IAAI,GAAG;QACX,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;QACvC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE;KAC3C,CAAA;IAED,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AAE1D,CAAC;AAGD,MAAM,QAAQ,GAAG,IAAA,cAAG,EAAC,SAAS,QAAQ,CAAC,KAAU;IAC/C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAE7B,iDAAiD;IACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA;IAE5B,IAAA,kBAAO,EAAC,EAAE,EAAE,GAAG,EAAE;QACf,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE;YAClC,IAAA,eAAI,EAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;gBAChB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAA;gBAEnB,wCAAwC;gBAExC,IAAA,eAAI,EAAC;oBACH,IAAI,EAAE,qDAAqD,GAAG,IAAI,GAAG,SAAS;oBAC9E,OAAO,EAAE,IAAI;iBACd,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,WAAW,CAAC;QACV,KAAK;QACL,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;QACtB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;QACpB,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAA;AAGF,KAAK,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAO;IACxD,0BAA0B;IAC1B,gEAAgE;IAChE,wCAAwC;IAExC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAA;IACrB,IAAI,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAEvC,yCAAyC;IACzC,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,6BAA6B,IAAI,eAAe,IAAI,UAAU,CAAC,CAAA;QACzF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,oCAAoC,EAAE,IAAI;gBAC1D,oBAAoB,IAAI,YAAY,IAAI,YAAY,CAAC,CAAA;QACzD,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAC7B,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare function action_target(args: any[], ctx: any): Promise<void>;
2
+ export { action_target };
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.action_target = action_target;
4
+ const jostraca_1 = require("jostraca");
5
+ const utility_1 = require("../utility");
6
+ const CMD_MAP = {
7
+ add: cmd_target_add
8
+ };
9
+ async function action_target(args, ctx) {
10
+ const cmdname = args[1];
11
+ const cmd = CMD_MAP[cmdname];
12
+ if (null == cmd) {
13
+ throw new utility_1.SdkGenError('Unknown target cmd: ' + cmdname);
14
+ }
15
+ await cmd(args, ctx);
16
+ }
17
+ async function cmd_target_add(args, ctx) {
18
+ let targets = args[2];
19
+ targets = 'string' === typeof targets ? targets.split(',') : targets;
20
+ const jostraca = (0, jostraca_1.Jostraca)();
21
+ const opts = {
22
+ fs: ctx.fs,
23
+ folder: ctx.folder,
24
+ log: ctx.log.child({ cmp: 'jostraca' }),
25
+ meta: { model: ctx.model, tree: ctx.tree }
26
+ };
27
+ await jostraca.generate(opts, () => TargetRoot({ targets }));
28
+ }
29
+ const TargetRoot = (0, jostraca_1.cmp)(function TargetRoot(props) {
30
+ const { ctx$, targets } = props;
31
+ // TODO: model should be a top level ctx property
32
+ ctx$.model = ctx$.meta.model;
33
+ // console.log('MODEL')
34
+ // console.dir(ctx$.model, { depth: null })
35
+ (0, jostraca_1.Project)({}, () => {
36
+ (0, jostraca_1.each)(targets, (n) => {
37
+ // TODO: validate target is a-z0-9-_. only
38
+ const name = n.val$;
39
+ (0, jostraca_1.Folder)({ name: 'model/target' }, () => {
40
+ (0, jostraca_1.Copy)({
41
+ from: 'node_modules/@voxgig/sdkgen/project/generate/model/target/' + name + '.jsonic',
42
+ // exclude: true
43
+ });
44
+ });
45
+ (0, jostraca_1.Folder)({ name: 'src/cmp/' + name }, () => {
46
+ (0, jostraca_1.Copy)({
47
+ from: 'node_modules/@voxgig/sdkgen/project/generate/src/cmp/' + name,
48
+ // exclude: true
49
+ });
50
+ });
51
+ (0, jostraca_1.Folder)({ name: 'tm/' + name }, () => {
52
+ (0, jostraca_1.Copy)({
53
+ from: 'node_modules/@voxgig/sdkgen/project/generate/tm/' + name,
54
+ exclude: [/src\/feature/]
55
+ });
56
+ });
57
+ });
58
+ });
59
+ modifyModel({
60
+ targets,
61
+ model: ctx$.meta.model,
62
+ tree: ctx$.meta.tree,
63
+ fs: ctx$.fs
64
+ });
65
+ });
66
+ async function modifyModel({ targets, model, tree, fs }) {
67
+ // TODO: This is a kludge.
68
+ // Aontu should provide option for as-is AST so that can be used
69
+ // to find injection point more reliably
70
+ const path = tree.url;
71
+ let src = fs().readFileSync(path, 'utf8');
72
+ // Inject target file references into model
73
+ targets.sort().map((target) => {
74
+ const lineRE = new RegExp(`@"target/${target}.jsonic"`);
75
+ if (!src.match(lineRE)) {
76
+ src = src.replace(/(main:\s+sdk:\s+target:\s+\{\s*\}\n)/, '$1' +
77
+ `@"target/${target}.jsonic"\n`);
78
+ }
79
+ });
80
+ fs().writeFileSync(path, src);
81
+ }
82
+ //# sourceMappingURL=target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target.js","sourceRoot":"","sources":["../../src/action/target.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,9 @@ exports.Entity = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const utility_1 = require("../utility");
6
6
  const Entity = (0, jostraca_1.cmp)(function Entity(props) {
7
- const { build, entity, ctx$ } = props;
8
- const Entity_sdk = (0, utility_1.requirePath)(ctx$, `./${build.name}/Entity_${build.name}`);
9
- Entity_sdk['Entity']({ build, entity });
7
+ const { target, entity, ctx$ } = props;
8
+ const Entity_sdk = (0, utility_1.requirePath)(ctx$, `./cmp/${target.name}/Entity_${target.name}`);
9
+ Entity_sdk['Entity']({ target, entity });
10
10
  });
11
11
  exports.Entity = Entity;
12
12
  //# sourceMappingURL=Entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../src/cmp/Entity.ts"],"names":[],"mappings":";;;AACA,uCAA8B;AAE9B,wCAAwC;AAGxC,MAAM,MAAM,GAAG,IAAA,cAAG,EAAC,SAAS,MAAM,CAAC,KAAU;IAC3C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAErC,MAAM,UAAU,GAAG,IAAA,qBAAW,EAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5E,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;AACzC,CAAC,CAAC,CAAA;AAIA,wBAAM"}
1
+ {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../src/cmp/Entity.ts"],"names":[],"mappings":";;;AACA,uCAEiB;AAEjB,wCAAwC;AAGxC,MAAM,MAAM,GAAG,IAAA,cAAG,EAAC,SAAS,MAAM,CAAC,KAAU;IAC3C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAEtC,MAAM,UAAU,GAAG,IAAA,qBAAW,EAAC,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,WAAW,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAClF,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;AAC1C,CAAC,CAAC,CAAA;AAIA,wBAAM"}
@@ -3,9 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Feature = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const Feature = (0, jostraca_1.cmp)(function Feature(props) {
6
- const { build, feature, ctx$ } = props;
7
- (0, jostraca_1.Folder)({ name: 'src/' + feature.name }, () => {
8
- (0, jostraca_1.Copy)({ from: 'feature/' + feature.name + '/' + build.name });
6
+ const { target, feature, ctx$ } = props;
7
+ (0, jostraca_1.Folder)({ name: 'src/feature/' + feature.name }, () => {
8
+ // TODO: Copy should just warn if from not found
9
+ (0, jostraca_1.Copy)({
10
+ from: 'tm/' + target.name + '/src/feature/' + feature.name,
11
+ replace: {
12
+ FEATURE_VERSION: feature.version,
13
+ FEATURE_Name: feature.Name,
14
+ }
15
+ });
9
16
  });
10
17
  });
11
18
  exports.Feature = Feature;
@@ -1 +1 @@
1
- {"version":3,"file":"Feature.js","sourceRoot":"","sources":["../../src/cmp/Feature.ts"],"names":[],"mappings":";;;AACA,uCAA4C;AAK5C,MAAM,OAAO,GAAG,IAAA,cAAG,EAAC,SAAS,OAAO,CAAC,KAAU;IAC7C,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAEtC,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE;QAC3C,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAA;AAIA,0BAAO"}
1
+ {"version":3,"file":"Feature.js","sourceRoot":"","sources":["../../src/cmp/Feature.ts"],"names":[],"mappings":";;;AACA,uCAA4C;AAK5C,MAAM,OAAO,GAAG,IAAA,cAAG,EAAC,SAAS,OAAO,CAAC,KAAU;IAC7C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAEvC,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE;QACnD,gDAAgD;QAChD,IAAA,eAAI,EAAC;YACH,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI;YAC1D,OAAO,EAAE;gBACP,eAAe,EAAE,OAAO,CAAC,OAAO;gBAChC,YAAY,EAAE,OAAO,CAAC,IAAI;aAC3B;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAA;AAIA,0BAAO"}
@@ -0,0 +1,2 @@
1
+ declare const FeatureHook: import("jostraca").Component;
2
+ export { FeatureHook };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FeatureHook = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const FeatureHook = (0, jostraca_1.cmp)(function FeatureHook(props, children) {
6
+ const { ctx$: { model } } = props;
7
+ const { feature } = model.main.sdk;
8
+ const hook = {};
9
+ (0, jostraca_1.names)(hook, props.name);
10
+ // TODO: much better error reporting for invalid feature hook names
11
+ (0, jostraca_1.each)(feature)
12
+ // .map(feature => (console.log(props.name, feature), feature))
13
+ .filter(feature => feature.active && feature.hook[props.name].active)
14
+ .map(feature => (0, jostraca_1.each)(children, { call: true, args: feature }));
15
+ });
16
+ exports.FeatureHook = FeatureHook;
17
+ //# sourceMappingURL=FeatureHook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureHook.js","sourceRoot":"","sources":["../../src/cmp/FeatureHook.ts"],"names":[],"mappings":";;;AACA,uCAAoD;AAGpD,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU,EAAE,QAAa;IACpE,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,CAAA;IAEjC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAA;IAElC,MAAM,IAAI,GAAQ,EAAE,CAAA;IACpB,IAAA,gBAAK,EAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAEvB,mEAAmE;IACnE,IAAA,eAAI,EAAC,OAAO,CAAC;QACX,+DAA+D;SAC9D,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;SACpE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,eAAI,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;AAClE,CAAC,CAAC,CAAA;AAIA,kCAAW"}
@@ -0,0 +1,2 @@
1
+ declare const Hook: import("jostraca").Component;
2
+ export { Hook };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Hook = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const Hook = (0, jostraca_1.cmp)(function Hook(props) {
6
+ const { ctx$ } = props;
7
+ (0, jostraca_1.Content)(`// Feature Hook`);
8
+ });
9
+ exports.Hook = Hook;
10
+ //# sourceMappingURL=Hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hook.js","sourceRoot":"","sources":["../../src/cmp/Hook.ts"],"names":[],"mappings":";;;AACA,uCAAuC;AAKvC,MAAM,IAAI,GAAG,IAAA,cAAG,EAAC,SAAS,IAAI,CAAC,KAAU;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAEtB,IAAA,kBAAO,EAAC,iBAAiB,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAIA,oBAAI"}
package/dist/cmp/Main.js CHANGED
@@ -4,12 +4,19 @@ exports.Main = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const utility_1 = require("../utility");
6
6
  const Main = (0, jostraca_1.cmp)(function Main(props) {
7
- const { build, ctx$ } = props;
7
+ const { target, ctx$ } = props;
8
8
  const { model } = ctx$;
9
- const Main_sdk = require((0, utility_1.resolvePath)(ctx$, `${build.name}/Main_${build.name}`));
10
- Main_sdk['Main']({ model, build });
11
- // TODO: make optional via build model
12
- (0, jostraca_1.Copy)({ from: 'tm/' + build.name + '/LICENSE', name: 'LICENSE' });
9
+ const Main_sdk = require((0, utility_1.resolvePath)(ctx$, `cmp/${target.name}/Main_${target.name}`));
10
+ Main_sdk['Main']({ model, target });
11
+ // TODO: make optional via target model
12
+ (0, jostraca_1.Copy)({ from: 'tm/' + target.name + '/LICENSE', to: 'LICENSE' });
13
+ (0, jostraca_1.Folder)({ name: 'src/utility' }, () => {
14
+ (0, jostraca_1.Copy)({
15
+ from: 'tm/' + target.name + '/src/utility',
16
+ // TODO: make this work for folders
17
+ // to: target + '/src'
18
+ });
19
+ });
13
20
  });
14
21
  exports.Main = Main;
15
22
  //# sourceMappingURL=Main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Main.js","sourceRoot":"","sources":["../../src/cmp/Main.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,wCAAwC;AAGxC,MAAM,IAAI,GAAG,IAAA,cAAG,EAAC,SAAS,IAAI,CAAC,KAAU;IACvC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAA,qBAAW,EAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAE/E,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAElC,sCAAsC;IACtC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AAClE,CAAC,CAAC,CAAA;AAIA,oBAAI"}
1
+ {"version":3,"file":"Main.js","sourceRoot":"","sources":["../../src/cmp/Main.ts"],"names":[],"mappings":";;;AACA,uCAA4C;AAE5C,wCAAwC;AAGxC,MAAM,IAAI,GAAG,IAAA,cAAG,EAAC,SAAS,IAAI,CAAC,KAAU;IACvC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAC9B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAA,qBAAW,EAAC,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,SAAS,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAErF,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAEnC,uCAAuC;IACvC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;IAE/D,IAAA,iBAAM,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE;QACnC,IAAA,eAAI,EAAC;YACH,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,cAAc;YAC1C,mCAAmC;YACnC,sBAAsB;SACvB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAIA,oBAAI"}
@@ -9,19 +9,19 @@ const ReadmeModel_1 = require("./ReadmeModel");
9
9
  const ReadmeOptions_1 = require("./ReadmeOptions");
10
10
  const ReadmeEntity_1 = require("./ReadmeEntity");
11
11
  const Readme = (0, jostraca_1.cmp)(function Readme(props) {
12
- const { build } = props;
12
+ const { target } = props;
13
13
  const { model } = props.ctx$;
14
14
  (0, jostraca_1.File)({ name: 'README.md' }, () => {
15
15
  (0, jostraca_1.Content)(`
16
- # ${model.Name} ${build.title} SDK
16
+ # ${model.Name} ${target.title} SDK
17
17
  `);
18
18
  // Sections
19
- (0, ReadmeIntro_1.ReadmeIntro)({ build });
20
- (0, ReadmeInstall_1.ReadmeInstall)({ build });
21
- (0, ReadmeQuick_1.ReadmeQuick)({ build });
22
- (0, ReadmeModel_1.ReadmeModel)({ build });
23
- (0, ReadmeOptions_1.ReadmeOptions)({ build });
24
- (0, ReadmeEntity_1.ReadmeEntity)({ build });
19
+ (0, ReadmeIntro_1.ReadmeIntro)({ target });
20
+ (0, ReadmeInstall_1.ReadmeInstall)({ target });
21
+ (0, ReadmeQuick_1.ReadmeQuick)({ target });
22
+ (0, ReadmeModel_1.ReadmeModel)({ target });
23
+ (0, ReadmeOptions_1.ReadmeOptions)({ target });
24
+ (0, ReadmeEntity_1.ReadmeEntity)({ target });
25
25
  });
26
26
  });
27
27
  exports.Readme = Readme;
@@ -1 +1 @@
1
- {"version":3,"file":"Readme.js","sourceRoot":"","sources":["../../src/cmp/Readme.ts"],"names":[],"mappings":";;;AACA,uCAA6C;AAG7C,+CAA2C;AAC3C,mDAA+C;AAC/C,+CAA2C;AAC3C,+CAA2C;AAC3C,mDAA+C;AAC/C,iDAA6C;AAG7C,MAAM,MAAM,GAAG,IAAA,cAAG,EAAC,SAAS,MAAM,CAAC,KAAU;IAC3C,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;IAE5B,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE;QAE/B,IAAA,kBAAO,EAAC;IACR,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK;CAC5B,CAAC,CAAA;QACE,WAAW;QACX,IAAA,yBAAW,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACtB,IAAA,6BAAa,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACxB,IAAA,yBAAW,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACtB,IAAA,yBAAW,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACtB,IAAA,6BAAa,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACxB,IAAA,2BAAY,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAIA,wBAAM"}
1
+ {"version":3,"file":"Readme.js","sourceRoot":"","sources":["../../src/cmp/Readme.ts"],"names":[],"mappings":";;;AACA,uCAA6C;AAG7C,+CAA2C;AAC3C,mDAA+C;AAC/C,+CAA2C;AAC3C,+CAA2C;AAC3C,mDAA+C;AAC/C,iDAA6C;AAG7C,MAAM,MAAM,GAAG,IAAA,cAAG,EAAC,SAAS,MAAM,CAAC,KAAU;IAC3C,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IACxB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;IAE5B,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE;QAE/B,IAAA,kBAAO,EAAC;IACR,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK;CAC7B,CAAC,CAAA;QACE,WAAW;QACX,IAAA,yBAAW,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACvB,IAAA,6BAAa,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACzB,IAAA,yBAAW,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACvB,IAAA,yBAAW,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACvB,IAAA,6BAAa,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACzB,IAAA,2BAAY,EAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC1B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAIA,wBAAM"}
@@ -4,14 +4,14 @@ exports.ReadmeInstall = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const utility_1 = require("../utility");
6
6
  const ReadmeInstall = (0, jostraca_1.cmp)(function ReadmeInstall(props) {
7
- const { build, ctx$ } = props;
7
+ const { target, ctx$ } = props;
8
8
  (0, jostraca_1.Content)(`
9
9
  ## Install
10
10
  `);
11
11
  // Optional
12
- const ReadmeInstall_sdk = (0, utility_1.requirePath)(ctx$, `./${build.name}/ReadmeInstall_${build.name}`, { ignore: true });
12
+ const ReadmeInstall_sdk = (0, utility_1.requirePath)(ctx$, `./target/${target.name}/ReadmeInstall_${target.name}`, { ignore: true });
13
13
  if (ReadmeInstall_sdk) {
14
- ReadmeInstall_sdk['ReadmeInstall']({ build });
14
+ ReadmeInstall_sdk['ReadmeInstall']({ target });
15
15
  }
16
16
  });
17
17
  exports.ReadmeInstall = ReadmeInstall;
@@ -1 +1 @@
1
- {"version":3,"file":"ReadmeInstall.js","sourceRoot":"","sources":["../../src/cmp/ReadmeInstall.ts"],"names":[],"mappings":";;;AAEA,uCAAuC;AAEvC,wCAAwC;AAGxC,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7B,IAAA,kBAAO,EAAC;;CAET,CAAC,CAAA;IAEA,WAAW;IACX,MAAM,iBAAiB,GACrB,IAAA,qBAAW,EAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,kBAAkB,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAEpF,IAAI,iBAAiB,EAAE,CAAC;QACtB,iBAAiB,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC,CAAC,CAAA;AAOA,sCAAa"}
1
+ {"version":3,"file":"ReadmeInstall.js","sourceRoot":"","sources":["../../src/cmp/ReadmeInstall.ts"],"names":[],"mappings":";;;AAEA,uCAAuC;AAEvC,wCAAwC;AAGxC,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE9B,IAAA,kBAAO,EAAC;;CAET,CAAC,CAAA;IAEA,WAAW;IACX,MAAM,iBAAiB,GACrB,IAAA,qBAAW,EAAC,IAAI,EAAE,YAAY,MAAM,CAAC,IAAI,kBAAkB,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAE7F,IAAI,iBAAiB,EAAE,CAAC;QACtB,iBAAiB,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAChD,CAAC;AACH,CAAC,CAAC,CAAA;AAOA,sCAAa"}
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ReadmeOptions = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const ReadmeOptions = (0, jostraca_1.cmp)(function ReadmeOptions(props) {
6
- const { build } = props;
6
+ const { target } = props;
7
7
  (0, jostraca_1.Content)(`
8
8
 
9
9
  ## Options
10
10
 
11
11
  `);
12
- (0, jostraca_1.each)(build.options)
12
+ (0, jostraca_1.each)(target.options)
13
13
  .filter((option) => option.publish)
14
14
  .map((option) => {
15
15
  (0, jostraca_1.Content)(`
@@ -1 +1 @@
1
- {"version":3,"file":"ReadmeOptions.js","sourceRoot":"","sources":["../../src/cmp/ReadmeOptions.ts"],"names":[],"mappings":";;;AACA,uCAA6C;AAG7C,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAEvB,IAAA,kBAAO,EAAC;;;;CAIT,CAAC,CAAA;IAEA,IAAA,eAAI,EAAC,KAAK,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SACvC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE;QACnB,IAAA,kBAAO,EAAC;MACR,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,QAAQ,MAAM,CAAC,KAAK;CACpD,CAAC,CAAA;IACE,CAAC,CAAC,CAAA;AAGN,CAAC,CAAC,CAAA;AAKA,sCAAa"}
1
+ {"version":3,"file":"ReadmeOptions.js","sourceRoot":"","sources":["../../src/cmp/ReadmeOptions.ts"],"names":[],"mappings":";;;AACA,uCAA6C;AAG7C,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAExB,IAAA,kBAAO,EAAC;;;;CAIT,CAAC,CAAA;IAEA,IAAA,eAAI,EAAC,MAAM,CAAC,OAAO,CAAC;SACjB,MAAM,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SACvC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE;QACnB,IAAA,kBAAO,EAAC;MACR,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,QAAQ,MAAM,CAAC,KAAK;CACpD,CAAC,CAAA;IACE,CAAC,CAAC,CAAA;AAGN,CAAC,CAAC,CAAA;AAKA,sCAAa"}
@@ -4,14 +4,14 @@ exports.ReadmeQuick = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const utility_1 = require("../utility");
6
6
  const ReadmeQuick = (0, jostraca_1.cmp)(function ReadmeQuick(props) {
7
- const { build, ctx$ } = props;
7
+ const { target, ctx$ } = props;
8
8
  (0, jostraca_1.Content)(`
9
9
  ## Quick Start
10
10
 
11
11
  `);
12
- const ReadmeQuick_sdk = (0, utility_1.requirePath)(ctx$, `./${build.name}/ReadmeQuick_${build.name}`, { ignore: true });
12
+ const ReadmeQuick_sdk = (0, utility_1.requirePath)(ctx$, `./target/${target.name}/ReadmeQuick_${target.name}`, { ignore: true });
13
13
  if (ReadmeQuick_sdk) {
14
- ReadmeQuick_sdk['ReadmeQuick']({ build });
14
+ ReadmeQuick_sdk['ReadmeQuick']({ target });
15
15
  }
16
16
  });
17
17
  exports.ReadmeQuick = ReadmeQuick;
@@ -1 +1 @@
1
- {"version":3,"file":"ReadmeQuick.js","sourceRoot":"","sources":["../../src/cmp/ReadmeQuick.ts"],"names":[],"mappings":";;;AACA,uCAAuC;AAEvC,wCAAwC;AAGxC,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU;IACrD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7B,IAAA,kBAAO,EAAC;;;CAGT,CAAC,CAAA;IAEA,MAAM,eAAe,GACnB,IAAA,qBAAW,EAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAElF,IAAI,eAAe,EAAE,CAAC;QACpB,eAAe,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAC,CAAA;AAMA,kCAAW"}
1
+ {"version":3,"file":"ReadmeQuick.js","sourceRoot":"","sources":["../../src/cmp/ReadmeQuick.ts"],"names":[],"mappings":";;;AACA,uCAAuC;AAEvC,wCAAwC;AAGxC,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU;IACrD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE9B,IAAA,kBAAO,EAAC;;;CAGT,CAAC,CAAA;IAEA,MAAM,eAAe,GACnB,IAAA,qBAAW,EAAC,IAAI,EAAE,YAAY,MAAM,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAE3F,IAAI,eAAe,EAAE,CAAC;QACpB,eAAe,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC,CAAC,CAAA;AAMA,kCAAW"}