@silexlabs/silex 3.0.0-alpha.65 → 3.0.0-alpha.67

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.
@@ -97,7 +97,7 @@ var silex;(()=>{var t={357:function(t){var e;"undefined"!=typeof globalThis?glob
97
97
  ><span>${e.text}</span></div>
98
98
  `))}
99
99
  </header>
100
- `,r),document.body.appendChild(r),t.on("load",(()=>{n.view.el.appendChild(r)}))),t.Commands.add(e.command,{run(){e.link&&window.open(e.link),e.attributes.containerClassName&&(n.set("visible",!0),r.classList.remove("gjs-hidden"),t.Canvas.getFrameEl().classList.add("silex-squeeze-left"))},stop(){e.attributes.containerClassName&&(n.set("visible",!1),r.classList.add("gjs-hidden"),t.Canvas.getFrameEl().classList.remove("silex-squeeze-left"))}})})),t.on("load device:select page",(()=>{!function(){const e=n.view.el,r=t.Canvas.getFrameEl();r.classList.remove("enable-squeeze"),setTimeout((()=>{const t=r.getClientRects()[0]?.left,n=e.getClientRects()[0]?.right;t<n||!n?r.classList.add("enable-squeeze"):r.classList.remove("enable-squeeze")}),400),n.get("visible")?r.classList.add("silex-squeeze-left"):r.classList.remove("silex-squeeze-left")}()}))},Nn=document.createElement("div");let In;const Dn="open-settings";let $n="v3";const Rn=nt.plugins.add("settings-dialog",((t,e)=>{try{$n="3.0.0-alpha.65"}catch(t){}console.info("Silex version:",$n),t.Commands.add(Dn,{run:(e,n,{page:r})=>{In=t.Modal.open({title:r?"Page settings":"Site Settings",content:"",attributes:{class:"settings-dialog"}}).onceClose((()=>{n.set("active",0),t.stopCommand(Dn)})),function(t,e,n=t.getModel()){const r=n.get("settings")||{};n.set("settings",r),we(ne`
100
+ `,r),document.body.appendChild(r),t.on("load",(()=>{n.view.el.appendChild(r)}))),t.Commands.add(e.command,{run(){e.link&&window.open(e.link),e.attributes.containerClassName&&(n.set("visible",!0),r.classList.remove("gjs-hidden"),t.Canvas.getFrameEl().classList.add("silex-squeeze-left"))},stop(){e.attributes.containerClassName&&(n.set("visible",!1),r.classList.add("gjs-hidden"),t.Canvas.getFrameEl().classList.remove("silex-squeeze-left"))}})})),t.on("load device:select page",(()=>{!function(){const e=n.view.el,r=t.Canvas.getFrameEl();r.classList.remove("enable-squeeze"),setTimeout((()=>{const t=r.getClientRects()[0]?.left,n=e.getClientRects()[0]?.right;t<n||!n?r.classList.add("enable-squeeze"):r.classList.remove("enable-squeeze")}),400),n.get("visible")?r.classList.add("silex-squeeze-left"):r.classList.remove("silex-squeeze-left")}()}))},Nn=document.createElement("div");let In;const Dn="open-settings";let $n="v3";const Rn=nt.plugins.add("settings-dialog",((t,e)=>{try{$n="3.0.0-alpha.67"}catch(t){}console.info("Silex version:",$n),t.Commands.add(Dn,{run:(e,n,{page:r})=>{In=t.Modal.open({title:r?"Page settings":"Site Settings",content:"",attributes:{class:"settings-dialog"}}).onceClose((()=>{n.set("active",0),t.stopCommand(Dn)})),function(t,e,n=t.getModel()){const r=n.get("settings")||{};n.set("settings",r),we(ne`
101
101
  <p>The page settings will override site settings, <a href="https://github.com/silexlabs/Silex/wiki/Settings" target="_blank">more info about settings here</a>.</p>
102
102
  <form class="silex-form">
103
103
  <h2>General settings</h2>
@@ -15,6 +15,13 @@ function default_1(config) {
15
15
  return router;
16
16
  }
17
17
  exports.default = default_1;
18
+ function validateStatus(status, _defautl = 500) {
19
+ status = parseInt(status.toString());
20
+ if (status >= 100 && status < 600)
21
+ return status;
22
+ console.warn(`Invalid status code ${status}, returning default ${_defautl}}`);
23
+ return _defautl;
24
+ }
18
25
  async function routeUser(req, res) {
19
26
  try {
20
27
  const config = (0, validation_1.requiredParam)(req.app.get('config'), 'Config object on express js APP');
@@ -45,7 +52,7 @@ async function routeUser(req, res) {
45
52
  }
46
53
  catch (error) {
47
54
  console.error('Error in the login status request', error);
48
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
55
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
49
56
  error: true,
50
57
  message: error.message,
51
58
  });
@@ -64,7 +71,7 @@ async function routeListConnectors(req, res) {
64
71
  }
65
72
  catch (error) {
66
73
  console.error('Error while listing connectors', error);
67
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
74
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
68
75
  error: true,
69
76
  message: 'Error while listing connectors: ' + error.message,
70
77
  });
@@ -72,7 +79,7 @@ async function routeListConnectors(req, res) {
72
79
  }
73
80
  catch (error) {
74
81
  console.error('Error in the list connectors request', error);
75
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
82
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
76
83
  error: true,
77
84
  message: 'Error in the list connectors request: ' + error.message,
78
85
  });
@@ -105,7 +112,7 @@ async function routeLogin(req, res) {
105
112
  }
106
113
  catch (error) {
107
114
  console.error('Error in the login request', error);
108
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
115
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
109
116
  error: true,
110
117
  message: 'Error in the login request: ' + error.message,
111
118
  });
@@ -137,7 +144,7 @@ async function routeLoginSuccess(req, res) {
137
144
  }
138
145
  catch (error) {
139
146
  res
140
- .status(error?.code ?? error?.httpStatusCode ?? 500)
147
+ .status(validateStatus(error?.code ?? error?.httpStatusCode, 500))
141
148
  .send(getEndAuthHtml(error.message, true));
142
149
  }
143
150
  }
@@ -160,7 +167,7 @@ async function routeLogout(req, res) {
160
167
  }
161
168
  catch (error) {
162
169
  console.error('Error while logging out', error);
163
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
170
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
164
171
  error: true,
165
172
  message: 'Error while logging out: ' + error.message,
166
173
  });
@@ -169,7 +176,7 @@ async function routeLogout(req, res) {
169
176
  }
170
177
  catch (error) {
171
178
  console.error('Error in the logout request', error);
172
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
179
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
173
180
  error: true,
174
181
  message: 'Error in the logout request: ' + error.message,
175
182
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@silexlabs/silex",
3
3
  "description": "Free and easy website builder for everyone.",
4
- "version": "3.0.0-alpha.65",
4
+ "version": "3.0.0-alpha.67",
5
5
  "version:backwardcompat": "3.0.0",
6
6
  "author": {
7
7
  "name": "Alex Hoyau",
@@ -45,6 +45,20 @@ export default function(config: ServerConfig) {
45
45
  return router
46
46
  }
47
47
 
48
+ /**
49
+ * Method to validate HTTP status codes
50
+ * Returns a suitable error code if it is not valid
51
+ */
52
+ function validateStatus(status: number, _defautl = 500): number {
53
+ // Make sure it is a string
54
+ status = parseInt(status.toString())
55
+ // Check the status code
56
+ if (status >= 100 && status < 600) return status
57
+ // Invalid status code
58
+ console.warn(`Invalid status code ${status}, returning default ${_defautl}}`)
59
+ return _defautl
60
+ }
61
+
48
62
  /**
49
63
  * Express route to check if the user is logged in
50
64
  * Returns user data and connector data
@@ -79,7 +93,7 @@ async function routeUser(req: Request, res: Response) {
79
93
  res.json(user as ApiConnectorUserResponse)
80
94
  } catch (error) {
81
95
  console.error('Error in the login status request', error)
82
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
96
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
83
97
  error: true,
84
98
  message: error.message,
85
99
  } as ApiResponseError)
@@ -101,14 +115,14 @@ async function routeListConnectors(req: Request, res: Response) {
101
115
  res.json(list as ApiConnectorListResponse)
102
116
  } catch (error) {
103
117
  console.error('Error while listing connectors', error)
104
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
118
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
105
119
  error: true,
106
120
  message: 'Error while listing connectors: ' + error.message,
107
121
  } as ApiResponseError)
108
122
  }
109
123
  } catch (error) {
110
124
  console.error('Error in the list connectors request', error)
111
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
125
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
112
126
  error: true,
113
127
  message: 'Error in the list connectors request: ' + error.message,
114
128
  } as ApiResponseError)
@@ -148,7 +162,7 @@ async function routeLogin(req: Request, res: Response) {
148
162
  }
149
163
  } catch (error) {
150
164
  console.error('Error in the login request', error)
151
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
165
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
152
166
  error: true,
153
167
  message: 'Error in the login request: ' + error.message,
154
168
  } as ApiResponseError)
@@ -248,7 +262,7 @@ async function routeLoginSuccess(req: Request, res: Response) {
248
262
  res.send(getEndAuthHtml('Logged in', false, connectorId, connector.getOptions(body)))
249
263
  } catch (error) {
250
264
  res
251
- .status(error?.code ?? error?.httpStatusCode ?? 500)
265
+ .status(validateStatus(error?.code ?? error?.httpStatusCode, 500))
252
266
  .send(getEndAuthHtml(error.message, true))
253
267
  }
254
268
  }
@@ -276,7 +290,7 @@ async function routeLogout(req: Request, res: Response) {
276
290
  } as ApiResponseError)
277
291
  } catch (error) {
278
292
  console.error('Error while logging out', error)
279
- res.status(error?.code ?? error?.httpStatusCode ?? 500).json({
293
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 500)).json({
280
294
  error: true,
281
295
  message: 'Error while logging out: ' + error.message,
282
296
  } as ApiResponseError)
@@ -284,7 +298,7 @@ async function routeLogout(req: Request, res: Response) {
284
298
  }
285
299
  } catch (error) {
286
300
  console.error('Error in the logout request', error)
287
- res.status(error?.code ?? error?.httpStatusCode ?? 400).json({
301
+ res.status(validateStatus(error?.code ?? error?.httpStatusCode, 400)).json({
288
302
  error: true,
289
303
  message: 'Error in the logout request: ' + error.message,
290
304
  } as ApiResponseError)