@silexlabs/silex-dashboard 1.0.72 → 1.0.74

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 (32) hide show
  1. package/_site/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css +1 -0
  2. package/_site/css/connectors-febcafaf261c0f23ca11fc13809f259c74dbdd50b6a47506ba295fdb99d1b4a4.css +1 -0
  3. package/_site/en/connectors/index.html +54 -3
  4. package/_site/fr/connectors/index.html +54 -3
  5. package/_site/js/main.js +60 -58
  6. package/_site/js/vue.cjs.js +1 -1
  7. package/_site/js/vue.cjs.prod.js +1 -1
  8. package/_site/js/vue.esm-browser.js +312 -286
  9. package/_site/js/vue.esm-browser.prod.js +6 -6
  10. package/_site/js/vue.esm-bundler.js +1 -1
  11. package/_site/js/vue.global.js +303 -282
  12. package/_site/js/vue.global.prod.js +6 -6
  13. package/_site/js/vue.runtime.esm-browser.js +293 -277
  14. package/_site/js/vue.runtime.esm-browser.prod.js +2 -2
  15. package/_site/js/vue.runtime.esm-bundler.js +1 -1
  16. package/_site/js/vue.runtime.global.js +284 -273
  17. package/_site/js/vue.runtime.global.prod.js +2 -2
  18. package/collections/connectors/en.md +3 -0
  19. package/collections/connectors/fr.md +3 -0
  20. package/package.json +5 -5
  21. package/templates/connectors-en.11tydata.mjs +18 -0
  22. package/templates/connectors-en.html +85 -28
  23. package/templates/connectors-fr.11tydata.mjs +18 -0
  24. package/templates/connectors-fr.html +85 -28
  25. package/templates/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css +1 -0
  26. package/templates/css/connectors-febcafaf261c0f23ca11fc13809f259c74dbdd50b6a47506ba295fdb99d1b4a4.css +1 -0
  27. package/templates/websites-en.11tydata.mjs +12 -0
  28. package/templates/websites-en.html +79 -79
  29. package/templates/websites-fr.11tydata.mjs +12 -0
  30. package/templates/websites-fr.html +79 -79
  31. package/tina/config.ts +10 -0
  32. package/tina/tina-lock.json +1 -1
