@voxgig/sdkgen 0.4.0 → 0.6.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/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.4.0",
3
+ "version": "0.6.0",
4
4
  "main": "dist/sdkgen.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/sdkgen.d.ts",
@@ -43,8 +43,8 @@
43
43
  "typescript": "^5.5.4"
44
44
  },
45
45
  "dependencies": {
46
- "@redocly/openapi-core": "^1.22.1",
47
- "@voxgig/apidef": "^0.0.5",
46
+ "@redocly/openapi-core": "^1.23.1",
47
+ "@voxgig/apidef": "^0.0.7",
48
48
  "jostraca": "^0.4.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/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
  }