assets: Run ts-standard

This commit is contained in:
Tom Wiesing 2023-12-02 09:09:28 +01:00
parent ef4ed86bc2
commit 78976d0179
No known key found for this signature in database
27 changed files with 155 additions and 157 deletions

File diff suppressed because one or more lines are too long

View file

@ -12,30 +12,30 @@ const Public = "/⛰/"
// AssetsDefault contains assets for the 'Default' entrypoint. // AssetsDefault contains assets for the 'Default' entrypoint.
var AssetsDefault = Assets{ var AssetsDefault = Assets{
Scripts: `<script type="module" src="/⛰/Default.3fbac1ee.js"></script><script src="/⛰/Default.566ff7d3.js" nomodule defer></script><script type="module" src="/⛰/Default.68829c56.js"></script><script src="/⛰/Default.5dd67eb3.js" nomodule defer></script>`, Scripts: `<script type="module" src="/⛰/Default.f6deb600.js"></script><script src="/⛰/Default.93529533.js" nomodule defer></script><script type="module" src="/⛰/Default.68829c56.js"></script><script src="/⛰/Default.5dd67eb3.js" nomodule defer></script>`,
Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Default.749670b3.css">`, Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Default.749670b3.css">`,
} }
// AssetsUser contains assets for the 'User' entrypoint. // AssetsUser contains assets for the 'User' entrypoint.
var AssetsUser = Assets{ var AssetsUser = Assets{
Scripts: `<script type="module" src="/⛰/Default.3fbac1ee.js"></script><script src="/⛰/Default.566ff7d3.js" nomodule defer></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script src="/⛰/User.d3b2edc7.js" nomodule defer></script>`, Scripts: `<script type="module" src="/⛰/Default.f6deb600.js"></script><script src="/⛰/Default.93529533.js" nomodule defer></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script src="/⛰/User.d3b2edc7.js" nomodule defer></script>`,
Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css">`, Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css">`,
} }
// AssetsAdmin contains assets for the 'Admin' entrypoint. // AssetsAdmin contains assets for the 'Admin' entrypoint.
var AssetsAdmin = Assets{ var AssetsAdmin = Assets{
Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Default.3fbac1ee.js"></script><script src="/⛰/Default.566ff7d3.js" nomodule defer></script><script type="module" src="/⛰/Admin.2a36863a.js"></script><script src="/⛰/Admin.f197eb04.js" nomodule defer></script>`, Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Default.f6deb600.js"></script><script src="/⛰/Default.93529533.js" nomodule defer></script><script type="module" src="/⛰/Admin.508b8772.js"></script><script src="/⛰/Admin.d73ed858.js" nomodule defer></script>`,
Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css">`, Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css">`,
} }
// AssetsAdminProvision contains assets for the 'AdminProvision' entrypoint. // AssetsAdminProvision contains assets for the 'AdminProvision' entrypoint.
var AssetsAdminProvision = Assets{ var AssetsAdminProvision = Assets{
Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script nomodule defer src="/⛰/Admin.f197eb04.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Admin.2a36863a.js"></script><script type="module" src="/⛰/Default.3fbac1ee.js"></script><script src="/⛰/Default.566ff7d3.js" nomodule defer></script><script type="module" src="/⛰/AdminProvision.994883f5.js"></script><script src="/⛰/AdminProvision.5f2c7fe4.js" nomodule defer></script>`, Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script nomodule defer src="/⛰/Admin.d73ed858.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Admin.508b8772.js"></script><script type="module" src="/⛰/Default.f6deb600.js"></script><script src="/⛰/Default.93529533.js" nomodule defer></script><script type="module" src="/⛰/AdminProvision.994883f5.js"></script><script src="/⛰/AdminProvision.5f2c7fe4.js" nomodule defer></script>`,
Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/AdminProvision.8569d237.css">`, Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/AdminProvision.8569d237.css">`,
} }
// AssetsAdminRebuild contains assets for the 'AdminRebuild' entrypoint. // AssetsAdminRebuild contains assets for the 'AdminRebuild' entrypoint.
var AssetsAdminRebuild = Assets{ var AssetsAdminRebuild = Assets{
Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script nomodule defer src="/⛰/Admin.f197eb04.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Admin.2a36863a.js"></script><script type="module" src="/⛰/Default.3fbac1ee.js"></script><script src="/⛰/Default.566ff7d3.js" nomodule defer></script><script type="module" src="/⛰/AdminRebuild.5b253105.js"></script><script src="/⛰/AdminRebuild.bd32e5c4.js" nomodule defer></script>`, Scripts: `<script nomodule defer src="/⛰/User.d3b2edc7.js"></script><script nomodule defer src="/⛰/Admin.d73ed858.js"></script><script type="module" src="/⛰/User.67ac1e81.js"></script><script type="module" src="/⛰/Admin.508b8772.js"></script><script type="module" src="/⛰/Default.f6deb600.js"></script><script src="/⛰/Default.93529533.js" nomodule defer></script><script type="module" src="/⛰/AdminRebuild.5b253105.js"></script><script src="/⛰/AdminRebuild.bd32e5c4.js" nomodule defer></script>`,
Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/AdminRebuild.e554824e.css">`, Styles: `<link rel="stylesheet" href="/⛰/Default.ed052f6d.css"><link rel="stylesheet" href="/⛰/Admin.d1020143.css"><link rel="stylesheet" href="/⛰/User.72760bc7.css"><link rel="stylesheet" href="/⛰/User.1664d889.css"><link rel="stylesheet" href="/⛰/Admin.9235a6f6.css"><link rel="stylesheet" href="/⛰/AdminRebuild.e554824e.css">`,
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,2 +0,0 @@
const e="onorientationchange"in window?"orientationchange":"resize";document.querySelectorAll(".pure-toggle-menu").forEach(t=>{let n=t.querySelector(".toggle");if(!n){console.warn("'.pure-toggle-menu' without '.toggle'");return}let o=()=>{t.classList.toggle("closed"),n.classList.toggle("x")};n.addEventListener("click",e=>{e.preventDefault(),o()}),window.addEventListener(e,()=>{t.classList.contains("closed")||o()})});
//# sourceMappingURL=Default.3fbac1ee.js.map

View file

@ -1 +0,0 @@
{"mappings":"AEEA,MAAM,EAAuB,wBAAyB,OAAU,oBAAsB,SAEtF,SAAS,gBAAA,CAAiB,qBAAqB,OAAA,CAAQ,AAAC,IACpD,IAAM,EAAS,EAAK,aAAA,CAAc,WAClC,GAAI,CAAC,EAAQ,CACT,QAAQ,IAAA,CAAK,yCACb,MACJ,CAEA,IAAM,EAAa,KACf,EAAK,SAAA,CAAU,MAAA,CAAO,UACtB,EAAO,SAAA,CAAU,MAAA,CAAO,IAC5B,EAEA,EAAO,gBAAA,CAAiB,QAAS,AAAC,IAC9B,EAAE,cAAF,GACA,GACJ,GAEA,OAAO,gBAAA,CAAiB,EAAqB,KACrC,EAAK,SAAA,CAAU,QAAA,CAAS,WAC5B,GACJ,EACJ","sources":["<anon>","src/base/index.ts","src/lib/pure-toggle-menu/index.ts"],"sourcesContent":["\n\n\nconst $c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT = \"onorientationchange\" in window ? \"orientationchange\" : \"resize\";\ndocument.querySelectorAll(\".pure-toggle-menu\").forEach((menu)=>{\n const toggle = menu.querySelector(\".toggle\");\n if (!toggle) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n const toggleMenu = ()=>{\n menu.classList.toggle(\"closed\");\n toggle.classList.toggle(\"x\");\n };\n toggle.addEventListener(\"click\", (e)=>{\n e.preventDefault();\n toggleMenu();\n });\n window.addEventListener($c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT, ()=>{\n if (menu.classList.contains(\"closed\")) return;\n toggleMenu();\n });\n});\n\n\n\n\n\n//# sourceMappingURL=Default.3fbac1ee.js.map\n","import 'purecss/build/pure.css'\nimport 'purecss/build/grids-responsive.css'\n\nimport '~/src/lib/pure-toggle-menu'\nimport './index.css'","import './index.css';\n\nconst WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize';\n\ndocument.querySelectorAll('.pure-toggle-menu').forEach((menu) => {\n const toggle = menu.querySelector('.toggle');\n if (!toggle) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n\n const toggleMenu = () => {\n menu.classList.toggle('closed');\n toggle.classList.toggle('x');\n };\n\n toggle.addEventListener('click', (e) => {\n e.preventDefault();\n toggleMenu();\n });\n\n window.addEventListener(WINDOW_CHANGE_EVENT, () => {\n if (menu.classList.contains('closed')) return;\n toggleMenu();\n });\n});"],"names":["$c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT","window","document","querySelectorAll","forEach","menu","toggle","querySelector","console","warn","toggleMenu","classList","addEventListener","e","preventDefault","contains"],"version":3,"file":"Default.3fbac1ee.js.map","sourceRoot":"../"}

View file

@ -1,2 +0,0 @@
!function(){let e="onorientationchange"in window?"orientationchange":"resize";document.querySelectorAll(".pure-toggle-menu").forEach(t=>{let n=t.querySelector(".toggle");if(!n){console.warn("'.pure-toggle-menu' without '.toggle'");return}let o=()=>{t.classList.toggle("closed"),n.classList.toggle("x")};n.addEventListener("click",e=>{e.preventDefault(),o()}),window.addEventListener(e,()=>{t.classList.contains("closed")||o()})})}();
//# sourceMappingURL=Default.566ff7d3.js.map

View file

@ -1 +0,0 @@
{"mappings":"C,A,WEEA,IAAM,EAAuB,wBAAyB,OAAU,oBAAsB,SAEtF,SAAS,gBAAA,CAAiB,qBAAqB,OAAA,CAAQ,AAAC,IACpD,IAAM,EAAS,EAAK,aAAA,CAAc,WAClC,GAAI,CAAC,EAAQ,CACT,QAAQ,IAAA,CAAK,yCACb,MACJ,CAEA,IAAM,EAAa,KACf,EAAK,SAAA,CAAU,MAAA,CAAO,UACtB,EAAO,SAAA,CAAU,MAAA,CAAO,IAC5B,EAEA,EAAO,gBAAA,CAAiB,QAAS,AAAC,IAC9B,EAAE,cAAF,GACA,GACJ,GAEA,OAAO,gBAAA,CAAiB,EAAqB,KACrC,EAAK,SAAA,CAAU,QAAA,CAAS,WAC5B,GACJ,EACJ,E","sources":["<anon>","src/base/index.ts","src/lib/pure-toggle-menu/index.ts"],"sourcesContent":["(function () {\n\n\n\nconst $20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT = \"onorientationchange\" in window ? \"orientationchange\" : \"resize\";\ndocument.querySelectorAll(\".pure-toggle-menu\").forEach((menu)=>{\n const toggle = menu.querySelector(\".toggle\");\n if (!toggle) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n const toggleMenu = ()=>{\n menu.classList.toggle(\"closed\");\n toggle.classList.toggle(\"x\");\n };\n toggle.addEventListener(\"click\", (e)=>{\n e.preventDefault();\n toggleMenu();\n });\n window.addEventListener($20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT, ()=>{\n if (menu.classList.contains(\"closed\")) return;\n toggleMenu();\n });\n});\n\n\n\n\n})();\n//# sourceMappingURL=Default.566ff7d3.js.map\n","import 'purecss/build/pure.css'\nimport 'purecss/build/grids-responsive.css'\n\nimport '~/src/lib/pure-toggle-menu'\nimport './index.css'","import './index.css';\n\nconst WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize';\n\ndocument.querySelectorAll('.pure-toggle-menu').forEach((menu) => {\n const toggle = menu.querySelector('.toggle');\n if (!toggle) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n\n const toggleMenu = () => {\n menu.classList.toggle('closed');\n toggle.classList.toggle('x');\n };\n\n toggle.addEventListener('click', (e) => {\n e.preventDefault();\n toggleMenu();\n });\n\n window.addEventListener(WINDOW_CHANGE_EVENT, () => {\n if (menu.classList.contains('closed')) return;\n toggleMenu();\n });\n});"],"names":["$20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT","window","document","querySelectorAll","forEach","menu","toggle","querySelector","console","warn","toggleMenu","classList","addEventListener","e","preventDefault","contains"],"version":3,"file":"Default.566ff7d3.js.map","sourceRoot":"../"}

View file

@ -0,0 +1,2 @@
!function(){let e="onorientationchange"in window?"orientationchange":"resize";document.querySelectorAll(".pure-toggle-menu").forEach(t=>{let n=t.querySelector(".toggle");if(null==n){console.warn("'.pure-toggle-menu' without '.toggle'");return}let o=()=>{t.classList.toggle("closed"),n.classList.toggle("x")};n.addEventListener("click",e=>{e.preventDefault(),o()}),window.addEventListener(e,()=>{t.classList.contains("closed")||o()})})}();
//# sourceMappingURL=Default.93529533.js.map

View file

@ -0,0 +1 @@
{"mappings":"C,A,WEEA,IAAM,EAAuB,wBAAyB,OAAU,oBAAsB,SAEtF,SAAS,gBAAA,CAAiB,qBAAqB,OAAA,CAAQ,AAAC,IACtD,IAAM,EAAS,EAAK,aAAA,CAAc,WAClC,GAAI,AAAU,MAAV,EAAgB,CAClB,QAAQ,IAAA,CAAK,yCACb,MACF,CAEA,IAAM,EAAa,KACjB,EAAK,SAAA,CAAU,MAAA,CAAO,UACtB,EAAO,SAAA,CAAU,MAAA,CAAO,IAC1B,EAEA,EAAO,gBAAA,CAAiB,QAAS,AAAC,IAChC,EAAE,cAAF,GACA,GACF,GAEA,OAAO,gBAAA,CAAiB,EAAqB,KACvC,EAAK,SAAA,CAAU,QAAA,CAAS,WAC5B,GACF,EACF,E","sources":["<anon>","src/base/index.ts","src/lib/pure-toggle-menu/index.ts"],"sourcesContent":["(function () {\n\n\n\nconst $20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT = \"onorientationchange\" in window ? \"orientationchange\" : \"resize\";\ndocument.querySelectorAll(\".pure-toggle-menu\").forEach((menu)=>{\n const toggle = menu.querySelector(\".toggle\");\n if (toggle == null) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n const toggleMenu = ()=>{\n menu.classList.toggle(\"closed\");\n toggle.classList.toggle(\"x\");\n };\n toggle.addEventListener(\"click\", (e)=>{\n e.preventDefault();\n toggleMenu();\n });\n window.addEventListener($20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT, ()=>{\n if (menu.classList.contains(\"closed\")) return;\n toggleMenu();\n });\n});\n\n\n\n\n})();\n//# sourceMappingURL=Default.93529533.js.map\n","import 'purecss/build/pure.css'\nimport 'purecss/build/grids-responsive.css'\n\nimport '~/src/lib/pure-toggle-menu'\nimport './index.css'\n","import './index.css'\n\nconst WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize'\n\ndocument.querySelectorAll('.pure-toggle-menu').forEach((menu) => {\n const toggle = menu.querySelector('.toggle')\n if (toggle == null) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\")\n return\n }\n\n const toggleMenu = (): void => {\n menu.classList.toggle('closed')\n toggle.classList.toggle('x')\n }\n\n toggle.addEventListener('click', (e) => {\n e.preventDefault()\n toggleMenu()\n })\n\n window.addEventListener(WINDOW_CHANGE_EVENT, () => {\n if (menu.classList.contains('closed')) return\n toggleMenu()\n })\n})\n"],"names":["$20c5c1843a87be9e$var$WINDOW_CHANGE_EVENT","window","document","querySelectorAll","forEach","menu","toggle","querySelector","console","warn","toggleMenu","classList","addEventListener","e","preventDefault","contains"],"version":3,"file":"Default.93529533.js.map","sourceRoot":"../"}

View file

@ -0,0 +1,2 @@
const e="onorientationchange"in window?"orientationchange":"resize";document.querySelectorAll(".pure-toggle-menu").forEach(t=>{let n=t.querySelector(".toggle");if(null==n){console.warn("'.pure-toggle-menu' without '.toggle'");return}let o=()=>{t.classList.toggle("closed"),n.classList.toggle("x")};n.addEventListener("click",e=>{e.preventDefault(),o()}),window.addEventListener(e,()=>{t.classList.contains("closed")||o()})});
//# sourceMappingURL=Default.f6deb600.js.map

View file

@ -0,0 +1 @@
{"mappings":"AEEA,MAAM,EAAuB,wBAAyB,OAAU,oBAAsB,SAEtF,SAAS,gBAAA,CAAiB,qBAAqB,OAAA,CAAQ,AAAC,IACtD,IAAM,EAAS,EAAK,aAAA,CAAc,WAClC,GAAI,AAAU,MAAV,EAAgB,CAClB,QAAQ,IAAA,CAAK,yCACb,MACF,CAEA,IAAM,EAAa,KACjB,EAAK,SAAA,CAAU,MAAA,CAAO,UACtB,EAAO,SAAA,CAAU,MAAA,CAAO,IAC1B,EAEA,EAAO,gBAAA,CAAiB,QAAS,AAAC,IAChC,EAAE,cAAF,GACA,GACF,GAEA,OAAO,gBAAA,CAAiB,EAAqB,KACvC,EAAK,SAAA,CAAU,QAAA,CAAS,WAC5B,GACF,EACF","sources":["<anon>","src/base/index.ts","src/lib/pure-toggle-menu/index.ts"],"sourcesContent":["\n\n\nconst $c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT = \"onorientationchange\" in window ? \"orientationchange\" : \"resize\";\ndocument.querySelectorAll(\".pure-toggle-menu\").forEach((menu)=>{\n const toggle = menu.querySelector(\".toggle\");\n if (toggle == null) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\");\n return;\n }\n const toggleMenu = ()=>{\n menu.classList.toggle(\"closed\");\n toggle.classList.toggle(\"x\");\n };\n toggle.addEventListener(\"click\", (e)=>{\n e.preventDefault();\n toggleMenu();\n });\n window.addEventListener($c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT, ()=>{\n if (menu.classList.contains(\"closed\")) return;\n toggleMenu();\n });\n});\n\n\n\n\n\n//# sourceMappingURL=Default.f6deb600.js.map\n","import 'purecss/build/pure.css'\nimport 'purecss/build/grids-responsive.css'\n\nimport '~/src/lib/pure-toggle-menu'\nimport './index.css'\n","import './index.css'\n\nconst WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize'\n\ndocument.querySelectorAll('.pure-toggle-menu').forEach((menu) => {\n const toggle = menu.querySelector('.toggle')\n if (toggle == null) {\n console.warn(\"'.pure-toggle-menu' without '.toggle'\")\n return\n }\n\n const toggleMenu = (): void => {\n menu.classList.toggle('closed')\n toggle.classList.toggle('x')\n }\n\n toggle.addEventListener('click', (e) => {\n e.preventDefault()\n toggleMenu()\n })\n\n window.addEventListener(WINDOW_CHANGE_EVENT, () => {\n if (menu.classList.contains('closed')) return\n toggleMenu()\n })\n})\n"],"names":["$c9fa5a8be4dbc78e$var$WINDOW_CHANGE_EVENT","window","document","querySelectorAll","forEach","menu","toggle","querySelector","console","warn","toggleMenu","classList","addEventListener","e","preventDefault","contains"],"version":3,"file":"Default.f6deb600.js.map","sourceRoot":"../"}

View file

@ -2,4 +2,4 @@ import 'purecss/build/pure.css'
import 'purecss/build/grids-responsive.css' import 'purecss/build/grids-responsive.css'
import '~/src/lib/pure-toggle-menu' import '~/src/lib/pure-toggle-menu'
import './index.css' import './index.css'

View file

@ -14,11 +14,11 @@ const iipserver = document.getElementById('iipserver') as HTMLInputElement
system.addEventListener('submit', (evt) => { system.addEventListener('submit', (evt) => {
evt.preventDefault() evt.preventDefault()
const flavorElement = document.querySelector('input[name="flavor"]:checked'); const flavorElement = document.querySelector('input[name="flavor"]:checked')
const flavor = (flavorElement instanceof HTMLInputElement) ? flavorElement.value : ""; const flavor = (flavorElement instanceof HTMLInputElement) ? flavorElement.value : ''
Provision({ Provision({
Slug: slug.value, Slug: slug.value,
Flavor: flavor, Flavor: flavor,
System: { PHP: php.value, IIPServer: iipserver.checked, OpCacheDevelopment: opcacheDevelopment.checked, ContentSecurityPolicy: contentSecurityPolicy.value } System: { PHP: php.value, IIPServer: iipserver.checked, OpCacheDevelopment: opcacheDevelopment.checked, ContentSecurityPolicy: contentSecurityPolicy.value }
}) })

View file

@ -1,86 +1,85 @@
/** @file provides a list of websocket calls supported by the backend */ /** @file provides a list of websocket calls supported by the backend */
import type { CallSpec } from "."; import type { CallSpec } from '.'
/** Backup backups everything */ /** Backup backups everything */
export function Backup(): CallSpec { export function Backup (): CallSpec {
return { return {
'call': 'backup', call: 'backup',
'params': [], params: []
} }
} }
type ProvisionParams = { interface ProvisionParams {
Slug: string; Slug: string
Flavor?: "Drupal 10" | "Drupal 9", Flavor?: 'Drupal 10' | 'Drupal 9'
IIPServer?: string, IIPServer?: string
System: SystemParams System: SystemParams
} }
type SystemParams = { interface SystemParams {
PHP: "Default (8.1)" | "8.0" | "8.1" | "8.2", PHP: 'Default (8.1)' | '8.0' | '8.1' | '8.2'
OpCacheDevelopment: boolean, OpCacheDevelopment: boolean
ContentSecurityPolicy: string, ContentSecurityPolicy: string
} }
/** Provision provisions a new instance */ /** Provision provisions a new instance */
export function Provision(params: ProvisionParams): CallSpec { export function Provision (params: ProvisionParams): CallSpec {
return { return {
'call': 'provision', call: 'provision',
'params': [ params: [
JSON.stringify(params) JSON.stringify(params)
], ]
} }
} }
/** Snapshot makes a snapshot of an instance */ /** Snapshot makes a snapshot of an instance */
export function Snapshot(Slug: string): CallSpec { export function Snapshot (Slug: string): CallSpec {
return { return {
'call': 'snapshot', call: 'snapshot',
'params': [Slug], params: [Slug]
} }
} }
/** Rebuild rebuilds an instance */ /** Rebuild rebuilds an instance */
export function Rebuild(Slug: string, params: SystemParams): CallSpec { export function Rebuild (Slug: string, params: SystemParams): CallSpec {
return { return {
'call': 'rebuild', call: 'rebuild',
'params': [ params: [
Slug, Slug,
JSON.stringify(params) JSON.stringify(params)
], ]
} }
} }
/** Update updates a specific instance */ /** Update updates a specific instance */
export function Update(Slug: string): CallSpec { export function Update (Slug: string): CallSpec {
return { return {
'call': 'update', call: 'update',
'params': [Slug], params: [Slug]
} }
} }
/** Start starts a specific instance */ /** Start starts a specific instance */
export function Start(Slug: string): CallSpec { export function Start (Slug: string): CallSpec {
return { return {
'call': 'start', call: 'start',
'params': [Slug], params: [Slug]
} }
} }
/** Stop stops a specific instance */ /** Stop stops a specific instance */
export function Stop(Slug: string): CallSpec { export function Stop (Slug: string): CallSpec {
return { return {
'call': 'stop', call: 'stop',
'params': [Slug], params: [Slug]
} }
} }
/** Purge purges a specific instance */ /** Purge purges a specific instance */
export function Purge(Slug: string): CallSpec { export function Purge (Slug: string): CallSpec {
return { return {
'call': 'purge', call: 'purge',
'params': [Slug], params: [Slug]
} }
} }

View file

@ -1,16 +1,15 @@
/** @file implements the websocket protocol used by the distillery */ /** @file implements the websocket protocol used by the distillery */
import { default as WebSocket } from "isomorphic-ws" import WebSocket from 'isomorphic-ws'
import { Buffer } from "buffer"; import { Buffer } from 'buffer'
/** Call represents a specific WebSocket call */ /** Call represents a specific WebSocket call */
export default class Call { export default class Call {
constructor(remote: Remote, spec: CallSpec) { constructor (remote: Remote, spec: CallSpec) {
this.remote = remote this.remote = remote
this.call = spec this.call = spec
} }
public readonly remote: Readonly<Remote> public readonly remote: Readonly<Remote>
public readonly call: Readonly<CallSpec> public readonly call: Readonly<CallSpec>
@ -36,39 +35,38 @@ export default class Call {
* Connect to the specified remote endpoint and perform the action * Connect to the specified remote endpoint and perform the action
* @param remote Remote to connect to * @param remote Remote to connect to
*/ */
connect(): Promise<Result> { async connect (): Promise<Result> {
// ensure that connect is only run once. // ensure that connect is only run once.
if (this.connected) { if (this.connected) {
throw new Error('connect() may only be called once') throw new Error('connect() may only be called once')
} }
this.connected = true this.connected = true
// and do the connection!
return new Promise((resolve, reject) => {
// and do the connection!
return await new Promise((resolve, reject) => {
// create the websocket // create the websocket
const ws = new WebSocket(this.remote.url, this.remote.token ? { 'headers': { 'Authorization': 'Bearer ' + this.remote.token } } : undefined) const ws = new WebSocket(this.remote.url, typeof this.remote.token === 'string' ? { headers: { Authorization: 'Bearer ' + this.remote.token } } : undefined)
this.ws = ws // make it available to other things this.ws = ws // make it available to other things
// result is a promise, because some APIs in the browser are async // result is a promise, because some APIs in the browser are async
let result = Promise.resolve(JSON.stringify({'success': false, 'message': 'Unknown error'})) let result = Promise.resolve(JSON.stringify({ success: false, message: 'Unknown error' }))
ws.onopen = () => { ws.onopen = () => {
if (this.beforeCall) { if (this.beforeCall != null) {
this.beforeCall.call(this) this.beforeCall()
} }
ws.send(Buffer.from(JSON.stringify(this.call), 'utf8')) ws.send(Buffer.from(JSON.stringify(this.call), 'utf8'))
} }
ws.onmessage = ({ data }) => { ws.onmessage = ({ data }) => {
// if this is a string it is a log line // if this is a string it is a log line
if (typeof data === 'string') { if (typeof data === 'string') {
if (this.onLogLine) { if (this.onLogLine != null) {
this.onLogLine.call(this, data) this.onLogLine(data)
} }
return return
} }
// decode the message // decode the message
if (data instanceof Blob) { if (data instanceof Blob) {
result = data.text() result = data.text()
@ -82,57 +80,58 @@ export default class Call {
this.close() this.close()
// call the handler and reject // call the handler and reject
if (this.onError) { if (this.onError != null) {
this.onError.call(this, err) this.onError(err)
} }
reject(err) reject(err)
} }
ws.onclose = () => { ws.onclose = () => {
this.close() this.close()
// decode the result // decode the result
result result
.then(t => JSON.parse(t)) .then(t => JSON.parse(t))
.then((res) => { .then((res) => {
if (this.afterCall) { if (this.afterCall != null) {
this.afterCall.call(this, res) this.afterCall(res)
} }
resolve(res) resolve(res)
}) })
.catch((e) => console.error(e))
} }
}) })
} }
/** sendText sends some text to the server requests cancellation of an ongoing operation */ /** sendText sends some text to the server requests cancellation of an ongoing operation */
sendText(text: string) { sendText (text: string): void {
const ws = this.ws
if (ws == null) {
throw new Error('websocket not connected')
}
ws.send(text)
}
/** cancel requests cancellation of an ongoing operation */
cancel() {
const ws = this.ws const ws = this.ws
if (ws == null) { if (ws == null) {
throw new Error('websocket not connected') throw new Error('websocket not connected')
} }
ws.send(Buffer.from(JSON.stringify({ signal: 'cancel'}), 'utf8')) ws.send(text)
}
/** cancel requests cancellation of an ongoing operation */
cancel (): void {
const ws = this.ws
if (ws == null) {
throw new Error('websocket not connected')
}
ws.send(Buffer.from(JSON.stringify({ signal: 'cancel' }), 'utf8'))
} }
/** close closes this websocket connection */ /** close closes this websocket connection */
private close() { private close (): void {
const ws = this.ws const ws = this.ws
if (ws == null) { if (ws == null) {
throw new Error('websocket not connected') throw new Error('websocket not connected')
} }
ws.close() ws.close()
this.ws = null; this.ws = null
} }
} }
@ -142,7 +141,7 @@ export interface Remote {
token?: string // optional token token?: string // optional token
} }
/** CallSpec represents the specification for a call*/ /** CallSpec represents the specification for a call */
export interface CallSpec { export interface CallSpec {
call: string call: string
params: string[] params: string[]
@ -150,6 +149,6 @@ export interface CallSpec {
/** the result of a websocket call */ /** the result of a websocket call */
export interface Result { export interface Result {
success: boolean, success: boolean
message: string, message: string
} }

View file

@ -1,26 +1,26 @@
import './index.css'; import './index.css'
const WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize'; const WINDOW_CHANGE_EVENT = ('onorientationchange' in window) ? 'orientationchange' : 'resize'
document.querySelectorAll('.pure-toggle-menu').forEach((menu) => { document.querySelectorAll('.pure-toggle-menu').forEach((menu) => {
const toggle = menu.querySelector('.toggle'); const toggle = menu.querySelector('.toggle')
if (!toggle) { if (toggle == null) {
console.warn("'.pure-toggle-menu' without '.toggle'"); console.warn("'.pure-toggle-menu' without '.toggle'")
return; return
} }
const toggleMenu = () => { const toggleMenu = (): void => {
menu.classList.toggle('closed'); menu.classList.toggle('closed')
toggle.classList.toggle('x'); toggle.classList.toggle('x')
}; }
toggle.addEventListener('click', (e) => { toggle.addEventListener('click', (e) => {
e.preventDefault(); e.preventDefault()
toggleMenu(); toggleMenu()
}); })
window.addEventListener(WINDOW_CHANGE_EVENT, () => { window.addEventListener(WINDOW_CHANGE_EVENT, () => {
if (menu.classList.contains('closed')) return; if (menu.classList.contains('closed')) return
toggleMenu(); toggleMenu()
}); })
}); })

View file

@ -219,21 +219,21 @@ export function createModal (action: string, params: string[], opts: Partial<Mod
const call = new LocalCall({ const call = new LocalCall({
call: action, call: action,
params params
}); })
call.beforeCall = function() { call.beforeCall = function () {
cancelButton.removeAttribute('disabled') cancelButton.removeAttribute('disabled')
cancelButton.addEventListener('click', (event) => { cancelButton.addEventListener('click', (event) => {
event.preventDefault() event.preventDefault()
print('^C\n', true) print('^C\n', true)
this.cancel() this.cancel()
}) })
print(' Connected.\n', true) print(' Connected.\n', true)
} }
call.onLogLine = print; call.onLogLine = print
call.connect() call.connect()
.then((result) => close(result)) .then((result) => close(result))
.catch(() => close({ success: false, message: 'connection closed unexpectedly' })); .catch(() => close({ success: false, message: 'connection closed unexpectedly' }))
} }

View file

@ -1,8 +1,8 @@
import { default as Call, CallSpec } from '../apiclient/websocket'; import Call, { CallSpec } from '../apiclient/websocket'
/** LocalCall is like Call, but uses the current page */ /** LocalCall is like Call, but uses the current page */
export default class LocalCall extends Call { export default class LocalCall extends Call {
constructor(spec: CallSpec) { constructor (spec: CallSpec) {
super({ url: location.protocol.replace('http', 'ws') + '//' + location.host + '/api/v1/ws'}, spec); super({ url: location.protocol.replace('http', 'ws') + '//' + location.host + '/api/v1/ws' }, spec)
} }
} }