@e280/shiny 0.1.0-15 → 0.1.0-17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/README.md +34 -80
  2. package/package.json +18 -25
  3. package/s/_archive/demo/utils/lipsum.ts +19 -0
  4. package/s/_archive/demo/views/showcase/style.css.ts +53 -0
  5. package/s/_archive/demo/views/showcase/view.ts +54 -0
  6. package/s/_archive/index.html.ts +34 -0
  7. package/s/_archive/index.ts +19 -0
  8. package/s/_archive/utils/states.ts +15 -0
  9. package/s/demo/main.bundle.ts +16 -0
  10. package/s/demo/main.css +71 -0
  11. package/s/demo/parts/exhibit.ts +15 -0
  12. package/s/demo/utils/lipsum.ts +1 -1
  13. package/s/demo/views/codebox/style.css.ts +43 -0
  14. package/s/demo/views/codebox/use-prism-styles.ts +13 -0
  15. package/s/demo/views/codebox/view.ts +39 -0
  16. package/s/demo/views/showcase/style.css.ts +42 -11
  17. package/s/demo/views/showcase/view.ts +41 -45
  18. package/s/demo/views/stylebox/view.ts +21 -0
  19. package/s/index.html.ts +42 -29
  20. package/s/index.ts +1 -17
  21. package/s/test.ts +5 -0
  22. package/s/theme/parts/core.ts +34 -0
  23. package/s/theme/parts/reset.ts +20 -0
  24. package/s/theme/parts/vars.ts +41 -0
  25. package/s/theme/theme-string.ts +15 -0
  26. package/s/theme/theme.css.ts +7 -0
  27. package/s/views/button/showcase.ts +43 -0
  28. package/s/views/button/style.css.ts +110 -0
  29. package/s/views/button/view.ts +30 -0
  30. package/s/views/copy/parts/copy-status.ts +3 -0
  31. package/s/views/copy/parts/determine-base-status.ts +7 -0
  32. package/s/views/copy/parts/use-copier.ts +20 -0
  33. package/s/views/copy/showcase.ts +54 -0
  34. package/s/views/copy/style.css.ts +46 -0
  35. package/s/views/copy/view.ts +58 -0
  36. package/s/views/drawer/control.ts +31 -0
  37. package/s/views/drawer/showcase.ts +83 -0
  38. package/s/views/drawer/style.css.ts +128 -0
  39. package/s/views/drawer/view.ts +76 -0
  40. package/s/views/tabs/control.ts +31 -0
  41. package/s/views/tabs/showcase.ts +89 -0
  42. package/s/views/tabs/style.css.ts +46 -0
  43. package/s/views/tabs/view.ts +66 -0
  44. package/x/demo/main.bundle.js +13 -0
  45. package/x/demo/main.bundle.js.map +1 -0
  46. package/x/demo/main.bundle.min.js +794 -0
  47. package/x/demo/main.bundle.min.js.map +7 -0
  48. package/x/demo/main.css +71 -0
  49. package/x/demo/parts/exhibit.d.ts +11 -0
  50. package/x/demo/parts/exhibit.js +2 -0
  51. package/x/demo/parts/exhibit.js.map +1 -0
  52. package/x/demo/utils/lipsum.d.ts +1 -1
  53. package/x/demo/utils/lipsum.js +1 -1
  54. package/x/demo/utils/lipsum.js.map +1 -1
  55. package/x/demo/views/codebox/style.css.js +42 -0
  56. package/x/demo/views/codebox/style.css.js.map +1 -0
  57. package/x/demo/views/codebox/use-prism-styles.d.ts +1 -0
  58. package/x/demo/views/codebox/use-prism-styles.js +12 -0
  59. package/x/demo/views/codebox/use-prism-styles.js.map +1 -0
  60. package/x/demo/views/codebox/view.d.ts +2 -0
  61. package/x/demo/views/codebox/view.js +29 -0
  62. package/x/demo/views/codebox/view.js.map +1 -0
  63. package/x/demo/views/showcase/style.css.js +42 -11
  64. package/x/demo/views/showcase/style.css.js.map +1 -1
  65. package/x/demo/views/showcase/view.d.ts +2 -7
  66. package/x/demo/views/showcase/view.js +39 -35
  67. package/x/demo/views/showcase/view.js.map +1 -1
  68. package/x/demo/views/stylebox/view.d.ts +3 -0
  69. package/x/demo/views/stylebox/view.js +13 -0
  70. package/x/demo/views/stylebox/view.js.map +1 -0
  71. package/x/index.d.ts +1 -11
  72. package/x/index.html +212 -62
  73. package/x/index.html.js +40 -26
  74. package/x/index.html.js.map +1 -1
  75. package/x/index.js +1 -11
  76. package/x/index.js.map +1 -1
  77. package/x/test.js +3 -0
  78. package/x/test.js.map +1 -0
  79. package/x/theme/parts/core.d.ts +1 -0
  80. package/x/theme/parts/core.js +33 -0
  81. package/x/theme/parts/core.js.map +1 -0
  82. package/x/theme/parts/reset.d.ts +1 -0
  83. package/x/theme/parts/reset.js +19 -0
  84. package/x/theme/parts/reset.js.map +1 -0
  85. package/x/theme/parts/vars.d.ts +1 -0
  86. package/x/theme/parts/vars.js +34 -0
  87. package/x/theme/parts/vars.js.map +1 -0
  88. package/x/theme/theme-string.d.ts +1 -0
  89. package/x/theme/theme-string.js +14 -0
  90. package/x/theme/theme-string.js.map +1 -0
  91. package/x/theme/theme.css.d.ts +1 -0
  92. package/x/theme/theme.css.js +4 -0
  93. package/x/theme/theme.css.js.map +1 -0
  94. package/x/views/button/showcase.d.ts +1 -0
  95. package/x/views/button/showcase.js +41 -0
  96. package/x/views/button/showcase.js.map +1 -0
  97. package/x/views/button/style.css.js +109 -0
  98. package/x/views/button/style.css.js.map +1 -0
  99. package/x/views/button/view.d.ts +4 -0
  100. package/x/views/button/view.js +22 -0
  101. package/x/views/button/view.js.map +1 -0
  102. package/x/views/copy/parts/copy-status.d.ts +1 -0
  103. package/x/views/copy/parts/copy-status.js +2 -0
  104. package/x/views/copy/parts/copy-status.js.map +1 -0
  105. package/x/views/copy/parts/determine-base-status.d.ts +1 -0
  106. package/x/views/copy/parts/determine-base-status.js +6 -0
  107. package/x/views/copy/parts/determine-base-status.js.map +1 -0
  108. package/x/views/copy/parts/use-copier.d.ts +6 -0
  109. package/x/views/copy/parts/use-copier.js +13 -0
  110. package/x/views/copy/parts/use-copier.js.map +1 -0
  111. package/x/views/copy/showcase.d.ts +1 -0
  112. package/x/views/copy/showcase.js +51 -0
  113. package/x/views/copy/showcase.js.map +1 -0
  114. package/x/views/copy/style.css.js.map +1 -0
  115. package/x/views/copy/view.d.ts +4 -0
  116. package/x/views/copy/view.js +47 -0
  117. package/x/views/copy/view.js.map +1 -0
  118. package/x/{components → views}/drawer/control.d.ts +1 -1
  119. package/x/views/drawer/control.js.map +1 -0
  120. package/x/views/drawer/showcase.d.ts +1 -0
  121. package/x/views/drawer/showcase.js +75 -0
  122. package/x/views/drawer/showcase.js.map +1 -0
  123. package/x/{components → views}/drawer/style.css.js +1 -0
  124. package/x/views/drawer/style.css.js.map +1 -0
  125. package/x/views/drawer/view.d.ts +6 -0
  126. package/x/views/drawer/view.js +60 -0
  127. package/x/views/drawer/view.js.map +1 -0
  128. package/x/{components → views}/tabs/control.d.ts +2 -2
  129. package/x/{components → views}/tabs/control.js +3 -3
  130. package/x/views/tabs/control.js.map +1 -0
  131. package/x/views/tabs/showcase.d.ts +1 -0
  132. package/x/views/tabs/showcase.js +86 -0
  133. package/x/views/tabs/showcase.js.map +1 -0
  134. package/x/{components → views}/tabs/style.css.js +5 -5
  135. package/x/views/tabs/style.css.js.map +1 -0
  136. package/x/views/tabs/view.d.ts +5 -0
  137. package/x/views/tabs/view.js +52 -0
  138. package/x/views/tabs/view.js.map +1 -0
  139. package/x/components/button/component.d.ts +0 -6
  140. package/x/components/button/component.js +0 -25
  141. package/x/components/button/component.js.map +0 -1
  142. package/x/components/button/showcase.d.ts +0 -1
  143. package/x/components/button/showcase.js +0 -116
  144. package/x/components/button/showcase.js.map +0 -1
  145. package/x/components/button/style.css.js +0 -62
  146. package/x/components/button/style.css.js.map +0 -1
  147. package/x/components/copy/component.d.ts +0 -376
  148. package/x/components/copy/component.js +0 -63
  149. package/x/components/copy/component.js.map +0 -1
  150. package/x/components/copy/showcase.d.ts +0 -1
  151. package/x/components/copy/showcase.js +0 -48
  152. package/x/components/copy/showcase.js.map +0 -1
  153. package/x/components/copy/style.css.js.map +0 -1
  154. package/x/components/drawer/component.d.ts +0 -387
  155. package/x/components/drawer/component.js +0 -73
  156. package/x/components/drawer/component.js.map +0 -1
  157. package/x/components/drawer/control.js.map +0 -1
  158. package/x/components/drawer/showcase.d.ts +0 -1
  159. package/x/components/drawer/showcase.js +0 -105
  160. package/x/components/drawer/showcase.js.map +0 -1
  161. package/x/components/drawer/style.css.js.map +0 -1
  162. package/x/components/example/component.d.ts +0 -371
  163. package/x/components/example/component.js +0 -22
  164. package/x/components/example/component.js.map +0 -1
  165. package/x/components/example/showcase.d.ts +0 -1
  166. package/x/components/example/showcase.js +0 -30
  167. package/x/components/example/showcase.js.map +0 -1
  168. package/x/components/example/style.css.js +0 -10
  169. package/x/components/example/style.css.js.map +0 -1
  170. package/x/components/foundation.css.d.ts +0 -1
  171. package/x/components/foundation.css.js +0 -14
  172. package/x/components/foundation.css.js.map +0 -1
  173. package/x/components/framework.d.ts +0 -8
  174. package/x/components/framework.js +0 -5
  175. package/x/components/framework.js.map +0 -1
  176. package/x/components/raw-components.d.ts +0 -12
  177. package/x/components/raw-components.js +0 -13
  178. package/x/components/raw-components.js.map +0 -1
  179. package/x/components/tabs/component.d.ts +0 -374
  180. package/x/components/tabs/component.js +0 -60
  181. package/x/components/tabs/component.js.map +0 -1
  182. package/x/components/tabs/control.js.map +0 -1
  183. package/x/components/tabs/showcase.d.ts +0 -1
  184. package/x/components/tabs/showcase.js +0 -167
  185. package/x/components/tabs/showcase.js.map +0 -1
  186. package/x/components/tabs/style.css.js.map +0 -1
  187. package/x/demo/demo.bundle.js +0 -42
  188. package/x/demo/demo.bundle.js.map +0 -1
  189. package/x/demo/demo.bundle.min.js +0 -893
  190. package/x/demo/demo.bundle.min.js.map +0 -7
  191. package/x/demo/lipsum.d.ts +0 -2
  192. package/x/demo/lipsum.js +0 -4
  193. package/x/demo/lipsum.js.map +0 -1
  194. package/x/demo/views/exhibit/style.css.d.ts +0 -2
  195. package/x/demo/views/exhibit/style.css.js +0 -84
  196. package/x/demo/views/exhibit/style.css.js.map +0 -1
  197. package/x/demo/views/exhibit/view.d.ts +0 -29
  198. package/x/demo/views/exhibit/view.js +0 -40
  199. package/x/demo/views/exhibit/view.js.map +0 -1
  200. package/x/demo/viewsets.d.ts +0 -17
  201. package/x/demo/viewsets.js +0 -9
  202. package/x/demo/viewsets.js.map +0 -1
  203. package/x/install/aura.bundle.js +0 -5
  204. package/x/install/aura.bundle.js.map +0 -1
  205. package/x/install/aura.bundle.min.js +0 -471
  206. package/x/install/aura.bundle.min.js.map +0 -7
  207. package/x/install/plain.bundle.d.ts +0 -1
  208. package/x/install/plain.bundle.js +0 -5
  209. package/x/install/plain.bundle.js.map +0 -1
  210. package/x/install/plain.bundle.min.js +0 -398
  211. package/x/install/plain.bundle.min.js.map +0 -7
  212. package/x/shiny.d.ts +0 -47
  213. package/x/shiny.js +0 -8
  214. package/x/shiny.js.map +0 -1
  215. package/x/tests.test.d.ts +0 -1
  216. package/x/tests.test.js +0 -3
  217. package/x/tests.test.js.map +0 -1
  218. package/x/themes/aura.css.d.ts +0 -1
  219. package/x/themes/aura.css.js +0 -85
  220. package/x/themes/aura.css.js.map +0 -1
  221. package/x/themes/index.barrel.d.ts +0 -2
  222. package/x/themes/index.barrel.js +0 -3
  223. package/x/themes/index.barrel.js.map +0 -1
  224. package/x/themes/index.d.ts +0 -2
  225. package/x/themes/index.js +0 -2
  226. package/x/themes/index.js.map +0 -1
  227. package/x/themes/infra/css-vars.d.ts +0 -15
  228. package/x/themes/infra/css-vars.js +0 -22
  229. package/x/themes/infra/css-vars.js.map +0 -1
  230. package/x/themes/plain.css.d.ts +0 -1
  231. package/x/themes/plain.css.js +0 -10
  232. package/x/themes/plain.css.js.map +0 -1
  233. /package/s/{components → _archive/components}/button/component.ts +0 -0
  234. /package/s/{components → _archive/components}/button/showcase.ts +0 -0
  235. /package/s/{components → _archive/components}/button/style.css.ts +0 -0
  236. /package/s/{components → _archive/components}/copy/component.ts +0 -0
  237. /package/s/{components → _archive/components}/copy/showcase.ts +0 -0
  238. /package/s/{components → _archive/components}/copy/style.css.ts +0 -0
  239. /package/s/{components → _archive/components}/drawer/component.ts +0 -0
  240. /package/s/{components → _archive/components}/drawer/control.ts +0 -0
  241. /package/s/{components → _archive/components}/drawer/showcase.ts +0 -0
  242. /package/s/{components → _archive/components}/drawer/style.css.ts +0 -0
  243. /package/s/{components → _archive/components}/example/component.ts +0 -0
  244. /package/s/{components → _archive/components}/example/showcase.ts +0 -0
  245. /package/s/{components → _archive/components}/example/style.css.ts +0 -0
  246. /package/s/{components → _archive/components}/foundation.css.ts +0 -0
  247. /package/s/{components → _archive/components}/framework.ts +0 -0
  248. /package/s/{components → _archive/components}/raw-components.ts +0 -0
  249. /package/s/{components → _archive/components}/tabs/component.ts +0 -0
  250. /package/s/{components → _archive/components}/tabs/control.ts +0 -0
  251. /package/s/{components → _archive/components}/tabs/showcase.ts +0 -0
  252. /package/s/{components → _archive/components}/tabs/style.css.ts +0 -0
  253. /package/s/{demo → _archive/demo}/demo.bundle.ts +0 -0
  254. /package/s/{demo → _archive/demo}/demo.css +0 -0
  255. /package/s/{demo → _archive/demo}/lipsum.ts +0 -0
  256. /package/s/{demo → _archive/demo}/views/exhibit/style.css.ts +0 -0
  257. /package/s/{demo → _archive/demo}/views/exhibit/view.ts +0 -0
  258. /package/s/{demo → _archive/demo}/viewsets.ts +0 -0
  259. /package/s/{install → _archive/install}/aura.bundle.ts +0 -0
  260. /package/s/{install → _archive/install}/plain.bundle.ts +0 -0
  261. /package/s/{shiny.ts → _archive/shiny.ts} +0 -0
  262. /package/s/{tests.test.ts → _archive/tests.test.ts} +0 -0
  263. /package/s/{themes → _archive/themes}/aura.css.ts +0 -0
  264. /package/s/{themes → _archive/themes}/index.barrel.ts +0 -0
  265. /package/s/{themes → _archive/themes}/index.ts +0 -0
  266. /package/s/{themes → _archive/themes}/infra/css-vars.ts +0 -0
  267. /package/s/{themes → _archive/themes}/plain.css.ts +0 -0
  268. /package/x/{demo → _archive/demo}/demo.css +0 -0
  269. /package/x/demo/{demo.bundle.d.ts → main.bundle.d.ts} +0 -0
  270. /package/x/{components/button → demo/views/codebox}/style.css.d.ts +0 -0
  271. /package/x/{install/aura.bundle.d.ts → test.d.ts} +0 -0
  272. /package/x/{components/copy → views/button}/style.css.d.ts +0 -0
  273. /package/x/{components/drawer → views/copy}/style.css.d.ts +0 -0
  274. /package/x/{components → views}/copy/style.css.js +0 -0
  275. /package/x/{components → views}/drawer/control.js +0 -0
  276. /package/x/{components/example → views/drawer}/style.css.d.ts +0 -0
  277. /package/x/{components → views}/tabs/style.css.d.ts +0 -0
