solid-ui 3.1.3-1 → 3.1.3-3

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 (881) hide show
  1. package/README.md +4 -4
  2. package/dist/chunks/DialogProvider-BbWGIFN5.js +211 -0
  3. package/dist/chunks/DialogProvider-BbWGIFN5.js.map +1 -0
  4. package/dist/chunks/account-BUAN8dcJ.js +279 -0
  5. package/dist/chunks/account-BUAN8dcJ.js.map +1 -0
  6. package/dist/chunks/auth-C5d3nG1T.js +410 -0
  7. package/dist/chunks/auth-C5d3nG1T.js.map +1 -0
  8. package/dist/chunks/avatar-CsuCQCRu.js +223 -0
  9. package/dist/chunks/avatar-CsuCQCRu.js.map +1 -0
  10. package/dist/chunks/button-GHRF3psH.js +282 -0
  11. package/dist/chunks/button-GHRF3psH.js.map +1 -0
  12. package/dist/chunks/close-dialog-qpl1X44Q.js +14 -0
  13. package/dist/chunks/close-dialog-qpl1X44Q.js.map +1 -0
  14. package/dist/chunks/combobox-eju-wypA.js +310 -0
  15. package/dist/chunks/combobox-eju-wypA.js.map +1 -0
  16. package/dist/chunks/combobox-option-CW1ZwMC7.js +195 -0
  17. package/dist/chunks/combobox-option-CW1ZwMC7.js.map +1 -0
  18. package/dist/chunks/components-Dlw2zOvI.js +60 -0
  19. package/dist/chunks/components-Dlw2zOvI.js.map +1 -0
  20. package/dist/chunks/consume-BefsVEGX.js +49 -0
  21. package/dist/chunks/consume-BefsVEGX.js.map +1 -0
  22. package/dist/chunks/context-ChcZyr30.js +7 -0
  23. package/dist/chunks/context-ChcZyr30.js.map +1 -0
  24. package/dist/chunks/context-ImtIQIYP.js +7 -0
  25. package/dist/chunks/context-ImtIQIYP.js.map +1 -0
  26. package/dist/chunks/create-context-IPEkU7ze.js +18 -0
  27. package/dist/chunks/create-context-IPEkU7ze.js.map +1 -0
  28. package/dist/chunks/decorators-CJJL4XBH.js +91 -0
  29. package/dist/chunks/decorators-CJJL4XBH.js.map +1 -0
  30. package/dist/chunks/dialog-DmDA1aY8.js +272 -0
  31. package/dist/chunks/dialog-DmDA1aY8.js.map +1 -0
  32. package/dist/chunks/dialog-content-C8VhHg5G.js +173 -0
  33. package/dist/chunks/dialog-content-C8VhHg5G.js.map +1 -0
  34. package/dist/chunks/dialog-footer-CtHFoTZS.js +173 -0
  35. package/dist/chunks/dialog-footer-CtHFoTZS.js.map +1 -0
  36. package/dist/chunks/dialog-header-D9jjujFf.js +173 -0
  37. package/dist/chunks/dialog-header-D9jjujFf.js.map +1 -0
  38. package/dist/chunks/dialogs-root-C4igEIk0.js +209 -0
  39. package/dist/chunks/dialogs-root-C4igEIk0.js.map +1 -0
  40. package/dist/chunks/guard-CiRf-2tc.js +200 -0
  41. package/dist/chunks/guard-CiRf-2tc.js.map +1 -0
  42. package/dist/chunks/header-hptVqz21.js +1486 -0
  43. package/dist/chunks/header-hptVqz21.js.map +1 -0
  44. package/dist/chunks/login-button-D3M_rY5D.js +208 -0
  45. package/dist/chunks/login-button-D3M_rY5D.js.map +1 -0
  46. package/dist/chunks/logout-button-ChD3v11m.js +208 -0
  47. package/dist/chunks/logout-button-ChD3v11m.js.map +1 -0
  48. package/dist/chunks/menu-DCsLCND4.js +251 -0
  49. package/dist/chunks/menu-DCsLCND4.js.map +1 -0
  50. package/dist/chunks/menu-item-DoTy3MUu.js +219 -0
  51. package/dist/chunks/menu-item-DoTy3MUu.js.map +1 -0
  52. package/dist/chunks/menu-items-DKKcQrb6.js +218 -0
  53. package/dist/chunks/menu-items-DKKcQrb6.js.map +1 -0
  54. package/dist/chunks/provide-CqCWUUfi.js +113 -0
  55. package/dist/chunks/provide-CqCWUUfi.js.map +1 -0
  56. package/dist/chunks/provider-C7cgeyP2.js +214 -0
  57. package/dist/chunks/provider-C7cgeyP2.js.map +1 -0
  58. package/dist/chunks/select-bVnWqF4c.js +560 -0
  59. package/dist/chunks/select-bVnWqF4c.js.map +1 -0
  60. package/dist/chunks/show-dialog-eEW5yRBv.js +14 -0
  61. package/dist/chunks/show-dialog-eEW5yRBv.js.map +1 -0
  62. package/dist/chunks/signup-button-BE5-JSwt.js +208 -0
  63. package/dist/chunks/signup-button-BE5-JSwt.js.map +1 -0
  64. package/dist/chunks/src-Dk9GB6DL.js +15965 -0
  65. package/dist/chunks/src-Dk9GB6DL.js.map +1 -0
  66. package/dist/components/account/Account.cjs.js +31 -0
  67. package/dist/components/account/Account.cjs.js.map +1 -0
  68. package/dist/components/account/Account.d.ts +13 -0
  69. package/dist/components/account/Account.d.ts.map +1 -0
  70. package/dist/components/account/Account.esm.js +259 -0
  71. package/dist/components/account/Account.esm.js.map +1 -0
  72. package/dist/components/account/Account.stories.d.ts +33 -0
  73. package/dist/components/account/Account.stories.d.ts.map +1 -0
  74. package/dist/components/account/Account.styles.cjs.js +2 -0
  75. package/dist/components/account/Account.styles.cjs.js.map +1 -0
  76. package/dist/components/account/Account.styles.esm.js +7 -0
  77. package/dist/components/account/Account.styles.esm.js.map +1 -0
  78. package/dist/components/account/index.cjs.js +2 -0
  79. package/dist/components/account/index.cjs.js.map +1 -0
  80. package/dist/components/account/index.d.ts.map +1 -0
  81. package/dist/components/account/index.esm.js +7 -0
  82. package/dist/components/account/index.esm.js.map +1 -0
  83. package/dist/components/account.js +2 -0
  84. package/dist/components/avatar/Avatar.cjs.js +6 -0
  85. package/dist/components/avatar/Avatar.cjs.js.map +1 -0
  86. package/dist/components/avatar/Avatar.d.ts +10 -0
  87. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  88. package/dist/components/avatar/Avatar.esm.js +217 -0
  89. package/dist/components/avatar/Avatar.esm.js.map +1 -0
  90. package/dist/components/avatar/Avatar.stories.d.ts +44 -0
  91. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -0
  92. package/dist/components/avatar/Avatar.styles.cjs.js +2 -0
  93. package/dist/components/avatar/Avatar.styles.cjs.js.map +1 -0
  94. package/dist/components/avatar/Avatar.styles.esm.js +7 -0
  95. package/dist/components/avatar/Avatar.styles.esm.js.map +1 -0
  96. package/dist/components/avatar/index.cjs.js +2 -0
  97. package/dist/components/avatar/index.cjs.js.map +1 -0
  98. package/dist/components/avatar/index.d.ts.map +1 -0
  99. package/dist/components/avatar/index.esm.js +7 -0
  100. package/dist/components/avatar/index.esm.js.map +1 -0
  101. package/dist/components/avatar.js +2 -0
  102. package/dist/components/button/Button.cjs.js +10 -0
  103. package/dist/components/button/Button.cjs.js.map +1 -0
  104. package/dist/components/button/Button.d.ts +14 -0
  105. package/dist/components/button/Button.d.ts.map +1 -0
  106. package/dist/components/button/Button.esm.js +275 -0
  107. package/dist/components/button/Button.esm.js.map +1 -0
  108. package/dist/components/button/Button.stories.d.ts +224 -0
  109. package/dist/components/button/Button.stories.d.ts.map +1 -0
  110. package/dist/components/button/Button.styles.cjs.js +2 -0
  111. package/dist/components/button/Button.styles.cjs.js.map +1 -0
  112. package/dist/components/button/Button.styles.esm.js +7 -0
  113. package/dist/components/button/Button.styles.esm.js.map +1 -0
  114. package/dist/components/button/index.cjs.js +2 -1
  115. package/dist/components/button/index.cjs.js.map +1 -0
  116. package/dist/components/button/index.d.ts +3 -1
  117. package/dist/components/button/index.d.ts.map +1 -1
  118. package/dist/components/button/index.esm.js +7 -3
  119. package/dist/components/button/index.esm.js.map +1 -0
  120. package/dist/components/button.js +2 -2
  121. package/dist/components/combobox/Combobox.cjs.js +18 -0
  122. package/dist/components/combobox/Combobox.cjs.js.map +1 -0
  123. package/dist/components/combobox/Combobox.d.ts +19 -0
  124. package/dist/components/combobox/Combobox.d.ts.map +1 -0
  125. package/dist/components/combobox/Combobox.esm.js +304 -0
  126. package/dist/components/combobox/Combobox.esm.js.map +1 -0
  127. package/dist/components/combobox/Combobox.stories.d.ts +27 -0
  128. package/dist/components/combobox/Combobox.stories.d.ts.map +1 -0
  129. package/dist/components/combobox/Combobox.styles.cjs.js +2 -0
  130. package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -0
  131. package/dist/components/combobox/Combobox.styles.esm.js +7 -0
  132. package/dist/components/combobox/Combobox.styles.esm.js.map +1 -0
  133. package/dist/components/combobox/index.cjs.js +2 -1
  134. package/dist/components/combobox/index.cjs.js.map +1 -0
  135. package/dist/components/combobox/index.d.ts +3 -1
  136. package/dist/components/combobox/index.d.ts.map +1 -1
  137. package/dist/components/combobox/index.esm.js +7 -3
  138. package/dist/components/combobox/index.esm.js.map +1 -0
  139. package/dist/components/combobox-option/ComboboxOption.cjs.js +2 -0
  140. package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -0
  141. package/dist/components/combobox-option/ComboboxOption.d.ts +6 -0
  142. package/dist/components/combobox-option/ComboboxOption.d.ts.map +1 -0
  143. package/dist/components/combobox-option/ComboboxOption.esm.js +194 -0
  144. package/dist/components/combobox-option/ComboboxOption.esm.js.map +1 -0
  145. package/dist/components/combobox-option/index.cjs.js +2 -0
  146. package/dist/components/combobox-option/index.cjs.js.map +1 -0
  147. package/dist/components/combobox-option/index.d.ts.map +1 -0
  148. package/dist/components/combobox-option/index.esm.js +7 -0
  149. package/dist/components/combobox-option/index.esm.js.map +1 -0
  150. package/dist/components/combobox-option.js +2 -0
  151. package/dist/components/combobox.js +2 -2
  152. package/dist/components/dialog/Dialog.cjs.js +17 -0
  153. package/dist/components/dialog/Dialog.cjs.js.map +1 -0
  154. package/dist/components/dialog/Dialog.d.ts +11 -0
  155. package/dist/components/dialog/Dialog.d.ts.map +1 -0
  156. package/dist/components/dialog/Dialog.esm.js +265 -0
  157. package/dist/components/dialog/Dialog.esm.js.map +1 -0
  158. package/dist/components/dialog/Dialog.styles.cjs.js +2 -0
  159. package/dist/components/dialog/Dialog.styles.cjs.js.map +1 -0
  160. package/dist/components/dialog/Dialog.styles.esm.js +7 -0
  161. package/dist/components/dialog/Dialog.styles.esm.js.map +1 -0
  162. package/dist/components/dialog/index.cjs.js +2 -0
  163. package/dist/components/dialog/index.cjs.js.map +1 -0
  164. package/dist/components/dialog/index.d.ts.map +1 -0
  165. package/dist/components/dialog/index.esm.js +7 -0
  166. package/dist/components/dialog/index.esm.js.map +1 -0
  167. package/dist/components/dialog-content/DialogContent.cjs.js +2 -0
  168. package/dist/components/dialog-content/DialogContent.cjs.js.map +1 -0
  169. package/dist/components/dialog-content/DialogContent.d.ts +5 -0
  170. package/dist/components/dialog-content/DialogContent.d.ts.map +1 -0
  171. package/dist/components/dialog-content/DialogContent.esm.js +172 -0
  172. package/dist/components/dialog-content/DialogContent.esm.js.map +1 -0
  173. package/dist/components/dialog-content/DialogContent.styles.cjs.js +2 -0
  174. package/dist/components/dialog-content/DialogContent.styles.cjs.js.map +1 -0
  175. package/dist/components/dialog-content/DialogContent.styles.esm.js +7 -0
  176. package/dist/components/dialog-content/DialogContent.styles.esm.js.map +1 -0
  177. package/dist/components/dialog-content/index.cjs.js +2 -0
  178. package/dist/components/dialog-content/index.cjs.js.map +1 -0
  179. package/dist/components/dialog-content/index.d.ts.map +1 -0
  180. package/dist/components/dialog-content/index.esm.js +7 -0
  181. package/dist/components/dialog-content/index.esm.js.map +1 -0
  182. package/dist/components/dialog-content.js +2 -0
  183. package/dist/components/dialog-footer/DialogFooter.cjs.js +2 -0
  184. package/dist/components/dialog-footer/DialogFooter.cjs.js.map +1 -0
  185. package/dist/components/dialog-footer/DialogFooter.d.ts +5 -0
  186. package/dist/components/dialog-footer/DialogFooter.d.ts.map +1 -0
  187. package/dist/components/dialog-footer/DialogFooter.esm.js +172 -0
  188. package/dist/components/dialog-footer/DialogFooter.esm.js.map +1 -0
  189. package/dist/components/dialog-footer/DialogFooter.styles.cjs.js +2 -0
  190. package/dist/components/dialog-footer/DialogFooter.styles.cjs.js.map +1 -0
  191. package/dist/components/dialog-footer/DialogFooter.styles.esm.js +7 -0
  192. package/dist/components/dialog-footer/DialogFooter.styles.esm.js.map +1 -0
  193. package/dist/components/dialog-footer/index.cjs.js +2 -0
  194. package/dist/components/dialog-footer/index.cjs.js.map +1 -0
  195. package/dist/components/dialog-footer/index.d.ts.map +1 -0
  196. package/dist/components/dialog-footer/index.esm.js +7 -0
  197. package/dist/components/dialog-footer/index.esm.js.map +1 -0
  198. package/dist/components/dialog-footer.js +2 -0
  199. package/dist/components/dialog-header/DialogHeader.cjs.js +2 -0
  200. package/dist/components/dialog-header/DialogHeader.cjs.js.map +1 -0
  201. package/dist/components/dialog-header/DialogHeader.d.ts +5 -0
  202. package/dist/components/dialog-header/DialogHeader.d.ts.map +1 -0
  203. package/dist/components/dialog-header/DialogHeader.esm.js +172 -0
  204. package/dist/components/dialog-header/DialogHeader.esm.js.map +1 -0
  205. package/dist/components/dialog-header/DialogHeader.styles.cjs.js +2 -0
  206. package/dist/components/dialog-header/DialogHeader.styles.cjs.js.map +1 -0
  207. package/dist/components/dialog-header/DialogHeader.styles.esm.js +7 -0
  208. package/dist/components/dialog-header/DialogHeader.styles.esm.js.map +1 -0
  209. package/dist/components/dialog-header/index.cjs.js +2 -0
  210. package/dist/components/dialog-header/index.cjs.js.map +1 -0
  211. package/dist/components/dialog-header/index.d.ts.map +1 -0
  212. package/dist/components/dialog-header/index.esm.js +7 -0
  213. package/dist/components/dialog-header/index.esm.js.map +1 -0
  214. package/dist/components/dialog-header.js +2 -0
  215. package/dist/components/dialog-provider/DialogProvider.cjs.js +2 -0
  216. package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -0
  217. package/dist/components/dialog-provider/DialogProvider.d.ts +8 -0
  218. package/dist/components/dialog-provider/DialogProvider.d.ts.map +1 -0
  219. package/dist/components/dialog-provider/DialogProvider.esm.js +213 -0
  220. package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -0
  221. package/dist/components/dialog-provider/index.cjs.js +2 -0
  222. package/dist/components/dialog-provider/index.cjs.js.map +1 -0
  223. package/dist/components/dialog-provider/index.d.ts.map +1 -0
  224. package/dist/components/dialog-provider/index.esm.js +7 -0
  225. package/dist/components/dialog-provider/index.esm.js.map +1 -0
  226. package/dist/components/dialog-provider.js +7 -0
  227. package/dist/components/dialog-provider.js.map +1 -0
  228. package/dist/components/dialog.js +2 -0
  229. package/dist/components/dialogs-root/DialogsRoot.cjs.js +9 -0
  230. package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -0
  231. package/dist/components/dialogs-root/DialogsRoot.d.ts +7 -0
  232. package/dist/components/dialogs-root/DialogsRoot.d.ts.map +1 -0
  233. package/dist/components/dialogs-root/DialogsRoot.esm.js +208 -0
  234. package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -0
  235. package/dist/components/dialogs-root/index.cjs.js +2 -0
  236. package/dist/components/dialogs-root/index.cjs.js.map +1 -0
  237. package/dist/components/dialogs-root/index.d.ts.map +1 -0
  238. package/dist/components/dialogs-root/index.esm.js +7 -0
  239. package/dist/components/dialogs-root/index.esm.js.map +1 -0
  240. package/dist/components/dialogs-root.js +2 -0
  241. package/dist/components/guard/Guard.cjs.js +6 -0
  242. package/dist/components/guard/Guard.cjs.js.map +1 -0
  243. package/dist/components/guard/Guard.d.ts +6 -0
  244. package/dist/components/guard/Guard.d.ts.map +1 -0
  245. package/dist/components/guard/Guard.esm.js +200 -0
  246. package/dist/components/guard/Guard.esm.js.map +1 -0
  247. package/dist/components/guard/Guard.stories.d.ts +33 -0
  248. package/dist/components/guard/Guard.stories.d.ts.map +1 -0
  249. package/dist/components/guard/index.cjs.js +2 -0
  250. package/dist/components/guard/index.cjs.js.map +1 -0
  251. package/dist/components/guard/index.d.ts.map +1 -0
  252. package/dist/components/guard/index.esm.js +7 -0
  253. package/dist/components/guard/index.esm.js.map +1 -0
  254. package/dist/components/guard.js +2 -0
  255. package/dist/components/header.js +1 -1
  256. package/dist/components/index.cjs.js +1 -1
  257. package/dist/components/index.esm.js +18 -0
  258. package/dist/components/login-button/LoginButton.cjs.js +10 -0
  259. package/dist/components/login-button/LoginButton.cjs.js.map +1 -0
  260. package/dist/components/login-button/LoginButton.d.ts +7 -0
  261. package/dist/components/login-button/LoginButton.d.ts.map +1 -0
  262. package/dist/components/login-button/LoginButton.esm.js +208 -0
  263. package/dist/components/login-button/LoginButton.esm.js.map +1 -0
  264. package/dist/components/login-button/LoginButton.stories.d.ts +14 -0
  265. package/dist/components/login-button/LoginButton.stories.d.ts.map +1 -0
  266. package/dist/components/login-button/index.cjs.js +2 -0
  267. package/dist/components/login-button/index.cjs.js.map +1 -0
  268. package/dist/components/login-button/index.d.ts.map +1 -0
  269. package/dist/components/login-button/index.esm.js +7 -0
  270. package/dist/components/login-button/index.esm.js.map +1 -0
  271. package/dist/components/login-button.js +2 -0
  272. package/dist/components/login-modal/LoginModal.cjs.js +30 -0
  273. package/dist/components/login-modal/LoginModal.cjs.js.map +1 -0
  274. package/dist/components/login-modal/LoginModal.d.ts +15 -0
  275. package/dist/components/login-modal/LoginModal.d.ts.map +1 -0
  276. package/dist/components/login-modal/LoginModal.esm.js +328 -0
  277. package/dist/components/login-modal/LoginModal.esm.js.map +1 -0
  278. package/dist/components/login-modal/LoginModal.stories.d.ts +14 -0
  279. package/dist/components/login-modal/LoginModal.stories.d.ts.map +1 -0
  280. package/dist/components/login-modal/LoginModal.styles.cjs.js +2 -0
  281. package/dist/components/login-modal/LoginModal.styles.cjs.js.map +1 -0
  282. package/dist/components/login-modal/LoginModal.styles.esm.js +7 -0
  283. package/dist/components/login-modal/LoginModal.styles.esm.js.map +1 -0
  284. package/dist/components/login-modal/index.cjs.js +2 -0
  285. package/dist/components/login-modal/index.cjs.js.map +1 -0
  286. package/dist/components/login-modal/index.d.ts.map +1 -0
  287. package/dist/components/login-modal/index.esm.js +7 -0
  288. package/dist/components/login-modal/index.esm.js.map +1 -0
  289. package/dist/components/login-modal.js +2 -0
  290. package/dist/components/logout-button/LogoutButton.cjs.js +10 -0
  291. package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -0
  292. package/dist/components/logout-button/LogoutButton.d.ts +7 -0
  293. package/dist/components/logout-button/LogoutButton.d.ts.map +1 -0
  294. package/dist/components/logout-button/LogoutButton.esm.js +208 -0
  295. package/dist/components/logout-button/LogoutButton.esm.js.map +1 -0
  296. package/dist/components/logout-button/LogoutButton.stories.d.ts +14 -0
  297. package/dist/components/logout-button/LogoutButton.stories.d.ts.map +1 -0
  298. package/dist/components/logout-button/index.cjs.js +2 -0
  299. package/dist/components/logout-button/index.cjs.js.map +1 -0
  300. package/dist/components/logout-button/index.d.ts.map +1 -0
  301. package/dist/components/logout-button/index.esm.js +7 -0
  302. package/dist/components/logout-button/index.esm.js.map +1 -0
  303. package/dist/components/logout-button.js +2 -0
  304. package/dist/components/menu/Menu.cjs.js +9 -0
  305. package/dist/components/menu/Menu.cjs.js.map +1 -0
  306. package/dist/components/menu/Menu.d.ts +13 -0
  307. package/dist/components/menu/Menu.d.ts.map +1 -0
  308. package/dist/components/menu/Menu.esm.js +251 -0
  309. package/dist/components/menu/Menu.esm.js.map +1 -0
  310. package/dist/components/menu/Menu.stories.d.ts +8 -0
  311. package/dist/components/menu/Menu.stories.d.ts.map +1 -0
  312. package/dist/components/menu/index.cjs.js +2 -0
  313. package/dist/components/menu/index.cjs.js.map +1 -0
  314. package/dist/components/menu/index.d.ts.map +1 -0
  315. package/dist/components/menu/index.esm.js +7 -0
  316. package/dist/components/menu/index.esm.js.map +1 -0
  317. package/dist/components/menu-item/MenuItem.cjs.js +14 -0
  318. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -0
  319. package/dist/components/menu-item/MenuItem.d.ts +7 -0
  320. package/dist/components/menu-item/MenuItem.d.ts.map +1 -0
  321. package/dist/components/menu-item/MenuItem.esm.js +219 -0
  322. package/dist/components/menu-item/MenuItem.esm.js.map +1 -0
  323. package/dist/components/menu-item/MenuItem.styles.cjs.js +2 -0
  324. package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -0
  325. package/dist/components/menu-item/MenuItem.styles.esm.js +7 -0
  326. package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -0
  327. package/dist/components/menu-item/index.cjs.js +2 -0
  328. package/dist/components/menu-item/index.cjs.js.map +1 -0
  329. package/dist/components/menu-item/index.d.ts.map +1 -0
  330. package/dist/components/menu-item/index.esm.js +7 -0
  331. package/dist/components/menu-item/index.esm.js.map +1 -0
  332. package/dist/components/menu-item.js +2 -0
  333. package/dist/components/menu-items/MenuItems.cjs.js +6 -0
  334. package/dist/components/menu-items/MenuItems.cjs.js.map +1 -0
  335. package/dist/components/menu-items/MenuItems.d.ts +8 -0
  336. package/dist/components/menu-items/MenuItems.d.ts.map +1 -0
  337. package/dist/components/menu-items/MenuItems.esm.js +218 -0
  338. package/dist/components/menu-items/MenuItems.esm.js.map +1 -0
  339. package/dist/components/menu-items/MenuItems.styles.cjs.js +2 -0
  340. package/dist/components/menu-items/MenuItems.styles.cjs.js.map +1 -0
  341. package/dist/components/menu-items/MenuItems.styles.esm.js +7 -0
  342. package/dist/components/menu-items/MenuItems.styles.esm.js.map +1 -0
  343. package/dist/components/menu-items/index.cjs.js +2 -0
  344. package/dist/components/menu-items/index.cjs.js.map +1 -0
  345. package/dist/components/menu-items/index.d.ts.map +1 -0
  346. package/dist/components/menu-items/index.esm.js +7 -0
  347. package/dist/components/menu-items/index.esm.js.map +1 -0
  348. package/dist/components/menu-items.js +2 -0
  349. package/dist/components/menu.js +2 -0
  350. package/dist/components/provider/Provider.cjs.js +5 -0
  351. package/dist/components/provider/Provider.cjs.js.map +1 -0
  352. package/dist/components/provider/Provider.d.ts +8 -0
  353. package/dist/components/provider/Provider.d.ts.map +1 -0
  354. package/dist/components/provider/Provider.esm.js +215 -0
  355. package/dist/components/provider/Provider.esm.js.map +1 -0
  356. package/dist/components/provider/index.cjs.js +2 -0
  357. package/dist/components/provider/index.cjs.js.map +1 -0
  358. package/dist/components/provider/index.d.ts.map +1 -0
  359. package/dist/components/provider/index.esm.js +7 -0
  360. package/dist/components/provider/index.esm.js.map +1 -0
  361. package/dist/components/provider.js +2 -0
  362. package/dist/components/select.js +1 -1
  363. package/dist/components/signup-button/SignupButton.cjs.js +10 -0
  364. package/dist/components/signup-button/SignupButton.cjs.js.map +1 -0
  365. package/dist/components/signup-button/SignupButton.d.ts +7 -0
  366. package/dist/components/signup-button/SignupButton.d.ts.map +1 -0
  367. package/dist/components/signup-button/SignupButton.esm.js +208 -0
  368. package/dist/components/signup-button/SignupButton.esm.js.map +1 -0
  369. package/dist/components/signup-button/SignupButton.stories.d.ts +14 -0
  370. package/dist/components/signup-button/SignupButton.stories.d.ts.map +1 -0
  371. package/dist/components/signup-button/index.cjs.js +2 -0
  372. package/dist/components/signup-button/index.cjs.js.map +1 -0
  373. package/dist/components/signup-button/index.d.ts.map +1 -0
  374. package/dist/components/signup-button/index.esm.js +7 -0
  375. package/dist/components/signup-button/index.esm.js.map +1 -0
  376. package/dist/components/signup-button.js +2 -0
  377. package/dist/components.js +22 -4
  378. package/dist/index.cjs.js +1 -1
  379. package/dist/index.cjs.js.map +1 -1
  380. package/dist/index.d.ts +4 -0
  381. package/dist/index.d.ts.map +1 -1
  382. package/dist/index.esm.js +19 -2
  383. package/dist/index.esm.js.map +1 -1
  384. package/dist/index.js +8 -2
  385. package/dist/lib/auth/Account.cjs.js +2 -0
  386. package/dist/lib/auth/Account.cjs.js.map +1 -0
  387. package/dist/lib/auth/Account.d.ts.map +1 -0
  388. package/dist/lib/auth/Account.esm.js +12 -0
  389. package/dist/lib/auth/Account.esm.js.map +1 -0
  390. package/dist/lib/auth/NoopAuth.cjs.js.map +1 -0
  391. package/dist/lib/auth/NoopAuth.d.ts.map +1 -0
  392. package/dist/lib/auth/NoopAuth.esm.js +22 -0
  393. package/dist/lib/auth/NoopAuth.esm.js.map +1 -0
  394. package/dist/lib/auth/SolidAuth.cjs.js +2 -0
  395. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -0
  396. package/dist/lib/auth/SolidAuth.d.ts +13 -0
  397. package/dist/lib/auth/SolidAuth.d.ts.map +1 -0
  398. package/dist/lib/auth/SolidAuth.esm.js +52 -0
  399. package/dist/lib/auth/SolidAuth.esm.js.map +1 -0
  400. package/dist/lib/auth/context.cjs.js.map +1 -0
  401. package/dist/lib/auth/context.d.ts.map +1 -0
  402. package/dist/lib/auth/context.esm.js +8 -0
  403. package/dist/lib/auth/context.esm.js.map +1 -0
  404. package/dist/lib/auth/index.cjs.js +1 -0
  405. package/dist/lib/auth/index.d.ts +8 -0
  406. package/dist/lib/auth/index.d.ts.map +1 -0
  407. package/dist/lib/auth/index.esm.js +4 -0
  408. package/dist/lib/components/decorators.cjs.js +2 -0
  409. package/dist/lib/components/decorators.cjs.js.map +1 -0
  410. package/dist/lib/components/decorators.d.ts +11 -0
  411. package/dist/lib/components/decorators.d.ts.map +1 -0
  412. package/dist/lib/components/decorators.esm.js +17 -0
  413. package/dist/lib/components/decorators.esm.js.map +1 -0
  414. package/dist/lib/components/ids.cjs.js.map +1 -0
  415. package/dist/lib/components/ids.d.ts.map +1 -0
  416. package/dist/lib/components/ids.esm.js +8 -0
  417. package/dist/lib/components/ids.esm.js.map +1 -0
  418. package/dist/lib/components/index.cjs.js +1 -0
  419. package/dist/lib/components/index.d.ts +4 -0
  420. package/dist/lib/components/index.d.ts.map +1 -0
  421. package/dist/lib/components/index.esm.js +4 -0
  422. package/dist/lib/components/web-component/WebComponent.cjs.js +2 -0
  423. package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -0
  424. package/dist/lib/components/web-component/WebComponent.d.ts +14 -0
  425. package/dist/lib/components/web-component/WebComponent.d.ts.map +1 -0
  426. package/dist/lib/components/web-component/WebComponent.esm.js +42 -0
  427. package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -0
  428. package/dist/lib/components/web-component/WebComponent.styles.cjs.js +2 -0
  429. package/dist/lib/components/web-component/WebComponent.styles.cjs.js.map +1 -0
  430. package/dist/lib/components/web-component/WebComponent.styles.esm.js +7 -0
  431. package/dist/lib/components/web-component/WebComponent.styles.esm.js.map +1 -0
  432. package/dist/lib/components/web-component/index.cjs.js +1 -0
  433. package/dist/lib/components/web-component/index.d.ts +4 -0
  434. package/dist/lib/components/web-component/index.d.ts.map +1 -0
  435. package/dist/lib/components/web-component/index.esm.js +1 -0
  436. package/dist/lib/dialogs/Dialog.cjs.js +2 -0
  437. package/dist/lib/dialogs/Dialog.cjs.js.map +1 -0
  438. package/dist/lib/dialogs/Dialog.d.ts.map +1 -0
  439. package/dist/lib/dialogs/Dialog.esm.js +21 -0
  440. package/dist/lib/dialogs/Dialog.esm.js.map +1 -0
  441. package/dist/lib/dialogs/context.cjs.js.map +1 -0
  442. package/dist/lib/dialogs/context.d.ts.map +1 -0
  443. package/dist/lib/dialogs/context.esm.js +7 -0
  444. package/dist/lib/dialogs/context.esm.js.map +1 -0
  445. package/dist/lib/dialogs/events/close-dialog.cjs.js +2 -0
  446. package/dist/lib/dialogs/events/close-dialog.cjs.js.map +1 -0
  447. package/dist/lib/dialogs/events/close-dialog.d.ts.map +1 -0
  448. package/dist/lib/dialogs/events/close-dialog.esm.js +15 -0
  449. package/dist/lib/dialogs/events/close-dialog.esm.js.map +1 -0
  450. package/dist/lib/dialogs/events/index.d.ts +3 -0
  451. package/dist/lib/dialogs/events/index.d.ts.map +1 -0
  452. package/dist/lib/dialogs/events/show-dialog.cjs.js +2 -0
  453. package/dist/lib/dialogs/events/show-dialog.cjs.js.map +1 -0
  454. package/dist/lib/dialogs/events/show-dialog.d.ts.map +1 -0
  455. package/dist/lib/dialogs/events/show-dialog.esm.js +15 -0
  456. package/dist/lib/dialogs/events/show-dialog.esm.js.map +1 -0
  457. package/dist/lib/dialogs/helpers.cjs.js +2 -0
  458. package/dist/lib/dialogs/helpers.cjs.js.map +1 -0
  459. package/dist/lib/dialogs/helpers.d.ts +3 -0
  460. package/dist/lib/dialogs/helpers.d.ts.map +1 -0
  461. package/dist/lib/dialogs/helpers.esm.js +11 -0
  462. package/dist/lib/dialogs/helpers.esm.js.map +1 -0
  463. package/dist/lib/dialogs/index.cjs.js +1 -0
  464. package/dist/lib/dialogs/index.d.ts +6 -0
  465. package/dist/lib/dialogs/index.d.ts.map +1 -0
  466. package/dist/lib/dialogs/index.esm.js +5 -0
  467. package/dist/lib/menus/context.cjs.js.map +1 -0
  468. package/dist/lib/menus/context.d.ts.map +1 -0
  469. package/dist/lib/menus/context.esm.js +7 -0
  470. package/dist/lib/menus/context.esm.js.map +1 -0
  471. package/dist/lib/menus/index.cjs.js +1 -0
  472. package/dist/lib/menus/index.d.ts +2 -0
  473. package/dist/lib/menus/index.d.ts.map +1 -0
  474. package/dist/lib/menus/index.esm.js +1 -0
  475. package/dist/loader.js +8 -2
  476. package/dist/solid-ui.js +339 -770
  477. package/dist/solid-ui.js.map +1 -1
  478. package/dist/solid-ui.min.js +339 -770
  479. package/dist/solid-ui.min.js.map +1 -1
  480. package/dist/storybook/auth/StorybookAuth.d.ts +1 -2
  481. package/dist/storybook/auth/StorybookAuth.d.ts.map +1 -1
  482. package/dist/storybook/components/StorybookProvider.d.ts +1 -1
  483. package/dist/storybook/components/StorybookProvider.d.ts.map +1 -1
  484. package/dist/storybook/helpers.d.ts +22 -0
  485. package/dist/storybook/helpers.d.ts.map +1 -0
  486. package/dist/storybook/index.d.ts +3 -21
  487. package/dist/storybook/index.d.ts.map +1 -1
  488. package/dist/storybook/internals.d.ts.map +1 -0
  489. package/dist/theme.css +1 -0
  490. package/dist/theme.css.d.ts +1 -0
  491. package/dist/v2/components/forms/select/Select.cjs.js +3 -3
  492. package/dist/v2/components/forms/select/Select.esm.js +12 -12
  493. package/dist/v2/components/layout/header/Header.cjs.js +1 -1
  494. package/dist/v2/components/layout/header/Header.cjs.js.map +1 -1
  495. package/dist/v2/components/layout/header/Header.d.ts.map +1 -1
  496. package/dist/v2/components/layout/header/Header.esm.js +2 -2
  497. package/dist/v2/components/layout/header/Header.esm.js.map +1 -1
  498. package/package.json +13 -23
  499. package/dist/chunks/button-znE29yDV.js +0 -348
  500. package/dist/chunks/button-znE29yDV.js.map +0 -1
  501. package/dist/chunks/combobox-BAJFfAqV.js +0 -391
  502. package/dist/chunks/combobox-BAJFfAqV.js.map +0 -1
  503. package/dist/chunks/header-DNCcdokw.js +0 -6192
  504. package/dist/chunks/header-DNCcdokw.js.map +0 -1
  505. package/dist/chunks/listboxTemplate-CLsbhnb_.js +0 -171
  506. package/dist/chunks/listboxTemplate-CLsbhnb_.js.map +0 -1
  507. package/dist/chunks/select-CGTwgBk7.js +0 -391
  508. package/dist/chunks/select-CGTwgBk7.js.map +0 -1
  509. package/dist/chunks/src-CagI5kMT.js +0 -15962
  510. package/dist/chunks/src-CagI5kMT.js.map +0 -1
  511. package/dist/design-system/components/account/Account.cjs.js +0 -31
  512. package/dist/design-system/components/account/Account.cjs.js.map +0 -1
  513. package/dist/design-system/components/account/Account.d.ts +0 -13
  514. package/dist/design-system/components/account/Account.d.ts.map +0 -1
  515. package/dist/design-system/components/account/Account.esm.js +0 -257
  516. package/dist/design-system/components/account/Account.esm.js.map +0 -1
  517. package/dist/design-system/components/account/Account.stories.d.ts +0 -33
  518. package/dist/design-system/components/account/Account.stories.d.ts.map +0 -1
  519. package/dist/design-system/components/account/Account.styles.cjs.js +0 -2
  520. package/dist/design-system/components/account/Account.styles.cjs.js.map +0 -1
  521. package/dist/design-system/components/account/Account.styles.esm.js +0 -7
  522. package/dist/design-system/components/account/Account.styles.esm.js.map +0 -1
  523. package/dist/design-system/components/account/index.cjs.js +0 -1
  524. package/dist/design-system/components/account/index.d.ts.map +0 -1
  525. package/dist/design-system/components/account/index.esm.js +0 -1
  526. package/dist/design-system/components/button/Button.cjs.js +0 -10
  527. package/dist/design-system/components/button/Button.cjs.js.map +0 -1
  528. package/dist/design-system/components/button/Button.d.ts +0 -14
  529. package/dist/design-system/components/button/Button.d.ts.map +0 -1
  530. package/dist/design-system/components/button/Button.esm.js +0 -267
  531. package/dist/design-system/components/button/Button.esm.js.map +0 -1
  532. package/dist/design-system/components/button/Button.stories.d.ts +0 -224
  533. package/dist/design-system/components/button/Button.stories.d.ts.map +0 -1
  534. package/dist/design-system/components/button/Button.styles.cjs.js +0 -2
  535. package/dist/design-system/components/button/Button.styles.cjs.js.map +0 -1
  536. package/dist/design-system/components/button/Button.styles.esm.js +0 -7
  537. package/dist/design-system/components/button/Button.styles.esm.js.map +0 -1
  538. package/dist/design-system/components/button/index.cjs.js +0 -1
  539. package/dist/design-system/components/button/index.d.ts +0 -4
  540. package/dist/design-system/components/button/index.d.ts.map +0 -1
  541. package/dist/design-system/components/button/index.esm.js +0 -1
  542. package/dist/design-system/components/combobox/Combobox.cjs.js +0 -18
  543. package/dist/design-system/components/combobox/Combobox.cjs.js.map +0 -1
  544. package/dist/design-system/components/combobox/Combobox.d.ts +0 -19
  545. package/dist/design-system/components/combobox/Combobox.d.ts.map +0 -1
  546. package/dist/design-system/components/combobox/Combobox.esm.js +0 -303
  547. package/dist/design-system/components/combobox/Combobox.esm.js.map +0 -1
  548. package/dist/design-system/components/combobox/Combobox.stories.d.ts +0 -27
  549. package/dist/design-system/components/combobox/Combobox.stories.d.ts.map +0 -1
  550. package/dist/design-system/components/combobox/Combobox.styles.cjs.js +0 -2
  551. package/dist/design-system/components/combobox/Combobox.styles.cjs.js.map +0 -1
  552. package/dist/design-system/components/combobox/Combobox.styles.esm.js +0 -7
  553. package/dist/design-system/components/combobox/Combobox.styles.esm.js.map +0 -1
  554. package/dist/design-system/components/combobox/index.cjs.js +0 -1
  555. package/dist/design-system/components/combobox/index.d.ts +0 -4
  556. package/dist/design-system/components/combobox/index.d.ts.map +0 -1
  557. package/dist/design-system/components/combobox/index.esm.js +0 -1
  558. package/dist/design-system/components/combobox-option/ComboboxOption.cjs.js +0 -2
  559. package/dist/design-system/components/combobox-option/ComboboxOption.cjs.js.map +0 -1
  560. package/dist/design-system/components/combobox-option/ComboboxOption.d.ts +0 -6
  561. package/dist/design-system/components/combobox-option/ComboboxOption.d.ts.map +0 -1
  562. package/dist/design-system/components/combobox-option/ComboboxOption.esm.js +0 -193
  563. package/dist/design-system/components/combobox-option/ComboboxOption.esm.js.map +0 -1
  564. package/dist/design-system/components/combobox-option/index.cjs.js +0 -1
  565. package/dist/design-system/components/combobox-option/index.d.ts.map +0 -1
  566. package/dist/design-system/components/combobox-option/index.esm.js +0 -1
  567. package/dist/design-system/components/dialog/Dialog.cjs.js +0 -17
  568. package/dist/design-system/components/dialog/Dialog.cjs.js.map +0 -1
  569. package/dist/design-system/components/dialog/Dialog.d.ts +0 -11
  570. package/dist/design-system/components/dialog/Dialog.d.ts.map +0 -1
  571. package/dist/design-system/components/dialog/Dialog.esm.js +0 -264
  572. package/dist/design-system/components/dialog/Dialog.esm.js.map +0 -1
  573. package/dist/design-system/components/dialog/Dialog.styles.cjs.js +0 -2
  574. package/dist/design-system/components/dialog/Dialog.styles.cjs.js.map +0 -1
  575. package/dist/design-system/components/dialog/Dialog.styles.esm.js +0 -7
  576. package/dist/design-system/components/dialog/Dialog.styles.esm.js.map +0 -1
  577. package/dist/design-system/components/dialog/index.cjs.js +0 -1
  578. package/dist/design-system/components/dialog/index.d.ts.map +0 -1
  579. package/dist/design-system/components/dialog/index.esm.js +0 -1
  580. package/dist/design-system/components/dialog-content/DialogContent.cjs.js +0 -2
  581. package/dist/design-system/components/dialog-content/DialogContent.cjs.js.map +0 -1
  582. package/dist/design-system/components/dialog-content/DialogContent.d.ts +0 -5
  583. package/dist/design-system/components/dialog-content/DialogContent.d.ts.map +0 -1
  584. package/dist/design-system/components/dialog-content/DialogContent.esm.js +0 -171
  585. package/dist/design-system/components/dialog-content/DialogContent.esm.js.map +0 -1
  586. package/dist/design-system/components/dialog-content/DialogContent.styles.cjs.js +0 -2
  587. package/dist/design-system/components/dialog-content/DialogContent.styles.cjs.js.map +0 -1
  588. package/dist/design-system/components/dialog-content/DialogContent.styles.esm.js +0 -7
  589. package/dist/design-system/components/dialog-content/DialogContent.styles.esm.js.map +0 -1
  590. package/dist/design-system/components/dialog-content/index.cjs.js +0 -1
  591. package/dist/design-system/components/dialog-content/index.d.ts.map +0 -1
  592. package/dist/design-system/components/dialog-content/index.esm.js +0 -1
  593. package/dist/design-system/components/dialog-footer/DialogFooter.cjs.js +0 -2
  594. package/dist/design-system/components/dialog-footer/DialogFooter.cjs.js.map +0 -1
  595. package/dist/design-system/components/dialog-footer/DialogFooter.d.ts +0 -5
  596. package/dist/design-system/components/dialog-footer/DialogFooter.d.ts.map +0 -1
  597. package/dist/design-system/components/dialog-footer/DialogFooter.esm.js +0 -171
  598. package/dist/design-system/components/dialog-footer/DialogFooter.esm.js.map +0 -1
  599. package/dist/design-system/components/dialog-footer/DialogFooter.styles.cjs.js +0 -2
  600. package/dist/design-system/components/dialog-footer/DialogFooter.styles.cjs.js.map +0 -1
  601. package/dist/design-system/components/dialog-footer/DialogFooter.styles.esm.js +0 -7
  602. package/dist/design-system/components/dialog-footer/DialogFooter.styles.esm.js.map +0 -1
  603. package/dist/design-system/components/dialog-footer/index.cjs.js +0 -1
  604. package/dist/design-system/components/dialog-footer/index.d.ts.map +0 -1
  605. package/dist/design-system/components/dialog-footer/index.esm.js +0 -1
  606. package/dist/design-system/components/dialog-header/DialogHeader.cjs.js +0 -2
  607. package/dist/design-system/components/dialog-header/DialogHeader.cjs.js.map +0 -1
  608. package/dist/design-system/components/dialog-header/DialogHeader.d.ts +0 -5
  609. package/dist/design-system/components/dialog-header/DialogHeader.d.ts.map +0 -1
  610. package/dist/design-system/components/dialog-header/DialogHeader.esm.js +0 -171
  611. package/dist/design-system/components/dialog-header/DialogHeader.esm.js.map +0 -1
  612. package/dist/design-system/components/dialog-header/DialogHeader.styles.cjs.js +0 -2
  613. package/dist/design-system/components/dialog-header/DialogHeader.styles.cjs.js.map +0 -1
  614. package/dist/design-system/components/dialog-header/DialogHeader.styles.esm.js +0 -7
  615. package/dist/design-system/components/dialog-header/DialogHeader.styles.esm.js.map +0 -1
  616. package/dist/design-system/components/dialog-header/index.cjs.js +0 -1
  617. package/dist/design-system/components/dialog-header/index.d.ts.map +0 -1
  618. package/dist/design-system/components/dialog-header/index.esm.js +0 -1
  619. package/dist/design-system/components/dialog-provider/DialogProvider.cjs.js +0 -2
  620. package/dist/design-system/components/dialog-provider/DialogProvider.cjs.js.map +0 -1
  621. package/dist/design-system/components/dialog-provider/DialogProvider.d.ts +0 -8
  622. package/dist/design-system/components/dialog-provider/DialogProvider.d.ts.map +0 -1
  623. package/dist/design-system/components/dialog-provider/DialogProvider.esm.js +0 -211
  624. package/dist/design-system/components/dialog-provider/DialogProvider.esm.js.map +0 -1
  625. package/dist/design-system/components/dialog-provider/index.d.ts.map +0 -1
  626. package/dist/design-system/components/dialogs-root/DialogsRoot.cjs.js +0 -9
  627. package/dist/design-system/components/dialogs-root/DialogsRoot.cjs.js.map +0 -1
  628. package/dist/design-system/components/dialogs-root/DialogsRoot.d.ts +0 -7
  629. package/dist/design-system/components/dialogs-root/DialogsRoot.d.ts.map +0 -1
  630. package/dist/design-system/components/dialogs-root/DialogsRoot.esm.js +0 -207
  631. package/dist/design-system/components/dialogs-root/DialogsRoot.esm.js.map +0 -1
  632. package/dist/design-system/components/dialogs-root/index.cjs.js +0 -1
  633. package/dist/design-system/components/dialogs-root/index.d.ts.map +0 -1
  634. package/dist/design-system/components/dialogs-root/index.esm.js +0 -1
  635. package/dist/design-system/components/login-modal/LoginModal.cjs.js +0 -30
  636. package/dist/design-system/components/login-modal/LoginModal.cjs.js.map +0 -1
  637. package/dist/design-system/components/login-modal/LoginModal.d.ts +0 -15
  638. package/dist/design-system/components/login-modal/LoginModal.d.ts.map +0 -1
  639. package/dist/design-system/components/login-modal/LoginModal.esm.js +0 -326
  640. package/dist/design-system/components/login-modal/LoginModal.esm.js.map +0 -1
  641. package/dist/design-system/components/login-modal/LoginModal.stories.d.ts +0 -14
  642. package/dist/design-system/components/login-modal/LoginModal.stories.d.ts.map +0 -1
  643. package/dist/design-system/components/login-modal/LoginModal.styles.cjs.js +0 -2
  644. package/dist/design-system/components/login-modal/LoginModal.styles.cjs.js.map +0 -1
  645. package/dist/design-system/components/login-modal/LoginModal.styles.esm.js +0 -7
  646. package/dist/design-system/components/login-modal/LoginModal.styles.esm.js.map +0 -1
  647. package/dist/design-system/components/login-modal/index.cjs.js +0 -1
  648. package/dist/design-system/components/login-modal/index.d.ts.map +0 -1
  649. package/dist/design-system/components/login-modal/index.esm.js +0 -1
  650. package/dist/design-system/components/menu/Menu.cjs.js +0 -9
  651. package/dist/design-system/components/menu/Menu.cjs.js.map +0 -1
  652. package/dist/design-system/components/menu/Menu.d.ts +0 -13
  653. package/dist/design-system/components/menu/Menu.d.ts.map +0 -1
  654. package/dist/design-system/components/menu/Menu.esm.js +0 -250
  655. package/dist/design-system/components/menu/Menu.esm.js.map +0 -1
  656. package/dist/design-system/components/menu/Menu.stories.d.ts +0 -8
  657. package/dist/design-system/components/menu/Menu.stories.d.ts.map +0 -1
  658. package/dist/design-system/components/menu/index.cjs.js +0 -1
  659. package/dist/design-system/components/menu/index.d.ts.map +0 -1
  660. package/dist/design-system/components/menu/index.esm.js +0 -1
  661. package/dist/design-system/components/menu-item/MenuItem.cjs.js +0 -14
  662. package/dist/design-system/components/menu-item/MenuItem.cjs.js.map +0 -1
  663. package/dist/design-system/components/menu-item/MenuItem.d.ts +0 -7
  664. package/dist/design-system/components/menu-item/MenuItem.d.ts.map +0 -1
  665. package/dist/design-system/components/menu-item/MenuItem.esm.js +0 -218
  666. package/dist/design-system/components/menu-item/MenuItem.esm.js.map +0 -1
  667. package/dist/design-system/components/menu-item/MenuItem.styles.cjs.js +0 -2
  668. package/dist/design-system/components/menu-item/MenuItem.styles.cjs.js.map +0 -1
  669. package/dist/design-system/components/menu-item/MenuItem.styles.esm.js +0 -7
  670. package/dist/design-system/components/menu-item/MenuItem.styles.esm.js.map +0 -1
  671. package/dist/design-system/components/menu-item/index.cjs.js +0 -1
  672. package/dist/design-system/components/menu-item/index.d.ts.map +0 -1
  673. package/dist/design-system/components/menu-item/index.esm.js +0 -1
  674. package/dist/design-system/components/menu-items/MenuItems.cjs.js +0 -6
  675. package/dist/design-system/components/menu-items/MenuItems.cjs.js.map +0 -1
  676. package/dist/design-system/components/menu-items/MenuItems.d.ts +0 -8
  677. package/dist/design-system/components/menu-items/MenuItems.d.ts.map +0 -1
  678. package/dist/design-system/components/menu-items/MenuItems.esm.js +0 -217
  679. package/dist/design-system/components/menu-items/MenuItems.esm.js.map +0 -1
  680. package/dist/design-system/components/menu-items/MenuItems.styles.cjs.js +0 -2
  681. package/dist/design-system/components/menu-items/MenuItems.styles.cjs.js.map +0 -1
  682. package/dist/design-system/components/menu-items/MenuItems.styles.esm.js +0 -7
  683. package/dist/design-system/components/menu-items/MenuItems.styles.esm.js.map +0 -1
  684. package/dist/design-system/components/menu-items/index.cjs.js +0 -1
  685. package/dist/design-system/components/menu-items/index.d.ts.map +0 -1
  686. package/dist/design-system/components/menu-items/index.esm.js +0 -1
  687. package/dist/design-system/components/provider/Provider.cjs.js +0 -5
  688. package/dist/design-system/components/provider/Provider.cjs.js.map +0 -1
  689. package/dist/design-system/components/provider/Provider.d.ts +0 -8
  690. package/dist/design-system/components/provider/Provider.d.ts.map +0 -1
  691. package/dist/design-system/components/provider/Provider.esm.js +0 -213
  692. package/dist/design-system/components/provider/Provider.esm.js.map +0 -1
  693. package/dist/design-system/components/provider/index.cjs.js +0 -1
  694. package/dist/design-system/components/provider/index.d.ts.map +0 -1
  695. package/dist/design-system/components/provider/index.esm.js +0 -1
  696. package/dist/design-system/lib/auth/SolidAuth.cjs.js +0 -2
  697. package/dist/design-system/lib/auth/SolidAuth.cjs.js.map +0 -1
  698. package/dist/design-system/lib/auth/SolidAuth.d.ts +0 -13
  699. package/dist/design-system/lib/auth/SolidAuth.d.ts.map +0 -1
  700. package/dist/design-system/lib/auth/SolidAuth.esm.js +0 -50
  701. package/dist/design-system/lib/auth/SolidAuth.esm.js.map +0 -1
  702. package/dist/design-system/lib/dialogs/Dialog.cjs.js +0 -2
  703. package/dist/design-system/lib/dialogs/Dialog.cjs.js.map +0 -1
  704. package/dist/design-system/lib/dialogs/Dialog.d.ts.map +0 -1
  705. package/dist/design-system/lib/dialogs/Dialog.esm.js +0 -38
  706. package/dist/design-system/lib/dialogs/Dialog.esm.js.map +0 -1
  707. package/dist/design-system/lib/dialogs/context.cjs.js.map +0 -1
  708. package/dist/design-system/lib/dialogs/context.d.ts.map +0 -1
  709. package/dist/design-system/lib/dialogs/context.esm.js +0 -7
  710. package/dist/design-system/lib/dialogs/context.esm.js.map +0 -1
  711. package/dist/design-system/lib/dialogs/events/close-dialog.cjs.js +0 -2
  712. package/dist/design-system/lib/dialogs/events/close-dialog.cjs.js.map +0 -1
  713. package/dist/design-system/lib/dialogs/events/close-dialog.d.ts.map +0 -1
  714. package/dist/design-system/lib/dialogs/events/close-dialog.esm.js +0 -36
  715. package/dist/design-system/lib/dialogs/events/close-dialog.esm.js.map +0 -1
  716. package/dist/design-system/lib/dialogs/events/show-dialog.cjs.js +0 -2
  717. package/dist/design-system/lib/dialogs/events/show-dialog.cjs.js.map +0 -1
  718. package/dist/design-system/lib/dialogs/events/show-dialog.d.ts.map +0 -1
  719. package/dist/design-system/lib/dialogs/events/show-dialog.esm.js +0 -36
  720. package/dist/design-system/lib/dialogs/events/show-dialog.esm.js.map +0 -1
  721. package/dist/design-system/lib/dialogs/index.cjs.js +0 -2
  722. package/dist/design-system/lib/dialogs/index.cjs.js.map +0 -1
  723. package/dist/design-system/lib/dialogs/index.d.ts +0 -3
  724. package/dist/design-system/lib/dialogs/index.d.ts.map +0 -1
  725. package/dist/design-system/lib/dialogs/index.esm.js +0 -11
  726. package/dist/design-system/lib/dialogs/index.esm.js.map +0 -1
  727. package/dist/design-system/lib/ids.cjs.js.map +0 -1
  728. package/dist/design-system/lib/ids.d.ts.map +0 -1
  729. package/dist/design-system/lib/ids.esm.js +0 -8
  730. package/dist/design-system/lib/ids.esm.js.map +0 -1
  731. package/dist/design-system/lib/internals.d.ts.map +0 -1
  732. package/dist/design-system/lib/menus/context.cjs.js.map +0 -1
  733. package/dist/design-system/lib/menus/context.d.ts.map +0 -1
  734. package/dist/design-system/lib/menus/context.esm.js +0 -7
  735. package/dist/design-system/lib/menus/context.esm.js.map +0 -1
  736. package/dist/design-system/polyfills/css-anchor-positioning.d.ts +0 -8
  737. package/dist/design-system/polyfills/css-anchor-positioning.d.ts.map +0 -1
  738. package/dist/primitives/components/avatar/Avatar.cjs.js +0 -6
  739. package/dist/primitives/components/avatar/Avatar.cjs.js.map +0 -1
  740. package/dist/primitives/components/avatar/Avatar.d.ts +0 -10
  741. package/dist/primitives/components/avatar/Avatar.d.ts.map +0 -1
  742. package/dist/primitives/components/avatar/Avatar.esm.js +0 -216
  743. package/dist/primitives/components/avatar/Avatar.esm.js.map +0 -1
  744. package/dist/primitives/components/avatar/Avatar.stories.d.ts +0 -44
  745. package/dist/primitives/components/avatar/Avatar.stories.d.ts.map +0 -1
  746. package/dist/primitives/components/avatar/Avatar.styles.cjs.js +0 -2
  747. package/dist/primitives/components/avatar/Avatar.styles.cjs.js.map +0 -1
  748. package/dist/primitives/components/avatar/Avatar.styles.esm.js +0 -7
  749. package/dist/primitives/components/avatar/Avatar.styles.esm.js.map +0 -1
  750. package/dist/primitives/components/avatar/index.cjs.js +0 -1
  751. package/dist/primitives/components/avatar/index.d.ts.map +0 -1
  752. package/dist/primitives/components/avatar/index.esm.js +0 -1
  753. package/dist/primitives/components/guard/Guard.d.ts +0 -6
  754. package/dist/primitives/components/guard/Guard.d.ts.map +0 -1
  755. package/dist/primitives/components/guard/Guard.stories.d.ts +0 -33
  756. package/dist/primitives/components/guard/Guard.stories.d.ts.map +0 -1
  757. package/dist/primitives/components/guard/index.d.ts.map +0 -1
  758. package/dist/primitives/components/login-button/LoginButton.cjs.js +0 -10
  759. package/dist/primitives/components/login-button/LoginButton.cjs.js.map +0 -1
  760. package/dist/primitives/components/login-button/LoginButton.d.ts +0 -8
  761. package/dist/primitives/components/login-button/LoginButton.d.ts.map +0 -1
  762. package/dist/primitives/components/login-button/LoginButton.esm.js +0 -221
  763. package/dist/primitives/components/login-button/LoginButton.esm.js.map +0 -1
  764. package/dist/primitives/components/login-button/LoginButton.stories.d.ts +0 -14
  765. package/dist/primitives/components/login-button/LoginButton.stories.d.ts.map +0 -1
  766. package/dist/primitives/components/login-button/LoginButton.styles.cjs.js +0 -2
  767. package/dist/primitives/components/login-button/LoginButton.styles.cjs.js.map +0 -1
  768. package/dist/primitives/components/login-button/LoginButton.styles.esm.js +0 -7
  769. package/dist/primitives/components/login-button/LoginButton.styles.esm.js.map +0 -1
  770. package/dist/primitives/components/login-button/index.cjs.js +0 -1
  771. package/dist/primitives/components/login-button/index.d.ts.map +0 -1
  772. package/dist/primitives/components/login-button/index.esm.js +0 -1
  773. package/dist/primitives/components/logout-button/LogoutButton.cjs.js +0 -10
  774. package/dist/primitives/components/logout-button/LogoutButton.cjs.js.map +0 -1
  775. package/dist/primitives/components/logout-button/LogoutButton.d.ts +0 -8
  776. package/dist/primitives/components/logout-button/LogoutButton.d.ts.map +0 -1
  777. package/dist/primitives/components/logout-button/LogoutButton.esm.js +0 -221
  778. package/dist/primitives/components/logout-button/LogoutButton.esm.js.map +0 -1
  779. package/dist/primitives/components/logout-button/LogoutButton.stories.d.ts +0 -14
  780. package/dist/primitives/components/logout-button/LogoutButton.stories.d.ts.map +0 -1
  781. package/dist/primitives/components/logout-button/LogoutButton.styles.cjs.js +0 -2
  782. package/dist/primitives/components/logout-button/LogoutButton.styles.cjs.js.map +0 -1
  783. package/dist/primitives/components/logout-button/LogoutButton.styles.esm.js +0 -7
  784. package/dist/primitives/components/logout-button/LogoutButton.styles.esm.js.map +0 -1
  785. package/dist/primitives/components/logout-button/index.cjs.js +0 -1
  786. package/dist/primitives/components/logout-button/index.d.ts.map +0 -1
  787. package/dist/primitives/components/logout-button/index.esm.js +0 -1
  788. package/dist/primitives/components/signup-button/SignupButton.cjs.js +0 -10
  789. package/dist/primitives/components/signup-button/SignupButton.cjs.js.map +0 -1
  790. package/dist/primitives/components/signup-button/SignupButton.d.ts +0 -8
  791. package/dist/primitives/components/signup-button/SignupButton.d.ts.map +0 -1
  792. package/dist/primitives/components/signup-button/SignupButton.esm.js +0 -221
  793. package/dist/primitives/components/signup-button/SignupButton.esm.js.map +0 -1
  794. package/dist/primitives/components/signup-button/SignupButton.stories.d.ts +0 -14
  795. package/dist/primitives/components/signup-button/SignupButton.stories.d.ts.map +0 -1
  796. package/dist/primitives/components/signup-button/SignupButton.styles.cjs.js +0 -2
  797. package/dist/primitives/components/signup-button/SignupButton.styles.cjs.js.map +0 -1
  798. package/dist/primitives/components/signup-button/SignupButton.styles.esm.js +0 -7
  799. package/dist/primitives/components/signup-button/SignupButton.styles.esm.js.map +0 -1
  800. package/dist/primitives/components/signup-button/index.cjs.js +0 -1
  801. package/dist/primitives/components/signup-button/index.d.ts.map +0 -1
  802. package/dist/primitives/components/signup-button/index.esm.js +0 -1
  803. package/dist/primitives/lib/WebComponent.cjs.js +0 -2
  804. package/dist/primitives/lib/WebComponent.cjs.js.map +0 -1
  805. package/dist/primitives/lib/WebComponent.d.ts +0 -13
  806. package/dist/primitives/lib/WebComponent.d.ts.map +0 -1
  807. package/dist/primitives/lib/WebComponent.esm.js +0 -61
  808. package/dist/primitives/lib/WebComponent.esm.js.map +0 -1
  809. package/dist/primitives/lib/auth/Account.cjs.js +0 -2
  810. package/dist/primitives/lib/auth/Account.cjs.js.map +0 -1
  811. package/dist/primitives/lib/auth/Account.d.ts.map +0 -1
  812. package/dist/primitives/lib/auth/Account.esm.js +0 -32
  813. package/dist/primitives/lib/auth/Account.esm.js.map +0 -1
  814. package/dist/primitives/lib/auth/NoopAuth.cjs.js.map +0 -1
  815. package/dist/primitives/lib/auth/NoopAuth.d.ts.map +0 -1
  816. package/dist/primitives/lib/auth/NoopAuth.esm.js +0 -22
  817. package/dist/primitives/lib/auth/NoopAuth.esm.js.map +0 -1
  818. package/dist/primitives/lib/auth/context.cjs.js.map +0 -1
  819. package/dist/primitives/lib/auth/context.d.ts.map +0 -1
  820. package/dist/primitives/lib/auth/context.esm.js +0 -8
  821. package/dist/primitives/lib/auth/context.esm.js.map +0 -1
  822. package/dist/primitives/lib/customElement.cjs.js +0 -2
  823. package/dist/primitives/lib/customElement.cjs.js.map +0 -1
  824. package/dist/primitives/lib/customElement.d.ts +0 -11
  825. package/dist/primitives/lib/customElement.d.ts.map +0 -1
  826. package/dist/primitives/lib/customElement.esm.js +0 -17
  827. package/dist/primitives/lib/customElement.esm.js.map +0 -1
  828. package/dist/primitives/styles/common.styles.cjs.js +0 -2
  829. package/dist/primitives/styles/common.styles.cjs.js.map +0 -1
  830. package/dist/primitives/styles/common.styles.esm.js +0 -7
  831. package/dist/primitives/styles/common.styles.esm.js.map +0 -1
  832. package/dist/styles.css +0 -1
  833. package/dist/v2/components/actions/button/Button.cjs.js +0 -245
  834. package/dist/v2/components/actions/button/Button.cjs.js.map +0 -1
  835. package/dist/v2/components/actions/button/Button.esm.js +0 -347
  836. package/dist/v2/components/actions/button/Button.esm.js.map +0 -1
  837. package/dist/v2/components/actions/button/index.cjs.js +0 -2
  838. package/dist/v2/components/actions/button/index.cjs.js.map +0 -1
  839. package/dist/v2/components/actions/button/index.esm.js +0 -7
  840. package/dist/v2/components/actions/button/index.esm.js.map +0 -1
  841. package/dist/v2/components/forms/combobox/Combobox.cjs.js +0 -194
  842. package/dist/v2/components/forms/combobox/Combobox.cjs.js.map +0 -1
  843. package/dist/v2/components/forms/combobox/Combobox.esm.js +0 -394
  844. package/dist/v2/components/forms/combobox/Combobox.esm.js.map +0 -1
  845. package/dist/v2/components/forms/combobox/index.cjs.js +0 -2
  846. package/dist/v2/components/forms/combobox/index.cjs.js.map +0 -1
  847. package/dist/v2/components/forms/combobox/index.esm.js +0 -7
  848. package/dist/v2/components/forms/combobox/index.esm.js.map +0 -1
  849. /package/dist/{design-system/components → components}/account/index.d.ts +0 -0
  850. /package/dist/{primitives/components → components}/avatar/index.d.ts +0 -0
  851. /package/dist/{design-system/components → components}/combobox-option/index.d.ts +0 -0
  852. /package/dist/{design-system/components → components}/dialog/index.d.ts +0 -0
  853. /package/dist/{design-system/components → components}/dialog-content/index.d.ts +0 -0
  854. /package/dist/{design-system/components → components}/dialog-footer/index.d.ts +0 -0
  855. /package/dist/{design-system/components → components}/dialog-header/index.d.ts +0 -0
  856. /package/dist/{design-system/components → components}/dialog-provider/index.d.ts +0 -0
  857. /package/dist/{design-system/components → components}/dialogs-root/index.d.ts +0 -0
  858. /package/dist/{primitives/components → components}/guard/index.d.ts +0 -0
  859. /package/dist/{primitives/components → components}/login-button/index.d.ts +0 -0
  860. /package/dist/{design-system/components → components}/login-modal/index.d.ts +0 -0
  861. /package/dist/{primitives/components → components}/logout-button/index.d.ts +0 -0
  862. /package/dist/{design-system/components → components}/menu/index.d.ts +0 -0
  863. /package/dist/{design-system/components → components}/menu-item/index.d.ts +0 -0
  864. /package/dist/{design-system/components → components}/menu-items/index.d.ts +0 -0
  865. /package/dist/{design-system/components → components}/provider/index.d.ts +0 -0
  866. /package/dist/{primitives/components → components}/signup-button/index.d.ts +0 -0
  867. /package/dist/{primitives/lib → lib}/auth/Account.d.ts +0 -0
  868. /package/dist/{primitives/lib → lib}/auth/NoopAuth.cjs.js +0 -0
  869. /package/dist/{primitives/lib → lib}/auth/NoopAuth.d.ts +0 -0
  870. /package/dist/{primitives/lib → lib}/auth/context.cjs.js +0 -0
  871. /package/dist/{primitives/lib → lib}/auth/context.d.ts +0 -0
  872. /package/dist/{design-system/lib → lib/components}/ids.cjs.js +0 -0
  873. /package/dist/{design-system/lib → lib/components}/ids.d.ts +0 -0
  874. /package/dist/{design-system/lib → lib}/dialogs/Dialog.d.ts +0 -0
  875. /package/dist/{design-system/lib → lib}/dialogs/context.cjs.js +0 -0
  876. /package/dist/{design-system/lib → lib}/dialogs/context.d.ts +0 -0
  877. /package/dist/{design-system/lib → lib}/dialogs/events/close-dialog.d.ts +0 -0
  878. /package/dist/{design-system/lib → lib}/dialogs/events/show-dialog.d.ts +0 -0
  879. /package/dist/{design-system/lib → lib}/menus/context.cjs.js +0 -0
  880. /package/dist/{design-system/lib → lib}/menus/context.d.ts +0 -0
  881. /package/dist/{design-system/lib → storybook}/internals.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Header.esm.js","names":[],"sources":["../../../../../src/v2/components/layout/header/Header.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit'\nimport { icons } from '../../../../lib/iconBase'\nimport { authSession, authn, performServerSideLogout } from 'solid-logic'\nimport '../../auth/loginButton/index'\nimport '../../auth/signupButton/index'\nimport { ifDefined } from 'lit/directives/if-defined.js'\n\nimport '../../../../design-system/components/account'\nimport '../../../../design-system/components/provider'\nimport Features from '../../../../lib/features'\n\nconst DEFAULT_HELP_MENU_ICON = ''\nconst DEFAULT_SOLID_ICON_URL = 'https://solidproject.org/assets/img/solid-emblem.svg'\nconst DEFAULT_SIGNUP_URL = 'https://solidproject.org/get_a_pod'\nconst DEFAULT_LOGGEDIN_MENU_BUTTON_AVATAR = icons.iconBase + 'emptyProfileAvatar.png'\n\nasync function clearPersistedAuthState (): Promise<void> {\n if (typeof window === 'undefined') {\n return\n }\n\n const explicitKeys = ['loginIssuer', 'preLoginRedirectHash']\n for (const key of explicitKeys) {\n window.localStorage.removeItem(key)\n window.sessionStorage.removeItem(key)\n }\n\n if (typeof indexedDB === 'undefined') {\n return\n }\n\n const databases = ['soidc', 'solid-client-authn-store', 'solid-client-authn']\n for (const dbName of databases) {\n await new Promise<void>((resolve) => {\n try {\n const request = indexedDB.deleteDatabase(dbName)\n request.onsuccess = () => resolve()\n request.onerror = () => resolve()\n request.onblocked = () => resolve()\n } catch (_err) {\n resolve()\n }\n })\n }\n}\n\nexport type HeaderAuthState = 'logged-out' | 'logged-in'\n\nexport type HeaderMenuItem = {\n label: string\n url?: string\n target?: string\n action?: string\n icon?: string\n}\n\nexport type HeaderAccountMenuItem = HeaderMenuItem & {\n avatar?: string\n webid?: string\n}\n\nexport class Header extends LitElement {\n static properties = {\n logo: { type: String, reflect: true },\n helpIcon: { type: String, attribute: 'help-icon', reflect: true },\n layout: { type: String, reflect: true },\n theme: { type: String, reflect: true },\n brandLink: { type: String, attribute: 'brand-link', reflect: true },\n authState: { type: String, attribute: 'auth-state', reflect: true },\n loginAction: { type: Object, attribute: false },\n signUpAction: { type: Object, attribute: false },\n accountMenu: { type: Array, attribute: false },\n logoutLabel: { type: String, attribute: 'logout-label', reflect: true },\n logoutIcon: { type: String, attribute: 'logout-icon', reflect: true },\n accountIcon: { type: String, attribute: 'account-icon', reflect: true },\n accountAvatar: { type: String, attribute: 'account-avatar', reflect: true },\n accountAvatarFallback: { type: String, attribute: 'account-avatar-fallback', reflect: true },\n loginIcon: { type: String, attribute: 'login-icon', reflect: true },\n signUpIcon: { type: String, attribute: 'sign-up-icon', reflect: true },\n helpMenuList: { type: Array },\n accountMenuOpen: { state: true },\n helpMenuOpen: { state: true },\n hasSlottedAccountMenu: { state: true },\n hasSlottedHelpMenu: { state: true },\n authResolved: { state: true }\n }\n\n static styles = css`\n :host { /* default theme */\n display: block;\n --header-bg: var(--color-header-row-bg, #332746);\n --header-text: var(--color-header-text, #ffffff);\n --header-border: var(--color-border, #efecf3);\n --header-line: var(--color-header-menu-separator-line, #5e546d);\n --header-link: var(--color-text-heading, #000000);\n --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);\n --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);\n --header-menu-bg: var(--color-menu-bg, #f6f5f9);\n --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);\n --header-menu-text: var(--color-menu-item-text, #654d6c);\n --header-border-radius: var(--border-radius-sm, 0.2rem);\n --header-button-bg: var(--color-menu-bg, #ffffff);\n --header-button-text: var(--color-header-button-text, #0F172B);\n --header-button-detail-text: var(--color-header-button-detail-text, #99A1AF);\n --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));\n font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);\n }\n\n /* for now light and dark are the same */\n :host([theme='dark']) {\n display: block;\n --header-bg: var(--color-header-row-bg, #332746);\n --header-text: var(--color-header-text, #ffffff);\n --header-border: var(--color-border, #efecf3);\n --header-line: var(--color-header-menu-separator-line, #5e546d);\n --header-link: var(--color-text-heading, #000000);\n --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);\n --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);\n --header-menu-bg: var(--color-menu-bg, #f6f5f9);\n --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);\n --header-menu-text: var(--color-menu-item-text, #654d6c);\n --header-border-radius: var(--border-radius-sm, 0.2rem);\n --header-button-bg: var(--color-menu-bg, #ffffff);\n --header-button-text: var(--color-header-button-text, #0f172a);\n --header-button-detail-text: var(--color-header-button-detail-text, #878192);\n --header-icon-filter: invert(1) brightness(1.3); /* special way to invert SVG color of icons, from white to black */\n --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));\n font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);\n }\n\n :host([layout='mobile']) .headerInner {\n flex-wrap: wrap;\n text-align: center;\n gap: 0.5rem;\n }\n\n .headerInner {\n display: flex;\n align-items: center;\n justify-content: space-between;\n background: var(--header-bg);\n color: var(--header-text);\n padding: 0 1.5rem;\n height: 3.75rem;\n }\n\n ::slotted([slot='navigation-toggle']) {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-right: 0.75rem;\n }\n\n :host([layout='desktop']) ::slotted([slot='navigation-toggle']) {\n display: none !important;\n }\n\n .brand {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n text-decoration: none;\n color: inherit;\n }\n\n .brand-not-displayed {\n display: none;\n }\n\n .brand img {\n height: 50px;\n width: 55px;\n object-fit: contain;\n }\n\n .menu {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n margin-left: auto;\n }\n\n .auth-actions {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n }\n\n .auth-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n min-height: 2.25rem;\n padding: 0.5rem 0.875rem;\n border: 1px solid var(--header-border);\n border-radius: 999px;\n background: var(--header-menu-bg);\n color: var(--header-button-text);\n cursor: pointer;\n font: inherit;\n line-height: 1;\n text-decoration: none;\n box-sizing: border-box;\n transition: border-color 0.2s ease, transform 0.2s ease;\n }\n\n .auth-button:hover {\n border-color: var(--header-menu-item-hover);\n }\n\n .auth-button:active {\n transform: translateY(1px);\n }\n\n .auth-button-sign-up {\n background: color-mix(in srgb, var(--header-menu-bg) 78%, var(--header-menu-item-selected) 22%);\n }\n\n .header-menu-separator {\n background: var(--header-line);\n width: 1px;\n height: 2.3rem;\n }\n\n .account-menu-container {\n position: relative;\n display: flex;\n align-items: center;\n }\n\n .account-menu-trigger {\n display: inline-flex;\n align-items: center;\n gap: 0.625rem;\n min-height: 2.5rem;\n border: 1px solid var(--header-menu-loggedin-bg);\n border-radius: 999px;\n background: var(--header-menu-loggedin-bg);\n color: var(--header-button-text);\n cursor: pointer;\n font: inherit;\n line-height: 1;\n }\n\n :host([layout='mobile']) .account-menu-trigger {\n gap: 0;\n min-height: auto;\n padding: 0;\n border: 1.5px solid var(--header-border);\n background: var(--header-menu-loggedin-bg);\n }\n\n :host([layout='mobile']) .account-menu-trigger-label {\n display: none;\n }\n\n .account-menu-trigger:disabled {\n cursor: default;\n opacity: 0.7;\n }\n\n .account-menu-trigger-icon {\n width: 1rem;\n height: 1rem;\n object-fit: contain;\n flex-shrink: 0;\n }\n\n .account-avatar,\n .account-menu-avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n background: color-mix(in srgb, var(--header-bg) 18%, #ded8e7 82%);\n color: var(--header-button-text);\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n }\n\n .account-avatar {\n width: 1.75rem;\n height: 1.75rem;\n border-radius: 999px;\n border: 1.5px solid var(--header-border);\n }\n\n .account-menu-avatar {\n width: 2rem;\n height: 2rem;\n border-radius: 0.5rem;\n }\n\n .account-avatar img,\n .account-menu-avatar img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n\n .account-avatar-img {\n width: 1.75rem;\n height: 1.75rem;\n border-radius: 999px;\n object-fit: cover;\n background-color: var(--header-border);\n }\n\n .account-dropdown {\n position: absolute;\n top: calc(100% + 0.9rem);\n right: 0;\n min-width: 15rem;\n padding: 0.5rem;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: var(--header-border-radius);\n box-shadow: var(--header-shadow);\n z-index: 10;\n }\n\n .account-dropdown[hidden] {\n display: none;\n }\n\n .account-menu-list {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .account-menu-item-link,\n .account-menu-item-button,\n ::slotted([slot='account-menu']) {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n width: 100%;\n box-sizing: border-box;\n color: var(--header-link);\n text-decoration: none;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 10px;\n padding: 0.5rem;\n cursor: pointer;\n font: inherit;\n text-align: left;\n }\n\n .account-menu-item-link:hover,\n .account-menu-item-button:hover {\n color: var(--header-link);\n background: var(--header-menu-item-hover);\n border-color: var(--header-menu-item-hover);\n }\n\n .account-menu-item-link:active,\n .account-menu-item-button:active {\n color: var(--header-link);\n background: var(--header-menu-item-selected);\n border-color: var(--header-menu-item-selected);\n transform: translateY(1px);\n }\n\n .account-switch {\n display: block;\n width: 100%;\n color: var(--header-menu-text);\n text-align: left;\n text-transform: uppercase;\n font-size: 80%;\n }\n\n .dropdown-menu-separator {\n display: block;\n width: calc(100% + 1rem);\n margin: 0.5rem -0.5rem;\n border: 0;\n border-top: 1px solid var(--header-border);\n }\n\n .account-menu-copy {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .account-menu-label {\n color: var(--header-button-text);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .account-menu-webid {\n color: var(--header-button-detail-text);\n font-size: 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .help-menu-container {\n position: relative;\n display: flex;\n align-items: center;\n background: transparent;\n }\n\n .help-menu-trigger {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: 0;\n background: transparent;\n cursor: pointer;\n }\n\n .help-menu-trigger:disabled {\n cursor: default;\n }\n\n .help-dropdown {\n position: absolute;\n top: calc(100% + 0.9rem);\n right: 0;\n min-width: 12rem;\n padding: 0.5rem;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: var(--header-border-radius);\n box-shadow: var(--header-shadow);\n z-index: 10;\n }\n\n .help-dropdown[hidden] {\n display: none;\n }\n\n .help-dropdown-content {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .help-menu-list {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .help-menu-list a,\n .help-menu-list button,\n ::slotted([slot='help-menu']) {\n display: block;\n width: 100%;\n box-sizing: border-box;\n color: var(--header-link);\n text-decoration: none;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 4px;\n padding: 0.375rem 0.5rem;\n cursor: pointer;\n font: inherit;\n text-align: left;\n }\n\n .help-menu-list a:hover,\n .help-menu-list button:hover {\n color: var(--header-link);\n background: var(--header-menu-item-hover);\n border-color: var(--header-menu-item-hover);\n }\n\n .help-menu-list a:active,\n .help-menu-list button:active {\n color: var(--header-link);\n background: var(--header-menu-item-selected);\n border-color: var(--header-menu-item-selected);\n transform: translateY(1px);\n }\n\n ::slotted(a), ::slotted(button) {\n color: var(--header-link);\n text-decoration: none;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: 4px;\n padding: 0.25rem 0.5rem;\n cursor: pointer;\n font: inherit;\n }\n\n .help-icon {\n width: 35px;\n height: 35px;\n cursor: pointer;\n }\n\n .help-text {\n color: var(--header-text, #ffffff);\n font: inherit;\n }\n\n .logout-action-icon {\n width: 16px;\n height: 16px;\n display: inline-block;\n object-fit: contain;\n margin-right: 0.5rem;\n }\n `\n\n declare logo: string\n declare helpIcon: string\n declare layout: 'desktop' | 'mobile'\n declare theme: 'light' | 'dark'\n declare brandLink: string\n declare authState: HeaderAuthState\n declare loginAction: HeaderMenuItem\n declare signUpAction: HeaderMenuItem\n declare accountMenu: HeaderAccountMenuItem[]\n declare logoutLabel: string | null\n declare logoutIcon: string\n declare accountIcon: string\n declare accountAvatar: string\n declare accountAvatarFallback: string\n declare loginIcon: string\n declare signUpIcon: string\n declare helpMenuList: HeaderMenuItem[]\n declare accountMenuOpen: boolean\n declare helpMenuOpen: boolean\n declare hasSlottedAccountMenu: boolean\n declare hasSlottedHelpMenu: boolean\n declare authResolved: boolean\n private _refreshPromise: Promise<void> | null = null\n\n private readonly handleAuthSessionChange = () => {\n this.refreshAuthStateFromSession().catch(() => {\n // Keep auth event handling resilient on transient refresh failures.\n })\n }\n\n constructor () {\n super()\n this.logo = DEFAULT_SOLID_ICON_URL\n this.helpIcon = DEFAULT_HELP_MENU_ICON\n this.layout = 'desktop'\n this.theme = 'light'\n this.brandLink = '#'\n this.authState = 'logged-out'\n this.loginAction = { label: 'Log In', action: 'login' }\n this.signUpAction = { label: 'Sign Up', action: 'sign-up', url: DEFAULT_SIGNUP_URL }\n this.accountMenu = []\n this.logoutLabel = 'Log Out'\n this.logoutIcon = ''\n this.accountIcon = '▼'\n this.accountAvatar = ''\n this.accountAvatarFallback = ''\n this.loginIcon = ''\n this.signUpIcon = ''\n this.helpMenuList = []\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n this.hasSlottedAccountMenu = false\n this.hasSlottedHelpMenu = false\n this.authResolved = false\n }\n\n connectedCallback () {\n super.connectedCallback()\n document.addEventListener('click', this.handleDocumentClick)\n window.addEventListener('keydown', this.handleWindowKeydown)\n if (typeof authSession.events?.on === 'function') {\n authSession.events.on('login', this.handleAuthSessionChange)\n authSession.events.on('logout', this.handleAuthSessionChange)\n authSession.events.on('sessionRestore', this.handleAuthSessionChange)\n }\n this.refreshAuthStateFromSession().catch(() => {\n // Keep initial header render resilient on transient refresh failures.\n })\n }\n\n disconnectedCallback () {\n document.removeEventListener('click', this.handleDocumentClick)\n window.removeEventListener('keydown', this.handleWindowKeydown)\n if (typeof authSession.events?.off === 'function') {\n authSession.events.off('login', this.handleAuthSessionChange)\n authSession.events.off('logout', this.handleAuthSessionChange)\n authSession.events.off('sessionRestore', this.handleAuthSessionChange)\n }\n super.disconnectedCallback()\n }\n\n private async refreshAuthStateFromSession () {\n if (!this._refreshPromise) {\n this._refreshPromise = (async () => {\n try {\n await authn.checkUser()\n // Some auth stacks resolve session state asynchronously after first check.\n if (!authn.currentUser()) {\n await authn.checkUser()\n }\n } catch (_err) {\n // Keep rendering even if session refresh cannot complete.\n }\n })()\n }\n\n try {\n await this._refreshPromise\n } finally {\n this._refreshPromise = null\n }\n\n this.authState = authn.currentUser() ? 'logged-in' : 'logged-out'\n this.authResolved = true\n }\n\n private handleHelpMenuClick (item: HeaderMenuItem, event: MouseEvent) {\n event.preventDefault()\n this.helpMenuOpen = false\n this.dispatchEvent(new CustomEvent('help-menu-select', {\n detail: item,\n bubbles: true,\n composed: true\n }))\n if (item.url) {\n const target = item.target || '_blank'\n const features = target === '_blank' ? 'noopener,noreferrer' : undefined\n window.open(item.url, target, features)\n }\n }\n\n private handleAccountMenuClick (item: HeaderAccountMenuItem) {\n this.accountMenuOpen = false\n this.dispatchEvent(new CustomEvent('account-menu-select', {\n detail: item,\n bubbles: true,\n composed: true\n }))\n }\n\n private readonly handleDocumentClick = (event: MouseEvent) => {\n if (!event.composedPath().includes(this)) {\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n }\n }\n\n private readonly handleWindowKeydown = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && (this.accountMenuOpen || this.helpMenuOpen)) {\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n }\n }\n\n private handleAccountSlotChange (event: Event) {\n const slot = event.target as HTMLSlotElement\n this.hasSlottedAccountMenu = slot.assignedElements({ flatten: true }).length > 0\n }\n\n private handleHelpSlotChange (event: Event) {\n const slot = event.target as HTMLSlotElement\n this.hasSlottedHelpMenu = slot.assignedElements({ flatten: true }).length > 0\n }\n\n private toggleAccountMenu (event: MouseEvent) {\n event.preventDefault()\n if (!this.hasAccountMenuItems()) return\n this.helpMenuOpen = false\n this.accountMenuOpen = !this.accountMenuOpen\n }\n\n private toggleHelpMenu (event: MouseEvent) {\n event.preventDefault()\n if (!this.hasHelpMenuItems()) return\n this.accountMenuOpen = false\n this.helpMenuOpen = !this.helpMenuOpen\n }\n\n private hasAccountMenuItems () {\n return Boolean(this.accountMenu?.length || this.hasSlottedAccountMenu || this.logoutLabel)\n }\n\n private hasHelpMenuItems () {\n return Boolean(this.helpMenuList?.length || this.hasSlottedHelpMenu)\n }\n\n private shouldRenderHelpMenu () {\n return this.layout !== 'mobile' && this.hasHelpMenuItems()\n }\n\n private renderLoggedInAvatar (avatar?: string, wrapperClass = 'account-avatar') {\n const hasAvatar = Boolean(avatar)\n const imageSrc = hasAvatar ? avatar : this.accountAvatarFallback || DEFAULT_LOGGEDIN_MENU_BUTTON_AVATAR\n const imageAlt = hasAvatar ? 'Profile Avatar' : 'Default Avatar'\n\n if (this.layout === 'mobile' && wrapperClass === 'account-avatar') {\n return html`<img class=\"account-avatar-img\" src=\"${imageSrc}\" alt=\"${imageAlt}\" />`\n }\n\n return html`\n <span class=\"${wrapperClass}\" aria-hidden=\"true\">\n <img src=\"${imageSrc}\" alt=\"${imageAlt}\" />\n </span>\n `\n }\n\n private renderLoggedOutActions () {\n return html`\n <div class=\"auth-actions\" part=\"auth-actions\">\n <slot name=\"login-action\">\n <solid-ui-login-button\n label=\"${this.loginAction.label}\"\n icon=${ifDefined(this.layout !== 'mobile' ? (this.loginIcon || this.loginAction.icon) : undefined)}\n layout=\"${this.layout}\"\n theme=\"${this.theme}\"\n part=\"login-action\"\n @login-success=\"${() => this.handleLoginSuccess()}\"\n ></solid-ui-login-button>\n </slot>\n <slot name=\"sign-up-action\">\n <solid-ui-signup-button\n label=\"${this.signUpAction.label}\"\n signup-url=\"${ifDefined(this.signUpAction.url)}\"\n layout=\"${this.layout}\"\n .icon=${ifDefined(this.layout !== 'mobile' ? (this.signUpIcon || this.signUpAction.icon) : undefined)}\n theme=\"${this.theme}\"\n part=\"sign-up-action\"\n ></solid-ui-signup-button>\n </slot>\n </div>\n `\n }\n\n private async handleLoginSuccess () {\n await this.refreshAuthStateFromSession()\n this.dispatchEvent(new CustomEvent('auth-action-select', {\n detail: { role: 'login' },\n bubbles: true,\n composed: true\n }))\n }\n\n private async handleLogout () {\n this.accountMenuOpen = false\n const issuer = window.localStorage.getItem('loginIssuer') || ''\n\n try {\n await authSession.logout()\n } catch (_err) {\n // logout errors are non-fatal — proceed to clear state\n }\n\n await clearPersistedAuthState()\n\n const redirectedToServerLogout = await performServerSideLogout({\n issuer,\n postLogoutRedirectPath: '/'\n })\n if (redirectedToServerLogout) {\n return\n }\n\n await this.refreshAuthStateFromSession()\n this.dispatchEvent(new CustomEvent('logout-select', {\n detail: { role: 'logout' },\n bubbles: true,\n composed: true\n }))\n }\n\n private renderAccountMenuItem (item: HeaderAccountMenuItem) {\n const content = html`\n ${this.renderLoggedInAvatar(item.avatar, 'account-menu-avatar')}\n <span class=\"account-menu-copy\">\n <span class=\"account-menu-label\">${item.label}</span>\n ${item.webid && this.layout !== 'mobile' ? html`<span class=\"account-menu-webid\">${item.webid}</span>` : ''}\n </span>\n `\n\n if (item.url) {\n return html`\n <a\n class=\"account-menu-item-link\"\n href=\"${item.url}\"\n @click=\"${() => this.handleAccountMenuClick(item)}\"\n part=\"account-menu-item\"\n role=\"menuitem\"\n >\n ${content}\n </a>\n `\n }\n\n return html`\n <button\n class=\"account-menu-item-button\"\n type=\"button\"\n @click=\"${() => this.handleAccountMenuClick(item)}\"\n part=\"account-menu-item\"\n role=\"menuitem\"\n >\n ${content}\n </button>\n `\n }\n\n private renderLoggedInActions () {\n return html`\n <div class=\"account-menu-container\" part=\"account-menu-container\">\n <slot name=\"account-trigger\">\n <button\n id=\"accountMenuTrigger\"\n class=\"account-menu-trigger\"\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded=\"${this.accountMenuOpen ? 'true' : 'false'}\"\n ?disabled=\"${!this.hasAccountMenuItems()}\"\n @click=\"${(e: MouseEvent) => this.toggleAccountMenu(e)}\"\n part=\"account-menu-trigger\"\n >\n ${this.renderLoggedInAvatar(this.accountAvatar)}\n ${this.layout !== 'mobile' && this.accountIcon\n? html`\n <img class=\"account-menu-trigger-icon\" src=\"${this.accountIcon}\" alt=\"\" aria-hidden=\"true\" />`\n: ''}\n </button>\n </slot>\n\n <nav\n id=\"accountMenu\"\n class=\"account-dropdown\"\n role=\"menu\"\n ?inert=\"${!this.accountMenuOpen || !this.hasAccountMenuItems()}\"\n ?hidden=\"${!this.accountMenuOpen || !this.hasAccountMenuItems()}\"\n part=\"account-dropdown\"\n >\n <slot name=\"account-switch\" class=\"account-switch\">Switch account</slot>\n <hr class=\"dropdown-menu-separator\" />\n <slot name=\"account-menu\" @slotchange=\"${(e: Event) => this.handleAccountSlotChange(e)}\"></slot>\n ${this.accountMenu && this.accountMenu.length\n ? html`\n <ul class=\"account-menu-list\">\n ${this.accountMenu.map((item: HeaderAccountMenuItem) => html`\n <li>${this.renderAccountMenuItem(item)}</li>\n `)}\n </ul>\n `\n : ''}\n ${this.logoutLabel\n ? html`\n <hr class=\"dropdown-menu-separator\" />\n <button\n class=\"account-menu-item-button\"\n type=\"button\"\n @click=\"${() => this.handleLogout()}\"\n part=\"logout-action\"\n role=\"menuitem\"\n >\n ${this.logoutIcon && this.layout !== 'mobile'\n ? html`<img class=\"logout-action-icon\" src=\"${this.logoutIcon}\" alt=\"\" aria-hidden=\"true\" part=\"logout-action-icon\" />`\n : ''}\n ${this.logoutLabel}\n </button>\n `\n : ''}\n </nav>\n </div>\n `\n }\n\n private renderUserArea () {\n if (Features.DESIGN_SYSTEM_HEADER_ACCOUNT) {\n return html`\n <solid-ui-provider>\n <solid-ui-account></solid-ui-account>\n </solid-ui-provider>\n `\n }\n\n if (!this.authResolved) {\n return html`<div class=\"auth-actions\" part=\"auth-actions\"></div>`\n }\n\n if (this.authState === 'logged-out') {\n return this.renderLoggedOutActions()\n }\n\n return this.renderLoggedInActions()\n }\n\n protected firstUpdated () {\n const brandLink = this.shadowRoot?.getElementById('brandLink')\n if (brandLink) {\n brandLink.classList.toggle('brand-not-displayed', this.layout === 'mobile')\n }\n }\n\n protected updated (changedProperties: Map<string, unknown>) {\n if (changedProperties.has('layout')) {\n const brandLink = this.shadowRoot?.getElementById('brandLink')\n if (brandLink) {\n brandLink.classList.toggle('brand-not-displayed', this.layout === 'mobile')\n }\n }\n }\n\n render () {\n return html`\n <div class=\"headerInner\">\n <slot name=\"navigation-toggle\"></slot>\n <a\n id=\"brandLink\"\n class=\"brand\"\n href=\"${this.brandLink}\"\n part=\"brand\"\n >\n <img id=\"brandImg\" src=\"${this.logo}\" alt=\"Logo\" part=\"logo\" />\n </a>\n\n <div class=\"menu\" part=\"menu\">\n ${this.renderUserArea()}\n\n ${this.shouldRenderHelpMenu()\n ? html`\n <div class=\"header-menu-separator\" />`\n : ''}\n\n ${this.shouldRenderHelpMenu()\n ? html`\n <div class=\"help-menu-container\" part=\"help-menu-container\">\n <button\n id=\"helpMenuTrigger\"\n class=\"help-menu-trigger\"\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded=\"${this.helpMenuOpen ? 'true' : 'false'}\"\n ?disabled=\"${!this.hasHelpMenuItems()}\"\n @click=\"${(e: MouseEvent) => this.toggleHelpMenu(e)}\"\n part=\"help-menu-trigger\"\n >\n ${this.helpIcon\n ? html`<img id=\"helpIcon\" class=\"help-icon\" src=\"${this.helpIcon}\" alt=\"Help\" part=\"help-icon\" />`\n : html`<span class=\"help-text\" part=\"help-text\">Help</span>`}\n </button>\n\n <nav\n id=\"helpMenu\"\n class=\"help-dropdown\"\n role=\"menu\"\n ?inert=\"${!this.helpMenuOpen || !this.hasHelpMenuItems()}\"\n ?hidden=\"${!this.helpMenuOpen || !this.hasHelpMenuItems()}\"\n part=\"help-dropdown\"\n >\n <div class=\"help-dropdown-content\" @click=\"${() => { this.helpMenuOpen = false }}\">\n <slot name=\"help-menu\" @slotchange=\"${(e: Event) => this.handleHelpSlotChange(e)}\"></slot>\n ${this.helpMenuList && this.helpMenuList.length\n ? html`\n <ul class=\"help-menu-list\">\n ${this.helpMenuList.map((item: HeaderMenuItem) => html`\n <li>\n ${item.url\n ? html`\n <a\n href=\"${item.url}\"\n target=\"${item.target || '_blank'}\"\n rel=\"${ifDefined((item.target || '_blank') === '_blank' ? 'noopener noreferrer' : undefined)}\"\n @click=\"${(e: MouseEvent) => this.handleHelpMenuClick(item, e)}\"\n part=\"help-menu-item\"\n role=\"menuitem\"\n >\n ${item.label}\n </a>\n `\n : html`\n <button\n type=\"button\"\n @click=\"${(e: MouseEvent) => this.handleHelpMenuClick(item, e)}\"\n part=\"help-menu-item\"\n role=\"menuitem\"\n >\n ${item.label}\n </button>\n `}\n </li>\n `)}\n </ul>\n `\n : ''}\n </div>\n </nav>\n </div>`\n : ''}\n </div>\n </div>\n `\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Header.esm.js","names":[],"sources":["../../../../../src/v2/components/layout/header/Header.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit'\nimport { icons } from '../../../../lib/iconBase'\nimport { authSession, authn, performServerSideLogout } from 'solid-logic'\nimport '../../auth/loginButton/index'\nimport '../../auth/signupButton/index'\nimport { ifDefined } from 'lit/directives/if-defined.js'\n\nimport '@/components/account'\nimport '@/components/provider'\nimport Features from '../../../../lib/features'\n\nconst DEFAULT_HELP_MENU_ICON = ''\nconst DEFAULT_SOLID_ICON_URL = 'https://solidproject.org/assets/img/solid-emblem.svg'\nconst DEFAULT_SIGNUP_URL = 'https://solidproject.org/get_a_pod'\nconst DEFAULT_LOGGEDIN_MENU_BUTTON_AVATAR = icons.iconBase + 'emptyProfileAvatar.png'\n\nasync function clearPersistedAuthState (): Promise<void> {\n if (typeof window === 'undefined') {\n return\n }\n\n const explicitKeys = ['loginIssuer', 'preLoginRedirectHash']\n for (const key of explicitKeys) {\n window.localStorage.removeItem(key)\n window.sessionStorage.removeItem(key)\n }\n\n if (typeof indexedDB === 'undefined') {\n return\n }\n\n const databases = ['soidc', 'solid-client-authn-store', 'solid-client-authn']\n for (const dbName of databases) {\n await new Promise<void>((resolve) => {\n try {\n const request = indexedDB.deleteDatabase(dbName)\n request.onsuccess = () => resolve()\n request.onerror = () => resolve()\n request.onblocked = () => resolve()\n } catch (_err) {\n resolve()\n }\n })\n }\n}\n\nexport type HeaderAuthState = 'logged-out' | 'logged-in'\n\nexport type HeaderMenuItem = {\n label: string\n url?: string\n target?: string\n action?: string\n icon?: string\n}\n\nexport type HeaderAccountMenuItem = HeaderMenuItem & {\n avatar?: string\n webid?: string\n}\n\nexport class Header extends LitElement {\n static properties = {\n logo: { type: String, reflect: true },\n helpIcon: { type: String, attribute: 'help-icon', reflect: true },\n layout: { type: String, reflect: true },\n theme: { type: String, reflect: true },\n brandLink: { type: String, attribute: 'brand-link', reflect: true },\n authState: { type: String, attribute: 'auth-state', reflect: true },\n loginAction: { type: Object, attribute: false },\n signUpAction: { type: Object, attribute: false },\n accountMenu: { type: Array, attribute: false },\n logoutLabel: { type: String, attribute: 'logout-label', reflect: true },\n logoutIcon: { type: String, attribute: 'logout-icon', reflect: true },\n accountIcon: { type: String, attribute: 'account-icon', reflect: true },\n accountAvatar: { type: String, attribute: 'account-avatar', reflect: true },\n accountAvatarFallback: { type: String, attribute: 'account-avatar-fallback', reflect: true },\n loginIcon: { type: String, attribute: 'login-icon', reflect: true },\n signUpIcon: { type: String, attribute: 'sign-up-icon', reflect: true },\n helpMenuList: { type: Array },\n accountMenuOpen: { state: true },\n helpMenuOpen: { state: true },\n hasSlottedAccountMenu: { state: true },\n hasSlottedHelpMenu: { state: true },\n authResolved: { state: true }\n }\n\n static styles = css`\n :host { /* default theme */\n display: block;\n --header-bg: var(--color-header-row-bg, #332746);\n --header-text: var(--color-header-text, #ffffff);\n --header-border: var(--color-border, #efecf3);\n --header-line: var(--color-header-menu-separator-line, #5e546d);\n --header-link: var(--color-text-heading, #000000);\n --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);\n --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);\n --header-menu-bg: var(--color-menu-bg, #f6f5f9);\n --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);\n --header-menu-text: var(--color-menu-item-text, #654d6c);\n --header-border-radius: var(--border-radius-sm, 0.2rem);\n --header-button-bg: var(--color-menu-bg, #ffffff);\n --header-button-text: var(--color-header-button-text, #0F172B);\n --header-button-detail-text: var(--color-header-button-detail-text, #99A1AF);\n --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));\n font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);\n }\n\n /* for now light and dark are the same */\n :host([theme='dark']) {\n display: block;\n --header-bg: var(--color-header-row-bg, #332746);\n --header-text: var(--color-header-text, #ffffff);\n --header-border: var(--color-border, #efecf3);\n --header-line: var(--color-header-menu-separator-line, #5e546d);\n --header-link: var(--color-text-heading, #000000);\n --header-menu-item-hover: var(--color-header-menu-item-hover, #e6dcff);\n --header-menu-item-selected: var(--color-header-menu-item-selected, #cbb9ff);\n --header-menu-bg: var(--color-menu-bg, #f6f5f9);\n --header-menu-loggedin-bg: var(--color-header-menu-loggedin-bg, #5e546d);\n --header-menu-text: var(--color-menu-item-text, #654d6c);\n --header-border-radius: var(--border-radius-sm, 0.2rem);\n --header-button-bg: var(--color-menu-bg, #ffffff);\n --header-button-text: var(--color-header-button-text, #0f172a);\n --header-button-detail-text: var(--color-header-button-detail-text, #878192);\n --header-icon-filter: invert(1) brightness(1.3); /* special way to invert SVG color of icons, from white to black */\n --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));\n font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);\n }\n\n :host([layout='mobile']) .headerInner {\n flex-wrap: wrap;\n text-align: center;\n gap: 0.5rem;\n }\n\n .headerInner {\n display: flex;\n align-items: center;\n justify-content: space-between;\n background: var(--header-bg);\n color: var(--header-text);\n padding: 0 1.5rem;\n height: 3.75rem;\n }\n\n ::slotted([slot='navigation-toggle']) {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-right: 0.75rem;\n }\n\n :host([layout='desktop']) ::slotted([slot='navigation-toggle']) {\n display: none !important;\n }\n\n .brand {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n text-decoration: none;\n color: inherit;\n }\n\n .brand-not-displayed {\n display: none;\n }\n\n .brand img {\n height: 50px;\n width: 55px;\n object-fit: contain;\n }\n\n .menu {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n margin-left: auto;\n }\n\n .auth-actions {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n }\n\n .auth-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n min-height: 2.25rem;\n padding: 0.5rem 0.875rem;\n border: 1px solid var(--header-border);\n border-radius: 999px;\n background: var(--header-menu-bg);\n color: var(--header-button-text);\n cursor: pointer;\n font: inherit;\n line-height: 1;\n text-decoration: none;\n box-sizing: border-box;\n transition: border-color 0.2s ease, transform 0.2s ease;\n }\n\n .auth-button:hover {\n border-color: var(--header-menu-item-hover);\n }\n\n .auth-button:active {\n transform: translateY(1px);\n }\n\n .auth-button-sign-up {\n background: color-mix(in srgb, var(--header-menu-bg) 78%, var(--header-menu-item-selected) 22%);\n }\n\n .header-menu-separator {\n background: var(--header-line);\n width: 1px;\n height: 2.3rem;\n }\n\n .account-menu-container {\n position: relative;\n display: flex;\n align-items: center;\n }\n\n .account-menu-trigger {\n display: inline-flex;\n align-items: center;\n gap: 0.625rem;\n min-height: 2.5rem;\n border: 1px solid var(--header-menu-loggedin-bg);\n border-radius: 999px;\n background: var(--header-menu-loggedin-bg);\n color: var(--header-button-text);\n cursor: pointer;\n font: inherit;\n line-height: 1;\n }\n\n :host([layout='mobile']) .account-menu-trigger {\n gap: 0;\n min-height: auto;\n padding: 0;\n border: 1.5px solid var(--header-border);\n background: var(--header-menu-loggedin-bg);\n }\n\n :host([layout='mobile']) .account-menu-trigger-label {\n display: none;\n }\n\n .account-menu-trigger:disabled {\n cursor: default;\n opacity: 0.7;\n }\n\n .account-menu-trigger-icon {\n width: 1rem;\n height: 1rem;\n object-fit: contain;\n flex-shrink: 0;\n }\n\n .account-avatar,\n .account-menu-avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n background: color-mix(in srgb, var(--header-bg) 18%, #ded8e7 82%);\n color: var(--header-button-text);\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n }\n\n .account-avatar {\n width: 1.75rem;\n height: 1.75rem;\n border-radius: 999px;\n border: 1.5px solid var(--header-border);\n }\n\n .account-menu-avatar {\n width: 2rem;\n height: 2rem;\n border-radius: 0.5rem;\n }\n\n .account-avatar img,\n .account-menu-avatar img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n\n .account-avatar-img {\n width: 1.75rem;\n height: 1.75rem;\n border-radius: 999px;\n object-fit: cover;\n background-color: var(--header-border);\n }\n\n .account-dropdown {\n position: absolute;\n top: calc(100% + 0.9rem);\n right: 0;\n min-width: 15rem;\n padding: 0.5rem;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: var(--header-border-radius);\n box-shadow: var(--header-shadow);\n z-index: 10;\n }\n\n .account-dropdown[hidden] {\n display: none;\n }\n\n .account-menu-list {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .account-menu-item-link,\n .account-menu-item-button,\n ::slotted([slot='account-menu']) {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n width: 100%;\n box-sizing: border-box;\n color: var(--header-link);\n text-decoration: none;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 10px;\n padding: 0.5rem;\n cursor: pointer;\n font: inherit;\n text-align: left;\n }\n\n .account-menu-item-link:hover,\n .account-menu-item-button:hover {\n color: var(--header-link);\n background: var(--header-menu-item-hover);\n border-color: var(--header-menu-item-hover);\n }\n\n .account-menu-item-link:active,\n .account-menu-item-button:active {\n color: var(--header-link);\n background: var(--header-menu-item-selected);\n border-color: var(--header-menu-item-selected);\n transform: translateY(1px);\n }\n\n .account-switch {\n display: block;\n width: 100%;\n color: var(--header-menu-text);\n text-align: left;\n text-transform: uppercase;\n font-size: 80%;\n }\n\n .dropdown-menu-separator {\n display: block;\n width: calc(100% + 1rem);\n margin: 0.5rem -0.5rem;\n border: 0;\n border-top: 1px solid var(--header-border);\n }\n\n .account-menu-copy {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .account-menu-label {\n color: var(--header-button-text);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .account-menu-webid {\n color: var(--header-button-detail-text);\n font-size: 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .help-menu-container {\n position: relative;\n display: flex;\n align-items: center;\n background: transparent;\n }\n\n .help-menu-trigger {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: 0;\n background: transparent;\n cursor: pointer;\n }\n\n .help-menu-trigger:disabled {\n cursor: default;\n }\n\n .help-dropdown {\n position: absolute;\n top: calc(100% + 0.9rem);\n right: 0;\n min-width: 12rem;\n padding: 0.5rem;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: var(--header-border-radius);\n box-shadow: var(--header-shadow);\n z-index: 10;\n }\n\n .help-dropdown[hidden] {\n display: none;\n }\n\n .help-dropdown-content {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .help-menu-list {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n }\n\n .help-menu-list a,\n .help-menu-list button,\n ::slotted([slot='help-menu']) {\n display: block;\n width: 100%;\n box-sizing: border-box;\n color: var(--header-link);\n text-decoration: none;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 4px;\n padding: 0.375rem 0.5rem;\n cursor: pointer;\n font: inherit;\n text-align: left;\n }\n\n .help-menu-list a:hover,\n .help-menu-list button:hover {\n color: var(--header-link);\n background: var(--header-menu-item-hover);\n border-color: var(--header-menu-item-hover);\n }\n\n .help-menu-list a:active,\n .help-menu-list button:active {\n color: var(--header-link);\n background: var(--header-menu-item-selected);\n border-color: var(--header-menu-item-selected);\n transform: translateY(1px);\n }\n\n ::slotted(a), ::slotted(button) {\n color: var(--header-link);\n text-decoration: none;\n background: var(--header-button-bg);\n border: 1px solid var(--header-border);\n border-radius: 4px;\n padding: 0.25rem 0.5rem;\n cursor: pointer;\n font: inherit;\n }\n\n .help-icon {\n width: 35px;\n height: 35px;\n cursor: pointer;\n }\n\n .help-text {\n color: var(--header-text, #ffffff);\n font: inherit;\n }\n\n .logout-action-icon {\n width: 16px;\n height: 16px;\n display: inline-block;\n object-fit: contain;\n margin-right: 0.5rem;\n }\n `\n\n declare logo: string\n declare helpIcon: string\n declare layout: 'desktop' | 'mobile'\n declare theme: 'light' | 'dark'\n declare brandLink: string\n declare authState: HeaderAuthState\n declare loginAction: HeaderMenuItem\n declare signUpAction: HeaderMenuItem\n declare accountMenu: HeaderAccountMenuItem[]\n declare logoutLabel: string | null\n declare logoutIcon: string\n declare accountIcon: string\n declare accountAvatar: string\n declare accountAvatarFallback: string\n declare loginIcon: string\n declare signUpIcon: string\n declare helpMenuList: HeaderMenuItem[]\n declare accountMenuOpen: boolean\n declare helpMenuOpen: boolean\n declare hasSlottedAccountMenu: boolean\n declare hasSlottedHelpMenu: boolean\n declare authResolved: boolean\n private _refreshPromise: Promise<void> | null = null\n\n private readonly handleAuthSessionChange = () => {\n this.refreshAuthStateFromSession().catch(() => {\n // Keep auth event handling resilient on transient refresh failures.\n })\n }\n\n constructor () {\n super()\n this.logo = DEFAULT_SOLID_ICON_URL\n this.helpIcon = DEFAULT_HELP_MENU_ICON\n this.layout = 'desktop'\n this.theme = 'light'\n this.brandLink = '#'\n this.authState = 'logged-out'\n this.loginAction = { label: 'Log In', action: 'login' }\n this.signUpAction = { label: 'Sign Up', action: 'sign-up', url: DEFAULT_SIGNUP_URL }\n this.accountMenu = []\n this.logoutLabel = 'Log Out'\n this.logoutIcon = ''\n this.accountIcon = '▼'\n this.accountAvatar = ''\n this.accountAvatarFallback = ''\n this.loginIcon = ''\n this.signUpIcon = ''\n this.helpMenuList = []\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n this.hasSlottedAccountMenu = false\n this.hasSlottedHelpMenu = false\n this.authResolved = false\n }\n\n connectedCallback () {\n super.connectedCallback()\n document.addEventListener('click', this.handleDocumentClick)\n window.addEventListener('keydown', this.handleWindowKeydown)\n if (typeof authSession.events?.on === 'function') {\n authSession.events.on('login', this.handleAuthSessionChange)\n authSession.events.on('logout', this.handleAuthSessionChange)\n authSession.events.on('sessionRestore', this.handleAuthSessionChange)\n }\n this.refreshAuthStateFromSession().catch(() => {\n // Keep initial header render resilient on transient refresh failures.\n })\n }\n\n disconnectedCallback () {\n document.removeEventListener('click', this.handleDocumentClick)\n window.removeEventListener('keydown', this.handleWindowKeydown)\n if (typeof authSession.events?.off === 'function') {\n authSession.events.off('login', this.handleAuthSessionChange)\n authSession.events.off('logout', this.handleAuthSessionChange)\n authSession.events.off('sessionRestore', this.handleAuthSessionChange)\n }\n super.disconnectedCallback()\n }\n\n private async refreshAuthStateFromSession () {\n if (!this._refreshPromise) {\n this._refreshPromise = (async () => {\n try {\n await authn.checkUser()\n // Some auth stacks resolve session state asynchronously after first check.\n if (!authn.currentUser()) {\n await authn.checkUser()\n }\n } catch (_err) {\n // Keep rendering even if session refresh cannot complete.\n }\n })()\n }\n\n try {\n await this._refreshPromise\n } finally {\n this._refreshPromise = null\n }\n\n this.authState = authn.currentUser() ? 'logged-in' : 'logged-out'\n this.authResolved = true\n }\n\n private handleHelpMenuClick (item: HeaderMenuItem, event: MouseEvent) {\n event.preventDefault()\n this.helpMenuOpen = false\n this.dispatchEvent(new CustomEvent('help-menu-select', {\n detail: item,\n bubbles: true,\n composed: true\n }))\n if (item.url) {\n const target = item.target || '_blank'\n const features = target === '_blank' ? 'noopener,noreferrer' : undefined\n window.open(item.url, target, features)\n }\n }\n\n private handleAccountMenuClick (item: HeaderAccountMenuItem) {\n this.accountMenuOpen = false\n this.dispatchEvent(new CustomEvent('account-menu-select', {\n detail: item,\n bubbles: true,\n composed: true\n }))\n }\n\n private readonly handleDocumentClick = (event: MouseEvent) => {\n if (!event.composedPath().includes(this)) {\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n }\n }\n\n private readonly handleWindowKeydown = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && (this.accountMenuOpen || this.helpMenuOpen)) {\n this.accountMenuOpen = false\n this.helpMenuOpen = false\n }\n }\n\n private handleAccountSlotChange (event: Event) {\n const slot = event.target as HTMLSlotElement\n this.hasSlottedAccountMenu = slot.assignedElements({ flatten: true }).length > 0\n }\n\n private handleHelpSlotChange (event: Event) {\n const slot = event.target as HTMLSlotElement\n this.hasSlottedHelpMenu = slot.assignedElements({ flatten: true }).length > 0\n }\n\n private toggleAccountMenu (event: MouseEvent) {\n event.preventDefault()\n if (!this.hasAccountMenuItems()) return\n this.helpMenuOpen = false\n this.accountMenuOpen = !this.accountMenuOpen\n }\n\n private toggleHelpMenu (event: MouseEvent) {\n event.preventDefault()\n if (!this.hasHelpMenuItems()) return\n this.accountMenuOpen = false\n this.helpMenuOpen = !this.helpMenuOpen\n }\n\n private hasAccountMenuItems () {\n return Boolean(this.accountMenu?.length || this.hasSlottedAccountMenu || this.logoutLabel)\n }\n\n private hasHelpMenuItems () {\n return Boolean(this.helpMenuList?.length || this.hasSlottedHelpMenu)\n }\n\n private shouldRenderHelpMenu () {\n return this.layout !== 'mobile' && this.hasHelpMenuItems()\n }\n\n private renderLoggedInAvatar (avatar?: string, wrapperClass = 'account-avatar') {\n const hasAvatar = Boolean(avatar)\n const imageSrc = hasAvatar ? avatar : this.accountAvatarFallback || DEFAULT_LOGGEDIN_MENU_BUTTON_AVATAR\n const imageAlt = hasAvatar ? 'Profile Avatar' : 'Default Avatar'\n\n if (this.layout === 'mobile' && wrapperClass === 'account-avatar') {\n return html`<img class=\"account-avatar-img\" src=\"${imageSrc}\" alt=\"${imageAlt}\" />`\n }\n\n return html`\n <span class=\"${wrapperClass}\" aria-hidden=\"true\">\n <img src=\"${imageSrc}\" alt=\"${imageAlt}\" />\n </span>\n `\n }\n\n private renderLoggedOutActions () {\n return html`\n <div class=\"auth-actions\" part=\"auth-actions\">\n <slot name=\"login-action\">\n <solid-ui-login-button\n label=\"${this.loginAction.label}\"\n icon=${ifDefined(this.layout !== 'mobile' ? (this.loginIcon || this.loginAction.icon) : undefined)}\n layout=\"${this.layout}\"\n theme=\"${this.theme}\"\n part=\"login-action\"\n @login-success=\"${() => this.handleLoginSuccess()}\"\n ></solid-ui-login-button>\n </slot>\n <slot name=\"sign-up-action\">\n <solid-ui-signup-button\n label=\"${this.signUpAction.label}\"\n signup-url=\"${ifDefined(this.signUpAction.url)}\"\n layout=\"${this.layout}\"\n .icon=${ifDefined(this.layout !== 'mobile' ? (this.signUpIcon || this.signUpAction.icon) : undefined)}\n theme=\"${this.theme}\"\n part=\"sign-up-action\"\n ></solid-ui-signup-button>\n </slot>\n </div>\n `\n }\n\n private async handleLoginSuccess () {\n await this.refreshAuthStateFromSession()\n this.dispatchEvent(new CustomEvent('auth-action-select', {\n detail: { role: 'login' },\n bubbles: true,\n composed: true\n }))\n }\n\n private async handleLogout () {\n this.accountMenuOpen = false\n const issuer = window.localStorage.getItem('loginIssuer') || ''\n\n try {\n await authSession.logout()\n } catch (_err) {\n // logout errors are non-fatal — proceed to clear state\n }\n\n await clearPersistedAuthState()\n\n const redirectedToServerLogout = await performServerSideLogout({\n issuer,\n postLogoutRedirectPath: '/'\n })\n if (redirectedToServerLogout) {\n return\n }\n\n await this.refreshAuthStateFromSession()\n this.dispatchEvent(new CustomEvent('logout-select', {\n detail: { role: 'logout' },\n bubbles: true,\n composed: true\n }))\n }\n\n private renderAccountMenuItem (item: HeaderAccountMenuItem) {\n const content = html`\n ${this.renderLoggedInAvatar(item.avatar, 'account-menu-avatar')}\n <span class=\"account-menu-copy\">\n <span class=\"account-menu-label\">${item.label}</span>\n ${item.webid && this.layout !== 'mobile' ? html`<span class=\"account-menu-webid\">${item.webid}</span>` : ''}\n </span>\n `\n\n if (item.url) {\n return html`\n <a\n class=\"account-menu-item-link\"\n href=\"${item.url}\"\n @click=\"${() => this.handleAccountMenuClick(item)}\"\n part=\"account-menu-item\"\n role=\"menuitem\"\n >\n ${content}\n </a>\n `\n }\n\n return html`\n <button\n class=\"account-menu-item-button\"\n type=\"button\"\n @click=\"${() => this.handleAccountMenuClick(item)}\"\n part=\"account-menu-item\"\n role=\"menuitem\"\n >\n ${content}\n </button>\n `\n }\n\n private renderLoggedInActions () {\n return html`\n <div class=\"account-menu-container\" part=\"account-menu-container\">\n <slot name=\"account-trigger\">\n <button\n id=\"accountMenuTrigger\"\n class=\"account-menu-trigger\"\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded=\"${this.accountMenuOpen ? 'true' : 'false'}\"\n ?disabled=\"${!this.hasAccountMenuItems()}\"\n @click=\"${(e: MouseEvent) => this.toggleAccountMenu(e)}\"\n part=\"account-menu-trigger\"\n >\n ${this.renderLoggedInAvatar(this.accountAvatar)}\n ${this.layout !== 'mobile' && this.accountIcon\n? html`\n <img class=\"account-menu-trigger-icon\" src=\"${this.accountIcon}\" alt=\"\" aria-hidden=\"true\" />`\n: ''}\n </button>\n </slot>\n\n <nav\n id=\"accountMenu\"\n class=\"account-dropdown\"\n role=\"menu\"\n ?inert=\"${!this.accountMenuOpen || !this.hasAccountMenuItems()}\"\n ?hidden=\"${!this.accountMenuOpen || !this.hasAccountMenuItems()}\"\n part=\"account-dropdown\"\n >\n <slot name=\"account-switch\" class=\"account-switch\">Switch account</slot>\n <hr class=\"dropdown-menu-separator\" />\n <slot name=\"account-menu\" @slotchange=\"${(e: Event) => this.handleAccountSlotChange(e)}\"></slot>\n ${this.accountMenu && this.accountMenu.length\n ? html`\n <ul class=\"account-menu-list\">\n ${this.accountMenu.map((item: HeaderAccountMenuItem) => html`\n <li>${this.renderAccountMenuItem(item)}</li>\n `)}\n </ul>\n `\n : ''}\n ${this.logoutLabel\n ? html`\n <hr class=\"dropdown-menu-separator\" />\n <button\n class=\"account-menu-item-button\"\n type=\"button\"\n @click=\"${() => this.handleLogout()}\"\n part=\"logout-action\"\n role=\"menuitem\"\n >\n ${this.logoutIcon && this.layout !== 'mobile'\n ? html`<img class=\"logout-action-icon\" src=\"${this.logoutIcon}\" alt=\"\" aria-hidden=\"true\" part=\"logout-action-icon\" />`\n : ''}\n ${this.logoutLabel}\n </button>\n `\n : ''}\n </nav>\n </div>\n `\n }\n\n private renderUserArea () {\n if (Features.DESIGN_SYSTEM_HEADER_ACCOUNT) {\n return html`\n <solid-ui-provider>\n <solid-ui-account></solid-ui-account>\n </solid-ui-provider>\n `\n }\n\n if (!this.authResolved) {\n return html`<div class=\"auth-actions\" part=\"auth-actions\"></div>`\n }\n\n if (this.authState === 'logged-out') {\n return this.renderLoggedOutActions()\n }\n\n return this.renderLoggedInActions()\n }\n\n protected firstUpdated () {\n const brandLink = this.shadowRoot?.getElementById('brandLink')\n if (brandLink) {\n brandLink.classList.toggle('brand-not-displayed', this.layout === 'mobile')\n }\n }\n\n protected updated (changedProperties: Map<string, unknown>) {\n if (changedProperties.has('layout')) {\n const brandLink = this.shadowRoot?.getElementById('brandLink')\n if (brandLink) {\n brandLink.classList.toggle('brand-not-displayed', this.layout === 'mobile')\n }\n }\n }\n\n render () {\n return html`\n <div class=\"headerInner\">\n <slot name=\"navigation-toggle\"></slot>\n <a\n id=\"brandLink\"\n class=\"brand\"\n href=\"${this.brandLink}\"\n part=\"brand\"\n >\n <img id=\"brandImg\" src=\"${this.logo}\" alt=\"Logo\" part=\"logo\" />\n </a>\n\n <div class=\"menu\" part=\"menu\">\n ${this.renderUserArea()}\n\n ${this.shouldRenderHelpMenu()\n ? html`\n <div class=\"header-menu-separator\" />`\n : ''}\n\n ${this.shouldRenderHelpMenu()\n ? html`\n <div class=\"help-menu-container\" part=\"help-menu-container\">\n <button\n id=\"helpMenuTrigger\"\n class=\"help-menu-trigger\"\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded=\"${this.helpMenuOpen ? 'true' : 'false'}\"\n ?disabled=\"${!this.hasHelpMenuItems()}\"\n @click=\"${(e: MouseEvent) => this.toggleHelpMenu(e)}\"\n part=\"help-menu-trigger\"\n >\n ${this.helpIcon\n ? html`<img id=\"helpIcon\" class=\"help-icon\" src=\"${this.helpIcon}\" alt=\"Help\" part=\"help-icon\" />`\n : html`<span class=\"help-text\" part=\"help-text\">Help</span>`}\n </button>\n\n <nav\n id=\"helpMenu\"\n class=\"help-dropdown\"\n role=\"menu\"\n ?inert=\"${!this.helpMenuOpen || !this.hasHelpMenuItems()}\"\n ?hidden=\"${!this.helpMenuOpen || !this.hasHelpMenuItems()}\"\n part=\"help-dropdown\"\n >\n <div class=\"help-dropdown-content\" @click=\"${() => { this.helpMenuOpen = false }}\">\n <slot name=\"help-menu\" @slotchange=\"${(e: Event) => this.handleHelpSlotChange(e)}\"></slot>\n ${this.helpMenuList && this.helpMenuList.length\n ? html`\n <ul class=\"help-menu-list\">\n ${this.helpMenuList.map((item: HeaderMenuItem) => html`\n <li>\n ${item.url\n ? html`\n <a\n href=\"${item.url}\"\n target=\"${item.target || '_blank'}\"\n rel=\"${ifDefined((item.target || '_blank') === '_blank' ? 'noopener noreferrer' : undefined)}\"\n @click=\"${(e: MouseEvent) => this.handleHelpMenuClick(item, e)}\"\n part=\"help-menu-item\"\n role=\"menuitem\"\n >\n ${item.label}\n </a>\n `\n : html`\n <button\n type=\"button\"\n @click=\"${(e: MouseEvent) => this.handleHelpMenuClick(item, e)}\"\n part=\"help-menu-item\"\n role=\"menuitem\"\n >\n ${item.label}\n </button>\n `}\n </li>\n `)}\n </ul>\n `\n : ''}\n </div>\n </nav>\n </div>`\n : ''}\n </div>\n </div>\n `\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "solid-ui",
