solid-ui 3.1.0 → 3.1.1

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 (242) hide show
  1. package/README.md +22 -4
  2. package/dist/components/button/index.d.ts +1 -0
  3. package/dist/components/button/index.esm.js +546 -0
  4. package/dist/components/button/index.esm.js.map +1 -0
  5. package/dist/components/button/index.esm.min.js +268 -0
  6. package/dist/components/button/index.esm.min.js.map +1 -0
  7. package/dist/components/button/index.js +428 -0
  8. package/dist/components/button/index.js.map +1 -0
  9. package/dist/components/button/index.min.js +257 -0
  10. package/dist/components/button/index.min.js.map +1 -0
  11. package/dist/components/combobox/index.d.ts +1 -0
  12. package/dist/components/combobox/index.esm.js +953 -0
  13. package/dist/components/combobox/index.esm.js.map +1 -0
  14. package/dist/components/combobox/index.esm.min.js +339 -0
  15. package/dist/components/combobox/index.esm.min.js.map +1 -0
  16. package/dist/components/combobox/index.js +782 -0
  17. package/dist/components/combobox/index.js.map +1 -0
  18. package/dist/components/combobox/index.min.js +328 -0
  19. package/dist/components/combobox/index.min.js.map +1 -0
  20. package/dist/components/footer/index.d.ts +1 -1
  21. package/dist/components/footer/index.esm.js +105 -63
  22. package/dist/components/footer/index.esm.js.map +1 -1
  23. package/dist/components/footer/index.esm.min.js +4 -4
  24. package/dist/components/footer/index.esm.min.js.map +1 -1
  25. package/dist/components/footer/index.js +103 -52
  26. package/dist/components/footer/index.js.map +1 -1
  27. package/dist/components/footer/index.min.js +8 -8
  28. package/dist/components/footer/index.min.js.map +1 -1
  29. package/dist/components/header/index.d.ts +1 -1
  30. package/dist/components/header/index.esm.js +1405 -1363
  31. package/dist/components/header/index.esm.js.map +1 -1
  32. package/dist/components/header/index.esm.min.js +857 -815
  33. package/dist/components/header/index.esm.min.js.map +1 -1
  34. package/dist/components/header/index.js +61 -19
  35. package/dist/components/header/index.js.map +1 -1
  36. package/dist/components/header/index.min.js +53 -11
  37. package/dist/components/header/index.min.js.map +1 -1
  38. package/dist/components/loginButton/index.d.ts +1 -1
  39. package/dist/components/loginButton/index.esm.js +50 -8
  40. package/dist/components/loginButton/index.esm.js.map +1 -1
  41. package/dist/components/loginButton/index.esm.min.js +60 -18
  42. package/dist/components/loginButton/index.esm.min.js.map +1 -1
  43. package/dist/components/loginButton/index.js +49 -7
  44. package/dist/components/loginButton/index.js.map +1 -1
  45. package/dist/components/loginButton/index.min.js +58 -16
  46. package/dist/components/loginButton/index.min.js.map +1 -1
  47. package/dist/components/photoCapture/index.d.ts +1 -0
  48. package/dist/components/photoCapture/index.esm.js +966 -0
  49. package/dist/components/photoCapture/index.esm.js.map +1 -0
  50. package/dist/components/photoCapture/index.esm.min.js +304 -0
  51. package/dist/components/photoCapture/index.esm.min.js.map +1 -0
  52. package/dist/components/photoCapture/index.js +848 -0
  53. package/dist/components/photoCapture/index.js.map +1 -0
  54. package/dist/components/photoCapture/index.min.js +293 -0
  55. package/dist/components/photoCapture/index.min.js.map +1 -0
  56. package/dist/components/select/index.d.ts +1 -0
  57. package/dist/components/select/index.esm.js +939 -0
  58. package/dist/components/select/index.esm.js.map +1 -0
  59. package/dist/components/select/index.esm.min.js +370 -0
  60. package/dist/components/select/index.esm.min.js.map +1 -0
  61. package/dist/components/select/index.js +771 -0
  62. package/dist/components/select/index.js.map +1 -0
  63. package/dist/components/select/index.min.js +359 -0
  64. package/dist/components/select/index.min.js.map +1 -0
  65. package/dist/components/signupButton/index.d.ts +1 -1
  66. package/dist/components/signupButton/index.esm.js +2 -2
  67. package/dist/components/signupButton/index.esm.js.map +1 -1
  68. package/dist/components/signupButton/index.esm.min.js +2 -2
  69. package/dist/components/signupButton/index.esm.min.js.map +1 -1
  70. package/dist/components/signupButton/index.js +2 -2
  71. package/dist/components/signupButton/index.js.map +1 -1
  72. package/dist/components/signupButton/index.min.js.map +1 -1
  73. package/dist/login/login.d.ts.map +1 -1
  74. package/dist/login/login.js +12 -2
  75. package/dist/login/login.js.map +1 -1
  76. package/dist/matrix/matrix.js.map +1 -1
  77. package/dist/solid-ui.esm.js +103 -61
  78. package/dist/solid-ui.esm.js.map +1 -1
  79. package/dist/solid-ui.esm.min.js +6 -6
  80. package/dist/solid-ui.esm.min.js.map +1 -1
  81. package/dist/solid-ui.js +102 -51
  82. package/dist/solid-ui.js.map +1 -1
  83. package/dist/solid-ui.min.js +9 -9
  84. package/dist/solid-ui.min.js.map +1 -1
  85. package/dist/tabs.js +2 -2
  86. package/dist/tabs.js.map +1 -1
  87. package/dist/v2/components/actions/button/Button.d.ts +97 -0
  88. package/dist/v2/components/actions/button/Button.d.ts.map +1 -0
  89. package/dist/v2/components/actions/button/Button.js +325 -0
  90. package/dist/v2/components/actions/button/Button.js.map +1 -0
  91. package/dist/v2/components/actions/button/Button.test.d.ts +2 -0
  92. package/dist/v2/components/actions/button/Button.test.d.ts.map +1 -0
  93. package/dist/v2/components/actions/button/Button.test.js +117 -0
  94. package/dist/v2/components/actions/button/Button.test.js.map +1 -0
  95. package/dist/v2/components/actions/button/index.d.ts +8 -0
  96. package/dist/v2/components/actions/button/index.d.ts.map +1 -0
  97. package/dist/v2/components/actions/button/index.js +7 -0
  98. package/dist/v2/components/actions/button/index.js.map +1 -0
  99. package/dist/v2/components/auth/loginButton/LoginButton.d.ts.map +1 -0
  100. package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.js +46 -4
  101. package/dist/v2/components/auth/loginButton/LoginButton.js.map +1 -0
  102. package/dist/v2/components/auth/loginButton/LoginButton.test.d.ts.map +1 -0
  103. package/dist/v2/components/auth/loginButton/LoginButton.test.js.map +1 -0
  104. package/dist/v2/components/auth/loginButton/downArrow.d.ts.map +1 -0
  105. package/dist/v2/components/auth/loginButton/downArrow.js.map +1 -0
  106. package/dist/v2/components/auth/loginButton/index.d.ts.map +1 -0
  107. package/dist/v2/components/auth/loginButton/index.js.map +1 -0
  108. package/dist/v2/components/auth/signupButton/SignupButton.d.ts.map +1 -0
  109. package/dist/v2/components/auth/signupButton/SignupButton.js.map +1 -0
  110. package/dist/v2/components/auth/signupButton/SignupButton.test.d.ts.map +1 -0
  111. package/dist/v2/components/auth/signupButton/SignupButton.test.js.map +1 -0
  112. package/dist/v2/components/auth/signupButton/index.d.ts.map +1 -0
  113. package/dist/v2/components/auth/signupButton/index.js.map +1 -0
  114. package/dist/v2/components/forms/combobox/Combobox.d.ts +82 -0
  115. package/dist/v2/components/forms/combobox/Combobox.d.ts.map +1 -0
  116. package/dist/v2/components/forms/combobox/Combobox.js +506 -0
  117. package/dist/v2/components/forms/combobox/Combobox.js.map +1 -0
  118. package/dist/v2/components/forms/combobox/Combobox.test.d.ts +2 -0
  119. package/dist/v2/components/forms/combobox/Combobox.test.d.ts.map +1 -0
  120. package/dist/v2/components/forms/combobox/Combobox.test.js +201 -0
  121. package/dist/v2/components/forms/combobox/Combobox.test.js.map +1 -0
  122. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts +6 -0
  123. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts.map +1 -0
  124. package/dist/v2/components/forms/combobox/comboboxTypes.js +2 -0
  125. package/dist/v2/components/forms/combobox/comboboxTypes.js.map +1 -0
  126. package/dist/v2/components/forms/combobox/index.d.ts +3 -0
  127. package/dist/v2/components/forms/combobox/index.d.ts.map +1 -0
  128. package/dist/v2/components/forms/combobox/index.js +7 -0
  129. package/dist/v2/components/forms/combobox/index.js.map +1 -0
  130. package/dist/v2/components/forms/select/Select.d.ts +68 -0
  131. package/dist/v2/components/forms/select/Select.d.ts.map +1 -0
  132. package/dist/v2/components/forms/select/Select.js +499 -0
  133. package/dist/v2/components/forms/select/Select.js.map +1 -0
  134. package/dist/v2/components/forms/select/Select.test.d.ts +2 -0
  135. package/dist/v2/components/forms/select/Select.test.d.ts.map +1 -0
  136. package/dist/v2/components/forms/select/Select.test.js +168 -0
  137. package/dist/v2/components/forms/select/Select.test.js.map +1 -0
  138. package/dist/v2/components/forms/select/index.d.ts +3 -0
  139. package/dist/v2/components/forms/select/index.d.ts.map +1 -0
  140. package/dist/v2/components/forms/select/index.js +7 -0
  141. package/dist/v2/components/forms/select/index.js.map +1 -0
  142. package/dist/v2/components/forms/shared/downArrow.d.ts +2 -0
  143. package/dist/v2/components/forms/shared/downArrow.d.ts.map +1 -0
  144. package/dist/v2/components/forms/shared/downArrow.js +10 -0
  145. package/dist/v2/components/forms/shared/downArrow.js.map +1 -0
  146. package/dist/v2/components/forms/shared/keyboard.d.ts +7 -0
  147. package/dist/v2/components/forms/shared/keyboard.d.ts.map +1 -0
  148. package/dist/v2/components/forms/shared/keyboard.js +56 -0
  149. package/dist/v2/components/forms/shared/keyboard.js.map +1 -0
  150. package/dist/v2/components/forms/shared/listboxStyles.d.ts +2 -0
  151. package/dist/v2/components/forms/shared/listboxStyles.d.ts.map +1 -0
  152. package/dist/v2/components/forms/shared/listboxStyles.js +96 -0
  153. package/dist/v2/components/forms/shared/listboxStyles.js.map +1 -0
  154. package/dist/v2/components/forms/shared/listboxTemplate.d.ts +11 -0
  155. package/dist/v2/components/forms/shared/listboxTemplate.d.ts.map +1 -0
  156. package/dist/v2/components/forms/shared/listboxTemplate.js +37 -0
  157. package/dist/v2/components/forms/shared/listboxTemplate.js.map +1 -0
  158. package/dist/v2/components/forms/shared/optionTypes.d.ts +6 -0
  159. package/dist/v2/components/forms/shared/optionTypes.d.ts.map +1 -0
  160. package/dist/v2/components/forms/shared/optionTypes.js +2 -0
  161. package/dist/v2/components/forms/shared/optionTypes.js.map +1 -0
  162. package/dist/v2/components/layout/footer/Footer.d.ts.map +1 -0
  163. package/dist/v2/components/{footer → layout/footer}/Footer.js +1 -1
  164. package/dist/v2/components/layout/footer/Footer.js.map +1 -0
  165. package/dist/v2/components/layout/footer/Footer.test.d.ts.map +1 -0
  166. package/dist/v2/components/layout/footer/Footer.test.js.map +1 -0
  167. package/dist/v2/components/layout/footer/index.d.ts.map +1 -0
  168. package/dist/v2/components/layout/footer/index.js.map +1 -0
  169. package/dist/v2/components/{header → layout/header}/Header.d.ts +2 -2
  170. package/dist/v2/components/layout/header/Header.d.ts.map +1 -0
  171. package/dist/v2/components/{header → layout/header}/Header.js +5 -5
  172. package/dist/v2/components/layout/header/Header.js.map +1 -0
  173. package/dist/v2/components/layout/header/header.test.d.ts.map +1 -0
  174. package/dist/v2/components/layout/header/header.test.js.map +1 -0
  175. package/dist/v2/components/layout/header/index.d.ts.map +1 -0
  176. package/dist/v2/components/layout/header/index.js.map +1 -0
  177. package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts +200 -0
  178. package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts.map +1 -0
  179. package/dist/v2/components/media/photoCapture/PhotoCapture.js +723 -0
  180. package/dist/v2/components/media/photoCapture/PhotoCapture.js.map +1 -0
  181. package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts +2 -0
  182. package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts.map +1 -0
  183. package/dist/v2/components/media/photoCapture/PhotoCapture.test.js +157 -0
  184. package/dist/v2/components/media/photoCapture/PhotoCapture.test.js.map +1 -0
  185. package/dist/v2/components/media/photoCapture/index.d.ts +3 -0
  186. package/dist/v2/components/media/photoCapture/index.d.ts.map +1 -0
  187. package/dist/v2/components/media/photoCapture/index.js +7 -0
  188. package/dist/v2/components/media/photoCapture/index.js.map +1 -0
  189. package/dist/versionInfo.js +14 -14
  190. package/dist/widgets/buttons.d.ts +1 -0
  191. package/dist/widgets/buttons.d.ts.map +1 -1
  192. package/dist/widgets/buttons.js +15 -2
  193. package/dist/widgets/buttons.js.map +1 -1
  194. package/package.json +223 -157
  195. package/dist/v2/components/footer/Footer.d.ts.map +0 -1
  196. package/dist/v2/components/footer/Footer.js.map +0 -1
  197. package/dist/v2/components/footer/Footer.test.d.ts.map +0 -1
  198. package/dist/v2/components/footer/Footer.test.js.map +0 -1
  199. package/dist/v2/components/footer/index.d.ts.map +0 -1
  200. package/dist/v2/components/footer/index.js.map +0 -1
  201. package/dist/v2/components/header/Header.d.ts.map +0 -1
  202. package/dist/v2/components/header/Header.js.map +0 -1
  203. package/dist/v2/components/header/header.test.d.ts.map +0 -1
  204. package/dist/v2/components/header/header.test.js.map +0 -1
  205. package/dist/v2/components/header/index.d.ts.map +0 -1
  206. package/dist/v2/components/header/index.js.map +0 -1
  207. package/dist/v2/components/loginButton/LoginButton.d.ts.map +0 -1
  208. package/dist/v2/components/loginButton/LoginButton.js.map +0 -1
  209. package/dist/v2/components/loginButton/LoginButton.test.d.ts.map +0 -1
  210. package/dist/v2/components/loginButton/LoginButton.test.js.map +0 -1
  211. package/dist/v2/components/loginButton/downArrow.d.ts.map +0 -1
  212. package/dist/v2/components/loginButton/downArrow.js.map +0 -1
  213. package/dist/v2/components/loginButton/index.d.ts.map +0 -1
  214. package/dist/v2/components/loginButton/index.js.map +0 -1
  215. package/dist/v2/components/signupButton/SignupButton.d.ts.map +0 -1
  216. package/dist/v2/components/signupButton/SignupButton.js.map +0 -1
  217. package/dist/v2/components/signupButton/SignupButton.test.d.ts.map +0 -1
  218. package/dist/v2/components/signupButton/SignupButton.test.js.map +0 -1
  219. package/dist/v2/components/signupButton/index.d.ts.map +0 -1
  220. package/dist/v2/components/signupButton/index.js.map +0 -1
  221. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.d.ts +0 -0
  222. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.test.d.ts +0 -0
  223. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.test.js +0 -0
  224. /package/dist/v2/components/{loginButton → auth/loginButton}/downArrow.d.ts +0 -0
  225. /package/dist/v2/components/{loginButton → auth/loginButton}/downArrow.js +0 -0
  226. /package/dist/v2/components/{loginButton → auth/loginButton}/index.d.ts +0 -0
  227. /package/dist/v2/components/{loginButton → auth/loginButton}/index.js +0 -0
  228. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.d.ts +0 -0
  229. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.js +0 -0
  230. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.test.d.ts +0 -0
  231. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.test.js +0 -0
  232. /package/dist/v2/components/{signupButton → auth/signupButton}/index.d.ts +0 -0
  233. /package/dist/v2/components/{signupButton → auth/signupButton}/index.js +0 -0
  234. /package/dist/v2/components/{footer → layout/footer}/Footer.d.ts +0 -0
  235. /package/dist/v2/components/{footer → layout/footer}/Footer.test.d.ts +0 -0
  236. /package/dist/v2/components/{footer → layout/footer}/Footer.test.js +0 -0
  237. /package/dist/v2/components/{footer → layout/footer}/index.d.ts +0 -0
  238. /package/dist/v2/components/{footer → layout/footer}/index.js +0 -0
  239. /package/dist/v2/components/{header → layout/header}/header.test.d.ts +0 -0
  240. /package/dist/v2/components/{header → layout/header}/header.test.js +0 -0
  241. /package/dist/v2/components/{header → layout/header}/index.d.ts +0 -0
  242. /package/dist/v2/components/{header → layout/header}/index.js +0 -0
