@silexlabs/silex-dashboard 1.0.57 → 1.0.59

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 (45) hide show
  1. package/{templates/css/connectors-187142925083dd32992cd4c78462f9a7e20f6fc462524b566ed616fd6d3d2b46.css → _site/css/connectors-748797d88cc32c0787052966e54e4f794629b8460d24f2aadac83c13899574fb.css} +1 -1
  2. package/{templates/css/websites-4b9b2b0a0a907b33eca109d50c2a3eee97f1955c742cef487110d21a0bbf8f50.css → _site/css/websites-c678e6ed7f508aa4b0e9218070d7235ed56f0eaea49350b30b849f4ef176cfb0.css} +1 -1
  3. package/_site/en/connectors/index.html +130 -218
  4. package/_site/en/index.html +111 -2
  5. package/_site/fr/connectors/index.html +130 -218
  6. package/_site/fr/index.html +111 -2
  7. package/_site/js/main.js +91 -91
  8. package/_site/js/main.js.LICENSE.txt +1 -1
  9. package/_site/js/vue.cjs.js +1 -1
  10. package/_site/js/vue.cjs.prod.js +1 -1
  11. package/_site/js/vue.esm-browser.js +6035 -6011
  12. package/_site/js/vue.esm-browser.prod.js +6 -9
  13. package/_site/js/vue.esm-bundler.js +1 -1
  14. package/_site/js/vue.global.js +4940 -4916
  15. package/_site/js/vue.global.prod.js +6 -9
  16. package/_site/js/vue.runtime.esm-browser.js +5930 -5886
  17. package/_site/js/vue.runtime.esm-browser.prod.js +2 -9
  18. package/_site/js/vue.runtime.esm-bundler.js +1 -1
  19. package/_site/js/vue.runtime.global.js +5435 -5391
  20. package/_site/js/vue.runtime.global.prod.js +2 -9
  21. package/package.json +8 -8
  22. package/templates/connectors-en.11tydata.mjs +25 -10
  23. package/templates/connectors-en.html +145 -260
  24. package/templates/connectors-fr.11tydata.mjs +25 -10
  25. package/templates/connectors-fr.html +145 -260
  26. package/{_site/css/connectors-187142925083dd32992cd4c78462f9a7e20f6fc462524b566ed616fd6d3d2b46.css → templates/css/connectors-748797d88cc32c0787052966e54e4f794629b8460d24f2aadac83c13899574fb.css} +1 -1
  27. package/{_site/css/websites-4b9b2b0a0a907b33eca109d50c2a3eee97f1955c742cef487110d21a0bbf8f50.css → templates/css/websites-c678e6ed7f508aa4b0e9218070d7235ed56f0eaea49350b30b849f4ef176cfb0.css} +1 -1
  28. package/templates/websites-en.11tydata.mjs +1 -0
  29. package/templates/websites-en.html +220 -81
  30. package/templates/websites-fr.11tydata.mjs +1 -0
  31. package/templates/websites-fr.html +220 -81
  32. package/tina/tina-lock.json +1 -1
  33. package/_site/connectors/index.html +0 -354
  34. package/_site/css/connectors-61bd21c2345101e48cc530cacf3afc0156ce7e089fcef3a34f853a537f0c55f2.css +0 -1
  35. package/_site/css/connectors-bb5104e4124d29465b3866b632c9a173d84b60bc78e4cd1607bc92a1ca85fb5b.css +0 -1
  36. package/_site/css/connectors-d7d00ca2aa235acdf7535c1e8faba94fe05e8a8863db5fc4421cd9369c811928.css +0 -1
  37. package/_site/css/websites-5cf941724b3798508df646193a48dcf4ec08e709d92aa33e06f09632a8b1b0a5.css +0 -1
  38. package/_site/websites/index.html +0 -350
  39. package/js/index.js +0 -0
  40. package/templates/connectors.html +0 -354
  41. package/templates/css/connectors-61bd21c2345101e48cc530cacf3afc0156ce7e089fcef3a34f853a537f0c55f2.css +0 -1
  42. package/templates/css/connectors-bb5104e4124d29465b3866b632c9a173d84b60bc78e4cd1607bc92a1ca85fb5b.css +0 -1
  43. package/templates/css/connectors-d7d00ca2aa235acdf7535c1e8faba94fe05e8a8863db5fc4421cd9369c811928.css +0 -1
  44. package/templates/css/websites-5cf941724b3798508df646193a48dcf4ec08e709d92aa33e06f09632a8b1b0a5.css +0 -1
  45. package/templates/websites.html +0 -350