@@ -0,0 +1 @@
1
+ * { box-sizing: border-box; } body {margin: 0;}.body{font-family:"Ubuntu", sans-serif;background-color:#f0f0f0;color:#2b1b63;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.button{font-size:0.8rem;padding:10px 20px 10px 20px;display:inline-block;border:2px solid #8873fe;transition:all 0.18s ease-out;font-weight:700;line-height:1.2rem;}.button.button--primary{background-color:#8873fe;color:white;}.button-bar{margin:20px 0px 20px 0px;display:flex;padding:30px 30px 30px 30px;align-items:center;justify-content:space-between;border-radius:4px 4px 4px 4px;background-color:#ffffff;}.button-bar.button-bar--full-width{justify-content:space-between;align-items:center;}.button-bar_item.button-bar__item--secondary{font-size:0.8rem;}.button.button--secondary{font-weight:400;color:#8873fe;border:2px solid #8873fe;}.footer{display:flex;margin:50px 0px 0px 0px;background-color:#ffffff;justify-content:space-evenly;padding:30px 30px 60px 30px;}.full-width{width:100%;}.box{border-radius:4px 4px 4px 4px;background-color:#ffffff;}.box.flex-between{align-items:center;}.button--tertiary{background-color:transparent;font-weight:400;}.button:hover{color:#8873fe;border:2px solid #8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}#imgx81{min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;}#in62y2{justify-content:center;}.big-button{border-radius:5px 5px 5px 5px;font-size:15px;margin:10px 10px 10px 10px;padding:15px 30px 15px 30px;font-weight:700;background-color:#ffffff;}#i9msnk{padding:10px;display:inline;}#i6akll{padding:10px;display:inline;}#ixzhcr{padding:10px;position:absolute;display:none;}.bg-silex-purpel{background-repeat:repeat-y;background-position:center top;background-attachment:scroll;background-size:contain;background-image:url(/assets/../assets/bg-purpel-silex.webp);}.text-centered{text-align:center;}.text-white{color:#ffffff;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.top-space-20{margin:20px 0 0 0;}.button.button--tertiary{border:2px solid transparent;background-color:rgba(221,221,221,0.5);}.box_login{max-width:450px;width:100%;padding:60px 40px 60px 40px;}.button-bar__item--link.text-white{color:#ffffff;}.button.big-button{border:2px solid transparent;}.button.button--tertiary:hover{border:2px solid #8873fe;color:#8873fe;background-color:white;}.button-bar__item__icon{float:left;height:30px;margin:5px 5px 5px 5px;width:30px;background-repeat:no-repeat;background-position:center center;background-attachment:scroll;background-size:contain;background-image:none;}.button-bar__item--secondary{font-size:0.8rem;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}.connector__card{align-items:center;margin:10px auto 10px auto;border:1px solid;border-radius:5px 5px 5px 5px;max-width:100%;display:flex;color:black;justify-content:center;padding:4px 0px 4px 0px;transition:all 0.25s ease;}#i3cney{width:100%;display:none;justify-content:center;}.connector__description{padding:5px 15px 5px 15px;}#ior0hl{color:black;}#igp4xl{justify-content:center;display:inline-block;width:100%;}#isqe61{display:inline-block;}.margin-top{margin:80px 0px 30px 0px;}.margin-30{margin:30px 0px 30px 0px;}.connector__card:link{text-decoration:none;color:black;border:1px solid;}.connector__card:hover{background-color:#8873fe;color:white;}#iqc1xf{display:none;}#it2175{margin:15px 0px 0px 0px;font-size:1rem;}#i8w75b{margin:10px 0px 10px 0px;font-size:0.95rem;font-weight:600;cursor:pointer;}#ijflxq{font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;}#iprzeh{min-height:100px;}#ibi9qh{display:inline-block;}.rgpd-checks{padding:10px 0px 10px 0px;display:flex;align-items:center;}.rgpd-checks__check{width:20px;height:20px;margin:0px 10px 0px 0px;}#ihn6fj{margin:20px 0px 0px 0px;}#errorDiv{color:#ff557a;font-weight:800;}
@@ -0,0 +1 @@
1
+ * { box-sizing: border-box; } body {margin: 0;}.body{font-family:"Ubuntu", sans-serif;background-color:#f0f0f0;color:#2b1b63;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.button{font-size:0.8rem;padding:10px 20px 10px 20px;display:inline-block;border:2px solid #8873fe;transition:all 0.18s ease-out;font-weight:700;line-height:1.2rem;}.button.button--primary{background-color:#8873fe;color:white;}.button-bar{margin:20px 0px 20px 0px;display:flex;padding:30px 30px 30px 30px;align-items:center;justify-content:space-between;border-radius:4px 4px 4px 4px;background-color:#ffffff;}.button-bar.button-bar--full-width{justify-content:space-between;align-items:center;}.button-bar_item.button-bar__item--secondary{font-size:0.8rem;}.button.button--secondary{font-weight:400;color:#8873fe;border:2px solid #8873fe;}.footer{display:flex;margin:50px 0px 0px 0px;background-color:#ffffff;justify-content:space-evenly;padding:30px 30px 60px 30px;}.full-width{width:100%;}.box{border-radius:4px 4px 4px 4px;background-color:#ffffff;}.box.flex-between{align-items:center;}.button--tertiary{background-color:transparent;font-weight:400;}.button:hover{color:#8873fe;border:2px solid #8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}#imgx81{min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;}#in62y2{justify-content:center;}.big-button{border-radius:5px 5px 5px 5px;font-size:15px;margin:10px 10px 10px 10px;padding:15px 30px 15px 30px;font-weight:700;background-color:#ffffff;}#i9msnk{padding:10px;display:inline;}#i6akll{padding:10px;display:inline;}#ixzhcr{padding:10px;position:absolute;display:none;}.bg-silex-purpel{background-repeat:repeat-y;background-position:center top;background-attachment:scroll;background-size:contain;background-image:url(/assets/../assets/bg-purpel-silex.webp);}.text-centered{text-align:center;}.text-white{color:#ffffff;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.top-space-20{margin:20px 0 0 0;}.button.button--tertiary{border:2px solid transparent;background-color:rgba(221,221,221,0.5);}.box_login{max-width:450px;width:100%;padding:60px 40px 60px 40px;}.button-bar__item--link.text-white{color:#ffffff;}.button.big-button{border:2px solid transparent;}.button.button--tertiary:hover{border:2px solid #8873fe;color:#8873fe;background-color:white;}.button-bar__item__icon{float:left;height:30px;margin:5px 5px 5px 5px;width:30px;background-repeat:no-repeat;background-position:center center;background-attachment:scroll;background-size:contain;background-image:none;}.button-bar__item--secondary{font-size:0.8rem;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}.connector__card{align-items:center;margin:10px auto 10px auto;border:1px solid;border-radius:5px 5px 5px 5px;max-width:100%;display:flex;color:black;justify-content:center;padding:4px 0px 4px 0px;transition:all 0.25s ease;}#i3cney{width:100%;display:none;justify-content:center;}.connector__description{padding:5px 15px 5px 15px;}#ior0hl{color:black;}#igp4xl{justify-content:center;display:inline-block;width:100%;}#isqe61{display:inline-block;}.margin-top{margin:80px 0px 30px 0px;}.margin-30{margin:30px 0px 30px 0px;}.connector__card:link{text-decoration:none;color:black;border:1px solid;}.connector__card:hover{background-color:#8873fe;color:white;}#iqc1xf{display:none;}#it2175{margin:15px 0px 0px 0px;font-size:1rem;}#i8w75b{margin:10px 0px 10px 0px;font-size:0.95rem;font-weight:600;cursor:pointer;}#ijflxq{font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;}#iprzeh{min-height:100px;}#ibi9qh{display:inline-block;}.rgpd-checks{padding:10px 0px 10px 0px;display:flex;align-items:center;}.rgpd-checks__check{width:20px;height:20px;margin:0px 10px 0px 0px;}#ihn6fj{margin:20px 0px 0px 0px;}
@@ -2,7 +2,7 @@
2
2
  <html lang="">
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
- <link rel="stylesheet" href="/css/connectors-66fe82f10a7a257f59212e18bb384b019ffb12192fa3f748951da7d4428733b4.css" />
5
+ <link rel="stylesheet" href="/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css" />
6
6
  <!-- font google -->
7
7
  <link rel="preconnect" href="https://fonts.gstatic.com" />
8
8
  <link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;700&display=swap" rel="stylesheet">
@@ -204,6 +204,9 @@ const App = {
204
204
  // Go up one level because of the language prefix
205
205
  setServerUrl(window.location.origin)
206
206
  await this.getConnectors()
207
+ console.log('=====================')
208
+ this.setRgpd('nl', this.getRgpd('nl') ?? true)
209
+ this.setRgpd('feedback', this.getRgpd('feedback') ?? true)
207
210
  } catch (error) {
208
211
  console.error(error)
209
212
  this.loading = false
@@ -244,7 +247,55 @@ const App = {
244
247
  this.message = ''
245
248
  }
246
249
  },
247
- openLogin() {}
250
+ openLogin() {},
251
+ // name: "nl" | "feedback", value: Boolean
252
+ setRgpd(name, value) {
253
+ const errorDiv = document.getElementById('errorDiv');
254
+ console.log('set RGPD', {name, value, errorDiv})
255
+ if (errorDiv) errorDiv.textContent = ''; // Clear previous errors
256
+
257
+ if (typeof Storage !== 'undefined') {
258
+ try {
259
+ localStorage.setItem(name, JSON.stringify(value));
260
+ console.log(`RGPD setting saved: ${name} = ${value}`);
261
+ } catch (e) {
262
+ if (errorDiv) {
263
+ errorDiv.textContent = 'Error saving to localStorage: ' + e.message;
264
+ }
265
+ console.error('Error saving to localStorage', e);
266
+ }
267
+ } else {
268
+ const warning = 'Local storage is not supported in this browser.';
269
+ if (errorDiv) {
270
+ errorDiv.textContent = warning;
271
+ }
272
+ console.warn(warning);
273
+ }
274
+ },
275
+ getRgpd(name) {
276
+ const errorDiv = document.getElementById('errorDiv');
277
+ if (errorDiv) errorDiv.textContent = ''; // Clear previous errors
278
+
279
+ if (typeof Storage !== 'undefined') {
280
+ try {
281
+ const value = localStorage.getItem(name);
282
+ return value !== null ? JSON.parse(value) : null; // Return parsed value or null if not found
283
+ } catch (e) {
284
+ if (errorDiv) {
285
+ errorDiv.textContent = 'Error retrieving from localStorage: ' + e.message;
286
+ }
287
+ console.error('Error retrieving from localStorage', e);
288
+ return null;
289
+ }
290
+ } else {
291
+ const warning = 'Local storage is not supported in this browser.';
292
+ if (errorDiv) {
293
+ errorDiv.textContent = warning;
294
+ }
295
+ console.warn(warning);
296
+ return null;
297
+ }
298
+ },
248
299
  },
249
300
  };