@@ -1,474 +1,950 @@
1
- import*as e from"solid-logic";var t={7423(e,t,o){function r(...e){console.log(...e)}o.d(t,{Rm:()=>r})},3378(e,t,o){o.d(t,{Pt:()=>i});var r=o(7423);const n="https://solidos.github.io/solid-ui/src",i=(e=o.hmd(e)).scriptURI?{iconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/icons/",originalIconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/originalIcons/"}:"undefined"!=typeof $SolidTestEnvironment&&$SolidTestEnvironment.iconBase?{iconBase:$SolidTestEnvironment.iconBase,originalIconBase:$SolidTestEnvironment.originalIconBase}:{iconBase:n+"/icons/",originalIconBase:n+"/originalIcons/"};(0,r.Rm)(" icons.iconBase is set to : "+i.iconBase);i.iconBase,i.originalIconBase},225(e,t,o){o.d(t,{Y:()=>l});var r=o(6161),n=o(3378),i=o(3138),s=(o(9140),o(1291),o(1413));const a=n.Pt.iconBase+"emptyProfileAvatar.png";class l extends r.WF{static properties={logo:{type:String,reflect:!0},helpIcon:{type:String,attribute:"help-icon",reflect:!0},layout:{type:String,reflect:!0},theme:{type:String,reflect:!0},brandLink:{type:String,attribute:"brand-link",reflect:!0},authState:{type:String,attribute:"auth-state",reflect:!0},loginAction:{type:Object,attribute:!1},signUpAction:{type:Object,attribute:!1},accountMenu:{type:Array,attribute:!1},logoutLabel:{type:String,attribute:"logout-label",reflect:!0},logoutIcon:{type:String,attribute:"logout-icon",reflect:!0},accountIcon:{type:String,attribute:"account-icon",reflect:!0},accountAvatar:{type:String,attribute:"account-avatar",reflect:!0},accountAvatarFallback:{type:String,attribute:"account-avatar-fallback",reflect:!0},loginIcon:{type:String,attribute:"login-icon",reflect:!0},signUpIcon:{type:String,attribute:"sign-up-icon",reflect:!0},helpMenuList:{type:Array},accountMenuOpen:{state:!0},helpMenuOpen:{state:!0},hasSlottedAccountMenu:{state:!0},hasSlottedHelpMenu:{state:!0}};static styles=r.AH`
2
- :host { // default theme
3
- display: block;
4
- --header-bg: var(--color-header-row-bg, #332746);
5
- --header-text: var(--color-header-text, #ffffff);
6
- --header-border: var(--color-border, #efecf3);
7
- --header-line: var(--color-header-menu-separator-line, #5e546d);
8
- --header-link: var(--color-text-heading, #000000);
9
- --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);
10
- --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);
11
- --header-menu-bg: var(--color-menu-bg, #f6f5f9);
12
- --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);
13
- --header-menu-text: var(--color-menu-item-text, #654d6c);
14
- --header-border-radius: var(--border-radius-sm, 0.2rem);
15
- --header-button-bg: var(--color-menu-bg, #ffffff);
16
- --header-button-text: var(--color-header-button-text, #0F172B);
17
- --header-button-detail-text: var(--color-header-button-detail-text, #99A1AF);
18
- --header-shadow: var(--color-header-shadow, 2px 6px 10px 0 rgba(0, 0, 0, 0.4), 2px 8px 24px 0 rgba(0, 0, 0, 0.19));
19
- font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);
20
- }
21
-
22
- // for now light and dark are the same
23
- :host([theme='dark']) {
24
- display: block;
25
- --header-bg: var(--color-header-row-bg, #332746);
26
- --header-text: var(--color-header-text, #ffffff);
27
- --header-border: var(--color-border, #efecf3);
28
- --header-line: var(--color-header-menu-separator-line, #5e546d);
29
- --header-link: var(--color-text-heading, #000000);
30
- --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);
31
- --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);
32
- --header-menu-bg: var(--color-menu-bg, #f6f5f9);
33
- --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);
34
- --header-menu-text: var(--color-menu-item-text, #654d6c);
35
- --header-border-radius: var(--border-radius-sm, 0.2rem);
36
- --header-button-bg: var(--color-menu-bg, #ffffff);
37
- --header-button-text: var(--color-header-button-text, #0f172a);
38
- --header-button-detail-text: var(--color-header-button-detail-text, #878192);
39
- --header-icon-filter: invert(1) brightness(1.3); /* special way to invert SVG color of icons, from white to black */
40
- --header-shadow: var(--color-header-shadow, 2px 6px 10px 0 rgba(0, 0, 0, 0.4), 2px 8px 24px 0 rgba(0, 0, 0, 0.19));
41
- font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);
42
- }
1
+ import*as e from"solid-logic";var t={7423(e,t,o){function r(...e){console.log(...e)}o.d(t,{Rm:()=>r})},3378(e,t,o){o.d(t,{Pt:()=>i});var r=o(7423);const n="https://solidos.github.io/solid-ui/src",i=(e=o.hmd(e)).scriptURI?{iconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/icons/",originalIconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/originalIcons/"}:"undefined"!=typeof $SolidTestEnvironment&&$SolidTestEnvironment.iconBase?{iconBase:$SolidTestEnvironment.iconBase,originalIconBase:$SolidTestEnvironment.originalIconBase}:{iconBase:n+"/icons/",originalIconBase:n+"/originalIcons/"};(0,r.Rm)(" icons.iconBase is set to : "+i.iconBase);i.iconBase,i.originalIconBase},4614(e,t,o){o.d(t,{M:()=>s});var r=o(6161),n=o(3138),i=o(6454);class s extends r.WF{static properties={label:{type:String,reflect:!0},theme:{type:String,reflect:!0},issuerUrl:{type:String,attribute:"issuer-url",reflect:!0},icon:{type:String,reflect:!0},layout:{type:String,reflect:!0},_popupOpen:{state:!0},_issuerInputValue:{state:!0},_dropdownOpen:{state:!0}};static styles=r.AH`
2
+ :host { /* default theme */
3
+ display: inline-block;
4
+ position: relative;
5
+ z-index: 400;
6
+ --login-button-background: var(--lavender-900, #7c4cff);
7
+ --login-button-text: var(--color-header-text, #ffffff);
8
+ --popup-background: var(--color-background, #F8F9FB);
9
+ --popup-text: var(--color-text, #1A1A1A);
10
+ --popup-border: var(--color-border, #E5E7EB);
11
+ --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
12
+ --popup-overlay-background: rgba(0, 0, 0, 0.6);
13
+ --issuer-input-background: var(--color-background, #F8F9FB);
14
+ --issuer-input-text: var(--color-text, #1A1A1A);
15
+ --issuer-input-border: var(--color-text, #1A1A1A);
16
+ --issuer-button-background: var(--color-background, #F8F9FB);
17
+ --issuer-button-text: var(--color-text, #1A1A1A);
18
+ --issuer-button-border: var(--color-border, #E5E7EB);
19
+ --issuer-button-hover-background: var(--lavender-900, #7c4cff);
20
+ --issuer-label-color: var(--grey-purple-700, #1A1A1A);
21
+ --issuer-placeholder-color: var(--grey-purple-700, #5e546d);;
22
+ --error-text-color: var(--color-error, #B00020);
23
+ }
43
24
 
44
- :host([layout='mobile']) .headerInner {
45
- flex-wrap: wrap;
46
- text-align: center;
47
- gap: 0.5rem;
48
- }
25
+ :host([theme='dark']) {
26
+ display: inline-block;
27
+ position: relative;
28
+ z-index: 900;
29
+ --login-button-background: var(--lavender-900, #7c4cff);
30
+ --login-button-text: var(--color-header-text, #ffffff);
31
+ --popup-background: var(--color-background, #F8F9FB);
32
+ --popup-text: var(--color-text, #1A1A1A);
33
+ --popup-border: var(--color-border, #E5E7EB);
34
+ --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
35
+ --popup-overlay-background: rgba(0, 0, 0, 0.6);
36
+ --issuer-input-background: var(--color-background, #F8F9FB);
37
+ --issuer-input-text: var(--color-text, #1A1A1A);
38
+ --issuer-input-border: var(--color-text, #1A1A1A);
39
+ --issuer-button-background: var(--color-background, #F8F9FB);
40
+ --issuer-button-text: var(--color-text, #1A1A1A);
41
+ --issuer-button-border: var(--color-text, #1A1A1A);
42
+ --issuer-button-hover-background: var(--lavender-900, #7c4cff);
43
+ --issuer-label-color: var(--grey-purple-700, #1A1A1A);
44
+ --issuer-placeholder-color: var(--grey-purple-700, #5e546d);;
45
+ --error-text-color: var(--color-error, #B00020);
46
+ }
49
47
 
50
- .headerInner {
51
- display: flex;
52
- align-items: center;
53
- justify-content: space-between;
54
- background: var(--header-bg);
55
- color: var(--header-text);
56
- padding: 0 1.5rem;
57
- height: 3.75rem;
58
- }
48
+ .login-button {
49
+ display: flex;
50
+ height: 35px;
51
+ padding: var(--spacing-xxs, 0.3125rem) var(--spacing-xs, 0.75rem);
52
+ align-items: center;
53
+ gap: var(--spacing-xxs, 0.3125rem);
54
+ border-radius: var(--border-radius-base, 0.3125rem);
55
+ background: var(--login-button-background);
56
+ border: none;
57
+ color: var(--login-button-text);
58
+ cursor: pointer;
59
+ font: inherit;
60
+ line-height: 1;
61
+ white-space: nowrap;
62
+ text-decoration: none;
63
+ box-sizing: border-box;
64
+ transition: transform 0.2s ease;
65
+ }
59
66
 
60
- ::slotted([slot='navigation-toggle']) {
61
- display: inline-flex;
62
- align-items: center;
63
- justify-content: center;
64
- flex-shrink: 0;
65
- margin-right: 0.75rem;
66
- }
67
+ .login-button-icon {
68
+ width: 16px;
69
+ height: 16px;
70
+ display: inline-block;
71
+ object-fit: contain;
72
+ }
67
73
 
68
- :host([layout='desktop']) ::slotted([slot='navigation-toggle']) {
69
- display: none !important;
70
- }
74
+ .login-button:active {
75
+ transform: translateY(1px);
76
+ }
71
77
 
72
- .brand {
73
- display: flex;
74
- align-items: center;
75
- gap: 0.5rem;
76
- text-decoration: none;
77
- color: inherit;
78
- }
78
+ .popup-dialog {
79
+ border: none;
80
+ padding: 0;
81
+ background: transparent;
82
+ outline: none;
83
+ overflow: visible;
84
+ width: min(30rem, calc(100vw - 2rem));
85
+ max-width: calc(100vw - 2rem);
86
+ max-height: calc(100dvh - 2rem);
87
+ }
79
88
 
80
- .brand-not-displayed {
81
- display: none;
82
- }
89
+ .popup-dialog::backdrop {
90
+ background: var(--popup-overlay-background, rgba(0, 0, 0, 0.6));
91
+ }
83
92
 
84
- .brand img {
85
- height: 50px;
86
- width: 55px;
87
- object-fit: contain;
88
- }
93
+ .popup-box {
94
+ background: var(--popup-background);
95
+ color: var(--popup-text);
96
+ box-shadow: var(--popup-shadow);
97
+ border: 1px solid var(--popup-border);
98
+ border-radius: var(--border-radius-md, 0.5rem);
99
+ width: min(30rem, calc(100vw - 2rem));
100
+ min-width: min(30rem, calc(100vw - 2rem));
101
+ max-width: calc(100vw - 2rem);
102
+ max-height: calc(100dvh - 2rem);
103
+ overflow: auto;
104
+ z-index: 1001;
105
+ }
89
106
 
90
- .menu {
91
- display: flex;
92
- align-items: center;
93
- gap: 0.625rem;
94
- margin-left: auto;
95
- }
107
+ .popup-top-menu {
108
+ border-bottom: 1px solid #DDD;
109
+ display: flex;
110
+ flex-direction: row;
111
+ align-items: center;
112
+ justify-content: space-between;
113
+ padding-bottom: 8px;
114
+ margin-bottom: 8px;
115
+ padding: 1rem;
116
+ background: var(--gray-200, #E5E7EB);
117
+ }
96
118
 
97
- .auth-actions {
98
- display: flex;
99
- align-items: center;
100
- gap: 0.625rem;
101
- }
119
+ .popup-title {
120
+ font-weight: 800;
121
+ }
102
122
 
103
- .auth-button {
104
- display: inline-flex;
105
- align-items: center;
106
- justify-content: center;
107
- gap: 0.5rem;
108
- min-height: 2.25rem;
109
- padding: 0.5rem 0.875rem;
110
- border: 1px solid var(--header-border);
111
- border-radius: 999px;
112
- background: var(--header-menu-bg);
113
- color: var(--header-button-text);
114
- cursor: pointer;
115
- font: inherit;
116
- line-height: 1;
117
- text-decoration: none;
118
- box-sizing: border-box;
119
- transition: border-color 0.2s ease, transform 0.2s ease;
120
- }
123
+ .popup-close {
124
+ background: transparent;
125
+ border: none;
126
+ cursor: pointer;
127
+ font-size: 1.25rem;
128
+ line-height: 1;
129
+ padding: 0 0.25rem;
130
+ }
121
131
 
122
- .auth-button:hover {
123
- border-color: var(--header-menu-item-hover);
124
- }
132
+ .issuer-text-section {
133
+ display: flex;
134
+ flex-direction: column;
135
+ padding: 1rem 1rem 1.75rem;
136
+ }
125
137
 
126
- .auth-button:active {
127
- transform: translateY(1px);
128
- }
138
+ .issuer-text-label {
139
+ color: var(--issuer-label-color);
140
+ margin-bottom: 6px;
141
+ }
129
142
 
130
- .auth-button-sign-up {
131
- background: color-mix(in srgb, var(--header-menu-bg) 78%, var(--header-menu-item-selected) 22%);
132
- }
143
+ .issuer-text-row {
144
+ display: flex;
145
+ flex-direction: row;
146
+ gap: 6px;
147
+ align-items: flex-start;
148
+ }
133
149
 
134
- .header-menu-separator {
135
- background: var(--header-line);
136
- width: 1px;
137
- height: 2.3rem;
138
- }
150
+ .issuer-input-wrapper {
151
+ flex: 1;
152
+ display: flex;
153
+ flex-direction: column;
154
+ min-width: 0;
155
+ position: relative;
156
+ }
139
157
 
140
- .account-menu-container {
141
- position: relative;
142
- display: flex;
143
- align-items: center;
144
- }
158
+ .issuer-input-field-row {
159
+ display: flex;
160
+ flex-direction: row;
161
+ position: relative;
162
+ }
145
163
 
146
- .account-menu-trigger {
147
- display: inline-flex;
148
- align-items: center;
149
- gap: 0.625rem;
150
- min-height: 2.5rem;
151
- border: 1px solid var(--header-menu-loggedin-bg);
152
- border-radius: 999px;
153
- background: var(--header-menu-loggedin-bg);
154
- color: var(--header-button-text);
155
- cursor: pointer;
156
- font: inherit;
157
- line-height: 1;
158
- }
164
+ .issuer-text-input {
165
+ flex: 1;
166
+ padding: 0.375rem 2.75rem 0.375rem 0.5rem;
167
+ border: 1px solid var(--issuer-input-border);
168
+ border-radius: var(--border-radius-base, 0.3125rem);
169
+ background: var(--issuer-input-background);
170
+ color: var(--issuer-input-text);
171
+ font: inherit;
172
+ min-width: 0;
173
+ }
159
174
 
160
- :host([layout='mobile']) .account-menu-trigger {
161
- gap: 0;
162
- min-height: auto;
163
- padding: 0;
164
- border: 1.5px solid var(--header-border);
165
- background: var(--header-menu-loggedin-bg);
166
- }
175
+ .issuer-text-input::placeholder {
176
+ color: var(--issuer-placeholder-color);
177
+ }
167
178
 
168
- :host([layout='mobile']) .account-menu-trigger-label {
169
- display: none;
170
- }
179
+ .issuer-dropdown-toggle {
180
+ position: absolute;
181
+ right: 6px;
182
+ top: 50%;
183
+ transform: translateY(-50%);
184
+ width: 26px;
185
+ height: 26px;
186
+ padding: 0;
187
+ border: none;
188
+ background: transparent;
189
+ cursor: pointer;
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: center;
193
+ flex-shrink: 0;
194
+ border-radius: var(--border-radius-base, 0.3125rem);
195
+ }
171
196
 
172
- .account-menu-trigger:disabled {
173
- cursor: default;
174
- opacity: 0.7;
175
- }
197
+ .issuer-dropdown-toggle:hover {
198
+ background: var(--color-header-menu-item-hover, #e6dcff);
199
+ }
176
200
 
177
- .account-menu-trigger-icon {
178
- width: 1rem;
179
- height: 1rem;
180
- object-fit: contain;
181
- flex-shrink: 0;
182
- }
201
+ .issuer-dropdown-toggle svg {
202
+ width: 14px;
203
+ height: 14px;
204
+ display: block;
205
+ }
183
206
 
184
- .account-avatar,
185
- .account-menu-avatar {
186
- display: inline-flex;
187
- align-items: center;
188
- justify-content: center;
189
- flex-shrink: 0;
190
- overflow: hidden;
191
- background: color-mix(in srgb, var(--header-bg) 18%, #ded8e7 82%);
192
- color: var(--header-button-text);
193
- font-size: 0.75rem;
194
- font-weight: 600;
195
- text-transform: uppercase;
196
- }
207
+ .issuer-dropdown-list {
208
+ position: absolute;
209
+ top: calc(100% + 6px);
210
+ left: 0;
211
+ right: 0;
212
+ border: 1px solid var(--color-border, #E5E7EB);
213
+ border-top: none;
214
+ border-radius: 0 0 var(--border-radius-base, 0.3125rem) var(--border-radius-base, 0.3125rem);
215
+ background: var(--issuer-input-background);
216
+ overflow: visible;
217
+ z-index: 10;
218
+ box-shadow: 0 4px 12px rgba(124, 77, 255, 0.12);
219
+ }
197
220
 
198
- .account-avatar {
199
- width: 1.75rem;
200
- height: 1.75rem;
201
- border-radius: 999px;
202
- border: 1.5px solid var(--header-border);
203
- }
221
+ .issuer-dropdown-item {
222
+ display: block;
223
+ width: 100%;
224
+ padding: 0.625rem 0.75rem;
225
+ border: none;
226
+ border-bottom: 1px solid var(--color-border, #E5E7EB);
227
+ background: transparent;
228
+ color: var(--issuer-button-text);
229
+ cursor: pointer;
230
+ font: inherit;
231
+ text-align: left;
232
+ box-sizing: border-box;
233
+ }
204
234
 
205
- .account-menu-avatar {
206
- width: 2rem;
207
- height: 2rem;
208
- border-radius: 0.5rem;
209
- }
235
+ .issuer-dropdown-item:last-child {
236
+ border-bottom: none;
237
+ }
210
238
 
211
- .account-avatar img,
212
- .account-menu-avatar img {
213
- width: 100%;
214
- height: 100%;
215
- object-fit: cover;
216
- }
239
+ .issuer-dropdown-item:hover {
240
+ background: var(--color-header-menu-item-hover, #e6dcff);
241
+ border-radius: var(--border-radius-base-md, 0.5rem);
242
+ }
217
243
 
218
- .account-avatar-img {
219
- width: 1.75rem;
220
- height: 1.75rem;
221
- border-radius: 999px;
222
- object-fit: cover;
223
- background-color: var(--header-border);
224
- }
244
+ .popup-footer {
245
+ display: flex;
246
+ flex-direction: row;
247
+ justify-content: center;
248
+ gap: 8px;
249
+ padding: 0.75rem 1rem 1rem;
250
+ }
225
251
 
226
- .account-dropdown {
227
- position: absolute;
228
- top: calc(100% + 0.9rem);
229
- right: 0;
230
- min-width: 15rem;
231
- padding: 0.5rem;
232
- background: var(--header-button-bg);
233
- border: 1px solid var(--header-border);
234
- border-radius: var(--header-border-radius);
235
- box-shadow: var(--header-shadow);
236
- z-index: 10;
237
- }
252
+ .popup-footer-hr {
253
+ margin: 0;
254
+ border: none;
255
+ border-top: 1px solid var(--popup-border, #E5E7EB);
256
+ }
238
257
 
239
- .account-dropdown[hidden] {
240
- display: none;
241
- }
258
+ .popup-cancel-button {
259
+ padding: 0.5rem 1.25rem;
260
+ border: 1px solid #C0BFC7;
261
+ border-radius: var(--border-radius-base, 0.3125rem);
262
+ background: var(--popup-background);
263
+ color: #314158;
264
+ cursor: pointer;
265
+ font: inherit;
266
+ }
242
267
 
243
- .account-menu-list {
244
- list-style: none;
245
- margin: 0;
246
- padding: 0;
247
- display: flex;
248
- flex-direction: column;
249
- gap: 0.25rem;
250
- }
268
+ .popup-cancel-button:hover {
269
+ background: #D1D5DB;
270
+ }
251
271
 
252
- .account-menu-item-link,
253
- .account-menu-item-button,
254
- ::slotted([slot='account-menu']) {
255
- display: flex;
256
- align-items: center;
257
- gap: 0.625rem;
258
- width: 100%;
259
- box-sizing: border-box;
260
- color: var(--header-link);
261
- text-decoration: none;
262
- background: transparent;
263
- border: 1px solid transparent;
264
- border-radius: 10px;
265
- padding: 0.5rem;
266
- cursor: pointer;
267
- font: inherit;
268
- text-align: left;
269
- }
272
+ .popup-login-button {
273
+ padding: 0.5rem 1.25rem;
274
+ border: none;
275
+ border-radius: var(--border-radius-base, 0.3125rem);
276
+ background: var(--lavender-900, #7c4cff);
277
+ color: #ffffff;
278
+ cursor: pointer;
279
+ font: inherit;
280
+ }
270
281
 
271
- .account-menu-item-link:hover,
272
- .account-menu-item-button:hover {
273
- color: var(--header-link);
274
- background: var(--header-menu-item-hover);
275
- border-color: var(--header-menu-item-hover);
276
- }
282
+ .popup-login-button:hover {
283
+ background: #6a3de8;
284
+ }
277
285
 
278
- .account-menu-item-link:active,
279
- .account-menu-item-button:active {
280
- color: var(--header-link);
281
- background: var(--header-menu-item-selected);
282
- border-color: var(--header-menu-item-selected);
283
- transform: translateY(1px);
284
- }
286
+ .popup-login-button:disabled {
287
+ opacity: 0.5;
288
+ cursor: not-allowed;
289
+ }
285
290
 
286
- .account-switch {
287
- display: block;
288
- width: 100%;
289
- color: var(--header-menu-text);
290
- text-align: left;
291
- text-transform: uppercase;
292
- font-size: 80%;
293
- }
291
+ .error-msg {
292
+ color: var(--error-text-color);
293
+ font-size: 0.875rem;
294
+ margin-top: 8px;
295
+ }
294
296
 
295
- .dropdown-menu-separator {
296
- display: block;
297
- width: calc(100% + 1rem);
298
- margin: 0.5rem -0.5rem;
299
- border: 0;
300
- border-top: 1px solid var(--header-border);
301
- }
297
+ @media (max-width: 40rem) {
298
+ .popup-dialog {
299
+ width: calc(100vw - 1rem);
300
+ max-width: calc(100vw - 1rem);
301
+ max-height: calc(100dvh - 1rem);
302
+ }
303
+
304
+ .popup-box {
305
+ width: calc(100vw - 1rem);
306
+ min-width: 0;
307
+ max-width: calc(100vw - 1rem);
308
+ max-height: calc(100dvh - 1rem);
309
+ border-radius: var(--border-radius-base, 0.3125rem);
310
+ }
311
+
312
+ .popup-top-menu,
313
+ .issuer-text-section,
314
+ .popup-footer {
315
+ padding-left: 0.75rem;
316
+ padding-right: 0.75rem;
317
+ }
318
+
319
+ .popup-footer {
320
+ flex-wrap: wrap;
321
+ gap: 0.625rem;
322
+ }
323
+
324
+ .popup-footer > button {
325
+ flex: 1 1 100%;
326
+ }
327
+
328
+ .issuer-text-row,
329
+ .issuer-input-field-row {
330
+ width: 100%;
331
+ }
332
+ }
333
+ `;_issuerInputId=`issuer-url-input-${Math.random().toString(36).slice(2,10)}`;_errorMsg="";constructor(){super(),this.label="Log In",this.theme="light",this.issuerUrl="",this.icon="",this.layout="desktop",this._popupOpen=!1,this._issuerInputValue="",this._dropdownOpen=!1}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}_openPopup(){const e=(0,n.offlineTestID)();e?this._loginComplete(e.uri):(this._issuerInputValue="undefined"!=typeof localStorage&&localStorage.getItem("loginIssuer")||this.issuerUrl||"",this._errorMsg="",this._popupOpen=!0)}_closePopup(){this._popupOpen=!1}updated(){const e=this.shadowRoot?.querySelector("dialog");e&&(this._popupOpen&&!e.open?e.showModal():!this._popupOpen&&e.open&&e.close())}async _loginToIssuer(e){if(e)try{n.solidLogicSingleton.store.updater.flagAuthorizationMetadata();const t=new URL(window.location.href).hash;t&&window.localStorage.setItem("preLoginRedirectHash",t),window.localStorage.setItem("loginIssuer",e);const o=new URL(window.location.href);o.hash="",await n.authSession.login({redirectUrl:o.href,oidcIssuer:e})}catch(e){this._errorMsg=e.message||String(e),this.requestUpdate()}}_loginComplete(e){n.authn.saveUser(e),this.dispatchEvent(new CustomEvent("login-success",{detail:{webId:e},bubbles:!0,composed:!0}))}_handleGoClick(){this._dropdownOpen=!1,this._loginToIssuer(this._issuerInputValue)}_toggleDropdown(){this._dropdownOpen=!this._dropdownOpen}_selectIssuerFromDropdown(e){this._issuerInputValue=e,this._dropdownOpen=!1}_handleInputChange(e){this._issuerInputValue=e.target.value}_handleInputKeydown(e){"Enter"===e.key&&this._loginToIssuer(this._issuerInputValue),"Escape"===e.key&&this._closePopup()}_renderPopup(){const e=(0,n.getSuggestedIssuers)();return r.qy`
334
+ <div class="popup-box">
335
+ <div class="popup-top-menu">
336
+ <span class="popup-title">Select an identity provider</span>
337
+ <button class="popup-close" type="button" aria-label="Close" @click="${()=>this._closePopup()}">&#x2715;</button>
338
+ </div>
302
339
 
303
- .account-menu-copy {
304
- display: flex;
305
- flex-direction: column;
306
- min-width: 0;
340
+ <div class="issuer-text-section">
341
+ <label class="issuer-text-label" for="${this._issuerInputId}">Solid Identity Provider</label>
342
+ <div class="issuer-text-row">
343
+ <div class="issuer-input-wrapper">
344
+ <div class="issuer-input-field-row">
345
+ <input
346
+ id="${this._issuerInputId}"
347
+ class="issuer-text-input"
348
+ type="text"
349
+ placeholder="https://example.com"
350
+ .value="${this._issuerInputValue}"
351
+ @input="${this._handleInputChange}"
352
+ @keydown="${this._handleInputKeydown}"
353
+ autocomplete="url"
354
+ />
355
+ ${e.length?r.qy`
356
+ <button
357
+ class="issuer-dropdown-toggle"
358
+ type="button"
359
+ aria-label="Show identity provider suggestions"
360
+ aria-expanded="${this._dropdownOpen}"
361
+ @click="${()=>this._toggleDropdown()}"
362
+ >${i.S}</button>
363
+ `:""}
364
+ </div>
365
+ ${this._dropdownOpen&&e.length?r.qy`
366
+ <div class="issuer-dropdown-list" role="listbox">
367
+ ${e.map(e=>r.qy`
368
+ <button
369
+ class="issuer-dropdown-item"
370
+ type="button"
371
+ role="option"
372
+ @click="${()=>this._selectIssuerFromDropdown(e.uri)}"
373
+ >${e.name}</button>
374
+ `)}
375
+ </div>
376
+ `:""}
377
+ </div>
378
+ </div>
379
+ ${this._errorMsg?r.qy`<div class="error-msg">${this._errorMsg}</div>`:""}
380
+ </div>
381
+ <hr class="popup-footer-hr" />
382
+ <div class="popup-footer">
383
+ <button class="popup-cancel-button" type="button" @click="${()=>this._closePopup()}">Cancel</button>
384
+ <button
385
+ class="popup-login-button"
386
+ type="button"
387
+ ?disabled="${!this._issuerInputValue}"
388
+ @click="${()=>this._handleGoClick()}"
389
+ >Log In</button>
390
+ </div>
391
+ </div>
392
+ `}render(){return r.qy`
393
+ <button
394
+ class="login-button"
395
+ type="button"
396
+ part="login-button"
397
+ @click="${()=>this._openPopup()}"
398
+ >
399
+ ${this.icon?r.qy`<img class="login-button-icon" src="${this.icon}" alt="" aria-hidden="true" part="login-button-icon" />`:""}
400
+ <slot>${this.label}</slot>
401
+ </button>
402
+
403
+ <dialog
404
+ class="popup-dialog"
405
+ role="dialog"
406
+ aria-modal="true"
407
+ aria-label="Select an identity provider"
408
+ @cancel="${e=>{e.preventDefault(),this._closePopup()}}"
409
+ @click="${e=>{e.target===e.currentTarget&&this._closePopup()}}"
410
+ >
411
+ ${this._popupOpen?this._renderPopup():""}
412
+ </dialog>
413
+ `}}},6454(e,t,o){o.d(t,{S:()=>r});const r=o(6752).qy`
414
+ <svg xmlns="http://www.w3.org/2000/svg"
415
+ viewBox="0 0 12 7"
416
+ fill="none"
417
+ >
418
+ <path d="M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955" stroke="#6A7282" stroke-width="1.35776" stroke-linecap="round" stroke-linejoin="round"/>
419
+ </svg>
420
+ `},2167(e,t,o){var r=o(4614);const n="solid-ui-login-button";customElements.get(n)||customElements.define(n,r.M)},8228(e,t,o){o.d(t,{X:()=>n});var r=o(6161);class n extends r.WF{static properties={label:{type:String,reflect:!0},theme:{type:String,reflect:!0},signupUrl:{type:String,attribute:"signup-url",reflect:!0},icon:{type:String,reflect:!0},layout:{type:String,reflect:!0}};static styles=r.AH`
421
+ :host {
422
+ display: inline-block;
423
+ --signup-button-background: transparent;
424
+ --signup-button-border: var(--color-border, #E5E7EB);
425
+ --signup-button-text: var(--color-header-text, #ffffff);
426
+ }
427
+
428
+ :host([theme='dark']) {
429
+ --signup-button-background: transparent;
430
+ --signup-button-border: var(--color-border, #E5E7EB);
431
+ --signup-button-text: var(--color-header-text, #ffffff);
432
+ }
433
+
434
+ .signup-button {
435
+ display: flex;
436
+ height: 35px;
437
+ padding: var(--spacing-xxs, 0.3125rem) var(--spacing-xs, 0.75rem);
438
+ align-items: center;
439
+ gap: var(--spacing-xxs, 0.3125rem);
440
+ border-radius: var(--border-radius-base, 0.3125rem);
441
+ background: var(--signup-button-background);
442
+ border: 1px solid var(--signup-button-border);
443
+ color: var(--signup-button-text);
444
+ cursor: pointer;
445
+ font: inherit;
446
+ line-height: 1;
447
+ white-space: nowrap;
448
+ text-decoration: none;
449
+ box-sizing: border-box;
450
+ transition: transform 0.2s ease;
451
+ }
452
+
453
+ :host([layout='mobile']) .signup-button {
454
+ border: none;
455
+ }
456
+
457
+ .signup-button-icon {
458
+ width: 16px;
459
+ height: 16px;
460
+ display: inline-block;
461
+ object-fit: contain;
462
+ }
463
+
464
+ .signup-button:active {
465
+ transform: translateY(1px);
466
+ }
467
+ `;constructor(){super(),this.label="Sign Up",this.signupUrl="https://solidproject.org/get_a_pod",this.theme="light",this.icon="",this.layout="desktop"}_handleClick(){window.open(this.signupUrl,"_blank","noopener,noreferrer")}render(){return r.qy`
468
+ <button
469
+ class="signup-button"
470
+ type="button"
471
+ part="signup-button"
472
+ @click="${()=>this._handleClick()}"
473
+ >
474
+ ${this.icon?r.qy`<img class="signup-button-icon" src="${this.icon}" alt="" aria-hidden="true" part="signup-button-icon" />`:""}
475
+ <slot>${this.label}</slot>
476
+ </button>
477
+ `}}},8005(e,t,o){var r=o(8228);const n="solid-ui-signup-button";customElements.get(n)||customElements.define(n,r.X)},1166(e,t,o){o.d(t,{Y:()=>l});var r=o(6161),n=o(3378),i=o(3138),s=(o(2167),o(8005),o(1413));const a=n.Pt.iconBase+"emptyProfileAvatar.png";class l extends r.WF{static properties={logo:{type:String,reflect:!0},helpIcon:{type:String,attribute:"help-icon",reflect:!0},layout:{type:String,reflect:!0},theme:{type:String,reflect:!0},brandLink:{type:String,attribute:"brand-link",reflect:!0},authState:{type:String,attribute:"auth-state",reflect:!0},loginAction:{type:Object,attribute:!1},signUpAction:{type:Object,attribute:!1},accountMenu:{type:Array,attribute:!1},logoutLabel:{type:String,attribute:"logout-label",reflect:!0},logoutIcon:{type:String,attribute:"logout-icon",reflect:!0},accountIcon:{type:String,attribute:"account-icon",reflect:!0},accountAvatar:{type:String,attribute:"account-avatar",reflect:!0},accountAvatarFallback:{type:String,attribute:"account-avatar-fallback",reflect:!0},loginIcon:{type:String,attribute:"login-icon",reflect:!0},signUpIcon:{type:String,attribute:"sign-up-icon",reflect:!0},helpMenuList:{type:Array},accountMenuOpen:{state:!0},helpMenuOpen:{state:!0},hasSlottedAccountMenu:{state:!0},hasSlottedHelpMenu:{state:!0}};static styles=r.AH`
478
+ :host { /* default theme */
479
+ display: block;
480
+ --header-bg: var(--color-header-row-bg, #332746);
481
+ --header-text: var(--color-header-text, #ffffff);
482
+ --header-border: var(--color-border, #efecf3);
483
+ --header-line: var(--color-header-menu-separator-line, #5e546d);
484
+ --header-link: var(--color-text-heading, #000000);
485
+ --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);
486
+ --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);
487
+ --header-menu-bg: var(--color-menu-bg, #f6f5f9);
488
+ --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);
489
+ --header-menu-text: var(--color-menu-item-text, #654d6c);
490
+ --header-border-radius: var(--border-radius-sm, 0.2rem);
491
+ --header-button-bg: var(--color-menu-bg, #ffffff);
492
+ --header-button-text: var(--color-header-button-text, #0F172B);
493
+ --header-button-detail-text: var(--color-header-button-detail-text, #99A1AF);
494
+ --header-shadow: var(--color-header-shadow, 2px 6px 10px 0 rgba(0, 0, 0, 0.4), 2px 8px 24px 0 rgba(0, 0, 0, 0.19));
495
+ font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);
307
496
  }
308
497
 
309
- .account-menu-label {
310
- color: var(--header-button-text);
311
- overflow: hidden;
312
- text-overflow: ellipsis;
313
- white-space: nowrap;
498
+ /* for now light and dark are the same */
499
+ :host([theme='dark']) {
500
+ display: block;
501
+ --header-bg: var(--color-header-row-bg, #332746);
502
+ --header-text: var(--color-header-text, #ffffff);
503
+ --header-border: var(--color-border, #efecf3);
504
+ --header-line: var(--color-header-menu-separator-line, #5e546d);
505
+ --header-link: var(--color-text-heading, #000000);
506
+ --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);
507
+ --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);
508
+ --header-menu-bg: var(--color-menu-bg, #f6f5f9);
509
+ --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);
510
+ --header-menu-text: var(--color-menu-item-text, #654d6c);
511
+ --header-border-radius: var(--border-radius-sm, 0.2rem);
512
+ --header-button-bg: var(--color-menu-bg, #ffffff);
513
+ --header-button-text: var(--color-header-button-text, #0f172a);
514
+ --header-button-detail-text: var(--color-header-button-detail-text, #878192);
515
+ --header-icon-filter: invert(1) brightness(1.3); /* special way to invert SVG color of icons, from white to black */
516
+ --header-shadow: var(--color-header-shadow, 2px 6px 10px 0 rgba(0, 0, 0, 0.4), 2px 8px 24px 0 rgba(0, 0, 0, 0.19));
517
+ font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);
314
518
  }
315
519
 
316
- .account-menu-webid {
317
- color: var(--header-button-detail-text);
318
- font-size: 0.5rem;
319
- overflow: hidden;
320
- text-overflow: ellipsis;
321
- white-space: nowrap;
520
+ :host([layout='mobile']) .headerInner {
521
+ flex-wrap: wrap;
522
+ text-align: center;
523
+ gap: 0.5rem;
322
524
  }
323
525
 
324
- .help-menu-container {
325
- position: relative;
526
+ .headerInner {
326
527
  display: flex;
327
528
  align-items: center;
328
- background: transparent;
529
+ justify-content: space-between;
530
+ background: var(--header-bg);
531
+ color: var(--header-text);
532
+ padding: 0 1.5rem;
533
+ height: 3.75rem;
329
534
  }
330
535
 
331
- .help-menu-trigger {
536
+ ::slotted([slot='navigation-toggle']) {
332
537
  display: inline-flex;
333
538
  align-items: center;
334
539
  justify-content: center;
335
- padding: 0;
336
- border: 0;
337
- background: transparent;
338
- cursor: pointer;
540
+ flex-shrink: 0;
541
+ margin-right: 0.75rem;
339
542
  }
340
543
 
341
- .help-menu-trigger:disabled {
342
- cursor: default;
544
+ :host([layout='desktop']) ::slotted([slot='navigation-toggle']) {
545
+ display: none !important;
343
546
  }
344
547
 
345
- .help-dropdown {
346
- position: absolute;
347
- top: calc(100% + 0.9rem);
348
- right: 0;
349
- min-width: 12rem;
350
- padding: 0.5rem;
351
- background: var(--header-button-bg);
352
- border: 1px solid var(--header-border);
353
- border-radius: var(--header-border-radius);
354
- box-shadow: var(--header-shadow);
355
- z-index: 10;
548
+ .brand {
549
+ display: flex;
550
+ align-items: center;
551
+ gap: 0.5rem;
552
+ text-decoration: none;
553
+ color: inherit;
356
554
  }
357
555
 
358
- .help-dropdown[hidden] {
556
+ .brand-not-displayed {
359
557
  display: none;
360
558
  }
361
559
 
362
- .help-dropdown-content {
363
- display: flex;
364
- flex-direction: column;
365
- gap: 0.25rem;
560
+ .brand img {
561
+ height: 50px;
562
+ width: 55px;
563
+ object-fit: contain;
366
564
  }
367
565
 
368
- .help-menu-list {
369
- list-style: none;
370
- margin: 0;
371
- padding: 0;
566
+ .menu {
567
+ display: flex;
568
+ align-items: center;
569
+ gap: 0.625rem;
570
+ margin-left: auto;
571
+ }
572
+
573
+ .auth-actions {
574
+ display: flex;
575
+ align-items: center;
576
+ gap: 0.625rem;
577
+ }
578
+
579
+ .auth-button {
580
+ display: inline-flex;
581
+ align-items: center;
582
+ justify-content: center;
583
+ gap: 0.5rem;
584
+ min-height: 2.25rem;
585
+ padding: 0.5rem 0.875rem;
586
+ border: 1px solid var(--header-border);
587
+ border-radius: 999px;
588
+ background: var(--header-menu-bg);
589
+ color: var(--header-button-text);
590
+ cursor: pointer;
591
+ font: inherit;
592
+ line-height: 1;
593
+ text-decoration: none;
594
+ box-sizing: border-box;
595
+ transition: border-color 0.2s ease, transform 0.2s ease;
596
+ }
597
+
598
+ .auth-button:hover {
599
+ border-color: var(--header-menu-item-hover);
600
+ }
601
+
602
+ .auth-button:active {
603
+ transform: translateY(1px);
604
+ }
605
+
606
+ .auth-button-sign-up {
607
+ background: color-mix(in srgb, var(--header-menu-bg) 78%, var(--header-menu-item-selected) 22%);
608
+ }
609
+
610
+ .header-menu-separator {
611
+ background: var(--header-line);
612
+ width: 1px;
613
+ height: 2.3rem;
614
+ }
615
+
616
+ .account-menu-container {
617
+ position: relative;
618
+ display: flex;
619
+ align-items: center;
620
+ }
621
+
622
+ .account-menu-trigger {
623
+ display: inline-flex;
624
+ align-items: center;
625
+ gap: 0.625rem;
626
+ min-height: 2.5rem;
627
+ border: 1px solid var(--header-menu-loggedin-bg);
628
+ border-radius: 999px;
629
+ background: var(--header-menu-loggedin-bg);
630
+ color: var(--header-button-text);
631
+ cursor: pointer;
632
+ font: inherit;
633
+ line-height: 1;
634
+ }
635
+
636
+ :host([layout='mobile']) .account-menu-trigger {
637
+ gap: 0;
638
+ min-height: auto;
639
+ padding: 0;
640
+ border: 1.5px solid var(--header-border);
641
+ background: var(--header-menu-loggedin-bg);
642
+ }
643
+
644
+ :host([layout='mobile']) .account-menu-trigger-label {
645
+ display: none;
646
+ }
647
+
648
+ .account-menu-trigger:disabled {
649
+ cursor: default;
650
+ opacity: 0.7;
651
+ }
652
+
653
+ .account-menu-trigger-icon {
654
+ width: 1rem;
655
+ height: 1rem;
656
+ object-fit: contain;
657
+ flex-shrink: 0;
658
+ }
659
+
660
+ .account-avatar,
661
+ .account-menu-avatar {
662
+ display: inline-flex;
663
+ align-items: center;
664
+ justify-content: center;
665
+ flex-shrink: 0;
666
+ overflow: hidden;
667
+ background: color-mix(in srgb, var(--header-bg) 18%, #ded8e7 82%);
668
+ color: var(--header-button-text);
669
+ font-size: 0.75rem;
670
+ font-weight: 600;
671
+ text-transform: uppercase;
672
+ }
673
+
674
+ .account-avatar {
675
+ width: 1.75rem;
676
+ height: 1.75rem;
677
+ border-radius: 999px;
678
+ border: 1.5px solid var(--header-border);
679
+ }
680
+
681
+ .account-menu-avatar {
682
+ width: 2rem;
683
+ height: 2rem;
684
+ border-radius: 0.5rem;
685
+ }
686
+
687
+ .account-avatar img,
688
+ .account-menu-avatar img {
689
+ width: 100%;
690
+ height: 100%;
691
+ object-fit: cover;
692
+ }
693
+
694
+ .account-avatar-img {
695
+ width: 1.75rem;
696
+ height: 1.75rem;
697
+ border-radius: 999px;
698
+ object-fit: cover;
699
+ background-color: var(--header-border);
700
+ }
701
+
702
+ .account-dropdown {
703
+ position: absolute;
704
+ top: calc(100% + 0.9rem);
705
+ right: 0;
706
+ min-width: 15rem;
707
+ padding: 0.5rem;
708
+ background: var(--header-button-bg);
709
+ border: 1px solid var(--header-border);
710
+ border-radius: var(--header-border-radius);
711
+ box-shadow: var(--header-shadow);
712
+ z-index: 10;
713
+ }
714
+
715
+ .account-dropdown[hidden] {
716
+ display: none;
717
+ }
718
+
719
+ .account-menu-list {
720
+ list-style: none;
721
+ margin: 0;
722
+ padding: 0;
372
723
  display: flex;
373
724
  flex-direction: column;
374
725
  gap: 0.25rem;
375
726
  }
376
727
 
377
- .help-menu-list a,
378
- .help-menu-list button,
379
- ::slotted([slot='help-menu']) {
380
- display: block;
728
+ .account-menu-item-link,
729
+ .account-menu-item-button,
730
+ ::slotted([slot='account-menu']) {
731
+ display: flex;
732
+ align-items: center;
733
+ gap: 0.625rem;
381
734
  width: 100%;
382
735
  box-sizing: border-box;
383
736
  color: var(--header-link);
384
737
  text-decoration: none;
385
738
  background: transparent;
386
739
  border: 1px solid transparent;
387
- border-radius: 4px;
388
- padding: 0.375rem 0.5rem;
740
+ border-radius: 10px;
741
+ padding: 0.5rem;
389
742
  cursor: pointer;
390
743
  font: inherit;
391
744
  text-align: left;
392
745
  }
393
746
 
394
- .help-menu-list a:hover,
395
- .help-menu-list button:hover {
747
+ .account-menu-item-link:hover,
748
+ .account-menu-item-button:hover {
396
749
  color: var(--header-link);
397
750
  background: var(--header-menu-item-hover);
398
751
  border-color: var(--header-menu-item-hover);
399
752
  }
400
753
 
401
- .help-menu-list a:active,
402
- .help-menu-list button:active {
754
+ .account-menu-item-link:active,
755
+ .account-menu-item-button:active {
403
756
  color: var(--header-link);
404
757
  background: var(--header-menu-item-selected);
405
758
  border-color: var(--header-menu-item-selected);
406
759
  transform: translateY(1px);
407
760
  }
408
761
 
409
- ::slotted(a), ::slotted(button) {
410
- color: var(--header-link);
411
- text-decoration: none;
412
- background: var(--header-button-bg);
413
- border: 1px solid var(--header-border);
414
- border-radius: 4px;
415
- padding: 0.25rem 0.5rem;
416
- cursor: pointer;
417
- font: inherit;
762
+ .account-switch {
763
+ display: block;
764
+ width: 100%;
765
+ color: var(--header-menu-text);
766
+ text-align: left;
767
+ text-transform: uppercase;
768
+ font-size: 80%;
418
769
  }
419
770
 
420
- .help-icon {
421
- width: 35px;
422
- height: 35px;
423
- cursor: pointer;
771
+ .dropdown-menu-separator {
772
+ display: block;
773
+ width: calc(100% + 1rem);
774
+ margin: 0.5rem -0.5rem;
775
+ border: 0;
776
+ border-top: 1px solid var(--header-border);
424
777
  }
425
778
 
426
- .help-text {
427
- color: var(--header-text, #ffffff);
428
- font: inherit;
779
+ .account-menu-copy {
780
+ display: flex;
781
+ flex-direction: column;
782
+ min-width: 0;
429
783
  }
430
784
 
431
- .logout-action-icon {
432
- width: 16px;
433
- height: 16px;
434
- display: inline-block;
435
- object-fit: contain;
436
- margin-right: 0.5rem;
785
+ .account-menu-label {
786
+ color: var(--header-button-text);
787
+ overflow: hidden;
788
+ text-overflow: ellipsis;
789
+ white-space: nowrap;
437
790
  }
438
- `;constructor(){super(),this.logo="https://solidproject.org/assets/img/solid-emblem.svg",this.helpIcon="",this.layout="desktop",this.theme="light",this.brandLink="#",this.authState="logged-out",this.loginAction={label:"Log In",action:"login"},this.signUpAction={label:"Sign Up",action:"sign-up",url:"https://solidproject.org/get_a_pod"},this.accountMenu=[],this.logoutLabel="Log Out",this.logoutIcon="",this.accountIcon="▼",this.accountAvatar="",this.accountAvatarFallback="",this.loginIcon="",this.signUpIcon="",this.helpMenuList=[],this.accountMenuOpen=!1,this.helpMenuOpen=!1,this.hasSlottedAccountMenu=!1,this.hasSlottedHelpMenu=!1}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleDocumentClick),window.addEventListener("keydown",this.handleWindowKeydown)}disconnectedCallback(){document.removeEventListener("click",this.handleDocumentClick),window.removeEventListener("keydown",this.handleWindowKeydown),super.disconnectedCallback()}handleHelpMenuClick(e,t){if(t.preventDefault(),this.helpMenuOpen=!1,this.dispatchEvent(new CustomEvent("help-menu-select",{detail:e,bubbles:!0,composed:!0})),e.url){const t=e.target||"_blank",o="_blank"===t?"noopener,noreferrer":void 0;window.open(e.url,t,o)}}handleAccountMenuClick(e){this.accountMenuOpen=!1,this.dispatchEvent(new CustomEvent("account-menu-select",{detail:e,bubbles:!0,composed:!0}))}handleDocumentClick=e=>{e.composedPath().includes(this)||(this.accountMenuOpen=!1,this.helpMenuOpen=!1)};handleWindowKeydown=e=>{"Escape"===e.key&&(this.accountMenuOpen||this.helpMenuOpen)&&(this.accountMenuOpen=!1,this.helpMenuOpen=!1)};handleAccountSlotChange(e){const t=e.target;this.hasSlottedAccountMenu=t.assignedElements({flatten:!0}).length>0}handleHelpSlotChange(e){const t=e.target;this.hasSlottedHelpMenu=t.assignedElements({flatten:!0}).length>0}toggleAccountMenu(e){e.preventDefault(),this.hasAccountMenuItems()&&(this.helpMenuOpen=!1,this.accountMenuOpen=!this.accountMenuOpen)}toggleHelpMenu(e){e.preventDefault(),this.hasHelpMenuItems()&&(this.accountMenuOpen=!1,this.helpMenuOpen=!this.helpMenuOpen)}hasAccountMenuItems(){return Boolean(this.accountMenu?.length||this.hasSlottedAccountMenu||this.logoutLabel)}hasHelpMenuItems(){return Boolean(this.helpMenuList?.length||this.hasSlottedHelpMenu)}shouldRenderHelpMenu(){return"mobile"!==this.layout&&this.hasHelpMenuItems()}renderLoggedInAvatar(e,t="account-avatar"){const o=Boolean(e),n=o?e:this.accountAvatarFallback||a,i=o?"Profile Avatar":"Default Avatar";return"mobile"===this.layout&&"account-avatar"===t?r.qy`<img class="account-avatar-img" src="${n}" alt="${i}" />`:r.qy`
439
- <span class="${t}" aria-hidden="true">
440
- <img src="${n}" alt="${i}" />
441
- </span>
442
- `}renderLoggedOutActions(){return r.qy`
443
- <div class="auth-actions" part="auth-actions">
444
- <slot name="login-action">
445
- <solid-ui-login-button
446
- label="${this.loginAction.label}"
447
- icon=${(0,s.J)("mobile"!==this.layout?this.loginIcon||this.loginAction.icon:void 0)}
448
- layout="${this.layout}"
449
- theme="${this.theme}"
450
- part="login-action"
451
- @login-success="${()=>this.handleLoginSuccess()}"
452
- ></solid-ui-login-button>
453
- </slot>
454
- <slot name="sign-up-action">
455
- <solid-ui-signup-button
456
- label="${this.signUpAction.label}"
457
- signup-url="${(0,s.J)(this.signUpAction.url)}"
458
- layout="${this.layout}"
459
- .icon=${(0,s.J)("mobile"!==this.layout?this.signUpIcon||this.signUpAction.icon:void 0)}
460
- theme="${this.theme}"
461
- part="sign-up-action"
462
- ></solid-ui-signup-button>
463
- </slot>
464
- </div>
465
- `}handleLoginSuccess(){this.authState="logged-in",this.dispatchEvent(new CustomEvent("auth-action-select",{detail:{role:"login"},bubbles:!0,composed:!0}))}async handleLogout(){this.accountMenuOpen=!1;try{await i.authSession.logout()}catch(e){}this.authState="logged-out",this.dispatchEvent(new CustomEvent("logout-select",{detail:{role:"logout"},bubbles:!0,composed:!0}))}renderAccountMenuItem(e){const t=r.qy`
466
- ${this.renderLoggedInAvatar(e.avatar,"account-menu-avatar")}
467
- <span class="account-menu-copy">
468
- <span class="account-menu-label">${e.label}</span>
469
- ${e.webid&&"mobile"!==this.layout?r.qy`<span class="account-menu-webid">${e.webid}</span>`:""}
470
- </span>
471
- `;return e.url?r.qy`
791
+
792
+ .account-menu-webid {
793
+ color: var(--header-button-detail-text);
794
+ font-size: 0.5rem;
795
+ overflow: hidden;
796
+ text-overflow: ellipsis;
797
+ white-space: nowrap;
798
+ }
799
+
800
+ .help-menu-container {
801
+ position: relative;
802
+ display: flex;
803
+ align-items: center;
804
+ background: transparent;
805
+ }
806
+
807
+ .help-menu-trigger {
808
+ display: inline-flex;
809
+ align-items: center;
810
+ justify-content: center;
811
+ padding: 0;
812
+ border: 0;
813
+ background: transparent;
814
+ cursor: pointer;
815
+ }
816
+
817
+ .help-menu-trigger:disabled {
818
+ cursor: default;
819
+ }
820
+
821
+ .help-dropdown {
822
+ position: absolute;
823
+ top: calc(100% + 0.9rem);
824
+ right: 0;
825
+ min-width: 12rem;
826
+ padding: 0.5rem;
827
+ background: var(--header-button-bg);
828
+ border: 1px solid var(--header-border);
829
+ border-radius: var(--header-border-radius);
830
+ box-shadow: var(--header-shadow);
831
+ z-index: 10;
832
+ }
833
+
834
+ .help-dropdown[hidden] {
835
+ display: none;
836
+ }
837
+
838
+ .help-dropdown-content {
839
+ display: flex;
840
+ flex-direction: column;
841
+ gap: 0.25rem;
842
+ }
843
+
844
+ .help-menu-list {
845
+ list-style: none;
846
+ margin: 0;
847
+ padding: 0;
848
+ display: flex;
849
+ flex-direction: column;
850
+ gap: 0.25rem;
851
+ }
852
+
853
+ .help-menu-list a,
854
+ .help-menu-list button,
855
+ ::slotted([slot='help-menu']) {
856
+ display: block;
857
+ width: 100%;
858
+ box-sizing: border-box;
859
+ color: var(--header-link);
860
+ text-decoration: none;
861
+ background: transparent;
862
+ border: 1px solid transparent;
863
+ border-radius: 4px;
864
+ padding: 0.375rem 0.5rem;
865
+ cursor: pointer;
866
+ font: inherit;
867
+ text-align: left;
868
+ }
869
+
870
+ .help-menu-list a:hover,
871
+ .help-menu-list button:hover {
872
+ color: var(--header-link);
873
+ background: var(--header-menu-item-hover);
874
+ border-color: var(--header-menu-item-hover);
875
+ }
876
+
877
+ .help-menu-list a:active,
878
+ .help-menu-list button:active {
879
+ color: var(--header-link);
880
+ background: var(--header-menu-item-selected);
881
+ border-color: var(--header-menu-item-selected);
882
+ transform: translateY(1px);
883
+ }
884
+
885
+ ::slotted(a), ::slotted(button) {
886
+ color: var(--header-link);
887
+ text-decoration: none;
888
+ background: var(--header-button-bg);
889
+ border: 1px solid var(--header-border);
890
+ border-radius: 4px;
891
+ padding: 0.25rem 0.5rem;
892
+ cursor: pointer;
893
+ font: inherit;
894
+ }
895
+
896
+ .help-icon {
897
+ width: 35px;
898
+ height: 35px;
899
+ cursor: pointer;
900
+ }
901
+
902
+ .help-text {
903
+ color: var(--header-text, #ffffff);
904
+ font: inherit;
905
+ }
906
+
907
+ .logout-action-icon {
908
+ width: 16px;
909
+ height: 16px;
910
+ display: inline-block;
911
+ object-fit: contain;
912
+ margin-right: 0.5rem;
913
+ }
914
+ `;constructor(){super(),this.logo="https://solidproject.org/assets/img/solid-emblem.svg",this.helpIcon="",this.layout="desktop",this.theme="light",this.brandLink="#",this.authState="logged-out",this.loginAction={label:"Log In",action:"login"},this.signUpAction={label:"Sign Up",action:"sign-up",url:"https://solidproject.org/get_a_pod"},this.accountMenu=[],this.logoutLabel="Log Out",this.logoutIcon="",this.accountIcon="▼",this.accountAvatar="",this.accountAvatarFallback="",this.loginIcon="",this.signUpIcon="",this.helpMenuList=[],this.accountMenuOpen=!1,this.helpMenuOpen=!1,this.hasSlottedAccountMenu=!1,this.hasSlottedHelpMenu=!1}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleDocumentClick),window.addEventListener("keydown",this.handleWindowKeydown)}disconnectedCallback(){document.removeEventListener("click",this.handleDocumentClick),window.removeEventListener("keydown",this.handleWindowKeydown),super.disconnectedCallback()}handleHelpMenuClick(e,t){if(t.preventDefault(),this.helpMenuOpen=!1,this.dispatchEvent(new CustomEvent("help-menu-select",{detail:e,bubbles:!0,composed:!0})),e.url){const t=e.target||"_blank",o="_blank"===t?"noopener,noreferrer":void 0;window.open(e.url,t,o)}}handleAccountMenuClick(e){this.accountMenuOpen=!1,this.dispatchEvent(new CustomEvent("account-menu-select",{detail:e,bubbles:!0,composed:!0}))}handleDocumentClick=e=>{e.composedPath().includes(this)||(this.accountMenuOpen=!1,this.helpMenuOpen=!1)};handleWindowKeydown=e=>{"Escape"===e.key&&(this.accountMenuOpen||this.helpMenuOpen)&&(this.accountMenuOpen=!1,this.helpMenuOpen=!1)};handleAccountSlotChange(e){const t=e.target;this.hasSlottedAccountMenu=t.assignedElements({flatten:!0}).length>0}handleHelpSlotChange(e){const t=e.target;this.hasSlottedHelpMenu=t.assignedElements({flatten:!0}).length>0}toggleAccountMenu(e){e.preventDefault(),this.hasAccountMenuItems()&&(this.helpMenuOpen=!1,this.accountMenuOpen=!this.accountMenuOpen)}toggleHelpMenu(e){e.preventDefault(),this.hasHelpMenuItems()&&(this.accountMenuOpen=!1,this.helpMenuOpen=!this.helpMenuOpen)}hasAccountMenuItems(){return Boolean(this.accountMenu?.length||this.hasSlottedAccountMenu||this.logoutLabel)}hasHelpMenuItems(){return Boolean(this.helpMenuList?.length||this.hasSlottedHelpMenu)}shouldRenderHelpMenu(){return"mobile"!==this.layout&&this.hasHelpMenuItems()}renderLoggedInAvatar(e,t="account-avatar"){const o=Boolean(e),n=o?e:this.accountAvatarFallback||a,i=o?"Profile Avatar":"Default Avatar";return"mobile"===this.layout&&"account-avatar"===t?r.qy`<img class="account-avatar-img" src="${n}" alt="${i}" />`:r.qy`
915
+ <span class="${t}" aria-hidden="true">
916
+ <img src="${n}" alt="${i}" />
917
+ </span>
918
+ `}renderLoggedOutActions(){return r.qy`
919
+ <div class="auth-actions" part="auth-actions">
920
+ <slot name="login-action">
921
+ <solid-ui-login-button
922
+ label="${this.loginAction.label}"
923
+ icon=${(0,s.J)("mobile"!==this.layout?this.loginIcon||this.loginAction.icon:void 0)}
924
+ layout="${this.layout}"
925
+ theme="${this.theme}"
926
+ part="login-action"
927
+ @login-success="${()=>this.handleLoginSuccess()}"
928
+ ></solid-ui-login-button>
929
+ </slot>
930
+ <slot name="sign-up-action">
931
+ <solid-ui-signup-button
932
+ label="${this.signUpAction.label}"
933
+ signup-url="${(0,s.J)(this.signUpAction.url)}"
934
+ layout="${this.layout}"
935
+ .icon=${(0,s.J)("mobile"!==this.layout?this.signUpIcon||this.signUpAction.icon:void 0)}
936
+ theme="${this.theme}"
937
+ part="sign-up-action"
938
+ ></solid-ui-signup-button>
939
+ </slot>
940
+ </div>
941
+ `}handleLoginSuccess(){this.authState="logged-in",this.dispatchEvent(new CustomEvent("auth-action-select",{detail:{role:"login"},bubbles:!0,composed:!0}))}async handleLogout(){this.accountMenuOpen=!1;try{await i.authSession.logout()}catch(e){}this.authState="logged-out",this.dispatchEvent(new CustomEvent("logout-select",{detail:{role:"logout"},bubbles:!0,composed:!0}))}renderAccountMenuItem(e){const t=r.qy`
942
+ ${this.renderLoggedInAvatar(e.avatar,"account-menu-avatar")}
943
+ <span class="account-menu-copy">
944
+ <span class="account-menu-label">${e.label}</span>
945
+ ${e.webid&&"mobile"!==this.layout?r.qy`<span class="account-menu-webid">${e.webid}</span>`:""}
946
+ </span>
947
+ `;return e.url?r.qy`
472
948
  <a
473
949
  class="account-menu-item-link"
474
950
  href="${e.url}"
@@ -617,441 +1093,7 @@ import*as e from"solid-logic";var t={7423(e,t,o){function r(...e){console.log(..
617
1093
  </div>`:""}
618
1094
  </div>
619
1095
  </div>
620
- `}}},1209(e,t,o){o.d(t,{M:()=>s});var r=o(6161),n=o(3138),i=o(1353);class s extends r.WF{static properties={label:{type:String,reflect:!0},theme:{type:String,reflect:!0},issuerUrl:{type:String,attribute:"issuer-url",reflect:!0},icon:{type:String,reflect:!0},layout:{type:String,reflect:!0},_popupOpen:{state:!0},_issuerInputValue:{state:!0},_dropdownOpen:{state:!0}};static styles=r.AH`
621
- :host { // default theme
622
- display: inline-block;
623
- position: relative;
624
- z-index: 400;
625
- --login-button-background: var(--lavender-900, #7c4cff);
626
- --login-button-text: var(--color-header-text, #ffffff);
627
- --popup-background: var(--color-background, #F8F9FB);
628
- --popup-text: var(--color-text, #1A1A1A);
629
- --popup-border: var(--color-border, #E5E7EB);
630
- --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
631
- --popup-overlay-background: rgba(0, 0, 0, 0.6);
632
- --issuer-input-background: var(--color-background, #F8F9FB);
633
- --issuer-input-text: var(--color-text, #1A1A1A);
634
- --issuer-input-border: var(--color-text, #1A1A1A);
635
- --issuer-button-background: var(--color-background, #F8F9FB);
636
- --issuer-button-text: var(--color-text, #1A1A1A);
637
- --issuer-button-border: var(--color-border, #E5E7EB);
638
- --issuer-button-hover-background: var(--lavender-900, #7c4cff);
639
- --issuer-label-color: var(--grey-purple-700, #1A1A1A);
640
- --issuer-placeholder-color: var(--grey-purple-700, #5e546d);;
641
- --error-text-color: var(--color-error, #B00020);
642
- }
643
-
644
- :host([theme='dark']) {
645
- display: inline-block;
646
- position: relative;
647
- z-index: 900;
648
- --login-button-background: var(--lavender-900, #7c4cff);
649
- --login-button-text: var(--color-header-text, #ffffff);
650
- --popup-background: var(--color-background, #F8F9FB);
651
- --popup-text: var(--color-text, #1A1A1A);
652
- --popup-border: var(--color-border, #E5E7EB);
653
- --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
654
- --popup-overlay-background: rgba(0, 0, 0, 0.6);
655
- --issuer-input-background: var(--color-background, #F8F9FB);
656
- --issuer-input-text: var(--color-text, #1A1A1A);
657
- --issuer-input-border: var(--color-text, #1A1A1A);
658
- --issuer-button-background: var(--color-background, #F8F9FB);
659
- --issuer-button-text: var(--color-text, #1A1A1A);
660
- --issuer-button-border: var(--color-text, #1A1A1A);
661
- --issuer-button-hover-background: var(--lavender-900, #7c4cff);
662
- --issuer-label-color: var(--grey-purple-700, #1A1A1A);
663
- --issuer-placeholder-color: var(--grey-purple-700, #5e546d);;
664
- --error-text-color: var(--color-error, #B00020);
665
- }
666
-
667
- .login-button {
668
- display: flex;
669
- height: 35px;
670
- padding: var(--spacing-xxs, 0.3125rem) var(--spacing-xs, 0.75rem);
671
- align-items: center;
672
- gap: var(--spacing-xxs, 0.3125rem);
673
- border-radius: var(--border-radius-base, 0.3125rem);
674
- background: var(--login-button-background);
675
- border: none;
676
- color: var(--login-button-text);
677
- cursor: pointer;
678
- font: inherit;
679
- line-height: 1;
680
- white-space: nowrap;
681
- text-decoration: none;
682
- box-sizing: border-box;
683
- transition: transform 0.2s ease;
684
- }
685
-
686
- .login-button-icon {
687
- width: 16px;
688
- height: 16px;
689
- display: inline-block;
690
- object-fit: contain;
691
- }
692
-
693
- .login-button:active {
694
- transform: translateY(1px);
695
- }
696
-
697
- .popup-dialog {
698
- border: none;
699
- padding: 0;
700
- background: transparent;
701
- outline: none;
702
- overflow: visible;
703
- max-height: none;
704
- max-width: none;
705
- }
706
-
707
- .popup-dialog::backdrop {
708
- background: var(--popup-overlay-background, rgba(0, 0, 0, 0.6));
709
- }
710
-
711
- .popup-box {
712
- background: var(--popup-background);
713
- color: var(--popup-text);
714
- box-shadow: var(--popup-shadow);
715
- border: 1px solid var(--popup-border);
716
- border-radius: var(--border-radius-md, 0.5rem);
717
- min-width: 480px;
718
- z-index: 1001;
719
- }
720
-
721
- .popup-top-menu {
722
- border-bottom: 1px solid #DDD;
723
- display: flex;
724
- flex-direction: row;
725
- align-items: center;
726
- justify-content: space-between;
727
- padding-bottom: 8px;
728
- margin-bottom: 8px;
729
- padding: 1rem;
730
- background: var(--gray-200, #E5E7EB);
731
- }
732
-
733
- .popup-title {
734
- font-weight: 800;
735
- }
736
-
737
- .popup-close {
738
- background: transparent;
739
- border: none;
740
- cursor: pointer;
741
- font-size: 1.25rem;
742
- line-height: 1;
743
- padding: 0 0.25rem;
744
- }
745
-
746
- .issuer-text-section {
747
- display: flex;
748
- flex-direction: column;
749
- padding: 1rem 1rem 1.75rem;
750
- }
751
-
752
- .issuer-text-label {
753
- color: var(--issuer-label-color);
754
- margin-bottom: 6px;
755
- }
756
-
757
- .issuer-text-row {
758
- display: flex;
759
- flex-direction: row;
760
- gap: 6px;
761
- align-items: flex-start;
762
- }
763
-
764
- .issuer-input-wrapper {
765
- flex: 1;
766
- display: flex;
767
- flex-direction: column;
768
- min-width: 0;
769
- position: relative;
770
- }
771
-
772
- .issuer-input-field-row {
773
- display: flex;
774
- flex-direction: row;
775
- position: relative;
776
- }
777
-
778
- .issuer-text-input {
779
- flex: 1;
780
- padding: 0.375rem 2.75rem 0.375rem 0.5rem;
781
- border: 1px solid var(--issuer-input-border);
782
- border-radius: var(--border-radius-base, 0.3125rem);
783
- background: var(--issuer-input-background);
784
- color: var(--issuer-input-text);
785
- font: inherit;
786
- min-width: 0;
787
- }
788
-
789
- .issuer-text-input::placeholder {
790
- color: var(--issuer-placeholder-color);
791
- }
792
-
793
- .issuer-dropdown-toggle {
794
- position: absolute;
795
- right: 6px;
796
- top: 50%;
797
- transform: translateY(-50%);
798
- width: 26px;
799
- height: 26px;
800
- padding: 0;
801
- border: none;
802
- background: transparent;
803
- cursor: pointer;
804
- display: flex;
805
- align-items: center;
806
- justify-content: center;
807
- flex-shrink: 0;
808
- border-radius: var(--border-radius-base, 0.3125rem);
809
- }
810
-
811
- .issuer-dropdown-toggle:hover {
812
- background: var(--color-header-menu-item-hover, #e6dcff);
813
- }
814
-
815
- .issuer-dropdown-toggle svg {
816
- width: 14px;
817
- height: 14px;
818
- display: block;
819
- }
820
-
821
- .issuer-dropdown-list {
822
- position: absolute;
823
- top: calc(100% + 6px);
824
- left: 0;
825
- right: 0;
826
- border: 1px solid var(--color-border, #E5E7EB);
827
- border-top: none;
828
- border-radius: 0 0 var(--border-radius-base, 0.3125rem) var(--border-radius-base, 0.3125rem);
829
- background: var(--issuer-input-background);
830
- overflow: visible;
831
- z-index: 10;
832
- box-shadow: 0 4px 12px rgba(124, 77, 255, 0.12);
833
- }
834
-
835
- .issuer-dropdown-item {
836
- display: block;
837
- width: 100%;
838
- padding: 0.625rem 0.75rem;
839
- border: none;
840
- border-bottom: 1px solid var(--color-border, #E5E7EB);
841
- background: transparent;
842
- color: var(--issuer-button-text);
843
- cursor: pointer;
844
- font: inherit;
845
- text-align: left;
846
- box-sizing: border-box;
847
- }
848
-
849
- .issuer-dropdown-item:last-child {
850
- border-bottom: none;
851
- }
852
-
853
- .issuer-dropdown-item:hover {
854
- background: var(--color-header-menu-item-hover, #e6dcff);
855
- border-radius: var(--border-radius-base-md, 0.5rem);
856
- }
857
-
858
- .popup-footer {
859
- display: flex;
860
- flex-direction: row;
861
- justify-content: center;
862
- gap: 8px;
863
- padding: 0.75rem 1rem 1rem;
864
- }
865
-
866
- .popup-footer-hr {
867
- margin: 0;
868
- border: none;
869
- border-top: 1px solid var(--popup-border, #E5E7EB);
870
- }
871
-
872
- .popup-cancel-button {
873
- padding: 0.5rem 1.25rem;
874
- border: 1px solid #C0BFC7;
875
- border-radius: var(--border-radius-base, 0.3125rem);
876
- background: var(--popup-background);
877
- color: #314158;
878
- cursor: pointer;
879
- font: inherit;
880
- }
881
-
882
- .popup-cancel-button:hover {
883
- background: #D1D5DB;
884
- }
885
-
886
- .popup-login-button {
887
- padding: 0.5rem 1.25rem;
888
- border: none;
889
- border-radius: var(--border-radius-base, 0.3125rem);
890
- background: var(--lavender-900, #7c4cff);
891
- color: #ffffff;
892
- cursor: pointer;
893
- font: inherit;
894
- }
895
-
896
- .popup-login-button:hover {
897
- background: #6a3de8;
898
- }
899
-
900
- .popup-login-button:disabled {
901
- opacity: 0.5;
902
- cursor: not-allowed;
903
- }
904
-
905
- .error-msg {
906
- color: var(--error-text-color);
907
- font-size: 0.875rem;
908
- margin-top: 8px;
909
- }
910
- `;_issuerInputId=`issuer-url-input-${Math.random().toString(36).slice(2,10)}`;_errorMsg="";constructor(){super(),this.label="Log In",this.theme="light",this.issuerUrl="",this.icon="",this.layout="desktop",this._popupOpen=!1,this._issuerInputValue="",this._dropdownOpen=!1}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}_openPopup(){const e=(0,n.offlineTestID)();e?this._loginComplete(e.uri):(this._issuerInputValue="undefined"!=typeof localStorage&&localStorage.getItem("loginIssuer")||this.issuerUrl||"",this._errorMsg="",this._popupOpen=!0)}_closePopup(){this._popupOpen=!1}updated(){const e=this.shadowRoot?.querySelector("dialog");e&&(this._popupOpen&&!e.open?e.showModal():!this._popupOpen&&e.open&&e.close())}async _loginToIssuer(e){if(e)try{n.solidLogicSingleton.store.updater.flagAuthorizationMetadata();const t=new URL(window.location.href).hash;t&&window.localStorage.setItem("preLoginRedirectHash",t),window.localStorage.setItem("loginIssuer",e);const o=new URL(window.location.href);o.hash="",await n.authSession.login({redirectUrl:o.href,oidcIssuer:e})}catch(e){this._errorMsg=e.message||String(e),this.requestUpdate()}}_loginComplete(e){n.authn.saveUser(e),this.dispatchEvent(new CustomEvent("login-success",{detail:{webId:e},bubbles:!0,composed:!0}))}_handleGoClick(){this._dropdownOpen=!1,this._loginToIssuer(this._issuerInputValue)}_toggleDropdown(){this._dropdownOpen=!this._dropdownOpen}_selectIssuerFromDropdown(e){this._issuerInputValue=e,this._dropdownOpen=!1}_handleInputChange(e){this._issuerInputValue=e.target.value}_handleInputKeydown(e){"Enter"===e.key&&this._loginToIssuer(this._issuerInputValue),"Escape"===e.key&&this._closePopup()}_renderPopup(){const e=(0,n.getSuggestedIssuers)();return r.qy`
911
- <div class="popup-box">
912
- <div class="popup-top-menu">
913
- <span class="popup-title">Select an identity provider</span>
914
- <button class="popup-close" type="button" aria-label="Close" @click="${()=>this._closePopup()}">&#x2715;</button>
915
- </div>
916
-
917
- <div class="issuer-text-section">
918
- <label class="issuer-text-label" for="${this._issuerInputId}">Solid Identity Provider</label>
919
- <div class="issuer-text-row">
920
- <div class="issuer-input-wrapper">
921
- <div class="issuer-input-field-row">
922
- <input
923
- id="${this._issuerInputId}"
924
- class="issuer-text-input"
925
- type="text"
926
- placeholder="https://example.com"
927
- .value="${this._issuerInputValue}"
928
- @input="${this._handleInputChange}"
929
- @keydown="${this._handleInputKeydown}"
930
- autocomplete="url"
931
- />
932
- ${e.length?r.qy`
933
- <button
934
- class="issuer-dropdown-toggle"
935
- type="button"
936
- aria-label="Show identity provider suggestions"
937
- aria-expanded="${this._dropdownOpen}"
938
- @click="${()=>this._toggleDropdown()}"
939
- >${i.S}</button>
940
- `:""}
941
- </div>
942
- ${this._dropdownOpen&&e.length?r.qy`
943
- <div class="issuer-dropdown-list" role="listbox">
944
- ${e.map(e=>r.qy`
945
- <button
946
- class="issuer-dropdown-item"
947
- type="button"
948
- role="option"
949
- @click="${()=>this._selectIssuerFromDropdown(e.uri)}"
950
- >${e.name}</button>
951
- `)}
952
- </div>
953
- `:""}
954
- </div>
955
- </div>
956
- ${this._errorMsg?r.qy`<div class="error-msg">${this._errorMsg}</div>`:""}
957
- </div>
958
- <hr class="popup-footer-hr" />
959
- <div class="popup-footer">
960
- <button class="popup-cancel-button" type="button" @click="${()=>this._closePopup()}">Cancel</button>
961
- <button
962
- class="popup-login-button"
963
- type="button"
964
- ?disabled="${!this._issuerInputValue}"
965
- @click="${()=>this._handleGoClick()}"
966
- >Log In</button>
967
- </div>
968
- </div>
969
- `}render(){return r.qy`
970
- <button
971
- class="login-button"
972
- type="button"
973
- part="login-button"
974
- @click="${()=>this._openPopup()}"
975
- >
976
- ${this.icon?r.qy`<img class="login-button-icon" src="${this.icon}" alt="" aria-hidden="true" part="login-button-icon" />`:""}
977
- <slot>${this.label}</slot>
978
- </button>
979
-
980
- <dialog
981
- class="popup-dialog"
982
- role="dialog"
983
- aria-modal="true"
984
- aria-label="Select an identity provider"
985
- @cancel="${e=>{e.preventDefault(),this._closePopup()}}"
986
- @click="${e=>{e.target===e.currentTarget&&this._closePopup()}}"
987
- >
988
- ${this._popupOpen?this._renderPopup():""}
989
- </dialog>
990
- `}}},1353(e,t,o){o.d(t,{S:()=>r});const r=o(6752).qy`
991
- <svg xmlns="http://www.w3.org/2000/svg"
992
- viewBox="0 0 12 7"
993
- fill="none"
994
- >
995
- <path d="M0.679688 0.678955L5.50729 5.50656L10.3349 0.678955" stroke="#6A7282" stroke-width="1.35776" stroke-linecap="round" stroke-linejoin="round"/>
996
- </svg>
997
- `},9140(e,t,o){var r=o(1209);const n="solid-ui-login-button";customElements.get(n)||customElements.define(n,r.M)},3591(e,t,o){o.d(t,{X:()=>n});var r=o(6161);class n extends r.WF{static properties={label:{type:String,reflect:!0},theme:{type:String,reflect:!0},signupUrl:{type:String,attribute:"signup-url",reflect:!0},icon:{type:String,reflect:!0},layout:{type:String,reflect:!0}};static styles=r.AH`
998
- :host {
999
- display: inline-block;
1000
- --signup-button-background: transparent;
1001
- --signup-button-border: var(--color-border, #E5E7EB);
1002
- --signup-button-text: var(--color-header-text, #ffffff);
1003
- }
1004
-
1005
- :host([theme='dark']) {
1006
- --signup-button-background: transparent;
1007
- --signup-button-border: var(--color-border, #E5E7EB);
1008
- --signup-button-text: var(--color-header-text, #ffffff);
1009
- }
1010
-
1011
- .signup-button {
1012
- display: flex;
1013
- height: 35px;
1014
- padding: var(--spacing-xxs, 0.3125rem) var(--spacing-xs, 0.75rem);
1015
- align-items: center;
1016
- gap: var(--spacing-xxs, 0.3125rem);
1017
- border-radius: var(--border-radius-base, 0.3125rem);
1018
- background: var(--signup-button-background);
1019
- border: 1px solid var(--signup-button-border);
1020
- color: var(--signup-button-text);
1021
- cursor: pointer;
1022
- font: inherit;
1023
- line-height: 1;
1024
- white-space: nowrap;
1025
- text-decoration: none;
1026
- box-sizing: border-box;
1027
- transition: transform 0.2s ease;
1028
- }
1029
-
1030
- :host([layout='mobile']) .signup-button {
1031
- border: none;
1032
- }
1033
-
1034
- .signup-button-icon {
1035
- width: 16px;
1036
- height: 16px;
1037
- display: inline-block;
1038
- object-fit: contain;
1039
- }
1040
-
1041
- .signup-button:active {
1042
- transform: translateY(1px);
1043
- }
1044
- `;constructor(){super(),this.label="Sign Up",this.signupUrl="https://solidproject.org/get_a_pod",this.theme="light",this.icon="",this.layout="desktop"}_handleClick(){window.open(this.signupUrl,"_blank","noopener,noreferrer")}render(){return r.qy`
1045
- <button
1046
- class="signup-button"
1047
- type="button"
1048
- part="signup-button"
1049
- @click="${()=>this._handleClick()}"
1050
- >
1051
- ${this.icon?r.qy`<img class="signup-button-icon" src="${this.icon}" alt="" aria-hidden="true" part="signup-button-icon" />`:""}
1052
- <slot>${this.label}</slot>
1053
- </button>
1054
- `}}},1291(e,t,o){var r=o(3591);const n="solid-ui-signup-button";customElements.get(n)||customElements.define(n,r.X)},3138(t,o,r){t.exports=(e=>{var t={};return r.d(t,e),t})({authSession:()=>e.authSession,authn:()=>e.authn,getSuggestedIssuers:()=>e.getSuggestedIssuers,offlineTestID:()=>e.offlineTestID,solidLogicSingleton:()=>e.solidLogicSingleton})},3826(e,t,o){o.d(t,{AH:()=>l,Rf:()=>c,sk:()=>d});
1096
+ `}}},3138(t,o,r){t.exports=(e=>{var t={};return r.d(t,e),t})({authSession:()=>e.authSession,authn:()=>e.authn,getSuggestedIssuers:()=>e.getSuggestedIssuers,offlineTestID:()=>e.offlineTestID,solidLogicSingleton:()=>e.solidLogicSingleton})},3826(e,t,o){o.d(t,{AH:()=>l,Rf:()=>c,sk:()=>d});
1055
1097
  /**
1056
1098
  * @license
1057
1099
  * Copyright 2019 Google LLC
@@ -1079,5 +1121,5 @@ const i=globalThis;class s extends r.mN{constructor(){super(...arguments),this.r
1079
1121
  * Copyright 2017 Google LLC
1080
1122
  * SPDX-License-Identifier: BSD-3-Clause
1081
1123
  */
1082
- const r=globalThis,n=e=>e,i=r.trustedTypes,s=i?i.createPolicy("lit-html",{createHTML:e=>e}):void 0,a="$lit$",l=`lit$${Math.random().toFixed(9).slice(2)}$`,c="?"+l,d=`<${c}>`,u=document,h=()=>u.createComment(""),p=e=>null===e||"object"!=typeof e&&"function"!=typeof e,g=Array.isArray,b=e=>g(e)||"function"==typeof e?.[Symbol.iterator],m="[ \t\n\f\r]",v=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,f=/-->/g,y=/>/g,x=RegExp(`>|${m}(?:([^\\s"'>=/]+)(${m}*=${m}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),$=/'/g,_=/"/g,A=/^(?:script|style|textarea|title)$/i,w=e=>(t,...o)=>({_$litType$:e,strings:t,values:o}),k=w(1),S=(w(2),w(3),Symbol.for("lit-noChange")),E=Symbol.for("lit-nothing"),M=new WeakMap,I=u.createTreeWalker(u,129);function C(e,t){if(!g(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==s?s.createHTML(t):t}const O=(e,t)=>{const o=e.length-1,r=[];let n,i=2===t?"<svg>":3===t?"<math>":"",s=v;for(let t=0;t<o;t++){const o=e[t];let c,u,h=-1,p=0;for(;p<o.length&&(s.lastIndex=p,u=s.exec(o),null!==u);)p=s.lastIndex,s===v?"!--"===u[1]?s=f:void 0!==u[1]?s=y:void 0!==u[2]?(A.test(u[2])&&(n=RegExp("</"+u[2],"g")),s=x):void 0!==u[3]&&(s=x):s===x?">"===u[0]?(s=n??v,h=-1):void 0===u[1]?h=-2:(h=s.lastIndex-u[2].length,c=u[1],s=void 0===u[3]?x:'"'===u[3]?_:$):s===_||s===$?s=x:s===f||s===y?s=v:(s=x,n=void 0);const g=s===x&&e[t+1].startsWith("/>")?" ":"";i+=s===v?o+d:h>=0?(r.push(c),o.slice(0,h)+a+o.slice(h)+l+g):o+l+(-2===h?t:g)}return[C(e,i+(e[o]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),r]};class U{constructor({strings:e,_$litType$:t},o){let r;this.parts=[];let n=0,s=0;const d=e.length-1,u=this.parts,[p,g]=O(e,t);if(this.el=U.createElement(p,o),I.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(r=I.nextNode())&&u.length<d;){if(1===r.nodeType){if(r.hasAttributes())for(const e of r.getAttributeNames())if(e.endsWith(a)){const t=g[s++],o=r.getAttribute(e).split(l),i=/([.?@])?(.*)/.exec(t);u.push({type:1,index:n,name:i[2],strings:o,ctor:"."===i[1]?R:"?"===i[1]?T:"@"===i[1]?q:B}),r.removeAttribute(e)}else e.startsWith(l)&&(u.push({type:6,index:n}),r.removeAttribute(e));if(A.test(r.tagName)){const e=r.textContent.split(l),t=e.length-1;if(t>0){r.textContent=i?i.emptyScript:"";for(let o=0;o<t;o++)r.append(e[o],h()),I.nextNode(),u.push({type:2,index:++n});r.append(e[t],h())}}}else if(8===r.nodeType)if(r.data===c)u.push({type:2,index:n});else{let e=-1;for(;-1!==(e=r.data.indexOf(l,e+1));)u.push({type:7,index:n}),e+=l.length-1}n++}}static createElement(e,t){const o=u.createElement("template");return o.innerHTML=e,o}}function H(e,t,o=e,r){if(t===S)return t;let n=void 0!==r?o._$Co?.[r]:o._$Cl;const i=p(t)?void 0:t._$litDirective$;return n?.constructor!==i&&(n?._$AO?.(!1),void 0===i?n=void 0:(n=new i(e),n._$AT(e,o,r)),void 0!==r?(o._$Co??=[])[r]=n:o._$Cl=n),void 0!==n&&(t=H(e,n._$AS(e,t.values),n,r)),t}class P{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:o}=this._$AD,r=(e?.creationScope??u).importNode(t,!0);I.currentNode=r;let n=I.nextNode(),i=0,s=0,a=o[0];for(;void 0!==a;){if(i===a.index){let t;2===a.type?t=new L(n,n.nextSibling,this,e):1===a.type?t=new a.ctor(n,a.name,a.strings,this,e):6===a.type&&(t=new j(n,this,e)),this._$AV.push(t),a=o[++s]}i!==a?.index&&(n=I.nextNode(),i++)}return I.currentNode=u,r}p(e){let t=0;for(const o of this._$AV)void 0!==o&&(void 0!==o.strings?(o._$AI(e,o,t),t+=o.strings.length-2):o._$AI(e[t])),t++}}class L{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,o,r){this.type=2,this._$AH=E,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=o,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return void 0!==t&&11===e?.nodeType&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=H(this,e,t),p(e)?e===E||null==e||""===e?(this._$AH!==E&&this._$AR(),this._$AH=E):e!==this._$AH&&e!==S&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):b(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==E&&p(this._$AH)?this._$AA.nextSibling.data=e:this.T(u.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:o}=e,r="number"==typeof o?this._$AC(e):(void 0===o.el&&(o.el=U.createElement(C(o.h,o.h[0]),this.options)),o);if(this._$AH?._$AD===r)this._$AH.p(t);else{const e=new P(r,this),o=e.u(this.options);e.p(t),this.T(o),this._$AH=e}}_$AC(e){let t=M.get(e.strings);return void 0===t&&M.set(e.strings,t=new U(e)),t}k(e){g(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let o,r=0;for(const n of e)r===t.length?t.push(o=new L(this.O(h()),this.O(h()),this,this.options)):o=t[r],o._$AI(n),r++;r<t.length&&(this._$AR(o&&o._$AB.nextSibling,r),t.length=r)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){const t=n(e).nextSibling;n(e).remove(),e=t}}setConnected(e){void 0===this._$AM&&(this._$Cv=e,this._$AP?.(e))}}class B{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,o,r,n){this.type=1,this._$AH=E,this._$AN=void 0,this.element=e,this.name=t,this._$AM=r,this.options=n,o.length>2||""!==o[0]||""!==o[1]?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=E}_$AI(e,t=this,o,r){const n=this.strings;let i=!1;if(void 0===n)e=H(this,e,t,0),i=!p(e)||e!==this._$AH&&e!==S,i&&(this._$AH=e);else{const r=e;let s,a;for(e=n[0],s=0;s<n.length-1;s++)a=H(this,r[o+s],t,s),a===S&&(a=this._$AH[s]),i||=!p(a)||a!==this._$AH[s],a===E?e=E:e!==E&&(e+=(a??"")+n[s+1]),this._$AH[s]=a}i&&!r&&this.j(e)}j(e){e===E?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class R extends B{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===E?void 0:e}}class T extends B{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==E)}}class q extends B{constructor(e,t,o,r,n){super(e,t,o,r,n),this.type=5}_$AI(e,t=this){if((e=H(this,e,t,0)??E)===S)return;const o=this._$AH,r=e===E&&o!==E||e.capture!==o.capture||e.once!==o.once||e.passive!==o.passive,n=e!==E&&(o===E||r);r&&this.element.removeEventListener(this.name,this,o),n&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class j{constructor(e,t,o){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=o}get _$AU(){return this._$AM._$AU}_$AI(e){H(this,e)}}const D=r.litHtmlPolyfillSupport;D?.(U,L),(r.litHtmlVersions??=[]).push("3.3.2");const N=(e,t,o)=>{const r=o?.renderBefore??t;let n=r._$litPart$;if(void 0===n){const e=o?.renderBefore??null;r._$litPart$=n=new L(t.insertBefore(h(),e),e,void 0,o??{})}return n._$AI(e),n}},1413(e,t,o){o.d(t,{J:()=>r.J});var r=o(4765)},6161(e,t,o){o.d(t,{AH:()=>r.AH,WF:()=>r.WF,qy:()=>r.qy});o(8760),o(6752);var r=o(5228)}},o={};function r(e){var n=o[e];if(void 0!==n)return n.exports;var i=o[e]={id:e,loaded:!1,exports:{}};return t[e](i,i.exports,r),i.loaded=!0,i.exports}r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n={};r.d(n,{Y:()=>i.Y});var i=r(225);const s="solid-ui-header";customElements.get(s)||customElements.define(s,i.Y);const a=n.Y;export{a as Header};
1124
+ const r=globalThis,n=e=>e,i=r.trustedTypes,s=i?i.createPolicy("lit-html",{createHTML:e=>e}):void 0,a="$lit$",l=`lit$${Math.random().toFixed(9).slice(2)}$`,c="?"+l,d=`<${c}>`,u=document,h=()=>u.createComment(""),p=e=>null===e||"object"!=typeof e&&"function"!=typeof e,g=Array.isArray,b=e=>g(e)||"function"==typeof e?.[Symbol.iterator],m="[ \t\n\f\r]",v=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,f=/-->/g,y=/>/g,x=RegExp(`>|${m}(?:([^\\s"'>=/]+)(${m}*=${m}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),$=/'/g,w=/"/g,_=/^(?:script|style|textarea|title)$/i,A=e=>(t,...o)=>({_$litType$:e,strings:t,values:o}),k=A(1),S=(A(2),A(3),Symbol.for("lit-noChange")),E=Symbol.for("lit-nothing"),M=new WeakMap,I=u.createTreeWalker(u,129);function C(e,t){if(!g(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==s?s.createHTML(t):t}const O=(e,t)=>{const o=e.length-1,r=[];let n,i=2===t?"<svg>":3===t?"<math>":"",s=v;for(let t=0;t<o;t++){const o=e[t];let c,u,h=-1,p=0;for(;p<o.length&&(s.lastIndex=p,u=s.exec(o),null!==u);)p=s.lastIndex,s===v?"!--"===u[1]?s=f:void 0!==u[1]?s=y:void 0!==u[2]?(_.test(u[2])&&(n=RegExp("</"+u[2],"g")),s=x):void 0!==u[3]&&(s=x):s===x?">"===u[0]?(s=n??v,h=-1):void 0===u[1]?h=-2:(h=s.lastIndex-u[2].length,c=u[1],s=void 0===u[3]?x:'"'===u[3]?w:$):s===w||s===$?s=x:s===f||s===y?s=v:(s=x,n=void 0);const g=s===x&&e[t+1].startsWith("/>")?" ":"";i+=s===v?o+d:h>=0?(r.push(c),o.slice(0,h)+a+o.slice(h)+l+g):o+l+(-2===h?t:g)}return[C(e,i+(e[o]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),r]};class U{constructor({strings:e,_$litType$:t},o){let r;this.parts=[];let n=0,s=0;const d=e.length-1,u=this.parts,[p,g]=O(e,t);if(this.el=U.createElement(p,o),I.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(r=I.nextNode())&&u.length<d;){if(1===r.nodeType){if(r.hasAttributes())for(const e of r.getAttributeNames())if(e.endsWith(a)){const t=g[s++],o=r.getAttribute(e).split(l),i=/([.?@])?(.*)/.exec(t);u.push({type:1,index:n,name:i[2],strings:o,ctor:"."===i[1]?R:"?"===i[1]?T:"@"===i[1]?q:B}),r.removeAttribute(e)}else e.startsWith(l)&&(u.push({type:6,index:n}),r.removeAttribute(e));if(_.test(r.tagName)){const e=r.textContent.split(l),t=e.length-1;if(t>0){r.textContent=i?i.emptyScript:"";for(let o=0;o<t;o++)r.append(e[o],h()),I.nextNode(),u.push({type:2,index:++n});r.append(e[t],h())}}}else if(8===r.nodeType)if(r.data===c)u.push({type:2,index:n});else{let e=-1;for(;-1!==(e=r.data.indexOf(l,e+1));)u.push({type:7,index:n}),e+=l.length-1}n++}}static createElement(e,t){const o=u.createElement("template");return o.innerHTML=e,o}}function H(e,t,o=e,r){if(t===S)return t;let n=void 0!==r?o._$Co?.[r]:o._$Cl;const i=p(t)?void 0:t._$litDirective$;return n?.constructor!==i&&(n?._$AO?.(!1),void 0===i?n=void 0:(n=new i(e),n._$AT(e,o,r)),void 0!==r?(o._$Co??=[])[r]=n:o._$Cl=n),void 0!==n&&(t=H(e,n._$AS(e,t.values),n,r)),t}class P{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:o}=this._$AD,r=(e?.creationScope??u).importNode(t,!0);I.currentNode=r;let n=I.nextNode(),i=0,s=0,a=o[0];for(;void 0!==a;){if(i===a.index){let t;2===a.type?t=new L(n,n.nextSibling,this,e):1===a.type?t=new a.ctor(n,a.name,a.strings,this,e):6===a.type&&(t=new j(n,this,e)),this._$AV.push(t),a=o[++s]}i!==a?.index&&(n=I.nextNode(),i++)}return I.currentNode=u,r}p(e){let t=0;for(const o of this._$AV)void 0!==o&&(void 0!==o.strings?(o._$AI(e,o,t),t+=o.strings.length-2):o._$AI(e[t])),t++}}class L{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,o,r){this.type=2,this._$AH=E,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=o,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return void 0!==t&&11===e?.nodeType&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=H(this,e,t),p(e)?e===E||null==e||""===e?(this._$AH!==E&&this._$AR(),this._$AH=E):e!==this._$AH&&e!==S&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):b(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==E&&p(this._$AH)?this._$AA.nextSibling.data=e:this.T(u.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:o}=e,r="number"==typeof o?this._$AC(e):(void 0===o.el&&(o.el=U.createElement(C(o.h,o.h[0]),this.options)),o);if(this._$AH?._$AD===r)this._$AH.p(t);else{const e=new P(r,this),o=e.u(this.options);e.p(t),this.T(o),this._$AH=e}}_$AC(e){let t=M.get(e.strings);return void 0===t&&M.set(e.strings,t=new U(e)),t}k(e){g(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let o,r=0;for(const n of e)r===t.length?t.push(o=new L(this.O(h()),this.O(h()),this,this.options)):o=t[r],o._$AI(n),r++;r<t.length&&(this._$AR(o&&o._$AB.nextSibling,r),t.length=r)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){const t=n(e).nextSibling;n(e).remove(),e=t}}setConnected(e){void 0===this._$AM&&(this._$Cv=e,this._$AP?.(e))}}class B{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,o,r,n){this.type=1,this._$AH=E,this._$AN=void 0,this.element=e,this.name=t,this._$AM=r,this.options=n,o.length>2||""!==o[0]||""!==o[1]?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=E}_$AI(e,t=this,o,r){const n=this.strings;let i=!1;if(void 0===n)e=H(this,e,t,0),i=!p(e)||e!==this._$AH&&e!==S,i&&(this._$AH=e);else{const r=e;let s,a;for(e=n[0],s=0;s<n.length-1;s++)a=H(this,r[o+s],t,s),a===S&&(a=this._$AH[s]),i||=!p(a)||a!==this._$AH[s],a===E?e=E:e!==E&&(e+=(a??"")+n[s+1]),this._$AH[s]=a}i&&!r&&this.j(e)}j(e){e===E?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class R extends B{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===E?void 0:e}}class T extends B{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==E)}}class q extends B{constructor(e,t,o,r,n){super(e,t,o,r,n),this.type=5}_$AI(e,t=this){if((e=H(this,e,t,0)??E)===S)return;const o=this._$AH,r=e===E&&o!==E||e.capture!==o.capture||e.once!==o.once||e.passive!==o.passive,n=e!==E&&(o===E||r);r&&this.element.removeEventListener(this.name,this,o),n&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class j{constructor(e,t,o){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=o}get _$AU(){return this._$AM._$AU}_$AI(e){H(this,e)}}const D=r.litHtmlPolyfillSupport;D?.(U,L),(r.litHtmlVersions??=[]).push("3.3.2");const N=(e,t,o)=>{const r=o?.renderBefore??t;let n=r._$litPart$;if(void 0===n){const e=o?.renderBefore??null;r._$litPart$=n=new L(t.insertBefore(h(),e),e,void 0,o??{})}return n._$AI(e),n}},1413(e,t,o){o.d(t,{J:()=>r.J});var r=o(4765)},6161(e,t,o){o.d(t,{AH:()=>r.AH,WF:()=>r.WF,qy:()=>r.qy});o(8760),o(6752);var r=o(5228)}},o={};function r(e){var n=o[e];if(void 0!==n)return n.exports;var i=o[e]={id:e,loaded:!1,exports:{}};return t[e](i,i.exports,r),i.loaded=!0,i.exports}r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n={};r.d(n,{Y:()=>i.Y});var i=r(1166);const s="solid-ui-header";customElements.get(s)||customElements.define(s,i.Y);const a=n.Y;export{a as Header};
1083
1125
  //# sourceMappingURL=index.esm.min.js.map