@simitgroup/simpleapp-generator 1.0.31 → 1.0.32
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/README.md +100 -12
- package/dist/framework.js +7 -2
- package/dist/framework.js.map +1 -1
- package/dist/generate.js +10 -1
- package/dist/generate.js.map +1 -1
- package/dist/processors/jsonschemabuilder.js +91 -15
- package/dist/processors/jsonschemabuilder.js.map +1 -1
- package/dist/type.js.map +1 -1
- package/package.json +1 -1
- package/src/framework.ts +7 -2
- package/src/generate.ts +12 -1
- package/src/processors/jsonschemabuilder.ts +113 -22
- package/src/type.ts +44 -1
- package/templates/basic/controller.eta +34 -17
- package/templates/basic/model.eta +2 -1
- package/templates/basic/pageindex.vue.eta +1 -1
- package/templates/basic/service.eta +18 -2
- package/templates/basic/simpleappclient.eta +19 -0
- package/templates/nest/SimpleAppService.eta +116 -70
- package/templates/nest/TenantMiddleware.eta +8 -13
- package/templates/nest/UserProvider.eta +127 -0
- package/templates/nest/Workflow.eta +75 -0
- package/templates/nest/app.controller.eta +12 -0
- package/templates/nest/app.module.eta +6 -2
- package/templates/nest/app.service.eta +8 -0
- package/templates/nest/nest.env.eta +7 -0
- package/templates/nuxt/components.debugdocdata.vue.eta +1 -1
- package/templates/nuxt/components.menus.vue.eta +22 -7
- package/templates/nuxt/pages.[xorg].index.vue.eta +9 -8
- package/templates/nuxt/pages.index.vue.eta +61 -8
- package/templates/nuxt/server.api.ts.eta +2 -1
- package/templates/nuxt/tailwind.css.eta +14 -1
- package/tsconfig.json +4 -1
- package/templates/nest/User.eta +0 -115
package/README.md
CHANGED
|
@@ -33,6 +33,45 @@ explore codes in:
|
|
|
33
33
|
* myapp/frontend/simpleapps/docs
|
|
34
34
|
* myapp/frontend/.env
|
|
35
35
|
|
|
36
|
+
|
|
37
|
+
# Special Properties:
|
|
38
|
+
## Special root level property
|
|
39
|
+
_id:
|
|
40
|
+
tenantId:
|
|
41
|
+
orgId:
|
|
42
|
+
branchId:
|
|
43
|
+
created:
|
|
44
|
+
createdby:
|
|
45
|
+
updated:
|
|
46
|
+
updatedby:
|
|
47
|
+
documentStatus
|
|
48
|
+
_v:
|
|
49
|
+
x-document-status: [optional]array of document satus: such as:
|
|
50
|
+
{
|
|
51
|
+
"":{"readonly":false,"allowApi":["confirm","void"],"description":"new"},
|
|
52
|
+
"D":{"readonly":false,"allowApi":["confirm","void"],"description":"draft"},
|
|
53
|
+
"V":{"readonly":true,"allowApi":[],"description":"v"},
|
|
54
|
+
"CO":{"readonly":true,"allowApi":["void","revert"],"description":"confirmed"},
|
|
55
|
+
"CL":{"readonly":true,"allowApi":[],"description":"closed"}
|
|
56
|
+
}
|
|
57
|
+
x-document-api: [optional]array of custom api (beside default)
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
[
|
|
61
|
+
{"action":"confirm","method":"put","setDocumentStatus":"CO", "bpmn":"generic-confirm",
|
|
62
|
+
"data":{"document":"document"}},
|
|
63
|
+
{"action":"void",,"method":"put", "setDocumentStatus":"V", "bpmn":"generic-void",
|
|
64
|
+
"data":{"document":"document"}},
|
|
65
|
+
{"action":"revert",,"method":"put", "setDocumentStatus":"D", "bpmn":"generic-revert",
|
|
66
|
+
"data":{"document":"document"}},
|
|
67
|
+
{"action":"duplicate", ,"method":"post","data":{"document":"document"}},
|
|
68
|
+
{"action":"switchStatus",,"method":"put","data":{"statusName":"string","document":"document"}}
|
|
69
|
+
]
|
|
70
|
+
```
|
|
71
|
+
## Custom Format
|
|
72
|
+
|
|
73
|
+
## Custom Property
|
|
74
|
+
|
|
36
75
|
# Concept of Development
|
|
37
76
|
Development using simpleapp-generator involve below steps:
|
|
38
77
|
## Simple
|
|
@@ -57,34 +96,79 @@ Development using simpleapp-generator involve below steps:
|
|
|
57
96
|
b. allow custom field format, and do something at backend
|
|
58
97
|
5. repeat same typscript formula at frontend and backend
|
|
59
98
|
|
|
99
|
+
Special Root Level property
|
|
100
|
+
[x] x-ignore-autocomplete: optional boolean, define it to allow undefine x-document-no & x-document-label
|
|
101
|
+
[x] x-isolation-type: optional string, how data isolated, 'none,tenant,org,branch', default 'org'
|
|
102
|
+
[ ] x-document-type: optional string, use to override default document type which is defined in file name
|
|
103
|
+
[ ] x-document-name: optional string, use to override default document name which is defined in file name
|
|
104
|
+
[ ] x-collection-name: optional string, use to define data save into which mongodb collection, defaultvalue same as documentName
|
|
105
|
+
|
|
106
|
+
Special Field Level property
|
|
107
|
+
|
|
108
|
+
|
|
60
109
|
|
|
61
110
|
# JSON Schema supported String Format
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
111
|
+
all format recognize by ajv plus below:
|
|
112
|
+
|
|
113
|
+
1. tel: only digit, auto generate input tel
|
|
114
|
+
2. x-document-no : required string, document unique key by organization, will pass to autocomplete too. force by pass using property `x-ignore-autocomplete`
|
|
115
|
+
3. x-document-label: required string, document label use by autocomplete, force by pass using `x-ignore-autocomplete`
|
|
116
|
+
4. x-autocomplete-field: define this field appear in autocomplete or not
|
|
66
117
|
5. x-text: do nothing, will auto generate textarea
|
|
67
|
-
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
68
121
|
# Todo
|
|
69
122
|
## Update documentation and reference
|
|
70
123
|
1. create github simpleapp-generator-template and documentation
|
|
71
124
|
2. update documentation for `simpleapp-generator` and `simpleapp-vue-component`
|
|
72
125
|
|
|
73
126
|
|
|
127
|
+
workflow ideal
|
|
128
|
+
1. define apiserver at backend .env
|
|
129
|
+
2. api-service class can have standardway for
|
|
130
|
+
a. excute new workflow
|
|
131
|
+
b. get tasklist belong to me or my group
|
|
132
|
+
c. trigger task move
|
|
133
|
+
d. cancel workflow
|
|
134
|
+
e. can define workflow inputs
|
|
135
|
+
3. bind hook to workflow?
|
|
136
|
+
|
|
74
137
|
|
|
75
138
|
## high priority Job
|
|
76
|
-
|
|
77
|
-
|
|
139
|
+
1. create follow data
|
|
140
|
+
a. users
|
|
141
|
+
b. tenant / users
|
|
142
|
+
c. org
|
|
143
|
+
branch/user
|
|
144
|
+
group
|
|
145
|
+
d. windows
|
|
146
|
+
e. permission user/group
|
|
147
|
+
3. json schema setting can define isolation type
|
|
148
|
+
2. page/index first login can pick tenant
|
|
149
|
+
3. create all window as xorg/index
|
|
150
|
+
4. transaction crud window
|
|
151
|
+
with x-document-api can have button for api-buttons, control by document status
|
|
152
|
+
support readonly status
|
|
153
|
+
5. simple crud only support crud
|
|
154
|
+
6. support document-no
|
|
155
|
+
7. add special isolation method by user
|
|
156
|
+
8. beautify nuxt page
|
|
157
|
+
9. foreign key with different schema
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
2. tidy up error at frontend/backend messages
|
|
161
|
+
fix success msg at frontend
|
|
162
|
+
11.add simple and consistent external hook in service class.
|
|
163
|
+
13.have way to create more api using different openapi schema but on same object
|
|
164
|
+
1. support half schema setting in crud, the rest at background
|
|
78
165
|
|
|
79
166
|
no auto logout after session expired, or auto renew token
|
|
80
167
|
- menulist ** less priority, can customize manually
|
|
81
|
-
2. tidy up error at frontend/backend messages
|
|
82
168
|
10.auto bind apiclient methods to compatible with openapi methods
|
|
83
169
|
a. create backend service method
|
|
84
170
|
b. create controller handle
|
|
85
|
-
|
|
86
|
-
16. support table details in generator
|
|
87
|
-
a. render autocomplete readonly field
|
|
171
|
+
|
|
88
172
|
b. add popup dialog for edit table
|
|
89
173
|
c. separate list table and form table
|
|
90
174
|
d.
|
|
@@ -92,7 +176,7 @@ no auto logout after session expired, or auto renew token
|
|
|
92
176
|
6. user management
|
|
93
177
|
5. security of string input, block xss
|
|
94
178
|
12.add pusher listener in apiclient also
|
|
95
|
-
|
|
179
|
+
|
|
96
180
|
18. add transaction screen templates
|
|
97
181
|
|
|
98
182
|
|
|
@@ -105,6 +189,10 @@ no auto logout after session expired, or auto renew token
|
|
|
105
189
|
11.frontend add parent/child ui for invoices
|
|
106
190
|
|
|
107
191
|
[done]
|
|
192
|
+
x16. support table details in generator
|
|
193
|
+
x3. settle instancePath in form
|
|
194
|
+
x17. auto add source code for addarray item
|
|
195
|
+
a. render autocomplete readonly field
|
|
108
196
|
xauto index x-document-name
|
|
109
197
|
x8. jwt
|
|
110
198
|
ximprove tel control to allow empty string
|
package/dist/framework.js
CHANGED
|
@@ -48,6 +48,11 @@ let config = {
|
|
|
48
48
|
"OAUTH2_CLIENTID": "client-id",
|
|
49
49
|
"OAUTH2_CLIENTSECRET": "client-secret-value",
|
|
50
50
|
"AUTH_SECRET_KEY": "my-secret",
|
|
51
|
+
},
|
|
52
|
+
"bpmnsetting": {
|
|
53
|
+
"BPMN_HOST": "127.0.0.1",
|
|
54
|
+
"BPMN_PORT": "9000",
|
|
55
|
+
"BPMN_API_KEY": "12345"
|
|
51
56
|
}
|
|
52
57
|
};
|
|
53
58
|
const setConfiguration = (paraconfig) => {
|
|
@@ -89,7 +94,7 @@ const prepareNest = (callback) => {
|
|
|
89
94
|
const targetfolder = config.backendFolder;
|
|
90
95
|
log.info(`creating backend project ${targetfolder}`);
|
|
91
96
|
if (!fs_1.default.existsSync(`${targetfolder}/.env`)) {
|
|
92
|
-
(0, child_process_1.exec)(`cd ${targetfolder};pnpm install --save nest-keycloak-connect keycloak-connect @nestjs/serve-static jsonwebtoken axios @darkwolf/base64url json-schema @wearenova/mongoose-tenant @nestjs/swagger @nestjs/mongoose mongoose ajv ajv-formats ajv-errors @nestjs/config`, async (error, stdout, stderr) => {
|
|
97
|
+
(0, child_process_1.exec)(`cd ${targetfolder};pnpm install --save nest-keycloak-connect keycloak-connect bpmn-client @nestjs/serve-static jsonwebtoken axios @darkwolf/base64url json-schema @wearenova/mongoose-tenant @nestjs/swagger @nestjs/mongoose mongoose ajv ajv-formats ajv-errors @nestjs/config`, async (error, stdout, stderr) => {
|
|
93
98
|
// log.info(`dependency installed`)
|
|
94
99
|
if (!error) {
|
|
95
100
|
fs_1.default.mkdirSync(`${targetfolder}/public_html`, { recursive: true });
|
|
@@ -129,7 +134,7 @@ const prepareNuxt = (callback) => {
|
|
|
129
134
|
(0, child_process_1.exec)(`cd ${targetfolder};pnpm install;pnpm install -D @sidebase/nuxt-auth @nuxt/ui @types/node @vueuse/nuxt @sidebase/nuxt-auth @vueuse/core nuxt-security prettier `, (error, stdout, stderr) => {
|
|
130
135
|
//;pnpm install
|
|
131
136
|
console.log(error, stdout, stderr);
|
|
132
|
-
(0, child_process_1.exec)(`cd ${targetfolder};pnpm install --save next-auth@4.21.1 @darkwolf/base64url @nuxt/ui ajv ajv-formats ajv-errors dotenv @fullcalendar/core @fullcalendar/vue3 quill uuid primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr) => {
|
|
137
|
+
(0, child_process_1.exec)(`cd ${targetfolder};pnpm install --save @darkwolf/base64url next-auth@4.21.1 @darkwolf/base64url @nuxt/ui ajv ajv-formats ajv-errors dotenv @fullcalendar/core @fullcalendar/vue3 quill uuid primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr) => {
|
|
133
138
|
console.log(error, stdout, stderr);
|
|
134
139
|
fs_1.default.mkdirSync(`${targetfolder}/assets/css/`, { recursive: true });
|
|
135
140
|
fs_1.default.mkdirSync(`${targetfolder}/layouts`, { recursive: true });
|
package/dist/framework.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework.js","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAmB;AACnB,iDAAwC;AACxC,iCAAwC;AACxC,sDAAuC;AACvC,6BAA0B;AAC1B,MAAM,GAAG,GAAoB,IAAI,cAAM,EAAE,CAAC;AAE1C,IAAI,MAAM,GAAG;IACT,mBAAmB,EAAC,eAAe;IACnC,eAAe,EAAC,aAAa;IAC7B,aAAa,EAAC,MAAM;IACpB,iBAAiB,EAAC,kEAAkE;IACpF,gBAAgB,EAAC,cAAc;IAC/B,cAAc,EAAC,MAAM;IACrB,cAAc,EAAC,iBAAiB;IAChC,iBAAiB,EAAC;QACd,gBAAgB,EAAC,8BAA8B;QAC/C,cAAc,EAAC,YAAY;QAC3B,kBAAkB,EAAC,+CAA+C;QAClE,iBAAiB,EAAC,WAAW;QAC7B,qBAAqB,EAAC,qBAAqB;QAC3C,iBAAiB,EAAC,WAAW;KAChC;CACJ,CAAA;AAEM,MAAM,gBAAgB,GAAC,CAAC,UAAU,EAAC,EAAE;IACxC,MAAM,GAAC,UAAU,CAAA;AACrB,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B;AACD,2BAA2B;AACpB,MAAM,aAAa,GAAE,CAAC,QAAiB,EAAE,EAAE;IAC9C,MAAM,aAAa,GAAC,MAAM,CAAC,aAAa,CAAA;IACxC,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAC;QAC7B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAC,CAAC,SAAS,EAAC,IAAI,EAAC,MAAM,EAAE,aAAa,EAAE,qCAAqC,EAAE,MAAM,CAAC,EAC/F,EAAG,KAAK,EAAE,SAAS,GAAE,CAAC,CAAA;QACtC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;YACzB,MAAM,MAAM,GAAG,IAAA,qBAAK,EAAC,MAAM,EAAC,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAC,EAAG,KAAK,EAAE,SAAS,EAAC,CAAC,CAAA;YACtF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;gBAC1B,QAAQ,EAAE,CAAA;YACd,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;KACL;SAAI;QACD,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AAdY,QAAA,aAAa,iBAczB;AACD,2BAA2B;AACpB,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE;IAC/C,MAAM,cAAc,GAAC,MAAM,CAAC,cAAc,CAAA;IAC1C,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAC;QAC9B,MAAM,MAAM,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAC,CAAC,aAAa,EAAC,MAAM,EAAC,cAAc,CAAC,EAAC,EAAG,KAAK,EAAE,SAAS,GAAE,CAAC,CAAA;QACvF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;YAC1B,QAAQ,EAAE,CAAA;QACd,CAAC,CAAC,CAAA;KACL;SAAI;QACD,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AAVY,QAAA,aAAa,iBAUzB;AAEM,MAAM,WAAW,GAAG,CAAC,QAAiB,EAAC,EAAE;IAC5C,MAAM,YAAY,GAAE,MAAM,CAAC,aAAa,CAAA;IACxC,GAAG,CAAC,IAAI,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAA;IACpD,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,YAAY,OAAO,CAAC,EAAC;QAGtC,IAAA,oBAAI,EAAC,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"framework.js","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAmB;AACnB,iDAAwC;AACxC,iCAAwC;AACxC,sDAAuC;AACvC,6BAA0B;AAC1B,MAAM,GAAG,GAAoB,IAAI,cAAM,EAAE,CAAC;AAE1C,IAAI,MAAM,GAAG;IACT,mBAAmB,EAAC,eAAe;IACnC,eAAe,EAAC,aAAa;IAC7B,aAAa,EAAC,MAAM;IACpB,iBAAiB,EAAC,kEAAkE;IACpF,gBAAgB,EAAC,cAAc;IAC/B,cAAc,EAAC,MAAM;IACrB,cAAc,EAAC,iBAAiB;IAChC,iBAAiB,EAAC;QACd,gBAAgB,EAAC,8BAA8B;QAC/C,cAAc,EAAC,YAAY;QAC3B,kBAAkB,EAAC,+CAA+C;QAClE,iBAAiB,EAAC,WAAW;QAC7B,qBAAqB,EAAC,qBAAqB;QAC3C,iBAAiB,EAAC,WAAW;KAChC;IACD,aAAa,EAAC;QACV,WAAW,EAAC,WAAW;QACvB,WAAW,EAAC,MAAM;QAClB,cAAc,EAAC,OAAO;KACzB;CACJ,CAAA;AAEM,MAAM,gBAAgB,GAAC,CAAC,UAAU,EAAC,EAAE;IACxC,MAAM,GAAC,UAAU,CAAA;AACrB,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B;AACD,2BAA2B;AACpB,MAAM,aAAa,GAAE,CAAC,QAAiB,EAAE,EAAE;IAC9C,MAAM,aAAa,GAAC,MAAM,CAAC,aAAa,CAAA;IACxC,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAC;QAC7B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAC,CAAC,SAAS,EAAC,IAAI,EAAC,MAAM,EAAE,aAAa,EAAE,qCAAqC,EAAE,MAAM,CAAC,EAC/F,EAAG,KAAK,EAAE,SAAS,GAAE,CAAC,CAAA;QACtC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;YACzB,MAAM,MAAM,GAAG,IAAA,qBAAK,EAAC,MAAM,EAAC,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAC,EAAG,KAAK,EAAE,SAAS,EAAC,CAAC,CAAA;YACtF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;gBAC1B,QAAQ,EAAE,CAAA;YACd,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;KACL;SAAI;QACD,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AAdY,QAAA,aAAa,iBAczB;AACD,2BAA2B;AACpB,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE;IAC/C,MAAM,cAAc,GAAC,MAAM,CAAC,cAAc,CAAA;IAC1C,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAC;QAC9B,MAAM,MAAM,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAC,CAAC,aAAa,EAAC,MAAM,EAAC,cAAc,CAAC,EAAC,EAAG,KAAK,EAAE,SAAS,GAAE,CAAC,CAAA;QACvF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAC,CAAC,QAAQ,EAAC,EAAE;YAC1B,QAAQ,EAAE,CAAA;QACd,CAAC,CAAC,CAAA;KACL;SAAI;QACD,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AAVY,QAAA,aAAa,iBAUzB;AAEM,MAAM,WAAW,GAAG,CAAC,QAAiB,EAAC,EAAE;IAC5C,MAAM,YAAY,GAAE,MAAM,CAAC,aAAa,CAAA;IACxC,GAAG,CAAC,IAAI,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAA;IACpD,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,YAAY,OAAO,CAAC,EAAC;QAGtC,IAAA,oBAAI,EAAC,MAAM,YAAY,iQAAiQ,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,EAAE;YACpT,mCAAmC;YACnC,IAAG,CAAC,KAAK,EAAC;gBACN,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,cAAc,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAC5D,MAAM,GAAG,GAAG,IAAI,SAAG,CAAC,EAAC,KAAK,EAAE,SAAS,CAAC,WAAW,EAAC,CAAC,CAAC;gBACpD,MAAM,SAAS,GAAC,MAAM,CAAA;gBACtB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;gBAC9D,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,4BAA4B,EAAE,SAAS,CAAC,CAAC;gBAE5E,YAAE,CAAC,aAAa,CAAC,GAAG,YAAY,OAAO,EAAE,MAAM,CAAC,CAAC;gBACjD,YAAE,CAAC,aAAa,CAAC,GAAG,YAAY,cAAc,EAAE,OAAO,CAAC,CAAC;gBACzD,YAAE,CAAC,aAAa,CAAC,GAAG,YAAY,mCAAmC,EAAE,eAAe,CAAC,CAAC;gBACtF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,GAAC,GAAG,GAAC,GAAG,YAAY,gBAAgB,CAAA;gBACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;gBACtC,QAAQ,CAAC,eAAe,CAAC,eAAe,GAAC,IAAI,CAAA;gBAC7C,QAAQ,CAAC,eAAe,CAAC,iBAAiB,GAAC,IAAI,CAAA;gBAC/C,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAEzD,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;gBAClC,QAAQ,EAAE,CAAA;aAEb;iBAAK;gBACN,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACjB,MAAM,KAAK,CAAA;aACV;QACL,CAAC,CAAC,CAAA;KACL;SAAI;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,YAAY,2CAA2C,CAAC,CAAA;QACpE,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AArCY,QAAA,WAAW,eAqCvB;AACD,8CAA8C;AACvC,MAAM,WAAW,GAAG,CAAC,QAAiB,EAAC,EAAE;IAC5C,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAA;IAC1C,IAAG,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,YAAY,OAAO,CAAC,EAAC;QACtC,mCAAmC;QACnC,IAAA,oBAAI,EAAC,MAAM,YAAY,8IAA8I,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,EAAE;YAC5L,mBAAmB;YACnB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;YAC9B,IAAA,oBAAI,EAAC,MAAM,YAAY,oRAAoR,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,EAAE;gBACtU,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;gBAElC,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,cAAc,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAC5D,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,UAAU,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBACxD,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,aAAa,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAC3D,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,oBAAoB,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAClE,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,kBAAkB,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAChE,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,eAAe,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBAC7D,YAAE,CAAC,SAAS,CAAC,GAAG,YAAY,UAAU,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,CAAC,CAAA;gBACxD,MAAM,GAAG,GAAG,IAAI,SAAG,CAAC,EAAC,KAAK,EAAE,GAAG,SAAS,CAAC,WAAW,OAAO,EAAC,CAAC,CAAC;gBAC9D,MAAM,SAAS,GAAC,MAAM,CAAA;gBACtB,MAAM,MAAM,GAAG;oBACX,eAAe,EAAC,SAAS;oBACzB,mCAAmC,EAAC,6BAA6B;oBACjE,4BAA4B,EAAC,sBAAsB;oBACnD,iCAAiC,EAAC,2BAA2B;oBAC7D,mCAAmC,EAAC,kCAAkC;oBACtE,2BAA2B,EAAC,qBAAqB;oBACjD,qBAAqB,EAAC,4BAA4B;oBAClD,iCAAiC,EAAC,2BAA2B;oBAC7D,+BAA+B,EAAC,0BAA0B;oBAC1D,sBAAsB,EAAC,gBAAgB;oBACvC,uBAAuB,EAAC,iBAAiB;oBACzC,8BAA8B,EAAC,wBAAwB;oBACvD,uBAAuB,EAAC,iBAAiB;oBACzC,4BAA4B,EAAC,sBAAsB;oBACnD,0BAA0B,EAAC,oBAAoB;oBAC/C,oBAAoB,EAAC,yBAAyB;oBAC9C,WAAW,EAAC,MAAM;iBACrB,CAAA;gBAED,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;gBACpD,KAAI,IAAI,CAAC,GAAC,CAAC,EAAE,CAAC,GAAC,SAAS,CAAC,MAAM,EAAC,CAAC,EAAE,EAAC;oBAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;oBAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;oBACjC,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5C,MAAM,IAAI,GAAE,GAAG,YAAY,IAAI,QAAQ,EAAE,CAAA;oBACzC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,CAAA;oBACzB,YAAE,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;iBAC/B;gBAED,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;gBAClC,QAAQ,EAAE,CAAA;YACV,CAAC,CAAC,CAAA;QAEN,CAAC,CAAC,CAAA;KACT;SAAI;QACD,0BAA0B;QAC1B,QAAQ,EAAE,CAAA;KACb;AACL,CAAC,CAAA;AA1DY,QAAA,WAAW,eA0DvB;AAEM,MAAM,UAAU,GAAG,GAAE,EAAE;IAC1B,IAAA,oBAAI,EAAC,MAAM,MAAM,CAAC,cAAc,8DAA8D,CAAC,CAAA;AAEnG,CAAC,CAAA;AAHY,QAAA,UAAU,cAGtB;AACM,MAAM,UAAU,GAAG,GAAE,EAAE;IAC1B,IAAA,oBAAI,EAAC,MAAM,MAAM,CAAC,aAAa,iEAAiE,CAAC,CAAA;AACrG,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAEM,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,IAAA,oBAAI,EAAC,qCAAqC,MAAM,CAAC,YAAY,OAAO,MAAM,CAAC,cAAc,6DAA6D,CAAC,CAAA;AAC3J,CAAC,CAAA;AAFY,QAAA,oBAAoB,wBAEhC"}
|
package/dist/generate.js
CHANGED
|
@@ -118,6 +118,10 @@ const generate = (docname, doctype, rendertype, allmodels, backendfolder, fronte
|
|
|
118
118
|
backEndCode: '',
|
|
119
119
|
controllerCode: '',
|
|
120
120
|
apiSchemaCode: '',
|
|
121
|
+
docStatusSettings: allmodels[capitalizeFirstLetter(docname)].docStatusSettings,
|
|
122
|
+
apiSettings: allmodels[capitalizeFirstLetter(docname)].apiSettings,
|
|
123
|
+
requireautocomplete: allmodels[capitalizeFirstLetter(docname)].requireautocomplete,
|
|
124
|
+
isolationtype: allmodels[capitalizeFirstLetter(docname)].isolationtype
|
|
121
125
|
};
|
|
122
126
|
// console.log('generate 2', JSON.stringify(variables));
|
|
123
127
|
// // const txtUISchema = eta.render('./uischema', variables);
|
|
@@ -253,8 +257,9 @@ const prepareEnvironments = (backendfolder, frontendfolder) => {
|
|
|
253
257
|
}
|
|
254
258
|
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/SimpleAppService.eta`, `${targetfolder}/SimpleAppService.ts`);
|
|
255
259
|
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/SimpleAppController.eta`, `${targetfolder}/SimpleAppController.ts`);
|
|
260
|
+
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/Workflow.eta`, `${targetfolder}/Workflow.ts`);
|
|
256
261
|
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/TenantMiddleware.eta`, `${targetfolder}/TenantMiddleware.ts`);
|
|
257
|
-
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/
|
|
262
|
+
(0, fs_1.copyFileSync)(`${constants.templatedir}/nest/UserProvider.eta`, `${targetfolder}/UserProvider.ts`);
|
|
258
263
|
//copy over frontend apiabstract class
|
|
259
264
|
// copyFileSync(`${constants.templatedir}/nuxt.apigateway.eta`,`${targetfrontendfolder}/[...].ts`)
|
|
260
265
|
//prepare backend config.ts
|
|
@@ -267,6 +272,10 @@ const finalize = (modules, backendfolder, frontendfolder) => {
|
|
|
267
272
|
const eta = new Eta({ views: constants.templatedir });
|
|
268
273
|
const txtMainModule = eta.render('./nest/app.module.eta', modules);
|
|
269
274
|
(0, fs_1.writeFileSync)(`${backendfolder}/src/app.module.ts`, txtMainModule);
|
|
275
|
+
const txtMainService = eta.render('./nest/app.service.eta', modules);
|
|
276
|
+
(0, fs_1.writeFileSync)(`${backendfolder}/src/app.service.ts`, txtMainService);
|
|
277
|
+
const txtAppController = eta.render('./nest/app.controller.eta', modules);
|
|
278
|
+
(0, fs_1.writeFileSync)(`${backendfolder}/src/app.controller.ts`, txtAppController);
|
|
270
279
|
const foreignkeyfile = `${backendfolder}/src/dicts/foreignkeys.json`;
|
|
271
280
|
(0, fs_1.writeFileSync)(foreignkeyfile, JSON.stringify(storage_1.foreignkeys));
|
|
272
281
|
log.info("write to foreignkey file ", foreignkeyfile);
|
package/dist/generate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,18 +12,41 @@ const storage_1 = require("../storage");
|
|
|
12
12
|
const type_1 = require("../type");
|
|
13
13
|
const log = new tslog_1.Logger();
|
|
14
14
|
const X_DOCUMENT_NO = 'x-document-no';
|
|
15
|
-
const
|
|
15
|
+
const X_DOCUMENT_LABEL = 'x-document-label';
|
|
16
16
|
const X_AUTOCOMPLETE_FIELD = 'x-autocomplete-field';
|
|
17
|
+
const X_DOCUMENT_NAME = 'x-document-name';
|
|
18
|
+
const X_DOCUMENT_TYPE = 'x-document-type';
|
|
19
|
+
const X_COLLECTION_NAME = 'x-document-collection';
|
|
20
|
+
const X_DOCUMENT_STATUS = 'x-document-status';
|
|
21
|
+
const X_DOCUMENT_API = 'x-document-api';
|
|
22
|
+
const X_IGNORE_AUTOCOMPLETE = 'x-ignore-autocomplete';
|
|
17
23
|
const FOREIGNKEY_PROPERTY = 'x-foreignkey';
|
|
18
24
|
const X_TEL_NO = 'x-tel';
|
|
25
|
+
const X_ISOLATION_TYPE = 'x-isolation-type';
|
|
26
|
+
let docSetting = {};
|
|
19
27
|
let allmodels = {};
|
|
20
28
|
let fullschema = {};
|
|
21
|
-
let fieldAutoCompleteCode
|
|
22
|
-
let fieldAutoCompleteName
|
|
29
|
+
// let fieldAutoCompleteCode=''
|
|
30
|
+
// let fieldAutoCompleteName=''
|
|
23
31
|
let moreAutoComplete = [];
|
|
32
|
+
const newDocSetting = (doctype, docname) => {
|
|
33
|
+
return {
|
|
34
|
+
docName: docname,
|
|
35
|
+
docType: doctype,
|
|
36
|
+
colDocNo: '',
|
|
37
|
+
colDocLabel: '',
|
|
38
|
+
collectionName: docname,
|
|
39
|
+
autocompleteFields: [],
|
|
40
|
+
docStatusSettings: [],
|
|
41
|
+
apiSettings: [],
|
|
42
|
+
requireautocomplete: true,
|
|
43
|
+
isolationtype: "org"
|
|
44
|
+
};
|
|
45
|
+
};
|
|
24
46
|
const readJsonSchemaBuilder = async (doctype, docname, orijsondata, allforeignkeys) => {
|
|
25
|
-
|
|
26
|
-
|
|
47
|
+
docSetting = newDocSetting(doctype, docname);
|
|
48
|
+
// fieldAutoCompleteCode=''
|
|
49
|
+
// fieldAutoCompleteName=''
|
|
27
50
|
moreAutoComplete = [];
|
|
28
51
|
allmodels = {};
|
|
29
52
|
const validateddata = Object.assign({}, orijsondata);
|
|
@@ -42,12 +65,12 @@ const readJsonSchemaBuilder = async (doctype, docname, orijsondata, allforeignke
|
|
|
42
65
|
else if (jsondata.type == 'array') {
|
|
43
66
|
throw (`unsupport array type for ${docname}.${doctype}`);
|
|
44
67
|
}
|
|
45
|
-
if (
|
|
68
|
+
if (docSetting.colDocNo == '' && docSetting.requireautocomplete) {
|
|
46
69
|
log.error(`you shall define 1 field with format:'${X_DOCUMENT_NO}'`);
|
|
47
70
|
throw "missing field format";
|
|
48
71
|
}
|
|
49
|
-
if (
|
|
50
|
-
log.error(`you shall define 1 field with format: '${
|
|
72
|
+
if (docSetting.colDocLabel == '' && docSetting.requireautocomplete) {
|
|
73
|
+
log.error(`you shall define 1 field with format: '${X_DOCUMENT_LABEL}'}`);
|
|
51
74
|
throw "missing field format";
|
|
52
75
|
}
|
|
53
76
|
return Promise.resolve(allmodels);
|
|
@@ -67,10 +90,49 @@ const processObject = (doctype, docname, jsondata) => {
|
|
|
67
90
|
jsondata.properties['updated'] = { type: 'string', description: 'Control value, dont edit it', };
|
|
68
91
|
jsondata.properties['createdby'] = { type: 'string', description: 'Control value, dont edit it', };
|
|
69
92
|
jsondata.properties['updatedby'] = { type: 'string', description: 'Control value, dont edit it', };
|
|
93
|
+
if (jsondata[X_ISOLATION_TYPE] && ['none', 'tenant', 'org', 'branch'].includes(jsondata[X_ISOLATION_TYPE])) {
|
|
94
|
+
docSetting.isolationtype = jsondata[X_ISOLATION_TYPE];
|
|
95
|
+
}
|
|
96
|
+
if (jsondata[X_IGNORE_AUTOCOMPLETE] && jsondata[X_IGNORE_AUTOCOMPLETE] == true) {
|
|
97
|
+
docSetting.requireautocomplete = false;
|
|
98
|
+
}
|
|
99
|
+
if (jsondata[X_DOCUMENT_API] && Array.isArray(jsondata[X_DOCUMENT_API])) {
|
|
100
|
+
log.warn("x-document-api exists:");
|
|
101
|
+
log.warn(jsondata[X_DOCUMENT_API]);
|
|
102
|
+
for (let i = 0; i < jsondata[X_DOCUMENT_API].length; i++) {
|
|
103
|
+
const tmp = jsondata[X_DOCUMENT_API][i];
|
|
104
|
+
if (!tmp.action) {
|
|
105
|
+
const errmsg = "x-document-api defined but undefine property 'action'";
|
|
106
|
+
log.error(errmsg);
|
|
107
|
+
throw errmsg;
|
|
108
|
+
}
|
|
109
|
+
if (!tmp.method) {
|
|
110
|
+
const errmsg = "x-document-api defined but undefine property 'method'";
|
|
111
|
+
log.error(errmsg);
|
|
112
|
+
throw errmsg;
|
|
113
|
+
}
|
|
114
|
+
docSetting.apiSettings.push(tmp);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (jsondata[X_DOCUMENT_STATUS] && Array.isArray(jsondata[X_DOCUMENT_STATUS])) {
|
|
118
|
+
for (let i = 0; i < jsondata[X_DOCUMENT_STATUS].length; i++) {
|
|
119
|
+
const tmp = jsondata[X_DOCUMENT_STATUS][i];
|
|
120
|
+
if (tmp.statusCode === undefined) {
|
|
121
|
+
const errmsg = "x-document-status defined but undefine property 'statusCode'";
|
|
122
|
+
log.error(errmsg);
|
|
123
|
+
throw errmsg;
|
|
124
|
+
}
|
|
125
|
+
if (!tmp.statusName === undefined) {
|
|
126
|
+
const errmsg = "x-document-status defined but undefine property 'statusName'";
|
|
127
|
+
log.error(errmsg);
|
|
128
|
+
throw errmsg;
|
|
129
|
+
}
|
|
130
|
+
docSetting.docStatusSettings.push(tmp);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
70
133
|
return genSchema((0, libs_1.capitalizeFirstLetter)(docname), 'object', jsondata.properties, jsondata['required'] ? jsondata['required'] : []);
|
|
71
134
|
};
|
|
72
|
-
const genSchema = (docname, schematype, jsondata,
|
|
73
|
-
requiredlist) => {
|
|
135
|
+
const genSchema = (docname, schematype, jsondata, requiredlist) => {
|
|
74
136
|
var _a, _b, _c, _d;
|
|
75
137
|
const newmodel = {};
|
|
76
138
|
const props = Object.getOwnPropertyNames(jsondata !== null && jsondata !== void 0 ? jsondata : {});
|
|
@@ -85,17 +147,20 @@ requiredlist) => {
|
|
|
85
147
|
const isrequired = requiredlist && requiredlist.includes(key);
|
|
86
148
|
const newName = docname + (0, libs_1.capitalizeFirstLetter)(key);
|
|
87
149
|
if (obj.format && obj.format == X_DOCUMENT_NO) {
|
|
88
|
-
|
|
150
|
+
docSetting.colDocNo = key;
|
|
89
151
|
obj.minLength = (_a = obj.minLength) !== null && _a !== void 0 ? _a : 1;
|
|
90
152
|
jsondata[key]['minLength'] = obj.minLength;
|
|
91
153
|
}
|
|
92
|
-
if (obj.format && obj.format ==
|
|
93
|
-
|
|
154
|
+
if (obj.format && obj.format == X_DOCUMENT_LABEL) {
|
|
155
|
+
docSetting.colDocLabel = key;
|
|
94
156
|
obj.minLength = (_b = obj.minLength) !== null && _b !== void 0 ? _b : 1;
|
|
95
157
|
jsondata[key]['minLength'] = obj.minLength;
|
|
96
158
|
}
|
|
159
|
+
if (obj[X_COLLECTION_NAME]) {
|
|
160
|
+
docSetting.collectionName = key;
|
|
161
|
+
}
|
|
97
162
|
if (obj[X_AUTOCOMPLETE_FIELD]) {
|
|
98
|
-
|
|
163
|
+
docSetting.autocompleteFields.push(key);
|
|
99
164
|
}
|
|
100
165
|
// if(obj.format && obj.format==X_TEL_NO){
|
|
101
166
|
// obj.pattern=obj.pattern ?? '/^\d{7,15}$/gm'
|
|
@@ -146,7 +211,18 @@ requiredlist) => {
|
|
|
146
211
|
// console.log(key,'--------newmodel',obj, newmodel[key]);
|
|
147
212
|
}
|
|
148
213
|
}
|
|
149
|
-
allmodels[docname] = {
|
|
214
|
+
allmodels[docname] = {
|
|
215
|
+
type: schematype,
|
|
216
|
+
model: newmodel,
|
|
217
|
+
codeField: docSetting.colDocNo,
|
|
218
|
+
nameField: docSetting.colDocLabel,
|
|
219
|
+
moreAutoComplete: docSetting.autocompleteFields,
|
|
220
|
+
docStatusSettings: docSetting.docStatusSettings,
|
|
221
|
+
apiSettings: docSetting.apiSettings,
|
|
222
|
+
requireautocomplete: docSetting.requireautocomplete,
|
|
223
|
+
isolationtype: docSetting.isolationtype
|
|
224
|
+
};
|
|
225
|
+
// console.warn(docname,docSetting.isolationtype)
|
|
150
226
|
return newmodel;
|
|
151
227
|
};
|
|
152
228
|
const getField = (fieldname, obj, isrequired) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonschemabuilder.js","sourceRoot":"","sources":["../../src/processors/jsonschemabuilder.ts"],"names":[],"mappings":";;;;;;AAGA,kCAAgD;AAEhD,iCAAwC;AACxC,iGAA6D;AAC7D,wCAAsC;AACtC,sDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"jsonschemabuilder.js","sourceRoot":"","sources":["../../src/processors/jsonschemabuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/type.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":";;;AAcA,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,+BAAmB,CAAA;IACnB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,iCAAqB,CAAA;IACrB,+BAAmB,CAAA;AACrB,CAAC,EAPW,UAAU,0BAAV,UAAU,QAOrB"}
|
package/package.json
CHANGED
package/src/framework.ts
CHANGED
|
@@ -20,6 +20,11 @@ let config = {
|
|
|
20
20
|
"OAUTH2_CLIENTID":"client-id",
|
|
21
21
|
"OAUTH2_CLIENTSECRET":"client-secret-value",
|
|
22
22
|
"AUTH_SECRET_KEY":"my-secret",
|
|
23
|
+
},
|
|
24
|
+
"bpmnsetting":{
|
|
25
|
+
"BPMN_HOST":"127.0.0.1",
|
|
26
|
+
"BPMN_PORT":"9000",
|
|
27
|
+
"BPMN_API_KEY":"12345"
|
|
23
28
|
}
|
|
24
29
|
}
|
|
25
30
|
|
|
@@ -61,7 +66,7 @@ export const prepareNest = (callback:Function)=>{
|
|
|
61
66
|
if(!fs.existsSync(`${targetfolder}/.env`)){
|
|
62
67
|
|
|
63
68
|
|
|
64
|
-
exec(`cd ${targetfolder};pnpm install --save nest-keycloak-connect keycloak-connect @nestjs/serve-static jsonwebtoken axios @darkwolf/base64url json-schema @wearenova/mongoose-tenant @nestjs/swagger @nestjs/mongoose mongoose ajv ajv-formats ajv-errors @nestjs/config`,async (error, stdout, stderr)=>{
|
|
69
|
+
exec(`cd ${targetfolder};pnpm install --save nest-keycloak-connect keycloak-connect bpmn-client @nestjs/serve-static jsonwebtoken axios @darkwolf/base64url json-schema @wearenova/mongoose-tenant @nestjs/swagger @nestjs/mongoose mongoose ajv ajv-formats ajv-errors @nestjs/config`,async (error, stdout, stderr)=>{
|
|
65
70
|
// log.info(`dependency installed`)
|
|
66
71
|
if(!error){
|
|
67
72
|
fs.mkdirSync(`${targetfolder}/public_html`,{recursive:true})
|
|
@@ -101,7 +106,7 @@ export const prepareNuxt = (callback:Function)=>{
|
|
|
101
106
|
exec(`cd ${targetfolder};pnpm install;pnpm install -D @sidebase/nuxt-auth @nuxt/ui @types/node @vueuse/nuxt @sidebase/nuxt-auth @vueuse/core nuxt-security prettier `, (error, stdout, stderr)=>{
|
|
102
107
|
//;pnpm install
|
|
103
108
|
console.log(error, stdout, stderr)
|
|
104
|
-
exec(`cd ${targetfolder};pnpm install --save next-auth@4.21.1 @darkwolf/base64url @nuxt/ui ajv ajv-formats ajv-errors dotenv @fullcalendar/core @fullcalendar/vue3 quill uuid primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr)=>{
|
|
109
|
+
exec(`cd ${targetfolder};pnpm install --save @darkwolf/base64url next-auth@4.21.1 @darkwolf/base64url @nuxt/ui ajv ajv-formats ajv-errors dotenv @fullcalendar/core @fullcalendar/vue3 quill uuid primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr)=>{
|
|
105
110
|
console.log(error, stdout, stderr)
|
|
106
111
|
|
|
107
112
|
fs.mkdirSync(`${targetfolder}/assets/css/`,{recursive:true})
|
package/src/generate.ts
CHANGED
|
@@ -110,6 +110,10 @@ const generate = (
|
|
|
110
110
|
backEndCode: '',
|
|
111
111
|
controllerCode:'',
|
|
112
112
|
apiSchemaCode:'',
|
|
113
|
+
docStatusSettings:allmodels[capitalizeFirstLetter(docname)].docStatusSettings,
|
|
114
|
+
apiSettings:allmodels[capitalizeFirstLetter(docname)].apiSettings,
|
|
115
|
+
requireautocomplete:allmodels[capitalizeFirstLetter(docname)].requireautocomplete,
|
|
116
|
+
isolationtype:allmodels[capitalizeFirstLetter(docname)].isolationtype
|
|
113
117
|
};
|
|
114
118
|
|
|
115
119
|
// console.log('generate 2', JSON.stringify(variables));
|
|
@@ -271,8 +275,9 @@ const prepareEnvironments = (backendfolder:string,frontendfolder:string)=>{
|
|
|
271
275
|
|
|
272
276
|
copyFileSync(`${constants.templatedir}/nest/SimpleAppService.eta`,`${targetfolder}/SimpleAppService.ts`)
|
|
273
277
|
copyFileSync(`${constants.templatedir}/nest/SimpleAppController.eta`,`${targetfolder}/SimpleAppController.ts`)
|
|
278
|
+
copyFileSync(`${constants.templatedir}/nest/Workflow.eta`,`${targetfolder}/Workflow.ts`)
|
|
274
279
|
copyFileSync(`${constants.templatedir}/nest/TenantMiddleware.eta`,`${targetfolder}/TenantMiddleware.ts`)
|
|
275
|
-
copyFileSync(`${constants.templatedir}/nest/
|
|
280
|
+
copyFileSync(`${constants.templatedir}/nest/UserProvider.eta`,`${targetfolder}/UserProvider.ts`)
|
|
276
281
|
|
|
277
282
|
//copy over frontend apiabstract class
|
|
278
283
|
// copyFileSync(`${constants.templatedir}/nuxt.apigateway.eta`,`${targetfrontendfolder}/[...].ts`)
|
|
@@ -291,6 +296,12 @@ const finalize=(modules:ModuleObject[],backendfolder:string,frontendfolder:strin
|
|
|
291
296
|
const eta = new Eta({views:constants.templatedir});
|
|
292
297
|
const txtMainModule = eta.render('./nest/app.module.eta', modules);
|
|
293
298
|
writeFileSync(`${backendfolder}/src/app.module.ts`, txtMainModule);
|
|
299
|
+
|
|
300
|
+
const txtMainService = eta.render('./nest/app.service.eta', modules);
|
|
301
|
+
writeFileSync(`${backendfolder}/src/app.service.ts`, txtMainService);
|
|
302
|
+
|
|
303
|
+
const txtAppController = eta.render('./nest/app.controller.eta', modules);
|
|
304
|
+
writeFileSync(`${backendfolder}/src/app.controller.ts`, txtAppController);
|
|
294
305
|
|
|
295
306
|
const foreignkeyfile =`${backendfolder}/src/dicts/foreignkeys.json`
|
|
296
307
|
writeFileSync(foreignkeyfile, JSON.stringify(foreignkeys));
|