250
301
  // Prepare elements for vue
@@ -276,7 +327,7 @@ setTimeout(() => {
276
327
  <link rel="icon" href="/assets/favicon-32x32.png" />
277
328
  <meta name="og:title" property="og:title" content="Silex Dashboard"/>
278
329
  <link href="https://fonts.googleapis.com" rel="preconnect" ><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin ><link href="https://fonts.googleapis.com/css?family=Ubuntu&display=swap" rel="stylesheet" ></head>
279
- <body id="i2hcfw" class="body app before-js"><A id="ixzhcr" href="/" class="button button-bar__item--secondary">< Back</A><div id="imawg3" class="bg-silex-purpel"><div id="imgx81" style="min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;" class=""><div id="iikf0s" class="box box_login"><div id="ie0dxn" class="text-centered"><img id="ior0hl" src="/assets/logo-silex.svg"/><p id="it2175" style="margin:15px 0px 0px 0px;font-size:1rem;" class="subtitle-16">Please login to continue</p></div><h3 id="iqc1xf" style="display:none;" class="margin-top">Recommended and free</h3><div id="in62y2"><div id="isqe61" class="full-width margin-30" v-for="(connector, index) in connectors.slice(0, 1)"><a id="i44y9w" href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div id="io3lid" class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div id="i87asw" class="connector__description" v-text="connector.displayName">Login with <span href="" id="i0tt68">Name</span><br/></div></a></div></div><DETAILS id="ihn6fj"><summary id="i8w75b" class="margin-30">Advanced users</summary><div id="ibi9qh" class="full-width" v-for="(connector, index) in connectors.slice(1)"><a href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div class="connector__description" v-text="connector.displayName">Login with <span href="">Name</span><br/></div></a></div></DETAILS><div id="i3cney" class="button-bar"><a id="iacshy" class="button big-button connector__card" v-if="!loading" :key="index" :style="{ backgroundColor: connector.background, color: connector.color }" v-for="(connector, index) in connectors" v-on-click="openLogin(connector)"><div id="iiwn36"><div class="button-bar__item__icon" :style="`background: url('${connector.icon}'); background-repeat: no-repeat; background-size: contain;`"></div><div id="if4gvb" class="" v-text="connector.displayName">Name<br/></div></div><div id="isndui">This connector is about blablabla<br/></div></a></div><div id="ijflxq" style="font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;" class="text-centered">Do you need help? Check <a href="https://docs.silex.me/en/user/login" target="_blank">the documentation</a>. <br><br> By logging in, you agree to the <a href="https://docs.silex.me/en/terms" target="_blank">terms of use</a> and the <a href="https://docs.silex.me/en/security" target="_blank">privacy policy</a>.</div></div><div id="i9msnk" style="padding:10px;display:inline;" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" style="padding:10px;display:inline;" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Logout</div></div></div><FOOTER class="footer">
330
+ <body id="i2hcfw" class="body app before-js"><A id="ixzhcr" href="/" class="button button-bar__item--secondary">< Back</A><div id="imawg3" class="bg-silex-purpel"><div id="imgx81" style="min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;" class=""><div id="iikf0s" class="box box_login"><div id="ie0dxn" class="text-centered"><img id="ior0hl" src="/assets/logo-silex.svg"/><p id="it2175" style="margin:15px 0px 0px 0px;font-size:1rem;" class="subtitle-16">Please login to continue</p></div><h3 id="iqc1xf" style="display:none;" class="margin-top">Recommended and free</h3><div id="in62y2"><div id="isqe61" class="full-width margin-30" v-for="(connector, index) in connectors.slice(0, 1)"><a id="i44y9w" href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div id="io3lid" class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div id="i87asw" class="connector__description" v-text="connector.displayName">Login with <span href="" id="i0tt68">Name</span><br/></div></a></div><div id="i9fpn7" class="rgpd-checks"><input type="checkbox" id="feedback-check" name="feedback-check" checked class="rgpd-checks__check" v-on:change="(event) => setRgpd('feedback', event.target.checked)"></input><label id="iv7hwn" for="feedback-check" class="">Allow contact for debugging and feedback</label></div><div id="iahvhn" class="rgpd-checks"><input type="checkbox" name="nl-check" id="nl-check" checked __p="undefined" class="rgpd-checks__check" v-on:change="(event) => setRgpd('nl', event.target.checked)"></input><label for="nl-check" id="isjk6j" class="">Subscribe to our newsletter</label></div><div id="errorDiv"></div></div><DETAILS id="ihn6fj"><summary id="i8w75b" class="margin-30">Advanced users</summary><div id="ibi9qh" class="full-width" v-for="(connector, index) in connectors.slice(1)"><a href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div class="connector__description" v-text="connector.displayName">Login with <span href="">Name</span><br/></div></a></div></DETAILS><div id="i3cney" class="button-bar"><a id="iacshy" class="button big-button connector__card" v-if="!loading" :key="index" :style="{ backgroundColor: connector.background, color: connector.color }" v-for="(connector, index) in connectors" v-on-click="openLogin(connector)"><div id="iiwn36"><div class="button-bar__item__icon" :style="`background: url('${connector.icon}'); background-repeat: no-repeat; background-size: contain;`"></div><div id="if4gvb" class="" v-text="connector.displayName">Name<br/></div></div><div id="isndui">This connector is about blablabla<br/></div></a></div><div id="ijflxq" style="font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;" class="text-centered">Do you need help? Check <a href="https://docs.silex.me/en/user/login" target="_blank">the documentation</a>. <br><br> By logging in, you agree to the <a href="https://docs.silex.me/en/terms" target="_blank">terms of use</a> and the <a href="https://docs.silex.me/en/security" target="_blank">privacy policy</a>.</div></div><div id="i9msnk" style="padding:10px;display:inline;" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" style="padding:10px;display:inline;" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Logout</div></div></div><FOOTER class="footer">
280
331
 
281
332
  <div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
282
333
 
@@ -2,7 +2,7 @@
2
2
  <html lang="">
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
- <link rel="stylesheet" href="/css/connectors-66fe82f10a7a257f59212e18bb384b019ffb12192fa3f748951da7d4428733b4.css" />
5
+ <link rel="stylesheet" href="/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css" />
6
6
  <!-- font google -->
7
7
  <link rel="preconnect" href="https://fonts.gstatic.com" />
8
8
  <link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;700&display=swap" rel="stylesheet">
@@ -204,6 +204,9 @@ const App = {
204
204
  // Go up one level because of the language prefix
205
205
  setServerUrl(window.location.origin)
206
206
  await this.getConnectors()
207
+ console.log('=====================')
208
+ this.setRgpd('nl', this.getRgpd('nl') ?? true)
209
+ this.setRgpd('feedback', this.getRgpd('feedback') ?? true)
207
210
  } catch (error) {
208
211
  console.error(error)
209
212
  this.loading = false
@@ -244,7 +247,55 @@ const App = {
244
247
  this.message = ''
245
248
  }
246
249
  },
247
- openLogin() {}
250
+ openLogin() {},
251
+ // name: "nl" | "feedback", value: Boolean
252
+ setRgpd(name, value) {
253
+ const errorDiv = document.getElementById('errorDiv');
254
+ console.log('set RGPD', {name, value, errorDiv})
255
+ if (errorDiv) errorDiv.textContent = ''; // Clear previous errors
256
+
257
+ if (typeof Storage !== 'undefined') {
258
+ try {
259
+ localStorage.setItem(name, JSON.stringify(value));
260
+ console.log(`RGPD setting saved: ${name} = ${value}`);
261
+ } catch (e) {
262
+ if (errorDiv) {
263
+ errorDiv.textContent = 'Error saving to localStorage: ' + e.message;
264
+ }
265
+ console.error('Error saving to localStorage', e);
266
+ }
267
+ } else {
268
+ const warning = 'Local storage is not supported in this browser.';
269
+ if (errorDiv) {
270
+ errorDiv.textContent = warning;
271
+ }
272
+ console.warn(warning);
273
+ }
274
+ },
275
+ getRgpd(name) {
276
+ const errorDiv = document.getElementById('errorDiv');
277
+ if (errorDiv) errorDiv.textContent = ''; // Clear previous errors
278
+
279
+ if (typeof Storage !== 'undefined') {
280
+ try {
281
+ const value = localStorage.getItem(name);
282
+ return value !== null ? JSON.parse(value) : null; // Return parsed value or null if not found
283
+ } catch (e) {
284
+ if (errorDiv) {
285
+ errorDiv.textContent = 'Error retrieving from localStorage: ' + e.message;
286
+ }
287
+ console.error('Error retrieving from localStorage', e);
288
+ return null;
289
+ }
290
+ } else {
291
+ const warning = 'Local storage is not supported in this browser.';
292
+ if (errorDiv) {
293
+ errorDiv.textContent = warning;
294
+ }
295
+ console.warn(warning);
296
+ return null;
297
+ }
298
+ },
248
299
  },
249
300
  };