3
- "version": "3.1.3-1",
3
+ "version": "3.1.3-3",
4
4
  "description": "UI library for Solid applications",
5
5
  "main": "dist/index.cjs.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
8
8
  ".": {
9
- "style": "./dist/styles.css",
9
+ "style": "./dist/theme.css",
10
10
  "types": "./dist/index.d.ts",
11
11
  "import": "./dist/index.esm.js",
12
12
  "require": "./dist/index.cjs.js"
@@ -21,25 +21,9 @@
21
21
  "import": "./dist/components/*/index.esm.js",
22
22
  "require": "./dist/components/*/index.cjs.js"
23
23
  },
24
- "./components/actions/button": {
25
- "types": "./dist/components/button/index.d.ts",
26
- "import": "./dist/components/button/index.esm.js",
27
- "require": "./dist/components/button/index.cjs.js"
28
- },
29
- "./components/forms/select": {
30
- "types": "./dist/components/select/index.d.ts",
31
- "import": "./dist/components/select/index.esm.js",
32
- "require": "./dist/components/select/index.cjs.js"
33
- },
34
- "./components/forms/combobox": {
35
- "types": "./dist/components/combobox/index.d.ts",
36
- "import": "./dist/components/combobox/index.esm.js",
37
- "require": "./dist/components/combobox/index.cjs.js"
38
- },
39
- "./components/media/photo-capture": {
40
- "types": "./dist/components/photo-capture/index.d.ts",
41
- "import": "./dist/components/photo-capture/index.esm.js",
42
- "require": "./dist/components/photo-capture/index.cjs.js"
24
+ "./theme.css": {
25
+ "types": "./dist/theme.css.d.ts",
26
+ "style": "./dist/theme.css"
43
27
  }
44
28
  },
