underpost 2.7.83 → 2.7.91
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/.github/workflows/ghpkg.yml +41 -1
- package/.github/workflows/pwa-microservices-template.page.yml +54 -0
- package/.vscode/settings.json +7 -0
- package/CHANGELOG.md +64 -16
- package/bin/cron.js +47 -0
- package/bin/db.js +60 -7
- package/bin/deploy.js +345 -15
- package/bin/file.js +17 -1
- package/bin/index.js +1 -1
- package/bin/util.js +31 -1
- package/conf.js +18 -4
- package/docker-compose.yml +1 -1
- package/package.json +3 -3
- package/src/api/core/core.router.js +9 -9
- package/src/api/core/core.service.js +12 -4
- package/src/api/default/default.service.js +4 -4
- package/src/api/file/file.service.js +3 -3
- package/src/api/user/user.service.js +10 -8
- package/src/client/components/core/CommonJs.js +3 -0
- package/src/client/components/core/CssCore.js +30 -3
- package/src/client/components/core/Docs.js +110 -10
- package/src/client/components/core/LoadingAnimation.js +4 -2
- package/src/client/components/core/Modal.js +224 -22
- package/src/client/components/core/Panel.js +1 -1
- package/src/client/components/core/PanelForm.js +2 -1
- package/src/client/components/core/Responsive.js +34 -5
- package/src/client/components/core/RichText.js +4 -2
- package/src/client/components/core/WebComponent.js +44 -0
- package/src/client/components/core/Worker.js +13 -15
- package/src/client/public/default/plantuml/client-conf.svg +1 -1
- package/src/client/public/default/plantuml/client-schema.svg +1 -1
- package/src/client/public/default/plantuml/cron-conf.svg +1 -1
- package/src/client/public/default/plantuml/cron-schema.svg +1 -1
- package/src/client/public/default/plantuml/server-conf.svg +1 -1
- package/src/client/public/default/plantuml/server-schema.svg +1 -1
- package/src/client/public/default/plantuml/ssr-conf.svg +1 -1
- package/src/client/public/default/plantuml/ssr-schema.svg +1 -1
- package/src/client/public/default/site.webmanifest +69 -0
- package/src/client/ssr/components/body/CacheControl.js +1 -1
- package/src/client/ssr/components/head/Production.js +1 -0
- package/src/client/ssr/components/head/Pwa.js +146 -0
- package/src/client/ssr/components/head/Seo.js +14 -0
- package/src/client/ssr/pages/maintenance.js +14 -0
- package/src/client/ssr/pages/offline.js +21 -0
- package/src/client/sw/default.sw.js +4 -2
- package/src/db/DataBaseProvider.js +12 -1
- package/src/db/mongo/MongooseDB.js +0 -1
- package/src/runtime/lampp/Lampp.js +9 -9
- package/src/server/backup.js +82 -70
- package/src/server/client-build.js +46 -94
- package/src/server/conf.js +82 -18
- package/src/server/crypto.js +91 -0
- package/src/server/dns.js +48 -16
- package/src/server/network.js +94 -7
- package/src/server/proxy.js +27 -27
- package/src/server/runtime.js +4 -2
- package/src/server/ssl.js +2 -2
- package/src/client/ssr/offline/default.index.js +0 -31
- package/src/cron.js +0 -30
- package/src/server/cron.js +0 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="181px" preserveAspectRatio="none" style="width:409px;height:181px;background:#FFFFFF;" version="1.1" viewBox="0 0 409 181" width="409px" zoomAndPan="magnify"><defs/><g><rect fill="#F1F1F1" height="20.2969" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="88" x="10" y="95.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="56" x="15" y="110.4951">Default</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="81" y="110.4951"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="76" x2="76" y1="95.5" y2="115.7969"/><rect fill="none" height="20.2969" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="88" x="10" y="95.5"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="71" x="135" y="85"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="39" x="140" y="99.9951">head</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="189" y="99.9951"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="184" x2="184" y1="85" y2="105.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="135" x2="206" y1="105.2969" y2="105.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="39" x="140" y="120.292">body</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="189" y="120.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="184" x2="184" y1="105.2969" y2="125.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="71" x="135" y="85"/><rect fill="#F1F1F1" height="101.4844" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="106" x="267" y="10"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="27" x="272" y="24.9951">Seo</text><line style="stroke:#000000;stroke-width:1.0;" x1="267" x2="373" y1="30.2969" y2="30.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="28" x="272" y="45.292">Pwa</text><line style="stroke:#000000;stroke-width:1.0;" x1="267" x2="373" y1="50.5938" y2="50.5938"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="26" x="272" y="65.5889">Css</text><line style="stroke:#000000;stroke-width:1.0;" x1="267" x2="373" y1="70.8906" y2="70.8906"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="272" y="85.8857">DefaultScripts</text><line style="stroke:#000000;stroke-width:1.0;" x1="267" x2="373" y1="91.1875" y2="91.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75" x="272" y="106.1826">Production</text><rect fill="none" height="101.4844" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="106" x="267" y="10"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="154" x="243" y="129"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="94" x="248" y="143.9951">CacheControl</text><line style="stroke:#000000;stroke-width:1.0;" x1="243" x2="397" y1="149.2969" y2="149.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144" x="248" y="164.292">DefaultSplashScreen</text><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="154" x="243" y="129"/><path d="M194,94.5 L207,94.5 C224.5169,94.5 242.9373,90.6762 259.6851,85.5933 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M260.651,88.6205 L261.9554,84.8688 L258.7191,82.5661 L267.253,83.1785 L260.651,88.6205 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="194" cy="94.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M194,115.5 L207,115.5 C216.9946,115.5 235.8154,120.4794 255.2433,126.627 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M254.319,129.4949 L257.3942,127.3202 L256.1675,123.759 L262.4131,128.9377 L254.319,129.4949 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="194" cy="115.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M86,105.5 L99,105.5 C108.2448,105.5 118.1667,105.5 127.5755,105.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M127.5755,108.6026 L129.9024,105.5 L127.5755,102.3974 L135.332,105.5 L127.5755,108.6026 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="86" cy="105.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/></g></svg>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="126px" preserveAspectRatio="none" style="width:786px;height:126px;background:#FFFFFF;" version="1.1" viewBox="0 0 786 126" width="786px" zoomAndPan="magnify"><defs/><g><rect fill="#F1F1F1" height="43.2188" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="128" x="10" y="18"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="15" y="34.5332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38" x="95" y="34.5332">object</text><line style="stroke:#000000;stroke-width:1.0;" x1="90" x2="90" y1="18" y2="39.6094"/><line style="stroke:#000000;stroke-width:1.0;" x1="10" x2="138" y1="39.6094" y2="39.6094"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="70" x="15" y="56.1426">properties</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="95" y="56.1426"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="90" x2="90" y1="39.6094" y2="61.2188"/><rect fill="none" height="43.2188" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="128" x="10" y="18"/><rect fill="#F1F1F1" height="21.6094" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="81" x="175" y="39.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="49" x="180" y="56.0332">Default</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="239" y="56.0332"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="234" x2="234" y1="39.5" y2="61.1094"/><rect fill="none" height="21.6094" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="81" x="175" y="39.5"/><rect fill="#F1F1F1" height="43.2188" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="128" x="293" y="29"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="298" y="45.5332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38" x="378" y="45.5332">object</text><line style="stroke:#000000;stroke-width:1.0;" x1="373" x2="373" y1="29" y2="50.6094"/><line style="stroke:#000000;stroke-width:1.0;" x1="293" x2="421" y1="50.6094" y2="50.6094"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="70" x="298" y="67.1426">properties</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="378" y="67.1426"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="373" x2="373" y1="50.6094" y2="72.2188"/><rect fill="none" height="43.2188" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="128" x="293" y="29"/><rect fill="#F1F1F1" height="43.2188" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="67" x="458" y="40"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="34" x="463" y="56.5332">head</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="508" y="56.5332"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="503" x2="503" y1="40" y2="61.6094"/><line style="stroke:#000000;stroke-width:1.0;" x1="458" x2="525" y1="61.6094" y2="61.6094"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="463" y="78.1426">body</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="508" y="78.1426"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="503" x2="503" y1="61.6094" y2="83.2188"/><rect fill="none" height="43.2188" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="67" x="458" y="40"/><rect fill="#F1F1F1" height="43.2188" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="90" x="562" y="10"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="567" y="26.5332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33" x="614" y="26.5332">array</text><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="609" y1="10" y2="31.6094"/><line style="stroke:#000000;stroke-width:1.0;" x1="562" x2="652" y1="31.6094" y2="31.6094"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="37" x="567" y="48.1426">items</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="614" y="48.1426"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="609" y1="31.6094" y2="53.2188"/><rect fill="none" height="43.2188" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="90" x="562" y="10"/><rect fill="#F1F1F1" height="21.6094" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="85" x="689" y="31.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="694" y="48.0332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="35" x="734" y="48.0332">string</text><line style="stroke:#000000;stroke-width:1.0;" x1="729" x2="729" y1="31.5" y2="53.1094"/><rect fill="none" height="21.6094" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="85" x="689" y="31.5"/><rect fill="#F1F1F1" height="43.2188" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="90" x="562" y="71"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="567" y="87.5332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33" x="614" y="87.5332">array</text><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="609" y1="71" y2="92.6094"/><line style="stroke:#000000;stroke-width:1.0;" x1="562" x2="652" y1="92.6094" y2="92.6094"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="37" x="567" y="109.1426">items</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="614" y="109.1426"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="609" y1="92.6094" y2="114.2188"/><rect fill="none" height="43.2188" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="90" x="562" y="71"/><rect fill="#F1F1F1" height="21.6094" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="85" x="689" y="92.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="30" x="694" y="109.0332">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="35" x="734" y="109.0332">string</text><line style="stroke:#000000;stroke-width:1.0;" x1="729" x2="729" y1="92.5" y2="114.1094"/><rect fill="none" height="21.6094" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="85" x="689" y="92.5"/><path d="M640,42.5 L653,42.5 C662.2961,42.5 672.2155,42.5 681.7553,42.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M681.7553,45.5201 L684.0204,42.5 L681.7553,39.4799 L689.3056,42.5 L681.7553,45.5201 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="640" cy="42.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M513,50.5 L526,50.5 C535.4045,50.5 545.2657,49.2565 554.7344,47.4057 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M555.3753,50.403 L556.9824,46.925 L554.0935,44.4083 L562.2278,45.8034 L555.3753,50.403 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="513" cy="50.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M640,103.5 L653,103.5 C662.2961,103.5 672.2155,103.5 681.7553,103.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M681.7553,106.5201 L684.0204,103.5 L681.7553,100.4799 L689.3056,103.5 L681.7553,106.5201 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="640" cy="103.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M513,72.5 L526,72.5 C535.4312,72.5 545.3055,73.809 554.7789,75.7572 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M554.1042,78.7553 L557.0275,76.2632 L555.4535,72.759 L562.2743,77.4438 L554.1042,78.7553 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="513" cy="72.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M409,61.5 L422,61.5 C431.2651,61.5 441.2301,61.5 450.6263,61.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M450.6263,64.5925 L452.9456,61.5 L450.6263,58.4075 L458.3574,61.5 L450.6263,64.5925 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="409" cy="61.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M244,50.5 L257,50.5 C266.2687,50.5 276.0232,50.5 285.6525,50.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M285.6525,53.5736 L287.9577,50.5 L285.6525,47.4264 L293.3365,50.5 L285.6525,53.5736 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="244" cy="50.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M126,50.5 L139,50.5 C148.266,50.5 158.1675,50.5 167.6585,50.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M167.6585,53.5014 L169.9096,50.5 L167.6585,47.4986 L175.1621,50.5 L167.6585,53.5014 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="126" cy="50.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/></g></svg>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="121px" preserveAspectRatio="none" style="width:848px;height:121px;background:#FFFFFF;" version="1.1" viewBox="0 0 848 121" width="848px" zoomAndPan="magnify"><defs/><g><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="146" x="10" y="20"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="15" y="34.9951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="43" x="108" y="34.9951">object</text><line style="stroke:#000000;stroke-width:1.0;" x1="103" x2="103" y1="20" y2="40.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="10" x2="156" y1="40.2969" y2="40.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="83" x="15" y="55.292">properties</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="108" y="55.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="103" x2="103" y1="40.2969" y2="60.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="146" x="10" y="20"/><rect fill="#F1F1F1" height="20.2969" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="88" x="193" y="40.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="56" x="198" y="55.4951">Default</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="264" y="55.4951"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="259" x2="259" y1="40.5" y2="60.7969"/><rect fill="none" height="20.2969" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="88" x="193" y="40.5"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="146" x="318" y="30"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="323" y="44.9951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="43" x="416" y="44.9951">object</text><line style="stroke:#000000;stroke-width:1.0;" x1="411" x2="411" y1="30" y2="50.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="318" x2="464" y1="50.2969" y2="50.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="83" x="323" y="65.292">properties</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="416" y="65.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="411" x2="411" y1="50.2969" y2="70.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="146" x="318" y="30"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="71" x="501" y="40"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="39" x="506" y="54.9951">head</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="555" y="54.9951"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="550" x2="550" y1="40" y2="60.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="501" x2="572" y1="60.2969" y2="60.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="39" x="506" y="75.292">body</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="555" y="75.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="550" x2="550" y1="60.2969" y2="80.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="71" x="501" y="40"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="96" x="609" y="10"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="614" y="24.9951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33" x="667" y="24.9951">array</text><line style="stroke:#000000;stroke-width:1.0;" x1="662" x2="662" y1="10" y2="30.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="705" y1="30.2969" y2="30.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="43" x="614" y="45.292">items</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="667" y="45.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="662" x2="662" y1="30.2969" y2="50.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="96" x="609" y="10"/><rect fill="#F1F1F1" height="20.2969" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="94" x="742" y="30.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="747" y="45.4951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="39" x="792" y="45.4951">string</text><line style="stroke:#000000;stroke-width:1.0;" x1="787" x2="787" y1="30.5" y2="50.7969"/><rect fill="none" height="20.2969" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="94" x="742" y="30.5"/><rect fill="#F1F1F1" height="40.5938" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="96" x="609" y="69"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="614" y="83.9951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33" x="667" y="83.9951">array</text><line style="stroke:#000000;stroke-width:1.0;" x1="662" x2="662" y1="69" y2="89.2969"/><line style="stroke:#000000;stroke-width:1.0;" x1="609" x2="705" y1="89.2969" y2="89.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="43" x="614" y="104.292">items</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="12" x="667" y="104.292"> </text><line style="stroke:#000000;stroke-width:1.0;" x1="662" x2="662" y1="89.2969" y2="109.5938"/><rect fill="none" height="40.5938" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="96" x="609" y="69"/><rect fill="#F1F1F1" height="20.2969" rx="5" ry="5" style="stroke:#F1F1F1;stroke-width:1.5;" width="94" x="742" y="89.5"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="35" x="747" y="104.4951">type</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="39" x="792" y="104.4951">string</text><line style="stroke:#000000;stroke-width:1.0;" x1="787" x2="787" y1="89.5" y2="109.7969"/><rect fill="none" height="20.2969" rx="5" ry="5" style="stroke:#000000;stroke-width:1.5;" width="94" x="742" y="89.5"/><path d="M693,40.5 L706,40.5 C715.2674,40.5 725.1203,40.5 734.6708,40.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M734.6708,43.531 L736.9441,40.5 L734.6708,37.469 L742.2484,40.5 L734.6708,43.531 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="693" cy="40.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M560,49.5 L573,49.5 C582.3848,49.5 592.2184,48.3447 601.7089,46.604 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M602.3132,49.6129 L603.9656,46.1508 L601.1046,43.595 L609.2313,45.0933 L602.3132,49.6129 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="560" cy="49.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M693,99.5 L706,99.5 C715.2674,99.5 725.1203,99.5 734.6708,99.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M734.6708,102.531 L736.9441,99.5 L734.6708,96.469 L742.2484,99.5 L734.6708,102.531 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="693" cy="99.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M560,70.5 L573,70.5 C582.3848,70.5 592.2184,71.6553 601.7089,73.396 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M601.1046,76.405 L603.9656,73.8492 L602.3132,70.3871 L609.2313,74.9067 L601.1046,76.405 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="560" cy="70.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M452,60.5 L465,60.5 C474.2448,60.5 484.1667,60.5 493.5755,60.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M493.5755,63.6026 L495.9024,60.5 L493.5755,57.3974 L501.332,60.5 L493.5755,63.6026 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="452" cy="60.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M269,50.5 L282,50.5 C291.2896,50.5 301.0267,50.5 310.694,50.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M310.694,53.5913 L313.0124,50.5 L310.694,47.4087 L318.4221,50.5 L310.694,53.5913 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="269" cy="50.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/><path d="M144,50.5 L157,50.5 C166.2571,50.5 176.1205,50.5 185.6372,50.5 " fill="none" style="stroke:#000000;stroke-width:1.0;stroke-dasharray:3.0,3.0;"/><path d="M185.6372,53.5158 L187.899,50.5 L185.6372,47.4842 L193.1767,50.5 L185.6372,53.5158 " fill="#000000" style="stroke:#000000;stroke-width:1.0;"/><ellipse cx="144" cy="50.5" fill="#000000" rx="3" ry="3" style="stroke:#000000;stroke-width:1.0;"/></g></svg>
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Default",
|
|
3
|
+
"short_name": "Default",
|
|
4
|
+
"description": null,
|
|
5
|
+
"dir": "auto",
|
|
6
|
+
"lang": "en-US",
|
|
7
|
+
"display": "standalone",
|
|
8
|
+
"orientation": "any",
|
|
9
|
+
"scope": "/",
|
|
10
|
+
"start_url": "/?homescreen=1",
|
|
11
|
+
"background_color": "#fff",
|
|
12
|
+
"theme_color": "#fff",
|
|
13
|
+
"icons": [
|
|
14
|
+
{
|
|
15
|
+
"src": "/android-chrome-36x36.png",
|
|
16
|
+
"sizes": "36x36",
|
|
17
|
+
"type": "image/png",
|
|
18
|
+
"purpose": "any maskable"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"src": "/android-chrome-48x48.png",
|
|
22
|
+
"sizes": "48x48",
|
|
23
|
+
"type": "image/png",
|
|
24
|
+
"purpose": "any maskable"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"src": "/android-chrome-72x72.png",
|
|
28
|
+
"sizes": "72x72",
|
|
29
|
+
"type": "image/png",
|
|
30
|
+
"purpose": "any maskable"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"src": "/android-chrome-96x96.png",
|
|
34
|
+
"sizes": "96x96",
|
|
35
|
+
"type": "image/png",
|
|
36
|
+
"purpose": "any maskable"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"src": "/android-chrome-144x144.png",
|
|
40
|
+
"sizes": "144x144",
|
|
41
|
+
"type": "image/png",
|
|
42
|
+
"purpose": "any maskable"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"src": "/android-chrome-192x192.png",
|
|
46
|
+
"sizes": "192x192",
|
|
47
|
+
"type": "image/png",
|
|
48
|
+
"purpose": "any maskable"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"src": "/android-chrome-256x256.png",
|
|
52
|
+
"sizes": "256x256",
|
|
53
|
+
"type": "image/png",
|
|
54
|
+
"purpose": "any maskable"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"src": "/android-chrome-384x384.png",
|
|
58
|
+
"sizes": "384x384",
|
|
59
|
+
"type": "image/png",
|
|
60
|
+
"purpose": "any maskable"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"src": "/android-chrome-512x512.png",
|
|
64
|
+
"sizes": "512x512",
|
|
65
|
+
"type": "image/png",
|
|
66
|
+
"purpose": "any maskable"
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
@@ -109,6 +109,6 @@ SrrComponent = ({ ttiLoadTimeLimit }) => {
|
|
|
109
109
|
const CacheControl = ${CacheControl};
|
|
110
110
|
CacheControl({ ttiLoadTimeLimit: ${ttiLoadTimeLimit ? ttiLoadTimeLimit : 1000 * 70 * 1} });
|
|
111
111
|
</script>
|
|
112
|
-
<div class="clean-cache-container">v2.7.
|
|
112
|
+
<div class="clean-cache-container">v2.7.91</div>
|
|
113
113
|
`;
|
|
114
114
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
SrrComponent = () => html``;
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
SrrComponent = ({
|
|
2
|
+
title,
|
|
3
|
+
author,
|
|
4
|
+
keywords,
|
|
5
|
+
description,
|
|
6
|
+
themeColor,
|
|
7
|
+
canonicalURL,
|
|
8
|
+
ssrPath,
|
|
9
|
+
thumbnail,
|
|
10
|
+
pwaAssetsPath,
|
|
11
|
+
}) => html`
|
|
12
|
+
<link rel="manifest" href="${ssrPath}site.webmanifest" />
|
|
13
|
+
<link
|
|
14
|
+
rel="icon"
|
|
15
|
+
type="image/png"
|
|
16
|
+
sizes="16x16"
|
|
17
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}favicon-16x16.png"
|
|
18
|
+
/>
|
|
19
|
+
<link
|
|
20
|
+
rel="icon"
|
|
21
|
+
type="image/png"
|
|
22
|
+
sizes="32x32"
|
|
23
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}favicon-32x32.png"
|
|
24
|
+
/>
|
|
25
|
+
<!-- <link rel="icon" type="image/png" sizes="194x194" href="${ssrPath}${pwaAssetsPath !== undefined
|
|
26
|
+
? pwaAssetsPath
|
|
27
|
+
: 'assets/splash/'}favicon-194x194.png" /> -->
|
|
28
|
+
<!-- chrome -->
|
|
29
|
+
<link
|
|
30
|
+
rel="icon"
|
|
31
|
+
type="image/png"
|
|
32
|
+
sizes="36x36"
|
|
33
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-36x36.png"
|
|
34
|
+
/>
|
|
35
|
+
<link
|
|
36
|
+
rel="icon"
|
|
37
|
+
type="image/png"
|
|
38
|
+
sizes="48x48"
|
|
39
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-48x48.png"
|
|
40
|
+
/>
|
|
41
|
+
<link
|
|
42
|
+
rel="icon"
|
|
43
|
+
type="image/png"
|
|
44
|
+
sizes="72x72"
|
|
45
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-72x72.png"
|
|
46
|
+
/>
|
|
47
|
+
<link
|
|
48
|
+
rel="icon"
|
|
49
|
+
type="image/png"
|
|
50
|
+
sizes="96x96"
|
|
51
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-96x96.png"
|
|
52
|
+
/>
|
|
53
|
+
<link
|
|
54
|
+
rel="icon"
|
|
55
|
+
type="image/png"
|
|
56
|
+
sizes="144x144"
|
|
57
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-144x144.png"
|
|
58
|
+
/>
|
|
59
|
+
<link
|
|
60
|
+
rel="icon"
|
|
61
|
+
type="image/png"
|
|
62
|
+
sizes="256x256"
|
|
63
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-256x256.png"
|
|
64
|
+
/>
|
|
65
|
+
<link
|
|
66
|
+
rel="icon"
|
|
67
|
+
type="image/png"
|
|
68
|
+
sizes="384x384"
|
|
69
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-384x384.png"
|
|
70
|
+
/>
|
|
71
|
+
<link
|
|
72
|
+
rel="icon"
|
|
73
|
+
type="image/png"
|
|
74
|
+
sizes="512x512"
|
|
75
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-512x512.png"
|
|
76
|
+
/>
|
|
77
|
+
<!-- apple -->
|
|
78
|
+
<link
|
|
79
|
+
rel="apple-touch-icon"
|
|
80
|
+
sizes="180x180"
|
|
81
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}apple-touch-icon.png"
|
|
82
|
+
/>
|
|
83
|
+
<link
|
|
84
|
+
rel="mask-icon"
|
|
85
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}safari-pinned-tab.svg"
|
|
86
|
+
color="${themeColor}"
|
|
87
|
+
/>
|
|
88
|
+
<meta name="apple-mobile-web-app-title" content="${title}" />
|
|
89
|
+
<link
|
|
90
|
+
rel="apple-touch-icon"
|
|
91
|
+
type="image/png"
|
|
92
|
+
sizes="36x36"
|
|
93
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-36x36.png"
|
|
94
|
+
/>
|
|
95
|
+
<link
|
|
96
|
+
rel="apple-touch-icon"
|
|
97
|
+
type="image/png"
|
|
98
|
+
sizes="48x48"
|
|
99
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-48x48.png"
|
|
100
|
+
/>
|
|
101
|
+
<link
|
|
102
|
+
rel="apple-touch-icon"
|
|
103
|
+
type="image/png"
|
|
104
|
+
sizes="72x72"
|
|
105
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-72x72.png"
|
|
106
|
+
/>
|
|
107
|
+
<link
|
|
108
|
+
rel="apple-touch-icon"
|
|
109
|
+
type="image/png"
|
|
110
|
+
sizes="96x96"
|
|
111
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-96x96.png"
|
|
112
|
+
/>
|
|
113
|
+
<link
|
|
114
|
+
rel="apple-touch-icon"
|
|
115
|
+
type="image/png"
|
|
116
|
+
sizes="144x144"
|
|
117
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-144x144.png"
|
|
118
|
+
/>
|
|
119
|
+
<link
|
|
120
|
+
rel="apple-touch-icon"
|
|
121
|
+
type="image/png"
|
|
122
|
+
sizes="256x256"
|
|
123
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-256x256.png"
|
|
124
|
+
/>
|
|
125
|
+
<link
|
|
126
|
+
rel="apple-touch-icon"
|
|
127
|
+
type="image/png"
|
|
128
|
+
sizes="384x384"
|
|
129
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-384x384.png"
|
|
130
|
+
/>
|
|
131
|
+
<link
|
|
132
|
+
rel="apple-touch-icon"
|
|
133
|
+
type="image/png"
|
|
134
|
+
sizes="512x512"
|
|
135
|
+
href="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}android-chrome-512x512.png"
|
|
136
|
+
/>
|
|
137
|
+
<!-- microsoft -->
|
|
138
|
+
<meta name="msapplication-config" content="${ssrPath}browserconfig.xml" />
|
|
139
|
+
<meta name="application-name" content="${title}" />
|
|
140
|
+
<meta name="msapplication-TileColor" content="${themeColor}" />
|
|
141
|
+
<meta
|
|
142
|
+
name="msapplication-TileImage"
|
|
143
|
+
content="${ssrPath}${pwaAssetsPath !== undefined ? pwaAssetsPath : 'assets/splash/'}mstile-144x144.png"
|
|
144
|
+
/>
|
|
145
|
+
<meta name="theme-color" content="${themeColor}" />
|
|
146
|
+
`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
SrrComponent = ({ title, author, keywords, description, themeColor, ssrPath, canonicalURL, thumbnail }) => html`
|
|
2
|
+
<link rel="canonical" href="${canonicalURL}" />
|
|
3
|
+
|
|
4
|
+
<meta name="author" content="${author}" />
|
|
5
|
+
<meta name="keywords" content="${keywords.join(',')}" />
|
|
6
|
+
<meta name="description" content="${description}" />
|
|
7
|
+
<meta name="theme-color" content="${themeColor}" />
|
|
8
|
+
|
|
9
|
+
<meta property="og:title" content="${title}" />
|
|
10
|
+
<meta property="og:description" content="${description}" />
|
|
11
|
+
<meta property="og:image" content="${thumbnail}" />
|
|
12
|
+
<meta property="og:url" content="${canonicalURL}" />
|
|
13
|
+
<meta name="twitter:card" content="summary_large_image" />
|
|
14
|
+
`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { htmls, loggerFactory } from '../common/SsrCore.js';
|
|
2
|
+
import { Alert } from '../common/Alert.js';
|
|
3
|
+
import { Translate } from '../common/Translate.js';
|
|
4
|
+
import { Worker } from '../common/Worker.js';
|
|
5
|
+
/*imports*/
|
|
6
|
+
|
|
7
|
+
const logger = loggerFactory({ url: location.toString() });
|
|
8
|
+
|
|
9
|
+
window.onload = () =>
|
|
10
|
+
Worker.instance({
|
|
11
|
+
render: async () => {
|
|
12
|
+
htmls(`.page-render`, html`${await Alert.maintenance({ Translate })}`);
|
|
13
|
+
},
|
|
14
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { htmls, loggerFactory } from '../common/SsrCore.js';
|
|
2
|
+
import { Alert } from '../common/Alert.js';
|
|
3
|
+
import { Translate } from '../common/Translate.js';
|
|
4
|
+
import { Worker } from '../common/Worker.js';
|
|
5
|
+
/*imports*/
|
|
6
|
+
|
|
7
|
+
const logger = loggerFactory({ url: location.toString() });
|
|
8
|
+
|
|
9
|
+
window.onload = () =>
|
|
10
|
+
Worker.instance({
|
|
11
|
+
render: async () => {
|
|
12
|
+
window.ononline = async () => {
|
|
13
|
+
location.href = location.pathname.split('/')[1] ? `/${location.pathname.split('/')[1].split('.')[0]}` : '/';
|
|
14
|
+
};
|
|
15
|
+
window.onoffline = async () => {
|
|
16
|
+
htmls(`.page-render`, html`${await Alert.noInternet({ Translate })}`);
|
|
17
|
+
};
|
|
18
|
+
if (navigator.onLine && !location.hostname.match('localhost')) window.ononline();
|
|
19
|
+
else window.onoffline();
|
|
20
|
+
},
|
|
21
|
+
});
|
|
@@ -37,6 +37,8 @@ even while offline, can asynchronously save files and many other things)
|
|
|
37
37
|
|
|
38
38
|
const logger = loggerFactory(import.meta);
|
|
39
39
|
|
|
40
|
+
const PROXY_PATH = '/';
|
|
41
|
+
|
|
40
42
|
self.addEventListener('install', (event) => {
|
|
41
43
|
// Activate right away
|
|
42
44
|
self.skipWaiting();
|
|
@@ -180,8 +182,8 @@ self.addEventListener('fetch', (event) => {
|
|
|
180
182
|
|
|
181
183
|
logger.error('Fetch failed; returning offline page instead.', { error, path });
|
|
182
184
|
try {
|
|
183
|
-
const cache = await caches.open(
|
|
184
|
-
const cachedResponse = await cache.match(
|
|
185
|
+
const cache = await caches.open(`${PROXY_PATH}offline.html`);
|
|
186
|
+
const cachedResponse = await cache.match(`${PROXY_PATH}offline.html`);
|
|
185
187
|
return cachedResponse;
|
|
186
188
|
} catch (error) {
|
|
187
189
|
logger.error('Error opening cache for offline page', { error, path });
|
|
@@ -18,7 +18,18 @@ const DataBaseProvider = {
|
|
|
18
18
|
case 'mongoose':
|
|
19
19
|
{
|
|
20
20
|
const conn = await MongooseDB.connect(db.host, db.name);
|
|
21
|
-
this.instance[`${host}${path}`][db.provider] =
|
|
21
|
+
this.instance[`${host}${path}`][db.provider] = {
|
|
22
|
+
models: await MongooseDB.loadModels({ conn, apis }),
|
|
23
|
+
connection: conn,
|
|
24
|
+
close: async () => {
|
|
25
|
+
return await new Promise((resolve) => {
|
|
26
|
+
DataBaseProvider.instance[`${host}${path}`][db.provider].connection.close().then(() => {
|
|
27
|
+
// logger.info('Mongoose connection is disconnected', db);
|
|
28
|
+
return resolve();
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
},
|
|
32
|
+
};
|
|
22
33
|
}
|
|
23
34
|
break;
|
|
24
35
|
default:
|
|
@@ -90,17 +90,17 @@ const Lampp = {
|
|
|
90
90
|
`mkdir /www && \\` +
|
|
91
91
|
`ln -s /www /opt/lampp/htdocs`,
|
|
92
92
|
);
|
|
93
|
-
|
|
94
|
-
if (fs.existsSync(`/opt/lampp/logs/access_log`))
|
|
95
|
-
fs.copySync(`/opt/lampp/logs/access_log`, `/opt/lampp/logs/access.log`);
|
|
96
|
-
if (fs.existsSync(`/opt/lampp/logs/error_log`))
|
|
97
|
-
fs.copySync(`/opt/lampp/logs/error_log`, `/opt/lampp/logs/error.log`);
|
|
98
|
-
if (fs.existsSync(`/opt/lampp/logs/php_error_log`))
|
|
99
|
-
fs.copySync(`/opt/lampp/logs/php_error_log`, `/opt/lampp/logs/php_error.log`);
|
|
100
|
-
if (fs.existsSync(`/opt/lampp/logs/ssl_request_log`))
|
|
101
|
-
fs.copySync(`/opt/lampp/logs/ssl_request_log`, `/opt/lampp/logs/ssl_request.log`);
|
|
102
93
|
}
|
|
103
94
|
|
|
95
|
+
if (fs.existsSync(`/opt/lampp/logs/access_log`))
|
|
96
|
+
fs.copySync(`/opt/lampp/logs/access_log`, `/opt/lampp/logs/access.log`);
|
|
97
|
+
if (fs.existsSync(`/opt/lampp/logs/error_log`))
|
|
98
|
+
fs.copySync(`/opt/lampp/logs/error_log`, `/opt/lampp/logs/error.log`);
|
|
99
|
+
if (fs.existsSync(`/opt/lampp/logs/php_error_log`))
|
|
100
|
+
fs.copySync(`/opt/lampp/logs/php_error_log`, `/opt/lampp/logs/php_error.log`);
|
|
101
|
+
if (fs.existsSync(`/opt/lampp/logs/ssl_request_log`))
|
|
102
|
+
fs.copySync(`/opt/lampp/logs/ssl_request_log`, `/opt/lampp/logs/ssl_request.log`);
|
|
103
|
+
|
|
104
104
|
await Lampp.initService({ daemon: true });
|
|
105
105
|
}
|
|
106
106
|
|