@roadmanjs/utils 0.0.8 → 0.0.12

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.
@@ -0,0 +1,20 @@
1
+ import 'reflect-metadata';
2
+ import { MorpheusArgs } from '..';
3
+ interface ClientArgs {
4
+ name: string;
5
+ client: any;
6
+ fragment: any;
7
+ }
8
+ interface Args {
9
+ rootDir: string;
10
+ destDir: string;
11
+ clients: ClientArgs[];
12
+ extraMorphs?: MorpheusArgs[];
13
+ }
14
+ /**
15
+ * Write files to project
16
+ * e.g clients from any @couchset automation
17
+ * @param arg
18
+ */
19
+ export declare const writeAutomaticClient: (arg: Args) => Promise<void>;
20
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.writeAutomaticClient = void 0;
7
+ require("reflect-metadata");
8
+ const __1 = require("..");
9
+ const flatten_1 = __importDefault(require("lodash/flatten"));
10
+ /**
11
+ * Write files to project
12
+ * e.g clients from any @couchset automation
13
+ * @param arg
14
+ */
15
+ const writeAutomaticClient = async (arg) => {
16
+ const { rootDir, destDir, clients, extraMorphs = [] } = arg;
17
+ const clientMorphs = clients.map((client) => Object.keys(client.client).map((key) => {
18
+ const clientName = client.name;
19
+ const ClientValue = client.client[key];
20
+ const clientFragmentValue = client.fragment;
21
+ if (key === 'FRAGMENT') {
22
+ const clientFragment = (0, __1.createInterfaceFromClass)(clientFragmentValue);
23
+ const clientPagination = {
24
+ name: `${clientName}Pagination`,
25
+ properties: [
26
+ { name: 'items?', type: `${clientName}[]` },
27
+ { name: 'hasNext?', type: 'boolean' },
28
+ { name: 'params?', type: 'object' },
29
+ ],
30
+ };
31
+ const contentFrag = {
32
+ filename: `${clientName}.fragment`,
33
+ consts: [{ name: `${clientName}Fragment`, value: ClientValue }],
34
+ interfaces: [clientFragment, clientPagination],
35
+ };
36
+ return contentFrag;
37
+ }
38
+ const contentFile = {
39
+ filename: `${clientName}.${key.toLowerCase()}`,
40
+ consts: [{ name: `${clientName}${key}`, value: ClientValue }],
41
+ };
42
+ return contentFile;
43
+ }));
44
+ const morphs = [...(0, flatten_1.default)(clientMorphs), ...extraMorphs];
45
+ await (0, __1.writeAllFilesToProject)(morphs, rootDir, destDir);
46
+ };
47
+ exports.writeAutomaticClient = writeAutomaticClient;
48
+ //# sourceMappingURL=clientWriter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientWriter.js","sourceRoot":"","sources":["../../src/auto/clientWriter.ts"],"names":[],"mappings":";;;;;;AAAA,4BAA0B;AAE1B,0BAKY;AAEZ,6DAAqC;AAerC;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,KAAK,EAAE,GAAS,EAAE,EAAE;IACpD,MAAM,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,EAAE,EAAC,GAAG,GAAG,CAAC;IAE1D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACnC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,mBAAmB,GAAQ,MAAM,CAAC,QAAQ,CAAC;QAEjD,IAAI,GAAG,KAAK,UAAU,EAAE;YACpB,MAAM,cAAc,GAAG,IAAA,4BAAwB,EAAC,mBAAmB,CAAC,CAAC;YACrE,MAAM,gBAAgB,GAAwB;gBAC1C,IAAI,EAAE,GAAG,UAAU,YAAY;gBAC/B,UAAU,EAAE;oBACR,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,UAAU,IAAW,EAAC;oBAChD,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAC;oBACnC,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAC;iBACpC;aACJ,CAAC;YAEF,MAAM,WAAW,GAAiB;gBAC9B,QAAQ,EAAE,GAAG,UAAU,WAAW;gBAClC,MAAM,EAAE,CAAC,EAAC,IAAI,EAAE,GAAG,UAAU,UAAU,EAAE,KAAK,EAAE,WAAW,EAAC,CAAC;gBAC7D,UAAU,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC;aACjD,CAAC;YAEF,OAAO,WAAW,CAAC;SACtB;QAED,MAAM,WAAW,GAAiB;YAC9B,QAAQ,EAAE,GAAG,UAAU,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE;YAC9C,MAAM,EAAE,CAAC,EAAC,IAAI,EAAE,GAAG,UAAU,GAAG,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAC,CAAC;SAC9D,CAAC;QACF,OAAO,WAAW,CAAC;IACvB,CAAC,CAAC,CACL,CAAC;IAEF,MAAM,MAAM,GAAmB,CAAC,GAAG,IAAA,iBAAO,EAAC,YAAY,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC;IAE1E,MAAM,IAAA,0BAAsB,EAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC,CAAC;AAxCW,QAAA,oBAAoB,wBAwC/B"}
@@ -0,0 +1 @@
1
+ export * from "./clientWriter";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./clientWriter"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
+ export * from "./auto";
1
2
  export * from "./scripts";