250
301
  // Prepare elements for vue
@@ -276,7 +327,7 @@ setTimeout(() => {
276
327
  <link rel="icon" href="/assets/favicon-32x32.png" />
277
328
  <meta name="og:title" property="og:title" content="Silex Dashboard"/>
278
329
  <link href="https://fonts.googleapis.com" rel="preconnect" ><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin ><link href="https://fonts.googleapis.com/css?family=Ubuntu&display=swap" rel="stylesheet" ></head>
279
- <body id="i2hcfw" class="body app before-js"><A id="ixzhcr" href="/" class="button button-bar__item--secondary">< Retour</A><div id="imawg3" class="bg-silex-purpel"><div id="imgx81" style="min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;" class=""><div id="iikf0s" class="box box_login"><div id="ie0dxn" class="text-centered"><img id="ior0hl" src="/assets/logo-silex.svg"/><p id="it2175" style="margin:15px 0px 0px 0px;font-size:1rem;" class="subtitle-16">Connectez-vous pour continuer</p></div><h3 id="iqc1xf" style="display:none;" class="margin-top">Recommandé et gratuit</h3><div id="in62y2"><div id="isqe61" class="full-width margin-30" v-for="(connector, index) in connectors.slice(0, 1)"><a id="i44y9w" href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div id="io3lid" class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div id="i87asw" class="connector__description" v-text="connector.displayName">Login with <span href="" id="i0tt68">Name</span><br/></div></a></div></div><DETAILS id="ihn6fj"><summary id="i8w75b" class="margin-30">Utilisateurs avancés</summary><div id="ibi9qh" class="full-width" v-for="(connector, index) in connectors.slice(1)"><a href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div class="connector__description" v-text="connector.displayName">Login with <span href="">Name</span><br/></div></a></div></DETAILS><div id="i3cney" class="button-bar"><a id="iacshy" class="button big-button connector__card" v-if="!loading" :key="index" :style="{ backgroundColor: connector.background, color: connector.color }" v-for="(connector, index) in connectors" v-on-click="openLogin(connector)"><div id="iiwn36"><div class="button-bar__item__icon" :style="`background: url('${connector.icon}'); background-repeat: no-repeat; background-size: contain;`"></div><div id="if4gvb" class="" v-text="connector.displayName">Name<br/></div></div><div id="isndui">This connector is about blablabla<br/></div></a></div><div id="ijflxq" style="font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;" class="text-centered">Avez-vous besoin d'aide ? Consultez <a href="https://docs.silex.me/fr/user/login" target="_blank">la documentation</a>. <br><br> En vous connectant, vous acceptez les <a href="https://docs.silex.me/fr/terms" target="_blank">conditions d'utilisation</a> et la <a href="https://docs.silex.me/fr/security" target="_blank">politique de confidentialité</a>.</div></div><div id="i9msnk" style="padding:10px;display:inline;" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" style="padding:10px;display:inline;" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Déconnexion</div></div></div><FOOTER class="footer">
330
+ <body id="i2hcfw" class="body app before-js"><A id="ixzhcr" href="/" class="button button-bar__item--secondary">< Retour</A><div id="imawg3" class="bg-silex-purpel"><div id="imgx81" style="min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;" class=""><div id="iikf0s" class="box box_login"><div id="ie0dxn" class="text-centered"><img id="ior0hl" src="/assets/logo-silex.svg"/><p id="it2175" style="margin:15px 0px 0px 0px;font-size:1rem;" class="subtitle-16">Connectez-vous pour continuer</p></div><h3 id="iqc1xf" style="display:none;" class="margin-top">Recommandé et gratuit</h3><div id="in62y2"><div id="isqe61" class="full-width margin-30" v-for="(connector, index) in connectors.slice(0, 1)"><a id="i44y9w" href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div id="io3lid" class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div id="i87asw" class="connector__description" v-text="connector.displayName">Login with <span href="" id="i0tt68">Name</span><br/></div></a></div><div id="i9fpn7" class="rgpd-checks"><input type="checkbox" id="feedback-check" name="feedback-check" checked class="rgpd-checks__check" v-on:change="(event) => setRgpd('feedback', event.target.checked)"></input><label id="iv7hwn" for="feedback-check" class="">Autoriser le contact pour débogage et feedback</label></div><div id="iahvhn" class="rgpd-checks"><input type="checkbox" name="nl-check" id="nl-check" checked __p="undefined" class="rgpd-checks__check" v-on:change="(event) => setRgpd('nl', event.target.checked)"></input><label for="nl-check" id="isjk6j" class="">S'abonner à la newsletter</label></div><div id="errorDiv"></div></div><DETAILS id="ihn6fj"><summary id="i8w75b" class="margin-30">Utilisateurs avancés</summary><div id="ibi9qh" class="full-width" v-for="(connector, index) in connectors.slice(1)"><a href="https://" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div class="connector__description" v-text="connector.displayName">Login with <span href="">Name</span><br/></div></a></div></DETAILS><div id="i3cney" class="button-bar"><a id="iacshy" class="button big-button connector__card" v-if="!loading" :key="index" :style="{ backgroundColor: connector.background, color: connector.color }" v-for="(connector, index) in connectors" v-on-click="openLogin(connector)"><div id="iiwn36"><div class="button-bar__item__icon" :style="`background: url('${connector.icon}'); background-repeat: no-repeat; background-size: contain;`"></div><div id="if4gvb" class="" v-text="connector.displayName">Name<br/></div></div><div id="isndui">This connector is about blablabla<br/></div></a></div><div id="ijflxq" style="font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;" class="text-centered">Avez-vous besoin d'aide ? Consultez <a href="https://docs.silex.me/fr/user/login" target="_blank">la documentation</a>. <br><br> En vous connectant, vous acceptez les <a href="https://docs.silex.me/fr/terms" target="_blank">conditions d'utilisation</a> et la <a href="https://docs.silex.me/fr/security" target="_blank">politique de confidentialité</a>.</div></div><div id="i9msnk" style="padding:10px;display:inline;" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" style="padding:10px;display:inline;" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Déconnexion</div></div></div><FOOTER class="footer">
280
331
 
281
332
  <div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" class="footer__item">Social & communauté</h3>
282
333