@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.
Files changed (2) hide show
  1. package/bin/lcli.js +40 -31
  2. 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
- apiServer(argv)
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
- apiServer({
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
- apiServer({
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
- ssrServer(argv, false)
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
- ssrServer(argv, true)
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
- ssrServer({
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
- ssrServer({
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
- const manifest = dev ? null : require(path.resolve(ssrRoot,
203
- 'dist/client/ssr-manifest.json'))
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, dbServer)
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.5",
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.4.36",
32
- "@live-change/server": "^0.1.3",
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",