@live-change/cli 0.1.5 → 0.1.9
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/bin/lcli.js +40 -31
- package/package.json +3 -3
package/bin/lcli.js
CHANGED
|
@@ -11,12 +11,14 @@ const app = require("@live-change/framework").app()
|
|
|
11
11
|
const {
|
|
12
12
|
|
|
13
13
|
SsrServer,
|
|
14
|
-
|
|
14
|
+
|
|
15
15
|
createLoopbackDao,
|
|
16
16
|
setupApiServer,
|
|
17
17
|
setupApiSockJs,
|
|
18
18
|
setupApiWs,
|
|
19
|
-
setupDbServer
|
|
19
|
+
setupDbServer,
|
|
20
|
+
setupDbClient,
|
|
21
|
+
setupApp
|
|
20
22
|
|
|
21
23
|
} = require("@live-change/server")
|
|
22
24
|
|
|
@@ -109,20 +111,27 @@ function ssrServerOptions(yargs) {
|
|
|
109
111
|
describe: 'start internal api server',
|
|
110
112
|
type: 'boolean'
|
|
111
113
|
})
|
|
114
|
+
yargs.option('sessionExpires', {
|
|
115
|
+
describe: 'session expires after (in minutes)',
|
|
116
|
+
type: 'number',
|
|
117
|
+
default: 30*24*60
|
|
118
|
+
})
|
|
112
119
|
}
|
|
113
120
|
|
|
114
121
|
const argv = require('yargs') // eslint-disable-line
|
|
115
122
|
.command('apiServer', 'start server', (yargs) => {
|
|
116
123
|
apiServerOptions(yargs)
|
|
117
124
|
startOptions(yargs)
|
|
118
|
-
}, (argv) => {
|
|
119
|
-
|
|
125
|
+
}, async (argv) => {
|
|
126
|
+
await setupApp(argv)
|
|
127
|
+
await apiServer(argv)
|
|
120
128
|
})
|
|
121
129
|
.command('devApiServer', 'shortcut for apiServer --withServices --updateServices', (yargs) => {
|
|
122
130
|
apiServerOptions(yargs)
|
|
123
131
|
startOptions(yargs)
|
|
124
|
-
}, (argv) => {
|
|
125
|
-
|
|
132
|
+
}, async (argv) => {
|
|
133
|
+
await setupApp(argv)
|
|
134
|
+
await apiServer({
|
|
126
135
|
...argv,
|
|
127
136
|
withServices: true, updateServices: true
|
|
128
137
|
})
|
|
@@ -130,8 +139,9 @@ const argv = require('yargs') // eslint-disable-line
|
|
|
130
139
|
.command('memApiServer', 'shortcut for devApiServer --withDb --dbBackend mem --createDb', (yargs) => {
|
|
131
140
|
apiServerOptions(yargs)
|
|
132
141
|
startOptions(yargs)
|
|
133
|
-
}, (argv) => {
|
|
134
|
-
|
|
142
|
+
}, async (argv) => {
|
|
143
|
+
await setupApp(argv)
|
|
144
|
+
await apiServer({
|
|
135
145
|
...argv,
|
|
136
146
|
withServices: true, updateServices: true,
|
|
137
147
|
withDb: true, dbBackend: 'mem', createDb: true
|
|
@@ -141,36 +151,40 @@ const argv = require('yargs') // eslint-disable-line
|
|
|
141
151
|
ssrServerOptions(yargs)
|
|
142
152
|
apiServerOptions(yargs)
|
|
143
153
|
startOptions(yargs)
|
|
144
|
-
}, (argv) => {
|
|
145
|
-
|
|
154
|
+
}, async (argv) => {
|
|
155
|
+
await setupApp(argv)
|
|
156
|
+
await ssrServer(argv, false)
|
|
146
157
|
})
|
|
147
158
|
.command('ssrDev', 'start ssr server in development mode', (yargs) => {
|
|
148
159
|
ssrServerOptions(yargs)
|
|
149
160
|
apiServerOptions(yargs)
|
|
150
161
|
startOptions(yargs)
|
|
151
|
-
}, (argv) => {
|
|
152
|
-
|
|
162
|
+
}, async (argv) => {
|
|
163
|
+
await setupApp(argv)
|
|
164
|
+
await ssrServer(argv, true)
|
|
153
165
|
})
|
|
154
166
|
.command('dev', 'shortcut for ssrDev --withApi --withServices --updateServices', (yargs) => {
|
|
155
167
|
ssrServerOptions(yargs)
|
|
156
168
|
apiServerOptions(yargs)
|
|
157
169
|
startOptions(yargs)
|
|
158
|
-
}, (argv) => {
|
|
159
|
-
|
|
170
|
+
}, async (argv) => {
|
|
171
|
+
await setupApp(argv)
|
|
172
|
+
await ssrServer({
|
|
160
173
|
...argv,
|
|
161
174
|
withApi: true, withServices: true, updateServices: true
|
|
162
|
-
})
|
|
175
|
+
}, true)
|
|
163
176
|
})
|
|
164
177
|
.command('memDev', 'shortcut for dev --withDb --dbBackend mem --createDb', (yargs) => {
|
|
165
178
|
ssrServerOptions(yargs)
|
|
166
179
|
apiServerOptions(yargs)
|
|
167
180
|
startOptions(yargs)
|
|
168
|
-
}, (argv) => {
|
|
169
|
-
|
|
181
|
+
}, async (argv) => {
|
|
182
|
+
await setupApp(argv)
|
|
183
|
+
await ssrServer({
|
|
170
184
|
...argv,
|
|
171
185
|
withApi: true, withServices: true, updateServices: true,
|
|
172
186
|
withDb: true, dbBackend: 'mem', createDb: true
|
|
173
|
-
})
|
|
187
|
+
}, true)
|
|
174
188
|
})
|
|
175
189
|
.option('verbose', {
|
|
176
190
|
alias: 'v',
|
|
@@ -182,7 +196,7 @@ const argv = require('yargs') // eslint-disable-line
|
|
|
182
196
|
async function apiServer(argv) {
|
|
183
197
|
const { apiPort, apiHost } = argv
|
|
184
198
|
|
|
185
|
-
const apiServer = await setupApiServer(argv)
|
|
199
|
+
const apiServer = await setupApiServer(argv, dbServer)
|
|
186
200
|
|
|
187
201
|
const expressApp = express()
|
|
188
202
|
|
|
@@ -195,12 +209,13 @@ async function apiServer(argv) {
|
|
|
195
209
|
console.log('Listening on port ' + apiPort)
|
|
196
210
|
}
|
|
197
211
|
async function ssrServer(argv, dev) {
|
|
198
|
-
const { ssrRoot, ssrPort, ssrHost, apiHost, apiPort } = argv
|
|
212
|
+
const { ssrRoot, ssrPort, ssrHost, apiHost, apiPort, sessionExpires } = argv
|
|
199
213
|
|
|
200
214
|
const expressApp = express()
|
|
201
215
|
|
|
202
|
-
|
|
203
|
-
|
|
216
|
+
//expressApp.use('/static', express.static(path.resolve(ssrRoot, 'public')))
|
|
217
|
+
|
|
218
|
+
const manifest = dev ? null : require(path.resolve(ssrRoot, 'dist/client/ssr-manifest.json'))
|
|
204
219
|
|
|
205
220
|
if(!argv.withApi) {
|
|
206
221
|
const apiServerHost = (argv.apiHost == '0.0.0.0' ? 'localhost' : argv.apiHost) + ':' + argv.apiPort
|
|
@@ -214,13 +229,6 @@ async function ssrServer(argv, dev) {
|
|
|
214
229
|
console.log("PROXY /api to", target)
|
|
215
230
|
}
|
|
216
231
|
|
|
217
|
-
let dbServer
|
|
218
|
-
if(argv.withDb) {
|
|
219
|
-
dbServer = await setupDbServer(argv)
|
|
220
|
-
app.dao.dispose()
|
|
221
|
-
app.dao = await createLoopbackDao('local', () => dbServer.createDao('local') )
|
|
222
|
-
}
|
|
223
|
-
|
|
224
232
|
if(argv.createDb) {
|
|
225
233
|
const list = await app.dao.get(['database', 'databasesList'])
|
|
226
234
|
console.log("EXISTING DATABASES", list)
|
|
@@ -232,7 +240,7 @@ async function ssrServer(argv, dev) {
|
|
|
232
240
|
|
|
233
241
|
let apiServer
|
|
234
242
|
if(argv.withApi) {
|
|
235
|
-
apiServer = await setupApiServer(argv
|
|
243
|
+
apiServer = await setupApiServer(argv)
|
|
236
244
|
}
|
|
237
245
|
|
|
238
246
|
const ssrServer = new SsrServer(expressApp, manifest, {
|
|
@@ -247,7 +255,8 @@ async function ssrServer(argv, dev) {
|
|
|
247
255
|
: {
|
|
248
256
|
apiHost, apiPort
|
|
249
257
|
}
|
|
250
|
-
)
|
|
258
|
+
),
|
|
259
|
+
...(sessionExpires ? { sessionExpires: sessionExpires * 60 * 1000 } : {})
|
|
251
260
|
})
|
|
252
261
|
|
|
253
262
|
await ssrServer.start()
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@live-change/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"description": "Live Change Framework - command line interface",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"@live-change/dao-sockjs": "^0.2.0",
|
|
29
29
|
"@live-change/dao-websocket": "^0.3.1",
|
|
30
30
|
"@live-change/db-server": "^0.4.80",
|
|
31
|
-
"@live-change/framework": "^0.
|
|
32
|
-
"@live-change/server": "^0.1.
|
|
31
|
+
"@live-change/framework": "^0.5.0",
|
|
32
|
+
"@live-change/server": "^0.1.7",
|
|
33
33
|
"@live-change/vue3-ssr": "^0.1.1",
|
|
34
34
|
"dotenv": "^10.0.0",
|
|
35
35
|
"express": "^4.17.1",
|