2
3
  export * from "./morpheus";
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -10,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
15
  };
12
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./auto"), exports);
13
18
  __exportStar(require("./scripts"), exports);
14
19
  __exportStar(require("./morpheus"), exports);
15
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,4CAA0B;AAC1B,6CAA2B"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Define all models that can should be morphed
3
+ */
4
+ import { ExportDeclarationStructure, OptionalKind } from 'ts-morph';
1
5
  import { InterfaceDefinition } from './interface';
2
6
  export interface Consts {
3
7
  name: string;
@@ -6,8 +10,10 @@ export interface Consts {
6
10
  }
7
11
  export interface MorpheusArgs {
8
12
  filename: string;
9
- consts: Consts[];
13
+ consts?: Consts[];
10
14
  interfaces?: InterfaceDefinition[];
15
+ exports?: OptionalKind<ExportDeclarationStructure>[];
16
+ createIndex?: boolean;
11
17
  }
12
18
  /**
13
19
  * Morpheus in action
@@ -15,4 +21,4 @@ export interface MorpheusArgs {
15
21
  export declare const writeAllFilesToProject: (args: MorpheusArgs[], path: string, pathToFolder?: string) => Promise<boolean>;
16
22
  export declare const createIndexExports: (filesname: string[], pathToFolder: string, path: string) => Promise<void>;
17
23
  export * from './interface';
18
- export * from './writter';
24
+ export * from './writer';
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -16,18 +20,18 @@ exports.createIndexExports = exports.writeAllFilesToProject = void 0;
16
20
  */
17
21
  const ts_morph_1 = require("ts-morph");
18
22
  const text_utils_1 = require("../utils/text.utils");
19
- const writter_1 = require("./writter");
23
+ const writer_1 = require("./writer");
20
24
  /**
21
25
  * Morpheus in action
22
26
  */
23
27
  const writeAllFilesToProject = async (args, path, pathToFolder) => {
24
28
  // write each file
25
29
  const writeFilesTasks = args.map((arg) => {
26
- const { consts: constStatements, filename, interfaces } = arg;
30
+ const { consts: constStatements = [], filename, interfaces, exports = [] } = arg;
27
31
  const nameSNAKE_CASE = (0, text_utils_1.toSnakeUpper)(filename);
28
32
  return {
29
33
  filename: nameSNAKE_CASE,
30
- task: (0, writter_1.writeTsFile)({
34
+ task: (0, writer_1.writeTsFile)({
31
35
  pathToFolder,
32
36
  pathToTs: path,
33
37
  filename: nameSNAKE_CASE,
@@ -42,6 +46,7 @@ const writeAllFilesToProject = async (args, path, pathToFolder) => {
42
46
  // },
43
47
  // trailingTrivia: (writer) => writer.writeLine('\n'),
44
48
  })),
49
+ exports,
45
50
  interfaces,
46
51
  }),
47
52
  };
@@ -57,7 +62,7 @@ const writeAllFilesToProject = async (args, path, pathToFolder) => {
57
62
  moduleSpecifier: `./${c}`,
58
63
  }));
59
64
  // write final index file
60
- await (0, writter_1.writeTsFile)({
65
+ await (0, writer_1.writeTsFile)({
61
66
  pathToFolder,
62
67
  pathToTs: path,
63
68
  filename: 'index',
@@ -74,7 +79,7 @@ const createIndexExports = async (filesname, pathToFolder, path) => {
74
79
  moduleSpecifier: `./${c}`,
75
80
  }));
76
81
  // write final index file
77
- await (0, writter_1.writeTsFile)({
82
+ await (0, writer_1.writeTsFile)({
78
83
  pathToFolder,
79
84
  pathToTs: path,
80
85
  filename: 'index',
@@ -83,5 +88,5 @@ const createIndexExports = async (filesname, pathToFolder, path) => {
83
88
  };
84
89
  exports.createIndexExports = createIndexExports;
85
90
  __exportStar(require("./interface"), exports);
86
- __exportStar(require("./writter"), exports);
91
+ __exportStar(require("./writer"), exports);
87
92
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/morpheus/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;GAEG;AACH,uCAAmE;AAGnE,oDAAiD;AACjD,uCAAsC;AAatC;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EACvC,IAAoB,EACpB,IAAY,EACZ,YAAqB,EACvB,EAAE;IACA,kBAAkB;IAClB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,EAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAC,GAAG,GAAG,CAAC;QAC5D,MAAM,cAAc,GAAG,IAAA,yBAAY,EAAC,QAAQ,CAAC,CAAC;QAE9C,OAAO;YACH,QAAQ,EAAE,cAAc;YACxB,IAAI,EAAE,IAAA,qBAAW,EAAC;gBACd,YAAY;gBACZ,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;oBACtC,+BAA+B;oBAC/B,8BAA8B;oBAE9B,gCAAgC;oBAChC,+CAA+C;oBAC/C,QAAQ;oBACR,KAAK;oBACL,sDAAsD;iBACzD,CAAC,CAAC;gBACH,UAAU;aACb,CAAC;SACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,mBAAmB;IACnB,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtD,oBAAoB;IACpB,MAAM,cAAc,GAAiC,eAAe;SAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACT,IAAI,EAAE,wBAAa,CAAC,iBAAiB;QACrC,0BAA0B;QAC1B,eAAe,EAAE,KAAK,CAAC,EAAE;KAC5B,CAAC,CAAC,CAAC;IAER,yBAAyB;IACzB,MAAM,IAAA,qBAAW,EAAC;QACd,YAAY;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,cAAc;KAC1B,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAtDW,QAAA,sBAAsB,0BAsDjC;AAEK,MAAM,kBAAkB,GAAG,KAAK,EAAE,SAAmB,EAAE,YAAoB,EAAE,IAAY,EAAE,EAAE;IAChG,oBAAoB;IACpB,MAAM,cAAc,GAAiC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,EAAE,wBAAa,CAAC,iBAAiB;QACrC,0BAA0B;QAC1B,eAAe,EAAE,KAAK,CAAC,EAAE;KAC5B,CAAC,CAAC,CAAC;IAEJ,yBAAyB;IACzB,MAAM,IAAA,qBAAW,EAAC;QACd,YAAY;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,cAAc;KAC1B,CAAC,CAAC;AACP,CAAC,CAAC;AAfW,QAAA,kBAAkB,sBAe7B;AAEF,8CAA4B;AAC5B,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/morpheus/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,uCAAiF;AAGjF,oDAAiD;AACjD,qCAAqC;AAerC;;GAEG;AACI,MAAM,sBAAsB,GAAG,KAAK,EACvC,IAAoB,EACpB,IAAY,EACZ,YAAqB,EACvB,EAAE;IACA,kBAAkB;IAClB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,EAAC,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,GAAG,CAAC;QAC/E,MAAM,cAAc,GAAG,IAAA,yBAAY,EAAC,QAAQ,CAAC,CAAC;QAE9C,OAAO;YACH,QAAQ,EAAE,cAAc;YACxB,IAAI,EAAE,IAAA,oBAAW,EAAC;gBACd,YAAY;gBACZ,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;oBACtC,+BAA+B;oBAC/B,8BAA8B;oBAE9B,gCAAgC;oBAChC,+CAA+C;oBAC/C,QAAQ;oBACR,KAAK;oBACL,sDAAsD;iBACzD,CAAC,CAAC;gBACH,OAAO;gBACP,UAAU;aACb,CAAC;SACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,mBAAmB;IACnB,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtD,oBAAoB;IACpB,MAAM,cAAc,GAAiC,eAAe;SAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACT,IAAI,EAAE,wBAAa,CAAC,iBAAiB;QACrC,0BAA0B;QAC1B,eAAe,EAAE,KAAK,CAAC,EAAE;KAC5B,CAAC,CAAC,CAAC;IAER,yBAAyB;IACzB,MAAM,IAAA,oBAAW,EAAC;QACd,YAAY;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,cAAc;KAC1B,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAvDW,QAAA,sBAAsB,0BAuDjC;AAEK,MAAM,kBAAkB,GAAG,KAAK,EACnC,SAAmB,EACnB,YAAoB,EACpB,IAAY,EACd,EAAE;IACA,oBAAoB;IACpB,MAAM,cAAc,GAAiC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,EAAE,wBAAa,CAAC,iBAAiB;QACrC,0BAA0B;QAC1B,eAAe,EAAE,KAAK,CAAC,EAAE;KAC5B,CAAC,CAAC,CAAC;IAEJ,yBAAyB;IACzB,MAAM,IAAA,oBAAW,EAAC;QACd,YAAY;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,cAAc;KAC1B,CAAC,CAAC;AACP,CAAC,CAAC;AAnBW,QAAA,kBAAkB,sBAmB7B;AAEF,8CAA4B;AAC5B,2CAAyB"}
File without changes
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.writeTsFile = void 0;
4
7
  const ts_morph_1 = require("ts-morph");
8
+ const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
5
9
  const writeTsFile = async (props) => {
6
10
  const { filename, statements, variables, interfaces, exports, pathToTs, pathToFolder } = props;
7
11
  const project = new ts_morph_1.Project({
@@ -9,7 +13,7 @@ const writeTsFile = async (props) => {
9
13
  skipAddingFilesFromTsConfig: true,
10
14
  });
11
15
  const sourceFile = project.createSourceFile(`${pathToFolder || pathToTs}/${filename}.ts`, {}, { overwrite: true });
12
- if (interfaces) {
16
+ if (!(0, isEmpty_1.default)(interfaces)) {
13
17
  interfaces.map((interfc) => {
14
18
  const interfaceDef = sourceFile.addInterface({
15
19
  name: interfc.name,
@@ -23,14 +27,14 @@ const writeTsFile = async (props) => {
23
27
  });
24
28
  });
25
29
  }
26
- if (variables) {
30
+ if (!(0, isEmpty_1.default)(variables)) {
27
31
  sourceFile.addVariableStatement({
28
32
  declarationKind: ts_morph_1.VariableDeclarationKind.Const,
29
33
  isExported: true,
30
34
  declarations: variables,
31
35
  });
32
36
  }
33
- if (exports) {
37
+ if (!(0, isEmpty_1.default)(exports)) {
34
38
  sourceFile.addExportDeclarations(exports);
35
39
  }
36
40
  return await sourceFile.save();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/morpheus/writer/index.ts"],"names":[],"mappings":";;;;;;AAAA,uCASkB;AAGlB,6DAAsC;AAW/B,MAAM,WAAW,GAAG,KAAK,EAAE,KAAqB,EAAgB,EAAE;IACrE,MAAM,EAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAC,GAAG,KAAK,CAAC;IAE7F,MAAM,OAAO,GAAG,IAAI,kBAAO,CAAC;QACxB,gBAAgB,EAAE,GAAG,QAAQ,gBAAgB;QAC7C,2BAA2B,EAAE,IAAI;KACpC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CACvC,GAAG,YAAY,IAAI,QAAQ,IAAI,QAAQ,KAAK,EAC5C,EAAE,EACF,EAAC,SAAS,EAAE,IAAI,EAAC,CACpB,CAAC;IAEF,IAAI,CAAC,IAAA,iBAAO,EAAC,UAAU,CAAC,EAAE;QACtB,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACvB,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC9B,YAAY,CAAC,WAAW,CAAC;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;iBACpB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;KACN;IAED,IAAI,CAAC,IAAA,iBAAO,EAAC,SAAS,CAAC,EAAE;QACrB,UAAU,CAAC,oBAAoB,CAAC;YAC5B,eAAe,EAAE,kCAAuB,CAAC,KAAK;YAC9C,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,SAAS;SAC1B,CAAC,CAAC;KACN;IAED,IAAI,CAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,EAAE;QACnB,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;KAC7C;IAED,OAAO,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;AACnC,CAAC,CAAC;AA3CW,QAAA,WAAW,eA2CtB"}
@@ -14,7 +14,30 @@ class GClass {
14
14
  }
15
15
  let demoFiles = [
16
16
  {
17
- filename: 'somefile_name',
17
+ filename: 'somefile_name_nice',
18
+ exports: [
19
+ { kind: 10, moduleSpecifier: "./nicefile" }
20
+ ]
21
+ // consts: [
22
+ // {
23
+ // name: 'GoodConst',
24
+ // value: 'somevalue',
25
+ // },
26
+ // ],
27
+ // interfaces: [
28
+ // {
29
+ // name: 'GClass',
30
+ // properties: [
31
+ // {name: 'j', type: 'string'},
32
+ // {name: 'g', type: 'number'},
33
+ // {name: 'e', type: 'Date'},
34
+ // {name: 'a', type: 'object'},
35
+ // ],
36
+ // },
37
+ // ],
38
+ },
39
+ {
40
+ filename: 'somefile_name2',
18
41
  consts: [
19
42
  {
20
43
  name: 'GoodConst',
@@ -35,6 +58,9 @@ let demoFiles = [
35
58
  },
36
59
  ];
37
60
  describe('Morpheus', () => {
61
+ // it('it should createIndexExports',async () => {
62
+ // const indexFile = createIndexExports(["path1", "path2"], ".", ".");
63
+ // });
38
64
  let ginterfaceDefinition = null;
39
65
  it('it should write TS files with consts and export them', async () => {
40
66
  const project = await (0, morpheus_1.writeAllFilesToProject)(demoFiles, '.', 'src/client');
@@ -1 +1 @@
1
- {"version":3,"file":"morpheus.test.js","sourceRoot":"","sources":["../src/morpheus.test.ts"],"names":[],"mappings":";;AAAA,iBAAe;AAEf,oDAAmF;AACnF,yCAAgE;AAEhE,+BAA4B;AAE5B,MAAM,MAAM;IAAZ;QACI,MAAC,GAAW,UAAU,CAAC;QAEvB,MAAC,GAAW,EAAE,CAAC;QAEf,MAAC,GAAS,IAAI,IAAI,EAAE,CAAC;QAErB,MAAC,GAAQ,EAAE,CAAC;IAChB,CAAC;CAAA;AAED,IAAI,SAAS,GAAmB;IAC5B;QACI,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,WAAW;aACrB;SACJ;QACD,gBAAgB;QAChB,QAAQ;QACR,0BAA0B;QAC1B,wBAAwB;QACxB,2CAA2C;QAC3C,2CAA2C;QAC3C,yCAAyC;QACzC,2CAA2C;QAC3C,aAAa;QACb,SAAS;QACT,KAAK;KACR;CACJ,CAAC;AAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,IAAI,oBAAoB,GAAwB,IAAI,CAAC;IACrD,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,OAAO,GAAG,MAAM,IAAA,iCAAsB,EAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,oBAAoB,GAAG,IAAA,oCAAwB,EAAC,MAAM,CAAC,CAAC;QACxD,IAAA,aAAM,EAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,sCAAsC;QACtC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,MAAM,IAAA,iCAAsB,EAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,sBAAsB;AAC1B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"morpheus.test.js","sourceRoot":"","sources":["../src/morpheus.test.ts"],"names":[],"mappings":";;AAAA,iBAAe;AAEf,oDAAmF;AACnF,yCAAgE;AAGhE,+BAA4B;AAE5B,MAAM,MAAM;IAAZ;QACI,MAAC,GAAW,UAAU,CAAC;QAEvB,MAAC,GAAW,EAAE,CAAC;QAEf,MAAC,GAAS,IAAI,IAAI,EAAE,CAAC;QAErB,MAAC,GAAQ,EAAE,CAAC;IAChB,CAAC;CAAA;AAED,IAAI,SAAS,GAAmB;IAC5B;QACI,QAAQ,EAAE,oBAAoB;QAE9B,OAAO,EAAE;YACL,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,YAAY,EAAC;SAC7C;QACD,YAAY;QACZ,QAAQ;QACR,6BAA6B;QAC7B,8BAA8B;QAC9B,SAAS;QACT,KAAK;QACL,gBAAgB;QAChB,QAAQ;QACR,0BAA0B;QAC1B,wBAAwB;QACxB,2CAA2C;QAC3C,2CAA2C;QAC3C,yCAAyC;QACzC,2CAA2C;QAC3C,aAAa;QACb,SAAS;QACT,KAAK;KACR;IACD;QACI,QAAQ,EAAE,gBAAgB;QAC1B,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,WAAW;aACrB;SACJ;QACD,gBAAgB;QAChB,QAAQ;QACR,0BAA0B;QAC1B,wBAAwB;QACxB,2CAA2C;QAC3C,2CAA2C;QAC3C,yCAAyC;QACzC,2CAA2C;QAC3C,aAAa;QACb,SAAS;QACT,KAAK;KACR;CACJ,CAAC;AAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,kDAAkD;IAClD,0EAA0E;IAC1E,MAAM;IAEN,IAAI,oBAAoB,GAAwB,IAAI,CAAC;IACrD,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,OAAO,GAAG,MAAM,IAAA,iCAAsB,EAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,oBAAoB,GAAG,IAAA,oCAAwB,EAAC,MAAM,CAAC,CAAC;QACxD,IAAA,aAAM,EAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,sCAAsC;QACtC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,MAAM,IAAA,iCAAsB,EAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,sBAAsB;AAC1B,CAAC,CAAC,CAAC"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scripts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+DAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scripts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+DAA6C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roadmanjs/utils",
3
- "version": "0.0.8",
3
+ "version": "0.0.12",
4
4
  "description": "Shared utilities to use for any other package",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -35,7 +35,7 @@
35
35
  "homepage": "https://github.com/roadmanjs/utils",
36
36
  "scripts": {
37
37
  "lint": "tslint \"src/**/*.ts\" --project tsconfig.json",
38
- "build": "rm -rf dist && ./node_modules/.bin/tsc --skipLibCheck",
38
+ "build": "rm -rf dist src/client && ./node_modules/.bin/tsc --skipLibCheck",
39
39
  "test": "mocha src/*test.ts --exit",
40
40
  "morph": "mocha src/morpheus.test.ts --exit",
41
41
  "prepublishOnly": "npm run build",
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/morpheus/writter/index.ts"],"names":[],"mappings":";;;AAAA,uCASkB;AAYX,MAAM,WAAW,GAAG,KAAK,EAAE,KAAqB,EAAgB,EAAE;IACrE,MAAM,EAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAC,GAAG,KAAK,CAAC;IAE7F,MAAM,OAAO,GAAG,IAAI,kBAAO,CAAC;QACxB,gBAAgB,EAAE,GAAG,QAAQ,gBAAgB;QAC7C,2BAA2B,EAAE,IAAI;KACpC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CACvC,GAAG,YAAY,IAAI,QAAQ,IAAI,QAAQ,KAAK,EAC5C,EAAE,EACF,EAAC,SAAS,EAAE,IAAI,EAAC,CACpB,CAAC;IAEF,IAAI,UAAU,EAAE;QACZ,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACvB,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC9B,YAAY,CAAC,WAAW,CAAC;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;iBACpB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;KACN;IAED,IAAI,SAAS,EAAE;QACX,UAAU,CAAC,oBAAoB,CAAC;YAC5B,eAAe,EAAE,kCAAuB,CAAC,KAAK;YAC9C,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,SAAS;SAC1B,CAAC,CAAC;KACN;IAED,IAAI,OAAO,EAAE;QACT,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;KAC7C;IAED,OAAO,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;AACnC,CAAC,CAAC;AA3CW,QAAA,WAAW,eA2CtB"}