45
29
  "files": [
@@ -105,11 +89,17 @@
105
89
  "escape-html": "^1.0.3",
106
90
  "lit": "^3.3.3",
107
91
  "mime-types": "^3.0.2",
108
- "pane-registry": "^3.1.2-test.0",
92
+ "pane-registry": "3.1.2-0",
93
+ "rdflib": "2.3.9",
94
+ "solid-logic": "4.0.8-0",
109
95
  "solid-namespace": "^0.5.4",
110
- "tailwindcss": "^4.3.0",
96
+ "tailwindcss": "4.3.0",
111
97
  "uuid": "^14.0.0"
112
98
  },
99
+ "peerDependencies": {
100
+ "rdflib": "^2.3.8",
101
+ "solid-logic": "^4.0.7"
102
+ },
113
103
  "devDependencies": {
114
104
  "@babel/cli": "^7.28.6",
115
105
  "@babel/core": "^7.29.0",
@@ -1,348 +0,0 @@
1
- import { i as e, n as t, s as n, t as r } from "./lit-CC2G_f_C.js";
2
- //#region src/v2/components/actions/button/Button.ts
3
- var i = class extends r {
4
- static properties = {
5
- label: {
6
- type: String,
7
- reflect: !0
8
- },
9
- type: {
10
- type: String,
11
- reflect: !0
12
- },
13
- disabled: {
14
- type: Boolean,
15
- reflect: !0
16
- },
17
- selected: {
18
- type: Boolean,
19
- reflect: !0
20
- },
21
- ariaLabel: {
22
- type: String,
23
- attribute: "aria-label"
24
- },
25
- name: {
26
- type: String,
27
- reflect: !0
28
- },
29
- value: {
30
- type: String,
31
- reflect: !0
32
- },
33
- variant: {
34
- type: String,
35
- reflect: !0
36
- },
37
- size: {
38
- type: String,
39
- reflect: !0
40
- },
41
- theme: {
42
- type: String,
43
- reflect: !0
44
- },
45
- fullWidth: {
46
- type: Boolean,
47
- attribute: "full-width",
48
- reflect: !0
49
- },
50
- icon: {
51
- type: String,
52
- reflect: !0
53
- },
54
- iconPosition: {
55
- type: String,
56
- attribute: "icon-position",
57
- reflect: !0
58
- },
59
- contentAlign: {
60
- type: String,
61
- attribute: "content-align",
62
- reflect: !0
63
- },
64
- handleClick: { attribute: !1 },
65
- _hasSlottedIcon: { state: !0 }
66
- };
67
- static styles = n`
68
- :host {
69
- display: inline-flex;
70
- align-items: center;
71
- justify-content: center;
72
- --button-background: var(--color-background, #f8f9fb);
73
- --button-text: var(--color-text-subheading, #101828);
74
- --button-border: var(--color-border-button, var(--gray-300, #D1D5DC));
75
- --button-hover-background: var(--color-surface-subtle, rgba(15, 23, 43, 0.04));
76
- --button-hover-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
77
- --button-hover-text: var(--color-text-subheading, #101828);
78
- --button-selected-background: var(--color-surface-selected, var(--color-surface-action, var(--color-primary, #7C4DFF)));
79
- --button-selected-text: var(--color-text-selected, var(--color-text-on-action, var(--white, #FFF)));
80
- --button-selected-border: var(--color-border-selected, var(--color-border-action, var(--color-primary, #7C4DFF)));
81
- --button-icon-color: currentColor;
82
- --button-focus-ring: var(--color-focus-ring, var(--color-primary, #7C4DFF));
83
- --button-height-sm: 1.875rem;
84
- --button-height-md: var(--min-touch-target, 44px);
85
- --button-height-lg: calc(var(--min-touch-target, 44px) + 0.5rem);
86
- --button-padding-x-sm: var(--spacing-xs, 0.75rem);
87
- --button-padding-x-md: var(--spacing-sm, 0.9375rem);
88
- --button-padding-x-lg: var(--spacing-md, 1.25rem);
89
- --button-font-size-sm: var(--font-size-sm, 0.875rem);
90
- --button-font-size-md: var(--font-size-md, 1rem);
91
- --button-font-size-lg: var(--font-size-lg, 1.125rem);
92
- --button-icon-size-sm: var(--icon-xxxs, 0.75rem);
93
- --button-icon-size-md: var(--icon-xxs, 1rem);
94
- --button-icon-size-lg: var(--icon-xxs, 1rem);
95
- --button-padding-sm: 0 var(--button-padding-x-sm);
96
- --button-padding-md: 0 var(--button-padding-x-md);
97
- --button-padding-lg: 0 var(--button-padding-x-lg);
98
- --button-border-width: 1px;
99
- --button-border-radius: var(--border-radius-base, 0.3125rem);
100
- --button-font-weight: var(--font-weight-bold, 600);
101
- --button-line-height: 1;
102
- --button-justify-content: center;
103
- --button-content-justify-content: var(--button-justify-content);
104
- --button-label-text-align: center;
105
- --button-box-shadow: none;
106
- --button-hover-box-shadow: var(--button-box-shadow);
107
- --button-active-box-shadow: var(--button-hover-box-shadow);
108
- --button-active-transform: translateY(1px);
109
- --button-focus-outline: 2px solid var(--button-focus-ring);
110
- --button-focus-outline-offset: 2px;
111
- --button-focus-box-shadow: none;
112
- --button-transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
113
- }
114
-
115
- :host([hidden]) {
116
- display: none;
117
- }
118
-
119
- :host([theme='dark']) {
120
- --button-background: var(--color-background, #242a31);
121
- --button-text: var(--color-text-subheading, #f8f9fb);
122
- --button-border: var(--color-border, #46515b);
123
- --button-hover-background: var(--color-surface-subtle, rgba(15, 23, 43, 0.04));
124
- --button-hover-border: var(--color-border, #46515b);
125
- --button-hover-text: var(--color-text-subheading, #f8f9fb);
126
- }
127
-
128
- :host([variant='primary']) {
129
- --button-background: var(--color-surface-action, var(--color-primary, #7C4DFF));
130
- --button-text: var(--color-text-on-action, var(--white, #FFF));
131
- --button-border: var(--color-border-action, var(--color-primary, #7C4DFF));
132
- --button-hover-background: var(--color-surface-action-hover, #6d3cf2);
133
- --button-hover-border: var(--color-border-action, var(--color-primary, #7C4DFF));
134
- --button-hover-text: var(--color-text-on-action, var(--white, #FFF));
135
- }
136
-
137
- :host([variant='icon']) {
138
- --button-padding-x-sm: var(--spacing-xxs, 0.3125rem);
139
- --button-padding-x-md: var(--spacing-base, 0.5rem);
140
- --button-padding-x-lg: var(--spacing-2xs, 0.625rem);
141
- }
142
-
143
- :host([full-width]) {
144
- width: 100%;
145
- }
146
-
147
- :host([content-align='start']) {
148
- --button-justify-content: flex-start;
149
- --button-content-justify-content: flex-start;
150
- --button-label-text-align: left;
151
- }
152
-
153
- :host([content-align='end']) {
154
- --button-justify-content: flex-end;
155
- --button-content-justify-content: flex-end;
156
- --button-label-text-align: right;
157
- }
158
-
159
- :host([selected]) {
160
- --button-background: var(--button-selected-background);
161
- --button-text: var(--button-selected-text);
162
- --button-border: var(--button-selected-border);
163
- }
164
-
165
- .button {
166
- display: inline-flex;
167
- width: 100%;
168
- min-height: var(--button-height-md);
169
- padding: var(--button-padding-md);
170
- align-items: center;
171
- justify-content: var(--button-justify-content);
172
- gap: var(--spacing-xxs, 0.375rem);
173
- border-radius: var(--button-border-radius);
174
- background: var(--button-background);
175
- border: var(--button-border-width) solid var(--button-border);
176
- box-shadow: var(--button-box-shadow);
177
- color: var(--button-text);
178
- cursor: pointer;
179
- font: inherit;
180
- font-size: var(--button-font-size-md);
181
- font-weight: var(--button-font-weight);
182
- line-height: var(--button-line-height);
183
- white-space: nowrap;
184
- text-decoration: none;
185
- box-sizing: border-box;
186
- transition: var(--button-transition);
187
- }
188
-
189
- :host([size='sm']) .button {
190
- min-height: var(--button-height-sm);
191
- padding: var(--button-padding-sm);
192
- font-size: var(--button-font-size-sm);
193
- }
194
-
195
- :host([size='lg']) .button {
196
- min-height: var(--button-height-lg);
197
- padding: var(--button-padding-lg);
198
- font-size: var(--button-font-size-lg);
199
- }
200
-
201
- .button:hover:not(:disabled) {
202
- background: var(--button-hover-background);
203
- border-color: var(--button-hover-border, var(--button-border));
204
- box-shadow: var(--button-hover-box-shadow, var(--button-box-shadow));
205
- color: var(--button-hover-text);
206
- }
207
-
208
- :host([selected]) .button:hover:not(:disabled) {
209
- background: var(--button-hover-background);
210
- border-color: var(--button-selected-border);
211
- color: var(--button-selected-text);
212
- }
213
-
214
- .button:focus-visible {
215
- outline: var(--button-focus-outline);
216
- outline-offset: var(--button-focus-outline-offset);
217
- box-shadow: var(--button-focus-box-shadow);
218
- }
219
-
220
- .button:disabled {
221
- opacity: 0.6;
222
- cursor: not-allowed;
223
- transform: none;
224
- }
225
-
226
- .button__content {
227
- display: inline-flex;
228
- align-items: center;
229
- justify-content: var(--button-content-justify-content);
230
- gap: inherit;
231
- width: 100%;
232
- }
233
-
234
- :host([icon-position='end']) .button__content {
235
- flex-direction: row-reverse;
236
- }
237
-
238
- .button__icon {
239
- width: var(--button-icon-size-md);
240
- height: var(--button-icon-size-md);
241
- display: inline-flex;
242
- align-items: center;
243
- justify-content: center;
244
- color: var(--button-icon-color);
245
- flex-shrink: 0;
246
- }
247
-
248
- :host([size='sm']) .button__icon {
249
- width: var(--button-icon-size-sm);
250
- height: var(--button-icon-size-sm);
251
- }
252
-
253
- :host([size='lg']) .button__icon {
254
- width: var(--button-icon-size-lg);
255
- height: var(--button-icon-size-lg);
256
- }
257
-
258
- .button__icon ::slotted(*) {
259
- width: 100%;
260
- height: 100%;
261
- display: block;
262
- }
263
-
264
- .button__icon-image {
265
- width: 100%;
266
- height: 100%;
267
- object-fit: contain;
268
- }
269
-
270
- .button__label {
271
- display: inline-flex;
272
- align-items: center;
273
- justify-content: var(--button-content-justify-content);
274
- min-width: 0;
275
- width: 100%;
276
- text-align: var(--button-label-text-align);
277
- }
278
-
279
- :host([variant='icon']) .button__label {
280
- display: none;
281
- }
282
-
283
- .button:active {
284
- transform: var(--button-active-transform);
285
- box-shadow: var(--button-active-box-shadow, var(--button-hover-box-shadow, var(--button-box-shadow)));
286
- }
287
- `;
288
- _iconSlotObserver;
289
- constructor() {
290
- super(), this.label = "", this.type = "button", this.disabled = !1, this.selected = !1, this.ariaLabel = "", this.name = "", this.value = "", this.variant = "secondary", this.size = "md", this.theme = "light", this.fullWidth = !1, this.icon = "", this.iconPosition = "start", this.contentAlign = "center", this.handleClick = void 0, this._hasSlottedIcon = !1;
291
- }
292
- connectedCallback() {
293
- super.connectedCallback(), this._syncSlottedIconPresence(), this._iconSlotObserver = new MutationObserver(() => {
294
- this._syncSlottedIconPresence();
295
- }), this._iconSlotObserver.observe(this, {
296
- childList: !0,
297
- attributes: !0,
298
- attributeFilter: ["slot"]
299
- });
300
- }
301
- disconnectedCallback() {
302
- this._iconSlotObserver?.disconnect(), this._iconSlotObserver = void 0, super.disconnectedCallback();
303
- }
304
- _handleButtonClick(e) {
305
- this.handleClick?.(e);
306
- }
307
- _handleIconSlotChange(e) {
308
- let t = e.target;
309
- this._hasSlottedIcon = t.assignedNodes({ flatten: !0 }).length > 0;
310
- }
311
- _syncSlottedIconPresence() {
312
- this._hasSlottedIcon = this.querySelector("[slot=\"icon\"]") !== null;
313
- }
314
- _renderIcon() {
315
- return !this._hasSlottedIcon && !this.icon ? t : e`
316
- <span class="button__icon" part="icon">
317
- <slot name="icon" @slotchange=${this._handleIconSlotChange}></slot>
318
- ${!this._hasSlottedIcon && this.icon ? e`<img class="button__icon-image" src=${this.icon} alt="" aria-hidden="true" />` : t}
319
- </span>
320
- `;
321
- }
322
- render() {
323
- return e`
324
- <button
325
- class="button"
326
- type=${this.type}
327
- ?disabled=${this.disabled}
328
- aria-label=${this.ariaLabel || t}
329
- name=${this.name || t}
330
- value=${this.value || t}
331
- part="button"
332
- @click=${this._handleButtonClick}
333
- >
334
- <span class="button__content">
335
- ${this._renderIcon()}
336
- <span class="button__label" part="label">
337
- <slot>${this.label}</slot>
338
- </span>
339
- </span>
340
- </button>
341
- `;
342
- }
343
- }, a = "solid-ui-button";
344
- customElements.get(a) || customElements.define(a, i);
345
- //#endregion
346
- export { i as t };
347
-
348
- //# sourceMappingURL=button-znE29yDV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button-znE29yDV.js","names":["LitElement","html","css","nothing","Button","properties","label","type","String","reflect","disabled","Boolean","selected","ariaLabel","attribute","name","value","variant","size","theme","fullWidth","icon","iconPosition","contentAlign","handleClick","_hasSlottedIcon","state","styles","_iconSlotObserver","constructor","undefined","connectedCallback","_syncSlottedIconPresence","MutationObserver","observe","childList","attributes","attributeFilter","disconnectedCallback","disconnect","_handleButtonClick","event","_handleIconSlotChange","slot","target","assignedNodes","flatten","length","querySelector","_renderIcon","render","Button","BUTTON_TAG_NAME","customElements","get","define"],"sources":["../../src/v2/components/actions/button/Button.ts","../../src/v2/components/actions/button/index.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit'\n\nexport class Button extends LitElement {\n static properties = {\n label: { type: String, reflect: true },\n type: { type: String, reflect: true },\n disabled: { type: Boolean, reflect: true },\n selected: { type: Boolean, reflect: true },\n ariaLabel: { type: String, attribute: 'aria-label' },\n name: { type: String, reflect: true },\n value: { type: String, reflect: true },\n variant: { type: String, reflect: true },\n size: { type: String, reflect: true },\n theme: { type: String, reflect: true },\n fullWidth: { type: Boolean, attribute: 'full-width', reflect: true },\n icon: { type: String, reflect: true },\n iconPosition: { type: String, attribute: 'icon-position', reflect: true },\n contentAlign: { type: String, attribute: 'content-align', reflect: true },\n handleClick: { attribute: false },\n _hasSlottedIcon: { state: true }\n }\n\n static styles = css`\n :host {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n --button-background: var(--color-background, #f8f9fb);\n --button-text: var(--color-text-subheading, #101828);\n --button-border: var(--color-border-button, var(--gray-300, #D1D5DC));\n --button-hover-background: var(--color-surface-subtle, rgba(15, 23, 43, 0.04));\n --button-hover-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));\n --button-hover-text: var(--color-text-subheading, #101828);\n --button-selected-background: var(--color-surface-selected, var(--color-surface-action, var(--color-primary, #7C4DFF)));\n --button-selected-text: var(--color-text-selected, var(--color-text-on-action, var(--white, #FFF)));\n --button-selected-border: var(--color-border-selected, var(--color-border-action, var(--color-primary, #7C4DFF)));\n --button-icon-color: currentColor;\n --button-focus-ring: var(--color-focus-ring, var(--color-primary, #7C4DFF));\n --button-height-sm: 1.875rem;\n --button-height-md: var(--min-touch-target, 44px);\n --button-height-lg: calc(var(--min-touch-target, 44px) + 0.5rem);\n --button-padding-x-sm: var(--spacing-xs, 0.75rem);\n --button-padding-x-md: var(--spacing-sm, 0.9375rem);\n --button-padding-x-lg: var(--spacing-md, 1.25rem);\n --button-font-size-sm: var(--font-size-sm, 0.875rem);\n --button-font-size-md: var(--font-size-md, 1rem);\n --button-font-size-lg: var(--font-size-lg, 1.125rem);\n --button-icon-size-sm: var(--icon-xxxs, 0.75rem);\n --button-icon-size-md: var(--icon-xxs, 1rem);\n --button-icon-size-lg: var(--icon-xxs, 1rem);\n --button-padding-sm: 0 var(--button-padding-x-sm);\n --button-padding-md: 0 var(--button-padding-x-md);\n --button-padding-lg: 0 var(--button-padding-x-lg);\n --button-border-width: 1px;\n --button-border-radius: var(--border-radius-base, 0.3125rem);\n --button-font-weight: var(--font-weight-bold, 600);\n --button-line-height: 1;\n --button-justify-content: center;\n --button-content-justify-content: var(--button-justify-content);\n --button-label-text-align: center;\n --button-box-shadow: none;\n --button-hover-box-shadow: var(--button-box-shadow);\n --button-active-box-shadow: var(--button-hover-box-shadow);\n --button-active-transform: translateY(1px);\n --button-focus-outline: 2px solid var(--button-focus-ring);\n --button-focus-outline-offset: 2px;\n --button-focus-box-shadow: none;\n --button-transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;\n }\n\n :host([hidden]) {\n display: none;\n }\n\n :host([theme='dark']) {\n --button-background: var(--color-background, #242a31);\n --button-text: var(--color-text-subheading, #f8f9fb);\n --button-border: var(--color-border, #46515b);\n --button-hover-background: var(--color-surface-subtle, rgba(15, 23, 43, 0.04));\n --button-hover-border: var(--color-border, #46515b);\n --button-hover-text: var(--color-text-subheading, #f8f9fb);\n }\n\n :host([variant='primary']) {\n --button-background: var(--color-surface-action, var(--color-primary, #7C4DFF));\n --button-text: var(--color-text-on-action, var(--white, #FFF));\n --button-border: var(--color-border-action, var(--color-primary, #7C4DFF));\n --button-hover-background: var(--color-surface-action-hover, #6d3cf2);\n --button-hover-border: var(--color-border-action, var(--color-primary, #7C4DFF));\n --button-hover-text: var(--color-text-on-action, var(--white, #FFF));\n }\n\n :host([variant='icon']) {\n --button-padding-x-sm: var(--spacing-xxs, 0.3125rem);\n --button-padding-x-md: var(--spacing-base, 0.5rem);\n --button-padding-x-lg: var(--spacing-2xs, 0.625rem);\n }\n\n :host([full-width]) {\n width: 100%;\n }\n\n :host([content-align='start']) {\n --button-justify-content: flex-start;\n --button-content-justify-content: flex-start;\n --button-label-text-align: left;\n }\n\n :host([content-align='end']) {\n --button-justify-content: flex-end;\n --button-content-justify-content: flex-end;\n --button-label-text-align: right;\n }\n\n :host([selected]) {\n --button-background: var(--button-selected-background);\n --button-text: var(--button-selected-text);\n --button-border: var(--button-selected-border);\n }\n\n .button {\n display: inline-flex;\n width: 100%;\n min-height: var(--button-height-md);\n padding: var(--button-padding-md);\n align-items: center;\n justify-content: var(--button-justify-content);\n gap: var(--spacing-xxs, 0.375rem);\n border-radius: var(--button-border-radius);\n background: var(--button-background);\n border: var(--button-border-width) solid var(--button-border);\n box-shadow: var(--button-box-shadow);\n color: var(--button-text);\n cursor: pointer;\n font: inherit;\n font-size: var(--button-font-size-md);\n font-weight: var(--button-font-weight);\n line-height: var(--button-line-height);\n white-space: nowrap;\n text-decoration: none;\n box-sizing: border-box;\n transition: var(--button-transition);\n }\n\n :host([size='sm']) .button {\n min-height: var(--button-height-sm);\n padding: var(--button-padding-sm);\n font-size: var(--button-font-size-sm);\n }\n\n :host([size='lg']) .button {\n min-height: var(--button-height-lg);\n padding: var(--button-padding-lg);\n font-size: var(--button-font-size-lg);\n }\n\n .button:hover:not(:disabled) {\n background: var(--button-hover-background);\n border-color: var(--button-hover-border, var(--button-border));\n box-shadow: var(--button-hover-box-shadow, var(--button-box-shadow));\n color: var(--button-hover-text);\n }\n\n :host([selected]) .button:hover:not(:disabled) {\n background: var(--button-hover-background);\n border-color: var(--button-selected-border);\n color: var(--button-selected-text);\n }\n \n .button:focus-visible {\n outline: var(--button-focus-outline);\n outline-offset: var(--button-focus-outline-offset);\n box-shadow: var(--button-focus-box-shadow);\n }\n\n .button:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n transform: none;\n }\n\n .button__content {\n display: inline-flex;\n align-items: center;\n justify-content: var(--button-content-justify-content);\n gap: inherit;\n width: 100%;\n }\n\n :host([icon-position='end']) .button__content {\n flex-direction: row-reverse;\n }\n\n .button__icon {\n width: var(--button-icon-size-md);\n height: var(--button-icon-size-md);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--button-icon-color);\n flex-shrink: 0;\n }\n\n :host([size='sm']) .button__icon {\n width: var(--button-icon-size-sm);\n height: var(--button-icon-size-sm);\n }\n\n :host([size='lg']) .button__icon {\n width: var(--button-icon-size-lg);\n height: var(--button-icon-size-lg);\n }\n\n .button__icon ::slotted(*) {\n width: 100%;\n height: 100%;\n display: block;\n }\n\n .button__icon-image {\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n\n .button__label {\n display: inline-flex;\n align-items: center;\n justify-content: var(--button-content-justify-content);\n min-width: 0;\n width: 100%;\n text-align: var(--button-label-text-align);\n }\n\n :host([variant='icon']) .button__label {\n display: none;\n }\n\n .button:active {\n transform: var(--button-active-transform);\n box-shadow: var(--button-active-box-shadow, var(--button-hover-box-shadow, var(--button-box-shadow)));\n }\n `\n\n declare label: string\n declare type: 'button' | 'submit' | 'reset'\n declare disabled: boolean\n declare selected: boolean\n declare ariaLabel: string\n declare name: string\n declare value: string\n declare variant: 'primary' | 'secondary' | 'icon'\n declare size: 'sm' | 'md' | 'lg'\n declare theme: 'light' | 'dark'\n declare fullWidth: boolean\n declare icon: string\n declare iconPosition: 'start' | 'end'\n declare contentAlign: 'start' | 'center' | 'end'\n declare handleClick?: (event: MouseEvent) => void\n declare _hasSlottedIcon: boolean\n private _iconSlotObserver?: MutationObserver\n\n constructor () {\n super()\n this.label = ''\n this.type = 'button'\n this.disabled = false\n this.selected = false\n this.ariaLabel = ''\n this.name = ''\n this.value = ''\n this.variant = 'secondary'\n this.size = 'md'\n this.theme = 'light'\n this.fullWidth = false\n this.icon = ''\n this.iconPosition = 'start'\n this.contentAlign = 'center'\n this.handleClick = undefined\n this._hasSlottedIcon = false\n }\n\n connectedCallback () {\n super.connectedCallback()\n this._syncSlottedIconPresence()\n\n this._iconSlotObserver = new MutationObserver(() => {\n this._syncSlottedIconPresence()\n })\n\n this._iconSlotObserver.observe(this, {\n childList: true,\n attributes: true,\n attributeFilter: ['slot']\n })\n }\n\n disconnectedCallback () {\n this._iconSlotObserver?.disconnect()\n this._iconSlotObserver = undefined\n super.disconnectedCallback()\n }\n\n private _handleButtonClick (event: MouseEvent) {\n this.handleClick?.(event)\n }\n\n private _handleIconSlotChange (event: Event) {\n const slot = event.target as HTMLSlotElement\n this._hasSlottedIcon = slot.assignedNodes({ flatten: true }).length > 0\n }\n\n private _syncSlottedIconPresence () {\n this._hasSlottedIcon = this.querySelector('[slot=\"icon\"]') !== null\n }\n\n private _renderIcon () {\n if (!this._hasSlottedIcon && !this.icon) {\n return nothing\n }\n\n return html`\n <span class=\"button__icon\" part=\"icon\">\n <slot name=\"icon\" @slotchange=${this._handleIconSlotChange}></slot>\n ${!this._hasSlottedIcon && this.icon\n ? html`<img class=\"button__icon-image\" src=${this.icon} alt=\"\" aria-hidden=\"true\" />`\n : nothing}\n </span>\n `\n }\n\n render () {\n return html`\n <button\n class=\"button\"\n type=${this.type}\n ?disabled=${this.disabled}\n aria-label=${this.ariaLabel || nothing}\n name=${this.name || nothing}\n value=${this.value || nothing}\n part=\"button\"\n @click=${this._handleButtonClick}\n >\n <span class=\"button__content\">\n ${this._renderIcon()}\n <span class=\"button__label\" part=\"label\">\n <slot>${this.label}</slot>\n </span>\n </span>\n </button>\n `\n }\n}\n","import { Button } from './Button'\n\nexport { Button }\n\nconst BUTTON_TAG_NAME = 'solid-ui-button'\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'solid-ui-button': Button\n }\n}\n\nif (!customElements.get(BUTTON_TAG_NAME)) {\n customElements.define(BUTTON_TAG_NAME, Button)\n}\n"],"mappings":"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"}