@@ -0,0 +1,794 @@
1
+ var _s=Object.create;var Ze=Object.defineProperty;var Es=Object.getOwnPropertyDescriptor;var Cs=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,Fs=Object.prototype.hasOwnProperty;var Os=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),Ms=(r,t)=>{for(var e in t)Ze(r,e,{get:t[e],enumerable:!0})},Rs=(r,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cs(t))!Fs.call(r,o)&&o!==e&&Ze(r,o,{get:()=>t[o],enumerable:!(s=Es(t,o))||s.enumerable});return r};var zs=(r,t,e)=>(e=r!=null?_s(Ts(r)):{},Rs(t||!r||!r.__esModule?Ze(e,"default",{value:r,enumerable:!0}):e,r));var is=Os((jp,qe)=>{var fo=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var f=(function(r){var t=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,e=0,s={},o={manual:r.Prism&&r.Prism.manual,disableWorkerMessageHandler:r.Prism&&r.Prism.disableWorkerMessageHandler,util:{encode:function a(i){return i instanceof n?new n(i.type,a(i.content),i.alias):Array.isArray(i)?i.map(a):i.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(a){return Object.prototype.toString.call(a).slice(8,-1)},objId:function(a){return a.__id||Object.defineProperty(a,"__id",{value:++e}),a.__id},clone:function a(i,c){c=c||{};var p,u;switch(o.util.type(i)){case"Object":if(u=o.util.objId(i),c[u])return c[u];p={},c[u]=p;for(var g in i)i.hasOwnProperty(g)&&(p[g]=a(i[g],c));return p;case"Array":return u=o.util.objId(i),c[u]?c[u]:(p=[],c[u]=p,i.forEach(function($,d){p[d]=a($,c)}),p);default:return i}},getLanguage:function(a){for(;a;){var i=t.exec(a.className);if(i)return i[1].toLowerCase();a=a.parentElement}return"none"},setLanguage:function(a,i){a.className=a.className.replace(RegExp(t,"gi"),""),a.classList.add("language-"+i)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(p){var a=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(p.stack)||[])[1];if(a){var i=document.getElementsByTagName("script");for(var c in i)if(i[c].src==a)return i[c]}return null}},isActive:function(a,i,c){for(var p="no-"+i;a;){var u=a.classList;if(u.contains(i))return!0;if(u.contains(p))return!1;a=a.parentElement}return!!c}},languages:{plain:s,plaintext:s,text:s,txt:s,extend:function(a,i){var c=o.util.clone(o.languages[a]);for(var p in i)c[p]=i[p];return c},insertBefore:function(a,i,c,p){p=p||o.languages;var u=p[a],g={};for(var $ in u)if(u.hasOwnProperty($)){if($==i)for(var d in c)c.hasOwnProperty(d)&&(g[d]=c[d]);c.hasOwnProperty($)||(g[$]=u[$])}var k=p[a];return p[a]=g,o.languages.DFS(o.languages,function(E,M){M===k&&E!=a&&(this[E]=g)}),g},DFS:function a(i,c,p,u){u=u||{};var g=o.util.objId;for(var $ in i)if(i.hasOwnProperty($)){c.call(i,$,i[$],p||$);var d=i[$],k=o.util.type(d);k==="Object"&&!u[g(d)]?(u[g(d)]=!0,a(d,c,null,u)):k==="Array"&&!u[g(d)]&&(u[g(d)]=!0,a(d,c,$,u))}}},plugins:{},highlightAll:function(a,i){o.highlightAllUnder(document,a,i)},highlightAllUnder:function(a,i,c){var p={callback:c,container:a,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};o.hooks.run("before-highlightall",p),p.elements=Array.prototype.slice.apply(p.container.querySelectorAll(p.selector)),o.hooks.run("before-all-elements-highlight",p);for(var u=0,g;g=p.elements[u++];)o.highlightElement(g,i===!0,p.callback)},highlightElement:function(a,i,c){var p=o.util.getLanguage(a),u=o.languages[p];o.util.setLanguage(a,p);var g=a.parentElement;g&&g.nodeName.toLowerCase()==="pre"&&o.util.setLanguage(g,p);var $=a.textContent,d={element:a,language:p,grammar:u,code:$};function k(M){d.highlightedCode=M,o.hooks.run("before-insert",d),d.element.innerHTML=d.highlightedCode,o.hooks.run("after-highlight",d),o.hooks.run("complete",d),c&&c.call(d.element)}if(o.hooks.run("before-sanity-check",d),g=d.element.parentElement,g&&g.nodeName.toLowerCase()==="pre"&&!g.hasAttribute("tabindex")&&g.setAttribute("tabindex","0"),!d.code){o.hooks.run("complete",d),c&&c.call(d.element);return}if(o.hooks.run("before-highlight",d),!d.grammar){k(o.util.encode(d.code));return}if(i&&r.Worker){var E=new Worker(o.filename);E.onmessage=function(M){k(M.data)},E.postMessage(JSON.stringify({language:d.language,code:d.code,immediateClose:!0}))}else k(o.highlight(d.code,d.grammar,d.language))},highlight:function(a,i,c){var p={code:a,grammar:i,language:c};if(o.hooks.run("before-tokenize",p),!p.grammar)throw new Error('The language "'+p.language+'" has no grammar.');return p.tokens=o.tokenize(p.code,p.grammar),o.hooks.run("after-tokenize",p),n.stringify(o.util.encode(p.tokens),p.language)},tokenize:function(a,i){var c=i.rest;if(c){for(var p in c)i[p]=c[p];delete i.rest}var u=new h;return b(u,u.head,a),m(a,u,i,u.head,0),x(u)},hooks:{all:{},add:function(a,i){var c=o.hooks.all;c[a]=c[a]||[],c[a].push(i)},run:function(a,i){var c=o.hooks.all[a];if(!(!c||!c.length))for(var p=0,u;u=c[p++];)u(i)}},Token:n};r.Prism=o;function n(a,i,c,p){this.type=a,this.content=i,this.alias=c,this.length=(p||"").length|0}n.stringify=function a(i,c){if(typeof i=="string")return i;if(Array.isArray(i)){var p="";return i.forEach(function(k){p+=a(k,c)}),p}var u={type:i.type,content:a(i.content,c),tag:"span",classes:["token",i.type],attributes:{},language:c},g=i.alias;g&&(Array.isArray(g)?Array.prototype.push.apply(u.classes,g):u.classes.push(g)),o.hooks.run("wrap",u);var $="";for(var d in u.attributes)$+=" "+d+'="'+(u.attributes[d]||"").replace(/"/g,"&quot;")+'"';return"<"+u.tag+' class="'+u.classes.join(" ")+'"'+$+">"+u.content+"</"+u.tag+">"};function l(a,i,c,p){a.lastIndex=i;var u=a.exec(c);if(u&&p&&u[1]){var g=u[1].length;u.index+=g,u[0]=u[0].slice(g)}return u}function m(a,i,c,p,u,g){for(var $ in c)if(!(!c.hasOwnProperty($)||!c[$])){var d=c[$];d=Array.isArray(d)?d:[d];for(var k=0;k<d.length;++k){if(g&&g.cause==$+","+k)return;var E=d[k],M=E.inside,At=!!E.lookbehind,St=!!E.greedy,Nt=E.alias;if(St&&!E.pattern.global){var se=E.pattern.toString().match(/[imsuy]*$/)[0];E.pattern=RegExp(E.pattern.source,se+"g")}for(var oe=E.pattern||E,P=p.next,L=u;P!==i.tail&&!(g&&L>=g.reach);L+=P.value.length,P=P.next){var Q=P.value;if(i.length>a.length)return;if(!(Q instanceof n)){var nt=1,W;if(St){if(W=l(oe,L,a,At),!W||W.index>=a.length)break;var ne=W.index,Ss=W.index+W[0].length,it=L;for(it+=P.value.length;ne>=it;)P=P.next,it+=P.value.length;if(it-=P.value.length,L=it,P.value instanceof n)continue;for(var qt=P;qt!==i.tail&&(it<Ss||typeof qt.value=="string");qt=qt.next)nt++,it+=qt.value.length;nt--,Q=a.slice(L,it),W.index-=L}else if(W=l(oe,0,Q,At),!W)continue;var ne=W.index,ie=W[0],We=Q.slice(0,ne),fr=Q.slice(ne+ie.length),Ge=L+Q.length;g&&Ge>g.reach&&(g.reach=Ge);var ae=P.prev;We&&(ae=b(i,ae,We),L+=We.length),A(i,ae,nt);var ks=new n($,M?o.tokenize(ie,M):ie,Nt,ie);if(P=b(i,ae,ks),fr&&b(i,P,fr),nt>1){var Ve={cause:$+","+k,reach:Ge};m(a,i,c,P.prev,L,Ve),g&&Ve.reach>g.reach&&(g.reach=Ve.reach)}}}}}}function h(){var a={value:null,prev:null,next:null},i={value:null,prev:a,next:null};a.next=i,this.head=a,this.tail=i,this.length=0}function b(a,i,c){var p=i.next,u={value:c,prev:i,next:p};return i.next=u,p.prev=u,a.length++,u}function A(a,i,c){for(var p=i.next,u=0;u<c&&p!==a.tail;u++)p=p.next;i.next=p,p.prev=i,a.length-=u}function x(a){for(var i=[],c=a.head.next;c!==a.tail;)i.push(c.value),c=c.next;return i}if(!r.document)return r.addEventListener&&(o.disableWorkerMessageHandler||r.addEventListener("message",function(a){var i=JSON.parse(a.data),c=i.language,p=i.code,u=i.immediateClose;r.postMessage(o.highlight(p,o.languages[c],c)),u&&r.close()},!1)),o;var v=o.util.currentScript();v&&(o.filename=v.src,v.hasAttribute("data-manual")&&(o.manual=!0));function y(){o.manual||o.highlightAll()}if(!o.manual){var w=document.readyState;w==="loading"||w==="interactive"&&v&&v.defer?document.addEventListener("DOMContentLoaded",y):window.requestAnimationFrame?window.requestAnimationFrame(y):window.setTimeout(y,16)}return o})(fo);typeof qe<"u"&&qe.exports&&(qe.exports=f);typeof global<"u"&&(global.Prism=f);f.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\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:/<!\[CDATA\[[\s\S]*?\]\]>/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"},/&#x?[\da-f]{1,8};/i]};f.languages.markup.tag.inside["attr-value"].inside.entity=f.languages.markup.entity;f.languages.markup.doctype.inside["internal-subset"].inside=f.languages.markup;f.hooks.add("wrap",function(r){r.type==="entity"&&(r.attributes.title=r.content.replace(/&amp;/,"&"))});Object.defineProperty(f.languages.markup.tag,"addInlined",{value:function(t,e){var s={};s["language-"+e]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:f.languages[e]},s.cdata=/^<!\[CDATA\[|\]\]>$/i;var o={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:s}};o["language-"+e]={pattern:/[\s\S]+/,inside:f.languages[e]};var n={};n[t]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:o},f.languages.insertBefore("markup","cdata",n)}});Object.defineProperty(f.languages.markup.tag,"addAttribute",{value:function(r,t){f.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+r+")"+/\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:[t,"language-"+t],inside:f.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});f.languages.html=f.languages.markup;f.languages.mathml=f.languages.markup;f.languages.svg=f.languages.markup;f.languages.xml=f.languages.extend("markup",{});f.languages.ssml=f.languages.xml;f.languages.atom=f.languages.xml;f.languages.rss=f.languages.xml;(function(r){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;r.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.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\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,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:/[(){};:,]/},r.languages.css.atrule.inside.rest=r.languages.css;var e=r.languages.markup;e&&(e.tag.addInlined("style","css"),e.tag.addAttribute("style","css"))})(f);f.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:/[{}[\];(),.:]/};f.languages.javascript=f.languages.extend("clike",{"class-name":[f.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}|\?\?=?|\?\.?|[~:]/});f.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;f.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:f.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:f.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:f.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:f.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:f.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});f.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:f.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"}});f.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});f.languages.markup&&(f.languages.markup.tag.addInlined("script","javascript"),f.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"));f.languages.js=f.languages.javascript;(function(){if(typeof f>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var r="Loading\u2026",t=function(v,y){return"\u2716 Error "+v+" while fetching file: "+y},e="\u2716 Error: File does not exist or is empty",s={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},o="data-src-status",n="loading",l="loaded",m="failed",h="pre[data-src]:not(["+o+'="'+l+'"]):not(['+o+'="'+n+'"])';function b(v,y,w){var a=new XMLHttpRequest;a.open("GET",v,!0),a.onreadystatechange=function(){a.readyState==4&&(a.status<400&&a.responseText?y(a.responseText):a.status>=400?w(t(a.status,a.statusText)):w(e))},a.send(null)}function A(v){var y=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(v||"");if(y){var w=Number(y[1]),a=y[2],i=y[3];return a?i?[w,Number(i)]:[w,void 0]:[w,w]}}f.hooks.add("before-highlightall",function(v){v.selector+=", "+h}),f.hooks.add("before-sanity-check",function(v){var y=v.element;if(y.matches(h)){v.code="",y.setAttribute(o,n);var w=y.appendChild(document.createElement("CODE"));w.textContent=r;var a=y.getAttribute("data-src"),i=v.language;if(i==="none"){var c=(/\.(\w+)$/.exec(a)||[,"none"])[1];i=s[c]||c}f.util.setLanguage(w,i),f.util.setLanguage(y,i);var p=f.plugins.autoloader;p&&p.loadLanguages(i),b(a,function(u){y.setAttribute(o,l);var g=A(y.getAttribute("data-range"));if(g){var $=u.split(/\r\n?|\n/g),d=g[0],k=g[1]==null?$.length:g[1];d<0&&(d+=$.length),d=Math.max(0,Math.min(d-1,$.length)),k<0&&(k+=$.length),k=Math.max(0,Math.min(k,$.length)),u=$.slice(d,k).join(`
2
+ `),y.hasAttribute("data-start")||y.setAttribute("data-start",String(d+1))}w.textContent=u,f.highlightElement(w)},function(u){y.setAttribute(o,m),w.textContent=u})}}),f.plugins.fileHighlight={highlight:function(y){for(var w=(y||document).querySelectorAll(h),a=0,i;i=w[a++];)f.highlightElement(i)}};var x=!1;f.fileHighlight=function(){x||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),x=!0),f.plugins.fileHighlight.highlight.apply(this,arguments)}})()});var le=globalThis,ce=le.ShadowRoot&&(le.ShadyCSS===void 0||le.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xe=Symbol(),mr=new WeakMap,Ut=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==Xe)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(ce&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=mr.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&mr.set(e,t))}return t}toString(){return this.cssText}},Bt=r=>new Ut(typeof r=="string"?r:r+"",void 0,Xe),S=(r,...t)=>{let e=r.length===1?r[0]:t.reduce((s,o,n)=>s+(l=>{if(l._$cssResult$===!0)return l.cssText;if(typeof l=="number")return l;throw Error("Value passed to 'css' function must be a 'css' function result: "+l+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[n+1],r[0]);return new Ut(e,r,Xe)},ue=(r,t)=>{if(ce)r.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let s=document.createElement("style"),o=le.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},kt=ce?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return Bt(e)})(r):r;var{is:Ps,defineProperty:js,getOwnPropertyDescriptor:Ls,getOwnPropertyNames:Hs,getOwnPropertySymbols:Ds,getPrototypeOf:Ns}=Object,pe=globalThis,gr=pe.trustedTypes,qs=gr?gr.emptyScript:"",Us=pe.reactiveElementPolyfillSupport,It=(r,t)=>r,Je={toAttribute(r,t){switch(t){case Boolean:r=r?qs:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,t){let e=r;switch(t){case Boolean:e=r!==null;break;case Number:e=r===null?null:Number(r);break;case Object:case Array:try{e=JSON.parse(r)}catch{e=null}}return e}},yr=(r,t)=>!Ps(r,t),br={attribute:!0,type:String,converter:Je,reflect:!1,useDefault:!1,hasChanged:yr};Symbol.metadata??=Symbol("metadata"),pe.litPropertyMetadata??=new WeakMap;var tt=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=br){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let s=Symbol(),o=this.getPropertyDescriptor(t,s,e);o!==void 0&&js(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:n}=Ls(this.prototype,t)??{get(){return this[e]},set(l){this[e]=l}};return{get:o,set(l){let m=o?.call(this);n?.call(this,l),this.requestUpdate(t,m,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??br}static _$Ei(){if(this.hasOwnProperty(It("elementProperties")))return;let t=Ns(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(It("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(It("properties"))){let e=this.properties,s=[...Hs(e),...Ds(e)];for(let o of s)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[s,o]of e)this.elementProperties.set(s,o)}this._$Eh=new Map;for(let[e,s]of this.elementProperties){let o=this._$Eu(e,s);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let s=new Set(t.flat(1/0).reverse());for(let o of s)e.unshift(kt(o))}else t!==void 0&&e.push(kt(t));return e}static _$Eu(t,e){let s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return ue(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,s);if(o!==void 0&&s.reflect===!0){let n=(s.converter?.toAttribute!==void 0?s.converter:Je).toAttribute(e,s.type);this._$Em=t,n==null?this.removeAttribute(o):this.setAttribute(o,n),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let n=s.getPropertyOptions(o),l=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:Je;this._$Em=o;let m=l.fromAttribute(e,n.type);this[o]=m??this._$Ej?.get(o)??m,this._$Em=null}}requestUpdate(t,e,s,o=!1,n){if(t!==void 0){let l=this.constructor;if(o===!1&&(n=this[t]),s??=l.getPropertyOptions(t),!((s.hasChanged??yr)(n,e)||s.useDefault&&s.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(l._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:o,wrapped:n},l){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,l??e??this[t]),n!==!0||l!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,n]of this._$Ep)this[o]=n;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,n]of s){let{wrapped:l}=n,m=this[o];l!==!0||this._$AL.has(o)||m===void 0||this.C(o,void 0,n,m)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(s=>s.hostUpdate?.()),this.update(e)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};tt.elementStyles=[],tt.shadowRootOptions={mode:"open"},tt[It("elementProperties")]=new Map,tt[It("finalized")]=new Map,Us?.({ReactiveElement:tt}),(pe.reactiveElementVersions??=[]).push("2.1.2");var Ye=globalThis,vr=r=>r,he=Ye.trustedTypes,xr=he?he.createPolicy("lit-html",{createHTML:r=>r}):void 0,Qe="$lit$",et=`lit$${Math.random().toFixed(9).slice(2)}$`,tr="?"+et,Bs=`<${tr}>`,mt=document,Gt=()=>mt.createComment(""),Vt=r=>r===null||typeof r!="object"&&typeof r!="function",er=Array.isArray,_r=r=>er(r)||typeof r?.[Symbol.iterator]=="function",Ke=`[
3
+ \f\r]`,Wt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,wr=/-->/g,$r=/>/g,dt=RegExp(`>|${Ke}(?:([^\\s"'>=/]+)(${Ke}*=${Ke}*(?:[^
4
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),Ar=/'/g,Sr=/"/g,Er=/^(?:script|style|textarea|title)$/i,rr=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),C=rr(1),Z=rr(2),xo=rr(3),rt=Symbol.for("lit-noChange"),R=Symbol.for("lit-nothing"),kr=new WeakMap,ft=mt.createTreeWalker(mt,129);function Cr(r,t){if(!er(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return xr!==void 0?xr.createHTML(t):t}var Tr=(r,t)=>{let e=r.length-1,s=[],o,n=t===2?"<svg>":t===3?"<math>":"",l=Wt;for(let m=0;m<e;m++){let h=r[m],b,A,x=-1,v=0;for(;v<h.length&&(l.lastIndex=v,A=l.exec(h),A!==null);)v=l.lastIndex,l===Wt?A[1]==="!--"?l=wr:A[1]!==void 0?l=$r:A[2]!==void 0?(Er.test(A[2])&&(o=RegExp("</"+A[2],"g")),l=dt):A[3]!==void 0&&(l=dt):l===dt?A[0]===">"?(l=o??Wt,x=-1):A[1]===void 0?x=-2:(x=l.lastIndex-A[2].length,b=A[1],l=A[3]===void 0?dt:A[3]==='"'?Sr:Ar):l===Sr||l===Ar?l=dt:l===wr||l===$r?l=Wt:(l=dt,o=void 0);let y=l===dt&&r[m+1].startsWith("/>")?" ":"";n+=l===Wt?h+Bs:x>=0?(s.push(b),h.slice(0,x)+Qe+h.slice(x)+et+y):h+et+(x===-2?m:y)}return[Cr(r,n+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},Zt=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let n=0,l=0,m=t.length-1,h=this.parts,[b,A]=Tr(t,e);if(this.el=r.createElement(b,s),ft.currentNode=this.el.content,e===2||e===3){let x=this.el.content.firstChild;x.replaceWith(...x.childNodes)}for(;(o=ft.nextNode())!==null&&h.length<m;){if(o.nodeType===1){if(o.hasAttributes())for(let x of o.getAttributeNames())if(x.endsWith(Qe)){let v=A[l++],y=o.getAttribute(x).split(et),w=/([.?@])?(.*)/.exec(v);h.push({type:1,index:n,name:w[2],strings:y,ctor:w[1]==="."?fe:w[1]==="?"?me:w[1]==="@"?ge:bt}),o.removeAttribute(x)}else x.startsWith(et)&&(h.push({type:6,index:n}),o.removeAttribute(x));if(Er.test(o.tagName)){let x=o.textContent.split(et),v=x.length-1;if(v>0){o.textContent=he?he.emptyScript:"";for(let y=0;y<v;y++)o.append(x[y],Gt()),ft.nextNode(),h.push({type:2,index:++n});o.append(x[v],Gt())}}}else if(o.nodeType===8)if(o.data===tr)h.push({type:2,index:n});else{let x=-1;for(;(x=o.data.indexOf(et,x+1))!==-1;)h.push({type:7,index:n}),x+=et.length-1}n++}}static createElement(t,e){let s=mt.createElement("template");return s.innerHTML=t,s}};function gt(r,t,e=r,s){if(t===rt)return t;let o=s!==void 0?e._$Co?.[s]:e._$Cl,n=Vt(t)?void 0:t._$litDirective$;return o?.constructor!==n&&(o?._$AO?.(!1),n===void 0?o=void 0:(o=new n(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=gt(r,o._$AS(r,t.values),o,s)),t}var de=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,o=(t?.creationScope??mt).importNode(e,!0);ft.currentNode=o;let n=ft.nextNode(),l=0,m=0,h=s[0];for(;h!==void 0;){if(l===h.index){let b;h.type===2?b=new _t(n,n.nextSibling,this,t):h.type===1?b=new h.ctor(n,h.name,h.strings,this,t):h.type===6&&(b=new be(n,this,t)),this._$AV.push(b),h=s[++m]}l!==h?.index&&(n=ft.nextNode(),l++)}return ft.currentNode=mt,o}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},_t=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=R,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=gt(this,t,e),Vt(t)?t===R||t==null||t===""?(this._$AH!==R&&this._$AR(),this._$AH=R):t!==this._$AH&&t!==rt&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):_r(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==R&&Vt(this._$AH)?this._$AA.nextSibling.data=t:this.T(mt.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:s}=t,o=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=Zt.createElement(Cr(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let n=new de(o,this),l=n.u(this.options);n.p(e),this.T(l),this._$AH=n}}_$AC(t){let e=kr.get(t.strings);return e===void 0&&kr.set(t.strings,e=new Zt(t)),e}k(t){er(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let n of t)o===e.length?e.push(s=new r(this.O(Gt()),this.O(Gt()),this,this.options)):s=e[o],s._$AI(n),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let s=vr(t).nextSibling;vr(t).remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},bt=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,n){this.type=1,this._$AH=R,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=R}_$AI(t,e=this,s,o){let n=this.strings,l=!1;if(n===void 0)t=gt(this,t,e,0),l=!Vt(t)||t!==this._$AH&&t!==rt,l&&(this._$AH=t);else{let m=t,h,b;for(t=n[0],h=0;h<n.length-1;h++)b=gt(this,m[s+h],e,h),b===rt&&(b=this._$AH[h]),l||=!Vt(b)||b!==this._$AH[h],b===R?t=R:t!==R&&(t+=(b??"")+n[h+1]),this._$AH[h]=b}l&&!o&&this.j(t)}j(t){t===R?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},fe=class extends bt{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===R?void 0:t}},me=class extends bt{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==R)}},ge=class extends bt{constructor(t,e,s,o,n){super(t,e,s,o,n),this.type=5}_$AI(t,e=this){if((t=gt(this,t,e,0)??R)===rt)return;let s=this._$AH,o=t===R&&s!==R||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,n=t!==R&&(s===R||o);o&&this.element.removeEventListener(this.name,this,s),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},be=class{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){gt(this,t)}},Fr={M:Qe,P:et,A:tr,C:1,L:Tr,R:de,D:_r,V:gt,I:_t,H:bt,N:me,U:ge,B:fe,F:be},Is=Ye.litHtmlPolyfillSupport;Is?.(Zt,_t),(Ye.litHtmlVersions??=[]).push("3.3.2");var q=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let n=e?.renderBefore??null;s._$litPart$=o=new _t(t.insertBefore(Gt(),n),n,void 0,e??{})}return o._$AI(r),o};var sr=globalThis,Et=class extends tt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=q(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return rt}};Et._$litElement$=!0,Et.finalized=!0,sr.litElementHydrateSupport?.({LitElement:Et});var Ws=sr.litElementPolyfillSupport;Ws?.({LitElement:Et});(sr.litElementVersions??=[]).push("4.2.2");var X={string:(r,t)=>r.getAttribute(t)??void 0,number:(r,t)=>{let e=r.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(r,t)=>r.getAttribute(t)!==null},H={string:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e),!0),number:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e.toString()),!0),boolean:(r,t,e)=>(e?r.setAttribute(t,""):r.removeAttribute(t),!0),any:(r,t,e)=>{e==null?r.removeAttribute(t):typeof e=="string"?r.setAttribute(t,e):typeof e=="number"?r.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?r.setAttribute(t,""):r.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(r,t)=>{for(let[e,s]of t)H.any(r,e,s)},record:(r,t)=>H.entries(r,Object.entries(t))};function Or(r,t={}){let e=document.createElement(r);return H.record(e,t),e}function Mr(r){let t=document.createDocumentFragment();return q(r,t),t.firstElementChild}function ye(r,t){let e=[];for(let[s,o]of Object.entries(t))if(typeof o=="function")r.addEventListener(s,o),e.push(()=>r.removeEventListener(s,o));else{let[n,l]=o;r.addEventListener(s,l,n),e.push(()=>r.removeEventListener(s,l))}return()=>e.forEach(s=>s())}function Rr(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var ve=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>X.string(this.element,e),set:(t,e,s)=>H.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>X.number(this.element,e),set:(t,e,s)=>H.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>X.boolean(this.element,e),set:(t,e,s)=>H.boolean(this.element,e,s)})};var zr=(r,t,e={})=>new Proxy(t,{get:(s,o)=>{switch(t[o]){case String:return X.string(r,o);case Number:return X.number(r,o);case Boolean:return X.boolean(r,o);default:throw new Error(`invalid attribute type for "${o}"`)}},set:(s,o,n)=>{try{switch(e.beforeSet?.(o),t[o]){case String:return H.string(r,o,n);case Number:return H.number(r,o,n);case Boolean:return H.boolean(r,o,n);default:throw new Error(`invalid attribute type for "${o}"`)}}finally{e.afterSet?.(o)}}});function Ct(r){let t=new ve(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Rr(r,e),spec:(e,s={})=>zr(r,e,s)}}Ct.get=X;Ct.set=H;function Pr(r){return new or(r)}var or=class{tagName;#t=new Map;#e=[];constructor(t){this.tagName=t}attr(t,e=!0){return this.#t.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.attr(e,s);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return H.entries(t,this.#t),t.append(...this.#e),t}};function Tt(r,t=document){let e=t.querySelector(r);if(!e)throw new Error(`element not found (${r})`);return e}function xe(r,t=document){return t.querySelector(r)}function we(r,t=document){return Array.from(t.querySelectorAll(r))}var $e=class r{element;#t;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?Tt(t,this.element):t)}require(t){return Tt(t,this.element)}maybe(t){return xe(t,this.element)}all(t){return we(t,this.element)}render(...t){return q(t,this.element)}get attrs(){return this.#t??=Ct(this.element)}events(t){return ye(this.element,t)}};function jr(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Lr(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,n]of Object.entries(r)){let l=jr(o),m=customElements.get(l);e&&m||(customElements.define(l,n),s&&document.querySelectorAll(l).forEach(h=>{h.constructor===HTMLElement&&customElements.upgrade(h)}))}}function T(r,t=document){return Tt(r,t)}T.in=(r,t=document)=>new $e(t).in(r);T.require=Tt;T.maybe=xe;T.all=we;T.el=Or;T.elmer=Pr;T.mk=Mr;T.events=ye;T.attrs=Ct;T.register=Lr;T.render=(r,...t)=>q(t,r);function Hr(r,t){let e,s,o=[];function n(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return n(),((...l)=>{e=l,s&&clearTimeout(s);let m=new Promise((h,b)=>{o.push({resolve:h,reject:b})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(h=>{for(let{resolve:b}of o)b(h);n()}).catch(h=>{for(let{reject:b}of o)b(h);n()})},r),m})}function yt(){let r,t,e=new Promise((o,n)=>{r=o,t=n});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}function Ft(r){let t=null;return((...e)=>(t?t.params=e:(t={params:e,deferred:yt()},queueMicrotask(()=>{let{params:s,deferred:o}=t;t=null,Promise.resolve(r(...s)).then(o.resolve).catch(o.reject)})),t.deferred.promise))}var st={};Ms(st,{clone:()=>Xt,equal:()=>Gs,freeze:()=>Vs});function Xt(r,t=new Set){if(t.has(r))throw new Error("cannot clone circular reference");let e;return typeof r=="function"||r!==null&&typeof r=="object"?(t.add(r),Array.isArray(r)?e=r.map(s=>Xt(s,new Set(t))):r.constructor===Object?e=Object.fromEntries(Object.entries(r).map(([s,o])=>[s,Xt(o,new Set(t))])):r instanceof Map?e=new Map(Array.from(r,([s,o])=>[s,Xt(o,new Set(t))])):r instanceof Set?e=new Set(Array.from(r,s=>Xt(s,new Set(t)))):r instanceof Date?e=new Date(r.getTime()):e=r,t.delete(r)):e=r,e}var Jt=Object.freeze({happy:r=>r!=null,sad:r=>r==null,boolean:r=>typeof r=="boolean",number:r=>typeof r=="number",string:r=>typeof r=="string",bigint:r=>typeof r=="bigint",object:r=>typeof r=="object"&&r!==null,array:r=>Array.isArray(r),fn:r=>typeof r=="function",symbol:r=>typeof r=="symbol"});var Gs=(r,t)=>{function e(s,o,n){if(!Jt.object(s)||!Jt.object(o))return s===o;if(n.includes(s))throw new Error("forbidden circularity detected in deep equal comparison");let l=[...n,s];if(s instanceof Map&&o instanceof Map){if(s.size!==o.size)return!1;for(let[m,h]of s)if(!o.has(m)||!e(h,o.get(m),l))return!1}else if(s instanceof Set&&o instanceof Set){if(s.size!==o.size)return!1;for(let m of s)if(!Array.from(o).some(h=>e(m,h,l)))return!1}else{let m=Object.keys(s),h=Object.keys(o);if(m.length!==h.length)return!1;for(let b of m)if(!h.includes(b)||!e(s[b],o[b],l))return!1}return!0}return e(r,t,[])};function Vs(r){function t(e,s){if(!Jt.object(e)||s.includes(e))return e;let o=[...s,e];if(e instanceof Map)for(let n of e.entries())for(let l of n)t(l,o);else if(e instanceof Set)for(let n of e)t(n,o);else if(Array.isArray(e))for(let n of e)t(n,o);else for(let n of Object.values(e))t(n,o);return Object.freeze(e)}return t(r,[])}var Ae=class r extends Map{static require(t,e){if(t.has(e))return t.get(e);throw new Error(`required key not found: "${e}"`)}static guarantee(t,e,s){if(t.has(e))return t.get(e);{let o=s();return t.set(e,o),o}}array(){return[...this]}require(t){return r.require(this,t)}guarantee(t,e){return r.guarantee(this,t,e)}};function Dr(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}var Se=class{getRefill;#t=[];constructor(t){this.getRefill=t,this.#e()}get currentStock(){return[...this.#t]}#e(){if(this.#t.length===0&&(this.#t=[...this.getRefill()]),this.#t.length===0)throw new Error("dispenser's getRefill returned an empty array")}takeAll(){let t=this.#t;return this.#t=[...this.getRefill()],t}takeRandom(){this.#e();let t=Math.floor(Math.random()*this.#t.length),[e]=this.#t.splice(t,1);return e}takeFirst(){return this.#e(),this.#t.shift()}takeLast(){return this.#e(),this.#t.pop()}shift=this.takeFirst.bind(this);pop=this.takeLast.bind(this)};var Nr=(r=0)=>new Promise(t=>setTimeout(t,r));function Zs(){let r=new Set;async function t(...h){await Promise.all([...r].map(b=>b(...h)))}function e(h){return r.add(h),()=>{r.delete(h)}}async function s(...h){return t(...h)}function o(h){return e(h)}async function n(h){let{promise:b,resolve:A}=yt(),x=o(async(...v)=>{h&&await h(...v),A(v),x()});return b}function l(){r.clear()}let m={pub:s,sub:o,publish:t,subscribe:e,on:e,next:n,clear:l};return Object.assign(o,m),Object.assign(s,m),m}function at(r){let t=Zs();return r&&t.sub(r),t.sub}function lt(r,...t){let e=r.length-1;return r.slice(0,e).reduce((s,o,n)=>s+o+t[n],"")+r[e]}function qr(r){let t=r.split(/\r|\n/),e;for(let o of t)if(!/^\s+$/.test(o)){let l=o.match(/^(\t+).+/);if(l){let m=l[1].length;if(e=e===void 0||m<e?m:e,e===0)break}}let s=new RegExp(`^\\t{${e}}`);return t.map(o=>/^\s+$/.test(o)?"":o).map(o=>o.replace(s,"")).join(`
5
+ `)}var ke=S`
6
+ * {
7
+ margin: 0;
8
+ padding: 0;
9
+ box-sizing: border-box;
10
+
11
+ scrollbar-width: thin;
12
+ scrollbar-color: #888 transparent;
13
+ }
14
+
15
+ ::-webkit-scrollbar { width: 8px; }
16
+ ::-webkit-scrollbar-track { background: transparent; }
17
+ ::-webkit-scrollbar-thumb { background: #888; border-radius: 1em; }
18
+ ::-webkit-scrollbar-thumb:hover { background: #999; }
19
+ `;var _e=class r extends HTMLElement{static register(){T.register({SlyShadow:r},{soft:!0})}connectedCallback(){this.hasAttribute("view")||this.setAttribute("view","")}};var Ee=class{render;count=0;rendered=yt();constructor(t){this.render=t}doneRender(){this.count++,this.rendered.resolve(),this.rendered=yt()}},vt=class extends Ee{host;shadow;constructor(t,e,s){super(t),this.host=e,this.shadow=s}};var nr=class{#t=[];get scope(){let t=this.#t.at(-1);if(!t)throw new Error("hooks must be called within a render fn");return t}increment(){let t=this.scope,e=t.position++;return{scope:t,position:e}}wrap(t,e){t.position=0,this.#t.push(t);try{return e()}finally{this.#t.pop()}}},J=globalThis[Symbol.for("e280.hooks")]??=new nr;function Ur(r){return st.freeze(st.clone(r))}var ir=class{#t=[];#e=new WeakMap;#r=[];#s=new Set;notifyRead(t){this.#t.at(-1)?.add(t)}async notifyWrite(t){if(this.#s.has(t))throw new Error("circularity forbidden");let e=this.#o(t).pub();return this.#r.at(-1)?.add(e),e}observe(t){this.#t.push(new Set);let e=t();return{seen:this.#t.pop(),result:e}}subscribe(t,e){return this.#o(t)(async()=>{let s=new Set;this.#r.push(s),this.#s.add(t),s.add(e()),this.#s.delete(t),await Promise.all(s),this.#r.pop()})}#o(t){let e=this.#e.get(t);return e||(e=at(),this.#e.set(t,e)),e}},O=globalThis[Symbol.for("e280.tracker")]??=new ir;var K=Symbol("optic");var Ce=class{calculate;#t=!1;#e;constructor(t){this.calculate=t,this.#e=t()}get(){return this.#t&&(this.#t=!1,this.#e=this.calculate()),this.#e}invalidate(){this.#t=!0}};var Te=class r{on=at();[K];#t;#e;#r=Ft(()=>this.on.publish(this.state));constructor(t){this[K]=t,this.#t=st.clone(t.getState()),this.#e=new Ce(()=>Ur(t.getState()))}async update(){let t=this[K].getState();!st.equal(t,this.#t)&&(this.#e.invalidate(),this.#t=st.clone(t),this.#r(),await O.notifyWrite(this))}get state(){return O.notifyRead(this),this.#e.get()}async mutate(t){return this[K].mutate(t)}lens(t){let e=new r({getState:()=>t(this[K].getState()),mutate:s=>this[K].mutate(o=>s(t(o))),registerLens:this[K].registerLens});return this[K].registerLens(e),e}};var Fe=class r{sneak;on;dispose;constructor(t,e){if(new.target!==r)throw new Error("Derived cannot be subclassed");return Oe(t,e)}get value(){return this.get()}get(){return O.notifyRead(this),this.sneak}toString(){return`(derived "${String(this.get())}")`}};function ar(r,t){let e=[],s=()=>{for(let l of e)l();e=[]},o=()=>{let{seen:l,result:m}=O.observe(r);for(let h of l)e.push(O.subscribe(h,n));return m},n=Ft(()=>{s(),t?t(o()):o()});return{result:o(),dispose:s}}function Ot(r,t){return Object.is(r,t)}function Oe(r,t){function e(){return e.get()}let s=t?.compare??Ot;Object.setPrototypeOf(e,Fe.prototype),e.on=at();let{result:o,dispose:n}=ar(r,async l=>{!s(e.sneak,l)&&(e.sneak=l,await Promise.all([O.notifyWrite(e),e.on.pub(l)]))});return e.sneak=o,e.dispose=n,e}var xt=Symbol(),ct=Symbol(),ut=Symbol(),Me=Symbol(),Y=Symbol(),Kt=Symbol(),ot=Symbol();var Re=class r{sneak;[Kt];[ct];[ot];[ut];[Y];constructor(t,e){if(new.target!==r)throw new Error("Lazy cannot be subclassed");return ze(t,e)}get value(){return this.get()}[Me](){for(let o of this[ot])o();this[ot]=[];let{seen:t,result:e}=O.observe(this[Kt]),s=async()=>{this[ct]=!0};for(let o of t)this[ot].push(O.subscribe(o,s));return this[ut]=()=>{for(let o of this[ot])o();this[ot]=[]},e}get(){if(!this[ut])this.sneak=this[Me](),this[ct]=!1;else if(this[ct]){this[ct]=!1;let t=this[Me]();!this[Y](this.sneak,t)&&(this.sneak=t,O.notifyWrite(this))}return O.notifyRead(this),this.sneak}dispose(){this[ut]&&this[ut]()}toString(){return`($lazy "${String(this.get())}")`}};function ze(r,t){function e(){return e.get()}return Object.setPrototypeOf(e,Re.prototype),e.sneak=void 0,e[Kt]=r,e[ct]=!1,e[ut]=void 0,e[ot]=[],e[Y]=t?.compare??Ot,e}var Pe=class r{sneak;on;[xt];[Y];constructor(t,e){if(new.target!==r)throw new Error("Signal cannot be subclassed");return B(t,e)}get value(){return this.get()}set value(t){this.set(t)}get(){return O.notifyRead(this),this.sneak}async set(t,e=!1){let s=this.sneak;return this.sneak=t,(e||!this[Y](s,t))&&await this.publish(),t}async publish(){if(this[xt])throw new Error("forbid circularity");let t=this.sneak,e=Promise.resolve();try{this[xt]=!0,e=Promise.all([O.notifyWrite(this),this.on.pub(t)])}finally{this[xt]=!1}return await e,t}toString(){return`($signal "${String(this.get())}")`}};function B(r,t){function e(s){let o=e;return arguments.length===0?o.get():o.set(arguments[0])}return Object.setPrototypeOf(e,Pe.prototype),e.sneak=r,e.on=at(),e[xt]=!1,e[Y]=t?.compare??Ot,e}B.derived=Oe;B.lazy=ze;var Mt=class{#t=[];clear(){this.#t.forEach(t=>t()),this.#t=[]}observe(t,e){let{seen:s,result:o}=O.observe(t);this.clear();for(let n of s){let l=O.subscribe(n,e);this.#t.push(l)}return o}};function F(r){let{scope:t,position:e}=J.increment();return t.values.guarantee(e,r)}function wt(r){let{scope:t}=J.increment();return F(()=>t.mounts.mount(r))}var je=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};var Rt=class{cx;position=0;values=new Ae;mounts=new je;constructor(t){this.cx=t}};var{I:Ba}=Fr;var Br=r=>r.strings===void 0;var Le={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Pt=r=>(...t)=>({_$litDirective$:r,values:t}),zt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var Yt=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),Yt(s,t);return!0},He=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},Ir=r=>{for(let t;t=r._$AM;r=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(r))break;e.add(r),Ks(t)}};function Xs(r){this._$AN!==void 0?(He(this),this._$AM=r,Ir(this)):this._$AM=r}function Js(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let n=e;n<s.length;n++)Yt(s[n],!1),He(s[n]);else s!=null&&(Yt(s,!1),He(s));else Yt(this,r)}var Ks=r=>{r.type==Le.CHILD&&(r._$AP??=Js,r._$AQ??=Xs)},Qt=class extends zt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),Ir(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(Yt(this,t),He(this))}setValue(t){if(Br(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};function De(r){return F(()=>new lr(r))}var lr=class{current;constructor(t){this.current=t}};function cr(){let{scope:r}=J.increment();return r.cx}function Wr(){let r=cr();if(!(r instanceof vt))throw new Error("this hook only works on shadow views (but was called in a light view)");return r}function ur(){return cr().render}function Gr(){return cr().rendered.promise}function pt(){return Wr().host}function Vr(){return Wr().shadow}function Ne(r){let t=pt(),e=ur(),s=De(new Set);return wt(()=>T.attrs(t).on(o=>{for(let n of o)if(!s.current.has(n.attributeName)){e();break}})),Gr().then(()=>s.current.clear()),F(()=>T.attrs(t).spec(r,{beforeSet:o=>s.current.add(o)}))}function Zr(r,t){ue(r,Ys(t))}function Ys(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(kt(s))}else r!==void 0&&t.push(kt(r));return t}function I(...r){let t=Vr();F(()=>Zr(t,r))}var jt=I;function D(r=""){let t=pt();F(()=>t.setAttribute("view",r))}function $t(r){return F(()=>B(r))}function Xr(r,t){for(let[e,s]of Object.entries(t))Qs(r,e,s)}function Qs(r,t,e){let s=r.getAttribute(t),o=to(e);o!==s&&(o===null?r.removeAttribute(t):r.setAttribute(t,o))}function to(r){return typeof r=="string"?r:typeof r=="number"?r.toString():r?"":null}function eo(){_e.register();let r=document.createElement("sly-shadow"),t=r.attachShadow({mode:"open"});return{host:r,shadow:t}}function j(r){return Jr(eo,r)}j.setup=r=>(t=>Jr(r,t));function Jr(r,t){let e=Pt(class extends Qt{#t;#e;#r;#s=new Mt;constructor(o){super(o);let{host:n,shadow:l}=r(),m=Ft(()=>{if(!this.#r)throw new Error("cannot render before props");if(!this.isConnected)return;let h=this.#o(this.#r);q(h,this.#t.shadow),this.#t.doneRender()});this.#t=new vt(m,n,l),this.#e=new Rt(this.#t)}#o(o){return this.#r=o,this.#s.observe(()=>J.wrap(this.#e,()=>t(...this.#r)),this.#t.render)}render({props:o,children:n,attrs:l}){let{host:m}=this.#t;return this.isConnected&&(l&&Xr(m,l),q(n,this.#t.host),q(this.#o(o),this.#t.shadow),this.#t.doneRender()),m}disconnected(){this.#e.mounts.unmountAll(),this.#s.clear()}reconnected(){this.#e.mounts.remountAll(),this.#t.render()}});function s(...o){return e({props:o})}return s.with=e,s}function _(r,t){return()=>ro({hz:r,frames:t})}var ro=j(({hz:r,frames:t})=>{D("loading"),jt(ke,so);let e=$t(0);return wt(()=>Dr(async()=>{await Nr(1e3/r);let s=e.get()+1;e.set(s>=t.length?0:s)})),t.at(e.get())}),so=S`
20
+ :host {
21
+ font-family: monospace;
22
+ white-space: pre;
23
+ user-select: none;
24
+ }
25
+ `;var z=20,Lt=10,Ht=4,Dc=_(z,["|","/","-","\\"]),Nc=_(z,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),qc=_(z,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),Uc=_(z,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),Bc=_(z,["\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),Ic=_(z,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1"]),Wc=_(z,["\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0"]),Gc=_(z,["\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588"]),Vc=_(z,["\u2588\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2581\u2581\u2581"]),Zc=_(Ht,["\u{1F6B6}","\u{1F3C3}"]),Xc=_(Lt,["\u25F7","\u25F6","\u25F5","\u25F4"]),Jc=_(z,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),Kc=_(z,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Yc=_(Lt,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),Qc=_(Lt,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),tu=_(Lt,[" "," ",". ",".. ","..."," .."," ."]),eu=_(z,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),ru=_(z,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),su=_(z,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),ou=_(z,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),nu=_(z,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),iu=_(z,["000","100","110","111","011","001"]),au=_(z,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),lu=_(z,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),cu=_(Ht,["\u{1F539}","\u{1F535}"]),uu=_(Lt,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),pu=_(z,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),hu=_(z,["\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}"," \u{1F91C} \u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F4A5}\u{1F91B} ","\u{1F91C} \u{1F4A5} \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}"]),oo=_(Ht,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),du=_(Ht,["\u{1F513}","\u{1F512}"]),fu=_(Ht,["\u{1F505}","\u{1F506}"]),mu=_(Ht,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),gu=_(Lt,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var io=j(r=>(D("error"),jt(ke,ao),typeof r=="string"?r:r instanceof Error?C`<strong>${r.name}:</strong> <span>${r.message}</span>`:"error")),ao=S`
26
+ :host {
27
+ font-family: monospace;
28
+ color: red;
29
+ }
30
+ `;var Kr=S`@layer view {
31
+
32
+ button {
33
+ background: transparent;
34
+ border: none;
35
+ font-size: inherit;
36
+ }
37
+
38
+ button {
39
+ opacity: var(--inactive-opacity);
40
+ cursor: pointer;
41
+ cursor: copy;
42
+
43
+ color: inherit;
44
+ transition: all 300ms linear;
45
+
46
+ &:is(:hover, :focus-visible) {
47
+ opacity: 1;
48
+ }
49
+ }
50
+
51
+ [data-status="invalid"] {
52
+ color: var(--lame);
53
+ }
54
+
55
+ [data-status="good"] {
56
+ opacity: 1;
57
+ color: var(--happy);
58
+ filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
59
+ }
60
+
61
+ [data-status="bad"] {
62
+ opacity: 1;
63
+ color: var(--angry);
64
+ filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
65
+ }
66
+
67
+ svg {
68
+ width: 1em;
69
+ height: 1em;
70
+ }
71
+
72
+ }`;var pr=Z`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-clipboard"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2" /><path d="M9 3m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z" /></svg>`;var Yr=Z`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-7.29 7.123a1 1 0 0 0 -1.414 0l-.083 .094a1 1 0 0 0 .083 1.32l1.292 1.293l-1.292 1.293a1 1 0 0 0 0 1.414l.094 .083a1 1 0 0 0 1.32 -.083l1.293 -1.293l1.293 1.293a1 1 0 0 0 1.414 0l.083 -.094a1 1 0 0 0 -.083 -1.32l-1.293 -1.293l1.293 -1.293a1 1 0 0 0 0 -1.414l-.094 -.083a1 1 0 0 0 -1.32 .083l-1.293 1.292zm3.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;var Qr=Z`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-check"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-3.704 7.123l-3.293 3.292l-1.293 -1.292a1 1 0 1 0 -1.414 1.414l2 2a1 1 0 0 0 1.414 0l4 -4a1 1 0 0 0 -1.414 -1.414m-.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;function hr(r){return r===void 0?"invalid":"neutral"}function ts(r,t){let e=$t(hr(r)),s=F(()=>Hr(t,()=>e.set(hr(r)))),o=F(()=>async n=>{await e.set(n),await s()});return{reset:s,flash:o,status:e()}}var es=lt`@layer core {
73
+
74
+ ::selection {
75
+ color: var(--selection);
76
+ background-color: var(--selection-bg);
77
+ }
78
+
79
+ ::-webkit-scrollbar { width: 8px; }
80
+ ::-webkit-scrollbar-track { background: transparent; }
81
+ ::-webkit-scrollbar-thumb { background: #444; border-radius: 1em; }
82
+ ::-webkit-scrollbar-thumb:hover { background: #666; }
83
+
84
+ a {
85
+ color: var(--link);
86
+ text-decoration: none;
87
+
88
+ &:visited {
89
+ color: color-mix(in srgb, purple, var(--link) 70%);
90
+ }
91
+
92
+ &:hover {
93
+ color: color-mix(in srgb, white, var(--link) 90%);
94
+ text-decoration: underline;
95
+ }
96
+
97
+ &:active {
98
+ color: color-mix(in srgb, white, var(--link) 50%);
99
+ }
100
+ }
101
+
102
+ }`;var rs=lt`@layer vars {
103
+
104
+ :is(:root, :host) {
105
+ ${ho({bg:"#111",alpha:"#def",rounded:"0.5em",padding:"0.5em",prime:"#d068ff",code:"#3f1",link:"cyan",selection:"white","selection-bg":"#f70",lame:"#8888",angry:"#f50",zesty:"#cf0",happy:"#0fa",calm:"#0af",sad:"#74f",quirky:"#f49","inactive-opacity":"0.5","anim-duration":"300ms"})}
106
+ }
107
+
108
+ }`;function po([r,t]){return`--${r}: var(--shiny-${r}, ${t});`}function ho(r){return Object.entries(r).map(po).join(`
109
+ `)}var ss=lt`@layer reset {
110
+
111
+ * {
112
+ margin: 0;
113
+ padding: 0;
114
+ box-sizing: border-box;
115
+
116
+ scrollbar-width: thin;
117
+ scrollbar-color: #888 transparent;
118
+ }
119
+
120
+ ::-webkit-scrollbar { width: 8px; }
121
+ ::-webkit-scrollbar-track { background: transparent; }
122
+ ::-webkit-scrollbar-thumb { background: #888; border-radius: 1em; }
123
+ ::-webkit-scrollbar-thumb:hover { background: #999; }
124
+
125
+ }`;var os=lt`
126
+
127
+ @layer vars, reset, core, underlay, view, overlay;
128
+
129
+ ${rs}
130
+ ${ss}
131
+ ${es}
132
+
133
+ `;var N=new CSSStyleSheet;N.replaceSync(os);var te=j((r,t={})=>{D("shiny-copy"),I(N,Kr);let e=ts(r,t.ms??1e3);async function s(){if(r!==void 0)try{if(t.fail)throw new Error("copy failed on purpose for testing purposes");await navigator.clipboard.writeText(r),await e.flash("good")}catch(o){console.error(o),await e.flash("bad")}}return C`
134
+ <button data-status="${e.status}" @click="${s}">
135
+ ${(()=>{switch(e.status){case"neutral":return pr;case"invalid":return pr;case"good":return Qr;case"bad":return Yr;default:throw new Error("unknown copy status")}})()}
136
+ <slot></slot>
137
+ </button>
138
+ `});var G=r=>r;var ns=S`@layer view {
139
+
140
+ section.showcase {
141
+ position: relative;
142
+
143
+ display: flex;
144
+ flex-direction: column;
145
+
146
+ padding: 1em;
147
+ border-radius: var(--rounded);
148
+ gap: var(--padding);
149
+
150
+ background: linear-gradient(to right top, #252dd985, #aa6affbd);
151
+ backdrop-filter: blur(0.5em);
152
+
153
+ box-shadow: 0 0 5em #5d1fadaa;
154
+ border-top: 2px solid #fff4;
155
+
156
+ &::before {
157
+ z-index: 0;
158
+ content: "";
159
+ display: block;
160
+ position: absolute;
161
+ inset: 0;
162
+ border-radius: var(--rounded);
163
+ background: #0006;
164
+ width: calc(100% - var(--padding));
165
+ height: calc(100% - var(--padding));
166
+ margin: auto;
167
+ }
168
+
169
+ > * {
170
+ z-index: 1;
171
+ position: relative;
172
+ }
173
+ }
174
+
175
+ header {
176
+ display: flex;
177
+ flex-wrap: wrap;
178
+ place-content: center;
179
+ gap: var(--padding);
180
+
181
+ h2 {
182
+ flex: 1 1 auto;
183
+ color: var(--prime);
184
+ }
185
+ }
186
+
187
+ .sides {
188
+ display: flex;
189
+ flex-wrap: wrap;
190
+ gap: var(--padding);
191
+
192
+ > * {
193
+ flex: 1 1 0;
194
+ }
195
+
196
+ }
197
+
198
+ .codezone {
199
+ display: flex;
200
+ flex-direction: column;
201
+ gap: var(--padding);
202
+
203
+ > * {
204
+ flex: 1 1 auto;
205
+ }
206
+ }
207
+
208
+ .stage {
209
+ display: flex;
210
+ flex-direction: column;
211
+ justify-content: start;
212
+ align-items: center;
213
+ padding: calc(var(--padding) * 2) var(--padding);
214
+ border: 1px dashed color-mix(in oklch, transparent, currentColor 50%);
215
+ border-radius: var(--rounded);
216
+ }
217
+
218
+ }`;var Ue=zs(is(),1);(function(r){var t=r.languages.javascript["template-string"],e=t.pattern.source,s=t.inside.interpolation,o=s.inside["interpolation-punctuation"],n=s.pattern.source;function l(y,w){if(r.languages[y])return{pattern:RegExp("((?:"+w+")\\s*)"+e),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:y}}}}r.languages.javascript["template-string"]=[l("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),l("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),l("svg",/\bsvg/.source),l("markdown",/\b(?:markdown|md)/.source),l("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),l("sql",/\bsql/.source),t].filter(Boolean);function m(y,w){return"___"+w.toUpperCase()+"_"+y+"___"}function h(y,w,a){var i={code:y,grammar:w,language:a};return r.hooks.run("before-tokenize",i),i.tokens=r.tokenize(i.code,i.grammar),r.hooks.run("after-tokenize",i),i.tokens}function b(y){var w={};w["interpolation-punctuation"]=o;var a=r.tokenize(y,w);if(a.length===3){var i=[1,1];i.push.apply(i,h(a[1],r.languages.javascript,"javascript")),a.splice.apply(a,i)}return new r.Token("interpolation",a,s.alias,y)}function A(y,w,a){var i=r.tokenize(y,{interpolation:{pattern:RegExp(n),lookbehind:!0}}),c=0,p={},u=i.map(function(k){if(typeof k=="string")return k;for(var E=k.content,M;y.indexOf(M=m(c++,a))!==-1;);return p[M]=E,M}).join(""),g=h(u,w,a),$=Object.keys(p);c=0;function d(k){for(var E=0;E<k.length;E++){if(c>=$.length)return;var M=k[E];if(typeof M=="string"||typeof M.content=="string"){var At=$[c],St=typeof M=="string"?M:M.content,Nt=St.indexOf(At);if(Nt!==-1){++c;var se=St.substring(0,Nt),oe=b(p[At]),P=St.substring(Nt+At.length),L=[];if(se&&L.push(se),L.push(oe),P){var Q=[P];d(Q),L.push.apply(L,Q)}typeof M=="string"?(k.splice.apply(k,[E,1].concat(L)),E+=L.length-1):M.content=L}}else{var nt=M.content;Array.isArray(nt)?d(nt):d([nt])}}}return d(g),new r.Token(a,g,"language-"+a,y)}var x={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};r.hooks.add("after-tokenize",function(y){if(!(y.language in x))return;function w(a){for(var i=0,c=a.length;i<c;i++){var p=a[i];if(typeof p!="string"){var u=p.content;if(!Array.isArray(u)){typeof u!="string"&&w([u]);continue}if(p.type==="template-string"){var g=u[1];if(u.length===3&&typeof g!="string"&&g.type==="embedded-code"){var $=v(g),d=g.alias,k=Array.isArray(d)?d[0]:d,E=r.languages[k];if(!E)continue;u[1]=A($,E,k)}}else w(u)}}}w(y.tokens)});function v(y){return typeof y=="string"?y:Array.isArray(y)?y.map(v).join(""):v(y.content)}})(Prism);var as=S`@layer view {
219
+
220
+ :host {
221
+ display: flex;
222
+ flex-direction: column;
223
+ }
224
+
225
+ .box {
226
+ flex: 1 1 auto;
227
+ display: flex;
228
+ flex-direction: column;
229
+ background: #0003;
230
+ border-radius: var(--rounded);
231
+ }
232
+
233
+ header {
234
+ display: flex;
235
+ justify-content: space-between;
236
+ padding: calc(var(--padding) / 4) var(--padding);
237
+
238
+ .title {
239
+ opacity: 0.4;
240
+ font-size: 1em;
241
+ font-weight: normal;
242
+ }
243
+
244
+ .buttons {
245
+ display: flex;
246
+ font-size: 1.2em;
247
+ }
248
+ }
249
+
250
+ code {
251
+ padding: calc(var(--padding) / 4) var(--padding);
252
+ color: var(--code);
253
+ white-space: pre-wrap;
254
+ tab-size: 2;
255
+ }
256
+
257
+ }`;function ls(){return F(()=>{let r=document.head.querySelector("[data-prism]");if(!r)throw new Error("failed to find [data-prism] stylesheet");let t=new CSSStyleSheet;return t.replaceSync(r.textContent),t})}var ee=class extends zt{constructor(t){if(super(t),this.it=R,t.type!==Le.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===R||t==null)return this._t=void 0,this.it=t;if(t===rt)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;let e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}};ee.directiveName="unsafeHTML",ee.resultType=1;var cs=Pt(ee);var dr=j((r,t,e)=>{let s=ls();I(N,s,as),e=qr(e).trim();let o=Ue.default.highlight(e,t==="js"?Ue.default.languages.javascript:Ue.default.languages.css,t);return C`
258
+ <div class=box>
259
+ <header>
260
+ <h3 class=title>${r}</h3>
261
+ <div class=buttons>${te(e)}</div>
262
+ </header>
263
+
264
+ <code>${cs(o)}</code>
265
+ </div>
266
+ `});var us=j((r,t,e)=>(D("stylebox"),I(N,r,t),C`
267
+ <style>${Bt(r)}</style>
268
+ <style>${Bt(t)}</style>
269
+ ${e}
270
+ `));var ps=S`@layer view {
271
+
272
+ :host {
273
+ display: inline-flex;
274
+ flex-direction: column;
275
+ }
276
+
277
+ slot[part="tabs"] {
278
+ display: flex;
279
+ flex-wrap: wrap;
280
+
281
+ &::slotted([data-tabbed]) {
282
+ opacity: 1;
283
+ color: currentColor;
284
+ text-decoration: underline;
285
+ }
286
+ }
287
+
288
+ slot[part="tabs"][data-snug] {
289
+ &::slotted(*) {
290
+ border-radius: var(--rounded);
291
+ }
292
+
293
+ &::slotted(:not([data-last], [data-next-is-tabbed])) {
294
+ border-right: none;
295
+ }
296
+
297
+ &::slotted([data-tabbed]:not([data-first])) {
298
+ border-left: none;
299
+ }
300
+
301
+ &::slotted(:not([data-last])) {
302
+ border-top-right-radius: 0;
303
+ border-bottom-right-radius: 0;
304
+ }
305
+
306
+ &::slotted(:not([data-first])) {
307
+ border-top-left-radius: 0;
308
+ border-bottom-left-radius: 0;
309
+ }
310
+ }
311
+
312
+ } `;var Dt=class{length=1;$index=B(0);constructor(t=0){this.$index.value=t}clamp(t){return t=Math.min(t,this.length-1),t=Math.max(t,0),t}get index(){return this.clamp(this.$index())}async setIndex(t){return this.$index(t)}async shimmy(t){let e=this.clamp(this.index+t);return this.setIndex(e)}};var re=j((r={})=>{D("shiny-tabs"),jt(N,ps);let t=pt(),e=F(()=>T.attrs(t).spec({index:Number})),s=F(()=>r.control??new Dt(e.index??0)),o=$t([]),n=$t([]);async function l(b){let A=b.currentTarget;await o.set(A.assignedElements())}async function m(b){let A=b.currentTarget;await n.set(A.assignedElements())}e.index=s.$index(),s.length=o().length;function h(b,A){let x=s.clamp(b+A);return x===b?!1:x===s.index}for(let[b,A]of o().entries()){let x=b===s.index,v=T.attrs(A);v.booleans.disabled=x,v.booleans["data-snug"]=r.snug,v.booleans["data-tabbed"]=x,v.booleans["data-first"]=b===0,v.booleans["data-last"]=b===s.length-1,v.booleans["data-next-is-tabbed"]=h(b,1),v.booleans["data-previous-is-tabbed"]=h(b,-1),A.onclick=()=>s.setIndex(b)}for(let[b,A]of n().entries()){let x=b===s.index;T.attrs(A).booleans["data-tabbed"]=x,T.attrs(A).booleans.hidden=!x}return C`
313
+ <slot part=tabs ?data-snug="${r.snug}" @slotchange="${l}"></slot>
314
+ <slot part=panels name=panel @slotchange="${m}"></slot>
315
+ `});var hs=S`@layer view {
316
+
317
+ :host {
318
+ display: inline-flex;
319
+ width: max-content;
320
+ height: max-content;
321
+
322
+ cursor: pointer;
323
+ background: transparent;
324
+ user-select: none;
325
+
326
+ --button-padding: 0.3em 0.7em;
327
+ --button-color: var(--calm);
328
+ }
329
+
330
+ slot {
331
+ z-index: 1;
332
+ position: relative;
333
+ display: block;
334
+ }
335
+
336
+ button {
337
+ opacity: 0.8;
338
+ position: relative;
339
+
340
+ font: inherit;
341
+ cursor: inherit;
342
+ text-shadow: inherit;
343
+ font-weight: medium;
344
+
345
+ display: inline-flex;
346
+ justify-content: center;
347
+ align-items: center;
348
+
349
+ width: 100%;
350
+ height: 100%;
351
+ padding: var(--button-padding);
352
+
353
+ border-radius: 2em;
354
+ background: var(--button-color);
355
+ text-shadow: 0.1em 0.1em 0.1em #0004;
356
+ box-shadow: 0.1em 0.2em 0.3em #0002;
357
+
358
+ color: white;
359
+ border: none;
360
+ background: linear-gradient(
361
+ to bottom right,
362
+ color-mix(in oklab, var(--button-color), white 40%),
363
+ color-mix(in oklab, var(--button-color), black 20%)
364
+ );
365
+
366
+ &::before {
367
+ content: "";
368
+ display: block;
369
+ position: absolute;
370
+ z-index: 0;
371
+ inset: 0.15em;
372
+ border-radius: inherit;
373
+ background: color-mix(in oklab, var(--button-color), #0004 50%);
374
+ }
375
+
376
+ &:not([disabled]):is(:hover, :focus-visible) { opacity: 1; }
377
+ &:not([disabled]):active { opacity: 0.6; }
378
+
379
+ &[data-vibe="lame"] { --button-color: var(--lame); }
380
+ &[data-vibe="angry"] { --button-color: var(--angry); }
381
+ &[data-vibe="zesty"] { --button-color: var(--zesty); }
382
+ &[data-vibe="happy"] { --button-color: var(--happy); }
383
+ &[data-vibe="calm"] { --button-color: var(--calm); }
384
+ &[data-vibe="sad"] { --button-color: var(--sad); }
385
+ &[data-vibe="quirky"] { --button-color: var(--quirky); }
386
+ &[data-vibe="tabbed"] { --button-color: var(--tabbed); }
387
+
388
+ > * {
389
+ position: relative;
390
+ z-index: 1;
391
+ }
392
+
393
+ &[disabled] {
394
+ cursor: default;
395
+ }
396
+
397
+ &[hidden] {
398
+ display: none !important;
399
+ }
400
+ }
401
+
402
+ :host([data-tabbed]) > button {
403
+ opacity: 1;
404
+ filter: brightness(120%);
405
+ }
406
+
407
+ :host(:not([data-tabbed])) > button[disabled] {
408
+ --button-color: var(--lame);
409
+ }
410
+
411
+ :host([data-snug]:not([data-last])) > button {
412
+ border-top-right-radius: 0;
413
+ border-bottom-right-radius: 0;
414
+ }
415
+
416
+ :host([data-snug]:not([data-first])) > button {
417
+ border-top-left-radius: 0;
418
+ border-bottom-left-radius: 0;
419
+ }
420
+
421
+ }`;var U=j((r,t={})=>{D("shiny-button"),I(N,hs);let e=Ne({hidden:Boolean,disabled:Boolean});return C`
422
+ <button
423
+ part=button
424
+ data-vibe="${t.vibe??"calm"}"
425
+ ?disabled="${e.disabled}"
426
+ ?hidden="${e.hidden}">
427
+ <slot>${r}</slot>
428
+ </button>
429
+ `});var ht=j((r,t)=>{D("showcase"),I(N,ns);let e=F(()=>new Dt),s=t.at(e.index);return C`
430
+ <section class=showcase>
431
+ <header>
432
+ <h2>✨${r}✨</h2>
433
+ <nav>
434
+ ${re.with({props:[{control:e,snug:!0}],children:t.map(o=>U(o.name))})}
435
+ </nav>
436
+ </header>
437
+
438
+ ${s&&C`
439
+ <div class=explain>${s.explain}</div>
440
+
441
+ <div class=sides>
442
+ <div class=codezone>
443
+ ${dr("lit-html","js",s.js)}
444
+ ${s.css&&dr("css","css",s.css.toString())}
445
+ </div>
446
+
447
+ <div class=stage>
448
+ ${us(s.styleboxCss,s.css??S``,s.render())}
449
+ </div>
450
+ </div>
451
+ `}
452
+ </section>
453
+ `});var ds=()=>ht("ShinyCopy",[G({name:"normal",explain:"click-to-copy button.",render:()=>te("hello world"),styleboxCss:S`
454
+ :host {
455
+ font-size: 5em;
456
+ }
457
+ `,js:`
458
+ ShinyCopy("hello world")
459
+ `,css:S`
460
+ [view="shiny-copy"] {
461
+ --shiny-happy: #0fa;
462
+ --shiny-angry: #f50;
463
+ --shiny-lame: #8888;
464
+ --shiny-inactive-opacity: 0.5;
465
+ }
466
+ `}),G({name:"fail",explain:C`
467
+ <p>click-to-copy button. <em>deliberately fails so you can see.</em></p>
468
+ `,render:()=>te("hello world",{fail:!0}),styleboxCss:S`
469
+ :host {
470
+ font-size: 4em;
471
+ }
472
+ `,js:`
473
+ ShinyCopy("hello world", {fail: true})
474
+ `,css:S`
475
+ [view="shiny-copy"] {
476
+ --shiny-happy: #0fa;
477
+ --shiny-angry: #f50;
478
+ --shiny-lame: #8888;
479
+ --shiny-inactive-opacity: 0.5;
480
+ }
481
+ `})]);var V=new Se(()=>["lorem kettlebell dolor sit amet, mountain squats consectetur trail-running. adipiscing deadlift elit, sed do 45lb turkish get-up eiusmod tempor incididunt ut hike magna aliqua. ut enim ad minim clean & press, quis nostrud exercitation lunges ullamco kettlebell snatch trailhead nisi ut aliquip ex dolore summit irure dolor.","lorem protein dolor sit amet, creatine scoop elit shaker bottle tempor. grilled steak magna keto-fasting culpa, carb-loading perspiciatis cheat day. whey isolate dolor sit macros elit, intermittent fasting tempor electrolyte magna; barefoot shoes culpa, liver perspiciatis ancestral squat rack gospel. lorem bulking dolor sit cut elit, tdee tracker tempor calorie deficit magna; chicken breast culpa gatorade perspiciatis meal prep.","lorem caffeine dolor sit amet, double espresso elit cold brew tempor jitter. adderall magna focus culpa, lion\u2019s mane perspiciatis nootropic. nicotine gum dolor sit vape elit, dopamine hit tempor buzz magna; lsd microdosing culpa, productivity perspiciatis agile sprint. lorem latte dolor sit drip elit, french press tempor aeropress magna; insomnia culpa, circadian rhythm perspiciatis blue light filter.","lorem arch dolor sit amet, pacman -Syu elit rolling release tempor breakage. i3-gaps commodo tiling, bspwm magna culpa xinitrc. alias neovim configs in .dotfiles forest, r/unixporn veniam rice showcase perspiciatis.","lorem authlocal dolor sit amet, user-sovereign identity elit, cryptographic tempor signatures. ed25519 magna keypair culpa, elliptic perspiciatis handshake ut zero-knowledge proof. decentralized login elit mnemonic seed tempor recovery phrase. did magna alias culpa federation, lorem oauth2 perspiciatis antiquated.","lorem webgpu dolor sit amet, fragment shader elit vertex buffer tempor pipeline; bindgroup magna sampler culpa, wgsl perspiciatis alignment bug. compute pass workgroup barrier magna, mipmap cascade culpa drawcall instancing overflow. spir-v dolor sit wasm elit, canvas context lost magna; fallback webgl2 perspiciatis, polyfill slowpath dolore, glsl antique culpa extension hell 144hz tearing. command encoder perspiciatis out-of-memory, chromium nightly.","lorem sedentary dolor sit amet, infinite scroll elit chair-bound tempor. commit marathon magna carpal tunnel culpa, caffeine perspiciatis heartbeat irregular. lorem backlog dolor sit ticket elit, jira sprint tempor sedentary slump magna; gym membership culpa expired, standing desk perspiciatis unused. lorem procrastination dolor sit youtube elit, keyboard crumbs tempor pizza box magna; cardio avoidant culpa, hike someday perspiciatis maybe."]);var fs=()=>ht("ShinyTabs",[G({name:"shiny",explain:"a button-bar of mutually-exclusive tabs. panels are optional.",render:()=>re.with({props:[{snug:!0}],children:C`
482
+ ${U("alpha")}
483
+ ${U("bravo")}
484
+ ${U("charlie")}
485
+ <p slot=panel>${V.takeFirst()}</p>
486
+ <p slot=panel>${V.takeFirst()}</p>
487
+ <p slot=panel>${V.takeFirst()}</p>
488
+ `}),styleboxCss:S`
489
+ [view="shiny-button"] { font-size: 1.5em; }
490
+ p { margin-top: var(--padding); }
491
+ `,js:`
492
+ ShinyTabs.with({
493
+ props: [{snug: true}],
494
+ children: html\`
495
+ \${ShinyButton("alpha")}
496
+ \${ShinyButton("bravo")}
497
+ \${ShinyButton("charlie")}
498
+ <p slot=panel>lorem kettlebell..</p>
499
+ <p slot=panel>lorem protein..</p>
500
+ <p slot=panel>lorem caffeine..</p>
501
+ \`,
502
+ })
503
+ `,css:S`
504
+ [view="shiny-tabs"] {
505
+ --shiny-rounded: 0.5em;
506
+ }
507
+ `}),G({name:"plain",explain:"a button-bar of mutually-exclusive tabs. panels are optional.",render:()=>re.with({props:[{snug:!0}],children:C`
508
+ <button>alpha</button>
509
+ <button>bravo</button>
510
+ <button>charlie</button>
511
+ <p slot=panel>${V.takeFirst()}</p>
512
+ <p slot=panel>${V.takeFirst()}</p>
513
+ <p slot=panel>${V.takeFirst()}</p>
514
+ `}),styleboxCss:S`
515
+ p { margin-top: var(--padding); }
516
+ button {
517
+ font-size: 1.5em;
518
+ padding: calc(var(--padding) / 2);
519
+ }
520
+ `,js:`
521
+ ShinyTabs.with({
522
+ props: [{snug: true}],
523
+ children: html\`
524
+ <button>alpha</button>
525
+ <button>bravo</button>
526
+ <button>charlie</button>
527
+ <p slot=panel>lorem kettlebell..</p>
528
+ <p slot=panel>lorem protein..</p>
529
+ <p slot=panel>lorem caffeine..</p>
530
+ \`,
531
+ })
532
+ `,css:S`
533
+ [view="shiny-tabs"] {
534
+ --shiny-rounded: 0.5em;
535
+ }
536
+ `})]);var ms=()=>ht("ShinyButton",[G({name:"catalog",explain:"click-to-copy button.",render:()=>[U("e280"),U("e280",{vibe:"happy"}),U("e280",{vibe:"sad"}),U("e280",{vibe:"angry"}),U("e280",{vibe:"zesty"}),U("e280",{vibe:"quirky"}),U("e280",{vibe:"lame"})],styleboxCss:S`
537
+ :host {
538
+ font-size: 1.5em;
539
+ display: flex;
540
+ justify-content: center;
541
+ flex-wrap: wrap;
542
+ gap: calc(var(--padding) / 2);
543
+ }
544
+ `,js:`
545
+ [
546
+ ShinyButton("e280"),
547
+ ShinyButton("e280", {vibe: "happy"}),
548
+ ShinyButton("e280", {vibe: "sad"}),
549
+ ShinyButton("e280", {vibe: "angry"}),
550
+ ShinyButton("e280", {vibe: "zesty"}),
551
+ ShinyButton("e280", {vibe: "quirky"}),
552
+ ShinyButton("e280", {vibe: "lame"}),
553
+ ]
554
+ `,css:void 0})]);var gs=S`@layer view {
555
+
556
+ :host {
557
+ display: block;
558
+ width: 100%;
559
+ height: 100%;
560
+
561
+ --slate-bg: transparent;
562
+ --button-size: 2em;
563
+ --blanket-backdrop-filter: blur(0.5em);
564
+ --slate-hidden-opacity: 1;
565
+ --blanket-bg: color-mix(in oklab, transparent, var(--bg));
566
+ }
567
+
568
+ .shell {
569
+ position: relative;
570
+ width: 100%;
571
+ height: 100%;
572
+
573
+ [part="blanket"] {
574
+ opacity: 0;
575
+
576
+ content: "";
577
+ display: block;
578
+ position: absolute;
579
+ inset: 0;
580
+
581
+ background: var(--blanket-bg);
582
+ backdrop-filter: var(--blanket-backdrop-filter);
583
+
584
+ will-change: opacity;
585
+ transition: all var(--anim-duration) ease;
586
+ }
587
+
588
+ .clipper {
589
+ pointer-events: none;
590
+ position: absolute;
591
+ inset: 0;
592
+ width: 100%;
593
+ height: 100%;
594
+ overflow: hidden;
595
+ > * { pointer-events: all; }
596
+ }
597
+
598
+ [part="tray"] {
599
+ position: absolute;
600
+ top: 0;
601
+ width: calc(100% - var(--button-size));
602
+
603
+ display: flex;
604
+ flex-direction: column;
605
+ height: auto;
606
+ max-height: 100%;
607
+
608
+ transform: translateX(-100%);
609
+ will-change: opacity, transform;
610
+ transition: all var(--anim-duration) ease;
611
+
612
+ > [part="slate"] {
613
+ opacity: var(--slate-hidden-opacity);
614
+ will-change: opacity;
615
+ transition: opacity var(--anim-duration) ease;
616
+
617
+ display: block;
618
+ height: 100%;
619
+ overflow-y: auto;
620
+ background: var(--slate-bg);
621
+ }
622
+
623
+ > button {
624
+ position: absolute;
625
+ top: 0;
626
+ left: 100%;
627
+
628
+ opacity: var(--inactive-opacity);
629
+ background: transparent;
630
+ border: none;
631
+ cursor: pointer;
632
+
633
+ &:is(:hover, :focus-visible) {
634
+ opacity: 1;
635
+ }
636
+
637
+ > slot {
638
+ display: contents;
639
+ }
640
+
641
+ svg {
642
+ width: var(--button-size);
643
+ height: var(--button-size);
644
+ }
645
+ }
646
+ }
647
+
648
+ &[data-side="right"] {
649
+ [part="tray"] {
650
+ right: 0;
651
+ transform: translateX(100%);
652
+ > button {
653
+ left: unset;
654
+ right: 100%;
655
+ }
656
+ }
657
+ }
658
+
659
+ slot[name="plate"] {
660
+ display: block;
661
+ width: 100%;
662
+ height: 100%;
663
+ }
664
+
665
+ &[data-open] {
666
+ [part="blanket"] {
667
+ opacity: 1;
668
+ }
669
+ [part="tray"] {
670
+ transform: translateX(0%);
671
+ > [part="slate"] {
672
+ opacity: 1;
673
+ }
674
+ }
675
+ }
676
+ }
677
+
678
+ }`;var Be=class{$open=B(!1);constructor(t=!1){t&&this.$open.set(!0)}get isOpen(){return this.$open.get()}async setOpen(t){return this.$open.set(t)}open=async()=>{await this.setOpen(!0)};close=async()=>{await this.setOpen(!1)};toggle=async()=>this.setOpen(!this.isOpen)};var Ie=class{#t;constructor(t){this.#t=t.attachInternals().states}assign(...t){this.#t.forEach(e=>this.#t.delete(e));for(let e of t)this.#t.add(e);return this}};var bs=Z`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 6l-12 12" /><path d="M6 6l12 12" /></svg>`;var ys=Z`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-menu-2"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 6l16 0" /><path d="M4 12l16 0" /><path d="M4 18l16 0" /></svg>`;var vs=j((r={})=>{D("shiny-drawer"),I(N,gs);let t=pt(),e=F(()=>new Ie(t)),s=F(()=>r.control??new Be),o=Ne({side:String,button:Boolean,open:Boolean});o.open=s.isOpen;let n=r.button??o.button,l=r.side??(o.side==="right"?"right":"left");e.assign(l,s.isOpen?"opened":"closed"),wt(()=>T.events(window,{keydown:h=>{h.code==="Escape"&&s.close()}}));function m(){return C`
679
+ <button part=button @click="${s.toggle}">
680
+ ${s.isOpen?C`
681
+ <slot name=button-x>
682
+ ${bs}
683
+ </slot>
684
+ `:C`
685
+ <slot name=button>
686
+ ${ys}
687
+ </slot>
688
+ `}
689
+ </button>
690
+ `}return C`
691
+ <div class=shell ?data-open="${s.isOpen}" data-side="${l}">
692
+ <slot name=plate ?inert="${s.isOpen}"></slot>
693
+
694
+ <div class=clipper>
695
+ <div part=blanket @click="${s.close}" ?inert="${!s.isOpen}"></div>
696
+
697
+ <div part=tray>
698
+ <slot part=slate ?inert="${!s.isOpen}"></slot>
699
+ ${n?m():null}
700
+ </div>
701
+ </div>
702
+ </div>
703
+ `});var xs=S`
704
+ :host {
705
+ font-size: 1em;
706
+ width: 100%;
707
+ min-height: 100%;
708
+ }
709
+ p + p {
710
+ margin-top: var(--padding);
711
+ }
712
+ `,ws=S`
713
+ [slot=plate] { padding-top: 2em; }
714
+ [view="shiny-drawer"] {
715
+ --slate-bg: color-mix(in oklch, var(--calm), #444);
716
+ &::part(slate) { padding: 1em; }
717
+ &:state(left)::part(slate) { border-bottom-right-radius: 0.5em; }
718
+ &:state(right)::part(slate) { border-bottom-left-radius: 0.5em; }
719
+ }
720
+ `,$s=r=>vs.with({props:[{button:!0,side:r}],children:C`
721
+ <header>${V.takeFirst()}</header>
722
+ <section slot=plate>
723
+ <p>${V.takeFirst()}</p>
724
+ <p>${V.takeFirst()}</p>
725
+ </section>
726
+ `}),As=()=>ht("ShinyDrawer",[G({name:"left",explain:"slide-out panel. button optional.",styleboxCss:xs,css:ws,render:()=>$s("left"),js:`
727
+ ShinyDrawer.with({
728
+ props: [{button: true, side: "left"}],
729
+ children: html\`
730
+ <header>lorem kettlebell..</header>
731
+ <section slot=plate>
732
+ <p>lorem protein..</p>
733
+ <p>lorem caffeine..</p>
734
+ </section>
735
+ \`,
736
+ })
737
+ `}),G({name:"right",explain:"slide-out panel. button optional.",styleboxCss:xs,css:ws,render:()=>$s("right"),js:`
738
+ ShinyDrawer.with({
739
+ props: [{button: true, side: "right"}],
740
+ children: html\`
741
+ <header>lorem kettlebell..</header>
742
+ <section slot=plate>
743
+ <p>lorem protein..</p>
744
+ <p>lorem caffeine..</p>
745
+ </section>
746
+ \`,
747
+ })
748
+ `})]);T.render(T(".gallery"),[ms(),ds(),fs(),As()]);console.log("\u2728shiny\u2728");
749
+ /*! Bundled license information:
750
+
751
+ prismjs/prism.js:
752
+ (**
753
+ * Prism: Lightweight, robust, elegant syntax highlighting
754
+ *
755
+ * @license MIT <https://opensource.org/licenses/MIT>
756
+ * @author Lea Verou <https://lea.verou.me>
757
+ * @namespace
758
+ * @public
759
+ *)
760
+
761
+ @lit/reactive-element/css-tag.js:
762
+ (**
763
+ * @license
764
+ * Copyright 2019 Google LLC
765
+ * SPDX-License-Identifier: BSD-3-Clause
766
+ *)
767
+
768
+ @lit/reactive-element/reactive-element.js:
769
+ lit-html/lit-html.js:
770
+ lit-element/lit-element.js:
771
+ lit-html/directive.js:
772
+ lit-html/async-directive.js:
773
+ lit-html/directives/unsafe-html.js:
774
+ (**
775
+ * @license
776
+ * Copyright 2017 Google LLC
777
+ * SPDX-License-Identifier: BSD-3-Clause
778
+ *)
779
+
780
+ lit-html/is-server.js:
781
+ (**
782
+ * @license
783
+ * Copyright 2022 Google LLC
784
+ * SPDX-License-Identifier: BSD-3-Clause
785
+ *)
786
+
787
+ lit-html/directive-helpers.js:
788
+ (**
789
+ * @license
790
+ * Copyright 2020 Google LLC
791
+ * SPDX-License-Identifier: BSD-3-Clause
792
+ *)
793
+ */
794
+ //# sourceMappingURL=main.bundle.min.js.map