@@ -1 +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;}.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;}.button-bar__item--secondary{font-size:0.8rem;}.connector__card{align-items:center;margin:0px auto 0px 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;}#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;width:100%;padding:30px 0px 30px 0px;}.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;}#ijflxq{font-size:0.85rem;text-align:left;margin:30px 0px 0px 0px;}
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;}.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;width:100%;padding:30px 0px 30px 0px;}.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;}#ic685y{display:inline-block;width:100%;padding:30px 0px 30px 0px;}
@@ -1 +1 @@
1
- * { box-sizing: border-box; } body {margin: 0;}.nav__item{margin:0px 10px 0px 10px;font-size:0.8rem;padding:24px 0px 24px 0px;color:#4a4a4a;}.body{font-family:"Ubuntu", sans-serif;background-color:#f0f0f0;color:#2b1b63;}.menu-bar{display:flex;align-items:center;justify-content:space-between;background-color:#ffffff;height:94px;padding:0px 100px 0px 100px;width:100%;}.padding-normal{padding:0px 24px 0px 24px;}#i9jq{display:flex;}.nav{width:100%;margin:0px 20px 0px 20px;}.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;}#ibsgw{position:relative;top:3px;}.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;}.rounded{border-radius:4px 4px 4px 4px;}.footer{display:flex;margin:50px 0px 0px 0px;background-color:#ffffff;justify-content:space-evenly;padding:30px 30px 60px 30px;}.skeleton-text.skeleton{background-color:#dddddd;color:transparent;opacity:0.31;border-radius:5px 5px 5px 5px;}.skeleton.skeleton-button{color:transparent;opacity:0.31;background-color:#dddddd;border-radius:5px 5px 5px 5px;width:140px;}.skeleton-anim{position:relative;}.nav__item.active{color:black;}.margin-20{margin:20px 0px 20px 0px;}#i0ro3{display:none;}.loading__item.loaded-true{display:none;}.flex-no-shrink{flex-shrink:0;}.form{padding:10px 0px 10px 0px;border-radius:5px 5px 5px 5px;}#i1nmbc{flex-shrink:0;}.input{padding:10px 10px 10px 10px;background-color:transparent;border:2px solid #8873fe;margin:10px 0px 10px 0px;border-radius:4px 4px 4px 4px;}.full-width{width:100%;}.v-space{margin:10px 0px 10px 0px;}.box{border-radius:4px 4px 4px 4px;background-color:#ffffff;}.box__header{margin:0px 0px 0px 0px;padding:10px 0px 10px 0px;font-weight:700;font-size:1.625rem;color:rgba(43,27,99,0.5);}.box.flex-between{align-items:center;}.flex-between{display:flex;align-items:center;justify-content:space-between;}.button--tertiary{background-color:transparent;font-weight:400;}.icon-font{font-size:1.5rem;line-height:1px;margin:0px 2px 0px 2px;}.lang__item{margin:0px 5px 0px 5px;}.top-space-40{margin:40px 0 0 0;}.nav__logo{height:50px;}.user-icon__image{width:100%;height:100%;}.user__wrapper{border:1px solid white;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 0 0 20px;}.right-space-20{margin:0px 20px 0px 0px;}#iksw4d{padding:10px;}.button:hover{color:#8873fe;border:2px solid #8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}.user-icon__wrapper{border:1px solid #f0f0f0;background-color:#f0f0f0;border-radius:50% 50% 50% 50%;width:40px;height:40px;overflow:hidden hidden;}.title-40{margin:0 0 10px 0;font-size:2.5rem;font-weight:700;}.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);}.section-top{max-width:1200px;padding:40px 30px 40px 30px;height:226px;display:flex;flex-direction:column;justify-content:center;margin:0px auto 0px auto;}.text-centered{text-align:center;}.box-message{background-color:rgba(43,27,99,0.3);border-radius:4px 4px 4px 4px;padding:20px 30px 20px 30px;margin:10px 0px 10px 0px;}.text-white{color:#ffffff;}.bold{font-weight:800;}.button-bar__item--link{background-color:transparent;border:0px solid black;font-size:0.8rem;color:#8873fe;}.padding-30{padding:30px 30px 30px 30px;}.right-space-40{margin:0 40px 0 0;}.title-26{font-size:1.625rem;margin:10px 0px 10px 0px;}.empty-image{min-height:500px;background-image:url(/assets/../assets/empty-projects-sos.gif);background-repeat:no-repeat;background-position:center center;background-attachment:scroll;background-size:contain;}.padding-50-30{padding:50px 30px 50px 30px;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.button.button--tertiary{border:2px solid transparent;background-color:rgba(221,221,221,0.5);}.button-bar__item--link.text-white{color:#ffffff;}.button.big-button{border:2px solid transparent;}.color-2B1B63-80{color:rgba(43,27,99,0.8);}.button.button--tertiary:hover{border:2px solid #8873fe;color:#8873fe;background-color:white;}.box-message-text{margin:0px 0 0 0;font-weight:300;}.website-max-width{max-width:1200px;}.margin-80{margin:80px auto 80px auto;}.button-bar__item--secondary{font-size:0.8rem;}.skeleton{line-height:1.1rem;}#isucae{min-height:100px;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}#igsxoc{position:relative;top:3px;}.box--centered{display:flex;flex-direction:column;align-items:center;}.button-bar__title:hover{color:#8873fe;}.button-bar__item--icon{margin:0px 0 0 0;padding:5px 5px 5px 5px;}.nav__item:hover{text-decoration:none;color:#8873fe;}.nav_item--active:first-child{color:#8873fe;}
1
+ * { box-sizing: border-box; } body {margin: 0;}.nav__item{margin:0px 10px 0px 10px;font-size:0.8rem;padding:24px 0px 24px 0px;color:#4a4a4a;}.body{font-family:"Ubuntu", sans-serif;background-color:#f0f0f0;color:#2b1b63;}.menu-bar{display:flex;align-items:center;justify-content:space-between;background-color:#ffffff;height:94px;padding:0px 100px 0px 100px;width:100%;}.padding-normal{padding:0px 24px 0px 24px;}#i9jq{display:flex;}.nav{width:100%;margin:0px 20px 0px 20px;}.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;}#ibsgw{position:relative;top:3px;}.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;}.rounded{border-radius:4px 4px 4px 4px;}.footer{display:flex;margin:50px 0px 0px 0px;background-color:#ffffff;justify-content:space-evenly;padding:30px 30px 60px 30px;}.skeleton-text.skeleton{background-color:#dddddd;color:transparent;opacity:0.31;border-radius:5px 5px 5px 5px;}.skeleton.skeleton-button{color:transparent;opacity:0.31;background-color:#dddddd;border-radius:5px 5px 5px 5px;width:140px;}.skeleton-anim{position:relative;}.nav__item.active{color:black;}.margin-20{margin:20px 0px 20px 0px;}#i0ro3{display:none;}.loading__item.loaded-true{display:none;}.flex-no-shrink{flex-shrink:0;}.form{padding:10px 0px 10px 0px;border-radius:5px 5px 5px 5px;}#i1nmbc{flex-shrink:0;}.input{padding:10px 10px 10px 10px;background-color:transparent;border:2px solid #8873fe;margin:10px 0px 10px 0px;border-radius:4px 4px 4px 4px;}.full-width{width:100%;}.v-space{margin:10px 0px 10px 0px;}.box{border-radius:4px 4px 4px 4px;background-color:#ffffff;}.box__header{margin:0px 0px 0px 0px;padding:10px 0px 10px 0px;font-weight:700;font-size:1.625rem;color:rgba(43,27,99,0.5);}.box.flex-between{align-items:center;}.flex-between{display:flex;align-items:center;justify-content:space-between;}.button--tertiary{background-color:transparent;font-weight:400;}.icon-font{font-size:1.5rem;line-height:1px;margin:0px 2px 0px 2px;}.lang__item{margin:0px 5px 0px 5px;}.top-space-40{margin:40px 0 0 0;}.nav__logo{height:50px;}.user-icon__image{width:100%;height:100%;}.user__wrapper{border:1px solid white;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 0 0 20px;}.right-space-20{margin:0px 20px 0px 0px;}#iksw4d{padding:10px;}.button:hover{color:#8873fe;border:2px solid #8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}.user-icon__wrapper{border:1px solid #f0f0f0;background-color:#f0f0f0;border-radius:50% 50% 50% 50%;width:40px;height:40px;overflow:hidden hidden;}.title-40{margin:0 0 10px 0;font-size:2.5rem;font-weight:700;}.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);}.section-top{max-width:1200px;padding:40px 30px 40px 30px;height:226px;display:flex;flex-direction:column;justify-content:center;margin:0px auto 0px auto;}.text-centered{text-align:center;}.box-message{background-color:rgba(43,27,99,0.3);border-radius:4px 4px 4px 4px;padding:20px 30px 20px 30px;margin:10px 0px 10px 0px;}.text-white{color:#ffffff;}.bold{font-weight:800;}.button-bar__item--link{background-color:transparent;border:0px solid black;font-size:0.8rem;color:#8873fe;}.padding-30{padding:30px 30px 30px 30px;}.right-space-40{margin:0 40px 0 0;}.title-26{font-size:1.625rem;margin:10px 0px 10px 0px;}.empty-image{min-height:500px;background-image:url(/assets/../assets/empty-projects-sos.gif);background-repeat:no-repeat;background-position:center center;background-attachment:scroll;background-size:contain;}.padding-50-30{padding:50px 30px 50px 30px;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.button.button--tertiary{border:2px solid transparent;background-color:rgba(221,221,221,0.5);}.button-bar__item--link.text-white{color:#ffffff;}.button.big-button{border:2px solid transparent;}.color-2B1B63-80{color:rgba(43,27,99,0.8);}.button.button--tertiary:hover{border:2px solid #8873fe;color:#8873fe;background-color:white;}.box-message-text{margin:0px 0 0 0;font-weight:300;}.website-max-width{max-width:1200px;}.margin-80{margin:80px auto 80px auto;}.button-bar__item--secondary{font-size:0.8rem;}.skeleton{line-height:1.1rem;}#isucae{min-height:100px;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}#igsxoc{position:relative;top:3px;}.box--centered{display:flex;flex-direction:column;align-items:center;}.button-bar__title:hover{color:#8873fe;}.button-bar__item--icon{margin:0px 0 0 0;padding:5px 5px 5px 5px;}.nav__item:hover{text-decoration:none;color:#8873fe;}.nav_item--active:first-child{color:#8873fe;}#ilgsqu{min-height:100px;}
@@ -2,7 +2,7 @@
2
2
  <html lang="">
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
- <link rel="stylesheet" href="/css/connectors-bb5104e4124d29465b3866b632c9a173d84b60bc78e4cd1607bc92a1ca85fb5b.css" />
5
+ <link rel="stylesheet" href="/css/connectors-748797d88cc32c0787052966e54e4f794629b8460d24f2aadac83c13899574fb.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">
@@ -34,6 +34,16 @@
34
34
  .button{
35
35
  min-width:110px;
36
36
  }
37
+ details {
38
+ max-height: 2em;
39
+ display: block;
40
+ overflow: hidden;
41
+ transition: max-height .75s ease;
42
+ }
43
+ details[open] {
44
+ max-height: 40em;
45
+ }
46
+
37
47
  /*BTNS*/
38
48
  a {
39
49
  text-decoration: none;
@@ -145,246 +155,148 @@
145
155
  <script src="/js/vue.global.prod.js"></script>
146
156
  <script src="/js/main.js"></script>
147
157
  <script type="module">
148
- const CONNECTORS_PATH = '/connectors/'
149
- window.addEventListener('load', function() {
150
- const { createApp } = Vue;
151
- const { api, constants, types } = silex;
152
- const {
153
- ConnectorType,
154
- } = types
155
- const {
156
- setServerUrl,
157
- getUser,
158
- logout,
159
- websiteDelete,
160
- websiteDuplicate,
161
- websiteList,
162
- websiteCreate,
163
- websiteMetaWrite,
164
- } = api
165
- function toSafeId(name) {
166
- return name.replace(/[/\\?%*:|"<>]/g, '_')
167
- }
158
+ const CONNECTORS_PATH = ''
159
+ const { createApp } = Vue;
160
+ const { api, constants, types } = silex;
161
+ const {
162
+ ConnectorType,
163
+ } = types
164
+ const {
165
+ setServerUrl,
166
+ getUser,
167
+ logout,
168
+ websiteDelete,
169
+ websiteDuplicate,
170
+ websiteList,
171
+ websiteCreate,
172
+ websiteMetaWrite,
173
+ connectorList,
174
+ } = api
175
+ function toSafeId(name) {
176
+ return name.replace(/[/\\?%*:|"<>]/g, '_')
177
+ }
168
178
 
169
- const App = {
170
- data() {
171
- return {
172
- websites: [],
173
- newWebsiteName: '',
174
- showCreationForm: false,
175
- error: null,
176
- message: null,
177
- loggedIn: false,
178
- loading: true,
179
- storage: null,
180
- user: null,
181
- showMenu: false,
182
- empty: false,
179
+ const App = {
180
+ data() {
181
+ return {
182
+ websites: [],
183
+ connectors: [],
184
+ newWebsiteName: '',
185
+ showCreationForm: false,
186
+ error: null,
187
+ message: null,
188
+ loggedIn: false,
189
+ loading: true,
190
+ storage: null,
191
+ user: null,
192
+ showMenu: false,
193
+ empty: false,
194
+ }
195
+ },
196
+ mounted() {
197
+ this.init()
198
+ },
199
+
200
+ methods: {
201
+ async init() {
202
+ try {
203
+ // Init Silex server path
204
+ // Go up one level because of the language prefix
205
+ setServerUrl(window.location.origin)
206
+ await this.getConnectors()
207
+ } catch (error) {
208
+ console.error(error)
209
+ this.loading = false
210
+ this.error = `Failed to start dashboard - ${error.message}`
211
+ this.message = ''
183
212
  }
184
213
  },
185
- mounted() {
186
- this.init()
187
- },
188
-
189
- methods: {
190
- async init() {
191
- try {
192
- // Init Silex server path
193
- // Go up one level because of the language prefix
194
- setServerUrl(window.location.origin)
195
- // Start
196
- const user = await getUser({type: ConnectorType.STORAGE})
197
- // Escape single quotes in the picture URL and decode the picture URL
198
- user.picture = decodeURIComponent(user.picture).replace(/'/g, "\\'")
199
- if(user) {
200
- this.user = user
201
- this.loggedIn = true
202
- this.websites = await websiteList({connectorId: this.user.storage.connectorId})
203
- this.empty = this.websites.length === 0
204
- this.loading = false
205
- } else {
206
- this.openLogin()
207
- }
208
- } catch (error) {
209
- console.error(error)
210
- this.loading = false
211
- if(error.code === 401 || error.httpStatusCode === 401) {
212
- this.loggedIn = false
213
- this.openLogin()
214
- } else {
215
- this.error = `Failed to start dashboard - ${error.message}`
216
- this.message = ''
217
- }
218
- }
219
- },
220
-
221
- openLogin(id, lang) {
222
- //throw new Error('debug')
223
- const path = `/en${CONNECTORS_PATH}`
224
- console.log(window.location.pathname, window.location.path, path)
225
- if(window.location.pathname === path) return
226
- window.open(path, '_self')
227
- },
228
214
 
229
- openEditor(id, lang) {
230
- window.open(`/?id=${id}&lang=${lang}&connectorId=${this.user.storage.connectorId}`, '_self')
231
- },
232
-
233
- async logout() {
234
- await logout({
235
- type: ConnectorType.STORAGE,
236
- connectorId: this.user.storage.connectorId,
237
- })
238
- window.location.reload()
239
- },
240
-
241
- async createWebsite() {
242
- try {
243
- if (!this.newWebsiteName) throw new Error('You need to provide a website name')
244
- this.loading = true
245
- const websiteId = toSafeId(this.newWebsiteName)
246
- const result = await websiteCreate({
247
- websiteId,
248
- data: {
249
- name: this.newWebsiteName,
250
- imageUrl: null,
251
- },
252
- connectorId: this.user.storage.connectorId
253
- })
254
- this.message = 'Website created successfully'
255
- this.error = ''
256
- this.newWebsiteName = ''
257
- this.showCreationForm = false;
258
- this.websites = await websiteList({connectorId: this.user.storage.connectorId})
259
- this.empty = this.websites.length === 0
260
- this.loading = false
261
- return result
262
- } catch (error) {
263
- this.loading = false
264
- console.error(error)
265
- this.error = `Failed to create website - ${error.message}`
266
- this.message = ''
267
- }
268
- },
215
+ getIcon(connector) {
216
+ return decodeURIComponent(connector.icon.split(',').slice(1).join(','))
217
+ },
269
218
 
270
- async deleteWebsite(websiteId) {
271
- const ok = confirm('Deleting a website? Are your sure? Really?')
272
- if (!ok) return
273
- this.loading = true
274
- try {
275
- const result = await websiteDelete({websiteId, connectorId: this.user.storage.connectorId})
276
- this.message = 'Website deleted successfully'
277
- this.error = ''
278
- this.websites = await websiteList({connectorId: this.user.storage.connectorId})
279
- this.empty = this.websites.length === 0
280
- this.loading = false
281
- return result
282
- } catch (error) {
283
- this.loading = false
284
- this.error = `Failed to delete website - ${error.message}`
285
- this.message = ''
286
- }
287
- },
219
+ getHref(connector) {
220
+ console.log(connector, connector.oauthUrl)
221
+ return connector.oauthUrl
222
+ },
288
223
 
289
- async duplicateWebsite(websiteId) {
290
- this.loading = true
291
- try {
292
- await websiteDuplicate({websiteId, connectorId: this.user.storage.connectorId, data: { name }})
293
- this.error = ''
294
- this.websites = await websiteList({connectorId: this.user.storage.connectorId})
295
- this.message = 'Website duplicated successfully'
296
- this.empty = this.websites.length === 0
297
- this.loading = false
298
- } catch (error) {
299
- this.loading = false
300
- this.error = `Failed to duplicate website - ${error.message}`
301
- this.message = ''
302
- }
303
- },
224
+ getConnectorStyle(connector) {
225
+ return {
226
+ backgroundImage: `url(${connector.icon})`,
227
+ //color: connector.color,
228
+ //backgroundColor: connector.background
229
+ }
230
+ },
304
231
 
305
- async renameWebsite(websiteId) {
306
- const website = this.websites.find(w => w.websiteId === websiteId)
307
- const name = prompt('New name for this website', website.name)
308
- if (!name) return
232
+ async getConnectors() {
233
+ try {
309
234
  this.loading = true
310
- try {
311
- const result = await websiteMetaWrite({websiteId, connectorId: this.user.storage.connectorId, data: { name }})
312
- this.message = 'Website renamed successfully'
313
- this.error = ''
314
- this.websites = await websiteList({connectorId: this.user.storage.connectorId})
315
- this.empty = this.websites.length === 0
316
- this.loading = false
317
- return result
318
- } catch (error) {
319
- this.loading = false
320
- this.error = `Failed to rename website - ${error.message}`
321
- this.message = ''
322
- }
323
- },
235
+ const connectors = await connectorList({ type: ConnectorType.STORAGE })
236
+ this.connectors = connectors
237
+ this.loading = false
238
+ } catch (error) {
239
+ this.loading = false
240
+ console.error(error)
241
+ this.error = ` - ${error.message}`
242
+ this.message = ''
243
+ }
324
244
  },
325
- };
326
- // Prepare elements for vue
327
- document.querySelectorAll('[v-text], [v-html]')
245
+ openLogin() {}
246
+ },
247
+ };
248
+ // Prepare elements for vue
249
+ document.querySelectorAll('[v-text], [v-html]')
328
250
  .forEach(el => el.innerText = '')
329
251
 
330
- // Create the app
331
- const app = createApp(App);
252
+ document.querySelectorAll('[data-remove-href]')
253
+ .forEach(el => {
254
+ el.removeAttribute('href')
255
+ el.removeAttribute('data-remove-href')
256
+ })
332
257
 
333
- // Suppress "v-text will override element children" warning
334
- app.config.compilerOptions.directiveTransforms = {
335
- text: false,
336
- }
337
258
 
338
- // Mount the app
339
- app.mount('.app');
259
+ // Create the app
260
+ const app = createApp(App);
261
+
262
+ // Mount the app
263
+ app.mount('.app');
264
+
340
265
 
266
+ // Remove loading
267
+ setTimeout(() => {
268
+ document.querySelector('.before-js').classList.add('after-js')
269
+ }, 100)
341
270
 
342
- // Remove loading
343
- setTimeout(() => {
344
- document.querySelector('.before-js').classList.add('after-js')
345
- }, 100)
346
- })
347
271
  </script>
348
272
 
349
273
  <title>Silex Dashboard</title>
350
274
  <link rel="icon" href="/assets/favicon-32x32.png" />
351
275
  <meta name="og:title" property="og:title" content="Silex Dashboard"/>
352
276
  <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>
353
- <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" 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" class="subtitle-16">Please login to continue</p></div><h3 id="iqc1xf" class="margin-top">Recommended and free</h3><div id="in62y2">
354
-
355
-
356
-
357
- <div id="isqe61" class="">
358
- <a id="i0vhjr" href="/api/connector/login?connectorId=gitlab&type=STORAGE" class="connector__card" data-style="background: rgba(252, 109, 38, 0.2); color: #2B1B63;" title="Gitlab.com is the service we recommend to host your Silex website. We trust the company behind the service, go check them out."><div id="io3lid" class="button-bar__item__icon"><svg xmlns:svg="http://www.w3.org/2000/svg"
359
- xmlns="http://www.w3.org/2000/svg"
360
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
361
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
362
- width="100%" height="100%" viewBox="0 0 1000 963.197" version="1.1" id="svg85">
363
- <sodipodi:namedview id="namedview87" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" showgrid="false" inkscape:zoom="1" inkscape:cx="991.5" inkscape:cy="964.5" inkscape:window-width="1126" inkscape:window-height="895" inkscape:window-x="774" inkscape:window-y="12" inkscape:window-maximized="0" inkscape:current-layer="svg85" />
364
- <defs id="defs74">
365
- <!-- Styles will be applied inline -->
366
- </defs>
367
- <g id="LOGO" transform="matrix(5.2068817,0,0,5.2068817,-489.30756,-507.76085)">
368
- <path class="cls-1" style="fill:#e24329;" d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z" id="path76" />
369
- <path class="cls-2" style="fill:#fc6d26;" d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z" id="path78" />
370
- <path class="cls-3" style="fill:#fca326;" d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z" id="path80" />
371
- <path class="cls-2" style="fill:#fc6d26;" d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z" id="path82" />
372
- </g>
373
- </svg></div><div id="i87asw" class="connector__description">Connect with GitLab.com</div></a></div>
374
-
375
-
376
-
377
- </div><DETAILS id="igp4xl"><summary id="i8w75b" class="margin-30">Advanced users</summary>
277
+ <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" 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" class="subtitle-16">Please login to continue</p></div><h3 id="iqc1xf" class="margin-top">Recommended and free</h3><div id="in62y2"><div id="isqe61" class="" 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 class="" v-for="(connector, index) in connectors.slice(1)"><a href="/" class="connector__card" v-bind:href="connector.oauthUrl" :key="index"><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" 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" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Logout</div></div></div><FOOTER class="footer">
378
278
 
379
-
279
+ <div id="iprzeh" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
380
280
 
381
-
281
+ <a href="https://www.silex.me/" class="footer__item" target="_blank">About Silex, official website</a>
282
+ <a href="mailto:contact+silex-dashboard-footer@silex.me" class="footer__item" target="">Email the team</a>
283
+ <a href="https://short.silex.me/sponsors" class="footer__item" target="">Sponsors</a>
284
+ <a href="https://short.silex.me/donate" class="footer__item" target="">Donate</a>
285
+ <a href="https://short.silex.me/community" class="footer__item" target="_blank">Community forum</a>
286
+ <a href="https://news.silex.me/forms/nfrm_weLJnLY5" class="footer__item" target="_blank">Newsletter</a>
287
+ <a href="https://events.silex.me/" class="footer__item" target="_blank">Meetups/ Events</a>
288
+ <a href="https://short.silex.me/mastodon" class="footer__item" target="_blank">Mastodon</a>
289
+ <a href="https://short.silex.me/chat" class="footer__item" target="">Chat</a></div>
290
+ <div id="iprzeh" class="footer__column"><h3 href="" class="footer__item">Resources</h3>
382
291
 
383
- <div id="id9k25" href="" class="">
384
- <a href="/api/connector/login?connectorId=framagit&type=STORAGE" id="irgt6z" class="connector__card" data-style="background: rgba(252, 109, 38, 0.2); color: #2B1B63;" title="Framagit is Framasoft's software forge based on Gitlab software. It is open to everyone, with a limit of 42 projects per person. Projects can be public or private. With Gitlab, we also offer continuous integration with GitlabCI and hosting of static pages with Gitlab Pages (see our documentation)"><div class="button-bar__item__icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.29 14.29"><g fill="#725794" transform="matrix(.02569 0 0 .02569 -.25 -.08)"><circle cx="74.91" cy="180.35" r="55"/><circle cx="137.6" cy="317.44" r="42.5"/><circle cx="189.82" cy="434.27" r="31"/></g><g fill="#dd6418" transform="matrix(.02569 0 0 .02569 -.25 -.08)"><circle cx="515.92" cy="412.86" r="26"/><circle cx="499.71" cy="484.31" r="21"/></g><path fill="#dd6418" d="M12.24 3.93c-.15.05-.64-.02-.64-.02.14.09.23.33.22.5-.48-.06-.67-.22-1.11-.45 0 0 .3.36.6.57.54.41 1.03.9 1.33 1.37.15.23.19.26.2.16a3.3 3.3 0 00-.52-1.87c-.06-.09-.07-.19-.08-.26z"/><path d="M.68.2C.53.2.45.33.56.43 5.51 2.78 4.78 5 5.42 7.55c.17.69 1.32 6.06 7.37 6.58.23.02.3-.25.06-.31-4.94-1.32-6.13-9.95-2.68-10.27.48-.04.63.16 1 .28.36.12.93.16 1.1.13.32-.6-.25-1.28-.73-1.78.52-.34 2.2-.71 2.4-.8.13-.05.07-.25-.04-.27-.77.05-2.6.2-3.43.52-1.45-.88-3.34-.2-4.3 1.3C5.19 1.5 3.81 1.08.67.2zM8.8 1.54c.74 0 .72.31-.24.64a3.76 3.76 0 00-2.38 2.2c-.11-.17.43-2.56 2.62-2.84z"/></svg></div><div class="connector__description">Connect with Framagit</div></a></div>
385
-
292
+ <a href="https://short.silex.me/code" class="footer__item" target="_blank">Source code</a>
293
+ <a href="http://docs.silex.me/" class="footer__item" target="_blank">Documentation</a>
294
+ <a href="https://video.silex.me/my-library/video-playlists" class="footer__item" target="_blank">Videos</a>
295
+ <a href="https://short.silex.me/roadmap" class="footer__item" target="_blank">Roadmap</a>
296
+ <a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
297
+ <div id="iprzeh" class="footer__column"><h3 href="" class="footer__item">Articles and reviews</h3>
386
298
 
387
- <div id="id9k25" href="" class="">
388
- <a href="/api/connector/login?connectorId=ftp&type=STORAGE" id="irgt6z" class="connector__card" data-style="background: #0066CC; color: #ffffff;" title="FTP is for professional users who want to host their websites with a hosting company of their choice
389
- "><div class="button-bar__item__icon"><svg xmlns='http://www.w3.org/2000/svg' height='100%' viewBox='0 0 512 512'> <path d='M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z' /> </svg></div><div class="connector__description">Connect with FTP</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" 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" class="text-white top-space-20" v-if="error" v-text="message" :test="message">Insert your text here</div><div id="i6akll" class="button button--tertiary text-centered" v-if="error" v-on:click="logout()">Logout</div></div></div></body>
299
+ <a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
300
+ <a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
301
+ <a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER></body>
390
302
  </html>
@@ -2,7 +2,7 @@
2
2
  <html lang="">
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
- <link rel="stylesheet" href="/css/websites-4b9b2b0a0a907b33eca109d50c2a3eee97f1955c742cef487110d21a0bbf8f50.css" />
5
+ <link rel="stylesheet" href="/css/websites-c678e6ed7f508aa4b0e9218070d7235ed56f0eaea49350b30b849f4ef176cfb0.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">
@@ -34,6 +34,16 @@
34
34
  .button{
35
35
  min-width:110px;
36
36
  }
37
+ details {
38
+ max-height: 2em;
39
+ display: block;
40
+ overflow: hidden;
41
+ transition: max-height .75s ease;
42
+ }
43
+ details[open] {
44
+ max-height: 40em;
45
+ }
46
+
37
47
  /*BTNS*/
38
48
  a {
39
49
  text-decoration: none;
@@ -195,8 +205,8 @@ window.addEventListener('load', function() {
195
205
  // Start
196
206
  const user = await getUser({type: ConnectorType.STORAGE})
197
207
  // Escape single quotes in the picture URL and decode the picture URL
198
- user.picture = decodeURIComponent(user.picture).replace(/'/g, "\\'")
199
208
  if(user) {
209
+ user.picture = decodeURIComponent(user.picture).replace(/'/g, "\\'")
200
210
  this.user = user
201
211
  this.loggedIn = true
202
212
  this.websites = await websiteList({connectorId: this.user.storage.connectorId})
@@ -378,6 +388,105 @@ window.addEventListener('load', function() {
378
388
  <a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
379
389
  <div id="isucae" class="footer__column"><h3 id="ipa5zg" href="" class="footer__item">Articles and reviews</h3>
380
390
 
391
+ <a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
392
+ <a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
393
+ <a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER><HEADER class="menu-bar"><A href="/"><img src="/assets/favicon-32x32.png" id="iel80b-2" class="nav__logo"/></A><NAV id="in0357-2-2" class="nav">
394
+
395
+ <a href="/" class="nav__item uppercase fx-flash nav_item--active" target="">Sites</a>
396
+ <a href="http://docs.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Docs</a>
397
+ <a href="https://www.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">About</a>
398
+ <a href="https://community.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Community</a>
399
+ <a href="https://mail-list.silexlabs.org/subscription/cemnfkaVrK?locale=en-US&source=silex-dashboard" class="nav__item uppercase fx-flash nav_item--active" target="_blank">News</a></NAV>
400
+
401
+ <div class="lang"><a href="/en" class="lang__item nav__item uppercase">EN</a></div>
402
+ <div class="lang"><a href="/fr" class="lang__item nav__item uppercase">FR</a></div><div class="user__wrapper pointer"><div class="user-icon__wrapper"><div class="user-icon__image"></div></div><div><div id="ir10ge-2-2" class="button button--tertiary text-centered">Logout</div></div></div></HEADER><FOOTER class="footer">
403
+
404
+ <div id="ilgsqu" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
405
+
406
+ <a href="https://www.silex.me/" class="footer__item" target="_blank">About Silex, official website</a>
407
+ <a href="mailto:contact+silex-dashboard-footer@silex.me" class="footer__item" target="">Email the team</a>
408
+ <a href="https://short.silex.me/sponsors" class="footer__item" target="">Sponsors</a>
409
+ <a href="https://short.silex.me/donate" class="footer__item" target="">Donate</a>
410
+ <a href="https://short.silex.me/community" class="footer__item" target="_blank">Community forum</a>
411
+ <a href="https://news.silex.me/forms/nfrm_weLJnLY5" class="footer__item" target="_blank">Newsletter</a>
412
+ <a href="https://events.silex.me/" class="footer__item" target="_blank">Meetups/ Events</a>
413
+ <a href="https://short.silex.me/mastodon" class="footer__item" target="_blank">Mastodon</a>
414
+ <a href="https://short.silex.me/chat" class="footer__item" target="">Chat</a></div>
415
+ <div id="ilgsqu" class="footer__column"><h3 href="" class="footer__item">Resources</h3>
416
+
417
+ <a href="https://short.silex.me/code" class="footer__item" target="_blank">Source code</a>
418
+ <a href="http://docs.silex.me/" class="footer__item" target="_blank">Documentation</a>
419
+ <a href="https://video.silex.me/my-library/video-playlists" class="footer__item" target="_blank">Videos</a>
420
+ <a href="https://short.silex.me/roadmap" class="footer__item" target="_blank">Roadmap</a>
421
+ <a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
422
+ <div id="ilgsqu" class="footer__column"><h3 href="" class="footer__item">Articles and reviews</h3>
423
+
424
+ <a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
425
+ <a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
426
+ <a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER><HEADER class="menu-bar"><A href="/"><img src="/assets/favicon-32x32.png" id="iel80b-2" class="nav__logo"/></A><NAV id="in0357-2-2-2" class="nav">
427
+
428
+ <a href="/" class="nav__item uppercase fx-flash nav_item--active" target="">Sites</a>
429
+ <a href="http://docs.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Docs</a>
430
+ <a href="https://www.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">About</a>
431
+ <a href="https://community.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Community</a>
432
+ <a href="https://mail-list.silexlabs.org/subscription/cemnfkaVrK?locale=en-US&source=silex-dashboard" class="nav__item uppercase fx-flash nav_item--active" target="_blank">News</a></NAV>
433
+
434
+ <div class="lang"><a href="/en" class="lang__item nav__item uppercase">EN</a></div>
435
+ <div class="lang"><a href="/fr" class="lang__item nav__item uppercase">FR</a></div><div class="user__wrapper pointer"><div class="user-icon__wrapper"><div class="user-icon__image"></div></div><div><div id="ir10ge-2-2-2" class="button button--tertiary text-centered">Logout</div></div></div></HEADER><FOOTER class="footer">
436
+
437
+ <div id="ilgsqu-2" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
438
+
439
+ <a href="https://www.silex.me/" class="footer__item" target="_blank">About Silex, official website</a>
440
+ <a href="mailto:contact+silex-dashboard-footer@silex.me" class="footer__item" target="">Email the team</a>
441
+ <a href="https://short.silex.me/sponsors" class="footer__item" target="">Sponsors</a>
442
+ <a href="https://short.silex.me/donate" class="footer__item" target="">Donate</a>
443
+ <a href="https://short.silex.me/community" class="footer__item" target="_blank">Community forum</a>
444
+ <a href="https://news.silex.me/forms/nfrm_weLJnLY5" class="footer__item" target="_blank">Newsletter</a>
445
+ <a href="https://events.silex.me/" class="footer__item" target="_blank">Meetups/ Events</a>
446
+ <a href="https://short.silex.me/mastodon" class="footer__item" target="_blank">Mastodon</a>
447
+ <a href="https://short.silex.me/chat" class="footer__item" target="">Chat</a></div>
448
+ <div id="ilgsqu-2" class="footer__column"><h3 href="" class="footer__item">Resources</h3>
449
+
450
+ <a href="https://short.silex.me/code" class="footer__item" target="_blank">Source code</a>
451
+ <a href="http://docs.silex.me/" class="footer__item" target="_blank">Documentation</a>
452
+ <a href="https://video.silex.me/my-library/video-playlists" class="footer__item" target="_blank">Videos</a>
453
+ <a href="https://short.silex.me/roadmap" class="footer__item" target="_blank">Roadmap</a>
454
+ <a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
455
+ <div id="ilgsqu-2" class="footer__column"><h3 href="" class="footer__item">Articles and reviews</h3>
456
+
457
+ <a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
458
+ <a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
459
+ <a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER><HEADER class="menu-bar"><A href="/"><img src="/assets/favicon-32x32.png" id="iel80b-2" class="nav__logo"/></A><NAV id="in0357-2-2-2-2" class="nav">
460
+
461
+ <a href="/" class="nav__item uppercase fx-flash nav_item--active" target="">Sites</a>
462
+ <a href="http://docs.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Docs</a>
463
+ <a href="https://www.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">About</a>
464
+ <a href="https://community.silex.me/" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Community</a>
465
+ <a href="https://mail-list.silexlabs.org/subscription/cemnfkaVrK?locale=en-US&source=silex-dashboard" class="nav__item uppercase fx-flash nav_item--active" target="_blank">News</a></NAV>
466
+
467
+ <div class="lang"><a href="/en" class="lang__item nav__item uppercase">EN</a></div>
468
+ <div class="lang"><a href="/fr" class="lang__item nav__item uppercase">FR</a></div><div class="user__wrapper pointer"><div class="user-icon__wrapper"><div class="user-icon__image"></div></div><div><div id="ir10ge-2-2-2-2" class="button button--tertiary text-centered">Logout</div></div></div></HEADER><FOOTER class="footer">
469
+
470
+ <div id="ilgsqu-2-2" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
471
+
472
+ <a href="https://www.silex.me/" class="footer__item" target="_blank">About Silex, official website</a>
473
+ <a href="mailto:contact+silex-dashboard-footer@silex.me" class="footer__item" target="">Email the team</a>
474
+ <a href="https://short.silex.me/sponsors" class="footer__item" target="">Sponsors</a>
475
+ <a href="https://short.silex.me/donate" class="footer__item" target="">Donate</a>
476
+ <a href="https://short.silex.me/community" class="footer__item" target="_blank">Community forum</a>
477
+ <a href="https://news.silex.me/forms/nfrm_weLJnLY5" class="footer__item" target="_blank">Newsletter</a>
478
+ <a href="https://events.silex.me/" class="footer__item" target="_blank">Meetups/ Events</a>
479
+ <a href="https://short.silex.me/mastodon" class="footer__item" target="_blank">Mastodon</a>
480
+ <a href="https://short.silex.me/chat" class="footer__item" target="">Chat</a></div>
481
+ <div id="ilgsqu-2-2" class="footer__column"><h3 href="" class="footer__item">Resources</h3>
482
+
483
+ <a href="https://short.silex.me/code" class="footer__item" target="_blank">Source code</a>
484
+ <a href="http://docs.silex.me/" class="footer__item" target="_blank">Documentation</a>
485
+ <a href="https://video.silex.me/my-library/video-playlists" class="footer__item" target="_blank">Videos</a>
486
+ <a href="https://short.silex.me/roadmap" class="footer__item" target="_blank">Roadmap</a>
487
+ <a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
488
+ <div id="ilgsqu-2-2" class="footer__column"><h3 href="" class="footer__item">Articles and reviews</h3>
489
+
381
490
  <a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
382
491
  <a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
383
492
  <a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER></body>