@voxgig/sdkgen 0.5.0 → 0.7.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.
@@ -2,7 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Readme = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
+ const ReadmeIntro_1 = require("./ReadmeIntro");
5
6
  const ReadmeInstall_1 = require("./ReadmeInstall");
7
+ const ReadmeQuick_1 = require("./ReadmeQuick");
8
+ const ReadmeModel_1 = require("./ReadmeModel");
6
9
  const ReadmeOptions_1 = require("./ReadmeOptions");
7
10
  const ReadmeEntity_1 = require("./ReadmeEntity");
8
11
  const Readme = (0, jostraca_1.cmp)(function Readme(props) {
@@ -10,9 +13,13 @@ const Readme = (0, jostraca_1.cmp)(function Readme(props) {
10
13
  const { model } = props.ctx$;
11
14
  (0, jostraca_1.File)({ name: 'README.md' }, () => {
12
15
  (0, jostraca_1.Code)(`
13
- # ${model.Name} ${build.Name} SDK
16
+ # ${model.Name} ${build.title} SDK
14
17
  `);
18
+ // Sections
19
+ (0, ReadmeIntro_1.ReadmeIntro)({ build });
15
20
  (0, ReadmeInstall_1.ReadmeInstall)({ build });
21
+ (0, ReadmeQuick_1.ReadmeQuick)({ build });
22
+ (0, ReadmeModel_1.ReadmeModel)({ build });
16
23
  (0, ReadmeOptions_1.ReadmeOptions)({ build });
17
24
  (0, ReadmeEntity_1.ReadmeEntity)({ build });
18
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Readme.js","sourceRoot":"","sources":["../../src/cmp/Readme.ts"],"names":[],"mappings":";;;AACA,uCAA0C;AAG1C,mDAA+C;AAC/C,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,eAAI,EAAC;IACL,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;CAC3B,CAAC,CAAA;QAEE,IAAA,6BAAa,EAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACxB,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,uCAA0C;AAG1C,+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,eAAI,EAAC;IACL,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"}
@@ -2,48 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ReadmeInstall = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
+ const utility_1 = require("../utility");
5
6
  const ReadmeInstall = (0, jostraca_1.cmp)(function ReadmeInstall(props) {
6
- const { build } = props;
7
+ const { build, ctx$ } = props;
7
8
  (0, jostraca_1.Code)(`
8
9
  ## Install
9
10
  `);
10
- (0, jostraca_1.select)(build.name, {
11
- js: () => (0, jostraca_1.Code)(`
12
- \`\`\`
13
-
14
- npm install ${build.name}SDK
15
-
16
- \`\`\`
17
- `),
18
- python: () => (0, jostraca_1.Code)(`
19
- \`\`\`
20
-
21
- pip install ${build.name}SDK
22
-
23
- \`\`\`
24
- `),
25
- java: () => (0, jostraca_1.Code)(`
26
- \`\`\`
27
-
28
- maven install ${build.name}SDK
29
-
30
- \`\`\`
31
- `),
32
- go: () => (0, jostraca_1.Code)(`
33
- \`\`\`
34
-
35
- go get ${build.name}SDK
36
-
37
- \`\`\`
38
- `),
39
- ruby: () => (0, jostraca_1.Code)(`
40
- \`\`\`
41
-
42
- gem install ${build.name}SDK
43
-
44
- \`\`\`
45
- `)
46
- });
11
+ // Optional
12
+ const ReadmeInstall_sdk = (0, utility_1.requirePath)(ctx$, `./${build.name}/ReadmeInstall_${build.name}`);
13
+ if (ReadmeInstall_sdk) {
14
+ ReadmeInstall_sdk['ReadmeInstall']({ build });
15
+ }
47
16
  });
48
17
  exports.ReadmeInstall = ReadmeInstall;
49
18
  //# sourceMappingURL=ReadmeInstall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReadmeInstall.js","sourceRoot":"","sources":["../../src/cmp/ReadmeInstall.ts"],"names":[],"mappings":";;;AACA,uCAA4C;AAG5C,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAEvB,IAAA,eAAI,EAAC;;CAEN,CAAC,CAAA;IAEA,IAAA,iBAAM,EAAC,KAAK,CAAC,IAAI,EAAE;QACjB,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC;;;cAGL,KAAK,CAAC,IAAI;;;CAGvB,CAAC;QAEE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC;;;cAGT,KAAK,CAAC,IAAI;;;CAGvB,CAAC;QAEE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC;;;gBAGL,KAAK,CAAC,IAAI;;;CAGzB,CAAC;QAEE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC;;;SAGV,KAAK,CAAC,IAAI;;;CAGlB,CAAC;QAEE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC;;;cAGP,KAAK,CAAC,IAAI;;;CAGvB,CAAC;KAGC,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAA;AAOA,sCAAa"}
1
+ {"version":3,"file":"ReadmeInstall.js","sourceRoot":"","sources":["../../src/cmp/ReadmeInstall.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,wCAAwC;AAGxC,MAAM,aAAa,GAAG,IAAA,cAAG,EAAC,SAAS,aAAa,CAAC,KAAU;IACzD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7B,IAAA,eAAI,EAAC;;CAEN,CAAC,CAAA;IAEA,WAAW;IACX,MAAM,iBAAiB,GAAG,IAAA,qBAAW,EAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,kBAAkB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IAE1F,IAAI,iBAAiB,EAAE,CAAC;QACtB,iBAAiB,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC,CAAC,CAAA;AAOA,sCAAa"}
@@ -0,0 +1,2 @@
1
+ declare const ReadmeIntro: import("jostraca").Component;
2
+ export { ReadmeIntro };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReadmeIntro = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const ReadmeIntro = (0, jostraca_1.cmp)(function ReadmeIntro(props) {
6
+ const { ctx$: { model } } = props;
7
+ (0, jostraca_1.Code)(`
8
+ ## Introduction
9
+
10
+ ${model.main.def.desc}
11
+
12
+ `);
13
+ });
14
+ exports.ReadmeIntro = ReadmeIntro;
15
+ //# sourceMappingURL=ReadmeIntro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadmeIntro.js","sourceRoot":"","sources":["../../src/cmp/ReadmeIntro.ts"],"names":[],"mappings":";;;AACA,uCAA4C;AAG5C,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU;IACrD,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,CAAA;IAEjC,IAAA,eAAI,EAAC;;;EAGL,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;;CAEpB,CAAC,CAAA;AAIF,CAAC,CAAC,CAAA;AAMA,kCAAW"}
@@ -0,0 +1,2 @@
1
+ declare const ReadmeModel: import("jostraca").Component;
2
+ export { ReadmeModel };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReadmeModel = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const ReadmeModel = (0, jostraca_1.cmp)(function ReadmeModel(props) {
6
+ const { ctx$: { model } } = props;
7
+ (0, jostraca_1.Code)(`
8
+ ## Entity Model
9
+
10
+ This SDK uses an entity-oriented interface, rather than exposing
11
+ endpoint paths directly. Business logic can be mapped directly to
12
+ business entities in your code.
13
+
14
+ The SDK itself allows you to create one or more client instances,
15
+ which can be used concurrently in the same thread. Each client
16
+ instance provides a set of entity methods to create entity
17
+ instances. Each entity instance can likewise operate independently.
18
+
19
+
20
+ ### SDK Methods
21
+
22
+ * \`make(options)\`: Create a new client instance.
23
+
24
+
25
+ ### Client Methods
26
+
27
+ * \`[Entity]()\`: Create a new business entity instance.
28
+
29
+
30
+ ### Entity Methods
31
+
32
+ * \`data(data?)\`: Set the data properties of the entity, returning the current data.
33
+ * \`load(query)\`: Load matching single entity data into the entity instance.
34
+ * \`save(data?)\`: Save the current entity, optionally setting data.
35
+ * \`list(query)\`: List matching entities, return an array of new entities.
36
+ * \`remove(query)\`: Delete the matching single entity.
37
+
38
+ `);
39
+ });
40
+ exports.ReadmeModel = ReadmeModel;
41
+ //# sourceMappingURL=ReadmeModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadmeModel.js","sourceRoot":"","sources":["../../src/cmp/ReadmeModel.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAGpC,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU;IACrD,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,CAAA;IAEjC,IAAA,eAAI,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BN,CAAC,CAAA;AAIF,CAAC,CAAC,CAAA;AAMA,kCAAW"}
@@ -0,0 +1,2 @@
1
+ declare const ReadmeQuick: import("jostraca").Component;
2
+ export { ReadmeQuick };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReadmeQuick = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const utility_1 = require("../utility");
6
+ const ReadmeQuick = (0, jostraca_1.cmp)(function ReadmeQuick(props) {
7
+ const { build, ctx$ } = props;
8
+ (0, jostraca_1.Code)(`
9
+ ## Quick Start
10
+
11
+ `);
12
+ const ReadmeQuick_sdk = (0, utility_1.requirePath)(ctx$, `./${build.name}/ReadmeQuick_${build.name}`);
13
+ if (ReadmeQuick_sdk) {
14
+ ReadmeQuick_sdk['ReadmeQuick']({ build });
15
+ }
16
+ });
17
+ exports.ReadmeQuick = ReadmeQuick;
18
+ //# sourceMappingURL=ReadmeQuick.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadmeQuick.js","sourceRoot":"","sources":["../../src/cmp/ReadmeQuick.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,wCAAwC;AAGxC,MAAM,WAAW,GAAG,IAAA,cAAG,EAAC,SAAS,WAAW,CAAC,KAAU;IACrD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7B,IAAA,eAAI,EAAC;;;CAGN,CAAC,CAAA;IAGA,MAAM,eAAe,GAAG,IAAA,qBAAW,EAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IAEtF,IAAI,eAAe,EAAE,CAAC;QACpB,eAAe,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAC,CAAA;AAMA,kCAAW"}
package/dist/sdkgen.d.ts CHANGED
@@ -13,7 +13,7 @@ type SdkGenOptions = {
13
13
  folder: string;
14
14
  entity: any;
15
15
  };
16
- meta: {
16
+ meta?: {
17
17
  name: string;
18
18
  };
19
19
  };
package/dist/sdkgen.js CHANGED
@@ -76,6 +76,7 @@ function SdkGen(opts) {
76
76
  };
77
77
  }
78
78
  SdkGen.makeBuild = async function (root, opts) {
79
+ console.log('SdkGen.makeBuild', opts);
79
80
  const sdkgen = SdkGen(opts);
80
81
  const apidef = (0, apidef_1.ApiDef)();
81
82
  const spec = {
@@ -88,6 +89,7 @@ SdkGen.makeBuild = async function (root, opts) {
88
89
  await apidef.watch(spec);
89
90
  return async function build(model, build) {
90
91
  // TODO: voxgig model needs to handle errors from here
92
+ console.log('SDK GENERATE');
91
93
  return sdkgen.generate({ model, build, root });
92
94
  };
93
95
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"root":["../src/prepare-openapi.ts","../src/sdkgen.ts","../src/utility.ts","../src/cmp/entity.ts","../src/cmp/main.ts","../src/cmp/readme.ts","../src/cmp/readmeentity.ts","../src/cmp/readmeinstall.ts","../src/cmp/readmeintro.ts","../src/cmp/readmemodel.ts","../src/cmp/readmeoptions.ts","../src/cmp/readmequick.ts"],"version":"5.6.2"}
package/dist/utility.d.ts CHANGED
@@ -1,2 +1,5 @@
1
1
  declare const resolvePath: (ctx$: any, path: string) => any;
2
- export { resolvePath };
2
+ declare const requirePath: (ctx$: any, path: string, flags?: {
3
+ ignore?: boolean;
4
+ }) => any;
5
+ export { resolvePath, requirePath, };
package/dist/utility.js CHANGED
@@ -3,11 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.resolvePath = void 0;
6
+ exports.requirePath = exports.resolvePath = void 0;
7
7
  const node_path_1 = __importDefault(require("node:path"));
8
8
  const resolvePath = (ctx$, path) => {
9
9
  const fullpath = node_path_1.default.join(ctx$.folder, '..', 'dist', path);
10
10
  return fullpath;
11
11
  };
12
12
  exports.resolvePath = resolvePath;
13
+ const requirePath = (ctx$, path, flags) => {
14
+ const fullpath = resolvePath(ctx$, path);
15
+ const ignore = null == flags?.ignore ? true : flags.ignore;
16
+ try {
17
+ return require(fullpath);
18
+ }
19
+ catch (err) {
20
+ if (!ignore) {
21
+ throw err;
22
+ }
23
+ console.warn('MISSING: ', path);
24
+ }
25
+ };
26
+ exports.requirePath = requirePath;
13
27
  //# sourceMappingURL=utility.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utility.js","sourceRoot":"","sources":["../src/utility.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAG5B,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,IAAY,EAAO,EAAE;IACnD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3D,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAIC,kCAAW"}
1
+ {"version":3,"file":"utility.js","sourceRoot":"","sources":["../src/utility.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAG5B,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,IAAY,EAAO,EAAE;IACnD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3D,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAqBC,kCAAW;AAlBb,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,IAAY,EAAE,KAA4B,EAAO,EAAE;IACjF,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACxC,MAAM,MAAM,GAAG,IAAI,IAAI,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;IAE1D,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC;IACD,OAAO,GAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,CAAA;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;IACjC,CAAC;AACH,CAAC,CAAA;AAMC,kCAAW"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voxgig/sdkgen",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "main": "dist/sdkgen.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/sdkgen.d.ts",
@@ -40,11 +40,11 @@
40
40
  "esbuild": "^0.23.1",
41
41
  "json-schema-to-ts": "^3.1.1",
42
42
  "memfs": "^4.11.1",
43
- "typescript": "^5.5.4"
43
+ "typescript": "^5.6.2"
44
44
  },
45
45
  "dependencies": {
46
- "@redocly/openapi-core": "^1.23.0",
47
- "@voxgig/apidef": "^0.0.6",
48
- "jostraca": "^0.4.0"
46
+ "@redocly/openapi-core": "^1.25.0",
47
+ "@voxgig/apidef": "^0.0.7",
48
+ "jostraca": "^0.5.0"
49
49
  }
50
50
  }
package/src/cmp/Readme.ts CHANGED
@@ -2,7 +2,10 @@
2
2
  import { cmp, File, Code } from 'jostraca'
3
3
 
4
4
 
5
+ import { ReadmeIntro } from './ReadmeIntro'
5
6
  import { ReadmeInstall } from './ReadmeInstall'
7
+ import { ReadmeQuick } from './ReadmeQuick'
8
+ import { ReadmeModel } from './ReadmeModel'
6
9
  import { ReadmeOptions } from './ReadmeOptions'
7
10
  import { ReadmeEntity } from './ReadmeEntity'
8
11
 
@@ -14,10 +17,13 @@ const Readme = cmp(function Readme(props: any) {
14
17
  File({ name: 'README.md' }, () => {
15
18
 
16
19
  Code(`
17
- # ${model.Name} ${build.Name} SDK
20
+ # ${model.Name} ${build.title} SDK
18
21
  `)
19
-
22
+ // Sections
23
+ ReadmeIntro({ build })
20
24
  ReadmeInstall({ build })
25
+ ReadmeQuick({ build })
26
+ ReadmeModel({ build })
21
27
  ReadmeOptions({ build })
22
28
  ReadmeEntity({ build })
23
29
  })
@@ -1,58 +1,22 @@
1
1
 
2
- import { cmp, select, Code } from 'jostraca'
2
+ import { cmp, Code } from 'jostraca'
3
+
4
+ import { requirePath } from '../utility'
3
5
 
4
6
 
5
7
  const ReadmeInstall = cmp(function ReadmeInstall(props: any) {
6
- const { build } = props
8
+ const { build, ctx$ } = props
7
9
 
8
10
  Code(`
9
11
  ## Install
10
12
  `)
11
13
 
12
- select(build.name, {
13
- js: () => Code(`
14
- \`\`\`
15
-
16
- npm install ${build.name}SDK
17
-
18
- \`\`\`
19
- `),
20
-
21
- python: () => Code(`
22
- \`\`\`
23
-
24
- pip install ${build.name}SDK
25
-
26
- \`\`\`
27
- `),
28
-
29
- java: () => Code(`
30
- \`\`\`
31
-
32
- maven install ${build.name}SDK
33
-
34
- \`\`\`
35
- `),
36
-
37
- go: () => Code(`
38
- \`\`\`
39
-
40
- go get ${build.name}SDK
41
-
42
- \`\`\`
43
- `),
44
-
45
- ruby: () => Code(`
46
- \`\`\`
47
-
48
- gem install ${build.name}SDK
49
-
50
- \`\`\`
51
- `)
52
-
53
-
54
- })
14
+ // Optional
15
+ const ReadmeInstall_sdk = requirePath(ctx$, `./${build.name}/ReadmeInstall_${build.name}`)
55
16
 
17
+ if (ReadmeInstall_sdk) {
18
+ ReadmeInstall_sdk['ReadmeInstall']({ build })
19
+ }
56
20
  })
57
21
 
58
22
 
@@ -0,0 +1,24 @@
1
+
2
+ import { cmp, select, Code } from 'jostraca'
3
+
4
+
5
+ const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
6
+ const { ctx$: { model } } = props
7
+
8
+ Code(`
9
+ ## Introduction
10
+
11
+ ${model.main.def.desc}
12
+
13
+ `)
14
+
15
+
16
+
17
+ })
18
+
19
+
20
+
21
+
22
+ export {
23
+ ReadmeIntro
24
+ }
@@ -0,0 +1,25 @@
1
+
2
+ import { cmp, select, Code } from 'jostraca'
3
+
4
+
5
+ const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
6
+ const { build, ctx$ } = props
7
+ const { model } = ctx$
8
+
9
+ Code(`
10
+ ## Introduction
11
+
12
+ ${model.main.def.desc}
13
+
14
+ `)
15
+
16
+
17
+
18
+ })
19
+
20
+
21
+
22
+
23
+ export {
24
+ ReadmeIntro
25
+ }
@@ -0,0 +1,50 @@
1
+
2
+ import { cmp, Code } from 'jostraca'
3
+
4
+
5
+ const ReadmeModel = cmp(function ReadmeModel(props: any) {
6
+ const { ctx$: { model } } = props
7
+
8
+ Code(`
9
+ ## Entity Model
10
+
11
+ This SDK uses an entity-oriented interface, rather than exposing
12
+ endpoint paths directly. Business logic can be mapped directly to
13
+ business entities in your code.
14
+
15
+ The SDK itself allows you to create one or more client instances,
16
+ which can be used concurrently in the same thread. Each client
17
+ instance provides a set of entity methods to create entity
18
+ instances. Each entity instance can likewise operate independently.
19
+
20
+
21
+ ### SDK Methods
22
+
23
+ * \`make(options)\`: Create a new client instance.
24
+
25
+
26
+ ### Client Methods
27
+
28
+ * \`[Entity]()\`: Create a new business entity instance.
29
+
30
+
31
+ ### Entity Methods
32
+
33
+ * \`data(data?)\`: Set the data properties of the entity, returning the current data.
34
+ * \`load(query)\`: Load matching single entity data into the entity instance.
35
+ * \`save(data?)\`: Save the current entity, optionally setting data.
36
+ * \`list(query)\`: List matching entities, return an array of new entities.
37
+ * \`remove(query)\`: Delete the matching single entity.
38
+
39
+ `)
40
+
41
+
42
+
43
+ })
44
+
45
+
46
+
47
+
48
+ export {
49
+ ReadmeModel
50
+ }
@@ -0,0 +1,24 @@
1
+
2
+ import { cmp, select, Code } from 'jostraca'
3
+
4
+
5
+ const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
6
+ const { ctx$: { model } } = props
7
+
8
+ Code(`
9
+ ## Introduction
10
+
11
+ ${model.main.def.desc}
12
+
13
+ `)
14
+
15
+
16
+
17
+ })
18
+
19
+
20
+
21
+
22
+ export {
23
+ ReadmeIntro
24
+ }
@@ -0,0 +1,28 @@
1
+
2
+ import { cmp, Code } from 'jostraca'
3
+
4
+ import { requirePath } from '../utility'
5
+
6
+
7
+ const ReadmeQuick = cmp(function ReadmeQuick(props: any) {
8
+ const { build, ctx$ } = props
9
+
10
+ Code(`
11
+ ## Quick Start
12
+
13
+ `)
14
+
15
+
16
+ const ReadmeQuick_sdk = requirePath(ctx$, `./${build.name}/ReadmeQuick_${build.name}`)
17
+
18
+ if (ReadmeQuick_sdk) {
19
+ ReadmeQuick_sdk['ReadmeQuick']({ build })
20
+ }
21
+ })
22
+
23
+
24
+
25
+
26
+ export {
27
+ ReadmeQuick
28
+ }
package/src/sdkgen.ts CHANGED
@@ -26,7 +26,7 @@ type SdkGenOptions = {
26
26
  folder: string
27
27
  entity: any
28
28
  }
29
- meta: {
29
+ meta?: {
30
30
  name: string
31
31
  }
32
32
  }
@@ -82,6 +82,8 @@ function SdkGen(opts: SdkGenOptions) {
82
82
 
83
83
 
84
84
  SdkGen.makeBuild = async function(root: any, opts: SdkGenOptions) {
85
+ console.log('SdkGen.makeBuild', opts)
86
+
85
87
  const sdkgen = SdkGen(opts)
86
88
 
87
89
  const apidef = ApiDef()
@@ -98,6 +100,7 @@ SdkGen.makeBuild = async function(root: any, opts: SdkGenOptions) {
98
100
 
99
101
  return async function build(model: any, build: any) {
100
102
  // TODO: voxgig model needs to handle errors from here
103
+ console.log('SDK GENERATE')
101
104
  return sdkgen.generate({ model, build, root })
102
105
  }
103
106
  }
package/src/utility.ts CHANGED
@@ -8,6 +8,24 @@ const resolvePath = (ctx$: any, path: string): any => {
8
8
  }
9
9
 
10
10
 
11
+ const requirePath = (ctx$: any, path: string, flags?: { ignore?: boolean }): any => {
12
+ const fullpath = resolvePath(ctx$, path)
13
+ const ignore = null == flags?.ignore ? true : flags.ignore
14
+
15
+ try {
16
+ return require(fullpath)
17
+ }
18
+ catch (err: any) {
19
+ if (!ignore) {
20
+ throw err
21
+ }
22
+ console.warn('MISSING: ', path)
23
+ }
24
+ }
25
+
26
+
27
+
11
28
  export {
12
- resolvePath
29
+ resolvePath,
30
+ requirePath,
13
31
  }