diff --git a/docs/build/client/055f1a2f37d39d4fe92a.css b/docs/build/client/055f1a2f37d39d4fe92a.css
index 0cb599f..0b284cb 100644
--- a/docs/build/client/055f1a2f37d39d4fe92a.css
+++ b/docs/build/client/055f1a2f37d39d4fe92a.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}panel-layout{display:block}panel-head{display:block}panel-main{display:block}tui-button{display:block}ide-app{display:block}ide-code{display:block}ide-preview{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.scroll-auto{overflow:auto}.p-20{padding:20px}.w-calc-full-40{width:calc(100% - 40px)}.pt-10{padding-top:10px}.pb-20{padding-bottom:20px}.bg-black{background-color:var(--black) !important}.courier{font-family:'Courier New', Courier, monospace}.tx-lh-22{line-height:22px}.tx-word-wrap{word-wrap:break-word}.p-10{padding:10px}.scroll-x-auto{overflow-x:auto}.tx-prewrap{white-space:pre-wrap}.flex{display:flex}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.flex-grow{flex-grow:1}.h-26{height:26px}.mr-10{margin-right:10px}.tx-uppercase{text-transform:uppercase}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.block{display:block}.h-full{height:100%}.top-60{top:60px}.bottom-0{bottom:0px}.bottom-60{bottom:60px}.right-200{right:200px}.curved{border-radius:4px}.rounded{border-radius:12px}.transparent{opacity:0}.inline-block{display:inline-block}.tx-nodecor{text-decoration:none}.py-2{padding-top:2px;padding-bottom:2px}.px-4{padding-left:4px;padding-right:4px}.py-4{padding-top:4px;padding-bottom:4px}.px-8{padding-left:8px;padding-right:8px}.py-6{padding-top:6px;padding-bottom:6px}.px-12{padding-left:12px;padding-right:12px}.py-8{padding-top:8px;padding-bottom:8px}.px-16{padding-left:16px;padding-right:16px}.py-10{padding-top:10px;padding-bottom:10px}.py-12{padding-top:12px;padding-bottom:12px}.px-24{padding-left:24px;padding-right:24px}.py-14{padding-top:14px;padding-bottom:14px}.px-28{padding-left:28px;padding-right:28px}.py-16{padding-top:16px;padding-bottom:16px}.px-32{padding-left:32px;padding-right:32px}.py-18{padding-top:18px;padding-bottom:18px}.px-36{padding-left:36px;padding-right:36px}.bd-solid{border-style:solid}.bg-white{background-color:var(--white) !important}.bg-none{background-color:transparent !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.tx-muted{color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.tx-primary{color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bd-0{border-width:0px}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.inline{display:inline}.static{position:static}.tx-black{color:var(--black) !important}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/13781afd4fbd704a9789.css b/docs/build/client/13781afd4fbd704a9789.css
index 0cb599f..81d828b 100644
--- a/docs/build/client/13781afd4fbd704a9789.css
+++ b/docs/build/client/13781afd4fbd704a9789.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}api-docs{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.inline{display:inline}.flex{display:flex}.py-40{padding-top:40px;padding-bottom:40px}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.flex-grow{flex-grow:1}.h-26{height:26px}.mr-10{margin-right:10px}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.block{display:block}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.p-10{padding:10px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.bg-black{background-color:var(--black) !important}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/1bf701a55aaad047771e.css b/docs/build/client/1bf701a55aaad047771e.css
index 0cb599f..ddc5f93 100644
--- a/docs/build/client/1bf701a55aaad047771e.css
+++ b/docs/build/client/1bf701a55aaad047771e.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}tui-tab{display:block}api-docs{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .static{position:static}.bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.flex{display:flex}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.tx-white{color:var(--white) !important}.bg-t-1{background-color:var(--bg-1)}.tx-muted{color:var(--muted) !important}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.block{display:block}.none{display:none}.inline{display:inline}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bd-t-2{border-color:var(--bd-2)}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.bdx-0{border-left-width:0px;border-right-width:0px}.bdt-1{border-top-width:1px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/269f8b60f20cebb43be6.css b/docs/build/client/269f8b60f20cebb43be6.css
index 7684613..c0587eb 100644
--- a/docs/build/client/269f8b60f20cebb43be6.css
+++ b/docs/build/client/269f8b60f20cebb43be6.css
@@ -1,8 +1,8 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-right{display:block}panel-main{display:block}tui-alert{display:block}api-docs{display:block}api-ui{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.m-0{margin:0px}.px-10{padding-left:10px;padding-right:10px}.py-20{padding-top:20px;padding-bottom:20px}.h-calc-full-40{height:calc(100% - 40px)}.bg-t-2{background-color:var(--bg-2)}.scroll-auto{overflow:auto}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pb-10{padding-bottom:10px}.tx-uppercase{text-transform:uppercase}.tx-lh-32{line-height:32px}.block{display:block}.tx-t-0{color:var(--tx-0)}.tx-primary{color:var(--primary) !important}.tx-30{font-size:30px}.tx-lh-36{line-height:36px}.tx-26{font-size:26px}.pt-40{padding-top:40px}.mb-20{margin-bottom:20px}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-1{border-bottom-width:1px}.bdt-0{border-top-width:0px}.bdx-0{border-left-width:0px;border-right-width:0px}.bg-black{background-color:var(--black) !important}.inline{display:inline}.scroll{overflow:scroll}.curved{border-radius:4px}.tx-lh-24{line-height:24px}.tx-white{color:var(--white) !important}.tx-underline{text-decoration:underline}.flex{display:flex}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.pt-20{padding-top:20px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.w-200{width:200px}.bottom-60{bottom:60px}.top-60{top:60px}.right-200{right:200px}.rounded{border-radius:12px}.transparent{opacity:0}.p-16{padding:16px}.bg-white{background-color:var(--white) !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.p-10{padding:10px}.my-40{margin-top:40px;margin-bottom:40px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.tx-16{font-size:16px}.bd-collapse{border-collapse:collapse}.tx-left{text-align:left}.tx-top{vertical-align:top}.tx-nowrap{white-space:nowrap}.bd-t-2{border-color:var(--bd-2)}.bdb-0{border-bottom-width:0px}.bdt-1{border-top-width:1px}.static{position:static}.gap-10{gap:10px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right--200{right:-200px}.md-right-0{right:0px}.md-right-200{right:200px}}
.col-2 {
display: grid;
grid-template-columns: repeat(2, 1fr);
diff --git a/docs/build/client/2d721d6aed73f41f4e72.css b/docs/build/client/2d721d6aed73f41f4e72.css
index 0cb599f..f25f0e0 100644
--- a/docs/build/client/2d721d6aed73f41f4e72.css
+++ b/docs/build/client/2d721d6aed73f41f4e72.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}tui-tab{display:block}api-docs{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.flex{display:flex}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.tx-white{color:var(--white) !important}.bg-t-1{background-color:var(--bg-1)}.tx-muted{color:var(--muted) !important}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.block{display:block}.none{display:none}.inline{display:inline}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bd-t-2{border-color:var(--bd-2)}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.bdx-0{border-left-width:0px;border-right-width:0px}.bdt-1{border-top-width:1px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/3550a936d66e61695120.css b/docs/build/client/3550a936d66e61695120.css
index 0cb599f..ab9a889 100644
--- a/docs/build/client/3550a936d66e61695120.css
+++ b/docs/build/client/3550a936d66e61695120.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}tui-tab{display:block}api-docs{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.flex{display:flex}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.tx-white{color:var(--white) !important}.bg-t-1{background-color:var(--bg-1)}.tx-muted{color:var(--muted) !important}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.block{display:block}.none{display:none}.vw{width:100vw}.vh{height:100vh}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bd-t-2{border-color:var(--bd-2)}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.bdx-0{border-left-width:0px;border-right-width:0px}.bdt-1{border-top-width:1px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.inline{display:inline}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/38ccffadc3c6e8b93d28.css b/docs/build/client/38ccffadc3c6e8b93d28.css
index 0cb599f..a07ba6c 100644
--- a/docs/build/client/38ccffadc3c6e8b93d28.css
+++ b/docs/build/client/38ccffadc3c6e8b93d28.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}api-docs{display:block}api-ui{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.inline{display:inline}.flex{display:flex}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.h-26{height:26px}.mr-10{margin-right:10px}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.block{display:block}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.p-10{padding:10px}.my-40{margin-top:40px;margin-bottom:40px}.curved{border-radius:4px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.tx-secondary{color:var(--secondary) !important}.tx-16{font-size:16px}.mb-20{margin-bottom:20px}.bd-collapse{border-collapse:collapse}.tx-left{text-align:left}.tx-top{vertical-align:top}.tx-nowrap{white-space:nowrap}.bd-solid{border-style:solid}.bd-t-2{border-color:var(--bd-2)}.bdx-0{border-left-width:0px;border-right-width:0px}.bdb-0{border-bottom-width:0px}.bdt-1{border-top-width:1px}.tx-underline{text-decoration:underline}.tx-info{color:var(--info) !important}.tx-lh-24{line-height:24px}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/3e6a90cc5da3e950a902.css b/docs/build/client/3e6a90cc5da3e950a902.css
index 0cb599f..1cb37b2 100644
--- a/docs/build/client/3e6a90cc5da3e950a902.css
+++ b/docs/build/client/3e6a90cc5da3e950a902.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}api-docs{display:block}ide-app{display:block}ide-code{display:block}ide-preview{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.static{position:static}.flex{display:flex}.h-full{height:100%}.basis-half{flex-basis:50%}.bg-white{background-color:var(--white) !important}.h-140{height:140px}.scroll-auto{overflow:auto}.scroll{overflow:scroll}.bd-t-1{border-color:var(--bd-1)}.bd-solid{border-style:solid}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-1{border-left-width:1px}.bdr-0{border-right-width:0px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.py-40{padding-top:40px;padding-bottom:40px}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.h-26{height:26px}.mr-10{margin-right:10px}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.block{display:block}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.p-10{padding:10px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.bg-black{background-color:var(--black) !important}.inline{display:inline}.tx-black{color:var(--black) !important}@media (max-width:992px){.lg-block{display:block}.lg-h-auto{height:auto}.lg-bd-0{border-width:0px}}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/57e37fa233b38c87fe71.css b/docs/build/client/57e37fa233b38c87fe71.css
index 0cb599f..9d6df0b 100644
--- a/docs/build/client/57e37fa233b38c87fe71.css
+++ b/docs/build/client/57e37fa233b38c87fe71.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-right{display:block}panel-main{display:block}tui-alert{display:block}api-docs{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.m-0{margin:0px}.px-10{padding-left:10px;padding-right:10px}.py-20{padding-top:20px;padding-bottom:20px}.h-calc-full-40{height:calc(100% - 40px)}.bg-t-2{background-color:var(--bg-2)}.scroll-auto{overflow:auto}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pb-10{padding-bottom:10px}.tx-uppercase{text-transform:uppercase}.tx-lh-32{line-height:32px}.block{display:block}.tx-t-0{color:var(--tx-0)}.pl-20{padding-left:20px}.tx-primary{color:var(--primary) !important}.tx-30{font-size:30px}.tx-lh-36{line-height:36px}.inline{display:inline}.tx-26{font-size:26px}.pt-40{padding-top:40px}.mb-20{margin-bottom:20px}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-1{border-bottom-width:1px}.bdt-0{border-top-width:0px}.bdx-0{border-left-width:0px;border-right-width:0px}.tx-22{font-size:22px}.pb-20{padding-bottom:20px}.my-10{margin-top:10px;margin-bottom:10px}.tx-lh-24{line-height:24px}.curved{border-radius:4px}.bg-black{background-color:var(--black) !important}.flex{display:flex}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.bg-t-1{background-color:var(--bg-1)}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.h-26{height:26px}.mr-10{margin-right:10px}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.pt-20{padding-top:20px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.w-200{width:200px}.bottom-60{bottom:60px}.top-60{top:60px}.right-200{right:200px}.rounded{border-radius:12px}.transparent{opacity:0}.p-16{padding:16px}.bg-white{background-color:var(--white) !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.p-10{padding:10px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right--200{right:-200px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/75ff7698b5db04ad540c.css b/docs/build/client/75ff7698b5db04ad540c.css
index 0cb599f..0710f3f 100644
--- a/docs/build/client/75ff7698b5db04ad540c.css
+++ b/docs/build/client/75ff7698b5db04ad540c.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-right{display:block}panel-main{display:block}tui-alert{display:block}tui-tab{display:block}api-docs{display:block}api-ui{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.m-0{margin:0px}.px-10{padding-left:10px;padding-right:10px}.py-20{padding-top:20px;padding-bottom:20px}.h-calc-full-40{height:calc(100% - 40px)}.bg-t-2{background-color:var(--bg-2)}.scroll-auto{overflow:auto}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pb-10{padding-bottom:10px}.tx-uppercase{text-transform:uppercase}.tx-lh-32{line-height:32px}.block{display:block}.tx-t-0{color:var(--tx-0)}.pl-20{padding-left:20px}.tx-primary{color:var(--primary) !important}.tx-30{font-size:30px}.tx-lh-36{line-height:36px}.tx-26{font-size:26px}.pt-40{padding-top:40px}.mb-20{margin-bottom:20px}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-1{border-bottom-width:1px}.bdt-0{border-top-width:0px}.bdx-0{border-left-width:0px;border-right-width:0px}.inline{display:inline}.curved{border-radius:4px}.tx-lh-24{line-height:24px}.flex{display:flex}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bdx-1{border-left-width:1px;border-right-width:1px}.bdt-1{border-top-width:1px}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.tx-white{color:var(--white) !important}.bg-t-1{background-color:var(--bg-1)}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.none{display:none}.tx-22{font-size:22px}.pb-20{padding-bottom:20px}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.pt-20{padding-top:20px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.w-200{width:200px}.bottom-60{bottom:60px}.top-60{top:60px}.right-200{right:200px}.rounded{border-radius:12px}.transparent{opacity:0}.p-16{padding:16px}.bg-white{background-color:var(--white) !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.my-40{margin-top:40px;margin-bottom:40px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.tx-16{font-size:16px}.bd-collapse{border-collapse:collapse}.tx-left{text-align:left}.tx-top{vertical-align:top}.tx-nowrap{white-space:nowrap}.bd-t-2{border-color:var(--bd-2)}.tx-underline{text-decoration:underline}.static{position:static}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.gap-10{gap:10px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right--200{right:-200px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/78023a6a30cbd9820817.css b/docs/build/client/78023a6a30cbd9820817.css
index 0cb599f..6683936 100644
--- a/docs/build/client/78023a6a30cbd9820817.css
+++ b/docs/build/client/78023a6a30cbd9820817.css
@@ -1,5 +1,14 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}panel-layout{display:block}panel-head{display:block}panel-main{display:block}tui-button{display:block}tui-alert{display:block}tui-tab{display:block}tui-icon{display:block}tui-badge{display:block}tui-loader{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.p-10{padding:10px}.h-full{height:100%}.scroll-auto{overflow:auto}.inline-block{display:inline-block}.bg-t-1{background-color:var(--bg-1)}.tx-t-0{color:var(--tx-0)}.bg-t-2{background-color:var(--bg-2)}.py-20{padding-top:20px;padding-bottom:20px}.pb-20{padding-bottom:20px}.mb-10{margin-bottom:10px}.curved{border-radius:4px}.rounded{border-radius:12px}.pill{border-radius:10000px}.transparent{opacity:0}.flex{display:flex}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.flex-grow{flex-grow:1}.h-26{height:26px}.mr-10{margin-right:10px}.tx-uppercase{text-transform:uppercase}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.relative{position:relative}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.block{display:block}.top-60{top:60px}.bottom-0{bottom:0px}.bottom-60{bottom:60px}.right-200{right:200px}.tx-nodecor{text-decoration:none}.py-2{padding-top:2px;padding-bottom:2px}.px-4{padding-left:4px;padding-right:4px}.py-4{padding-top:4px;padding-bottom:4px}.px-8{padding-left:8px;padding-right:8px}.py-6{padding-top:6px;padding-bottom:6px}.px-12{padding-left:12px;padding-right:12px}.py-8{padding-top:8px;padding-bottom:8px}.px-16{padding-left:16px;padding-right:16px}.py-10{padding-top:10px;padding-bottom:10px}.py-12{padding-top:12px;padding-bottom:12px}.px-24{padding-left:24px;padding-right:24px}.py-14{padding-top:14px;padding-bottom:14px}.px-28{padding-left:28px;padding-right:28px}.py-16{padding-top:16px;padding-bottom:16px}.px-32{padding-left:32px;padding-right:32px}.py-18{padding-top:18px;padding-bottom:18px}.px-36{padding-left:36px;padding-right:36px}.bd-solid{border-style:solid}.bg-white{background-color:var(--white) !important}.bg-none{background-color:transparent !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.tx-muted{color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.tx-primary{color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bd-0{border-width:0px}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.p-16{padding:16px}.mr-5{margin-right:5px}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-right-0{right:0px}.md-right-200{right:200px}}@keyframes tuispin {
+ 0% { transform: rotate(0deg); }
+ 100% { transform: rotate(360deg); }
+}
+
+.tui-loader {
+ animation: tuispin 1s linear infinite;
+ border-radius: 50%;
+ display: inline-block;
+}
\ No newline at end of file
diff --git a/docs/build/client/8f2ff6d48aec3c3f0dc4.css b/docs/build/client/8f2ff6d48aec3c3f0dc4.css
index 0cb599f..3e9bdac 100644
--- a/docs/build/client/8f2ff6d48aec3c3f0dc4.css
+++ b/docs/build/client/8f2ff6d48aec3c3f0dc4.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-main{display:block}tui-tab{display:block}api-docs{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.tx-primary{color:var(--primary) !important}.tx-uppercase{text-transform:uppercase}.tx-30{font-size:30px}.py-20{padding-top:20px;padding-bottom:20px}.tx-lh-36{line-height:36px}.curved{border-radius:4px}.flex{display:flex}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.tx-white{color:var(--white) !important}.bg-t-1{background-color:var(--bg-1)}.tx-muted{color:var(--muted) !important}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.block{display:block}.none{display:none}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.bg-t-2{background-color:var(--bg-2)}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.scroll-auto{overflow:auto}.h-calc-full-60{height:calc(100% - 60px)}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pt-20{padding-top:20px}.pb-10{padding-bottom:10px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.top-60{top:60px}.bottom-60{bottom:60px}.right-200{right:200px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bd-t-2{border-color:var(--bd-2)}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.bdx-0{border-left-width:0px;border-right-width:0px}.bdt-1{border-top-width:1px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.tx-16{font-size:16px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.inline{display:inline}.static{position:static}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/a52462b5d1f8879f7b73.css b/docs/build/client/a52462b5d1f8879f7b73.css
index 0cb599f..a372bad 100644
--- a/docs/build/client/a52462b5d1f8879f7b73.css
+++ b/docs/build/client/a52462b5d1f8879f7b73.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-right{display:block}panel-main{display:block}tui-button{display:block}tui-alert{display:block}tui-tab{display:block}api-docs{display:block}api-ui{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}ide-preview{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.m-0{margin:0px}.px-10{padding-left:10px;padding-right:10px}.py-20{padding-top:20px;padding-bottom:20px}.h-calc-full-40{height:calc(100% - 40px)}.bg-t-2{background-color:var(--bg-2)}.scroll-auto{overflow:auto}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pb-10{padding-bottom:10px}.tx-uppercase{text-transform:uppercase}.tx-lh-32{line-height:32px}.block{display:block}.tx-t-0{color:var(--tx-0)}.pl-20{padding-left:20px}.tx-primary{color:var(--primary) !important}.tx-30{font-size:30px}.tx-lh-36{line-height:36px}.inline{display:inline}.tx-26{font-size:26px}.pt-40{padding-top:40px}.mb-20{margin-bottom:20px}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-1{border-bottom-width:1px}.bdt-0{border-top-width:0px}.bdx-0{border-left-width:0px;border-right-width:0px}.tx-22{font-size:22px}.pb-20{padding-bottom:20px}.flex{display:flex}.h-full{height:100%}.basis-half{flex-basis:50%}.bg-white{background-color:var(--white) !important}.h-140{height:140px}.curved{border-radius:4px}.tx-lh-24{line-height:24px}.tx-white{color:var(--white) !important}.tx-underline{text-decoration:underline}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.bg-t-1{background-color:var(--bg-1)}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.none{display:none}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.pt-20{padding-top:20px}.py-10{padding-top:10px;padding-bottom:10px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.w-226{width:226px}.bottom-0{bottom:0px}.w-200{width:200px}.bottom-60{bottom:60px}.top-60{top:60px}.right-200{right:200px}.rounded{border-radius:12px}.transparent{opacity:0}.inline-block{display:inline-block}.tx-nodecor{text-decoration:none}.py-2{padding-top:2px;padding-bottom:2px}.px-4{padding-left:4px;padding-right:4px}.py-4{padding-top:4px;padding-bottom:4px}.px-8{padding-left:8px;padding-right:8px}.py-6{padding-top:6px;padding-bottom:6px}.px-12{padding-left:12px;padding-right:12px}.py-8{padding-top:8px;padding-bottom:8px}.px-16{padding-left:16px;padding-right:16px}.py-12{padding-top:12px;padding-bottom:12px}.px-24{padding-left:24px;padding-right:24px}.py-14{padding-top:14px;padding-bottom:14px}.px-28{padding-left:28px;padding-right:28px}.py-16{padding-top:16px;padding-bottom:16px}.px-32{padding-left:32px;padding-right:32px}.py-18{padding-top:18px;padding-bottom:18px}.px-36{padding-left:36px;padding-right:36px}.bg-none{background-color:transparent !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bd-0{border-width:0px}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.p-16{padding:16px}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.my-40{margin-top:40px;margin-bottom:40px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.tx-16{font-size:16px}.bd-collapse{border-collapse:collapse}.tx-left{text-align:left}.tx-top{vertical-align:top}.tx-nowrap{white-space:nowrap}.bd-t-2{border-color:var(--bd-2)}.bdt-1{border-top-width:1px}.static{position:static}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.gap-10{gap:10px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}.tx-black{color:var(--black) !important}@media (max-width:992px){.lg-block{display:block}.lg-h-auto{height:auto}}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right--200{right:-200px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/a67341498153885a2fc0.css b/docs/build/client/a67341498153885a2fc0.css
index 0cb599f..b297b21 100644
--- a/docs/build/client/a67341498153885a2fc0.css
+++ b/docs/build/client/a67341498153885a2fc0.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}html-aside{display:block}panel-layout{display:block}panel-head{display:block}panel-left{display:block}panel-right{display:block}panel-main{display:block}tui-alert{display:block}tui-tab{display:block}api-docs{display:block}api-ui{display:block}app-head{display:block}app-left{display:block}app-main{display:block}ide-app{display:block}ide-code{display:block}i18n-translate{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.m-0{margin:0px}.px-10{padding-left:10px;padding-right:10px}.py-20{padding-top:20px;padding-bottom:20px}.h-calc-full-40{height:calc(100% - 40px)}.bg-t-2{background-color:var(--bg-2)}.scroll-auto{overflow:auto}.tx-muted{color:var(--muted) !important}.tx-14{font-size:14px}.mb-0{margin-bottom:0px}.mt-0{margin-top:0px}.pb-10{padding-bottom:10px}.tx-uppercase{text-transform:uppercase}.tx-lh-32{line-height:32px}.block{display:block}.tx-t-0{color:var(--tx-0)}.tx-primary{color:var(--primary) !important}.tx-30{font-size:30px}.tx-lh-36{line-height:36px}.curved{border-radius:4px}.tx-lh-24{line-height:24px}.tx-white{color:var(--white) !important}.tx-underline{text-decoration:underline}.inline{display:inline}.tx-26{font-size:26px}.pt-40{padding-top:40px}.mb-20{margin-bottom:20px}.bd-solid{border-style:solid}.bd-t-1{border-color:var(--bd-1)}.bdb-1{border-bottom-width:1px}.bdt-0{border-top-width:0px}.bdx-0{border-left-width:0px;border-right-width:0px}.flex{display:flex}.bd-h-333333{border-color:#333333}.bdl-1{border-left-width:1px}.scroll-x-auto{overflow-x:auto}.pt-5{padding-top:5px}.pl-5{padding-left:5px}.relative{position:relative}.ml-2{margin-left:2px}.p-10{padding:10px}.curve-t-sm{border-radius:4px 4px 0 0}.bdx-1{border-left-width:1px;border-right-width:1px}.bdt-1{border-top-width:1px}.bdb-0{border-bottom-width:0px}.bg-black{background-color:var(--black) !important}.bg-t-1{background-color:var(--bg-1)}.p-5{padding:5px}.pl-15{padding-left:15px}.pt-10{padding-top:10px}.none{display:none}.tx-22{font-size:22px}.pb-20{padding-bottom:20px}.py-5{padding-top:5px;padding-bottom:5px}.py-10{padding-top:10px;padding-bottom:10px}.py-40{padding-top:40px;padding-bottom:40px}.flex-grow{flex-grow:1}.tx-right{text-align:right}.flex-center-y{align-items:center}.px-20{padding-left:20px;padding-right:20px}.py-15{padding-top:15px;padding-bottom:15px}.cursor-pointer{cursor:pointer}.pr-10{padding-right:10px}.h-26{height:26px}.mr-10{margin-right:10px}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.tx-center{text-align:center}.bg-h-7289da{background-color:#7289da}.pr-5{padding-right:5px}.pl-10{padding-left:10px}.h-calc-full-60{height:calc(100% - 60px)}.pt-20{padding-top:20px}.tx-bold{font-weight:bold}.mt-20{margin-top:20px}.mb-100{margin-bottom:100px}.w-full{width:100%}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.h-60{height:60px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.w-226{width:226px}.bottom-0{bottom:0px}.w-200{width:200px}.bottom-60{bottom:60px}.top-60{top:60px}.right-200{right:200px}.rounded{border-radius:12px}.transparent{opacity:0}.p-16{padding:16px}.bg-white{background-color:var(--white) !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.scroll-y-auto{overflow-y:auto}.scroll-x-hidden{overflow-x:hidden}.my-40{margin-top:40px;margin-bottom:40px}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.tx-16{font-size:16px}.bd-collapse{border-collapse:collapse}.tx-left{text-align:left}.tx-top{vertical-align:top}.tx-nowrap{white-space:nowrap}.bd-t-2{border-color:var(--bd-2)}.static{position:static}.left-170{left:170px}.h-45{height:45px}.z-1{z-index:1}.w-170{width:170px}.bg-h-000000{background-color:#000000}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-0{border-left-width:0px}.bdr-1{border-right-width:1px}.z-2{z-index:2}.top-45{top:45px}.gap-10{gap:10px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.flex-center{align-items:center;justify-content:center}@media (max-width:767px){.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-left--226{left:-226px}.md-right--200{right:-200px}.md-right-0{right:0px}.md-right-200{right:200px}}
\ No newline at end of file
diff --git a/docs/build/client/f01cefc94e8ee605f3f5.css b/docs/build/client/f01cefc94e8ee605f3f5.css
index 0cb599f..b2c9b82 100644
--- a/docs/build/client/f01cefc94e8ee605f3f5.css
+++ b/docs/build/client/f01cefc94e8ee605f3f5.css
@@ -1,5 +1,5 @@
-@tui theme;
- @tui reset;
- @tui fouc-opacity;
- @tui default-block;
- @tui utilities;
\ No newline at end of file
+:root{--black:#000000;--white:#FFFFFF;--info:#1474FC;--error:#DC3545;--warning:#FF7B07;--success:#28A745;--muted:#999999}.light{--bg-0:#EFEFEF;--bg-1:#CFCFCF;--bg-2:#AFAFAF;--bg-3:#8F8F8F;--bg-4:#6F6F6F;--bd-0:#EFEFEF;--bd-1:#CFCFCF;--bd-2:#AFAFAF;--bd-3:#8F8F8F;--bd-4:#6F6F6F;--bg-inverse:#242424;--tx-0:#000000;--tx-1:#242424;--tx-inverse:#CFCFCF}.dark{--bg-0:#121212;--bg-1:#222222;--bg-2:#323232;--bg-3:#424242;--bg-4:#525252;--bd-0:#121212;--bd-1:#222222;--bd-2:#323232;--bd-3:#424242;--bd-4:#525252;--bg-inverse:#DBDBDB;--tx-0:#FFFFFF;--tx-1:#CFCFCF;--tx-inverse:#222222}
+ html, body{height:100%;margin:0;padding:0;width:100%}h1, h2, h3, h4, h5, h6, p{margin:0;padding:0}a{text-decoration:none}
+
+ html-head{display:block}html-header{display:block}panel-layout{display:block}panel-head{display:block}panel-main{display:block}tui-button{display:block}ide-app{display:block}ide-code{display:block}ide-preview{display:block}i18n-translate{display:block}tweet-box{display:block}
+ .bg-t-0{background-color:var(--bg-0)}.tx-t-1{color:var(--tx-1)}.arial{font-family:Arial, sans-serif}.scroll-auto{overflow:auto}.bg-t-1{background-color:var(--bg-1)}.py-40{padding-top:40px;padding-bottom:40px}.tx-center{text-align:center}.w-full{width:100%}.h-100{height:100px}.tx-40{font-size:40px}.tx-30{font-size:30px}.py-30{padding-top:30px;padding-bottom:30px}.tx-lh-36{line-height:36px}.rounded{border-radius:12px}.mr-10{margin-right:10px}.inline-block{display:inline-block}.m-auto{margin:auto}.wm-960{max-width:960px}.px-20{padding-left:20px;padding-right:20px}.p-20{padding:20px}.tx-18{font-size:18px}.block{display:block}.flex{display:flex}.bg-white{background-color:var(--white) !important}.basis-half{flex-basis:50%}.flex-center{align-items:center;justify-content:center}.list-none{list-style:none}.p-0{padding:0px}.w-third{width:33.33%}.wm-300{max-width:300px}.p-10{padding:10px}.mb-20{margin-bottom:20px}.tx-uppercase{text-transform:uppercase}.tx-16{font-size:16px}.tx-lh-24{line-height:24px}.mt-40{margin-top:40px}.bd-t-1{border-color:var(--bd-1)}.bd-solid{border-style:solid}.bdy-0{border-bottom-width:0px;border-top-width:0px}.bdl-1{border-left-width:1px}.bdr-0{border-right-width:0px}.bg-h-cccccc{background-color:#cccccc}.tx-h-242424{color:#242424}.flex-wrap{flex-wrap:wrap}.mx-auto{margin-left:auto;margin-right:auto}.mb-0{margin-bottom:0px}.basis-third{flex-basis:33.33%}.h-60{height:60px}.tx-26{font-size:26px}.flex-center-y{align-items:center}.py-15{padding-top:15px;padding-bottom:15px}.m-0{margin:0px}.cursor-pointer{cursor:pointer}.py-5{padding-top:5px;padding-bottom:5px}.pr-10{padding-right:10px}.none{display:none}.flex-grow{flex-grow:1}.h-26{height:26px}.tx-white{color:var(--white) !important}.tx-5xl{font-size:26px}.ml-10{margin-left:10px}.bg-h-cb3837{background-color:#cb3837}.pill{border-radius:10000px}.tx-lg{font-size:16px}.ml-5{margin-left:5px}.p-5{padding:5px}.bg-h-7289da{background-color:#7289da}.relative{position:relative}.vh{height:100vh}.scroll-hidden{overflow:hidden}.absolute{position:absolute}.top-0{top:0px}.right-0{right:0px}.transition-500{transition-duration:500ms}.left-0{left:0px}.left-226{left:226px}.h-full{height:100%}.top-60{top:60px}.bottom-0{bottom:0px}.bottom-60{bottom:60px}.right-200{right:200px}.curved{border-radius:4px}.transparent{opacity:0}.tx-nodecor{text-decoration:none}.py-2{padding-top:2px;padding-bottom:2px}.px-4{padding-left:4px;padding-right:4px}.py-4{padding-top:4px;padding-bottom:4px}.px-8{padding-left:8px;padding-right:8px}.py-6{padding-top:6px;padding-bottom:6px}.px-12{padding-left:12px;padding-right:12px}.py-8{padding-top:8px;padding-bottom:8px}.px-16{padding-left:16px;padding-right:16px}.py-10{padding-top:10px;padding-bottom:10px}.py-12{padding-top:12px;padding-bottom:12px}.px-24{padding-left:24px;padding-right:24px}.py-14{padding-top:14px;padding-bottom:14px}.px-28{padding-left:28px;padding-right:28px}.py-16{padding-top:16px;padding-bottom:16px}.px-32{padding-left:32px;padding-right:32px}.py-18{padding-top:18px;padding-bottom:18px}.px-36{padding-left:36px;padding-right:36px}.bg-none{background-color:transparent !important}.bd-info{border-color:var(--info) !important}.tx-info{color:var(--info) !important}.bd-warning{border-color:var(--warning) !important}.tx-warning{color:var(--warning) !important}.bd-success{border-color:var(--success) !important}.tx-success{color:var(--success) !important}.bd-error{border-color:var(--error) !important}.tx-error{color:var(--error) !important}.bd-muted{border-color:var(--muted) !important}.tx-muted{color:var(--muted) !important}.bd-primary{border-color:var(--primary) !important}.tx-primary{color:var(--primary) !important}.bd-secondary{border-color:var(--secondary) !important}.tx-secondary{color:var(--secondary) !important}.bd-0{border-width:0px}.bg-info{background-color:var(--info) !important}.bg-warning{background-color:var(--warning) !important}.bg-success{background-color:var(--success) !important}.bg-error{background-color:var(--error) !important}.bg-muted{background-color:var(--muted) !important}.bg-primary{background-color:var(--primary) !important}.bg-secondary{background-color:var(--secondary) !important}.shadow-0-0-10-0-0-0-5{box-shadow:0px 0px 10px rgb(0, 0, 0, 0.5)}.gap-10{gap:10px}.bg-h-999999{background-color:#999999}.h-10{height:10px}.w-10{width:10px}.bg-black{background-color:var(--black) !important}.inline{display:inline}.static{position:static}.tx-black{color:var(--black) !important}@media (max-width:992px){.lg-basis-half{flex-basis:50%}}@media (max-width:767px){.md-block{display:block}.md-wm-400{max-width:400px}.md-w-auto{width:auto}.md-m-auto{margin:auto}.md-mt-20{margin-top:20px}.md-bd-0{border-width:0px}.md-inline-block{display:inline-block}.md-left-0{left:0px}.md-left-226{left:226px}.md-right-0{right:0px}.md-right-200{right:200px}}@media (max-width:420px){.sm-block{display:block}}
\ No newline at end of file
diff --git a/docs/build/client/f01cefc94e8ee605f3f5.js b/docs/build/client/f01cefc94e8ee605f3f5.js
index d30f34c..8392d90 100644
--- a/docs/build/client/f01cefc94e8ee605f3f5.js
+++ b/docs/build/client/f01cefc94e8ee605f3f5.js
@@ -1,20 +1,2839 @@
-var TempleAPI=(()=>{var qt=Object.create;var Se=Object.defineProperty;var Rt=Object.getOwnPropertyDescriptor;var zt=Object.getOwnPropertyNames;var It=Object.getPrototypeOf,Ht=Object.prototype.hasOwnProperty;var O=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Bt=(t,e)=>{for(var s in e)Se(t,s,{get:e[s],enumerable:!0})},pt=(t,e,s,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of zt(e))!Ht.call(t,r)&&r!==s&&Se(t,r,{get:()=>e[r],enumerable:!(a=Rt(e,r))||a.enumerable});return t};var F=(t,e,s)=>(s=t!=null?qt(It(t)):{},pt(e||!t||!t.__esModule?Se(s,"default",{value:t,enumerable:!0}):s,t)),Gt=t=>pt(Se({},"__esModule",{value:!0}),t);var he=O(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});var Qe=class extends Error{static for(e,...s){return s.forEach(function(a){e=e.replace("%s",a)}),new this(e)}static forErrorsFound(e){let s=new this("Invalid Parameters");return s.errors=e,s}static require(e,s,...a){if(!e){for(let r of a)s=s.replace("%s",r);throw new this(s)}}constructor(e,s=500){super(),this.errors={},this.start=0,this.end=0,this.message=e,this.name=this.constructor.name,this.code=s}withCode(e){return this.code=e,this}withPosition(e,s){return this.start=e,this.end=s,this}toJSON(){return{error:!0,code:this.code,message:this.message}}};Ve.default=Qe});var Oe=O(M=>{"use strict";var Ut=M&&M.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(M,"__esModule",{value:!0});M.match=M.TempleEmitter=M.events=void 0;M.bindAttribute=W;M.unbindAttribute=ht;var mt=Ut(Me());M.events=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","wheel","keydown","keypress","keyup","blur","change","contextmenu","focus","input","submit","invalid","reset","search","select","copy","cut","paste","drag","dragstart","dragend","dragover","dragenter","dragleave","drop","scroll","durationchange","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting","animationstart","animationend","animationiteration","transitionend","toggle"];var Ce=class extends EventTarget{emit(e,s){return this.dispatchEvent(new CustomEvent(e,{detail:s})),this}on(e,s){if(e==="ready"&&document.readyState!=="loading"){let a=new CustomEvent("ready");return setTimeout(()=>s(a),1),this}return this.addEventListener(e,s),this}once(e,s){let a=r=>{this.unbind(e,a),s(r)};return this.on(e,a),this}unbind(e,s){return this.removeEventListener(e,s),this}};M.TempleEmitter=Ce;var Wt=(t,e)=>Array.from(t.querySelectorAll("*")).filter(s=>{let a=mt.default.get(s),r=a&&a.hasAttribute(e)&&!a.hasEvent(e);return r&&a.addEvent(e),r}).map(s=>mt.default.get(s));M.match=Wt;function W(t,e){je.on("mounted",s=>{if(!s.detail)return;let a=s.detail;(0,M.match)(a.shadowRoot||a,t).forEach(e)})}function ht(t,e){je.on("unmounted",s=>{if(!s.detail)return;let a=s.detail;(0,M.match)(a.shadowRoot||a,t).forEach(e)})}var je=new Ce;M.default=(document.onreadystatechange=()=>{document.readyState!=="loading"&&je.emit("ready")},W("mount",t=>{let e=t.getAttribute("mount");if(typeof e=="function"){let s=new CustomEvent("mount",{detail:{node:t,target:t.element}});e(s)}}),ht("unmount",t=>{let e=t.getAttribute("unmount");if(typeof e=="function"){let s=new CustomEvent("unmount",{detail:{node:t,target:t.element}});e(s)}}),W("connect",t=>{let e=t.getAttribute("connect");if(typeof e=="function"){let s=new CustomEvent("connect",{detail:{node:t,target:t.element}});e(s)}}),W("disconnect",t=>{let e=t.getAttribute("disconnect");if(typeof e=="function"){let s=new CustomEvent("disconnect",{detail:{node:t,target:t.element}});e(s)}}),W("adopt",t=>{let e=t.getAttribute("adopt");if(typeof e=="function"){let s=new CustomEvent("adopt",{detail:{node:t,target:t.element}});e(s)}}),W("if",t=>{let e=t.getAttribute("if");(e===!1||e==="false"||typeof e=="function"&&!e())&&t.element.remove()}),M.events.forEach(t=>W(t,e=>{let s=e.getAttribute(t);typeof s=="function"&&(e.element.removeEventListener(t,s),e.element.addEventListener(t,s))})),je)});var st=O(ge=>{"use strict";var Zt=ge&&ge.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ge,"__esModule",{value:!0});var et=Zt(Oe()),tt=class{get attributes(){return Object.assign({},this._attributes)}get element(){return this._element}get events(){return this._events}constructor(e,s){this._events=new Set,this._element=e,this._attributes=s}addEvent(e){return this._events.add(e),this}getAttribute(e){return this._attributes[e]}hasAttribute(e){return e in this._attributes}hasEvent(e){return this._events.has(e)}removeAttribute(e,s=!1){let a=this.getAttribute(e);return typeof a>"u"?this:(delete this._attributes[e],this._element.removeAttribute(e),s||et.default.emit("attribute-remove",{element:this,key:e,previous:a}),this)}setAttribute(e,s,a=!1){if(typeof s>"u")return this.removeAttribute(e,a);let r=this.getAttribute(e);return r===s?this:(this._attributes[e]=s,typeof s=="string"&&this._element.setAttribute(e,s),a||(typeof r>"u"?et.default.emit("attribute-create",{element:this,key:e,value:s}):et.default.emit("attribute-update",{element:this,key:e,value:s,previous:r})),this)}setAttributes(e,s=!1){for(let[r,u]of Object.entries(e))this.setAttribute(r,u,s);let a=Object.keys(e);for(let r of Object.keys(this._attributes))a.includes(r)||this.removeAttribute(r,s);return this}};ge.default=tt});var Me=O(be=>{"use strict";var Jt=be&&be.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(be,"__esModule",{value:!0});var Yt=Jt(st()),gt=document.createElement("textarea"),Kt=t=>(gt.innerHTML=t,gt.value),De=class{static get elements(){return this._elements}static createComponent(e,s,a,r=[]){let u=document.createElement("template");u.innerHTML=`<${e}>${e}>`;let g=u.content.querySelector(`${e}`);return Object.setPrototypeOf(g,s.prototype),g.constructor=s.constructor,g.constructor.component=s.component,g.register(a,r),g.element}static createElement(e,s,a=[]){let r=document.createElement(e);for(let[u,_]of Object.entries(s))typeof _=="string"?r.setAttribute(u,_):_===!0&&r.setAttribute(u,u);return a.filter(u=>typeof u<"u").forEach(u=>r.appendChild(u)),this.register(r,s)}static createText(e,s=!0){return document.createTextNode(Kt(e))}static filter(e){let s=[];return this._elements.forEach((a,r)=>{e(a,r)&&s.push(a)}),s}static get(e){return this._elements.get(e)||null}static has(e){return this._elements.has(e)}static map(e){let s=[];return this._elements.forEach((a,r)=>{s.push(e(a,r))}),s}static register(e,s){if(this.has(e))return this.get(e);let a=new Yt.default(e,s||{});return this._elements.set(e,a),a}};De._elements=new Map;be.default=De});var ee=O(xe=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.TempleDataMap=void 0;var $e=class{constructor(){window.__APP_DATA__||(window.__APP_DATA__={})}clear(){return window.__APP_DATA__={},this}delete(e){return this.has(e)?(delete window.__APP_DATA__[e],!0):!1}entries(){return Object.entries(window.__APP_DATA__)}has(e){return e in window.__APP_DATA__}get(e){return window.__APP_DATA__[e]}keys(){return Object.keys(window.__APP_DATA__)}set(e,s){return window.__APP_DATA__[e]=s,this}values(){return Object.values(window.__APP_DATA__)}};xe.TempleDataMap=$e;var Xt=new $e;xe.default=Xt});var xt=O(_e=>{"use strict";var qe=_e&&_e.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_e,"__esModule",{value:!0});var bt=qe(he()),Z=qe(Me()),J=qe(Oe()),Ne=qe(ee()),rt=class t extends HTMLElement{static register(){customElements.define(this.component[0],this)}get attr(){return Object.fromEntries(Array.from(this.attributes).map(e=>[e.name,e.value]))}get element(){if(!Z.default.has(this))throw bt.default.for("Component not mapped.");return Z.default.get(this)}get metadata(){let[e,s]=this.constructor.component;return{tagname:e,classname:s}}get originalChildren(){return this._children}get initiated(){return this._initiated}get props(){return this.getAttributes()}get virtual(){return this._virtual}set props(e){this.setAttributes(e)}constructor(){if(super(),this._initiated=!1,this._template=null,this._children=void 0,this._rendering=!1,this._observer=null,this._virtual=!1,!Z.default.has(this))throw bt.default.for("Component not mapped.")}adoptedCallback(){this.render(),J.default.emit("adopt",this)}connectedCallback(){this.wait(),J.default.emit("connect",this)}disconnectedCallback(){J.default.emit("disconnect",this)}getAttribute(e){return this.element.getAttribute(e)}getAttributes(){return Object.assign({},this.element.attributes)}getParentComponent(){let e=this.parentElement;for(;e;){if(e instanceof t)return e;e=e.parentElement}return null}hasAttribute(e){return this.element.hasAttribute(e)}register(e={},s=[]){Z.default.has(this)?Z.default.get(this).setAttributes(e):Z.default.register(this,e);for(let[a,r]of Object.entries(e))typeof r=="string"?super.setAttribute(a,r):r===!0&&super.setAttribute(a,a);this._children=s,this._virtual=!0,this.connectedCallback()}removeAttribute(e){this.hasAttribute(e)&&this.element.removeAttribute(e),super.hasAttribute(e)&&super.removeAttribute(e)}render(){let e=this.getParentComponent();if(e&&!e.initiated)return;if(this._rendering)return;this._rendering=!0;let s=Ne.default.get("current");Ne.default.set("current",this);let a=this.styles();this._template?J.default.emit("unmounted",this):this._template=this.template();let r=this._template().filter(Boolean);if(a.length===0)this.textContent="",r.forEach(u=>this.appendChild(u));else{this.shadowRoot||this.attachShadow({mode:"open"});let u=this.shadowRoot;this.textContent="",u.textContent="";let _=document.createElement("style");_.innerText=a,u.appendChild(_),r.forEach(g=>{var y;return(y=this.shadowRoot)===null||y===void 0?void 0:y.appendChild(g)})}return s?Ne.default.set("current",s):Ne.default.delete("current"),this._initiated=!0,this._rendering=!1,J.default.emit("mounted",this),this.shadowRoot?this.shadowRoot.innerHTML:this.innerHTML}setAttribute(e,s){this.element.setAttribute(e,s),(typeof s=="string"||s===!0)&&super.setAttribute(e,s)}setAttributes(e){this.element.setAttributes(e)}wait(){if(document.readyState!=="loading")this._update();else{let e=()=>{this._update(),J.default.unbind("ready",e)};J.default.on("ready",e)}}_toNodeList(e){return e instanceof Node?[e]:Array.isArray(e)&&e.every(s=>s instanceof Node)?e:[Z.default.createText(String(e))]}_update(){typeof this._children>"u"&&(this._children=Array.from(this.childNodes||[])),this._initiated||this.render()}};_e.default=rt});var te=O(ve=>{"use strict";var _t=ve&&ve.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ve,"__esModule",{value:!0});ve.default=es;var Qt=_t(he()),Vt=_t(ee());function es(t=null,e=!1){if(!t&&(t=Vt.default.get("current"),!t)){if(!e)throw Qt.default.for("Not called within a Temple component");return null}return t}});var vt=O(ye=>{"use strict";var ts=ye&&ye.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ye,"__esModule",{value:!0});var ss=ts(ee());function rs(t){let e=ss.default.get("env")||{};return t?e[t]||null:e}ye.default=rs});var nt=O(we=>{"use strict";var yt=we&&we.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(we,"__esModule",{value:!0});we.default=is;var ns=yt(te()),as=yt(ee());function is(t=null){let e=(0,ns.default)(t,!0);return typeof e=="string"?as.default.get("props")||{}:e?e.props:{}}});var At=O(se=>{"use strict";var wt=se&&se.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(se,"__esModule",{value:!0});se.classlist=cs;se.default=us;var ls=wt(te()),os=wt(nt());function cs(t=null){var e;if(t==="body")return document.body.classList;if(t==="head")return document.head.classList;if(t==="document")return(e=document.body.parentElement)===null||e===void 0?void 0:e.classList;let s=(0,ls.default)(t);return s?.classList}function us(t=null){return(0,os.default)(t).class}});var Tt=O(Y=>{"use strict";var ds=Y&&Y.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Y,"__esModule",{value:!0});Y.innerHTML=ps;Y.innerText=ms;Y.default=at;var fs=ds(te());function ps(t=null){let e=at(t),s=document.createElement("template");return s.append(...e.map(a=>a.cloneNode(!0))),s.innerHTML}function ms(t=null){let e=at(t),s=document.createElement("template");return s.append(...e.map(a=>a.cloneNode(!0))),s.innerText}function at(t=null){let e=(0,fs.default)(t,!0);return typeof e!="string"&&e?e.originalChildren||[]:[]}});var kt=O(K=>{"use strict";var Et=K&&K.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(K,"__esModule",{value:!0});K.SignalRegistry=void 0;K.default=bs;var hs=Et(te()),gs=Et(he()),re=class t{static observe(e,s){let a={getter:()=>u.raw,setter:g=>g},r=new Set,u={raw:s,change(g){r.add(g)},getter(g){return a.getter=g,u},setter(g){return a.setter=g,u}};Object.defineProperty(u,"value",{get(){return a.getter()},set(g){let y=a.setter(g),A=t.serialize(y)!==t.serialize(u.raw);u.raw=y,A&&(r.forEach(b=>b(y)),e.render())}});let _=this._observers.get(e);return _?(_.observed++,_.values.push(u)):this._observers.set(e,{observed:1,values:[u]}),u}static observer(e){return this._observers.get(e)||null}static serialize(e){return JSON.stringify(e)}};K.SignalRegistry=re;re._observers=new Map;function bs(t,e=null){let s=(0,hs.default)(e);if(!s.initiated)return re.observe(s,t);let a=re.observer(s);if(!a)throw gs.default.for("Signal state mismatch");return a.values[a.observed++%a.values.length]}});var lt=O(h=>{"use strict";var xs=h&&h.__createBinding||(Object.create?function(t,e,s,a){a===void 0&&(a=s);var r=Object.getOwnPropertyDescriptor(e,s);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,a,r)}:function(t,e,s,a){a===void 0&&(a=s),t[a]=e[s]}),_s=h&&h.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ae=h&&h.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var s in t)s!=="default"&&Object.prototype.hasOwnProperty.call(t,s)&&xs(e,t,s);return _s(e,t),e},X=h&&h.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(h,"__esModule",{value:!0});h.SignalRegistry=h.TempleException=h.TempleEmitter=h.TempleElement=h.TempleRegistry=h.TempleComponent=h.TempleDataMap=h.emitter=h.signal=h.innerHTML=h.innerText=h.children=h.classnames=h.classlist=h.props=h.env=h.data=h.component=void 0;var vs=X(he());h.TempleException=vs.default;var ys=X(xt());h.TempleComponent=ys.default;var ws=X(Me());h.TempleRegistry=ws.default;var As=X(st());h.TempleElement=As.default;var Lt=Ae(Oe());h.emitter=Lt.default;Object.defineProperty(h,"TempleEmitter",{enumerable:!0,get:function(){return Lt.TempleEmitter}});var Ts=X(te());h.component=Ts.default;var Ft=Ae(ee());h.data=Ft.default;Object.defineProperty(h,"TempleDataMap",{enumerable:!0,get:function(){return Ft.TempleDataMap}});var Es=X(vt());h.env=Es.default;var ks=X(nt());h.props=ks.default;var Pt=Ae(At());h.classnames=Pt.default;Object.defineProperty(h,"classlist",{enumerable:!0,get:function(){return Pt.classlist}});var it=Ae(Tt());h.children=it.default;Object.defineProperty(h,"innerHTML",{enumerable:!0,get:function(){return it.innerHTML}});Object.defineProperty(h,"innerText",{enumerable:!0,get:function(){return it.innerText}});var St=Ae(kt());h.signal=St.default;Object.defineProperty(h,"SignalRegistry",{enumerable:!0,get:function(){return St.SignalRegistry}})});var q=O((Us,Ct)=>{Ct.exports={...lt()}});var B=O((Ws,jt)=>{jt.exports={...lt()}});var Mt=O((Qs,Be)=>{var Ls=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var d=function(t){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,s=0,a={},r={manual:t.Prism&&t.Prism.manual,disableWorkerMessageHandler:t.Prism&&t.Prism.disableWorkerMessageHandler,util:{encode:function i(n){return n instanceof u?new u(n.type,i(n.content),n.alias):Array.isArray(n)?n.map(i):n.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(o){var i=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(o.stack)||[])[1];if(i){var n=document.getElementsByTagName("script");for(var l in n)if(n[l].src==i)return n[l]}return null}},isActive:function(i,n,l){for(var o="no-"+n;i;){var c=i.classList;if(c.contains(n))return!0;if(c.contains(o))return!1;i=i.parentElement}return!!l}},languages:{plain:a,plaintext:a,text:a,txt:a,extend:function(i,n){var l=r.util.clone(r.languages[i]);for(var o in n)l[o]=n[o];return l},insertBefore:function(i,n,l,o){o=o||r.languages;var c=o[i],m={};for(var x in c)if(c.hasOwnProperty(x)){if(x==n)for(var p in l)l.hasOwnProperty(p)&&(m[p]=l[p]);l.hasOwnProperty(x)||(m[x]=c[x])}var E=o[i];return o[i]=m,r.languages.DFS(r.languages,function(j,I){I===E&&j!=i&&(this[j]=m)}),m},DFS:function i(n,l,o,c){c=c||{};var m=r.util.objId;for(var x in n)if(n.hasOwnProperty(x)){l.call(n,x,n[x],o||x);var p=n[x],E=r.util.type(p);E==="Object"&&!c[m(p)]?(c[m(p)]=!0,i(p,l,null,c)):E==="Array"&&!c[m(p)]&&(c[m(p)]=!0,i(p,l,x,c))}}},plugins:{},highlightAll:function(i,n){r.highlightAllUnder(document,i,n)},highlightAllUnder:function(i,n,l){var o={callback:l,container:i,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};r.hooks.run("before-highlightall",o),o.elements=Array.prototype.slice.apply(o.container.querySelectorAll(o.selector)),r.hooks.run("before-all-elements-highlight",o);for(var c=0,m;m=o.elements[c++];)r.highlightElement(m,n===!0,o.callback)},highlightElement:function(i,n,l){var o=r.util.getLanguage(i),c=r.languages[o];r.util.setLanguage(i,o);var m=i.parentElement;m&&m.nodeName.toLowerCase()==="pre"&&r.util.setLanguage(m,o);var x=i.textContent,p={element:i,language:o,grammar:c,code:x};function E(I){p.highlightedCode=I,r.hooks.run("before-insert",p),p.element.innerHTML=p.highlightedCode,r.hooks.run("after-highlight",p),r.hooks.run("complete",p),l&&l.call(p.element)}if(r.hooks.run("before-sanity-check",p),m=p.element.parentElement,m&&m.nodeName.toLowerCase()==="pre"&&!m.hasAttribute("tabindex")&&m.setAttribute("tabindex","0"),!p.code){r.hooks.run("complete",p),l&&l.call(p.element);return}if(r.hooks.run("before-highlight",p),!p.grammar){E(r.util.encode(p.code));return}if(n&&t.Worker){var j=new Worker(r.filename);j.onmessage=function(I){E(I.data)},j.postMessage(JSON.stringify({language:p.language,code:p.code,immediateClose:!0}))}else E(r.highlight(p.code,p.grammar,p.language))},highlight:function(i,n,l){var o={code:i,grammar:n,language:l};if(r.hooks.run("before-tokenize",o),!o.grammar)throw new Error('The language "'+o.language+'" has no grammar.');return o.tokens=r.tokenize(o.code,o.grammar),r.hooks.run("after-tokenize",o),u.stringify(r.util.encode(o.tokens),o.language)},tokenize:function(i,n){var l=n.rest;if(l){for(var o in l)n[o]=l[o];delete n.rest}var c=new y;return A(c,c.head,i),g(i,c,n,c.head,0),T(c)},hooks:{all:{},add:function(i,n){var l=r.hooks.all;l[i]=l[i]||[],l[i].push(n)},run:function(i,n){var l=r.hooks.all[i];if(!(!l||!l.length))for(var o=0,c;c=l[o++];)c(n)}},Token:u};t.Prism=r;function u(i,n,l,o){this.type=i,this.content=n,this.alias=l,this.length=(o||"").length|0}u.stringify=function i(n,l){if(typeof n=="string")return n;if(Array.isArray(n)){var o="";return n.forEach(function(E){o+=i(E,l)}),o}var c={type:n.type,content:i(n.content,l),tag:"span",classes:["token",n.type],attributes:{},language:l},m=n.alias;m&&(Array.isArray(m)?Array.prototype.push.apply(c.classes,m):c.classes.push(m)),r.hooks.run("wrap",c);var x="";for(var p in c.attributes)x+=" "+p+'="'+(c.attributes[p]||"").replace(/"/g,""")+'"';return"<"+c.tag+' class="'+c.classes.join(" ")+'"'+x+">"+c.content+""+c.tag+">"};function _(i,n,l,o){i.lastIndex=n;var c=i.exec(l);if(c&&o&&c[1]){var m=c[1].length;c.index+=m,c[0]=c[0].slice(m)}return c}function g(i,n,l,o,c,m){for(var x in l)if(!(!l.hasOwnProperty(x)||!l[x])){var p=l[x];p=Array.isArray(p)?p:[p];for(var E=0;E
=m.reach);z+=f.value.length,f=f.next){var H=f.value;if(n.length>i.length)return;if(!(H instanceof u)){var G=1,$;if(Ze){if($=_(V,z,i,Q),!$||$.index>=i.length)break;var Le=$.index,$t=$.index+$[0].length,U=z;for(U+=f.value.length;Le>=U;)f=f.next,U+=f.value.length;if(U-=f.value.length,z=U,f.value instanceof u)continue;for(var me=f;me!==n.tail&&(U<$t||typeof me.value=="string");me=me.next)G++,U+=me.value.length;G--,H=i.slice(z,U),$.index-=z}else if($=_(V,0,H,Q),!$)continue;var Le=$.index,Fe=$[0],Ye=H.slice(0,Le),ft=H.slice(Le+Fe.length),Ke=z+H.length;m&&Ke>m.reach&&(m.reach=Ke);var Pe=f.prev;Ye&&(Pe=A(n,Pe,Ye),z+=Ye.length),b(n,Pe,G);var Nt=new u(x,I?r.tokenize(Fe,I):Fe,dt,Fe);if(f=A(n,Pe,Nt),ft&&A(n,f,ft),G>1){var Xe={cause:x+","+E,reach:Ke};g(i,n,l,f.prev,z,Xe),m&&Xe.reach>m.reach&&(m.reach=Xe.reach)}}}}}}function y(){var i={value:null,prev:null,next:null},n={value:null,prev:i,next:null};i.next=n,this.head=i,this.tail=n,this.length=0}function A(i,n,l){var o=n.next,c={value:l,prev:n,next:o};return n.next=c,o.prev=c,i.length++,c}function b(i,n,l){for(var o=n.next,c=0;c/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/?[\da-f]{1,8};/i]};d.languages.markup.tag.inside["attr-value"].inside.entity=d.languages.markup.entity;d.languages.markup.doctype.inside["internal-subset"].inside=d.languages.markup;d.hooks.add("wrap",function(t){t.type==="entity"&&(t.attributes.title=t.content.replace(/&/,"&"))});Object.defineProperty(d.languages.markup.tag,"addInlined",{value:function(e,s){var a={};a["language-"+s]={pattern:/(^$)/i,lookbehind:!0,inside:d.languages[s]},a.cdata=/^$/i;var r={"included-cdata":{pattern://i,inside:a}};r["language-"+s]={pattern:/[\s\S]+/,inside:d.languages[s]};var u={};u[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return e}),"i"),lookbehind:!0,greedy:!0,inside:r},d.languages.insertBefore("markup","cdata",u)}});Object.defineProperty(d.languages.markup.tag,"addAttribute",{value:function(t,e){d.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+t+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[e,"language-"+e],inside:d.languages[e]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});d.languages.html=d.languages.markup;d.languages.mathml=d.languages.markup;d.languages.svg=d.languages.markup;d.languages.xml=d.languages.extend("markup",{});d.languages.ssml=d.languages.xml;d.languages.atom=d.languages.xml;d.languages.rss=d.languages.xml;(function(t){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+e.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var s=t.languages.markup;s&&(s.tag.addInlined("style","css"),s.tag.addAttribute("style","css"))})(d);d.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/};d.languages.javascript=d.languages.extend("clike",{"class-name":[d.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});d.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;d.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:d.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:d.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:d.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:d.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:d.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});d.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:d.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});d.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});d.languages.markup&&(d.languages.markup.tag.addInlined("script","javascript"),d.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));d.languages.js=d.languages.javascript;(function(){if(typeof d>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var t="Loading\u2026",e=function(k,v){return"\u2716 Error "+k+" while fetching file: "+v},s="\u2716 Error: File does not exist or is empty",a={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},r="data-src-status",u="loading",_="loaded",g="failed",y="pre[data-src]:not(["+r+'="'+_+'"]):not(['+r+'="'+u+'"])';function A(k,v,L){var i=new XMLHttpRequest;i.open("GET",k,!0),i.onreadystatechange=function(){i.readyState==4&&(i.status<400&&i.responseText?v(i.responseText):i.status>=400?L(e(i.status,i.statusText)):L(s))},i.send(null)}function b(k){var v=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(k||"");if(v){var L=Number(v[1]),i=v[2],n=v[3];return i?n?[L,Number(n)]:[L,void 0]:[L,L]}}d.hooks.add("before-highlightall",function(k){k.selector+=", "+y}),d.hooks.add("before-sanity-check",function(k){var v=k.element;if(v.matches(y)){k.code="",v.setAttribute(r,u);var L=v.appendChild(document.createElement("CODE"));L.textContent=t;var i=v.getAttribute("data-src"),n=k.language;if(n==="none"){var l=(/\.(\w+)$/.exec(i)||[,"none"])[1];n=a[l]||l}d.util.setLanguage(L,n),d.util.setLanguage(v,n);var o=d.plugins.autoloader;o&&o.loadLanguages(n),A(i,function(c){v.setAttribute(r,_);var m=b(v.getAttribute("data-range"));if(m){var x=c.split(/\r\n?|\n/g),p=m[0],E=m[1]==null?x.length:m[1];p<0&&(p+=x.length),p=Math.max(0,Math.min(p-1,x.length)),E<0&&(E+=x.length),E=Math.max(0,Math.min(E,x.length)),c=x.slice(p,E).join(`
-`),v.hasAttribute("data-start")||v.setAttribute("data-start",String(p+1))}L.textContent=c,d.highlightElement(L)},function(c){v.setAttribute(r,g),L.textContent=c})}}),d.plugins.fileHighlight={highlight:function(v){for(var L=(v||document).querySelectorAll(y),i=0,n;n=L[i++];)d.highlightElement(n)}};var T=!1;d.fileHighlight=function(){T||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),T=!0),d.plugins.fileHighlight.highlight.apply(this,arguments)}})()});var Ss={};Bt(Ss,{BUILD_ID:()=>Ps,TempleComponent:()=>C.TempleComponent,TempleElement:()=>C.TempleElement,TempleEmitter:()=>C.TempleEmitter,TempleException:()=>C.TempleException,TempleRegistry:()=>C.TempleRegistry,children:()=>C.children,components:()=>Fs,data:()=>C.data,emitter:()=>C.emitter,props:()=>C.props,signal:()=>C.signal});var N=F(q());var Ot=F(q()),R=F(B()),ne=class extends Ot.TempleComponent{static component=["panel","Panel_68990936d3d4d4676d69"];styles(){return""}template(){(0,R.classlist)().add("relative","w-full","vh","scroll-hidden");let e=(0,R.children)(),s=e.find(b=>b.nodeName.endsWith("PANEL-MAIN")),a=e.find(b=>b.nodeName.endsWith("PANEL-HEAD")),r=e.find(b=>b.nodeName.endsWith("PANEL-FOOT")),u=e.find(b=>b.nodeName.endsWith("PANEL-LEFT")),_=e.find(b=>b.nodeName.endsWith("PANEL-RIGHT")),g={head:!!a,foot:!!r,left:!!u,right:!!_},y=new Set,A={left:!1,right:!1,change:b=>y.add(b)};return s&&R.TempleRegistry.get(s).setAttribute("show",A).setAttribute("layout",g),a&&R.TempleRegistry.get(a).setAttribute("show",A).setAttribute("layout",g),r&&R.TempleRegistry.get(r).setAttribute("show",A).setAttribute("layout",g),u&&R.TempleRegistry.get(u).setAttribute("show",A).setAttribute("layout",g),_&&R.TempleRegistry.get(_).setAttribute("show",A).setAttribute("layout",g),this.toggle=b=>{A[b]=!A[b],y.forEach(T=>T())},()=>[R.TempleRegistry.createText(`
-`,!1),...this._toNodeList(e)]}};var Te=F(q()),Re=F(B()),ae=class extends Te.TempleComponent{static component=["head","Head_2bf4dff19bc88ba4138b"];styles(){return""}template(){let{layout:e,show:s}=this.element.attributes,a=(0,Re.classlist)(),r=u=>{this.classList.add("absolute","top-0","right-0","h-60","transition-500"),e?.left?(this.classList.remove("left-0"),this.classList.add("left-226")):this.classList.add("left-0"),s.left?(this.classList.remove("md-left-0"),this.classList.add("md-left-226")):(this.classList.remove("md-left-226"),this.classList.add("md-left-0"))};return s.change(r),r(),()=>[Te.TempleRegistry.createText(`
-`,!1),Te.TempleRegistry.createElement("header",{class:"block w-full h-full relative"},[...this._toNodeList((0,Re.children)())]).element]}};var Ee=F(q()),ze=F(B()),ie=class extends Ee.TempleComponent{static component=["main","Main_847772763f4518728ede"];styles(){return""}template(){let{layout:e,show:s}=this.element.attributes,a=(0,ze.classlist)(),r=u=>{this.classList.add("absolute","transition-500"),e?.head?(this.classList.remove("top-0"),this.classList.add("top-60")):this.classList.add("top-0"),e?.foot?(this.classList.remove("bottom-0"),this.classList.add("bottom-60")):this.classList.add("bottom-0"),e?.left?(this.classList.remove("left-0"),this.classList.add("left-226")):this.classList.add("left-0"),e?.right?(this.classList.remove("right-0"),this.classList.add("right-200")):this.classList.add("right-0"),s.left?(this.classList.remove("md-left-0"),this.classList.add("md-left-226")):(this.classList.remove("md-left-226"),this.classList.add("md-left-0")),s.right?(this.classList.remove("md-right-0"),this.classList.add("md-right-200")):(this.classList.remove("md-right-200"),this.classList.add("md-right-0"))};return s.change(r),r(),()=>[Ee.TempleRegistry.createText(`
-`,!1),Ee.TempleRegistry.createElement("main",{class:"block w-full h-full relative"},[...this._toNodeList((0,ze.children)())]).element]}};var Ie=F(q()),oe=F(B()),le=class extends Ie.TempleComponent{static component=["button","Button_d798a3059463b9c4868b"];styles(){return""}template(){let{block:e,full:s,color:a,xs:r,sm:u,md:_,lg:g,xl:y,xl2:A,xl3:b,xl4:T,xl5:k,curved:v,rounded:L,pill:i,info:n,warning:l,success:o,error:c,muted:m,primary:x,secondary:p,outline:E,transparent:j,solid:I,href:Q,style:Ze,class:dt,...Je}=(0,oe.props)(),V=(0,oe.component)(),f=document.createElement(Q?"a":"button");Object.entries(Je).forEach(([G,$])=>f.setAttribute(G,$)),Q&&f.setAttribute("href",Q),(0,oe.children)().forEach(G=>f.appendChild(G)),f.classList.add("inline-block","tx-center","tx-nodecor","cursor-pointer"),e?(V.classList.add("block"),f.classList.add("block")):(V.classList.add("inline-block"),f.classList.add("inline-block")),s&&(V.classList.add("w-full"),f.classList.add("w-full"));let z=r?f.classList.add("py-2","px-4"):u?f.classList.add("py-4","px-8"):_?f.classList.add("py-6","px-12"):g?f.classList.add("py-8","px-16"):y?f.classList.add("py-10","px-20"):A?f.classList.add("py-12","px-24"):b?f.classList.add("py-14","px-28"):T?f.classList.add("py-16","px-32"):k?f.classList.add("py-18","px-36"):f.classList.add("py-6","px-12");v?f.classList.add("curved"):L?f.classList.add("rounded"):i&&f.classList.add("pill");let H=E?"outline":j?"transparent":"solid";return H==="outline"||H==="transparent"?(f.classList.add("bd-solid","bd-thin"),H==="outline"?f.classList.add("bg-white"):f.classList.add("bg-none"),a?(f.style.color=a,f.style.borderColor=a):n?f.classList.add("bd-info","tx-info"):l?f.classList.add("bd-warning","tx-warning"):o?f.classList.add("bd-success","tx-success"):c?f.classList.add("bd-error","tx-error"):m?f.classList.add("bd-muted","tx-muted"):x?f.classList.add("bd-primary","tx-primary"):p&&f.classList.add("bd-secondary","tx-secondary")):(f.classList.add("bd-0","tx-white"),a?f.style.backgroundColor=a:n?f.classList.add("bg-info"):l?f.classList.add("bg-warning"):o?f.classList.add("bg-success"):c?f.classList.add("bg-error"):m?f.classList.add("bg-muted"):x?f.classList.add("bg-primary"):p&&f.classList.add("bg-secondary")),()=>[Ie.TempleRegistry.createText(`
-`,!1),...this._toNodeList([f])]}};var P=F(q()),He=F(B()),ce=class extends P.TempleComponent{static component=["app","App_381239c61b65b86a1c20"];styles(){return""}template(){let{title:e,height:s}=(0,He.props)(),a=s?`height:${s}px`:"";return()=>[P.TempleRegistry.createText(`
-`,!1),P.TempleRegistry.createElement("div",{class:"bd-rad-curved scroll-hidden shadow-0-0-10-0-0-0-5"},[P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("div",{class:"relative flex flex-center-y gap-10 p-10 bg-t-1 tx-c-999999 tx-16"},[P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("span",{class:"bg-h-999999 pill h-10 w-10"},[]).element,P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("span",{class:"bg-h-999999 pill h-10 w-10"},[]).element,P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("span",{class:"bg-h-999999 pill h-10 w-10"},[]).element,P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("span",{class:"flex flex-center h-full w-full absolute top-0 left-0"},[P.TempleRegistry.createText(`
- `,!1),...this._toNodeList(e),P.TempleRegistry.createText(`
- `,!1)]).element,P.TempleRegistry.createText(`
- `,!1)]).element,P.TempleRegistry.createText(`
- `,!1),P.TempleRegistry.createElement("div",{class:"bg-black tx-t-1 relative",style:a},[...this._toNodeList((0,He.children)())]).element,P.TempleRegistry.createText(`
-`,!1)]).element]}};var w=F(q()),ot=F(Mt()),Dt=F(B()),ue=class extends w.TempleComponent{static component=["code","Code_5294df1c620ef5ddbd2f"];styles(){return`:host {
+var TempleAPI = (() => {
+ var __create = Object.create;
+ var __defProp = Object.defineProperty;
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+ var __getOwnPropNames = Object.getOwnPropertyNames;
+ var __getProtoOf = Object.getPrototypeOf;
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
+ var __commonJS = (cb, mod) => function __require() {
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+ };
+ var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+ };
+ var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+ };
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+ // If the importer is in node compatibility mode or this is not an ESM
+ // file that has been converted to a CommonJS file using a Babel-
+ // compatible transform (i.e. "__esModule" has not been set), then set
+ // "default" to the CommonJS "module.exports" for node compatibility.
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+ mod
+ ));
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+
+ // ../temple/dist/Exception.js
+ var require_Exception = __commonJS({
+ "../temple/dist/Exception.js"(exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var TempleException3 = class extends Error {
+ static for(message, ...values) {
+ values.forEach(function(value) {
+ message = message.replace("%s", value);
+ });
+ return new this(message);
+ }
+ static forErrorsFound(errors) {
+ const exception = new this("Invalid Parameters");
+ exception.errors = errors;
+ return exception;
+ }
+ static require(condition, message, ...values) {
+ if (!condition) {
+ for (const value of values) {
+ message = message.replace("%s", value);
+ }
+ throw new this(message);
+ }
+ }
+ constructor(message, code = 500) {
+ super();
+ this.errors = {};
+ this.start = 0;
+ this.end = 0;
+ this.message = message;
+ this.name = this.constructor.name;
+ this.code = code;
+ }
+ withCode(code) {
+ this.code = code;
+ return this;
+ }
+ withPosition(start, end) {
+ this.start = start;
+ this.end = end;
+ return this;
+ }
+ toJSON() {
+ return {
+ error: true,
+ code: this.code,
+ message: this.message
+ };
+ }
+ };
+ exports.default = TempleException3;
+ }
+ });
+
+ // ../temple/dist/client/TempleEmitter.js
+ var require_TempleEmitter = __commonJS({
+ "../temple/dist/client/TempleEmitter.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.match = exports.TempleEmitter = exports.events = void 0;
+ exports.bindAttribute = bindAttribute;
+ exports.unbindAttribute = unbindAttribute;
+ var TempleRegistry_1 = __importDefault(require_TempleRegistry());
+ exports.events = [
+ "click",
+ "dblclick",
+ "mousedown",
+ "mouseup",
+ "mousemove",
+ "mouseover",
+ "mouseout",
+ "wheel",
+ "keydown",
+ "keypress",
+ "keyup",
+ "blur",
+ "change",
+ "contextmenu",
+ "focus",
+ "input",
+ "submit",
+ "invalid",
+ "reset",
+ "search",
+ "select",
+ "copy",
+ "cut",
+ "paste",
+ "drag",
+ "dragstart",
+ "dragend",
+ "dragover",
+ "dragenter",
+ "dragleave",
+ "drop",
+ "scroll",
+ "durationchange",
+ "ended",
+ "error",
+ "loadeddata",
+ "loadedmetadata",
+ "loadstart",
+ "pause",
+ "play",
+ "playing",
+ "progress",
+ "ratechange",
+ "seeked",
+ "seeking",
+ "stalled",
+ "suspend",
+ "timeupdate",
+ "volumechange",
+ "waiting",
+ "animationstart",
+ "animationend",
+ "animationiteration",
+ "transitionend",
+ "toggle"
+ ];
+ var TempleEmitter2 = class extends EventTarget {
+ emit(event, target) {
+ this.dispatchEvent(new CustomEvent(event, { detail: target }));
+ return this;
+ }
+ on(event, callback) {
+ if (event === "ready") {
+ if (document.readyState !== "loading") {
+ const event2 = new CustomEvent("ready");
+ setTimeout(() => callback(event2), 1);
+ return this;
+ }
+ }
+ this.addEventListener(event, callback);
+ return this;
+ }
+ once(event, callback) {
+ const unbinder = (e) => {
+ this.unbind(event, unbinder);
+ callback(e);
+ };
+ this.on(event, unbinder);
+ return this;
+ }
+ unbind(event, callback) {
+ this.removeEventListener(event, callback);
+ return this;
+ }
+ };
+ exports.TempleEmitter = TempleEmitter2;
+ var match = (element, attribute) => {
+ return Array.from(element.querySelectorAll("*")).filter((element2) => {
+ const node = TempleRegistry_1.default.get(element2);
+ const matched = node && node.hasAttribute(attribute) && !node.hasEvent(attribute);
+ if (matched) {
+ node.addEvent(attribute);
+ }
+ return matched;
+ }).map((element2) => TempleRegistry_1.default.get(element2));
+ };
+ exports.match = match;
+ function bindAttribute(name, bind) {
+ emitter3.on("mounted", (e) => {
+ if (!e.detail)
+ return;
+ const element = e.detail;
+ (0, exports.match)(element.shadowRoot || element, name).forEach(bind);
+ });
+ }
+ function unbindAttribute(name, bind) {
+ emitter3.on("unmounted", (e) => {
+ if (!e.detail)
+ return;
+ const element = e.detail;
+ (0, exports.match)(element.shadowRoot || element, name).forEach(bind);
+ });
+ }
+ var emitter3 = new TempleEmitter2();
+ exports.default = (() => {
+ document.onreadystatechange = () => {
+ if (document.readyState !== "loading") {
+ emitter3.emit("ready");
+ }
+ };
+ bindAttribute("mount", (element) => {
+ const callback = element.getAttribute("mount");
+ if (typeof callback === "function") {
+ const event = new CustomEvent("mount", {
+ detail: {
+ node: element,
+ target: element.element
+ }
+ });
+ callback(event);
+ }
+ });
+ unbindAttribute("unmount", (element) => {
+ const callback = element.getAttribute("unmount");
+ if (typeof callback === "function") {
+ const event = new CustomEvent("unmount", {
+ detail: {
+ node: element,
+ target: element.element
+ }
+ });
+ callback(event);
+ }
+ });
+ bindAttribute("connect", (element) => {
+ const callback = element.getAttribute("connect");
+ if (typeof callback === "function") {
+ const event = new CustomEvent("connect", {
+ detail: {
+ node: element,
+ target: element.element
+ }
+ });
+ callback(event);
+ }
+ });
+ bindAttribute("disconnect", (element) => {
+ const callback = element.getAttribute("disconnect");
+ if (typeof callback === "function") {
+ const event = new CustomEvent("disconnect", {
+ detail: {
+ node: element,
+ target: element.element
+ }
+ });
+ callback(event);
+ }
+ });
+ bindAttribute("adopt", (element) => {
+ const callback = element.getAttribute("adopt");
+ if (typeof callback === "function") {
+ const event = new CustomEvent("adopt", {
+ detail: {
+ node: element,
+ target: element.element
+ }
+ });
+ callback(event);
+ }
+ });
+ bindAttribute("if", (element) => {
+ const condition = element.getAttribute("if");
+ if (condition === false || condition === "false") {
+ element.element.remove();
+ } else if (typeof condition === "function" && !condition()) {
+ element.element.remove();
+ }
+ });
+ exports.events.forEach((event) => bindAttribute(event, (element) => {
+ const callback = element.getAttribute(event);
+ if (typeof callback === "function") {
+ element.element.removeEventListener(event, callback);
+ element.element.addEventListener(event, callback);
+ }
+ }));
+ return emitter3;
+ })();
+ }
+ });
+
+ // ../temple/dist/client/TempleElement.js
+ var require_TempleElement = __commonJS({
+ "../temple/dist/client/TempleElement.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var TempleEmitter_1 = __importDefault(require_TempleEmitter());
+ var TempleElement2 = class {
+ get attributes() {
+ return Object.assign({}, this._attributes);
+ }
+ get element() {
+ return this._element;
+ }
+ get events() {
+ return this._events;
+ }
+ constructor(element, attributes) {
+ this._events = /* @__PURE__ */ new Set();
+ this._element = element;
+ this._attributes = attributes;
+ }
+ addEvent(event) {
+ this._events.add(event);
+ return this;
+ }
+ getAttribute(key) {
+ return this._attributes[key];
+ }
+ hasAttribute(key) {
+ return key in this._attributes;
+ }
+ hasEvent(event) {
+ return this._events.has(event);
+ }
+ removeAttribute(key, silent = false) {
+ const current = this.getAttribute(key);
+ if (typeof current === "undefined") {
+ return this;
+ }
+ delete this._attributes[key];
+ this._element.removeAttribute(key);
+ if (!silent) {
+ TempleEmitter_1.default.emit("attribute-remove", {
+ element: this,
+ key,
+ previous: current
+ });
+ }
+ return this;
+ }
+ setAttribute(key, value, silent = false) {
+ if (typeof value === "undefined") {
+ return this.removeAttribute(key, silent);
+ }
+ const current = this.getAttribute(key);
+ if (current === value) {
+ return this;
+ }
+ this._attributes[key] = value;
+ if (typeof value === "string") {
+ this._element.setAttribute(key, value);
+ }
+ if (!silent) {
+ if (typeof current === "undefined") {
+ TempleEmitter_1.default.emit("attribute-create", { element: this, key, value });
+ } else {
+ TempleEmitter_1.default.emit("attribute-update", {
+ element: this,
+ key,
+ value,
+ previous: current
+ });
+ }
+ }
+ return this;
+ }
+ setAttributes(attributes, silent = false) {
+ for (const [key, value] of Object.entries(attributes)) {
+ this.setAttribute(key, value, silent);
+ }
+ const names = Object.keys(attributes);
+ for (const key of Object.keys(this._attributes)) {
+ if (!names.includes(key)) {
+ this.removeAttribute(key, silent);
+ }
+ }
+ return this;
+ }
+ };
+ exports.default = TempleElement2;
+ }
+ });
+
+ // ../temple/dist/client/TempleRegistry.js
+ var require_TempleRegistry = __commonJS({
+ "../temple/dist/client/TempleRegistry.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var TempleElement_1 = __importDefault(require_TempleElement());
+ var decoder = document.createElement("textarea");
+ var decode = (value) => {
+ decoder.innerHTML = value;
+ return decoder.value;
+ };
+ var TempleRegistry12 = class {
+ static get elements() {
+ return this._elements;
+ }
+ static createComponent(tagname, definition, attributes, children11 = []) {
+ const template = document.createElement("template");
+ template.innerHTML = `<${tagname}>${tagname}>`;
+ const fragment = template.content;
+ const component2 = fragment.querySelector(`${tagname}`);
+ Object.setPrototypeOf(component2, definition.prototype);
+ component2.constructor = definition.constructor;
+ component2.constructor.component = definition.component;
+ component2.register(attributes, children11);
+ return component2.element;
+ }
+ static createElement(name, attributes, children11 = []) {
+ const element = document.createElement(name);
+ for (const [key, value] of Object.entries(attributes)) {
+ if (typeof value === "string") {
+ element.setAttribute(key, value);
+ } else if (value === true) {
+ element.setAttribute(key, key);
+ }
+ }
+ children11.filter((child) => typeof child !== "undefined").forEach((child) => element.appendChild(child));
+ return this.register(element, attributes);
+ }
+ static createText(value, escape = true) {
+ return document.createTextNode(decode(value));
+ }
+ static filter(callback) {
+ const elements = [];
+ this._elements.forEach((temple, html) => {
+ if (callback(temple, html)) {
+ elements.push(temple);
+ }
+ });
+ return elements;
+ }
+ static get(element) {
+ return this._elements.get(element) || null;
+ }
+ static has(element) {
+ return this._elements.has(element);
+ }
+ static map(callback) {
+ const elements = [];
+ this._elements.forEach((temple, html) => {
+ elements.push(callback(temple, html));
+ });
+ return elements;
+ }
+ static register(element, attributes) {
+ if (this.has(element)) {
+ return this.get(element);
+ }
+ const node = new TempleElement_1.default(element, attributes || {});
+ this._elements.set(element, node);
+ return node;
+ }
+ };
+ TempleRegistry12._elements = /* @__PURE__ */ new Map();
+ exports.default = TempleRegistry12;
+ }
+ });
+
+ // ../temple/dist/client/data.js
+ var require_data = __commonJS({
+ "../temple/dist/client/data.js"(exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.TempleDataMap = void 0;
+ var TempleDataMap = class {
+ constructor() {
+ if (!window.__APP_DATA__) {
+ window.__APP_DATA__ = {};
+ }
+ }
+ clear() {
+ window.__APP_DATA__ = {};
+ return this;
+ }
+ delete(key) {
+ if (this.has(key)) {
+ delete window.__APP_DATA__[key];
+ return true;
+ }
+ return false;
+ }
+ entries() {
+ return Object.entries(window.__APP_DATA__);
+ }
+ has(key) {
+ return key in window.__APP_DATA__;
+ }
+ get(key) {
+ return window.__APP_DATA__[key];
+ }
+ keys() {
+ return Object.keys(window.__APP_DATA__);
+ }
+ set(key, value) {
+ window.__APP_DATA__[key] = value;
+ return this;
+ }
+ values() {
+ return Object.values(window.__APP_DATA__);
+ }
+ };
+ exports.TempleDataMap = TempleDataMap;
+ var data2 = new TempleDataMap();
+ exports.default = data2;
+ }
+ });
+
+ // ../temple/dist/client/TempleComponent.js
+ var require_TempleComponent = __commonJS({
+ "../temple/dist/client/TempleComponent.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var Exception_1 = __importDefault(require_Exception());
+ var TempleRegistry_1 = __importDefault(require_TempleRegistry());
+ var TempleEmitter_1 = __importDefault(require_TempleEmitter());
+ var data_1 = __importDefault(require_data());
+ var TempleComponent11 = class _TempleComponent extends HTMLElement {
+ static register() {
+ customElements.define(this.component[0], this);
+ }
+ get attr() {
+ return Object.fromEntries(Array.from(this.attributes).map((attr) => [attr.name, attr.value]));
+ }
+ get element() {
+ if (!TempleRegistry_1.default.has(this)) {
+ throw Exception_1.default.for("Component not mapped.");
+ }
+ return TempleRegistry_1.default.get(this);
+ }
+ get metadata() {
+ const [tagname, classname] = this.constructor.component;
+ return { tagname, classname };
+ }
+ get originalChildren() {
+ return this._children;
+ }
+ get initiated() {
+ return this._initiated;
+ }
+ get props() {
+ return this.getAttributes();
+ }
+ get virtual() {
+ return this._virtual;
+ }
+ set props(props7) {
+ this.setAttributes(props7);
+ }
+ constructor() {
+ super();
+ this._initiated = false;
+ this._template = null;
+ this._children = void 0;
+ this._rendering = false;
+ this._observer = null;
+ this._virtual = false;
+ if (!TempleRegistry_1.default.has(this)) {
+ throw Exception_1.default.for("Component not mapped.");
+ }
+ }
+ adoptedCallback() {
+ this.render();
+ TempleEmitter_1.default.emit("adopt", this);
+ }
+ connectedCallback() {
+ this.wait();
+ TempleEmitter_1.default.emit("connect", this);
+ }
+ disconnectedCallback() {
+ TempleEmitter_1.default.emit("disconnect", this);
+ }
+ getAttribute(name) {
+ return this.element.getAttribute(name);
+ }
+ getAttributes() {
+ return Object.assign({}, this.element.attributes);
+ }
+ getParentComponent() {
+ let parent = this.parentElement;
+ while (parent) {
+ if (parent instanceof _TempleComponent) {
+ return parent;
+ }
+ parent = parent.parentElement;
+ }
+ return null;
+ }
+ hasAttribute(name) {
+ return this.element.hasAttribute(name);
+ }
+ register(attributes = {}, children11 = []) {
+ if (TempleRegistry_1.default.has(this)) {
+ const element = TempleRegistry_1.default.get(this);
+ element.setAttributes(attributes);
+ } else {
+ TempleRegistry_1.default.register(this, attributes);
+ }
+ for (const [key, value] of Object.entries(attributes)) {
+ if (typeof value === "string") {
+ super.setAttribute(key, value);
+ } else if (value === true) {
+ super.setAttribute(key, key);
+ }
+ }
+ this._children = children11;
+ this._virtual = true;
+ this.connectedCallback();
+ }
+ removeAttribute(name) {
+ if (this.hasAttribute(name)) {
+ this.element.removeAttribute(name);
+ }
+ if (super.hasAttribute(name)) {
+ super.removeAttribute(name);
+ }
+ }
+ render() {
+ const parent = this.getParentComponent();
+ if (parent && !parent.initiated) {
+ return;
+ } else if (this._rendering) {
+ return;
+ }
+ this._rendering = true;
+ const prev = data_1.default.get("current");
+ data_1.default.set("current", this);
+ const styles = this.styles();
+ if (!this._template) {
+ this._template = this.template();
+ } else {
+ TempleEmitter_1.default.emit("unmounted", this);
+ }
+ const children11 = this._template().filter(Boolean);
+ if (styles.length === 0) {
+ this.textContent = "";
+ children11.forEach((child) => this.appendChild(child));
+ } else {
+ if (!this.shadowRoot) {
+ this.attachShadow({ mode: "open" });
+ }
+ const shadowRoot = this.shadowRoot;
+ this.textContent = "";
+ shadowRoot.textContent = "";
+ const style = document.createElement("style");
+ style.innerText = styles;
+ shadowRoot.appendChild(style);
+ children11.forEach((child) => {
+ var _a;
+ return (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.appendChild(child);
+ });
+ }
+ if (prev) {
+ data_1.default.set("current", prev);
+ } else {
+ data_1.default.delete("current");
+ }
+ this._initiated = true;
+ this._rendering = false;
+ TempleEmitter_1.default.emit("mounted", this);
+ return this.shadowRoot ? this.shadowRoot.innerHTML : this.innerHTML;
+ }
+ setAttribute(name, value) {
+ this.element.setAttribute(name, value);
+ if (typeof value === "string" || value === true) {
+ super.setAttribute(name, value);
+ }
+ }
+ setAttributes(attributes) {
+ this.element.setAttributes(attributes);
+ }
+ wait() {
+ if (document.readyState !== "loading") {
+ this._update();
+ } else {
+ const next = () => {
+ this._update();
+ TempleEmitter_1.default.unbind("ready", next);
+ };
+ TempleEmitter_1.default.on("ready", next);
+ }
+ }
+ _toNodeList(value) {
+ if (value instanceof Node) {
+ return [value];
+ }
+ if (Array.isArray(value)) {
+ if (value.every((item) => item instanceof Node)) {
+ return value;
+ }
+ }
+ return [TempleRegistry_1.default.createText(String(value))];
+ }
+ _update() {
+ if (typeof this._children === "undefined") {
+ this._children = Array.from(this.childNodes || []);
+ }
+ if (!this._initiated) {
+ this.render();
+ }
+ }
+ };
+ exports.default = TempleComponent11;
+ }
+ });
+
+ // ../temple/dist/client/component.js
+ var require_component = __commonJS({
+ "../temple/dist/client/component.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.default = component2;
+ var Exception_1 = __importDefault(require_Exception());
+ var data_1 = __importDefault(require_data());
+ function component2(component3 = null, nullable = false) {
+ if (!component3) {
+ component3 = data_1.default.get("current");
+ if (!component3) {
+ if (!nullable) {
+ throw Exception_1.default.for("Not called within a Temple component");
+ }
+ return null;
+ }
+ }
+ return component3;
+ }
+ }
+ });
+
+ // ../temple/dist/client/env.js
+ var require_env = __commonJS({
+ "../temple/dist/client/env.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var data_1 = __importDefault(require_data());
+ function env(name) {
+ const env2 = data_1.default.get("env") || {};
+ if (name) {
+ return env2[name] || null;
+ }
+ return env2;
+ }
+ exports.default = env;
+ }
+ });
+
+ // ../temple/dist/client/props.js
+ var require_props = __commonJS({
+ "../temple/dist/client/props.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.default = props7;
+ var component_1 = __importDefault(require_component());
+ var data_1 = __importDefault(require_data());
+ function props7(pointer = null) {
+ const component2 = (0, component_1.default)(pointer, true);
+ if (typeof component2 === "string") {
+ return data_1.default.get("props") || {};
+ }
+ return component2 ? component2.props : {};
+ }
+ }
+ });
+
+ // ../temple/dist/client/classnames.js
+ var require_classnames = __commonJS({
+ "../temple/dist/client/classnames.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.classlist = classlist5;
+ exports.default = classnames;
+ var component_1 = __importDefault(require_component());
+ var props_1 = __importDefault(require_props());
+ function classlist5(pointer = null) {
+ var _a;
+ if (pointer === "body") {
+ return document.body.classList;
+ } else if (pointer === "head") {
+ return document.head.classList;
+ } else if (pointer === "document") {
+ return (_a = document.body.parentElement) === null || _a === void 0 ? void 0 : _a.classList;
+ }
+ const component2 = (0, component_1.default)(pointer);
+ return component2 === null || component2 === void 0 ? void 0 : component2.classList;
+ }
+ function classnames(pointer = null) {
+ return (0, props_1.default)(pointer)["class"];
+ }
+ }
+ });
+
+ // ../temple/dist/client/children.js
+ var require_children = __commonJS({
+ "../temple/dist/client/children.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.innerHTML = innerHTML;
+ exports.innerText = innerText;
+ exports.default = children11;
+ var component_1 = __importDefault(require_component());
+ function innerHTML(pointer = null) {
+ const inner = children11(pointer);
+ const wrapper = document.createElement("template");
+ wrapper.append(...inner.map((child) => child.cloneNode(true)));
+ return wrapper.innerHTML;
+ }
+ function innerText(pointer = null) {
+ const inner = children11(pointer);
+ const wrapper = document.createElement("template");
+ wrapper.append(...inner.map((child) => child.cloneNode(true)));
+ return wrapper.innerText;
+ }
+ function children11(pointer = null) {
+ const component2 = (0, component_1.default)(pointer, true);
+ return typeof component2 !== "string" && component2 ? component2.originalChildren || [] : [];
+ }
+ }
+ });
+
+ // ../temple/dist/client/signal.js
+ var require_signal = __commonJS({
+ "../temple/dist/client/signal.js"(exports) {
+ "use strict";
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.SignalRegistry = void 0;
+ exports.default = signal2;
+ var component_1 = __importDefault(require_component());
+ var Exception_1 = __importDefault(require_Exception());
+ var SignalRegistry = class _SignalRegistry {
+ static observe(component2, value) {
+ const methods = {
+ getter: () => property.raw,
+ setter: (value2) => value2
+ };
+ const listeners = /* @__PURE__ */ new Set();
+ const property = {
+ raw: value,
+ change(callback) {
+ listeners.add(callback);
+ },
+ getter(callback) {
+ methods.getter = callback;
+ return property;
+ },
+ setter(callback) {
+ methods.setter = callback;
+ return property;
+ }
+ };
+ Object.defineProperty(property, "value", {
+ get() {
+ return methods.getter();
+ },
+ set(value2) {
+ const formatted = methods.setter(value2);
+ const rerender = _SignalRegistry.serialize(formatted) !== _SignalRegistry.serialize(property.raw);
+ property.raw = formatted;
+ if (rerender) {
+ listeners.forEach((listener) => listener(formatted));
+ component2.render();
+ }
+ }
+ });
+ const observer = this._observers.get(component2);
+ if (!observer) {
+ this._observers.set(component2, {
+ observed: 1,
+ values: [property]
+ });
+ } else {
+ observer.observed++;
+ observer.values.push(property);
+ }
+ return property;
+ }
+ static observer(component2) {
+ return this._observers.get(component2) || null;
+ }
+ static serialize(value) {
+ return JSON.stringify(value);
+ }
+ };
+ exports.SignalRegistry = SignalRegistry;
+ SignalRegistry._observers = /* @__PURE__ */ new Map();
+ function signal2(value, pointer = null) {
+ const component2 = (0, component_1.default)(pointer);
+ if (!component2.initiated) {
+ return SignalRegistry.observe(component2, value);
+ }
+ const observer = SignalRegistry.observer(component2);
+ if (!observer) {
+ throw Exception_1.default.for("Signal state mismatch");
+ }
+ const values = observer.values;
+ return values[observer.observed++ % observer.values.length];
+ }
+ }
+ });
+
+ // ../temple/dist/client.js
+ var require_client = __commonJS({
+ "../temple/dist/client.js"(exports) {
+ "use strict";
+ var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
+ if (k2 === void 0) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() {
+ return m[k];
+ } };
+ }
+ Object.defineProperty(o, k2, desc);
+ } : function(o, m, k, k2) {
+ if (k2 === void 0) k2 = k;
+ o[k2] = m[k];
+ });
+ var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+ } : function(o, v) {
+ o["default"] = v;
+ });
+ var __importStar = exports && exports.__importStar || function(mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) {
+ for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ }
+ __setModuleDefault(result, mod);
+ return result;
+ };
+ var __importDefault = exports && exports.__importDefault || function(mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+ };
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.SignalRegistry = exports.TempleException = exports.TempleEmitter = exports.TempleElement = exports.TempleRegistry = exports.TempleComponent = exports.TempleDataMap = exports.emitter = exports.signal = exports.innerHTML = exports.innerText = exports.children = exports.classnames = exports.classlist = exports.props = exports.env = exports.data = exports.component = void 0;
+ var Exception_1 = __importDefault(require_Exception());
+ exports.TempleException = Exception_1.default;
+ var TempleComponent_1 = __importDefault(require_TempleComponent());
+ exports.TempleComponent = TempleComponent_1.default;
+ var TempleRegistry_1 = __importDefault(require_TempleRegistry());
+ exports.TempleRegistry = TempleRegistry_1.default;
+ var TempleElement_1 = __importDefault(require_TempleElement());
+ exports.TempleElement = TempleElement_1.default;
+ var TempleEmitter_1 = __importStar(require_TempleEmitter());
+ exports.emitter = TempleEmitter_1.default;
+ Object.defineProperty(exports, "TempleEmitter", { enumerable: true, get: function() {
+ return TempleEmitter_1.TempleEmitter;
+ } });
+ var component_1 = __importDefault(require_component());
+ exports.component = component_1.default;
+ var data_1 = __importStar(require_data());
+ exports.data = data_1.default;
+ Object.defineProperty(exports, "TempleDataMap", { enumerable: true, get: function() {
+ return data_1.TempleDataMap;
+ } });
+ var env_1 = __importDefault(require_env());
+ exports.env = env_1.default;
+ var props_1 = __importDefault(require_props());
+ exports.props = props_1.default;
+ var classnames_1 = __importStar(require_classnames());
+ exports.classnames = classnames_1.default;
+ Object.defineProperty(exports, "classlist", { enumerable: true, get: function() {
+ return classnames_1.classlist;
+ } });
+ var children_1 = __importStar(require_children());
+ exports.children = children_1.default;
+ Object.defineProperty(exports, "innerHTML", { enumerable: true, get: function() {
+ return children_1.innerHTML;
+ } });
+ Object.defineProperty(exports, "innerText", { enumerable: true, get: function() {
+ return children_1.innerText;
+ } });
+ var signal_1 = __importStar(require_signal());
+ exports.signal = signal_1.default;
+ Object.defineProperty(exports, "SignalRegistry", { enumerable: true, get: function() {
+ return signal_1.SignalRegistry;
+ } });
+ }
+ });
+
+ // ../temple/client.js
+ var require_client2 = __commonJS({
+ "../temple/client.js"(exports, module) {
+ module.exports = { ...require_client() };
+ }
+ });
+
+ // ../temple/index.js
+ var require_temple = __commonJS({
+ "../temple/index.js"(exports, module) {
+ module.exports = { ...require_client() };
+ }
+ });
+
+ // ../../node_modules/prismjs/prism.js
+ var require_prism = __commonJS({
+ "../../node_modules/prismjs/prism.js"(exports, module) {
+ var _self = typeof window !== "undefined" ? window : typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope ? self : {};
+ var Prism2 = function(_self2) {
+ var lang = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i;
+ var uniqueId = 0;
+ var plainTextGrammar = {};
+ var _2 = {
+ /**
+ * By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the
+ * current page after the page finished loading. This might be a problem if e.g. you wanted to asynchronously load
+ * additional languages or plugins yourself.
+ *
+ * By setting this value to `true`, Prism will not automatically highlight all code elements on the page.
+ *
+ * You obviously have to change this value before the automatic highlighting started. To do this, you can add an
+ * empty Prism object into the global scope before loading the Prism script like this:
+ *
+ * ```js
+ * window.Prism = window.Prism || {};
+ * Prism.manual = true;
+ * // add a new
Hello {name}!
- `)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-preview",{class:"basis-half"},"{ 'class': `basis-half` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{},"{ }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h1",{},"{ }",[...this._toNodeList(i("Hello world!"))]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"bg-t-1 m-auto py-40 px-20 tx-center"},"{ 'class': `bg-t-1 m-auto py-40 px-20 tx-center` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ul",{class:"flex flex-center list-none p-0 tx-center md-block"},"{ 'class': `flex flex-center list-none p-0 tx-center md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("li",{class:"w-third wm-300 md-wm-400 md-w-auto md-m-auto"},"{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"p-10"},"{ 'class': `p-10` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mb-20 tx-uppercase"},"{ 'class': `mb-20 tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Expressive Markup")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-16 tx-lh-24"},"{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }",[e.TempleRegistry.createText(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-preview", { "class": `basis-half` }, "{ 'class': `basis-half` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", {}, "{ }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h1", {}, "{ }", [
+ ...this._toNodeList(_("Hello world!"))
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `bg-t-1 m-auto py-40 px-20 tx-center` }, "{ 'class': `bg-t-1 m-auto py-40 px-20 tx-center` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ul", { "class": `flex flex-center list-none p-0 tx-center md-block` }, "{ 'class': `flex flex-center list-none p-0 tx-center md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("li", { "class": `w-third wm-300 md-wm-400 md-w-auto md-m-auto` }, "{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `p-10` }, "{ 'class': `p-10` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mb-20 tx-uppercase` }, "{ 'class': `mb-20 tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Expressive Markup")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-16 tx-lh-24` }, "{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }", [
+ import_server.TempleRegistry.createText(`
Any data type as attributes. Easily express logic with
markup directives like if, each, and try catch.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("li",{class:"w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20"},"{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"p-10"},"{ 'class': `p-10` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mb-20 tx-uppercase"},"{ 'class': `mb-20 tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Reactive Signals")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-16 tx-lh-24"},"{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }",[e.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("li", { "class": `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }, "{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `p-10` }, "{ 'class': `p-10` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mb-20 tx-uppercase` }, "{ 'class': `mb-20 tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Reactive Signals")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-16 tx-lh-24` }, "{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }", [
+ import_server.TempleRegistry.createText(`
Easily transition from backend logic to reactive states.
No Hydration and no memoization needed.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("li",{class:"w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20"},"{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"p-10"},"{ 'class': `p-10` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mb-20 tx-uppercase"},"{ 'class': `mb-20 tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Bare Metal")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-16 tx-lh-24"},"{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }",[e.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("li", { "class": `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }, "{ 'class': `w-third wm-300 md-wm-400 md-w-auto md-m-auto md-mt-20` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `p-10` }, "{ 'class': `p-10` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mb-20 tx-uppercase` }, "{ 'class': `mb-20 tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Bare Metal")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-16 tx-lh-24` }, "{ 'p': true, 'trim': true, 'class': `tx-16 tx-lh-24` }", [
+ import_server.TempleRegistry.createText(`
Work with the DOM directly. Import any web components
from any source. Works with Lit, HTMX.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"m-auto wm-960 px-20 py-40"},"{ 'class': `m-auto wm-960 px-20 py-40` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mt-40 mb-20 tx-center tx-uppercase"},"{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Server Setup")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-center tx-lh-24 mb-20"},"{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }",[e.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `m-auto wm-960 px-20 py-40` }, "{ 'class': `m-auto wm-960 px-20 py-40` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mt-40 mb-20 tx-center tx-uppercase` }, "{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Server Setup")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-center tx-lh-24 mb-20` }, "{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }", [
+ import_server.TempleRegistry.createText(`
Temple can be used with popular server
frameworks in just a few lines of code.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-app",{title:"Server Example"},"{ 'title': `Server Example` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{lang:"js",numbers:!0,trim:!0,detab:14},"{ 'lang': `js`, 'numbers': true, 'trim': true, 'detab': 14 }",[...this._toNodeList(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-app", { "title": `Server Example` }, "{ 'title': `Server Example` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "lang": `js`, "numbers": true, "trim": true, "detab": 14 }, "{ 'lang': `js`, 'numbers': true, 'trim': true, 'detab': 14 }", [
+ ...this._toNodeList(`
import temple from '@ossph/temple/compiler';
//make a temple compiler
const compiler = temple();
//render HTML
const results = compiler.render('./page.dtml');
- `)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mt-40 mb-20 tx-center tx-uppercase"},"{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Props")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-center tx-lh-24 mb-20"},"{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }",[e.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mt-40 mb-20 tx-center tx-uppercase` }, "{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Props")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-center tx-lh-24 mb-20` }, "{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }", [
+ import_server.TempleRegistry.createText(`
Import your component props and use immediately
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-app",{title:"Props Example"},"{ 'title': `Props Example` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"flex bg-white md-block"},"{ 'class': `flex bg-white md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{numbers:!0,trim:!0,detab:16,class:"basis-half"},"{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }",[...this._toNodeList(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-app", { "title": `Props Example` }, "{ 'title': `Props Example` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `flex bg-white md-block` }, "{ 'class': `flex bg-white md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "numbers": true, "trim": true, "detab": 16, "class": `basis-half` }, "{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }", [
+ ...this._toNodeList(`
@@ -169,24 +903,58 @@ ${r}`}_toNodeList(t){return typeof t=="object"&&typeof t.nodeType=="number"?[t]:
const { name } = props();
Hello {name}!
- `)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-preview",{class:"basis-half"},"{ 'class': `basis-half` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{},"{ }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h1",{},"{ }",[...this._toNodeList(i("Hello world!"))]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-preview", { "class": `basis-half` }, "{ 'class': `basis-half` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", {}, "{ }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h1", {}, "{ }", [
+ ...this._toNodeList(_("Hello world!"))
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mt-40 mb-20 tx-center tx-uppercase"},"{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Reactive Signals")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-center tx-lh-24 mb-20"},"{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }",[e.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mt-40 mb-20 tx-center tx-uppercase` }, "{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Reactive Signals")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-center tx-lh-24 mb-20` }, "{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }", [
+ import_server.TempleRegistry.createText(`
Use signals to manage state changes and re-renders.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-app",{title:"Signal Example"},"{ 'title': `Signal Example` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"flex bg-white md-block"},"{ 'class': `flex bg-white md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{numbers:!0,trim:!0,detab:16,class:"basis-half"},"{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }",[...this._toNodeList(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-app", { "title": `Signal Example` }, "{ 'title': `Signal Example` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `flex bg-white md-block` }, "{ 'class': `flex bg-white md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "numbers": true, "trim": true, "detab": 16, "class": `basis-half` }, "{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }", [
+ ...this._toNodeList(`
@@ -196,51 +964,111 @@ ${r}`}_toNodeList(t){return typeof t=="object"&&typeof t.nodeType=="number"?[t]:
name.value += '!';
Hello {name.value}
- `)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-preview",{class:"basis-half"},"{ 'class': `basis-half` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{},"{ }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h1",{},"{ }",[...this._toNodeList(i("Hello world!"))]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-preview", { "class": `basis-half` }, "{ 'class': `basis-half` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", {}, "{ }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h1", {}, "{ }", [
+ ...this._toNodeList(_("Hello world!"))
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mt-40 mb-20 tx-center tx-uppercase"},"{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Components and Templates")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-center tx-lh-24 mb-20"},"{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }",[e.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mt-40 mb-20 tx-center tx-uppercase` }, "{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Components and Templates")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-center tx-lh-24 mb-20` }, "{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }", [
+ import_server.TempleRegistry.createText(`
Import components and templates for reusability.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-app",{title:"Import Example"},"{ 'title': `Import Example` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"flex bg-white md-block"},"{ 'class': `flex bg-white md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{numbers:!0,trim:!0,detab:16,class:"basis-half"},"{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }",[...this._toNodeList(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-app", { "title": `Import Example` }, "{ 'title': `Import Example` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `flex bg-white md-block` }, "{ 'class': `flex bg-white md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "numbers": true, "trim": true, "detab": 16, "class": `basis-half` }, "{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }", [
+ ...this._toNodeList(`
Hello
- `)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{class:"basis-half bd-t-1 bd-solid bdy-0 bdl-1 bdr-0 md-bd-0",trim:!0,detab:16},"{ 'class': `basis-half bd-t-1 bd-solid bdy-0 bdl-1 bdr-0 md-bd-0`, 'trim': true, 'detab': 16 }",[...this._toNodeList(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "class": `basis-half bd-t-1 bd-solid bdy-0 bdl-1 bdr-0 md-bd-0`, "trim": true, "detab": 16 }, "{ 'class': `basis-half bd-t-1 bd-solid bdy-0 bdl-1 bdr-0 md-bd-0`, 'trim': true, 'detab': 16 }", [
+ ...this._toNodeList(`
{children} {name}
- `)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"mt-40 mb-20 tx-center tx-uppercase"},"{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Conditionals and Iterations")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("i18n-translate",{p:!0,trim:!0,class:"tx-center tx-lh-24 mb-20"},"{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }",[e.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `mt-40 mb-20 tx-center tx-uppercase` }, "{ 'class': `mt-40 mb-20 tx-center tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Conditionals and Iterations")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("i18n-translate", { "p": true, "trim": true, "class": `tx-center tx-lh-24 mb-20` }, "{ 'p': true, 'trim': true, 'class': `tx-center tx-lh-24 mb-20` }", [
+ import_server.TempleRegistry.createText(`
Case for conditions and iterations in an expressive way.
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-app",{title:"Conditional + Iteration Example"},"{ 'title': `Conditional + Iteration Example` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"flex bg-white md-block"},"{ 'class': `flex bg-white md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("ide-code",{numbers:!0,trim:!0,detab:16,class:"basis-half"},"{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }",[...this._toNodeList(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-app", { "title": `Conditional + Iteration Example` }, "{ 'title': `Conditional + Iteration Example` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `flex bg-white md-block` }, "{ 'class': `flex bg-white md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("ide-code", { "numbers": true, "trim": true, "detab": 16, "class": `basis-half` }, "{ 'numbers': true, 'trim': true, 'detab': 16, 'class': `basis-half` }", [
+ ...this._toNodeList(`
@@ -259,73 +1091,231 @@ ${r}`}_toNodeList(t){return typeof t=="object"&&typeof t.nodeType=="number"?[t]:
{i}: {item}
- `)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"m-auto px-20 py-40 tx-center bg-h-cccccc"},"{ 'class': `m-auto px-20 py-40 tx-center bg-h-cccccc` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"tx-h-242424 tx-30 tx-uppercase"},"{ 'class': `tx-h-242424 tx-30 tx-uppercase` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Works With Popular Server Frameworks")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("div",{class:"flex flex-center flex-wrap mx-auto mt-40 mb-0 sm-block"},"{ 'class': `flex flex-center flex-wrap mx-auto mt-40 mb-0 sm-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"https://expressjs.com/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `https://expressjs.com/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://upload.wikimedia.org/wikipedia/commons/6/64/Expressjs.png",alt:"Express"},"{ 'class': `h-60`, 'src': `https://upload.wikimedia.org/wikipedia/commons/6/64/Expressjs.png`, 'alt': `Express` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"https://fastify.dev/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `https://fastify.dev/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://upload.wikimedia.org/wikipedia/commons/0/0a/Fastify_logo.svg",alt:"Fastify"},"{ 'class': `h-60`, 'src': `https://upload.wikimedia.org/wikipedia/commons/0/0a/Fastify_logo.svg`, 'alt': `Fastify` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"https://hapi.dev/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `https://hapi.dev/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://raw.githubusercontent.com/hapijs/assets/master/images/hapi.png",alt:"Hapi"},"{ 'class': `h-60`, 'src': `https://raw.githubusercontent.com/hapijs/assets/master/images/hapi.png`, 'alt': `Hapi` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"https://koajs.com/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `https://koajs.com/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://cdn.icon-icons.com/icons2/2699/PNG/512/koajs_logo_icon_168379.png",alt:"Koa"},"{ 'class': `h-60`, 'src': `https://cdn.icon-icons.com/icons2/2699/PNG/512/koajs_logo_icon_168379.png`, 'alt': `Koa` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"https://nestjs.com/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `https://nestjs.com/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://cdn.icon-icons.com/icons2/2699/PNG/512/nestjs_logo_icon_169927.png",alt:"NestJS"},"{ 'class': `h-60`, 'src': `https://cdn.icon-icons.com/icons2/2699/PNG/512/nestjs_logo_icon_169927.png`, 'alt': `NestJS` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("a",{class:"block basis-third mb-20",href:"http://restify.com/",target:"_blank"},"{ 'class': `block basis-third mb-20`, 'href': `http://restify.com/`, 'target': `_blank` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("img",{class:"h-60",src:"https://raw.githubusercontent.com/restify/node-restify/gh-images/logo/png/restify_logo_black_transp_288x288.png?raw=true",alt:"Restify"},"{ 'class': `h-60`, 'src': `https://raw.githubusercontent.com/restify/node-restify/gh-images/logo/png/restify_logo_black_transp_288x288.png?raw=true`, 'alt': `Restify` }"),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"bg-t-1 m-auto py-40 px-20"},"{ 'class': `bg-t-1 m-auto py-40 px-20` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"tx-26 tx-center"},"{ 'class': `tx-26 tx-center` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Temple Loves Developers!")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"flex flex-wrap md-block"},"{ 'class': `flex flex-wrap md-block` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Joff Tiquez",handle:"@jrtiquez",href:"https://twitter.com/jrtiquez",src:"https://github.com/jofftiquez.png"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Joff Tiquez`, 'handle': `@jrtiquez`, 'href': `https://twitter.com/jrtiquez`, 'src': `https://github.com/jofftiquez.png` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("Im a vue developer. No need for this. OSSPH does not support this project.",!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Primeagen",handle:"@theprimeagen",href:"https://twitter.com/ThePrimeagen",src:"https://pbs.twimg.com/profile_images/1759330620160049152/2i_wkOoK_400x400.jpg"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Primeagen`, 'handle': `@theprimeagen`, 'href': `https://twitter.com/ThePrimeagen`, 'src': `https://pbs.twimg.com/profile_images/1759330620160049152/2i_wkOoK_400x400.jpg` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("Temple? Never heard of it...",!1),e.TempleRegistry.createElement("br",{},"{ }"),e.TempleRegistry.createText('"The Name..."',!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Kristian Quirapas",handle:"@YourCompanyCTO",href:"https://twitter.com/YourCompanyCTO",src:"https://avatars.githubusercontent.com/u/85150796?v=4"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Kristian Quirapas`, 'handle': `@YourCompanyCTO`, 'href': `https://twitter.com/YourCompanyCTO`, 'src': `https://avatars.githubusercontent.com/u/85150796?v=4` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("Temple is good news for Node developers. I'm a rust developer so it don't matter to me.",!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Drizzle Team",handle:"@drizzle.team",href:"https://twitter.com/DrizzleORM",src:"https://pbs.twimg.com/profile_images/1767809210060877824/mAtEmNk0_400x400.jpg"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Drizzle Team`, 'handle': `@drizzle.team`, 'href': `https://twitter.com/DrizzleORM`, 'src': `https://pbs.twimg.com/profile_images/1767809210060877824/mAtEmNk0_400x400.jpg` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("Temple copied this section from us. We are the original.",!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Chris B",handle:"@cblanquera",href:"https://twitter.com/cblanquera",src:"https://avatars.githubusercontent.com/u/120378?v=4"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Chris B`, 'handle': `@cblanquera`, 'href': `https://twitter.com/cblanquera`, 'src': `https://avatars.githubusercontent.com/u/120378?v=4` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("After creating the Temple project, I am really excited to get back to ReactJS.",!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tweet-box",{class:"block basis-third lg-basis-half",name:"Theo",handle:"@t3dotgg",href:"https://twitter.com/t3dotgg",src:"https://yt3.googleusercontent.com/4NapxEtLcHQ6wN2zA_DMmkOk47RFb_gy6sjSmUZGg_ARHjlIUjFsrNFddrcKMkTYpBNxCp3J=s160-c-k-c0x00ffffff-no-rj"},"{ 'class': `block basis-third lg-basis-half`, 'name': `Theo`, 'handle': `@t3dotgg`, 'href': `https://twitter.com/t3dotgg`, 'src': `https://yt3.googleusercontent.com/4NapxEtLcHQ6wN2zA_DMmkOk47RFb_gy6sjSmUZGg_ARHjlIUjFsrNFddrcKMkTYpBNxCp3J=s160-c-k-c0x00ffffff-no-rj` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("p",{},"{ }",[e.TempleRegistry.createText("Temple? no thanks. Keep your stack front end. App router for life.",!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("section",{class:"m-auto py-40 px-20 tx-center"},"{ 'class': `m-auto py-40 px-20 tx-center` }",[e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("h3",{class:"tx-26 mb-20"},"{ 'class': `tx-26 mb-20` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("What are you waiting for?")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tui-button",{primary:!0,xl:!0,rounded:!0,class:"inline-block",style:"margin-right:10px;",href:"/temple/docs/getting-started.html"},"{ 'primary': true, 'xl': true, 'rounded': true, 'class': `inline-block`, 'style': `margin-right:10px;`, 'href': `/temple/docs/getting-started.html` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Get Started")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("tui-button",{secondary:!0,xl:!0,rounded:!0,class:"inline-block",href:"/temple/docs/index.html"},"{ 'secondary': true, 'xl': true, 'rounded': true, 'class': `inline-block`, 'href': `/temple/docs/index.html` }",[e.TempleRegistry.createText(`
- `,!1),...this._toNodeList(i("Read the Docs")),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1),e.TempleRegistry.createElement("footer",{class:"foot"},"{ 'class': `foot` }",[]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
- `,!1)]),e.TempleRegistry.createText(`
-`,!1)])]}};return re(Pe);})();
+ `)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `m-auto px-20 py-40 tx-center bg-h-cccccc` }, "{ 'class': `m-auto px-20 py-40 tx-center bg-h-cccccc` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `tx-h-242424 tx-30 tx-uppercase` }, "{ 'class': `tx-h-242424 tx-30 tx-uppercase` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Works With Popular Server Frameworks")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("div", { "class": `flex flex-center flex-wrap mx-auto mt-40 mb-0 sm-block` }, "{ 'class': `flex flex-center flex-wrap mx-auto mt-40 mb-0 sm-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `https://expressjs.com/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `https://expressjs.com/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://upload.wikimedia.org/wikipedia/commons/6/64/Expressjs.png`, "alt": `Express` }, "{ 'class': `h-60`, 'src': `https://upload.wikimedia.org/wikipedia/commons/6/64/Expressjs.png`, 'alt': `Express` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `https://fastify.dev/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `https://fastify.dev/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://upload.wikimedia.org/wikipedia/commons/0/0a/Fastify_logo.svg`, "alt": `Fastify` }, "{ 'class': `h-60`, 'src': `https://upload.wikimedia.org/wikipedia/commons/0/0a/Fastify_logo.svg`, 'alt': `Fastify` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `https://hapi.dev/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `https://hapi.dev/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://raw.githubusercontent.com/hapijs/assets/master/images/hapi.png`, "alt": `Hapi` }, "{ 'class': `h-60`, 'src': `https://raw.githubusercontent.com/hapijs/assets/master/images/hapi.png`, 'alt': `Hapi` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `https://koajs.com/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `https://koajs.com/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://cdn.icon-icons.com/icons2/2699/PNG/512/koajs_logo_icon_168379.png`, "alt": `Koa` }, "{ 'class': `h-60`, 'src': `https://cdn.icon-icons.com/icons2/2699/PNG/512/koajs_logo_icon_168379.png`, 'alt': `Koa` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `https://nestjs.com/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `https://nestjs.com/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://cdn.icon-icons.com/icons2/2699/PNG/512/nestjs_logo_icon_169927.png`, "alt": `NestJS` }, "{ 'class': `h-60`, 'src': `https://cdn.icon-icons.com/icons2/2699/PNG/512/nestjs_logo_icon_169927.png`, 'alt': `NestJS` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("a", { "class": `block basis-third mb-20`, "href": `http://restify.com/`, "target": `_blank` }, "{ 'class': `block basis-third mb-20`, 'href': `http://restify.com/`, 'target': `_blank` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("img", { "class": `h-60`, "src": `https://raw.githubusercontent.com/restify/node-restify/gh-images/logo/png/restify_logo_black_transp_288x288.png?raw=true`, "alt": `Restify` }, "{ 'class': `h-60`, 'src': `https://raw.githubusercontent.com/restify/node-restify/gh-images/logo/png/restify_logo_black_transp_288x288.png?raw=true`, 'alt': `Restify` }"),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `bg-t-1 m-auto py-40 px-20` }, "{ 'class': `bg-t-1 m-auto py-40 px-20` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `tx-26 tx-center` }, "{ 'class': `tx-26 tx-center` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Temple Loves Developers!")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `flex flex-wrap md-block` }, "{ 'class': `flex flex-wrap md-block` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Joff Tiquez`, "handle": `@jrtiquez`, "href": `https://twitter.com/jrtiquez`, "src": `https://github.com/jofftiquez.png` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Joff Tiquez`, 'handle': `@jrtiquez`, 'href': `https://twitter.com/jrtiquez`, 'src': `https://github.com/jofftiquez.png` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`Im a vue developer. No need for this. OSSPH does not support this project.`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Primeagen`, "handle": `@theprimeagen`, "href": `https://twitter.com/ThePrimeagen`, "src": `https://pbs.twimg.com/profile_images/1759330620160049152/2i_wkOoK_400x400.jpg` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Primeagen`, 'handle': `@theprimeagen`, 'href': `https://twitter.com/ThePrimeagen`, 'src': `https://pbs.twimg.com/profile_images/1759330620160049152/2i_wkOoK_400x400.jpg` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`Temple? Never heard of it...`, false),
+ import_server.TempleRegistry.createElement("br", {}, "{ }"),
+ import_server.TempleRegistry.createText(`"The Name..."`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Kristian Quirapas`, "handle": `@YourCompanyCTO`, "href": `https://twitter.com/YourCompanyCTO`, "src": `https://avatars.githubusercontent.com/u/85150796?v=4` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Kristian Quirapas`, 'handle': `@YourCompanyCTO`, 'href': `https://twitter.com/YourCompanyCTO`, 'src': `https://avatars.githubusercontent.com/u/85150796?v=4` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`Temple is good news for Node developers. I'm a rust developer so it don't matter to me.`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Drizzle Team`, "handle": `@drizzle.team`, "href": `https://twitter.com/DrizzleORM`, "src": `https://pbs.twimg.com/profile_images/1767809210060877824/mAtEmNk0_400x400.jpg` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Drizzle Team`, 'handle': `@drizzle.team`, 'href': `https://twitter.com/DrizzleORM`, 'src': `https://pbs.twimg.com/profile_images/1767809210060877824/mAtEmNk0_400x400.jpg` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`Temple copied this section from us. We are the original.`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Chris B`, "handle": `@cblanquera`, "href": `https://twitter.com/cblanquera`, "src": `https://avatars.githubusercontent.com/u/120378?v=4` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Chris B`, 'handle': `@cblanquera`, 'href': `https://twitter.com/cblanquera`, 'src': `https://avatars.githubusercontent.com/u/120378?v=4` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`After creating the Temple project, I am really excited to get back to ReactJS.`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tweet-box", { "class": `block basis-third lg-basis-half`, "name": `Theo`, "handle": `@t3dotgg`, "href": `https://twitter.com/t3dotgg`, "src": `https://yt3.googleusercontent.com/4NapxEtLcHQ6wN2zA_DMmkOk47RFb_gy6sjSmUZGg_ARHjlIUjFsrNFddrcKMkTYpBNxCp3J=s160-c-k-c0x00ffffff-no-rj` }, "{ 'class': `block basis-third lg-basis-half`, 'name': `Theo`, 'handle': `@t3dotgg`, 'href': `https://twitter.com/t3dotgg`, 'src': `https://yt3.googleusercontent.com/4NapxEtLcHQ6wN2zA_DMmkOk47RFb_gy6sjSmUZGg_ARHjlIUjFsrNFddrcKMkTYpBNxCp3J=s160-c-k-c0x00ffffff-no-rj` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("p", {}, "{ }", [
+ import_server.TempleRegistry.createText(`Temple? no thanks. Keep your stack front end. App router for life.`, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("section", { "class": `m-auto py-40 px-20 tx-center` }, "{ 'class': `m-auto py-40 px-20 tx-center` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("h3", { "class": `tx-26 mb-20` }, "{ 'class': `tx-26 mb-20` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("What are you waiting for?")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tui-button", { "primary": true, "xl": true, "rounded": true, "class": `inline-block`, "style": `margin-right:10px;`, "href": `/temple/docs/getting-started.html` }, "{ 'primary': true, 'xl': true, 'rounded': true, 'class': `inline-block`, 'style': `margin-right:10px;`, 'href': `/temple/docs/getting-started.html` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Get Started")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("tui-button", { "secondary": true, "xl": true, "rounded": true, "class": `inline-block`, "href": `/temple/docs/index.html` }, "{ 'secondary': true, 'xl': true, 'rounded': true, 'class': `inline-block`, 'href': `/temple/docs/index.html` }", [
+ import_server.TempleRegistry.createText(`
+ `, false),
+ ...this._toNodeList(_("Read the Docs")),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false),
+ import_server.TempleRegistry.createElement("footer", { "class": `foot` }, "{ 'class': `foot` }", []),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+ `, false)
+ ]),
+ import_server.TempleRegistry.createText(`
+`, false)
+ ])
+ ];
+ }
+ };
+ return __toCommonJS(pages_exports);
+})();
diff --git a/packages/temple-ui-src/src/compiler/temple.ts b/packages/temple-ui-src/src/compiler/temple.ts
index 1cf9de6..5cb55a5 100644
--- a/packages/temple-ui-src/src/compiler/temple.ts
+++ b/packages/temple-ui-src/src/compiler/temple.ts
@@ -41,7 +41,7 @@ export default function tui(options: TempleUIOptions = {}) {
compiler.emitter.on('built-styles', async e => {
const { document } = e.params.builder as DocumentBuilder;
const sourceCode = e.params.sourceCode as string;
- e.set(templeui(options)
+ const stylesheet = templeui(options)
.plugin(reset)
.plugin(theme)
.plugin(block(document))
@@ -51,8 +51,9 @@ export default function tui(options: TempleUIOptions = {}) {
.plugin(visibility(document))
.plugin(component(document, { stylers }))
.plugin(utilities(document, { stylers }))
- .upgrade(sourceCode)
- );
+ .upgrade(sourceCode);
+ e.set(stylesheet);
+ e.params.sourceCode = stylesheet;
});
};
};
\ No newline at end of file
diff --git a/packages/temple-web/src/index.ts b/packages/temple-web/src/index.ts
index 89f733b..24671b6 100644
--- a/packages/temple-web/src/index.ts
+++ b/packages/temple-web/src/index.ts
@@ -12,11 +12,13 @@ type Next = () => void;
const docs = path.join(__dirname, '../../../docs');
//create temple compiler
-const compiler = temple({ brand: '', cwd: __dirname, minify: false });
-
+const compiler = temple({
+ brand: '',
+ cwd: __dirname,
+ minify: process.env.NODE_ENV === 'development'
+});
//use temple ui
compiler.use(tui());
-
//use build cache
compiler.use(cache({
environment: process.env.NODE_ENV,