@sassoftware/viya-serverjs 0.6.1-5 → 0.6.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/.env CHANGED
@@ -3,15 +3,16 @@ APPENTRY=index.html
3
3
  APPLOC=./public
4
4
 
5
5
  APPENV_USEPROXY=YES
6
- APPPORT=8080
6
+ PORT=8080
7
7
  APPNAME=viyaapp
8
8
  AUTHFLOW=server
9
9
  CLIENTID=viyaapp
10
10
  CLIENTSECRET=jellico
11
11
  REDIRECT=
12
- USELOGON=FALSE
13
- USETOKEN=FALSE
12
+ # USELOGON=FALSE
13
+ # USETOKEN=FALSE
14
+ HTTPS=true
14
15
 
15
- VIYACERT=c:\Users\kumar\viyaCert
16
+ VIYACERT=c:\Users\kumar\viyaCert\xf1
16
17
  NODE_TLS_REJECT_UNAUTHORIZED=0
17
18
 
package/lib/iService.js CHANGED
@@ -51,7 +51,7 @@ function iService(userRouteTable, useDefault, asset, allAppEnv, serverMode, user
51
51
  // process.env.APPHOST_ADDR = process.env.APPHOST;
52
52
  var init = /*#__PURE__*/function () {
53
53
  var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
54
- var defaultMaxBytes, maxBytes, isSameSite, isSecure, _process$env$SAMESITE, _process$env$SAMESITE2, s1, s2, sConfig, hapiServer, nodeCacheOptions, storeCache, visionOptions, options, allRoutes, hh, msg;
54
+ var defaultMaxBytes, maxBytes, isSameSite, isSecure, https, _process$env$SAMESITE, _process$env$SAMESITE2, s1, s2, sConfig, hapiServer, nodeCacheOptions, storeCache, visionOptions, options, allRoutes, hh, msg;
55
55
  return _regenerator().w(function (_context) {
56
56
  while (1) switch (_context.n) {
57
57
  case 0:
@@ -64,13 +64,15 @@ function iService(userRouteTable, useDefault, asset, allAppEnv, serverMode, user
64
64
  } else {
65
65
  maxBytes = Number(process.env.PAYLOADMAXBYTES);
66
66
  }
67
- isSameSite = 'None';
67
+ isSameSite = 'Lax';
68
68
  isSecure = false;
69
+ https = process.env.HTTPS || 'TRUE';
70
+ https = https.toUpperCase();
69
71
  if (process.env.SAMESITE != null) {
70
72
  _process$env$SAMESITE = process.env.SAMESITE.split(','), _process$env$SAMESITE2 = _slicedToArray(_process$env$SAMESITE, 2), s1 = _process$env$SAMESITE2[0], s2 = _process$env$SAMESITE2[1];
71
73
  isSameSite = s1;
72
74
  isSecure = s2 === 'secure' ? true : false;
73
- if (process.env.HTTPS !== 'true') {
75
+ if (https !== 'TRUE') {
74
76
  isSecure = false;
75
77
  }
76
78
  }
@@ -103,7 +105,7 @@ function iService(userRouteTable, useDefault, asset, allAppEnv, serverMode, user
103
105
  };
104
106
  }
105
107
  debug(JSON.stringify(sConfig, null, 4));
106
- if (process.env.HTTPS === 'true') {
108
+ if (https === 'TRUE') {
107
109
  sConfig.tls = getCertificates();
108
110
  debug('Setup of SSL certificates completed');
109
111
  } else {
@@ -145,7 +147,7 @@ function iService(userRouteTable, useDefault, asset, allAppEnv, serverMode, user
145
147
  _context.n = 2;
146
148
  return hapiServer.register(inert);
147
149
  case 2:
148
- if (!(process.env.HTTPS === 'true')) {
150
+ if (!(https === 'TRUE')) {
149
151
  _context.n = 3;
150
152
  break;
151
153
  }
@@ -180,7 +182,7 @@ function iService(userRouteTable, useDefault, asset, allAppEnv, serverMode, user
180
182
  useDefault: useDefault,
181
183
  /* not used - left here for potential reuse */
182
184
  userCache: userCache || {},
183
- https: process.env.HTTPS,
185
+ https: https,
184
186
  authDefault: false,
185
187
  /* set later in setDefaultRoutes */
186
188
  authLogon: false /* set later in setDefaultRoutes */
package/lib/index.js CHANGED
@@ -149,7 +149,7 @@ function getAllEnv(userInfo) {
149
149
  l.redirect = redirect;
150
150
  }
151
151
  if (authflow === "server" && keepAlive === "YES") {
152
- var protocol = process.env.HTTPS === "true" ? "https://" : "http://";
152
+ var protocol = process.env.HTTPS.toUpperCase() === "TRUE" ? "https://" : "http://";
153
153
  l.keepAlive = "".concat(protocol).concat(process.env.APPHOST, ":").concat(process.env.APPPORT, "/").concat(appName, "/keepAlive");
154
154
  l.keepAlive = l.keepAlive.replace(/0.0.0.0/, "localhost");
155
155
  }
@@ -65,9 +65,9 @@ function _setContext() {
65
65
  query: req.query,
66
66
  payload: req.payload,
67
67
  queryOrig: fcredentials != null ? fcredentials.query : {},
68
- credentials: _objectSpread(_objectSpread({}, fcredentials), {}, {
68
+ credentials: fcredentials != null ? _objectSpread(_objectSpread({}, fcredentials), {}, {
69
69
  host: process.env.VIYA_SERVER
70
- }),
70
+ }) : null,
71
71
  credType: credentials != null ? 'auth' : 'cached',
72
72
  host: process.env.VIYA_SERVER
73
73
  };
@@ -189,7 +189,7 @@ module.exports = function setDefaultRoutes(server, options) {
189
189
  }
190
190
  }
191
191
  }];
192
- var uTable = options.userRouteTable();
192
+ var uTable = options.userRouteTable == null ? [] : options.userRouteTable();
193
193
  var routeTables0 = options.userRouteTable !== null ? defaultTable.concat(uTable) : defaultTable;
194
194
  var routeTables = (0, _handlers.setupUserRoutes)(routeTables0, options);
195
195
  server.route(routeTables);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sassoftware/viya-serverjs",
3
- "version": "0.6.1-5",
3
+ "version": "0.6.2",
4
4
  "description": "Easy to use app server for SAS Viya applications",
5
5
  "author": "Deva Kumaraswamy <deva.kumar@sas.com>",
6
6
  "license": "Apache-2.0",
@@ -29,7 +29,7 @@
29
29
  "unpkg": "./lib/index.js",
30
30
  "scripts": {
31
31
  "build": "rimraf lib && babel src --out-dir lib",
32
- "test": "cross-env node cli --env=./.env --docker=./Dockerfile",
32
+ "test": "node cli --env=./.env --docker=./Dockerfile",
33
33
  "server": "cross-env NODE_TLS_REJECT_UNAUTHORIZED=0 node server.js --env=./.env --docker=./Dockerfile",
34
34
  "proxy": "cross-env NODE_TLS_REJECT_UNAUTHORIZED=0 node cli --env=./.env.proxy --docker=./Dockerfile",
35
35
  "pub": "npm publish --tag dev --access public",
@@ -56,6 +56,7 @@
56
56
  "jwt-decode": "^4.0.0",
57
57
  "node-cache-promise": "^1.0.2",
58
58
  "only": "0.0.2",
59
+ "open": "^11.0.0",
59
60
  "qs": "^6.14.1",
60
61
  "regenerator-runtime": "^0.14.1",
61
62
  "request-debug": "^0.2.0",
package/src/iService.js CHANGED
@@ -46,14 +46,16 @@ function iService (userRouteTable, useDefault, asset, allAppEnv, serverMode, use
46
46
  } else {
47
47
  maxBytes = Number(process.env.PAYLOADMAXBYTES);
48
48
  }
49
- let isSameSite = 'None';
49
+ let isSameSite = 'Lax';
50
50
  let isSecure = false;
51
+ let https = process.env.HTTPS || 'TRUE';
52
+ https = https.toUpperCase();
51
53
 
52
54
  if (process.env.SAMESITE != null) {
53
55
  let [s1, s2] = process.env.SAMESITE.split(',');
54
56
  isSameSite = s1;
55
57
  isSecure = s2 === 'secure' ? true : false;
56
- if (process.env.HTTPS !== 'true') {
58
+ if (https !== 'TRUE') {
57
59
  isSecure = false;
58
60
  }
59
61
  }
@@ -92,7 +94,7 @@ function iService (userRouteTable, useDefault, asset, allAppEnv, serverMode, use
92
94
  sConfig.debug = { request: '*' };
93
95
  }
94
96
  debug(JSON.stringify(sConfig, null,4));
95
- if (process.env.HTTPS === 'true') {
97
+ if (https === 'TRUE') {
96
98
  sConfig.tls = getCertificates();
97
99
  debug('Setup of SSL certificates completed');
98
100
  } else {
@@ -136,7 +138,7 @@ function iService (userRouteTable, useDefault, asset, allAppEnv, serverMode, use
136
138
  await hapiServer.register(Vision);
137
139
  hapiServer.views(visionOptions);
138
140
  await hapiServer.register(inert);
139
- if (process.env.HTTPS === 'true') {
141
+ if (https === 'TRUE') {
140
142
  await hapiServer.register({ plugin: require('hapi-require-https'), options: {} });
141
143
  }
142
144
  // register H202 for proxy handling
@@ -165,7 +167,7 @@ function iService (userRouteTable, useDefault, asset, allAppEnv, serverMode, use
165
167
  userRouteTable: userRouteTable,
166
168
  useDefault : useDefault, /* not used - left here for potential reuse */
167
169
  userCache : userCache ||{},
168
- https : process.env.HTTPS,
170
+ https : https,
169
171
  authDefault : false, /* set later in setDefaultRoutes */
170
172
  authLogon : false /* set later in setDefaultRoutes */
171
173
 
@@ -209,6 +211,7 @@ function iService (userRouteTable, useDefault, asset, allAppEnv, serverMode, use
209
211
  process.env.APPSERVER = `${hh}/${process.env.APPNAME}`;
210
212
  process.env.HEALTH = 'true';
211
213
  console.log('====================================================================================');
214
+
212
215
  };
213
216
 
214
217
  process.on('unhandledRejection', (err) => {
package/src/index.js CHANGED
@@ -190,7 +190,7 @@ function getAllEnv(userInfo) {
190
190
  }
191
191
 
192
192
  if (authflow === "server" && keepAlive === "YES") {
193
- let protocol = process.env.HTTPS === "true" ? "https://" : "http://";
193
+ let protocol = process.env.HTTPS.toUpperCase() === "TRUE" ? "https://" : "http://";
194
194
  l.keepAlive = `${protocol}${process.env.APPHOST}:${process.env.APPPORT}/${appName}/keepAlive`;
195
195
  l.keepAlive = l.keepAlive.replace(/0.0.0.0/, "localhost");
196
196
  }
@@ -37,7 +37,7 @@ async function setContext(req, h) {
37
37
  query: req.query,
38
38
  payload: req.payload,
39
39
  queryOrig: (fcredentials != null) ? fcredentials.query : {},
40
- credentials: {...fcredentials, host: process.env.VIYA_SERVER},
40
+ credentials: (fcredentials != null) ? {...fcredentials, host: process.env.VIYA_SERVER} : null,
41
41
  credType: (credentials != null) ? 'auth' : 'cached',
42
42
  host: process.env.VIYA_SERVER
43
43
  };
@@ -185,7 +185,7 @@ module.exports = function setDefaultRoutes(server, options) {
185
185
  }
186
186
  ];
187
187
 
188
- let uTable = options.userRouteTable();
188
+ let uTable = (options.userRouteTable == null) ? [] : options.userRouteTable();
189
189
  let routeTables0 = options.userRouteTable !== null ? defaultTable.concat(uTable) : defaultTable;
190
190
  let routeTables = setupUserRoutes(routeTables0, options);
191
191