mandarina-server 1.3.5 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/Action/CustomAction.js +12 -10
- package/build/Action/CustomAction.js.map +1 -1
- package/build/cli/index.js +0 -5
- package/build/cli/index.js.map +1 -1
- package/build/cli/utils.d.ts +0 -1
- package/build/cli/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/Action/CustomAction.ts +5 -4
- package/src/cli/index.ts +0 -6
- package/src/cli/utils.ts +0 -1
- package/src/Prisma2/Prisma2.ts +0 -0
- package/src/cli/gen-files/prisma2.ts +0 -220
|
@@ -87,18 +87,20 @@ var CustomAction = /** @class */ (function () {
|
|
|
87
87
|
case 1:
|
|
88
88
|
user = _a.sent();
|
|
89
89
|
roles = (user && user.roles) || [];
|
|
90
|
-
if (roles.includes('nobody')) {
|
|
91
|
-
throw new Error('Action not allowed');
|
|
92
|
-
}
|
|
93
90
|
permissions = actions[action].permission || [];
|
|
94
|
-
if (permissions.includes('
|
|
95
|
-
|
|
96
|
-
console.warn(user && user.id, action);
|
|
97
|
-
console.warn(user && user.roles, permissions);
|
|
98
|
-
console.log('***************222***************');
|
|
99
|
-
// return await actions[action].action(_, args, context, info)
|
|
91
|
+
if (permissions.includes('nobody')) {
|
|
92
|
+
throw new Error('Action not allowed');
|
|
100
93
|
}
|
|
101
|
-
|
|
94
|
+
if (!(permissions.includes('everybody') || permissions.some(function (permission) { return roles.includes(permission); }))) return [3 /*break*/, 3];
|
|
95
|
+
console.log('***************111***************');
|
|
96
|
+
console.warn(user && user.id, action);
|
|
97
|
+
console.warn(user && user.roles, permissions);
|
|
98
|
+
console.log('***************222***************');
|
|
99
|
+
return [4 /*yield*/, actions[action].action(_, args, context, info)];
|
|
100
|
+
case 2:
|
|
101
|
+
//throw new Error(`Action "${action}" not allowed for this user`)
|
|
102
|
+
return [2 /*return*/, _a.sent()];
|
|
103
|
+
case 3: return [2 /*return*/];
|
|
102
104
|
}
|
|
103
105
|
});
|
|
104
106
|
}); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomAction.js","sourceRoot":"","sources":["../../src/Action/CustomAction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAA4E;AAC5E,yEAAsE;AACtE,iEAA8D;AAG9D,2DAAqC;AAIrC;IAUI;;;;;OAKG;IACH,sBAAY,MAAuB,EAAE,aAA4B;QAC7D,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,YAAY,eAAM,EAAE;YAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;YACpB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;SACtD;aAAM;YACH,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;SACtB;QAED,IAAI,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnC,MAAM,IAAI,qCAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1C;QACD,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAA;QACpC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7C,CAAC;IAGM,wBAAW,GAAlB,UAAmB,IAAY;QAC3B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC/B,MAAM,IAAI,6CAAqB,CAAC,IAAI,CAAC,CAAC;SACzC;QAED,OAAO,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,gCAAS,GAAT;QACI,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;IAClD,CAAC;IAGD,iCAAU,GAAV;QAAA,
|
|
1
|
+
{"version":3,"file":"CustomAction.js","sourceRoot":"","sources":["../../src/Action/CustomAction.ts"],"names":[],"mappings":"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"}
|
package/build/cli/index.js
CHANGED
|
@@ -5,8 +5,6 @@ var createProject_1 = require("./createProject");
|
|
|
5
5
|
var watch_1 = require("./watch");
|
|
6
6
|
var deploy_1 = require("./deploy");
|
|
7
7
|
var genFiles_1 = require("./gen-files/genFiles");
|
|
8
|
-
var prisma2_1 = require("./gen-files/prisma2");
|
|
9
|
-
console.log('cesar');
|
|
10
8
|
//@ts-ignore
|
|
11
9
|
var _a = process.argv, nodeDir = _a[0], dir = _a[1], cmd = _a[2], args = _a.slice(3);
|
|
12
10
|
switch (cmd) {
|
|
@@ -17,9 +15,6 @@ switch (cmd) {
|
|
|
17
15
|
case 'gen-files':
|
|
18
16
|
genFiles_1.genFile();
|
|
19
17
|
break;
|
|
20
|
-
case 'gen-prisma2':
|
|
21
|
-
prisma2_1.genFile();
|
|
22
|
-
break;
|
|
23
18
|
case 'deploy':
|
|
24
19
|
deploy_1.deploy();
|
|
25
20
|
break;
|
package/build/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;AACA,iDAA8C;AAC9C,iCAA8B;AAC9B,mCAAgC;AAChC,iDAA6C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;AACA,iDAA8C;AAC9C,iCAA8B;AAC9B,mCAAgC;AAChC,iDAA6C;AAE7C,YAAY;AACN,IAAA,iBAA2C,EAA1C,eAAO,EAAE,WAAG,EAAE,WAAG,EAAE,kBAAuB,CAAA;AAEjD,QAAQ,GAAG,EAAE;IACX,KAAK,QAAQ;QACX,IAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,WAAW,CAAA;QAC9C,6BAAa,CAAC,OAAO,CAAC,CAAA;QACtB,MAAK;IACP,KAAK,WAAW;QACd,kBAAO,EAAE,CAAA;QACT,MAAM;IACR,KAAK,QAAQ;QACX,eAAM,EAAE,CAAA;QACR,MAAM;IACR,KAAK,OAAO;QACV,aAAK,EAAE,CAAA;QACP,MAAM;IACR,KAAK,SAAS;QACZ,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAA;QAC5D,MAAK;IACP;QACE,OAAO,CAAC,IAAI,CAAC,aAAW,GAAG,gFAAsE,CAAC,CAAA;CACrG;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EE"}
|
package/build/cli/utils.d.ts
CHANGED
package/build/cli/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":";;;;;AAAA,0CAAoB;AACpB,8CAAwB;AAEX,QAAA,SAAS,GAAG;IACrB,IAAI,OAAO,CAAA;IACX,IAAI;QACA,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAAA;KAChF;IAAC,OAAO,CAAC,EAAE;QACR,MAAM,KAAK,CAAC,gGAAgG,CAAC,CAAA;KAChH;IACD,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAElC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,CAAC,gDAAgD,CAAC,CAAA;KAChE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9F,MAAM,KAAK,CAAC,iFAAiF,CAAC,CAAA;KACjG;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC1D,MAAM,KAAK,CAAC,kDAAkD,CAAC,CAAA;KAClE;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACxD,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAA;KACjE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAG;QACrB,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAA;KACvE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAG;QACxB,MAAM,KAAK,CAAC,0DAA0D,CAAC,CAAA;KAC1E;IACD,OAAO,CAAC,MAAM,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,IAAM,QAAQ,GAAG,UAAU,GAAW,EAAE,QAAkB;IACtD,IAAM,KAAK,GAAG,YAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC1B,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI;QACxB,IAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACrC,IAAI,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE;YACrC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC3C;aAAM;YACH,IAAI,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK;gBAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7D;IACL,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":";;;;;AAAA,0CAAoB;AACpB,8CAAwB;AAEX,QAAA,SAAS,GAAG;IACrB,IAAI,OAAO,CAAA;IACX,IAAI;QACA,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAAA;KAChF;IAAC,OAAO,CAAC,EAAE;QACR,MAAM,KAAK,CAAC,gGAAgG,CAAC,CAAA;KAChH;IACD,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAElC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,CAAC,gDAAgD,CAAC,CAAA;KAChE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9F,MAAM,KAAK,CAAC,iFAAiF,CAAC,CAAA;KACjG;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC1D,MAAM,KAAK,CAAC,kDAAkD,CAAC,CAAA;KAClE;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACxD,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAA;KACjE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAG;QACrB,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAA;KACvE;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAG;QACxB,MAAM,KAAK,CAAC,0DAA0D,CAAC,CAAA;KAC1E;IACD,OAAO,CAAC,MAAM,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,IAAM,QAAQ,GAAG,UAAU,GAAW,EAAE,QAAkB;IACtD,IAAM,KAAK,GAAG,YAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC1B,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI;QACxB,IAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACrC,IAAI,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE;YACrC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC3C;aAAM;YACH,IAAI,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK;gBAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7D;IACL,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AA2BW,QAAA,WAAW,GAAG,UAAC,GAAuB;IAC/C,IAAI,MAAM,GAAa,EAAE,CAAA;IACzB,IAAI,OAAO,GAAa,EAAE,CAAA;IAC1B,IAAI,OAAO,GAAa,EAAE,CAAA;IAC1B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,GAAG;QACpB,OAAO,GAAG,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;IACF,IAAI,GAAG,CAAC,OAAO,EAAE;QACb,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,GAAG;YACpB,OAAO,GAAG,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;KACL;IACD,IAAI,GAAG,CAAC,MAAM,EAAE;QACZ,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,GAAG;YACnB,MAAM,GAAG,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;KACL;IAED,OAAO,CAAC,OAAO,CAAC,UAAC,MAAM;QACnB,IAAM,OAAO,GAAW,YAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;YACtC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;YACxC,OAAO,CAAC,MAAM,CAAC,CAAA;SAClB;IACL,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;QACjB,IAAM,OAAO,GAAW,YAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvD,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YACrC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;YACtC,OAAO,CAAC,KAAK,CAAC,CAAA;SACjB;IACL,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,OAAO,CAAC,UAAC,MAAM;QACnB,IAAM,OAAO,GAAW,YAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YACrC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;YACxC,OAAO,CAAC,MAAM,CAAC,CAAA;SAClB;IACL,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -61,19 +61,20 @@ export class CustomAction {
|
|
|
61
61
|
result[action] = async (_: any, args: any, context: any, info: any): Promise<any> => {
|
|
62
62
|
const user = await Mandarina.config.getUser(context)
|
|
63
63
|
const roles=(user && user.roles ) || []
|
|
64
|
-
|
|
64
|
+
|
|
65
|
+
const permissions: string[]= actions[action].permission || []
|
|
66
|
+
if (permissions.includes('nobody')){
|
|
65
67
|
throw new Error('Action not allowed')
|
|
66
68
|
}
|
|
67
|
-
const permissions: string[]= actions[action].permission || []
|
|
68
69
|
if (permissions.includes('everybody') || permissions.some(permission=>roles.includes(permission))){
|
|
69
70
|
console.log('***************111***************')
|
|
70
71
|
console.warn(user && user.id,action)
|
|
71
72
|
console.warn(user && user.roles,permissions)
|
|
72
73
|
console.log('***************222***************')
|
|
74
|
+
//throw new Error(`Action "${action}" not allowed for this user`)
|
|
73
75
|
|
|
74
|
-
|
|
76
|
+
return await actions[action].action(_, args, context, info)
|
|
75
77
|
}
|
|
76
|
-
throw new Error(`Action "${action}" not allowed for this user`)
|
|
77
78
|
};
|
|
78
79
|
});
|
|
79
80
|
|
package/src/cli/index.ts
CHANGED
|
@@ -3,9 +3,6 @@ import {createProject} from "./createProject";
|
|
|
3
3
|
import {watch} from "./watch";
|
|
4
4
|
import {deploy} from "./deploy";
|
|
5
5
|
import {genFile} from "./gen-files/genFiles";
|
|
6
|
-
import {genFile as genPrisma2} from "./gen-files/prisma2";
|
|
7
|
-
|
|
8
|
-
console.log('cesar')
|
|
9
6
|
|
|
10
7
|
//@ts-ignore
|
|
11
8
|
const [nodeDir, dir, cmd, ...args] = process.argv
|
|
@@ -18,9 +15,6 @@ switch (cmd) {
|
|
|
18
15
|
case 'gen-files':
|
|
19
16
|
genFile()
|
|
20
17
|
break;
|
|
21
|
-
case 'gen-prisma2':
|
|
22
|
-
genPrisma2()
|
|
23
|
-
break;
|
|
24
18
|
case 'deploy':
|
|
25
19
|
deploy()
|
|
26
20
|
break;
|
package/src/cli/utils.ts
CHANGED
package/src/Prisma2/Prisma2.ts
DELETED
|
File without changes
|
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
import {getConfig, loadSchemas} from "../utils";
|
|
2
|
-
import {createDir, resetDir} from "./genFilesUtils";
|
|
3
|
-
import {Table} from "../..";
|
|
4
|
-
import {Schema} from "mandarina";
|
|
5
|
-
import {capitalize, isRequired} from "mandarina/build/Schema/utils";
|
|
6
|
-
import path from "path";
|
|
7
|
-
import fs from "fs";
|
|
8
|
-
import {FieldDefinition} from "mandarina/build/Schema/Schema";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const prisma2Models: { [schemaName: string]: { [fieldName: string]: string } } = {}
|
|
12
|
-
const proccesed: string[] = []
|
|
13
|
-
let c = 0
|
|
14
|
-
export const genFile = () => {
|
|
15
|
-
const config = getConfig()
|
|
16
|
-
loadSchemas(config.dir)
|
|
17
|
-
createDir(config.dir.prisma2)
|
|
18
|
-
resetDir(config.dir.prisma2)
|
|
19
|
-
for (const schemaName in Table.instances) {
|
|
20
|
-
const schema = Schema.getInstance(schemaName)
|
|
21
|
-
getPrisma2Model(schema)
|
|
22
|
-
}
|
|
23
|
-
let prisma = `generator client {
|
|
24
|
-
provider = "prisma-client-js"
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
datasource db {
|
|
28
|
-
provider = "postgresql"
|
|
29
|
-
url = env("DATABASE_URL")
|
|
30
|
-
}
|
|
31
|
-
`
|
|
32
|
-
Object.keys(prisma2Models).forEach(modelName => {
|
|
33
|
-
const model = prisma2Models[modelName]
|
|
34
|
-
prisma += `model ${modelName} {\n `
|
|
35
|
-
Object.keys(model).forEach(fieldName => {
|
|
36
|
-
const field = model[fieldName]
|
|
37
|
-
prisma += `\t${fieldName} ${field}\n`
|
|
38
|
-
})
|
|
39
|
-
prisma += `}\n\n`
|
|
40
|
-
})
|
|
41
|
-
const prismaDir = path.join(process.cwd(), config.dir.prisma2,)
|
|
42
|
-
const fileAbs = `${prismaDir}/schema.prisma`;
|
|
43
|
-
fs.writeFileSync(fileAbs, prisma);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function getRelationName(parentDef: FieldDefinition) {
|
|
47
|
-
if (!parentDef.table.relation) return ''
|
|
48
|
-
if (typeof parentDef.table.relation === 'string') {
|
|
49
|
-
return parentDef.table.relation
|
|
50
|
-
}
|
|
51
|
-
return parentDef.table.relation.name || ''
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
const getPrisma2Model = (schema: Schema, parent?: Schema, parentName?: string) => {
|
|
55
|
-
prisma2Models[schema.name] = prisma2Models[schema.name] || {}
|
|
56
|
-
let selfDef: FieldDefinition | null = null
|
|
57
|
-
for (const key of schema.keys) {
|
|
58
|
-
if (key === 'id') {
|
|
59
|
-
c++
|
|
60
|
-
prisma2Models[schema.name].id = `String @id @default(cuid()) //${c}`;
|
|
61
|
-
} else {
|
|
62
|
-
const fieldDefinition = schema.getPathDefinition(key)
|
|
63
|
-
let required = fieldDefinition.isArray || isRequired(fieldDefinition)
|
|
64
|
-
const fieldType = getGraphQLType(fieldDefinition, key, required);
|
|
65
|
-
const unique = fieldDefinition.table.unique ? '@unique' : ''
|
|
66
|
-
let defaultValue = ''
|
|
67
|
-
if (fieldDefinition.table.default !== undefined) {
|
|
68
|
-
const wrapper = (fieldDefinition.type === String) ? '"' : ''
|
|
69
|
-
defaultValue = `@default(${wrapper}${fieldDefinition.table.default}${wrapper})`
|
|
70
|
-
}
|
|
71
|
-
let relation: string = ''
|
|
72
|
-
if (fieldDefinition.isTable) {
|
|
73
|
-
|
|
74
|
-
const processedName = [schema.name, key].join('-')
|
|
75
|
-
let relationName = getRelationName(fieldDefinition)
|
|
76
|
-
let childExists=false
|
|
77
|
-
if (parent && parentName) {
|
|
78
|
-
const parentDef = parent.getPathDefinition(parentName)
|
|
79
|
-
let parentRelationName = getRelationName(parentDef)
|
|
80
|
-
if (parent && (fieldDefinition.type === parent.name ) && (parentRelationName === relationName)) { //child exists
|
|
81
|
-
selfDef = fieldDefinition
|
|
82
|
-
childExists=true
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
if (!proccesed.includes(processedName)) {
|
|
86
|
-
proccesed.push(processedName)
|
|
87
|
-
if (!childExists) {
|
|
88
|
-
getPrisma2Model(Schema.getInstance(fieldDefinition.type), schema, key)
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
} else {
|
|
92
|
-
|
|
93
|
-
let createdAt = '', updatedAt = ''
|
|
94
|
-
if ((fieldDefinition.table.createdAt === true || (fieldDefinition.table.createdAt !== false && key === 'createdAt'))) {
|
|
95
|
-
createdAt = `@default(now())`
|
|
96
|
-
}
|
|
97
|
-
if ((fieldDefinition.table.updatedAt === true || (fieldDefinition.table.updatedAt !== false && key === 'updatedAt'))) {
|
|
98
|
-
createdAt = `@default(now())`
|
|
99
|
-
}
|
|
100
|
-
if (!fieldType) {
|
|
101
|
-
throw new Error('no type')
|
|
102
|
-
}
|
|
103
|
-
prisma2Models[schema.name][key] = `${fieldType} ${unique} ${createdAt} ${updatedAt} ${defaultValue} ${relation} `;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}// end for
|
|
107
|
-
if (parent && parentName) {
|
|
108
|
-
const parentDef = parent.getPathDefinition(parentName)
|
|
109
|
-
let parentRelationName = getRelationName(parentDef)
|
|
110
|
-
const parentArray = parentDef.isArray
|
|
111
|
-
if (selfDef) {
|
|
112
|
-
if (selfDef.key==='visitStaff'){
|
|
113
|
-
console.log('visitStaff')
|
|
114
|
-
}
|
|
115
|
-
let childRelationName = getRelationName(selfDef)
|
|
116
|
-
const childArray = selfDef.isArray
|
|
117
|
-
if (childRelationName !== parentRelationName) {
|
|
118
|
-
throw new Error(`${childRelationName}-parentRelationName`)
|
|
119
|
-
}
|
|
120
|
-
if (!parentArray && !childArray) { //1 - 1
|
|
121
|
-
const relation = getRelationName(parentDef) || `${[parent.name, `${selfDef.type}_${selfDef.key}`].join('_Exist_')}`
|
|
122
|
-
if (typeof parentDef.table?.relation !== 'string' && parentDef.table?.relation?.link) {
|
|
123
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}? @relation(fields: [${parentDef.key}Id], references: [id],name: "${relation}") // 1`
|
|
124
|
-
prisma2Models[parent.name][`${parentDef.key}Id`] = `String?`
|
|
125
|
-
prisma2Models[schema.name][`${selfDef.key}`] = `${selfDef.type}? @relation(name: "${relation}") // 2`
|
|
126
|
-
} else {
|
|
127
|
-
if (schema.name===parent.name){
|
|
128
|
-
prisma2Models[schema.name][`${relation}`] = `${parentDef.type}? @relation(name: "${relation}") // 3.1 `
|
|
129
|
-
prisma2Models[schema.name][`${selfDef.key}`] = `${selfDef.type}? @relation(fields: [${selfDef.key}Id], references: [id], name: "${relation}") // 4.1 ${parentDef.key} ${selfDef.key}`
|
|
130
|
-
prisma2Models[schema.name][`${selfDef.key}Id`] = `String?`
|
|
131
|
-
}else{
|
|
132
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}? @relation(name: "${relation}") // 3`
|
|
133
|
-
prisma2Models[schema.name][`${selfDef.key}`] = `${selfDef.type}? @relation(fields: [${selfDef.key}Id], references: [id], name: "${relation}") // 4`
|
|
134
|
-
prisma2Models[schema.name][`${selfDef.key}Id`] = `String?`
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
if (parentArray && !childArray) { // n - 1
|
|
140
|
-
const relation = getRelationName(parentDef) || `${[parent.name, `${schema.name}_${selfDef.key}`].join('_Exist_')}`
|
|
141
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}[] @relation(name: "${relation}") //5 `
|
|
142
|
-
prisma2Models[schema.name][selfDef.key] = `${selfDef.type}? @relation(fields: [${selfDef.key}Id], references: [id], name: "${relation}") // 6`
|
|
143
|
-
prisma2Models[schema.name][`${selfDef.key}Id`] = `String?`
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
if (!parentArray && childArray) { // 1 - n
|
|
147
|
-
const relation = getRelationName(parentDef) || `${[parent.name, `${schema.name}_${selfDef.key}`].join('_Exist_')}`
|
|
148
|
-
prisma2Models[schema.name][selfDef.key] = `${selfDef.type}[] @relation(name: "${relation}") //7`
|
|
149
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}? @relation(fields: [${parentDef.key}Id], references: [id], name: "${relation}") //7.1`
|
|
150
|
-
prisma2Models[parent.name][`${parentDef.key}Id`] = `String?`
|
|
151
|
-
}
|
|
152
|
-
if (parentArray && childArray) { // n - n
|
|
153
|
-
const relation = getRelationName(parentDef) || `${[parent.name, `${schema.name}_${selfDef.key}`].join('_Exist_')}`
|
|
154
|
-
if (schema.name===parent.name){
|
|
155
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}[] @relation(name: "${relation}", references: [id]) // 8 self1`
|
|
156
|
-
prisma2Models[schema.name][`${selfDef.key}2`] = `${selfDef.type}[] @relation(name: "${relation}", references: [id]) // 9 self2`
|
|
157
|
-
}else{
|
|
158
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}[] @relation(name: "${relation}") // 8`
|
|
159
|
-
prisma2Models[schema.name][selfDef.key] = `${selfDef.type}[] @relation(name: "${relation}") // 9`
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
}
|
|
163
|
-
} else {
|
|
164
|
-
const parentRelationName= getRelationName(parentDef)
|
|
165
|
-
|
|
166
|
-
if (!parentArray) { //1 - n
|
|
167
|
-
const relation =parentRelationName || `${[parent.name, `${schema.name}_${parentDef.key}`].join('_Exist_')}`
|
|
168
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}? @relation(name: "${relation}") //10`
|
|
169
|
-
prisma2Models[schema.name][`${parentRelationName || parent.name}${parent.names.query.single}`] = `${parent.name}? @relation(fields: [${parentRelationName ||parent.name}${parent.names.query.single}Id], references: [id], name: "${relation}") // 11`
|
|
170
|
-
prisma2Models[schema.name][`${parentRelationName || parent.name}${parent.names.query.single}Id`] = `String?`
|
|
171
|
-
|
|
172
|
-
}
|
|
173
|
-
if (parentArray) { // n - 1
|
|
174
|
-
const name = parent.names.query.single
|
|
175
|
-
const relation =parentRelationName || `${[parent.name, `${schema.name}_${name}`].join('_Exist_')}`
|
|
176
|
-
prisma2Models[parent.name][parentDef.key] = `${parentDef.type}[] @relation(name: "${relation}") // 12 `
|
|
177
|
-
prisma2Models[schema.name][`${parentRelationName || parent.name}${capitalize(parentDef.key)}`] = `${parent.name}? @relation(fields: [${parentRelationName || parent.name}${capitalize(parentDef.key)}Id], references: [id], name: "${relation}") // 13`
|
|
178
|
-
prisma2Models[schema.name][`${parentRelationName || parent.name}${capitalize(parentDef.key)}Id`] = `String?`
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
// if (typeof fieldDefinition.table?.relation !== 'string' && fieldDefinition.table?.relation?.link) {
|
|
185
|
-
// const nameId = `${key}Id`
|
|
186
|
-
// prisma2Models[schema.name][nameId] = `String //id with link`;
|
|
187
|
-
// relations.push(`fields: [${nameId}]`)
|
|
188
|
-
// relations.push(`references: [id]`)
|
|
189
|
-
// }
|
|
190
|
-
// if (relations.length > 0) {
|
|
191
|
-
// relation = `@relation(${relations.join(', ')})`
|
|
192
|
-
// }
|
|
193
|
-
// prisma2Models[schema.name][key] = `${fieldType} ${unique} ${defaultValue} ${relation} //deeping call=> ${fieldDefinition.type}`;
|
|
194
|
-
const getGraphQLType = (def: FieldDefinition, key: string, required: boolean): string => {
|
|
195
|
-
const optional = !def.isArray && !required ? '?' : ''
|
|
196
|
-
switch (true) {
|
|
197
|
-
case (!def.isArray && !def.isTable && def.type.name === 'String'):
|
|
198
|
-
return `String${optional}`;
|
|
199
|
-
|
|
200
|
-
case (!def.isArray && !def.isTable && def.type.name === 'Boolean'):
|
|
201
|
-
return `Boolean${optional}`;
|
|
202
|
-
|
|
203
|
-
case (!def.isArray && !def.isTable && def.type.name === 'Number'):
|
|
204
|
-
return `Float${optional}`;
|
|
205
|
-
|
|
206
|
-
case (!def.isArray && !def.isTable && def.type.name === 'Integer'):
|
|
207
|
-
return `Int${optional}`;
|
|
208
|
-
case (!def.isArray && !def.isTable && def.type.name === 'Date'):
|
|
209
|
-
return `DateTime${optional}`;
|
|
210
|
-
case (def.isArray && def.isTable):
|
|
211
|
-
return `${def.type}[]`
|
|
212
|
-
case (def.isArray && !def.isTable):
|
|
213
|
-
const scalarName = getGraphQLType({...def, isArray: false}, key, def.isArray && required)
|
|
214
|
-
return `${scalarName}[]`
|
|
215
|
-
default:
|
|
216
|
-
return def.type + optional;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
|