@silexlabs/silex-dashboard 1.5.0-canary.0 → 1.5.0-canary.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DASHBOARD-ARCHITECTURE.md +1410 -0
- package/_site/css/connectors-e4ae24975f4df2e2bea5121337282d8f2201bb86dc8c041c9ef43c0c2d7a32a7.css +1 -0
- package/_site/css/fork-506e7c805e636be6225c35a11f5804b72cf41d7a6355aa64a5d7ddb7d66ea314.css +1 -0
- package/_site/css/fork-923d814802e46c2d0db0f71c5c488c616ca0016f340d8dae66b263ba7f1143bc.css +1 -0
- package/_site/css/index-38d10542f641eb789c11b589b95d0e6363e71978479fa5cddbec3da65774560c.css +1 -0
- package/_site/en/connectors/index.html +51 -26
- package/_site/en/fork/index.html +371 -0
- package/_site/en/index.html +30 -28
- package/_site/fr/connectors/index.html +52 -27
- package/_site/fr/fork/index.html +372 -0
- package/_site/fr/index.html +31 -29
- package/collections/fork/en.md +17 -0
- package/collections/fork/fr.md +17 -0
- package/package.json +2 -2
- package/silex/websites/default/meta.json +4 -0
- package/silex/websites/default/website.json +6 -0
- package/templates/connectors-en.html +66 -41
- package/templates/connectors-fr.html +66 -41
- package/templates/css/connectors-e4ae24975f4df2e2bea5121337282d8f2201bb86dc8c041c9ef43c0c2d7a32a7.css +1 -0
- package/templates/css/fork-506e7c805e636be6225c35a11f5804b72cf41d7a6355aa64a5d7ddb7d66ea314.css +1 -0
- package/templates/css/fork-923d814802e46c2d0db0f71c5c488c616ca0016f340d8dae66b263ba7f1143bc.css +1 -0
- package/templates/css/index-38d10542f641eb789c11b589b95d0e6363e71978479fa5cddbec3da65774560c.css +1 -0
- package/templates/fork-en.11tydata.mjs +117 -0
- package/templates/fork-en.html +412 -0
- package/templates/fork-fr.11tydata.mjs +117 -0
- package/templates/fork-fr.html +412 -0
- package/templates/{websites-en.11tydata.mjs → index-en.11tydata.mjs} +32 -32
- package/templates/{websites-en.html → index-en.html} +91 -89
- package/templates/{websites-fr.11tydata.mjs → index-fr.11tydata.mjs} +32 -32
- package/templates/{websites-fr.html → index-fr.html} +91 -89
- package/tina/config.ts +76 -0
- package/tina/tina-lock.json +1 -1
- package/_site/connectors/index.html +0 -278
- package/_site/css/connectors-1350f25629f7addac6970f5297f8aef050ba1c207b28c8a0e4a7b113246d69dc.css +0 -1
- package/_site/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css +0 -1
- package/_site/css/connectors-306649a254eff69e10db2fa5368e173e88e24449db25d65b7117ebfd5dbbcd31.css +0 -1
- package/_site/css/connectors-66fe82f10a7a257f59212e18bb384b019ffb12192fa3f748951da7d4428733b4.css +0 -1
- package/_site/css/connectors-748797d88cc32c0787052966e54e4f794629b8460d24f2aadac83c13899574fb.css +0 -1
- package/_site/css/connectors-87cf0f4b873d104a845dcafd5d80d4f8d482f8cea15f2412cd9655071dcb9ea8.css +0 -1
- package/_site/css/connectors-885e03b1611113e2363f7a86fba9aee867130a14836b3cc9c4714265708c1704.css +0 -1
- package/_site/css/connectors-9d0c9569a2ce8afaa4a30a0534b3d0597c761c7e0e5280dcbc966dc2b709e98e.css +0 -1
- package/_site/css/connectors-a8ae93c40b7c738a4514e47046a029afdcf74bb28a7724287e1350afac4fa60f.css +0 -1
- package/_site/css/connectors-c1d5f4c520a9a86d99b7201d30a8fe25a5779b7b2373b73262868f446fe3f855.css +0 -1
- package/_site/css/connectors-febcafaf261c0f23ca11fc13809f259c74dbdd50b6a47506ba295fdb99d1b4a4.css +0 -1
- package/_site/css/websites-19b822a8683767833f7656ff2df318ba13bed49f33d9bfc946ff619cf986b449.css +0 -1
- package/_site/css/websites-4b9b2b0a0a907b33eca109d50c2a3eee97f1955c742cef487110d21a0bbf8f50.css +0 -1
- package/_site/css/websites-7843a323acc9c4921d373250c5f647854910ea0913530659823fbe29844ee6b5.css +0 -1
- package/_site/css/websites-931c1ae713658c5aca51e25f5c43a79611c9a762dc38b989cc99ad4dbd4eda8e.css +0 -1
- package/_site/css/websites-c678e6ed7f508aa4b0e9218070d7235ed56f0eaea49350b30b849f4ef176cfb0.css +0 -1
- package/_site/css/websites-e6d63d0512032a2909a7f648cecfad311842ecba7bd03f94afc8639998e606f0.css +0 -1
- package/_site/websites/index.html +0 -360
- package/templates/connectors.html +0 -278
- package/templates/css/connectors-1350f25629f7addac6970f5297f8aef050ba1c207b28c8a0e4a7b113246d69dc.css +0 -1
- package/templates/css/connectors-152b01dfacf0586ce2f3fb0ddbbf5a5bbcd181a48b4b20b275f837786b2889cd.css +0 -1
- package/templates/css/connectors-306649a254eff69e10db2fa5368e173e88e24449db25d65b7117ebfd5dbbcd31.css +0 -1
- package/templates/css/connectors-66fe82f10a7a257f59212e18bb384b019ffb12192fa3f748951da7d4428733b4.css +0 -1
- package/templates/css/connectors-748797d88cc32c0787052966e54e4f794629b8460d24f2aadac83c13899574fb.css +0 -1
- package/templates/css/connectors-87cf0f4b873d104a845dcafd5d80d4f8d482f8cea15f2412cd9655071dcb9ea8.css +0 -1
- package/templates/css/connectors-885e03b1611113e2363f7a86fba9aee867130a14836b3cc9c4714265708c1704.css +0 -1
- package/templates/css/connectors-9d0c9569a2ce8afaa4a30a0534b3d0597c761c7e0e5280dcbc966dc2b709e98e.css +0 -1
- package/templates/css/connectors-a8ae93c40b7c738a4514e47046a029afdcf74bb28a7724287e1350afac4fa60f.css +0 -1
- package/templates/css/connectors-c1d5f4c520a9a86d99b7201d30a8fe25a5779b7b2373b73262868f446fe3f855.css +0 -1
- package/templates/css/connectors-febcafaf261c0f23ca11fc13809f259c74dbdd50b6a47506ba295fdb99d1b4a4.css +0 -1
- package/templates/css/websites-19b822a8683767833f7656ff2df318ba13bed49f33d9bfc946ff619cf986b449.css +0 -1
- package/templates/css/websites-4b9b2b0a0a907b33eca109d50c2a3eee97f1955c742cef487110d21a0bbf8f50.css +0 -1
- package/templates/css/websites-7843a323acc9c4921d373250c5f647854910ea0913530659823fbe29844ee6b5.css +0 -1
- package/templates/css/websites-931c1ae713658c5aca51e25f5c43a79611c9a762dc38b989cc99ad4dbd4eda8e.css +0 -1
- package/templates/css/websites-c678e6ed7f508aa4b0e9218070d7235ed56f0eaea49350b30b849f4ef176cfb0.css +0 -1
- package/templates/css/websites-e6d63d0512032a2909a7f648cecfad311842ecba7bd03f94afc8639998e606f0.css +0 -1
- package/templates/websites.html +0 -360
package/_site/css/connectors-e4ae24975f4df2e2bea5121337282d8f2201bb86dc8c041c9ef43c0c2d7a32a7.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* { box-sizing: border-box; } body {margin: 0;}.body{background-color:#f0f0f0;color:#2b1b63;font-family:"Ubuntu", sans-serif;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.button{border:2px solid #8873fe;display:inline-block;font-size:0.8rem;font-weight:700;line-height:1.2rem;padding:10px 20px 10px 20px;transition:all 0.18s ease-out;}.button.button--primary{background-color:#8873fe;color:white;}.button-bar{align-items:center;background-color:#ffffff;border-radius:4px 4px 4px 4px;display:flex;justify-content:space-between;margin:20px 0px 20px 0px;padding:30px 30px 30px 30px;}.button-bar.button-bar--full-width{align-items:center;justify-content:space-between;}.button-bar_item.button-bar__item--secondary{font-size:0.8rem;}.button.button--secondary{border:2px solid #8873fe;color:#8873fe;font-weight:400;}.footer{background-color:#ffffff;display:flex;justify-content:space-evenly;margin:50px 0px 0px 0px;padding:30px 30px 60px 30px;}.full-width{width:100%;}.box{background-color:#ffffff;border-radius:4px 4px 4px 4px;}.box.flex-between{align-items:center;}.button--tertiary{background-color:transparent;font-weight:400;}.button:hover{border:2px solid #8873fe;color:#8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}#imgx81{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;}#in62y2{justify-content:center;}.big-button{background-color:#ffffff;border-radius:5px 5px 5px 5px;font-size:15px;font-weight:700;margin:10px 10px 10px 10px;padding:15px 30px 15px 30px;}#i9msnk{display:inline;padding:10px;}#i6akll{display:inline;padding:10px;}#ixzhcr{display:none;padding:10px;position:absolute;}.bg-silex-purpel{background-attachment:scroll;background-image:url("/assets/../assets/bg-purpel-silex.webp");background-position:center top;background-repeat:repeat-y;background-size:contain;}.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{background-color:rgba(221,221,221,0.5);border:2px solid transparent;}.box_login{max-width:450px;padding:60px 40px 60px 40px;width:100%;}.button-bar__item--link.text-white{color:#ffffff;}.button.big-button{border:2px solid transparent;}.button.button--tertiary:hover{background-color:white;border:2px solid #8873fe;color:#8873fe;}.button-bar__item__icon{background-attachment:scroll;background-image:none;background-position:center center;background-repeat:no-repeat;background-size:contain;float:left;height:30px;margin:5px 5px 5px 5px;width:30px;}.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;border:1px solid;border-radius:5px 5px 5px 5px;color:black;display:flex;justify-content:center;margin:10px auto 10px auto;max-width:100%;padding:4px 0px 4px 0px;transition:all 0.25s ease;}#i3cney{display:none;justify-content:center;width:100%;}.connector__description{padding:5px 15px 5px 15px;}#ior0hl{color:black;}#igp4xl{display:inline-block;justify-content:center;width:100%;}#isqe61{display:inline-block;}.margin-top{margin:80px 0px 30px 0px;}.margin-30{margin:30px 0px 30px 0px;}.connector__card:link{border:1px solid;color:black;text-decoration:none;}.connector__card:hover{background-color:#8873fe;color:white;}#iqc1xf{display:none;}#it2175{font-size:1rem;margin:15px 0px 0px 0px;}#i8w75b{cursor:pointer;font-size:0.95rem;font-weight:600;margin:10px 0px 10px 0px;}#ijflxq{font-size:0.85rem;margin:30px 0px 0px 0px;text-align:left;}#iprzeh{min-height:100px;}#ibi9qh{display:inline-block;}.rgpd-checks{align-items:center;display:flex;padding:10px 0px 10px 0px;}.rgpd-checks__check{height:20px;margin:0px 10px 0px 0px;width:20px;}#ihn6fj{margin:20px 0px 0px 0px;}#errorDiv{color:#ff557a;font-weight:800;}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* { box-sizing: border-box; } body {margin: 0;}.nav__item{color:#4a4a4a;font-size:0.8rem;margin:0px 10px 0px 10px;padding:24px 0px 24px 0px;}.body{background-color:#f0f0f0;color:#2b1b63;font-family:"Ubuntu", sans-serif;}.menu-bar{align-items:center;background-color:#ffffff;display:flex;height:94px;justify-content:space-between;padding:0px 100px 0px 100px;width:100%;}.padding-normal{padding:0px 24px 0px 24px;}.nav{margin:0px 20px 0px 20px;width:100%;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.button{border:2px solid #8873fe;display:inline-block;font-size:0.8rem;font-weight:700;line-height:1.2rem;padding:10px 20px 10px 20px;transition:all 0.18s ease-out;}.button.button--primary{background-color:#8873fe;color:white;}.button-bar{align-items:center;background-color:#ffffff;border-radius:4px 4px 4px 4px;display:flex;justify-content:space-between;margin:20px 0px 20px 0px;padding:30px 30px 30px 30px;}.button-bar.button-bar--full-width{align-items:center;justify-content:space-between;}.button-bar_item.button-bar__item--secondary{font-size:0.8rem;}.button.button--secondary{border:2px solid #8873fe;color:#8873fe;font-weight:400;}.rounded{border-radius:4px 4px 4px 4px;}.footer{background-color:#ffffff;display:flex;justify-content:space-evenly;margin:50px 0px 0px 0px;padding:30px 30px 60px 30px;}.skeleton-text.skeleton{background-color:#dddddd;border-radius:5px 5px 5px 5px;color:transparent;opacity:0.31;}.skeleton.skeleton-button{background-color:#dddddd;border-radius:5px 5px 5px 5px;color:transparent;opacity:0.31;width:140px;}.skeleton-anim{position:relative;}.nav__item.active{color:black;}.margin-20{margin:20px 0px 20px 0px;}.loading__item.loaded-true{display:none;}.flex-no-shrink{flex-shrink:0;}.form{border-radius:5px 5px 5px 5px;padding:10px 0px 10px 0px;}.input{background-color:transparent;border:2px solid #8873fe;border-radius:4px 4px 4px 4px;margin:10px 0px 10px 0px;padding:10px 10px 10px 10px;}.full-width{width:100%;}.v-space{margin:10px 0px 10px 0px;}.box{background-color:#ffffff;border-radius:4px 4px 4px 4px;}.box__header{color:rgba(43,27,99,0.5);font-size:1.625rem;font-weight:700;margin:0px 0px 0px 0px;padding:10px 0px 10px 0px;}.box.flex-between{align-items:center;}.flex-between{align-items:center;display:flex;justify-content:space-between;}.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{height:100%;width:100%;}.user__wrapper{align-items:center;border:1px solid white;display:flex;flex-direction:column;justify-content:center;margin:0 0 0 20px;}.right-space-20{margin:0px 20px 0px 0px;}.button:hover{border:2px solid #8873fe;color:#8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}.user-icon__wrapper{background-color:#f0f0f0;border:1px solid #f0f0f0;border-radius:50% 50% 50% 50%;height:40px;overflow:hidden hidden;width:40px;}.title-40{font-size:2.5rem;font-weight:700;margin:0 0 10px 0;}.bg-silex-purpel{background-attachment:scroll;background-image:url("/assets/../assets/bg-purpel-silex.webp");background-position:center top;background-repeat:repeat-y;background-size:contain;}.section-top{display:flex;flex-direction:column;height:226px;justify-content:center;margin:0px auto 0px auto;max-width:1200px;padding:40px 30px 40px 30px;}.text-centered{text-align:center;}.box-message{background-color:rgba(43,27,99,0.3);border-radius:4px 4px 4px 4px;margin:10px 0px 10px 0px;padding:20px 30px 20px 30px;}.text-white{color:#ffffff;}.bold{font-weight:800;}.button-bar__item--link{background-color:transparent;border:0px solid black;color:#8873fe;font-size:0.8rem;}.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{background-attachment:scroll;background-image:url("/assets/../assets/empty-projects-sos.gif");background-position:center center;background-repeat:no-repeat;background-size:contain;min-height:500px;}.padding-50-30{padding:50px 30px 50px 30px;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.button.button--tertiary{background-color:rgba(221,221,221,0.5);border:2px solid transparent;}.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{background-color:white;border:2px solid #8873fe;color:#8873fe;}.box-message-text{font-weight:300;margin:0px 0 0 0;}.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;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}.box--centered{align-items:center;display:flex;flex-direction:column;}.button-bar__title:hover{color:#8873fe;}.button-bar__item--icon{margin:0px 0 0 0;padding:5px 5px 5px 5px;}.nav__item:hover{color:#8873fe;text-decoration:none;}.nav_item--active:first-child{color:#8873fe;}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* { box-sizing: border-box; } body {margin: 0;}.nav__item{color:#4a4a4a;font-size:0.8rem;margin:0px 10px 0px 10px;padding:24px 0px 24px 0px;}.body{background-color:#f0f0f0;color:#2b1b63;font-family:"Ubuntu", sans-serif;}.menu-bar{align-items:center;background-color:#ffffff;display:flex;height:94px;justify-content:space-between;padding:0px 100px 0px 100px;width:100%;}.padding-normal{padding:0px 24px 0px 24px;}.nav{margin:0px 20px 0px 20px;width:100%;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.rounded{border-radius:4px 4px 4px 4px;}.footer{background-color:#ffffff;display:flex;justify-content:space-evenly;margin:50px 0px 0px 0px;padding:30px 30px 60px 30px;}.nav__item.active{color:black;}.box.flex-between{align-items:center;}.flex-between{align-items:center;display:flex;justify-content:space-between;}.lang__item{margin:0px 5px 0px 5px;}.nav__logo{height:50px;}.user-icon__image{height:100%;width:100%;}.user__wrapper{align-items:center;border:1px solid white;display:flex;flex-direction:column;justify-content:center;margin:0 0 0 20px;}.user-icon__wrapper{background-color:#f0f0f0;border:1px solid #f0f0f0;border-radius:50% 50% 50% 50%;height:40px;overflow:hidden hidden;width:40px;}.title-40{font-size:2.5rem;font-weight:700;margin:0 0 10px 0;}.bg-silex-purpel{background-attachment:scroll;background-image:url("/assets/../assets/bg-purpel-silex.webp");background-position:center top;background-repeat:repeat-y;background-size:contain;}.section-top{display:flex;flex-direction:column;height:226px;justify-content:center;margin:0px auto 0px auto;max-width:1200px;padding:40px 30px 40px 30px;}.text-centered{text-align:center;}.box-message{background-color:rgba(43,27,99,0.3);border-radius:4px 4px 4px 4px;margin:10px 0px 10px 0px;padding:20px 30px 20px 30px;}.text-white{color:#ffffff;}.button-bar__item--link{background-color:transparent;border:0px solid black;color:#8873fe;font-size:0.8rem;}.button-bar__item--link.text-white{color:#ffffff;}.box-message-text{font-weight:300;margin:0px 0 0 0;}.website-max-width{max-width:1200px;}.margin-80{margin:80px auto 80px auto;}.footer__column{display:flex;flex-direction:column;flex-grow:1;text-align:center;}.footer__item{padding:10px 10px 10px 10px;}.nav__item:hover{color:#8873fe;text-decoration:none;}.nav_item--active:first-child{color:#8873fe;}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* { box-sizing: border-box; } body {margin: 0;}.nav__item{color:#4a4a4a;font-size:0.8rem;margin:0px 10px 0px 10px;padding:24px 0px 24px 0px;}.body{background-color:#f0f0f0;color:#2b1b63;font-family:"Ubuntu", sans-serif;}.menu-bar{align-items:center;background-color:#ffffff;display:flex;height:94px;justify-content:space-between;padding:0px 100px 0px 100px;width:100%;}.padding-normal{padding:0px 24px 0px 24px;}#i9jq{display:flex;}.nav{margin:0px 20px 0px 20px;width:100%;}.subtitle-16{font-size:1rem;margin:0px 0px 20px 0px;}.subtitle-16.color--light{color:#636363;font-weight:700;}.button{border:2px solid #8873fe;display:inline-block;font-size:0.8rem;font-weight:700;line-height:1.2rem;padding:10px 20px 10px 20px;transition:all 0.18s ease-out;}.button.button--primary{background-color:#8873fe;color:white;}.button-bar{align-items:center;background-color:#ffffff;border-radius:4px 4px 4px 4px;display:flex;justify-content:space-between;margin:20px 0px 20px 0px;padding:30px 30px 30px 30px;}#ibsgw{position:relative;top:3px;}.button-bar.button-bar--full-width{align-items:center;justify-content:space-between;}.button-bar_item.button-bar__item--secondary{font-size:0.8rem;}.button.button--secondary{border:2px solid #8873fe;color:#8873fe;font-weight:400;}.rounded{border-radius:4px 4px 4px 4px;}.footer{background-color:#ffffff;display:flex;justify-content:space-evenly;margin:50px 0px 0px 0px;padding:30px 30px 60px 30px;}.skeleton-text.skeleton{background-color:#dddddd;border-radius:5px 5px 5px 5px;color:transparent;opacity:0.31;}.skeleton.skeleton-button{background-color:#dddddd;border-radius:5px 5px 5px 5px;color:transparent;opacity:0.31;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{border-radius:5px 5px 5px 5px;padding:10px 0px 10px 0px;}#i1nmbc{flex-shrink:0;}.input{background-color:transparent;border:2px solid #8873fe;border-radius:4px 4px 4px 4px;margin:10px 0px 10px 0px;padding:10px 10px 10px 10px;}.full-width{width:100%;}.v-space{margin:10px 0px 10px 0px;}.box{background-color:#ffffff;border-radius:4px 4px 4px 4px;}.box__header{color:rgba(43,27,99,0.5);font-size:1.625rem;font-weight:700;margin:0px 0px 0px 0px;padding:10px 0px 10px 0px;}.box.flex-between{align-items:center;}.flex-between{align-items:center;display:flex;justify-content:space-between;}.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{height:100%;width:100%;}.user__wrapper{align-items:center;border:1px solid white;display:flex;flex-direction:column;justify-content:center;margin:0 0 0 20px;}.right-space-20{margin:0px 20px 0px 0px;}.button:hover{border:2px solid #8873fe;color:#8873fe;}.button.button--secondary:hover{background-color:white;border:2px solid rgba(136,115,254,0.5);}.user-icon__wrapper{background-color:#f0f0f0;border:1px solid #f0f0f0;border-radius:50% 50% 50% 50%;height:40px;overflow:hidden hidden;width:40px;}.title-40{font-size:2.5rem;font-weight:700;margin:0 0 10px 0;}.bg-silex-purpel{background-attachment:scroll;background-image:url("/assets/../assets/bg-purpel-silex.webp");background-position:center top;background-repeat:repeat-y;background-size:contain;}.section-top{display:flex;flex-direction:column;height:226px;justify-content:center;margin:0px auto 0px auto;max-width:1200px;padding:40px 30px 40px 30px;}.text-centered{text-align:center;}.box-message{background-color:rgba(43,27,99,0.3);border-radius:4px 4px 4px 4px;margin:10px 0px 10px 0px;padding:20px 30px 20px 30px;}.text-white{color:#ffffff;}.bold{font-weight:800;}.button-bar__item--link{background-color:transparent;border:0px solid black;color:#8873fe;font-size:0.8rem;}.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{background-attachment:scroll;background-image:url("/assets/../assets/empty-projects-sos.gif");background-position:center center;background-repeat:no-repeat;background-size:contain;min-height:500px;}.padding-50-30{padding:50px 30px 50px 30px;}.box.box_transp{background-color:rgba(255,255,255,0.5);}.button.button--tertiary{background-color:rgba(221,221,221,0.5);border:2px solid transparent;}.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{background-color:white;border:2px solid #8873fe;color:#8873fe;}.box-message-text{font-weight:300;margin:0px 0 0 0;}.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{align-items:center;display:flex;flex-direction:column;}.button-bar__title:hover{color:#8873fe;}.button-bar__item--icon{margin:0px 0 0 0;padding:5px 5px 5px 5px;}.nav__item:hover{color:#8873fe;text-decoration:none;}.nav_item--active:first-child{color:#8873fe;}#igv1rf{padding:10px;}
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
<html lang="">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
|
-
<
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<meta name="generator" content="Silex v3.6.0-canary.1">
|
|
7
|
+
<link rel="stylesheet" href="/css/connectors-e4ae24975f4df2e2bea5121337282d8f2201bb86dc8c041c9ef43c0c2d7a32a7.css" />
|
|
6
8
|
<!-- font google -->
|
|
7
9
|
<link rel="preconnect" href="https://fonts.gstatic.com" />
|
|
8
10
|
<link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;700&display=swap" rel="stylesheet">
|
|
@@ -176,6 +178,9 @@ function toSafeId(name) {
|
|
|
176
178
|
return name.replace(/[/\\?%*:|"<>]/g, '_')
|
|
177
179
|
}
|
|
178
180
|
|
|
181
|
+
const params = new URLSearchParams(window.location.search)
|
|
182
|
+
const redirect = params.get('redirect')
|
|
183
|
+
|
|
179
184
|
const App = {
|
|
180
185
|
data() {
|
|
181
186
|
return {
|
|
@@ -221,11 +226,31 @@ const App = {
|
|
|
221
226
|
},
|
|
222
227
|
|
|
223
228
|
getHref(connector) {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
229
|
+
const params = new URLSearchParams(window.location.search)
|
|
230
|
+
const redirect = params.get('redirect')
|
|
231
|
+
|
|
232
|
+
if (connector.isLoggedIn) {
|
|
233
|
+
return redirect || '/'
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
if (!connector.oauthUrl) {
|
|
237
|
+
return '/api/connector/login/?type=STORAGE&connectorId=' + connector.connectorId
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
if (!redirect) return connector.oauthUrl
|
|
241
|
+
|
|
242
|
+
const url = new URL(connector.oauthUrl)
|
|
243
|
+
const state = url.searchParams.get('state')
|
|
244
|
+
|
|
245
|
+
url.searchParams.set(
|
|
246
|
+
'state',
|
|
247
|
+
JSON.stringify({ state, redirect })
|
|
248
|
+
)
|
|
249
|
+
|
|
250
|
+
return url.toString()
|
|
227
251
|
},
|
|
228
252
|
|
|
253
|
+
|
|
229
254
|
getConnectorStyle(connector) {
|
|
230
255
|
return {
|
|
231
256
|
backgroundImage: `url(${connector.icon})`,
|
|
@@ -331,30 +356,30 @@ setTimeout(() => {
|
|
|
331
356
|
<title>Silex Dashboard</title>
|
|
332
357
|
<link rel="icon" href="/assets/favicon-32x32.png" />
|
|
333
358
|
<meta name="og:title" property="og:title" content="Silex Dashboard"/>
|
|
334
|
-
<link href="https://fonts.googleapis.com" rel="preconnect" ><link href="https://fonts.
|
|
335
|
-
<body id="i2hcfw" class="body app before-js"><A
|
|
359
|
+
<link href="https://fonts.googleapis.com" rel="preconnect" ><link href="https://fonts.googleapis.com/css2" rel="preconnect" crossorigin ><link href="https://fonts.googleapis.com/css2?family=Ubuntu&display=swap" rel="stylesheet" ></head>
|
|
360
|
+
<body id="i2hcfw" class="body app before-js"><A href="/" id="ixzhcr" 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 href="https://" id="i44y9w" 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 id="i1zf1p"/></div></a></div><div id="i9fpn7" class="rgpd-checks"><input type="checkbox" checked id="feedback-check" name="feedback-check" class="rgpd-checks__check" v-on:change="(event) => setRgpd('feedback', event.target.checked)" v-model="rgpdFeedback"></input><label for="feedback-check" id="iv7hwn" class="">Allow contact for debugging and feedback</label></div><div id="iahvhn" class="rgpd-checks"><input type="checkbox" checked id="nl-check" name="nl-check" class="rgpd-checks__check" v-on:change="(event) => setRgpd('nl', event.target.checked)" v-model="rgpdNL"></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://" id="i5p9p5" class="connector__card" :href="getHref(connector)" data-remove-href="true"><div id="ibphi6" class="button-bar__item__icon" :style="getConnectorStyle(connector)"></div><div id="iaoqw4" class="connector__description" v-text="connector.displayName">Login with <span href="" id="iz6g2i">Name</span><br id="ihgk46"/></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 id="iiau0s" 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 id="iimwvw"/></div></div><div id="isndui">This connector is about blablabla<br id="igsu87"/></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 id="i6qv1n" class="footer">
|
|
336
361
|
|
|
337
|
-
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" class="footer__item">Social & community</h3>
|
|
362
|
+
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" id="ik1iir" class="footer__item">Social & community</h3>
|
|
338
363
|
|
|
339
|
-
<a href="https://www.silex.me/" class="footer__item" target="_blank">About Silex, official website</a>
|
|
340
|
-
<a href="mailto:contact+silex-dashboard-footer@silex.me" class="footer__item" target="">Email the team</a>
|
|
341
|
-
<a href="https://short.silex.me/sponsors" class="footer__item" target="_blank">Sponsors</a>
|
|
342
|
-
<a href="https://short.silex.me/donate" class="footer__item" target="">Donate</a>
|
|
343
|
-
<a href="https://short.silex.me/community" class="footer__item" target="_blank">Community forum</a>
|
|
344
|
-
<a href="https://news.silex.me/forms/nfrm_weLJnLY5" class="footer__item" target="_blank">Newsletter</a>
|
|
345
|
-
<a href="https://events.silex.me/" class="footer__item" target="_blank">Meetups/ Events</a>
|
|
346
|
-
<a href="https://short.silex.me/mastodon" class="footer__item" target="_blank">Mastodon</a>
|
|
347
|
-
<a href="https://short.silex.me/lemmy" class="footer__item" target="_blank">Lemmy</a></div>
|
|
348
|
-
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" class="footer__item">Resources</h3>
|
|
364
|
+
<a href="https://www.silex.me/" id="is59uo" class="footer__item" target="_blank">About Silex, official website</a>
|
|
365
|
+
<a href="mailto:contact+silex-dashboard-footer@silex.me" id="is59uo" class="footer__item" target="">Email the team</a>
|
|
366
|
+
<a href="https://short.silex.me/sponsors" id="is59uo" class="footer__item" target="_blank">Sponsors</a>
|
|
367
|
+
<a href="https://short.silex.me/donate" id="is59uo" class="footer__item" target="">Donate</a>
|
|
368
|
+
<a href="https://short.silex.me/community" id="is59uo" class="footer__item" target="_blank">Community forum</a>
|
|
369
|
+
<a href="https://news.silex.me/forms/nfrm_weLJnLY5" id="is59uo" class="footer__item" target="_blank">Newsletter</a>
|
|
370
|
+
<a href="https://events.silex.me/" id="is59uo" class="footer__item" target="_blank">Meetups/ Events</a>
|
|
371
|
+
<a href="https://short.silex.me/mastodon" id="is59uo" class="footer__item" target="_blank">Mastodon</a>
|
|
372
|
+
<a href="https://short.silex.me/lemmy" id="is59uo" class="footer__item" target="_blank">Lemmy</a></div>
|
|
373
|
+
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" id="ik1iir" class="footer__item">Resources</h3>
|
|
349
374
|
|
|
350
|
-
<a href="https://short.silex.me/code" class="footer__item" target="_blank">Source code</a>
|
|
351
|
-
<a href="http://docs.silex.me/" class="footer__item" target="_blank">Documentation</a>
|
|
352
|
-
<a href="https://video.silex.me/my-library/video-playlists" class="footer__item" target="_blank">Videos</a>
|
|
353
|
-
<a href="https://short.silex.me/roadmap" class="footer__item" target="_blank">Roadmap</a>
|
|
354
|
-
<a href="https://short.silex.me/contribute" class="footer__item" target="_blank">Contribute</a></div>
|
|
355
|
-
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" class="footer__item">Articles and reviews</h3>
|
|
375
|
+
<a href="https://short.silex.me/code" id="is59uo" class="footer__item" target="_blank">Source code</a>
|
|
376
|
+
<a href="http://docs.silex.me/" id="is59uo" class="footer__item" target="_blank">Documentation</a>
|
|
377
|
+
<a href="https://video.silex.me/my-library/video-playlists" id="is59uo" class="footer__item" target="_blank">Videos</a>
|
|
378
|
+
<a href="https://short.silex.me/roadmap" id="is59uo" class="footer__item" target="_blank">Roadmap</a>
|
|
379
|
+
<a href="https://short.silex.me/contribute" id="is59uo" class="footer__item" target="_blank">Contribute</a></div>
|
|
380
|
+
<div id="iprzeh" style="min-height:100px;" class="footer__column"><h3 href="" id="ik1iir" class="footer__item">Articles and reviews</h3>
|
|
356
381
|
|
|
357
|
-
<a href="https://short.silex.me/alternatives" class="footer__item" target="_blank">Silex alternatives</a>
|
|
358
|
-
<a href="https://short.silex.me/reviews" class="footer__item" target="_blank">Silex reviews</a>
|
|
359
|
-
<a href="https://short.silex.me/press" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER></body>
|
|
382
|
+
<a href="https://short.silex.me/alternatives" id="is59uo" class="footer__item" target="_blank">Silex alternatives</a>
|
|
383
|
+
<a href="https://short.silex.me/reviews" id="is59uo" class="footer__item" target="_blank">Silex reviews</a>
|
|
384
|
+
<a href="https://short.silex.me/press" id="is59uo" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER></body>
|
|
360
385
|
</html>
|
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<meta name="generator" content="Silex v3.6.0-canary.1">
|
|
7
|
+
<link rel="stylesheet" href="/css/fork-923d814802e46c2d0db0f71c5c488c616ca0016f340d8dae66b263ba7f1143bc.css" />
|
|
8
|
+
<!-- font google -->
|
|
9
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" />
|
|
10
|
+
<link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;700&display=swap" rel="stylesheet">
|
|
11
|
+
|
|
12
|
+
<style>
|
|
13
|
+
.before-js > * {
|
|
14
|
+
visibility: hidden;
|
|
15
|
+
opacity: 0;
|
|
16
|
+
transition: opacity .5s ease;
|
|
17
|
+
}
|
|
18
|
+
.before-js[data-gjs-type] > *, /* This is only inside the editor, .before-js needs to be on the body */
|
|
19
|
+
.after-js > * {
|
|
20
|
+
visibility: visible;
|
|
21
|
+
opacity: 1;
|
|
22
|
+
}
|
|
23
|
+
.before-js:before {
|
|
24
|
+
content: 'Loading';
|
|
25
|
+
position: absolute;
|
|
26
|
+
top: 49%;
|
|
27
|
+
left: 49%;
|
|
28
|
+
}
|
|
29
|
+
.before-js[data-gjs-type]:before, /* This is only inside the editor, .before-js needs to be on the body */
|
|
30
|
+
.after-js:before {
|
|
31
|
+
content: none;
|
|
32
|
+
}
|
|
33
|
+
/*BTNS*/
|
|
34
|
+
.button, .pointer {
|
|
35
|
+
cursor: pointer!important}
|
|
36
|
+
.button{
|
|
37
|
+
min-width:110px;
|
|
38
|
+
}
|
|
39
|
+
details {
|
|
40
|
+
max-height: 2em;
|
|
41
|
+
display: block;
|
|
42
|
+
overflow: hidden;
|
|
43
|
+
transition: max-height .75s ease;
|
|
44
|
+
}
|
|
45
|
+
details[open] {
|
|
46
|
+
max-height: 40em;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/*BTNS*/
|
|
50
|
+
a {
|
|
51
|
+
text-decoration: none;
|
|
52
|
+
color:#8873FE;
|
|
53
|
+
}
|
|
54
|
+
a:hover {
|
|
55
|
+
text-decoration: underline;
|
|
56
|
+
}
|
|
57
|
+
.uppercase {
|
|
58
|
+
text-transform: uppercase;
|
|
59
|
+
}
|
|
60
|
+
.underline:hover{
|
|
61
|
+
text-decoration: underline;
|
|
62
|
+
text-decoration-thickness: from-font;
|
|
63
|
+
text-underline-position: under;
|
|
64
|
+
}
|
|
65
|
+
/*footer position*/
|
|
66
|
+
.main-min-height {
|
|
67
|
+
min-height: calc(100vh - 560px);
|
|
68
|
+
}
|
|
69
|
+
/*footer position*/
|
|
70
|
+
/*label*/
|
|
71
|
+
::placeholder {
|
|
72
|
+
color: #8873FE;
|
|
73
|
+
}
|
|
74
|
+
input:focus {
|
|
75
|
+
border: 2px solid #9977FE;
|
|
76
|
+
background-color:#ffffff;
|
|
77
|
+
}
|
|
78
|
+
:focus {
|
|
79
|
+
outline: none;
|
|
80
|
+
}
|
|
81
|
+
/*label*/
|
|
82
|
+
.skeleton-anim:after {
|
|
83
|
+
width: 100%;
|
|
84
|
+
height: 100%;
|
|
85
|
+
position: absolute;
|
|
86
|
+
top: 0;
|
|
87
|
+
left: 0;
|
|
88
|
+
content: "";
|
|
89
|
+
background:
|
|
90
|
+
linear-gradient(0.25turn, transparent, rgba(255,255,255,.75), transparent),
|
|
91
|
+
linear-gradient(transparent, transparent),
|
|
92
|
+
radial-gradient(38px circle at 19px 19px, transparent 50%, transparent 51%),
|
|
93
|
+
linear-gradient(transparent, transparent);
|
|
94
|
+
background-repeat: no-repeat;
|
|
95
|
+
background-size: 315px 250px, 315px 180px, 100px 100px, 225px 30px;
|
|
96
|
+
background-position: -315px 0, 0 0, 0px 190px, 50px 195px;
|
|
97
|
+
animation: loading 1.5s infinite;
|
|
98
|
+
}
|
|
99
|
+
@keyframes loading {
|
|
100
|
+
to {
|
|
101
|
+
background-position: 200% 0, 0 0, 0 190px, 50px 195px;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/*FX ANIMATIONS*/
|
|
105
|
+
/*scale-round-inside_pour-BTN*/
|
|
106
|
+
.fx-scale-round {
|
|
107
|
+
position:relative;
|
|
108
|
+
z-index: 10;
|
|
109
|
+
overflow: hidden;
|
|
110
|
+
}
|
|
111
|
+
.fx-scale-round::after {
|
|
112
|
+
content: "";
|
|
113
|
+
background: #ffffff;
|
|
114
|
+
position: absolute;
|
|
115
|
+
z-index: -1;
|
|
116
|
+
border-radius: 50%;
|
|
117
|
+
left: -50%;
|
|
118
|
+
right: -50%;
|
|
119
|
+
top: -100%;
|
|
120
|
+
bottom: -100%;
|
|
121
|
+
transform: scale(0, 0);
|
|
122
|
+
transform-origin: center bottom;
|
|
123
|
+
transition: all 0.3s ease-out;
|
|
124
|
+
}
|
|
125
|
+
.fx-scale-round:hover {
|
|
126
|
+
transform-origin: center bottom;
|
|
127
|
+
transform: scale(1.1);
|
|
128
|
+
transition: transform 0.2s cubic-bezier(0, -0.530, 0.405, 2.8);
|
|
129
|
+
}
|
|
130
|
+
.fx-scale-round:hover::after {
|
|
131
|
+
transform: scale(1, 1);
|
|
132
|
+
transition: transform 0.2s cubic-bezier(0, -0.530, 0.405, 2.8);
|
|
133
|
+
}
|
|
134
|
+
/*scale-round-inside_pour-BTN*/
|
|
135
|
+
/*scale*/
|
|
136
|
+
.fx-scale:hover {
|
|
137
|
+
transform-origin: center bottom;
|
|
138
|
+
transform: scale(1.1);
|
|
139
|
+
transition: transform 0.2s cubic-bezier(0, -0.530, 0.405, 2.8);
|
|
140
|
+
}
|
|
141
|
+
/*flash*/
|
|
142
|
+
.fx-flash:hover {
|
|
143
|
+
animation: flash-in .25s ;
|
|
144
|
+
}
|
|
145
|
+
/*flash-in animation*/
|
|
146
|
+
@keyframes flash-in{
|
|
147
|
+
0% {
|
|
148
|
+
opacity:.25;
|
|
149
|
+
}
|
|
150
|
+
100% {
|
|
151
|
+
opacity:1;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/*flash-in animation*/
|
|
155
|
+
/*FX ANIMATIONS*/
|
|
156
|
+
</style>
|
|
157
|
+
<script src="/js/vue.global.prod.js"></script>
|
|
158
|
+
<script src="/js/main.js"></script>
|
|
159
|
+
<script type="module">
|
|
160
|
+
const params = new URLSearchParams(window.location.search)
|
|
161
|
+
const CONNECTORS_PATH = '/connectors/'
|
|
162
|
+
const GITLAB_REPO = params.get('gitlabUrl')
|
|
163
|
+
const REDIRECT_PATH = `/fork/?gitlabUrl=${ GITLAB_REPO }`
|
|
164
|
+
|
|
165
|
+
window.addEventListener('load', () => {
|
|
166
|
+
const { createApp } = Vue
|
|
167
|
+
const { api, types } = silex
|
|
168
|
+
const { ConnectorType } = types
|
|
169
|
+
const { setServerUrl, getUser, logout } = api
|
|
170
|
+
|
|
171
|
+
const App = {
|
|
172
|
+
data() {
|
|
173
|
+
return {
|
|
174
|
+
loading: true,
|
|
175
|
+
loggedIn: false,
|
|
176
|
+
user: null,
|
|
177
|
+
|
|
178
|
+
message: '',
|
|
179
|
+
error: '',
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
|
|
183
|
+
async mounted() {
|
|
184
|
+
await this.init()
|
|
185
|
+
await this.initForkFromUrl()
|
|
186
|
+
},
|
|
187
|
+
|
|
188
|
+
methods: {
|
|
189
|
+
async init() {
|
|
190
|
+
try {
|
|
191
|
+
setServerUrl(window.location.origin)
|
|
192
|
+
|
|
193
|
+
const user = await getUser({ type: ConnectorType.STORAGE })
|
|
194
|
+
if (!user) {
|
|
195
|
+
this.openLogin()
|
|
196
|
+
return
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
user.picture = decodeURIComponent(user.picture).replace(/'/g, "\\'")
|
|
200
|
+
this.user = user
|
|
201
|
+
this.loggedIn = true
|
|
202
|
+
this.loading = false
|
|
203
|
+
} catch (error) {
|
|
204
|
+
this.loading = false
|
|
205
|
+
if (error.code === 401 || error.httpStatusCode === 401) {
|
|
206
|
+
this.openLogin()
|
|
207
|
+
} else {
|
|
208
|
+
this.updateStatus(error.message)
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
|
|
213
|
+
async initForkFromUrl() {
|
|
214
|
+
if (!GITLAB_REPO || !this.loggedIn) return
|
|
215
|
+
|
|
216
|
+
await this.forkWebsite(GITLAB_REPO)
|
|
217
|
+
},
|
|
218
|
+
|
|
219
|
+
async forkWebsite(gitlabUrl) {
|
|
220
|
+
try {
|
|
221
|
+
this.showLoading()
|
|
222
|
+
this.updateStatus('Cloning repository...')
|
|
223
|
+
|
|
224
|
+
const response = await fetch('/api/website/fork', {
|
|
225
|
+
method: 'POST',
|
|
226
|
+
headers: { 'Content-Type': 'application/json' },
|
|
227
|
+
body: JSON.stringify({ gitlabUrl }),
|
|
228
|
+
})
|
|
229
|
+
|
|
230
|
+
if (response.status === 401) {
|
|
231
|
+
this.openLogin()
|
|
232
|
+
return
|
|
233
|
+
}
|
|
234
|
+
if (!response.ok) {
|
|
235
|
+
let message = ''
|
|
236
|
+
try {
|
|
237
|
+
const body = await response.text()
|
|
238
|
+
message = JSON.parse(body).message
|
|
239
|
+
} catch (e) {}
|
|
240
|
+
|
|
241
|
+
console.error('ERROR:', {response, message})
|
|
242
|
+
throw new Error(
|
|
243
|
+
message
|
|
244
|
+
? `${message}\n\n(Error ${response.status})`
|
|
245
|
+
: `API ${response.status} ${response.statusText}`
|
|
246
|
+
)
|
|
247
|
+
}
|
|
248
|
+
const data = await response.json()
|
|
249
|
+
const websiteId = data.websiteId || data.id
|
|
250
|
+
|
|
251
|
+
this.updateStatus('Project ready')
|
|
252
|
+
this.showSuccess()
|
|
253
|
+
|
|
254
|
+
setTimeout(() => {
|
|
255
|
+
this.openEditor(websiteId)
|
|
256
|
+
}, 1500)
|
|
257
|
+
} catch (error) {
|
|
258
|
+
this.updateStatus(error.message || 'Fork failed')
|
|
259
|
+
}
|
|
260
|
+
},
|
|
261
|
+
|
|
262
|
+
updateStatus(message) {
|
|
263
|
+
this.message = message.replace(/\n/g, '<br>')
|
|
264
|
+
//const el = document.querySelector('.fork-status-title')
|
|
265
|
+
//if (el) el.textContent = message
|
|
266
|
+
//console.log('updateStatus', {message, el})
|
|
267
|
+
},
|
|
268
|
+
|
|
269
|
+
showLoading() {
|
|
270
|
+
document.querySelector('.fork-loading')?.style.setProperty('display', 'block')
|
|
271
|
+
document.querySelector('.fork-success')?.style.setProperty('display', 'none')
|
|
272
|
+
document.querySelector('.fork-error')?.style.setProperty('display', 'none')
|
|
273
|
+
},
|
|
274
|
+
|
|
275
|
+
showSuccess() {
|
|
276
|
+
document.querySelector('.fork-loading')?.style.setProperty('display', 'none')
|
|
277
|
+
document.querySelector('.fork-success')?.style.setProperty('display', 'block')
|
|
278
|
+
},
|
|
279
|
+
|
|
280
|
+
showError(message) {
|
|
281
|
+
throw new Error('Useless method, pls remove')
|
|
282
|
+
this.error = message
|
|
283
|
+
document.querySelector('.fork-loading')?.style.setProperty('display', 'none')
|
|
284
|
+
document.querySelector('.fork-error')?.style.setProperty('display', 'block')
|
|
285
|
+
|
|
286
|
+
const msg = document.querySelector('.error-message')
|
|
287
|
+
if (msg) msg.textContent = message
|
|
288
|
+
|
|
289
|
+
const backBtn = document.querySelector('.error-back-btn')
|
|
290
|
+
if (backBtn) {
|
|
291
|
+
backBtn.onclick = () => this.openLogin()
|
|
292
|
+
}
|
|
293
|
+
console.log({message, msg, backBtn})
|
|
294
|
+
},
|
|
295
|
+
|
|
296
|
+
openEditor(id) {
|
|
297
|
+
const params = new URLSearchParams(window.location.search)
|
|
298
|
+
const lang = params.get('lang') || 'en'
|
|
299
|
+
window.location.href =
|
|
300
|
+
`/?id=${id}&lang=${lang}&connectorId=${this.user.storage.connectorId}&forked=${GITLAB_REPO}`
|
|
301
|
+
},
|
|
302
|
+
|
|
303
|
+
openLogin() {
|
|
304
|
+
const path = `/en${CONNECTORS_PATH}?redirect=/en${REDIRECT_PATH}`
|
|
305
|
+
if (window.location.pathname !== path) {
|
|
306
|
+
window.location.href = path
|
|
307
|
+
}
|
|
308
|
+
},
|
|
309
|
+
|
|
310
|
+
async logout() {
|
|
311
|
+
await logout({
|
|
312
|
+
type: ConnectorType.STORAGE,
|
|
313
|
+
connectorId: this.user.storage.connectorId,
|
|
314
|
+
})
|
|
315
|
+
window.location.reload()
|
|
316
|
+
},
|
|
317
|
+
},
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
document
|
|
321
|
+
.querySelectorAll('[v-text], [v-html]')
|
|
322
|
+
.forEach(el => (el.innerText = ''))
|
|
323
|
+
|
|
324
|
+
const app = createApp(App)
|
|
325
|
+
app.mount('.app')
|
|
326
|
+
|
|
327
|
+
setTimeout(() => {
|
|
328
|
+
document.querySelector('.before-js')?.classList.add('after-js')
|
|
329
|
+
}, 100)
|
|
330
|
+
})
|
|
331
|
+
</script>
|
|
332
|
+
|
|
333
|
+
<title></title>
|
|
334
|
+
<link rel="icon" href="/assets/favicon-32x32.png" />
|
|
335
|
+
<meta name="og:title" property="og:title" content="Silex Dashboard"/>
|
|
336
|
+
<link href="https://fonts.googleapis.com" rel="preconnect" ><link href="https://fonts.googleapis.com/css2" rel="preconnect" crossorigin ><link href="https://fonts.googleapis.com/css2?family=Ubuntu&display=swap" rel="stylesheet" ></head>
|
|
337
|
+
|
|
338
|
+
<body id="ik0i-2" class="body loading app before-js"><HEADER id="igrg-2" class="menu-bar"><A href="/" id="igvu43-2"><img id="iel80b-2-2-2" src="/assets/picto-silex@3x.png" class="nav__logo"/></A><NAV id="i9jq-2" class="nav">
|
|
339
|
+
|
|
340
|
+
<a href="/" id="iels-2" class="nav__item uppercase fx-flash nav_item--active" target="">My Sites</a>
|
|
341
|
+
<a href="http://docs.silex.me/" id="iels-2" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Docs</a>
|
|
342
|
+
<a href="https://short.silex.me/community_en/" id="iels-2" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Forum</a>
|
|
343
|
+
<a href="https://short.silex.me/chat" id="iels-2" class="nav__item uppercase fx-flash nav_item--active" target="_blank">Chat</a></NAV>
|
|
344
|
+
|
|
345
|
+
<div id="i2red7-2" class="lang"><a href="/en" id="iciz-2" class="lang__item nav__item uppercase">EN</a></div>
|
|
346
|
+
<div id="i2red7-2" class="lang"><a href="/fr" id="iciz-2" class="lang__item nav__item uppercase">FR</a></div><div id="i24ew-2" class="user__wrapper pointer" v-if="user" v-on:click="showMenu = !showMenu"><div id="i5xsbd-2" class="user-icon__wrapper" v-if="user" v-show="!showMenu || user.storage.disableLogout"><div id="i5wlbq-2" class="user-icon__image" v-if="user" v-show="!showMenu || user.storage.disableLogout" :style="{ backgroundImage: `url('${user?.picture}')`, backgroundRepeat: 'no-repeat', backgroundSize: 'contain', }"></div></div><div id="ic9eoa-2" class="" v-show="showMenu && !user.storage.disableLogout" v-on:click="logout"><div id="igv1rf-2" class="nav__item">Logout</div></div></div></HEADER><HEADER id="iy8ax3-2" class="bg-silex-purpel"><div id="iisz8f-2" class="section-top text-centered text-white"><h1 id="ic31o-2" class="title-40" v-if="!empty">Forking Project...</h1><p id="iyex8-2" class="subtitle-16" v-if="!empty">Please wait while we create your fork</p></div></HEADER><MAIN id="iz63r-2" class="padding-normal main-min-height website-max-width margin-80"><div id="i7ej6j-2" class="flex-between box-message text-white" v-if="error"><h3 id="iv0eyi-2" class="box-message-text" v-html="error">Insert your text here</h3><div id="i4656n-2" class="pointer button-bar__item--link text-white" v-on:click="error = null"></div></div><div id="ilteie-2" class="flex-between box-message text-white" v-if="message"><h3 id="i2d31v-2" class="box-message-text" v-html="message">Insert your text here</h3><div id="i2urco-2" class="rounded pointer button-bar__item--link text-white" v-on:click="message = null"></div></div></MAIN><FOOTER id="ilzpl-2" class="footer">
|
|
347
|
+
|
|
348
|
+
<div id="isucae-2" style="min-height:100px;" class="footer__column"><h3 href="" id="ipa5zg-2" class="footer__item">Social & community</h3>
|
|
349
|
+
|
|
350
|
+
<a href="https://www.silex.me/" id="i0cyhf" class="footer__item" target="_blank">About Silex, official website</a>
|
|
351
|
+
<a href="mailto:contact+silex-dashboard-footer@silex.me" id="i0cyhf" class="footer__item" target="">Email the team</a>
|
|
352
|
+
<a href="https://short.silex.me/sponsors" id="i0cyhf" class="footer__item" target="_blank">Sponsors</a>
|
|
353
|
+
<a href="https://short.silex.me/donate" id="i0cyhf" class="footer__item" target="">Donate</a>
|
|
354
|
+
<a href="https://short.silex.me/community" id="i0cyhf" class="footer__item" target="_blank">Community forum</a>
|
|
355
|
+
<a href="https://news.silex.me/forms/nfrm_weLJnLY5" id="i0cyhf" class="footer__item" target="_blank">Newsletter</a>
|
|
356
|
+
<a href="https://events.silex.me/" id="i0cyhf" class="footer__item" target="_blank">Meetups/ Events</a>
|
|
357
|
+
<a href="https://short.silex.me/mastodon" id="i0cyhf" class="footer__item" target="_blank">Mastodon</a>
|
|
358
|
+
<a href="https://short.silex.me/lemmy" id="i0cyhf" class="footer__item" target="_blank">Lemmy</a></div>
|
|
359
|
+
<div id="isucae-2" style="min-height:100px;" class="footer__column"><h3 href="" id="ipa5zg-2" class="footer__item">Resources</h3>
|
|
360
|
+
|
|
361
|
+
<a href="https://short.silex.me/code" id="i0cyhf" class="footer__item" target="_blank">Source code</a>
|
|
362
|
+
<a href="http://docs.silex.me/" id="i0cyhf" class="footer__item" target="_blank">Documentation</a>
|
|
363
|
+
<a href="https://video.silex.me/my-library/video-playlists" id="i0cyhf" class="footer__item" target="_blank">Videos</a>
|
|
364
|
+
<a href="https://short.silex.me/roadmap" id="i0cyhf" class="footer__item" target="_blank">Roadmap</a>
|
|
365
|
+
<a href="https://short.silex.me/contribute" id="i0cyhf" class="footer__item" target="_blank">Contribute</a></div>
|
|
366
|
+
<div id="isucae-2" style="min-height:100px;" class="footer__column"><h3 href="" id="ipa5zg-2" class="footer__item">Articles and reviews</h3>
|
|
367
|
+
|
|
368
|
+
<a href="https://short.silex.me/alternatives" id="i0cyhf" class="footer__item" target="_blank">Silex alternatives</a>
|
|
369
|
+
<a href="https://short.silex.me/reviews" id="i0cyhf" class="footer__item" target="_blank">Silex reviews</a>
|
|
370
|
+
<a href="https://short.silex.me/press" id="i0cyhf" class="footer__item" target="_blank">Silex in the press</a></div></FOOTER></body>
|
|
371
|
+
</html>
|