solid-ui 3.1.3-6 → 3.1.3-8

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 (552) hide show
  1. package/dist/_virtual/~icons/app/solid-emblem.cjs.js +3 -0
  2. package/dist/_virtual/~icons/app/solid-emblem.cjs.js.map +1 -0
  3. package/dist/_virtual/~icons/app/solid-emblem.esm.js +11 -0
  4. package/dist/_virtual/~icons/app/solid-emblem.esm.js.map +1 -0
  5. package/dist/_virtual/~icons/lucide/chevron-down.cjs.js +1 -1
  6. package/dist/_virtual/~icons/lucide/chevron-down.esm.js +1 -0
  7. package/dist/_virtual/~icons/lucide/circle-user.cjs.js +1 -1
  8. package/dist/_virtual/~icons/lucide/circle-user.esm.js +1 -0
  9. package/dist/_virtual/~icons/lucide/log-in.cjs.js +1 -1
  10. package/dist/_virtual/~icons/lucide/log-in.esm.js +1 -0
  11. package/dist/_virtual/~icons/lucide/log-out.cjs.js +1 -1
  12. package/dist/_virtual/~icons/lucide/log-out.esm.js +1 -0
  13. package/dist/_virtual/~icons/lucide/user.cjs.js +1 -1
  14. package/dist/_virtual/~icons/lucide/user.esm.js +1 -0
  15. package/dist/_virtual/~icons/lucide/x.cjs.js +1 -1
  16. package/dist/_virtual/~icons/lucide/x.esm.js +1 -0
  17. package/dist/_virtual/~icons/svg-spinners/180-ring.cjs.js +1 -1
  18. package/dist/_virtual/~icons/svg-spinners/180-ring.esm.js +1 -0
  19. package/dist/acl/access-controller.cjs.js +1 -1
  20. package/dist/acl/access-controller.cjs.js.map +1 -1
  21. package/dist/acl/access-controller.esm.js.map +1 -1
  22. package/dist/acl/access-groups.cjs.js.map +1 -1
  23. package/dist/acl/access-groups.esm.js.map +1 -1
  24. package/dist/acl/acl-control.cjs.js +1 -1
  25. package/dist/acl/acl-control.cjs.js.map +1 -1
  26. package/dist/acl/acl-control.esm.js +1 -1
  27. package/dist/acl/acl-control.esm.js.map +1 -1
  28. package/dist/acl/acl.cjs.js.map +1 -1
  29. package/dist/acl/acl.esm.js.map +1 -1
  30. package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
  31. package/dist/acl/add-agent-buttons.esm.js.map +1 -1
  32. package/dist/breakpoints.css +1 -0
  33. package/dist/breakpoints.css.d.ts +1 -0
  34. package/dist/chat/bookmarks.cjs.js +1 -1
  35. package/dist/chat/bookmarks.cjs.js.map +1 -1
  36. package/dist/chat/bookmarks.esm.js +1 -1
  37. package/dist/chat/bookmarks.esm.js.map +1 -1
  38. package/dist/chat/chatLogic.cjs.js.map +1 -1
  39. package/dist/chat/chatLogic.esm.js.map +1 -1
  40. package/dist/chat/dateFolder.cjs.js +1 -1
  41. package/dist/chat/dateFolder.cjs.js.map +1 -1
  42. package/dist/chat/dateFolder.esm.js +1 -1
  43. package/dist/chat/dateFolder.esm.js.map +1 -1
  44. package/dist/chat/infinite.cjs.js +1 -1
  45. package/dist/chat/infinite.cjs.js.map +1 -1
  46. package/dist/chat/infinite.esm.js +1 -1
  47. package/dist/chat/infinite.esm.js.map +1 -1
  48. package/dist/chat/keys.cjs.js +1 -1
  49. package/dist/chat/keys.cjs.js.map +1 -1
  50. package/dist/chat/keys.esm.js +1 -1
  51. package/dist/chat/keys.esm.js.map +1 -1
  52. package/dist/chat/message.cjs.js +1 -1
  53. package/dist/chat/message.cjs.js.map +1 -1
  54. package/dist/chat/message.esm.js +24 -24
  55. package/dist/chat/message.esm.js.map +1 -1
  56. package/dist/chat/messageTools.cjs.js.map +1 -1
  57. package/dist/chat/messageTools.esm.js.map +1 -1
  58. package/dist/chat/signature.cjs.js +1 -1
  59. package/dist/chat/signature.cjs.js.map +1 -1
  60. package/dist/chat/signature.esm.js +1 -1
  61. package/dist/chunks/{DialogProvider-DphduSXG.js → DialogProvider-Bt65G0Tk.js} +4 -4
  62. package/dist/chunks/DialogProvider-Bt65G0Tk.js.map +1 -0
  63. package/dist/chunks/{account-CFhrB0LO.js → account-jSZP2tZ5.js} +76 -60
  64. package/dist/chunks/account-jSZP2tZ5.js.map +1 -0
  65. package/dist/chunks/{auth-Cpf3HYqF.js → auth-CZOEEeJ8.js} +23 -23
  66. package/dist/chunks/{auth-Cpf3HYqF.js.map → auth-CZOEEeJ8.js.map} +1 -1
  67. package/dist/chunks/{avatar-D281qln0.js → avatar-BugsRJZg.js} +5 -5
  68. package/dist/chunks/avatar-BugsRJZg.js.map +1 -0
  69. package/dist/chunks/{button-DbKYu6-r.js → button-0s0lZdxm.js} +2 -2
  70. package/dist/chunks/{button-DbKYu6-r.js.map → button-0s0lZdxm.js.map} +1 -1
  71. package/dist/chunks/chunk.K442ELDU-TtQSV9g1.js +1516 -0
  72. package/dist/chunks/chunk.K442ELDU-TtQSV9g1.js.map +1 -0
  73. package/dist/chunks/combobox-Cxi8xUMn.js +473 -0
  74. package/dist/chunks/combobox-Cxi8xUMn.js.map +1 -0
  75. package/dist/chunks/{combobox-option-Ck0mu4Gc.js → combobox-option-DiR3VpyT.js} +2 -2
  76. package/dist/chunks/{combobox-option-Ck0mu4Gc.js.map → combobox-option-DiR3VpyT.js.map} +1 -1
  77. package/dist/chunks/{components-BlEGdx4i.js → components-C1LEhsaK.js} +5 -9
  78. package/dist/chunks/components-C1LEhsaK.js.map +1 -0
  79. package/dist/chunks/{context-DJ_8r7Oc.js → context-uE5jJlS0.js} +2 -2
  80. package/dist/chunks/{context-DJ_8r7Oc.js.map → context-uE5jJlS0.js.map} +1 -1
  81. package/dist/chunks/decorators-BiCkPd_3.js.map +1 -1
  82. package/dist/chunks/{dialog-DlBtmOm6.js → dialog-BAzrHJ8w.js} +6 -6
  83. package/dist/chunks/dialog-BAzrHJ8w.js.map +1 -0
  84. package/dist/chunks/{dialog-content-CMeH_BD7.js → dialog-content-fdJrkCyB.js} +2 -2
  85. package/dist/chunks/{dialog-content-CMeH_BD7.js.map → dialog-content-fdJrkCyB.js.map} +1 -1
  86. package/dist/chunks/{dialog-footer-D0zzIMlx.js → dialog-footer-Bs_p2Nn9.js} +2 -2
  87. package/dist/chunks/{dialog-footer-D0zzIMlx.js.map → dialog-footer-Bs_p2Nn9.js.map} +1 -1
  88. package/dist/chunks/{dialog-header-DeC1iiLD.js → dialog-header-CWIAAoDo.js} +2 -2
  89. package/dist/chunks/{dialog-header-DeC1iiLD.js.map → dialog-header-CWIAAoDo.js.map} +1 -1
  90. package/dist/chunks/{dialogs-root-BcUcRuAt.js → dialogs-root-Cv932Aqm.js} +3 -3
  91. package/dist/chunks/{dialogs-root-BcUcRuAt.js.map → dialogs-root-Cv932Aqm.js.map} +1 -1
  92. package/dist/chunks/{footer-Bxe4WPgl.js → footer-kVa_uMeQ.js} +3 -3
  93. package/dist/chunks/{footer-Bxe4WPgl.js.map → footer-kVa_uMeQ.js.map} +1 -1
  94. package/dist/chunks/{guard-Da3znlJI.js → guard-Cml6dHTv.js} +4 -4
  95. package/dist/chunks/{guard-Da3znlJI.js.map → guard-Cml6dHTv.js.map} +1 -1
  96. package/dist/chunks/{headerFooterHelpers-5LYv-0Rt.js → headerFooterHelpers-BiZ6X10e.js} +15 -15
  97. package/dist/chunks/{headerFooterHelpers-5LYv-0Rt.js.map → headerFooterHelpers-BiZ6X10e.js.map} +1 -1
  98. package/dist/chunks/{input-Bkzi4zSV.js → input-BF224Jid.js} +2 -2
  99. package/dist/chunks/{input-Bkzi4zSV.js.map → input-BF224Jid.js.map} +1 -1
  100. package/dist/chunks/{jsonld-DZG2v1pE.js → jsonld-Cd-ZhJmZ.js} +54 -54
  101. package/dist/chunks/{jsonld-DZG2v1pE.js.map → jsonld-Cd-ZhJmZ.js.map} +1 -1
  102. package/dist/chunks/lit-C4H1jI4q.js.map +1 -1
  103. package/dist/chunks/{login-button-C603hM0G.js → login-button-pe1-DVNZ.js} +5 -5
  104. package/dist/chunks/{login-button-C603hM0G.js.map → login-button-pe1-DVNZ.js.map} +1 -1
  105. package/dist/chunks/{logout-button-Cxzpq-C3.js → logout-button-C5dtQiBB.js} +5 -5
  106. package/dist/chunks/{logout-button-Cxzpq-C3.js.map → logout-button-C5dtQiBB.js.map} +1 -1
  107. package/dist/chunks/{menu-aQiqq1ET.js → menu-DNcuV-1J.js} +183 -1693
  108. package/dist/chunks/menu-DNcuV-1J.js.map +1 -0
  109. package/dist/chunks/{menu-item-DBy4o-M4.js → menu-item-CWg-eS4V.js} +8 -6
  110. package/dist/chunks/menu-item-CWg-eS4V.js.map +1 -0
  111. package/dist/chunks/photo-capture-tiBsdSbA.js.map +1 -1
  112. package/dist/chunks/{provider-DZmdgerD.js → provider-DRxSExO6.js} +5 -5
  113. package/dist/chunks/{provider-DZmdgerD.js.map → provider-DRxSExO6.js.map} +1 -1
  114. package/dist/chunks/{select-wczAzbZF.js → select-D8dW53pr.js} +2 -2
  115. package/dist/chunks/{select-wczAzbZF.js.map → select-D8dW53pr.js.map} +1 -1
  116. package/dist/chunks/{select-option-hd_d1RNj.js → select-option-B-6ULCpQ.js} +2 -2
  117. package/dist/chunks/{select-option-hd_d1RNj.js.map → select-option-B-6ULCpQ.js.map} +1 -1
  118. package/dist/chunks/{signup-button-CsRaOUI4.js → signup-button-QvYELqb6.js} +5 -5
  119. package/dist/chunks/{signup-button-CsRaOUI4.js.map → signup-button-QvYELqb6.js.map} +1 -1
  120. package/dist/chunks/solid-emblem-BDzhMTjL.js +185 -0
  121. package/dist/chunks/solid-emblem-BDzhMTjL.js.map +1 -0
  122. package/dist/chunks/{solid-logic.esm-7q6hmfIF.js → solid-logic.esm-BhVcNu8u.js} +2517 -2521
  123. package/dist/chunks/solid-logic.esm-BhVcNu8u.js.map +1 -0
  124. package/dist/chunks/{src-BOU-JwWx.js → src-DYvSns7X.js} +2378 -2354
  125. package/dist/chunks/src-DYvSns7X.js.map +1 -0
  126. package/dist/components/account/Account.cjs.js +7 -2
  127. package/dist/components/account/Account.cjs.js.map +1 -1
  128. package/dist/components/account/Account.d.ts +8 -1
  129. package/dist/components/account/Account.d.ts.map +1 -1
  130. package/dist/components/account/Account.esm.js +64 -48
  131. package/dist/components/account/Account.esm.js.map +1 -1
  132. package/dist/components/account/Account.stories.d.ts +3 -8
  133. package/dist/components/account/Account.stories.d.ts.map +1 -1
  134. package/dist/components/account/Account.styles.cjs.js +1 -1
  135. package/dist/components/account/Account.styles.cjs.js.map +1 -1
  136. package/dist/components/account/Account.styles.esm.js +1 -1
  137. package/dist/components/account/Account.styles.esm.js.map +1 -1
  138. package/dist/components/account/index.cjs.js +1 -1
  139. package/dist/components/account/index.cjs.js.map +1 -1
  140. package/dist/components/account/index.d.ts +2 -2
  141. package/dist/components/account/index.d.ts.map +1 -1
  142. package/dist/components/account/index.esm.js +1 -1
  143. package/dist/components/account/index.esm.js.map +1 -1
  144. package/dist/components/account.js +1 -1
  145. package/dist/components/avatar/Avatar.cjs.js +1 -1
  146. package/dist/components/avatar/Avatar.cjs.js.map +1 -1
  147. package/dist/components/avatar/Avatar.esm.js +1 -1
  148. package/dist/components/avatar/Avatar.styles.cjs.js +1 -1
  149. package/dist/components/avatar/Avatar.styles.cjs.js.map +1 -1
  150. package/dist/components/avatar/Avatar.styles.esm.js +1 -1
  151. package/dist/components/avatar/Avatar.styles.esm.js.map +1 -1
  152. package/dist/components/avatar/index.cjs.js +1 -1
  153. package/dist/components/avatar/index.esm.js +1 -1
  154. package/dist/components/avatar.js +1 -1
  155. package/dist/components/button/Button.cjs.js +1 -1
  156. package/dist/components/button/Button.cjs.js.map +1 -1
  157. package/dist/components/button/Button.esm.js +1 -1
  158. package/dist/components/button/Button.esm.js.map +1 -1
  159. package/dist/components/button/index.cjs.js +1 -1
  160. package/dist/components/button/index.esm.js +3 -3
  161. package/dist/components/button.js +1 -1
  162. package/dist/components/combobox/Combobox.cjs.js +57 -25
  163. package/dist/components/combobox/Combobox.cjs.js.map +1 -1
  164. package/dist/components/combobox/Combobox.d.ts +22 -3
  165. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  166. package/dist/components/combobox/Combobox.esm.js +220 -101
  167. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  168. package/dist/components/combobox/Combobox.styles.cjs.js +1 -1
  169. package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -1
  170. package/dist/components/combobox/Combobox.styles.esm.js +1 -1
  171. package/dist/components/combobox/Combobox.styles.esm.js.map +1 -1
  172. package/dist/components/combobox/index.cjs.js +1 -1
  173. package/dist/components/combobox/index.esm.js +1 -1
  174. package/dist/components/combobox-option/ComboboxOption.cjs.js +1 -1
  175. package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -1
  176. package/dist/components/combobox-option/ComboboxOption.esm.js +1 -1
  177. package/dist/components/combobox-option/index.cjs.js +1 -1
  178. package/dist/components/combobox-option/index.esm.js +1 -1
  179. package/dist/components/combobox-option.js +1 -1
  180. package/dist/components/combobox.js +1 -1
  181. package/dist/components/dialog/Dialog.cjs.js +2 -2
  182. package/dist/components/dialog/Dialog.cjs.js.map +1 -1
  183. package/dist/components/dialog/Dialog.d.ts.map +1 -1
  184. package/dist/components/dialog/Dialog.esm.js +2 -2
  185. package/dist/components/dialog/Dialog.esm.js.map +1 -1
  186. package/dist/components/dialog/index.cjs.js +1 -1
  187. package/dist/components/dialog/index.esm.js +1 -1
  188. package/dist/components/dialog-content/DialogContent.cjs.js +1 -1
  189. package/dist/components/dialog-content/DialogContent.cjs.js.map +1 -1
  190. package/dist/components/dialog-content/DialogContent.esm.js +1 -1
  191. package/dist/components/dialog-content/DialogContent.esm.js.map +1 -1
  192. package/dist/components/dialog-content/index.cjs.js +1 -1
  193. package/dist/components/dialog-content/index.esm.js +1 -1
  194. package/dist/components/dialog-content.js +1 -1
  195. package/dist/components/dialog-footer/DialogFooter.cjs.js +1 -1
  196. package/dist/components/dialog-footer/DialogFooter.cjs.js.map +1 -1
  197. package/dist/components/dialog-footer/DialogFooter.esm.js +1 -1
  198. package/dist/components/dialog-footer/DialogFooter.esm.js.map +1 -1
  199. package/dist/components/dialog-footer/index.cjs.js +1 -1
  200. package/dist/components/dialog-footer/index.esm.js +1 -1
  201. package/dist/components/dialog-footer.js +1 -1
  202. package/dist/components/dialog-header/DialogHeader.cjs.js +1 -1
  203. package/dist/components/dialog-header/DialogHeader.cjs.js.map +1 -1
  204. package/dist/components/dialog-header/DialogHeader.esm.js +1 -1
  205. package/dist/components/dialog-header/DialogHeader.esm.js.map +1 -1
  206. package/dist/components/dialog-header/index.cjs.js +1 -1
  207. package/dist/components/dialog-header/index.esm.js +1 -1
  208. package/dist/components/dialog-header.js +1 -1
  209. package/dist/components/dialog-provider/DialogProvider.cjs.js +1 -1
  210. package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
  211. package/dist/components/dialog-provider/DialogProvider.esm.js +2 -2
  212. package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -1
  213. package/dist/components/dialog-provider/index.cjs.js +1 -1
  214. package/dist/components/dialog-provider/index.esm.js +1 -1
  215. package/dist/components/dialog-provider.js +1 -1
  216. package/dist/components/dialog.js +1 -1
  217. package/dist/components/dialogs-root/DialogsRoot.cjs.js +1 -1
  218. package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
  219. package/dist/components/dialogs-root/DialogsRoot.esm.js +1 -1
  220. package/dist/components/dialogs-root/index.cjs.js +1 -1
  221. package/dist/components/dialogs-root/index.esm.js +1 -1
  222. package/dist/components/dialogs-root.js +1 -1
  223. package/dist/components/footer.js +1 -1
  224. package/dist/components/guard/Guard.cjs.js +1 -1
  225. package/dist/components/guard/Guard.cjs.js.map +1 -1
  226. package/dist/components/guard/Guard.esm.js +1 -1
  227. package/dist/components/guard/index.cjs.js +1 -1
  228. package/dist/components/guard/index.esm.js +1 -1
  229. package/dist/components/guard.js +1 -1
  230. package/dist/components/index.cjs.js +1 -1
  231. package/dist/components/index.esm.js +2 -2
  232. package/dist/components/input/Input.cjs.js +1 -1
  233. package/dist/components/input/Input.cjs.js.map +1 -1
  234. package/dist/components/input/Input.esm.js +1 -1
  235. package/dist/components/input/index.cjs.js +1 -1
  236. package/dist/components/input/index.esm.js +1 -1
  237. package/dist/components/input.js +1 -1
  238. package/dist/components/login-button/LoginButton.cjs.js +1 -1
  239. package/dist/components/login-button/LoginButton.cjs.js.map +1 -1
  240. package/dist/components/login-button/LoginButton.esm.js +1 -1
  241. package/dist/components/login-button/index.cjs.js +1 -1
  242. package/dist/components/login-button/index.esm.js +1 -1
  243. package/dist/components/login-button.js +1 -1
  244. package/dist/components/login-modal/LoginModal.cjs.js +1 -1
  245. package/dist/components/login-modal/LoginModal.cjs.js.map +1 -1
  246. package/dist/components/login-modal/LoginModal.esm.js +1 -1
  247. package/dist/components/login-modal/index.cjs.js +1 -1
  248. package/dist/components/login-modal/index.esm.js +1 -1
  249. package/dist/components/login-modal.js +1 -1
  250. package/dist/components/logout-button/LogoutButton.cjs.js +1 -1
  251. package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -1
  252. package/dist/components/logout-button/LogoutButton.esm.js +1 -1
  253. package/dist/components/logout-button/index.cjs.js +1 -1
  254. package/dist/components/logout-button/index.esm.js +1 -1
  255. package/dist/components/logout-button.js +1 -1
  256. package/dist/components/menu/Menu.cjs.js +1 -1
  257. package/dist/components/menu/Menu.cjs.js.map +1 -1
  258. package/dist/components/menu/Menu.esm.js +1 -1
  259. package/dist/components/menu/Menu.esm.js.map +1 -1
  260. package/dist/components/menu/index.cjs.js +1 -1
  261. package/dist/components/menu/index.esm.js +1 -1
  262. package/dist/components/menu-item/MenuItem.cjs.js +6 -4
  263. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
  264. package/dist/components/menu-item/MenuItem.d.ts.map +1 -1
  265. package/dist/components/menu-item/MenuItem.esm.js +6 -4
  266. package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
  267. package/dist/components/menu-item/MenuItem.styles.cjs.js +1 -1
  268. package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -1
  269. package/dist/components/menu-item/MenuItem.styles.esm.js +1 -1
  270. package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -1
  271. package/dist/components/menu-item/index.cjs.js +1 -1
  272. package/dist/components/menu-item/index.esm.js +1 -1
  273. package/dist/components/menu-item.js +1 -1
  274. package/dist/components/menu.js +1 -1
  275. package/dist/components/provider/Provider.cjs.js +1 -1
  276. package/dist/components/provider/Provider.cjs.js.map +1 -1
  277. package/dist/components/provider/Provider.esm.js +1 -1
  278. package/dist/components/provider/index.cjs.js +1 -1
  279. package/dist/components/provider/index.esm.js +1 -1
  280. package/dist/components/provider.js +1 -1
  281. package/dist/components/select/Select.cjs.js +1 -1
  282. package/dist/components/select/Select.cjs.js.map +1 -1
  283. package/dist/components/select/Select.esm.js +1 -1
  284. package/dist/components/select/Select.esm.js.map +1 -1
  285. package/dist/components/select/index.cjs.js +1 -1
  286. package/dist/components/select/index.esm.js +1 -1
  287. package/dist/components/select-option/SelectOption.cjs.js +1 -1
  288. package/dist/components/select-option/SelectOption.cjs.js.map +1 -1
  289. package/dist/components/select-option/SelectOption.esm.js +1 -1
  290. package/dist/components/select-option/index.cjs.js +1 -1
  291. package/dist/components/select-option/index.esm.js +1 -1
  292. package/dist/components/select-option.js +1 -1
  293. package/dist/components/select.js +1 -1
  294. package/dist/components/signup-button/SignupButton.cjs.js +1 -1
  295. package/dist/components/signup-button/SignupButton.cjs.js.map +1 -1
  296. package/dist/components/signup-button/SignupButton.esm.js +1 -1
  297. package/dist/components/signup-button/index.cjs.js +1 -1
  298. package/dist/components/signup-button/index.esm.js +1 -1
  299. package/dist/components/signup-button.js +1 -1
  300. package/dist/components/solid-emblem/SolidEmblem.cjs.js +2 -0
  301. package/dist/components/solid-emblem/SolidEmblem.cjs.js.map +1 -0
  302. package/dist/components/solid-emblem/SolidEmblem.d.ts +6 -0
  303. package/dist/components/solid-emblem/SolidEmblem.d.ts.map +1 -0
  304. package/dist/components/solid-emblem/SolidEmblem.esm.js +178 -0
  305. package/dist/components/solid-emblem/SolidEmblem.esm.js.map +1 -0
  306. package/dist/components/solid-emblem/SolidEmblem.styles.cjs.js +2 -0
  307. package/dist/components/solid-emblem/SolidEmblem.styles.cjs.js.map +1 -0
  308. package/dist/components/solid-emblem/SolidEmblem.styles.esm.js +7 -0
  309. package/dist/components/solid-emblem/SolidEmblem.styles.esm.js.map +1 -0
  310. package/dist/components/solid-emblem/index.cjs.js +2 -0
  311. package/dist/components/solid-emblem/index.cjs.js.map +1 -0
  312. package/dist/components/solid-emblem/index.d.ts +4 -0
  313. package/dist/components/solid-emblem/index.d.ts.map +1 -0
  314. package/dist/components/solid-emblem/index.esm.js +7 -0
  315. package/dist/components/solid-emblem/index.esm.js.map +1 -0
  316. package/dist/components/solid-emblem.js +2 -0
  317. package/dist/components.js +23 -23
  318. package/dist/create/create.cjs.js.map +1 -1
  319. package/dist/create/create.esm.js.map +1 -1
  320. package/dist/create/index.cjs.js.map +1 -1
  321. package/dist/footer/index.cjs.js +1 -1
  322. package/dist/footer/index.esm.js +1 -1
  323. package/dist/header/index.cjs.js +1 -1
  324. package/dist/header/index.cjs.js.map +1 -1
  325. package/dist/header/index.esm.js +1 -1
  326. package/dist/header/index.esm.js.map +1 -1
  327. package/dist/index.js +6 -7
  328. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  329. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  330. package/dist/lib/auth/context.cjs.js.map +1 -1
  331. package/dist/lib/auth/index.cjs.js +1 -1
  332. package/dist/lib/auth/index.esm.js +5 -4
  333. package/dist/lib/components/ids.cjs.js.map +1 -1
  334. package/dist/lib/components/ids.esm.js.map +1 -1
  335. package/dist/lib/components/index.cjs.js +1 -1
  336. package/dist/lib/components/index.esm.js +6 -5
  337. package/dist/lib/components/traits/DialogTrait.cjs.js.map +1 -1
  338. package/dist/lib/components/traits/DialogTrait.esm.js.map +1 -1
  339. package/dist/lib/components/traits/InputTrait.cjs.js +1 -1
  340. package/dist/lib/components/traits/InputTrait.cjs.js.map +1 -1
  341. package/dist/lib/components/traits/InputTrait.d.ts +1 -0
  342. package/dist/lib/components/traits/InputTrait.d.ts.map +1 -1
  343. package/dist/lib/components/traits/InputTrait.esm.js +3 -2
  344. package/dist/lib/components/traits/InputTrait.esm.js.map +1 -1
  345. package/dist/lib/components/traits/index.cjs.js +1 -1
  346. package/dist/lib/components/traits/index.esm.js +3 -2
  347. package/dist/lib/components/web-component/WebComponent.cjs.js +1 -1
  348. package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -1
  349. package/dist/lib/components/web-component/WebComponent.d.ts.map +1 -1
  350. package/dist/lib/components/web-component/WebComponent.esm.js +1 -6
  351. package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
  352. package/dist/lib/components/web-component/WebComponent.styles.cjs.js.map +1 -1
  353. package/dist/lib/components/web-component/WebComponent.styles.esm.js.map +1 -1
  354. package/dist/lib/components/web-component/index.cjs.js +1 -1
  355. package/dist/lib/components/web-component/index.esm.js +2 -1
  356. package/dist/lib/dialogs/context.cjs.js.map +1 -1
  357. package/dist/lib/dialogs/index.cjs.js +1 -1
  358. package/dist/lib/dialogs/index.esm.js +6 -5
  359. package/dist/lib/forms/rdfHelper.d.ts +4 -0
  360. package/dist/lib/forms/rdfHelper.d.ts.map +1 -0
  361. package/dist/lib/log.cjs.js +1 -1
  362. package/dist/lib/log.cjs.js.map +1 -1
  363. package/dist/lib/log.esm.js +1 -1
  364. package/dist/lib/log.esm.js.map +1 -1
  365. package/dist/lib/messageArea.cjs.js.map +1 -1
  366. package/dist/lib/messageArea.esm.js.map +1 -1
  367. package/dist/lib/ns.cjs.js.map +1 -1
  368. package/dist/lib/pad.cjs.js +1 -1
  369. package/dist/lib/pad.cjs.js.map +1 -1
  370. package/dist/lib/pad.esm.js +1 -1
  371. package/dist/lib/pad.esm.js.map +1 -1
  372. package/dist/lib/participation.cjs.js.map +1 -1
  373. package/dist/lib/participation.esm.js.map +1 -1
  374. package/dist/lib/preferences.cjs.js +1 -1
  375. package/dist/lib/preferences.cjs.js.map +1 -1
  376. package/dist/lib/preferences.esm.js +1 -1
  377. package/dist/lib/preferences.esm.js.map +1 -1
  378. package/dist/lib/table.cjs.js.map +1 -1
  379. package/dist/lib/table.esm.js.map +1 -1
  380. package/dist/lib/tabs.cjs.js +1 -1
  381. package/dist/lib/tabs.cjs.js.map +1 -1
  382. package/dist/lib/tabs.esm.js +1 -1
  383. package/dist/lib/tabs.esm.js.map +1 -1
  384. package/dist/loader.js +6 -7
  385. package/dist/login/login.cjs.js +1 -1
  386. package/dist/login/login.cjs.js.map +1 -1
  387. package/dist/login/login.esm.js +1 -1
  388. package/dist/login/login.esm.js.map +1 -1
  389. package/dist/matrix/index.cjs.js.map +1 -1
  390. package/dist/matrix/matrix.cjs.js.map +1 -1
  391. package/dist/matrix/matrix.esm.js.map +1 -1
  392. package/dist/media/media-capture.cjs.js.map +1 -1
  393. package/dist/media/media-capture.esm.js.map +1 -1
  394. package/dist/signup/signup.cjs.js.map +1 -1
  395. package/dist/signup/signup.esm.js.map +1 -1
  396. package/dist/solid-ui.js +321 -1380
  397. package/dist/solid-ui.min.js +321 -1380
  398. package/dist/solid-ui.min.js.map +1 -1
  399. package/dist/theme.css +1 -1
  400. package/dist/utils/headerFooterHelpers.cjs.js.map +1 -1
  401. package/dist/utils/headerFooterHelpers.esm.js.map +1 -1
  402. package/dist/utils/index.cjs.js +2 -2
  403. package/dist/utils/index.cjs.js.map +1 -1
  404. package/dist/utils/index.esm.js +1 -1
  405. package/dist/utils/index.esm.js.map +1 -1
  406. package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
  407. package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
  408. package/dist/utils/keyHelpers/accessData.esm.js +1 -1
  409. package/dist/utils/keyHelpers/accessData.esm.js.map +1 -1
  410. package/dist/utils/keyHelpers/acl.cjs.js.map +1 -1
  411. package/dist/utils/keyHelpers/acl.esm.js.map +1 -1
  412. package/dist/utils/keyHelpers/otherHelpers.cjs.js.map +1 -1
  413. package/dist/utils/keyHelpers/otherHelpers.esm.js.map +1 -1
  414. package/dist/utils/label.cjs.js.map +1 -1
  415. package/dist/utils/label.esm.js.map +1 -1
  416. package/dist/v2/components/layout/footer/index.cjs.js +1 -1
  417. package/dist/v2/components/layout/footer/index.esm.js +1 -0
  418. package/dist/v2/components/media/photoCapture/PhotoCapture.cjs.js.map +1 -1
  419. package/dist/v2/components/media/photoCapture/PhotoCapture.esm.js.map +1 -1
  420. package/dist/v2/components/media/photoCapture/index.cjs.js +1 -1
  421. package/dist/v2/components/media/photoCapture/index.esm.js +1 -0
  422. package/dist/widgets/buttons/iconLinks.cjs.js.map +1 -1
  423. package/dist/widgets/buttons/iconLinks.esm.js.map +1 -1
  424. package/dist/widgets/buttons.cjs.js.map +1 -1
  425. package/dist/widgets/buttons.esm.js.map +1 -1
  426. package/dist/widgets/dragAndDrop.cjs.js.map +1 -1
  427. package/dist/widgets/dragAndDrop.esm.js.map +1 -1
  428. package/dist/widgets/error.cjs.js.map +1 -1
  429. package/dist/widgets/error.esm.js.map +1 -1
  430. package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
  431. package/dist/widgets/forms/autocomplete/autocompleteField.esm.js.map +1 -1
  432. package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
  433. package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js.map +1 -1
  434. package/dist/widgets/forms/autocomplete/language.cjs.js +1 -1
  435. package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
  436. package/dist/widgets/forms/autocomplete/language.esm.js +1 -1
  437. package/dist/widgets/forms/autocomplete/language.esm.js.map +1 -1
  438. package/dist/widgets/forms/autocomplete/publicData.cjs.js +1 -1
  439. package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
  440. package/dist/widgets/forms/autocomplete/publicData.esm.js +1 -1
  441. package/dist/widgets/forms/autocomplete/publicData.esm.js.map +1 -1
  442. package/dist/widgets/forms/basic.cjs.js.map +1 -1
  443. package/dist/widgets/forms/basic.esm.js.map +1 -1
  444. package/dist/widgets/forms/fieldFunction.cjs.js.map +1 -1
  445. package/dist/widgets/forms/fieldParams.cjs.js.map +1 -1
  446. package/dist/widgets/forms/fieldParams.esm.js.map +1 -1
  447. package/dist/widgets/forms/formStyle.cjs.js.map +1 -1
  448. package/dist/widgets/forms/formStyle.esm.js.map +1 -1
  449. package/dist/widgets/forms.cjs.js +1 -1
  450. package/dist/widgets/forms.cjs.js.map +1 -1
  451. package/dist/widgets/forms.esm.js +1 -1
  452. package/dist/widgets/forms.esm.js.map +1 -1
  453. package/dist/widgets/index.cjs.js +1 -1
  454. package/dist/widgets/index.esm.js +65 -65
  455. package/dist/widgets/multiSelect.cjs.js.map +1 -1
  456. package/dist/widgets/multiSelect.esm.js.map +1 -1
  457. package/dist/widgets/peoplePicker.cjs.js.map +1 -1
  458. package/dist/widgets/peoplePicker.esm.js.map +1 -1
  459. package/dist/widgets/widgetHelpers.cjs.js.map +1 -1
  460. package/dist/widgets/widgetHelpers.esm.js.map +1 -1
  461. package/package.json +14 -11
  462. package/dist/chunks/DialogProvider-DphduSXG.js.map +0 -1
  463. package/dist/chunks/account-CFhrB0LO.js.map +0 -1
  464. package/dist/chunks/avatar-D281qln0.js.map +0 -1
  465. package/dist/chunks/combobox-Dtgc8qqO.js +0 -354
  466. package/dist/chunks/combobox-Dtgc8qqO.js.map +0 -1
  467. package/dist/chunks/components-BlEGdx4i.js.map +0 -1
  468. package/dist/chunks/dialog-DlBtmOm6.js.map +0 -1
  469. package/dist/chunks/header-Bqd2CEK3.js +0 -1486
  470. package/dist/chunks/header-Bqd2CEK3.js.map +0 -1
  471. package/dist/chunks/iconBase-DJ0zbNSL.js +0 -31
  472. package/dist/chunks/iconBase-DJ0zbNSL.js.map +0 -1
  473. package/dist/chunks/menu-aQiqq1ET.js.map +0 -1
  474. package/dist/chunks/menu-item-DBy4o-M4.js.map +0 -1
  475. package/dist/chunks/solid-logic.esm-7q6hmfIF.js.map +0 -1
  476. package/dist/chunks/src-BOU-JwWx.js.map +0 -1
  477. package/dist/components/header/index.cjs.js +0 -1
  478. package/dist/components/header/index.d.ts +0 -2
  479. package/dist/components/header/index.d.ts.map +0 -1
  480. package/dist/components/header/index.esm.js +0 -3
  481. package/dist/components/header.js +0 -2
  482. package/dist/lib/features.cjs.js +0 -2
  483. package/dist/lib/features.cjs.js.map +0 -1
  484. package/dist/lib/features.d.ts +0 -8
  485. package/dist/lib/features.d.ts.map +0 -1
  486. package/dist/lib/features.esm.js +0 -6
  487. package/dist/lib/features.esm.js.map +0 -1
  488. package/dist/solid-ui.js.map +0 -1
  489. package/dist/v2/components/actions/button/Button.d.ts +0 -97
  490. package/dist/v2/components/actions/button/Button.d.ts.map +0 -1
  491. package/dist/v2/components/actions/button/Button.test.d.ts +0 -1
  492. package/dist/v2/components/actions/button/Button.test.d.ts.map +0 -1
  493. package/dist/v2/components/actions/button/index.d.ts +0 -8
  494. package/dist/v2/components/actions/button/index.d.ts.map +0 -1
  495. package/dist/v2/components/auth/loginButton/LoginButton.cjs.js +0 -414
  496. package/dist/v2/components/auth/loginButton/LoginButton.cjs.js.map +0 -1
  497. package/dist/v2/components/auth/loginButton/LoginButton.esm.js +0 -519
  498. package/dist/v2/components/auth/loginButton/LoginButton.esm.js.map +0 -1
  499. package/dist/v2/components/auth/loginButton/downArrow.cjs.js +0 -9
  500. package/dist/v2/components/auth/loginButton/downArrow.cjs.js.map +0 -1
  501. package/dist/v2/components/auth/loginButton/downArrow.esm.js +0 -14
  502. package/dist/v2/components/auth/loginButton/downArrow.esm.js.map +0 -1
  503. package/dist/v2/components/auth/loginButton/index.cjs.js +0 -2
  504. package/dist/v2/components/auth/loginButton/index.cjs.js.map +0 -1
  505. package/dist/v2/components/auth/loginButton/index.esm.js +0 -7
  506. package/dist/v2/components/auth/loginButton/index.esm.js.map +0 -1
  507. package/dist/v2/components/auth/signupButton/SignupButton.cjs.js +0 -59
  508. package/dist/v2/components/auth/signupButton/SignupButton.cjs.js.map +0 -1
  509. package/dist/v2/components/auth/signupButton/SignupButton.esm.js +0 -98
  510. package/dist/v2/components/auth/signupButton/SignupButton.esm.js.map +0 -1
  511. package/dist/v2/components/auth/signupButton/index.cjs.js +0 -2
  512. package/dist/v2/components/auth/signupButton/index.cjs.js.map +0 -1
  513. package/dist/v2/components/auth/signupButton/index.esm.js +0 -7
  514. package/dist/v2/components/auth/signupButton/index.esm.js.map +0 -1
  515. package/dist/v2/components/forms/combobox/Combobox.d.ts +0 -82
  516. package/dist/v2/components/forms/combobox/Combobox.d.ts.map +0 -1
  517. package/dist/v2/components/forms/combobox/Combobox.test.d.ts +0 -1
  518. package/dist/v2/components/forms/combobox/Combobox.test.d.ts.map +0 -1
  519. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts +0 -6
  520. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts.map +0 -1
  521. package/dist/v2/components/forms/combobox/index.d.ts +0 -3
  522. package/dist/v2/components/forms/combobox/index.d.ts.map +0 -1
  523. package/dist/v2/components/forms/select/Select.d.ts +0 -68
  524. package/dist/v2/components/forms/select/Select.d.ts.map +0 -1
  525. package/dist/v2/components/forms/select/Select.test.d.ts +0 -1
  526. package/dist/v2/components/forms/select/Select.test.d.ts.map +0 -1
  527. package/dist/v2/components/forms/select/index.d.ts +0 -3
  528. package/dist/v2/components/forms/select/index.d.ts.map +0 -1
  529. package/dist/v2/components/forms/shared/downArrow.d.ts +0 -2
  530. package/dist/v2/components/forms/shared/downArrow.d.ts.map +0 -1
  531. package/dist/v2/components/forms/shared/keyboard.d.ts +0 -7
  532. package/dist/v2/components/forms/shared/keyboard.d.ts.map +0 -1
  533. package/dist/v2/components/forms/shared/listboxStyles.d.ts +0 -2
  534. package/dist/v2/components/forms/shared/listboxStyles.d.ts.map +0 -1
  535. package/dist/v2/components/forms/shared/listboxTemplate.d.ts +0 -11
  536. package/dist/v2/components/forms/shared/listboxTemplate.d.ts.map +0 -1
  537. package/dist/v2/components/forms/shared/optionTypes.d.ts +0 -6
  538. package/dist/v2/components/forms/shared/optionTypes.d.ts.map +0 -1
  539. package/dist/v2/components/layout/header/Header.cjs.js +0 -625
  540. package/dist/v2/components/layout/header/Header.cjs.js.map +0 -1
  541. package/dist/v2/components/layout/header/Header.d.ts +0 -160
  542. package/dist/v2/components/layout/header/Header.d.ts.map +0 -1
  543. package/dist/v2/components/layout/header/Header.esm.js +0 -873
  544. package/dist/v2/components/layout/header/Header.esm.js.map +0 -1
  545. package/dist/v2/components/layout/header/header.test.d.ts +0 -1
  546. package/dist/v2/components/layout/header/header.test.d.ts.map +0 -1
  547. package/dist/v2/components/layout/header/index.cjs.js +0 -2
  548. package/dist/v2/components/layout/header/index.cjs.js.map +0 -1
  549. package/dist/v2/components/layout/header/index.d.ts +0 -4
  550. package/dist/v2/components/layout/header/index.d.ts.map +0 -1
  551. package/dist/v2/components/layout/header/index.esm.js +0 -7
  552. package/dist/v2/components/layout/header/index.esm.js.map +0 -1
@@ -1,66 +1,67 @@
1
- import { c as e, s as t } from "./auth-Cpf3HYqF.js";
2
- import { r as n } from "./dialog-DlBtmOm6.js";
3
- import { a as r, i } from "./components-BlEGdx4i.js";
4
- import { c as a, i as o } from "./lit-C4H1jI4q.js";
1
+ import { c as e, s as t } from "./auth-CZOEEeJ8.js";
2
+ import { r as n } from "./dialog-BAzrHJ8w.js";
3
+ import { a as r, i } from "./components-C1LEhsaK.js";
4
+ import { c as a, i as o, n as s } from "./lit-C4H1jI4q.js";
5
+ import { r as c } from "./decorators-BiCkPd_3.js";
5
6
  import "./chevron-down-ujxRg3MD.js";
6
- import "./button-DbKYu6-r.js";
7
- import "./avatar-D281qln0.js";
8
- import "./login-button-C603hM0G.js";
9
- import "./logout-button-Cxzpq-C3.js";
10
- import "./menu-item-DBy4o-M4.js";
11
- import "./menu-aQiqq1ET.js";
12
- import "./signup-button-CsRaOUI4.js";
7
+ import "./button-0s0lZdxm.js";
8
+ import "./avatar-BugsRJZg.js";
9
+ import "./login-button-pe1-DVNZ.js";
10
+ import "./logout-button-C5dtQiBB.js";
11
+ import "./menu-item-CWg-eS4V.js";
12
+ import "./menu-DNcuV-1J.js";
13
+ import "./signup-button-QvYELqb6.js";
13
14
  //#region ~icons/lucide/log-in
14
- var s = class extends HTMLElement {
15
+ var l = class extends HTMLElement {
15
16
  constructor() {
16
17
  super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><path fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m10 17l5-5l-5-5m5 5H3m12-9h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4\"/></svg>";
17
18
  }
18
19
  };
19
- customElements.get("icon-lucide-log-in") || customElements.define("icon-lucide-log-in", s);
20
+ customElements.get("icon-lucide-log-in") || customElements.define("icon-lucide-log-in", l);
20
21
  //#endregion
21
22
  //#region ~icons/lucide/log-out
22
- var c = class extends HTMLElement {
23
+ var u = class extends HTMLElement {
23
24
  constructor() {
24
25
  super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><path fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m16 17l5-5l-5-5m5 5H9m0 9H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\"/></svg>";
25
26
  }
26
27
  };
27
- customElements.get("icon-lucide-log-out") || customElements.define("icon-lucide-log-out", c);
28
+ customElements.get("icon-lucide-log-out") || customElements.define("icon-lucide-log-out", u);
28
29
  //#endregion
29
30
  //#region ~icons/lucide/user
30
- var l = class extends HTMLElement {
31
+ var d = class extends HTMLElement {
31
32
  constructor() {
32
33
  super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path d=\"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2\"/><circle cx=\"12\" cy=\"7\" r=\"4\"/></g></svg>";
33
34
  }
34
35
  };
35
- customElements.get("icon-lucide-user") || customElements.define("icon-lucide-user", l);
36
+ customElements.get("icon-lucide-user") || customElements.define("icon-lucide-user", d);
36
37
  //#endregion
37
38
  //#region src/components/account/Account.styles.css
38
- var u = a`:host{flex-direction:row;gap:10px;display:inline-flex}:host(:state(loggedIn)){--padding:4px;--border-width:1px;--image-size:1.875rem;& button{background-color:var(--solid-ui-color-body-grey);padding:var(--padding);border-radius:calc((var(--image-size) + 2 * var(--padding) + 2 * var(--border-width)) / 2);color:var(--solid-ui-color-white);justify-content:center;align-items:center;gap:5px;display:inline-flex;& solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}& icon-lucide-chevron-down{width:16px;height:16px}}}`, d, f, p, m, h, g, _, v, y, b;
39
- function x(e, t, n) {
40
- S(e, t), t.set(e, n);
39
+ var f = a`:host{flex-direction:row;gap:10px;display:inline-flex}:host([data-state-loggedIn]){--padding:4px;--border-width:1px;--image-size:1.875rem;& button{background-color:var(--solid-ui-color-body-grey);padding:var(--padding);border-radius:calc((var(--image-size) + 2 * var(--padding) + 2 * var(--border-width)) / 2);color:var(--solid-ui-color-white);justify-content:center;align-items:center;gap:5px;display:inline-flex;& solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}& icon-lucide-chevron-down{width:16px;height:16px}}}`, p, m, h, g, _, v, y, b, x, S, C, w, T;
40
+ function E(e, t, n) {
41
+ D(e, t), t.set(e, n);
41
42
  }
42
- function S(e, t) {
43
+ function D(e, t) {
43
44
  if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
44
45
  }
45
- function C(e, t, n) {
46
- return e.set(T(e, t), n), n;
46
+ function O(e, t, n) {
47
+ return e.set(A(e, t), n), n;
47
48
  }
48
- function w(e, t) {
49
- return e.get(T(e, t));
49
+ function k(e, t) {
50
+ return e.get(A(e, t));
50
51
  }
51
- function T(e, t, n) {
52
+ function A(e, t, n) {
52
53
  if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
53
54
  throw TypeError("Private element is not present on this object");
54
55
  }
55
- function E(e, t, n) {
56
- return (t = O(t)) in e ? Object.defineProperty(e, t, {
56
+ function j(e, t, n) {
57
+ return (t = N(t)) in e ? Object.defineProperty(e, t, {
57
58
  value: n,
58
59
  enumerable: !0,
59
60
  configurable: !0,
60
61
  writable: !0
61
62
  }) : e[t] = n, e;
62
63
  }
63
- function D(e, t, n, r, i, a) {
64
+ function M(e, t, n, r, i, a) {
64
65
  function o(e, t, n) {
65
66
  return function(r, i) {
66
67
  return n && n(r), e[t].call(r, i);
@@ -83,13 +84,13 @@ function D(e, t, n, r, i, a) {
83
84
  n || Array.isArray(_) || (_ = [_]);
84
85
  var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
85
86
  d ? (f || p ? b = {
86
- get: A(function() {
87
+ get: F(function() {
87
88
  return v(this);
88
89
  }, r, "get"),
89
90
  set: function(e) {
90
91
  t[4](this, e);
91
92
  }
92
- } : b[S] = v, f || A(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
93
+ } : b[S] = v, f || F(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
93
94
  }
94
95
  for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
95
96
  var T = _[w], E = n ? _[w - 1] : void 0, D = {}, O = {
@@ -111,18 +112,18 @@ function D(e, t, n, r, i, a) {
111
112
  try {
112
113
  if (y) (g = c(T.call(E, C, O), "class decorators", "return")) && (C = g);
113
114
  else {
114
- var k, j;
115
+ var k, A;
115
116
  O.static = u, O.private = d, d ? i === 2 ? k = function(e) {
116
117
  return h(e), b.value;
117
- } : (i < 4 && (k = o(b, "get", h)), i !== 3 && (j = o(b, "set", h))) : (k = function(e) {
118
+ } : (i < 4 && (k = o(b, "get", h)), i !== 3 && (A = o(b, "set", h))) : (k = function(e) {
118
119
  return e[r];
119
- }, (i < 2 || i === 4) && (j = function(e, t) {
120
+ }, (i < 2 || i === 4) && (A = function(e, t) {
120
121
  e[r] = t;
121
122
  }));
122
- var M = O.access = { has: d ? m.bind() : function(e) {
123
+ var j = O.access = { has: d ? m.bind() : function(e) {
123
124
  return r in e;
124
125
  } };
125
- if (k && (M.get = k), j && (M.set = j), C = T.call(E, p ? {
126
+ if (k && (j.get = k), A && (j.set = A), C = T.call(E, p ? {
126
127
  get: b.get,
127
128
  set: b.set
128
129
  } : b[S], O), p) {
@@ -149,7 +150,7 @@ function D(e, t, n, r, i, a) {
149
150
  if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
150
151
  var f = Object.create(d ?? null), p = function(e, t, n, r) {
151
152
  var i, a, o = [], c = function(t) {
152
- return j(t) === e;
153
+ return I(t) === e;
153
154
  }, u = /* @__PURE__ */ new Map();
154
155
  function d(e) {
155
156
  e && o.push(s.bind(null, e));
@@ -163,7 +164,7 @@ function D(e, t, n, r, i, a) {
163
164
  if (!0 === x || x === 3 && m !== 4 || x === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
164
165
  u.set(b, !(m > 2) || m);
165
166
  }
166
- l(v ? e : e.prototype, p, _, g ? "#" + h : O(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
167
+ l(v ? e : e.prototype, p, _, g ? "#" + h : N(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
167
168
  }
168
169
  }
169
170
  return d(i), d(a), o;
@@ -176,11 +177,11 @@ function D(e, t, n, r, i, a) {
176
177
  }
177
178
  };
178
179
  }
179
- function O(e) {
180
- var t = k(e, "string");
180
+ function N(e) {
181
+ var t = P(e, "string");
181
182
  return typeof t == "symbol" ? t : t + "";
182
183
  }
183
- function k(e, t) {
184
+ function P(e, t) {
184
185
  if (typeof e != "object" || !e) return e;
185
186
  var n = e[Symbol.toPrimitive];
186
187
  if (n !== void 0) {
@@ -190,7 +191,7 @@ function k(e, t) {
190
191
  }
191
192
  return (t === "string" ? String : Number)(e);
192
193
  }
193
- function A(e, t, n) {
194
+ function F(e, t, n) {
194
195
  typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
195
196
  try {
196
197
  Object.defineProperty(e, "name", {
@@ -200,27 +201,33 @@ function A(e, t, n) {
200
201
  } catch {}
201
202
  return e;
202
203
  }
203
- function j(e) {
204
+ function I(e) {
204
205
  if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
205
206
  return e;
206
207
  }
207
- function M(e) {
208
+ function L(e) {
208
209
  return e;
209
210
  }
210
- g = [r("solid-ui-account")];
211
- var N;
212
- new (y = (p = /*#__PURE__*/ new WeakMap(), b = (_ = n({
211
+ y = [r("solid-ui-account")];
212
+ var R;
213
+ new (w = (h = /*#__PURE__*/ new WeakMap(), g = /*#__PURE__*/ new WeakMap(), T = (b = c({ type: Array }), S = n({
213
214
  context: e,
214
215
  subscribe: !0
215
- }), "auth"), f = class extends i {
216
+ }), "menuItems"), m = class extends i {
216
217
  constructor(...e) {
217
- super(...e), x(this, p, (m(this), v(this, t))), E(this, "unsubscribeSessionUpdated", void 0);
218
+ super(...e), E(this, h, (_(this), x(this, []))), E(this, g, C(this, t)), j(this, "unsubscribeSessionUpdated", void 0);
219
+ }
220
+ get [T]() {
221
+ return k(h, this);
218
222
  }
219
- get [b]() {
220
- return w(p, this);
223
+ set menuItems(e) {
224
+ O(h, this, e);
225
+ }
226
+ get auth() {
227
+ return k(g, this);
221
228
  }
222
229
  set auth(e) {
223
- C(p, this, e);
230
+ O(g, this, e);
224
231
  }
225
232
  connectedCallback() {
226
233
  super.connectedCallback(), this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => this.requestUpdate());
@@ -236,6 +243,11 @@ new (y = (p = /*#__PURE__*/ new WeakMap(), b = (_ = n({
236
243
  <icon-lucide-chevron-down slot="right-icon"></icon-lucide-chevron-down>
237
244
  </button>
238
245
 
246
+ ${this.menuItems.map((e) => o`
247
+ <solid-ui-menu-item .href=${e.href ?? s} @solid-ui-select=${() => e.onSelected?.()}>
248
+ ${e.label}
249
+ </solid-ui-menu-item>
250
+ `)}
239
251
  <solid-ui-logout-button>
240
252
  <solid-ui-menu-item slot="trigger">
241
253
  <icon-lucide-log-out slot="left-icon"></icon-lucide-log-out>
@@ -258,19 +270,23 @@ new (y = (p = /*#__PURE__*/ new WeakMap(), b = (_ = n({
258
270
  </solid-ui-signup-button>
259
271
  `;
260
272
  }
261
- }, {e: [v, m], c: [N, h]} = D(f, [[
262
- _,
273
+ }, {e: [x, C, _], c: [R, v]} = M(m, [[
274
+ b,
275
+ 1,
276
+ "menuItems"
277
+ ], [
278
+ S,
263
279
  1,
264
280
  "auth"
265
- ]], g, 0, void 0, i), f), d = class extends M {
281
+ ]], y, 0, void 0, i), m), p = class extends L {
266
282
  constructor() {
267
- super(N), E(this, "styles", u), E(this, "states", { loggedIn: (e) => !!e.auth.account }), h();
283
+ super(R), j(this, "styles", f), j(this, "states", { loggedIn: (e) => !!e.auth.account }), v();
268
284
  }
269
- }, E(d, y, void 0), d)();
285
+ }, j(p, w, void 0), p)();
270
286
  //#endregion
271
287
  //#region src/components/account/index.ts
272
- var P = N;
288
+ var z = R;
273
289
  //#endregion
274
- export { N as n, P as t };
290
+ export { R as n, z as t };
275
291
 
276
- //# sourceMappingURL=account-CFhrB0LO.js.map
292
+ //# sourceMappingURL=account-jSZP2tZ5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-jSZP2tZ5.js","names":["consume","html","nothing","property","customElement","WebComponent","authContext","DEFAULT_AUTH_CONTEXT","styles","_classDecs","_Account","_Account2","_A","WeakMap","_B","_ref","_menuItemsDecs","type","Array","_authDecs","context","subscribe","_Account3","Account","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_menuItems","_init_auth","_defineProperty","_classPrivateFieldGet","menuItems","v","_classPrivateFieldSet","auth","connectedCallback","unsubscribeSessionUpdated","onSessionUpdated","requestUpdate","disconnectedCallback","render","account","map","menuItem","href","onSelected","label","e","c","_initClass","_applyDecs","_Class","_identity","loggedIn","component","default","Account"],"sources":["../../src/components/account/Account.styles.css","../../src/components/account/Account.ts","../../src/components/account/index.ts"],"sourcesContent":[":host {\n display: inline-flex;\n flex-direction: row;\n gap: 10px;\n}\n\n:host([data-state-loggedIn]) {\n --padding: 4px;\n --border-width: 1px;\n --image-size: 1.875rem; /* 30px */\n\n button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 5px;\n background-color: var(--solid-ui-color-body-grey);\n padding: var(--padding);\n border-radius: calc((var(--image-size) + 2 * var(--padding) + 2 * var(--border-width)) / 2);\n color: var(--solid-ui-color-white);\n\n solid-ui-avatar {\n width: var(--image-size);\n height: var(--image-size);\n border: var(--border-width) solid var(--solid-ui-color-white);\n border-radius: 50%;\n }\n\n icon-lucide-chevron-down {\n width: 16px;\n height: 16px;\n }\n }\n}\n","import { consume } from '@lit/context'\nimport { html, nothing, TemplateResult } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { customElement, WebComponent } from '@/lib/components'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '@/components/avatar'\nimport '@/components/button'\nimport '@/components/login-button'\nimport '@/components/logout-button'\nimport '@/components/menu-item'\nimport '@/components/menu'\nimport '@/components/signup-button'\nimport '~icons/lucide/chevron-down'\nimport '~icons/lucide/log-in'\nimport '~icons/lucide/log-out'\nimport '~icons/lucide/user'\n\nimport styles from './Account.styles.css'\n\nexport interface AccountMenuItem {\n label: string | TemplateResult\n href?: string\n onSelected?(): void\n}\n\n@customElement('solid-ui-account')\nexport default class Account extends WebComponent {\n static styles = styles\n static states = {\n loggedIn: (component: Account) => !!component.auth.account,\n }\n\n @property({ type: Array })\n accessor menuItems: AccountMenuItem[] = []\n\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n private unsubscribeSessionUpdated?: () => void\n\n connectedCallback () {\n super.connectedCallback()\n\n this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => this.requestUpdate())\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.unsubscribeSessionUpdated?.()\n }\n\n protected render () {\n if (!this.auth.account) {\n return html`\n <solid-ui-login-button>\n <solid-ui-button slot=\"trigger\">\n <icon-lucide-user slot=\"left-icon\"></icon-lucide-user>\n Log In\n </solid-ui-button>\n </solid-ui-login-button>\n <solid-ui-signup-button>\n <solid-ui-button slot=\"trigger\" variant=\"outline\">\n <icon-lucide-log-in slot=\"left-icon\"></icon-lucide-log-in>\n Sign Up\n </solid-ui-button>\n </solid-ui-signup-button>\n `\n }\n\n return html`\n <solid-ui-menu placement=\"bottom-end\" distance=\"5\">\n <button type=\"button\" slot=\"trigger\">\n <solid-ui-avatar></solid-ui-avatar>\n <icon-lucide-chevron-down slot=\"right-icon\"></icon-lucide-chevron-down>\n </button>\n\n ${this.menuItems.map(menuItem => html`\n <solid-ui-menu-item .href=${menuItem.href ?? nothing} @solid-ui-select=${() => menuItem.onSelected?.()}>\n ${menuItem.label}\n </solid-ui-menu-item>\n `)}\n <solid-ui-logout-button>\n <solid-ui-menu-item slot=\"trigger\">\n <icon-lucide-log-out slot=\"left-icon\"></icon-lucide-log-out>\n Sign out\n </solid-ui-menu-item>\n </solid-ui-logout-button>\n </solid-ui-menu>\n `\n }\n}\n","import Account, { type AccountMenuItem } from './Account'\n\nexport { Account, type AccountMenuItem }\nexport default Account\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACkByCS,IAAA,CAQxCL,EAAc,kBAAkB,CAAC;AAAA,IAAAM;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,KAAAC,IAO/Bb,EAAS,EAAEc,MAAMC,MAAM,CAAC,GAACC,IAGzBnB,EAAQ;CAAEoB,SAASd;CAAae,WAAW;AAAK,CAAC,GAAC,cAAAC,IAVrD,cACqCjB,EAAa;CAAAmB,YAAA,GAAAC,GAAA;EAUSK,AAVT,MAAA,GAAAL,CAAA,GAAAC,EAAA,MAAAd,IAAAe,EAAA,IAAA,GAAAC,EAAA,MAOR,CAAA,CAAE,EAAA,GAAAF,EAAA,MAAAZ,GAAAe,EAAA,MAGLtB,CAAoB,CAAA,GAAAuB,EAAA,MAAA,6BAAA,KAAA,CAAA;CAAA;CAAA,KAAAf,KAAA;EAAA,OAAAgB,EAAAnB,GAAA,IAAA;CAAA;CAAA,IAHhDoB,UAASC,GAAA;EAAAC,EAAAtB,GAAA,MAAAqB,CAAA;CAAA;CAAA,IAGDE,OAAI;EAAA,OAAAJ,EAAAjB,GAAA,IAAA;CAAA;CAAA,IAAJqB,KAAIF,GAAA;EAAAC,EAAApB,GAAA,MAAAmB,CAAA;CAAA;CAIrBG,oBAAqB;EAGnB,AAFA,MAAMA,kBAAkB,GAExB,KAAKC,4BAA4B,KAAKF,KAAKG,uBAAuB,KAAKC,cAAc,CAAC;CACxF;CAEAC,uBAAwB;EAGtB,AAFA,MAAMA,qBAAqB,GAE3B,KAAKH,4BAA4B;CACnC;CAEUI,SAAU;EAkBlB,OAjBK,KAAKN,KAAKO,UAiBRzC,CAAI;;;;;;;cAOD,KAAK+B,UAAUW,KAAIC,MAAY3C,CAAI;4CACL2C,EAASC,QAAQ3C,EAAO,0BAA2B0C,EAASE,aAAa,EAAC;sBAChGF,EAASG,MAAK;;aAEvB,EAAC;;;;;;;;QA3BD9C,CAAI;;;;;;;;;;;;;;CAoCf;AACF,GAAC,CAAA+C,GAAA,CAAApB,GAAAC,GAAAF,IAAAsB,GAAA,CAAAvC,GAAAwC,MAAAC,EAAA7B,GAAA,CAAA;CAAAN;CAAA;CAAA;AAAA,GAAA;CAAAG;CAAA;CAAA;AAAA,CAAA,GAAAV,GAAA,GAAA,KAAA,GAjEoCJ,CAAY,GAAAiB,IAAA8B,IAAA,cAAAC,EAAA;CAAA7B,cAAA;EAAA,MAAAd,CAAA,GAAAoB,EAAA,MAAA,UAC/BtB,CAAM,GAAAsB,EAAA,MAAA,UACN,EACdwB,WAAWC,MAAuB,CAAC,CAACA,EAAUpB,KAAKO,QACrD,CAAC,GAAAQ,EAAA;CAAA;AAAA,GAAApB,EAAAsB,GAAAzC,GAAA,KAAA,CAAA,GAAAyC,GAAA;;;AC5BH,IAAA,IAAeK"}
@@ -1,16 +1,16 @@
1
- import { g as e, m as t, p as n, u as r } from "./solid-logic.esm-7q6hmfIF.js";
2
- import { r as i } from "./context-DJ_8r7Oc.js";
3
- import { r as a } from "./dialog-DlBtmOm6.js";
4
- import { a as o, i as s, o as c } from "./components-BlEGdx4i.js";
1
+ import { f as e, h as t, p as n, u as r } from "./solid-logic.esm-BhVcNu8u.js";
2
+ import { r as i } from "./context-uE5jJlS0.js";
3
+ import { r as a } from "./dialog-BAzrHJ8w.js";
4
+ import { a as o, i as s, o as c } from "./components-C1LEhsaK.js";
5
5
  import { c as l, i as u, n as d } from "./lit-C4H1jI4q.js";
6
6
  import { t as f } from "./show-dialog-eEW5yRBv.js";
7
7
  import { n as p, r as m, t as h } from "./decorators-BiCkPd_3.js";
8
8
  import "./chevron-down-ujxRg3MD.js";
9
- import "./button-DbKYu6-r.js";
10
- import "./dialog-content-CMeH_BD7.js";
11
- import "./dialog-footer-D0zzIMlx.js";
12
- import "./combobox-Dtgc8qqO.js";
13
- import "./combobox-option-Ck0mu4Gc.js";
9
+ import "./button-0s0lZdxm.js";
10
+ import "./dialog-content-fdJrkCyB.js";
11
+ import "./dialog-footer-Bs_p2Nn9.js";
12
+ import "./combobox-Cxi8xUMn.js";
13
+ import "./combobox-option-DiR3VpyT.js";
14
14
  //#region src/lib/auth/Account.ts
15
15
  var g = class {
16
16
  webId;
@@ -369,8 +369,8 @@ new (G = (T = /*#__PURE__*/ new WeakMap(), E = /*#__PURE__*/ new WeakMap(), D =
369
369
  //#endregion
370
370
  //#region src/components/login-modal/index.ts
371
371
  var se = $, ce = "https://solidproject.org/get_a_pod";
372
- function le(t) {
373
- let r = n.store, i = r.sym(t), a = r.any(i, e.sioc("avatar")) || r.any(i, e.foaf("img")) || r.any(i, e.vcard("logo")) || r.any(i, e.vcard("hasPhoto")) || r.any(i, e.vcard("photo")) || r.any(i, e.foaf("depiction"));
372
+ function le(n) {
373
+ let r = e.store, i = r.sym(n), a = r.any(i, t.sioc("avatar")) || r.any(i, t.foaf("img")) || r.any(i, t.vcard("logo")) || r.any(i, t.vcard("hasPhoto")) || r.any(i, t.vcard("photo")) || r.any(i, t.foaf("depiction"));
374
374
  return a ? a.value : void 0;
375
375
  }
376
376
  var ue = class {
@@ -378,36 +378,36 @@ var ue = class {
378
378
  this.signupUrl = e;
379
379
  }
380
380
  get account() {
381
- let e = t.webId ?? t.info?.webId;
382
- return !(t.isActive ?? t.info?.isLoggedIn ?? !!e) || !e ? null : new g(e, le(e));
381
+ let e = n.webId ?? n.info?.webId;
382
+ return !(n.isActive ?? n.info?.isLoggedIn ?? !!e) || !e ? null : new g(e, le(e));
383
383
  }
384
- async login(e) {
385
- if (!e) {
384
+ async login(t) {
385
+ if (!t) {
386
386
  x(u`<solid-ui-login-modal></solid-ui-login-modal>`);
387
387
  return;
388
388
  }
389
- n.store.updater.flagAuthorizationMetadata();
389
+ e.store.updater.flagAuthorizationMetadata();
390
390
  let r = new URL(window.location.href).hash;
391
- r && window.localStorage.setItem("preLoginRedirectHash", r), window.localStorage.setItem("loginIssuer", e);
391
+ r && window.localStorage.setItem("preLoginRedirectHash", r), window.localStorage.setItem("loginIssuer", t);
392
392
  let i = new URL(window.location.href);
393
- i.hash = "", await t.login(e, i.href);
393
+ i.hash = "", await n.login(t, i.href);
394
394
  }
395
395
  async signup() {
396
396
  window.open(this.signupUrl, "_blank", "noopener,noreferrer");
397
397
  }
398
398
  async logout() {
399
- await t.logout();
399
+ await n.logout();
400
400
  }
401
401
  onSessionUpdated(e) {
402
- let n = t, r = () => {
402
+ let t = n, r = () => {
403
403
  e();
404
404
  };
405
- return typeof n.addEventListener == "function" ? n.addEventListener("sessionStateChange", r) : (t.events.on("login", e), t.events.on("logout", e), t.events.on("sessionRestore", e)), () => {
406
- typeof n.removeEventListener == "function" ? n.removeEventListener("sessionStateChange", r) : (t.events.off("login", e), t.events.off("logout", e), t.events.off("sessionRestore", e));
405
+ return typeof t.addEventListener == "function" ? t.addEventListener("sessionStateChange", r) : (n.events.on("login", e), n.events.on("logout", e), n.events.on("sessionRestore", e)), () => {
406
+ typeof t.removeEventListener == "function" ? t.removeEventListener("sessionStateChange", r) : (n.events.off("login", e), n.events.off("logout", e), n.events.off("sessionRestore", e));
407
407
  };
408
408
  }
409
409
  };
410
410
  //#endregion
411
411
  export { x as a, y as c, $ as i, _ as l, ue as n, b as o, se as r, v as s, ce as t, g as u };
412
412
 
413
- //# sourceMappingURL=auth-Cpf3HYqF.js.map
413
+ //# sourceMappingURL=auth-CZOEEeJ8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-Cpf3HYqF.js","names":["Account","webId","avatarUrl","constructor","NoopAuth","account","login","Error","signup","logout","onSessionUpdated","undefined","createContext","NoopAuth","DEFAULT_AUTH_CONTEXT","authContext","Symbol","generateId","Dialog","id","template","element","config","_resolveElement","constructor","Promise","resolve","setElement","closed","data","onClose","ShowDialogEvent","Dialog","showDialog","template","config","dialog","document","dispatchEvent","element","customElement","WebComponent","html","nothing","consume","property","query","state","authContext","DEFAULT_AUTH_CONTEXT","getSuggestedIssuers","styles","_classDecs","_LoginModal","_LoginModal2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_issuerUrlDecs","type","String","reflect","_issuerInputValueDecs","_failedDecs","_submittingDecs","_authDecs","context","subscribe","_dialogDecs","_LoginModal3","LoginModal","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_issuerUrl","_init_issuerInputValue","_init_failed","_init_submitting","_init_auth","_init_dialog","_classPrivateFieldGet","issuerUrl","v","_classPrivateFieldSet","issuerInputValue","failed","submitting","auth","dialog","connectedCallback","localStorage","getItem","render","suggestedIssuers","onSubmit","onIssuerInputChange","map","issuer","uri","name","close","e","target","value","preventDefault","login","error","console","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","LoginModal","authSession","solidLogicSingleton","Account","showDialog","html","ns","DEFAULT_SIGNUP_URL","findAccountImage","webId","store","me","sym","image","any","sioc","foaf","vcard","value","undefined","SolidAuth","constructor","signupUrl","account","info","isActive","isLoggedIn","Boolean","avatarUrl","login","loginUrl","updater","flagAuthorizationMetadata","preLoginRedirectHash","URL","window","location","href","hash","localStorage","setItem","locationUrl","signup","open","logout","onSessionUpdated","callback","sessionEventTarget","listener","addEventListener","events","on","removeEventListener","off"],"sources":["../../src/lib/auth/Account.ts","../../src/lib/auth/NoopAuth.ts","../../src/lib/auth/context.ts","../../src/lib/dialogs/Dialog.ts","../../src/lib/dialogs/helpers.ts","../../src/components/login-modal/LoginModal.styles.css","../../src/components/login-modal/LoginModal.ts","../../src/components/login-modal/index.ts","../../src/lib/auth/SolidAuth.ts"],"sourcesContent":["export default class Account {\n public readonly webId: string\n public readonly avatarUrl?: string\n\n constructor (webId: string, avatarUrl?: string) {\n this.webId = webId\n this.avatarUrl = avatarUrl\n }\n}\n","import { AuthContext } from './context'\nimport Account from './Account'\n\nexport default class NoopAuth implements AuthContext {\n get account (): Account | null {\n return null\n }\n\n async login () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n async signup () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n async logout () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n onSessionUpdated () {\n return () => undefined\n }\n}\n","import { createContext } from '@lit/context'\nimport NoopAuth from './NoopAuth'\nimport Account from './Account'\n\nexport interface AuthContext {\n account: Account | null;\n login(loginUrl?: string): Promise<void>;\n signup(): Promise<void>;\n logout(): Promise<void>;\n onSessionUpdated(callback: () => unknown): () => void;\n}\n\nexport const DEFAULT_AUTH_CONTEXT = new NoopAuth()\nexport const authContext = createContext<AuthContext>(Symbol('auth'))\n","import { TemplateResult } from 'lit'\nimport { generateId } from '@/lib/components'\n\nexport interface DialogConfig {\n onClose?(data?: unknown): void\n}\n\nexport default class Dialog {\n public readonly id: string\n public readonly template: TemplateResult\n public readonly element: Promise<HTMLElement>\n public readonly config: DialogConfig\n private _resolveElement!: (element: HTMLElement) => void\n\n constructor (template: TemplateResult, config: DialogConfig = {}) {\n this.id = generateId()\n this.template = template\n this.config = config\n this.element = new Promise(resolve => {\n this._resolveElement = resolve\n })\n }\n\n setElement (element: HTMLElement) {\n this._resolveElement(element)\n }\n\n closed (data?: unknown) {\n this.config.onClose?.(data)\n }\n}\n","import { TemplateResult } from 'lit'\nimport { ShowDialogEvent } from './events/show-dialog'\nimport Dialog, { DialogConfig } from './Dialog'\n\nexport function showDialog<T extends HTMLElement = HTMLElement> (template: TemplateResult, config: DialogConfig = {}): Promise<T> {\n const dialog = new Dialog(template, config)\n\n document.dispatchEvent(new ShowDialogEvent(dialog))\n\n return dialog.element as Promise<T>\n}\n",".error-message {\n color: var(--solid-ui-color-error);\n font-size: var(--solid-ui-font-size-sm);\n font-weight: 500;\n text-align: center;\n width: 100%;\n}\n\nsolid-ui-combobox {\n width: 100%;\n}\n\nsolid-ui-button {\n flex: 1;\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { consume } from '@lit/context'\nimport { property, query, state } from 'lit/decorators.js'\nimport { AuthContext, authContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\nimport { getSuggestedIssuers } from 'solid-logic'\nimport type Dialog from '@/components/dialog'\nimport type Combobox from '@/components/combobox'\n\nimport '~icons/lucide/chevron-down'\nimport '@/components/dialog'\nimport '@/components/dialog-content'\nimport '@/components/dialog-footer'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './LoginModal.styles.css'\n\n@customElement('solid-ui-login-modal')\nexport default class LoginModal extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor issuerUrl = ''\n\n @state()\n private accessor issuerInputValue = ''\n\n @state()\n private accessor failed: boolean = false\n\n @state()\n private accessor submitting: boolean = false\n\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n @query('solid-ui-dialog')\n private accessor dialog: Dialog | null = null\n\n connectedCallback () {\n super.connectedCallback()\n\n this.issuerInputValue = (typeof localStorage !== 'undefined' && localStorage.getItem('loginIssuer')) || this.issuerUrl || ''\n }\n\n protected render () {\n const suggestedIssuers = getSuggestedIssuers()\n\n return html`\n <solid-ui-dialog title=\"Select an identity provider\">\n <form @submit=${this.onSubmit}>\n <solid-ui-dialog-content>\n <solid-ui-combobox label=\"Solid Identity Provider\" .value=${this.issuerInputValue} @input=${this.onIssuerInputChange}>\n ${suggestedIssuers.map(issuer => html`<solid-ui-combobox-option value=\"${issuer.uri}\">${issuer.name}</solid-ui-combobox-option>`)}\n </solid-ui-combobox>\n\n ${this.failed ? html`<p class=\"error-message\">Something went wrong</p>` : nothing}\n </solid-ui-dialog-content>\n\n <solid-ui-dialog-footer>\n <solid-ui-button\n variant=\"secondary\"\n @click=\"${() => this.dialog?.close()}\"\n >\n Cancel\n </solid-ui-button>\n <solid-ui-button\n ?disabled=${!this.issuerInputValue || this.submitting}\n ?loading=${this.submitting}\n type=\"submit\"\n >\n Login\n </solid-ui-button>\n </solid-ui-dialog-footer>\n </form>\n </solid-ui-dialog>\n `\n }\n\n private onIssuerInputChange (e: Event) {\n this.issuerInputValue = (e.target as Combobox).value\n }\n\n private async onSubmit (e: Event) {\n e.preventDefault()\n\n this.failed = false\n\n if (!this.issuerInputValue) {\n return\n }\n\n this.submitting = true\n\n try {\n await this.auth.login(this.issuerInputValue)\n } catch (error) {\n console.error(error)\n\n this.failed = true\n } finally {\n this.submitting = false\n }\n }\n}\n","import LoginModal from './LoginModal'\n\nexport { LoginModal }\nexport default LoginModal\n","import { authSession, solidLogicSingleton } from 'solid-logic'\nimport Account from '@/lib/auth/Account'\nimport { AuthContext } from '@/lib/auth'\nimport { showDialog } from '@/lib/dialogs'\nimport { html } from 'lit'\nimport ns from '@/lib/ns'\n\nimport '@/components/login-modal'\n\nexport const DEFAULT_SIGNUP_URL = 'https://solidproject.org/get_a_pod'\n\nfunction findAccountImage (webId: string): string | undefined {\n const store = solidLogicSingleton.store\n const me = store.sym(webId)\n const image =\n store.any(me, ns.sioc('avatar')) ||\n store.any(me, ns.foaf('img')) ||\n store.any(me, ns.vcard('logo')) ||\n store.any(me, ns.vcard('hasPhoto')) ||\n store.any(me, ns.vcard('photo')) ||\n store.any(me, ns.foaf('depiction'))\n\n return image ? (image as any).value : undefined\n}\n\nexport default class SolidAuth implements AuthContext {\n constructor (public signupUrl: string = DEFAULT_SIGNUP_URL) {}\n\n get account (): Account | null {\n const webId: string | undefined = authSession.webId ?? authSession.info?.webId\n const isActive: boolean = authSession.isActive ?? authSession.info?.isLoggedIn ?? Boolean(webId)\n if (!isActive || !webId) {\n return null\n }\n\n const avatarUrl = findAccountImage(webId)\n\n return new Account(webId, avatarUrl)\n }\n\n async login (loginUrl?: string) {\n if (!loginUrl) {\n showDialog(html`<solid-ui-login-modal></solid-ui-login-modal>`)\n\n return\n }\n\n // clear authorization metadata from store\n ;(solidLogicSingleton.store.updater as any).flagAuthorizationMetadata()\n\n const preLoginRedirectHash = new URL(window.location.href).hash\n if (preLoginRedirectHash) {\n window.localStorage.setItem('preLoginRedirectHash', preLoginRedirectHash)\n }\n window.localStorage.setItem('loginIssuer', loginUrl)\n\n const locationUrl = new URL(window.location.href)\n\n locationUrl.hash = ''\n\n await authSession.login(loginUrl, locationUrl.href)\n }\n\n async signup () {\n window.open(this.signupUrl, '_blank', 'noopener,noreferrer')\n }\n\n async logout () {\n await authSession.logout()\n }\n\n onSessionUpdated (callback: () => unknown) {\n const sessionEventTarget = authSession as unknown as EventTarget\n const listener = () => {\n callback()\n }\n if (typeof sessionEventTarget.addEventListener === 'function') {\n sessionEventTarget.addEventListener('sessionStateChange', listener)\n } else {\n authSession.events.on('login', callback)\n authSession.events.on('logout', callback)\n authSession.events.on('sessionRestore', callback)\n }\n\n return () => {\n if (typeof sessionEventTarget.removeEventListener === 'function') {\n sessionEventTarget.removeEventListener('sessionStateChange', listener)\n } else {\n authSession.events.off('login', callback)\n authSession.events.off('logout', callback)\n authSession.events.off('sessionRestore', callback)\n }\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"auth-CZOEEeJ8.js","names":["Account","webId","avatarUrl","constructor","NoopAuth","account","login","Error","signup","logout","onSessionUpdated","undefined","createContext","NoopAuth","DEFAULT_AUTH_CONTEXT","authContext","Symbol","generateId","Dialog","id","template","element","config","_resolveElement","constructor","Promise","resolve","setElement","closed","data","onClose","ShowDialogEvent","Dialog","showDialog","template","config","dialog","document","dispatchEvent","element","customElement","WebComponent","html","nothing","consume","property","query","state","authContext","DEFAULT_AUTH_CONTEXT","getSuggestedIssuers","styles","_classDecs","_LoginModal","_LoginModal2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_issuerUrlDecs","type","String","reflect","_issuerInputValueDecs","_failedDecs","_submittingDecs","_authDecs","context","subscribe","_dialogDecs","_LoginModal3","LoginModal","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_issuerUrl","_init_issuerInputValue","_init_failed","_init_submitting","_init_auth","_init_dialog","_classPrivateFieldGet","issuerUrl","v","_classPrivateFieldSet","issuerInputValue","failed","submitting","auth","dialog","connectedCallback","localStorage","getItem","render","suggestedIssuers","onSubmit","onIssuerInputChange","map","issuer","uri","name","close","e","target","value","preventDefault","login","error","console","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","LoginModal","authSession","solidLogicSingleton","Account","showDialog","html","ns","DEFAULT_SIGNUP_URL","findAccountImage","webId","store","me","sym","image","any","sioc","foaf","vcard","value","undefined","SolidAuth","constructor","signupUrl","account","info","isActive","isLoggedIn","Boolean","avatarUrl","login","loginUrl","updater","flagAuthorizationMetadata","preLoginRedirectHash","URL","window","location","href","hash","localStorage","setItem","locationUrl","signup","open","logout","onSessionUpdated","callback","sessionEventTarget","listener","addEventListener","events","on","removeEventListener","off"],"sources":["../../src/lib/auth/Account.ts","../../src/lib/auth/NoopAuth.ts","../../src/lib/auth/context.ts","../../src/lib/dialogs/Dialog.ts","../../src/lib/dialogs/helpers.ts","../../src/components/login-modal/LoginModal.styles.css","../../src/components/login-modal/LoginModal.ts","../../src/components/login-modal/index.ts","../../src/lib/auth/SolidAuth.ts"],"sourcesContent":["export default class Account {\n public readonly webId: string\n public readonly avatarUrl?: string\n\n constructor (webId: string, avatarUrl?: string) {\n this.webId = webId\n this.avatarUrl = avatarUrl\n }\n}\n","import { AuthContext } from './context'\nimport Account from './Account'\n\nexport default class NoopAuth implements AuthContext {\n get account (): Account | null {\n return null\n }\n\n async login () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n async signup () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n async logout () {\n throw new Error('Can\\'t use auth, missing context provider')\n }\n\n onSessionUpdated () {\n return () => undefined\n }\n}\n","import { createContext } from '@lit/context'\nimport NoopAuth from './NoopAuth'\nimport Account from './Account'\n\nexport interface AuthContext {\n account: Account | null;\n login(loginUrl?: string): Promise<void>;\n signup(): Promise<void>;\n logout(): Promise<void>;\n onSessionUpdated(callback: () => unknown): () => void;\n}\n\nexport const DEFAULT_AUTH_CONTEXT = new NoopAuth()\nexport const authContext = createContext<AuthContext>(Symbol('auth'))\n","import { TemplateResult } from 'lit'\nimport { generateId } from '@/lib/components'\n\nexport interface DialogConfig {\n onClose?(data?: unknown): void\n}\n\nexport default class Dialog {\n public readonly id: string\n public readonly template: TemplateResult\n public readonly element: Promise<HTMLElement>\n public readonly config: DialogConfig\n private _resolveElement!: (element: HTMLElement) => void\n\n constructor (template: TemplateResult, config: DialogConfig = {}) {\n this.id = generateId()\n this.template = template\n this.config = config\n this.element = new Promise(resolve => {\n this._resolveElement = resolve\n })\n }\n\n setElement (element: HTMLElement) {\n this._resolveElement(element)\n }\n\n closed (data?: unknown) {\n this.config.onClose?.(data)\n }\n}\n","import { TemplateResult } from 'lit'\nimport { ShowDialogEvent } from './events/show-dialog'\nimport Dialog, { DialogConfig } from './Dialog'\n\nexport function showDialog<T extends HTMLElement = HTMLElement> (template: TemplateResult, config: DialogConfig = {}): Promise<T> {\n const dialog = new Dialog(template, config)\n\n document.dispatchEvent(new ShowDialogEvent(dialog))\n\n return dialog.element as Promise<T>\n}\n",".error-message {\n color: var(--solid-ui-color-error);\n font-size: var(--solid-ui-font-size-sm);\n font-weight: 500;\n text-align: center;\n width: 100%;\n}\n\nsolid-ui-combobox {\n width: 100%;\n}\n\nsolid-ui-button {\n flex: 1;\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { consume } from '@lit/context'\nimport { property, query, state } from 'lit/decorators.js'\nimport { AuthContext, authContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\nimport { getSuggestedIssuers } from 'solid-logic'\nimport type Dialog from '@/components/dialog'\nimport type Combobox from '@/components/combobox'\n\nimport '~icons/lucide/chevron-down'\nimport '@/components/dialog'\nimport '@/components/dialog-content'\nimport '@/components/dialog-footer'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './LoginModal.styles.css'\n\n@customElement('solid-ui-login-modal')\nexport default class LoginModal extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor issuerUrl = ''\n\n @state()\n private accessor issuerInputValue = ''\n\n @state()\n private accessor failed: boolean = false\n\n @state()\n private accessor submitting: boolean = false\n\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n @query('solid-ui-dialog')\n private accessor dialog: Dialog | null = null\n\n connectedCallback () {\n super.connectedCallback()\n\n this.issuerInputValue = (typeof localStorage !== 'undefined' && localStorage.getItem('loginIssuer')) || this.issuerUrl || ''\n }\n\n protected render () {\n const suggestedIssuers = getSuggestedIssuers()\n\n return html`\n <solid-ui-dialog title=\"Select an identity provider\">\n <form @submit=${this.onSubmit}>\n <solid-ui-dialog-content>\n <solid-ui-combobox label=\"Solid Identity Provider\" .value=${this.issuerInputValue} @input=${this.onIssuerInputChange}>\n ${suggestedIssuers.map(issuer => html`<solid-ui-combobox-option value=\"${issuer.uri}\">${issuer.name}</solid-ui-combobox-option>`)}\n </solid-ui-combobox>\n\n ${this.failed ? html`<p class=\"error-message\">Something went wrong</p>` : nothing}\n </solid-ui-dialog-content>\n\n <solid-ui-dialog-footer>\n <solid-ui-button\n variant=\"secondary\"\n @click=\"${() => this.dialog?.close()}\"\n >\n Cancel\n </solid-ui-button>\n <solid-ui-button\n ?disabled=${!this.issuerInputValue || this.submitting}\n ?loading=${this.submitting}\n type=\"submit\"\n >\n Login\n </solid-ui-button>\n </solid-ui-dialog-footer>\n </form>\n </solid-ui-dialog>\n `\n }\n\n private onIssuerInputChange (e: Event) {\n this.issuerInputValue = (e.target as Combobox).value\n }\n\n private async onSubmit (e: Event) {\n e.preventDefault()\n\n this.failed = false\n\n if (!this.issuerInputValue) {\n return\n }\n\n this.submitting = true\n\n try {\n await this.auth.login(this.issuerInputValue)\n } catch (error) {\n console.error(error)\n\n this.failed = true\n } finally {\n this.submitting = false\n }\n }\n}\n","import LoginModal from './LoginModal'\n\nexport { LoginModal }\nexport default LoginModal\n","import { authSession, solidLogicSingleton } from 'solid-logic'\nimport Account from '@/lib/auth/Account'\nimport { AuthContext } from '@/lib/auth'\nimport { showDialog } from '@/lib/dialogs'\nimport { html } from 'lit'\nimport ns from '@/lib/ns'\n\nimport '@/components/login-modal'\n\nexport const DEFAULT_SIGNUP_URL = 'https://solidproject.org/get_a_pod'\n\nfunction findAccountImage (webId: string): string | undefined {\n const store = solidLogicSingleton.store\n const me = store.sym(webId)\n const image =\n store.any(me, ns.sioc('avatar')) ||\n store.any(me, ns.foaf('img')) ||\n store.any(me, ns.vcard('logo')) ||\n store.any(me, ns.vcard('hasPhoto')) ||\n store.any(me, ns.vcard('photo')) ||\n store.any(me, ns.foaf('depiction'))\n\n return image ? (image as any).value : undefined\n}\n\nexport default class SolidAuth implements AuthContext {\n constructor (public signupUrl: string = DEFAULT_SIGNUP_URL) {}\n\n get account (): Account | null {\n const webId: string | undefined = authSession.webId ?? authSession.info?.webId\n const isActive: boolean = authSession.isActive ?? authSession.info?.isLoggedIn ?? Boolean(webId)\n if (!isActive || !webId) {\n return null\n }\n\n const avatarUrl = findAccountImage(webId)\n\n return new Account(webId, avatarUrl)\n }\n\n async login (loginUrl?: string) {\n if (!loginUrl) {\n showDialog(html`<solid-ui-login-modal></solid-ui-login-modal>`)\n\n return\n }\n\n // clear authorization metadata from store\n ;(solidLogicSingleton.store.updater as any).flagAuthorizationMetadata()\n\n const preLoginRedirectHash = new URL(window.location.href).hash\n if (preLoginRedirectHash) {\n window.localStorage.setItem('preLoginRedirectHash', preLoginRedirectHash)\n }\n window.localStorage.setItem('loginIssuer', loginUrl)\n\n const locationUrl = new URL(window.location.href)\n\n locationUrl.hash = ''\n\n await authSession.login(loginUrl, locationUrl.href)\n }\n\n async signup () {\n window.open(this.signupUrl, '_blank', 'noopener,noreferrer')\n }\n\n async logout () {\n await authSession.logout()\n }\n\n onSessionUpdated (callback: () => unknown) {\n const sessionEventTarget = authSession as unknown as EventTarget\n const listener = () => {\n callback()\n }\n if (typeof sessionEventTarget.addEventListener === 'function') {\n sessionEventTarget.addEventListener('sessionStateChange', listener)\n } else {\n authSession.events.on('login', callback)\n authSession.events.on('logout', callback)\n authSession.events.on('sessionRestore', callback)\n }\n\n return () => {\n if (typeof sessionEventTarget.removeEventListener === 'function') {\n sessionEventTarget.removeEventListener('sessionStateChange', listener)\n } else {\n authSession.events.off('login', callback)\n authSession.events.off('logout', callback)\n authSession.events.off('sessionRestore', callback)\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { c as e, s as t } from "./auth-Cpf3HYqF.js";
2
- import { r as n } from "./dialog-DlBtmOm6.js";
3
- import { a as r, i } from "./components-BlEGdx4i.js";
1
+ import { c as e, s as t } from "./auth-CZOEEeJ8.js";
2
+ import { r as n } from "./dialog-BAzrHJ8w.js";
3
+ import { a as r, i } from "./components-C1LEhsaK.js";
4
4
  import { c as a, i as o } from "./lit-C4H1jI4q.js";
5
5
  //#region ~icons/lucide/circle-user
6
6
  var s = class extends HTMLElement {
@@ -11,7 +11,7 @@ var s = class extends HTMLElement {
11
11
  customElements.get("icon-lucide-circle-user") || customElements.define("icon-lucide-circle-user", s);
12
12
  //#endregion
13
13
  //#region src/components/avatar/Avatar.styles.css
14
- var c = a`:host{--size:150px;width:var(--size);height:var(--size);display:inline-flex;overflow:hidden;& img{object-fit:cover;width:100%;height:100%}}:host(:state(fallback)){background:var(--solid-ui-color-gray-100);justify-content:center;align-items:center;& icon-lucide-circle-user{color:var(--solid-ui-color-gray-200);width:50%;height:50%}}`, l, u, d, f, p, m, h, g, _, v;
14
+ var c = a`:host{--size:150px;width:var(--size);height:var(--size);display:inline-flex;overflow:hidden;& img{object-fit:cover;width:100%;height:100%}}:host([data-state-fallback]){background:var(--solid-ui-color-gray-100);justify-content:center;align-items:center;& icon-lucide-circle-user{color:var(--solid-ui-color-gray-200);width:50%;height:50%}}`, l, u, d, f, p, m, h, g, _, v;
15
15
  function y(e, t, n) {
16
16
  b(e, t), t.set(e, n);
17
17
  }
@@ -220,4 +220,4 @@ var M = j;
220
220
  //#endregion
221
221
  export { j as n, M as t };
222
222
 
223
- //# sourceMappingURL=avatar-D281qln0.js.map
223
+ //# sourceMappingURL=avatar-BugsRJZg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar-BugsRJZg.js","names":["customElement","WebComponent","consume","html","authContext","DEFAULT_AUTH_CONTEXT","styles","_classDecs","_Avatar","_Avatar2","_A","WeakMap","_ref","_authDecs","context","subscribe","_Avatar3","Avatar","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_auth","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","render","account","avatarUrl","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","fallback","component","default","Avatar"],"sources":["../../src/components/avatar/Avatar.styles.css","../../src/components/avatar/Avatar.ts","../../src/components/avatar/index.ts"],"sourcesContent":[":host {\n --size: 150px;\n\n display: inline-flex;\n overflow: hidden;\n width: var(--size);\n height: var(--size);\n\n img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n\n:host([data-state-fallback]) {\n background: var(--solid-ui-color-gray-100);\n justify-content: center;\n align-items: center;\n\n icon-lucide-circle-user {\n color: var(--solid-ui-color-gray-200);\n width: 50%;\n height: 50%;\n }\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport { authContext, AuthContext, DEFAULT_AUTH_CONTEXT } from '@/lib/auth'\n\nimport '~icons/lucide/circle-user'\n\nimport styles from './Avatar.styles.css'\n\n@customElement('solid-ui-avatar')\nexport default class Avatar extends WebComponent {\n static styles = styles\n static states = {\n fallback: (component: Avatar) => !component.auth.account?.avatarUrl,\n }\n\n @consume({ context: authContext, subscribe: true })\n private accessor auth: AuthContext = DEFAULT_AUTH_CONTEXT\n\n protected render () {\n if (!this.auth.account?.avatarUrl) {\n return html`\n <icon-lucide-circle-user></icon-lucide-circle-user>\n `\n }\n\n return html`\n <img src=\"${this.auth.account?.avatarUrl}\" alt=\"\" />\n `\n }\n}\n","import Avatar from './Avatar'\n\nexport { Avatar }\nexport default Avatar\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACOwCO,IAAA,CAEvCP,EAAc,iBAAiB,CAAC;AAAA,IAAAQ;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,KAAAC,IAO9BX,EAAQ;CAAEY,SAASV;CAAaW,WAAW;AAAK,CAAC,GAAC,SAAAC,IAPrD,cACoCf,EAAa;CAAAiB,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAV,IAAAW,EAAA,IAAA,GAAAC,EAAA,MAOVjB,CAAoB,EAAA;CAAA;CAAA,KAAAO,KAAA;EAAA,OAAAW,EAAAb,GAAA,IAAA;CAAA;CAAA,IAAxCc,KAAIC,GAAA;EAAAC,EAAAhB,GAAA,MAAAe,CAAA;CAAA;CAEXE,SAAU;EAOlB,OANK,KAAKH,KAAKI,SAASC,YAMjB1B,CAAI;oBACK,KAAKqB,KAAKI,SAASC,UAAS;QANnC1B,CAAI;;;CAQf;AACF,GAAC,CAAA2B,GAAA,CAAAR,GAAAD,IAAAU,GAAA,CAAAvB,GAAAwB,MAAAC,EAAAjB,GAAA,CAAA;CAAAH;CAAA;CAAA;AAAA,CAAA,GAAAN,GAAA,GAAA,KAAA,GApBmCN,CAAY,GAAAe,IAAAkB,IAAA,cAAAC,EAAA;CAAAjB,cAAA;EAAA,MAAAV,CAAA,GAAA4B,EAAA,MAAA,UAC9B9B,CAAM,GAAA8B,EAAA,MAAA,UACN,EACdC,WAAWC,MAAsB,CAACA,EAAUd,KAAKI,SAASC,UAC5D,CAAC,GAAAG,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAAzB,GAAA,KAAA,CAAA,GAAAyB,GAAA;;;ACXH,IAAA,IAAeM"}
@@ -1,4 +1,4 @@
1
- import { a as e, i as t } from "./components-BlEGdx4i.js";
1
+ import { a as e, i as t } from "./components-C1LEhsaK.js";
2
2
  import { c as n, i as r, n as i } from "./lit-C4H1jI4q.js";
3
3
  import { r as a } from "./decorators-BiCkPd_3.js";
4
4
  //#region ~icons/svg-spinners/180-ring
@@ -279,4 +279,4 @@ var V = B;
279
279
  //#endregion
280
280
  export { z as n, B as r, V as t };
281
281
 
282
- //# sourceMappingURL=button-DbKYu6-r.js.map
282
+ //# sourceMappingURL=button-0s0lZdxm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-DbKYu6-r.js","names":["customElement","WebComponent","html","nothing","property","styles","BUTTON_VARIANTS","_classDecs","_Button","_Button2","_A","WeakMap","_B","_C","_D","_ref","_variantDecs","type","String","reflect","_typeDecs","_disabledDecs","Boolean","_loadingDecs","_Button3","Button","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_variant","_init_type","_init_disabled","undefined","_init_loading","_classPrivateFieldGet","variant","v","_classPrivateFieldSet","disabled","loading","render","onClick","getInternals","form","requestSubmit","reset","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","Button","BUTTON_VARIANTS"],"sources":["../../src/components/button/Button.styles.css","../../src/components/button/Button.ts","../../src/components/button/index.ts"],"sourcesContent":[":host {\n --text-color: var(--solid-ui-color-white);\n --border-color: var(--solid-ui-color-primary);\n --background-color: var(--solid-ui-color-primary);\n --hover-text-color: var(--text-color);\n --hover-border-color: var(--solid-ui-color-tertiary);\n --hover-background-color: var(--solid-ui-color-tertiary);\n\n display: inline-flex;\n\n button {\n position: relative;\n padding: 7px 12px;\n border-radius: 5px;\n font-size: var(--solid-ui-font-size-md);\n font-weight: 600;\n color: var(--text-color);\n background: var(--background-color);\n border: 1px solid var(--border-color);\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 5px;\n flex: 1;\n\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n &:hover:not(:disabled) {\n color: var(--hover-text-color);\n background: var(--hover-background-color);\n border-color: var(--hover-border-color);\n }\n\n icon-svg-spinners-180-ring, ::slotted([slot=\"left-icon\"]), ::slotted([slot=\"right-icon\"]) {\n width: var(--solid-ui-font-size-md);\n height: var(--solid-ui-font-size-md);\n }\n\n &::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: var(--solid-ui-clickable-area);\n height: var(--solid-ui-clickable-area);\n }\n }\n}\n\n:host(:has([slot=\"icon\"])) button {\n padding: 4px;\n\n ::slotted([slot=\"icon\"]) {\n width: var(--solid-ui-font-size-2xl);\n height: var(--solid-ui-font-size-2xl);\n }\n}\n\n:host([variant='secondary']) button {\n --text-color: var(--solid-ui-color-gray-800);\n --border-color: var(--solid-ui-color-slate-400);\n --background-color: var(--solid-ui-color-white);\n --hover-text-color: var(--solid-ui-color-white);\n --hover-background-color: var(--solid-ui-color-tertiary);\n --hover-border-color: var(--solid-ui-color-tertiary);\n}\n\n:host([variant='tertiary']) button {\n --text-color: var(--solid-ui-color-primary);\n --border-color: transparent;\n --background-color: transparent;\n --hover-text-color: var(--solid-ui-color-tertiary);\n --hover-border-color: var(--solid-ui-color-tertiary);\n --hover-background-color: transparent;\n\n padding: 0;\n border-radius: 0;\n border-width: 0;\n border-bottom-width: 1px;\n}\n\n:host([variant='outline']) button {\n --text-color: currentColor;\n --border-color: currentColor;\n --background-color: transparent;\n --hover-text-color: currentColor;\n --hover-border-color: currentColor;\n --hover-background-color: color-mix(in srgb, currentColor 25%, transparent);\n}\n\n:host([variant='ghost']) button {\n --text-color: currentColor;\n --border-color: transparent;\n --background-color: transparent;\n --hover-text-color: currentColor;\n --hover-border-color: transparent;\n --hover-background-color: color-mix(in srgb, currentColor 25%, transparent);\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\n\nimport '~icons/svg-spinners/180-ring'\n\nimport styles from './Button.styles.css'\n\nexport const BUTTON_VARIANTS = ['primary', 'secondary', 'tertiary', 'outline', 'ghost'] as const\nexport type ButtonVariant = typeof BUTTON_VARIANTS[number]\n\n@customElement('solid-ui-button')\nexport default class Button extends WebComponent {\n static styles = styles\n static formAssociated = true\n\n @property({ type: String, reflect: true })\n accessor variant: ButtonVariant = 'primary'\n\n @property({ type: String, reflect: true })\n accessor type = 'button'\n\n @property({ type: Boolean })\n accessor disabled: boolean | undefined = undefined\n\n @property({ type: Boolean })\n accessor loading = false\n\n render () {\n const disabled = this.disabled ?? this.loading\n\n return html`\n <button type=${this.type} ?disabled=${disabled} @click=${this.onClick}>\n ${this.loading ? html`<icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>` : nothing}\n <slot name=\"left-icon\"></slot>\n <slot name=\"icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </button>\n `\n }\n\n private onClick () {\n switch (this.type) {\n case 'submit':\n this.getInternals().form?.requestSubmit()\n break\n case 'reset':\n this.getInternals().form?.reset()\n break\n }\n }\n}\n","import Button, { BUTTON_VARIANTS, type ButtonVariant } from './Button'\n\nexport { Button, BUTTON_VARIANTS, type ButtonVariant }\nexport default Button\n"],"mappings":"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"}
1
+ {"version":3,"file":"button-0s0lZdxm.js","names":["customElement","WebComponent","html","nothing","property","styles","BUTTON_VARIANTS","_classDecs","_Button","_Button2","_A","WeakMap","_B","_C","_D","_ref","_variantDecs","type","String","reflect","_typeDecs","_disabledDecs","Boolean","_loadingDecs","_Button3","Button","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_variant","_init_type","_init_disabled","undefined","_init_loading","_classPrivateFieldGet","variant","v","_classPrivateFieldSet","disabled","loading","render","onClick","getInternals","form","requestSubmit","reset","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","Button","BUTTON_VARIANTS"],"sources":["../../src/components/button/Button.styles.css","../../src/components/button/Button.ts","../../src/components/button/index.ts"],"sourcesContent":[":host {\n --text-color: var(--solid-ui-color-white);\n --border-color: var(--solid-ui-color-primary);\n --background-color: var(--solid-ui-color-primary);\n --hover-text-color: var(--text-color);\n --hover-border-color: var(--solid-ui-color-tertiary);\n --hover-background-color: var(--solid-ui-color-tertiary);\n\n display: inline-flex;\n\n button {\n position: relative;\n padding: 7px 12px;\n border-radius: 5px;\n font-size: var(--solid-ui-font-size-md);\n font-weight: 600;\n color: var(--text-color);\n background: var(--background-color);\n border: 1px solid var(--border-color);\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 5px;\n flex: 1;\n\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n &:hover:not(:disabled) {\n color: var(--hover-text-color);\n background: var(--hover-background-color);\n border-color: var(--hover-border-color);\n }\n\n icon-svg-spinners-180-ring, ::slotted([slot=\"left-icon\"]), ::slotted([slot=\"right-icon\"]) {\n width: var(--solid-ui-font-size-md);\n height: var(--solid-ui-font-size-md);\n }\n\n &::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: var(--solid-ui-clickable-area);\n height: var(--solid-ui-clickable-area);\n }\n }\n}\n\n:host(:has([slot=\"icon\"])) button {\n padding: 4px;\n\n ::slotted([slot=\"icon\"]) {\n width: var(--solid-ui-font-size-2xl);\n height: var(--solid-ui-font-size-2xl);\n }\n}\n\n:host([variant='secondary']) button {\n --text-color: var(--solid-ui-color-gray-800);\n --border-color: var(--solid-ui-color-slate-400);\n --background-color: var(--solid-ui-color-white);\n --hover-text-color: var(--solid-ui-color-white);\n --hover-background-color: var(--solid-ui-color-tertiary);\n --hover-border-color: var(--solid-ui-color-tertiary);\n}\n\n:host([variant='tertiary']) button {\n --text-color: var(--solid-ui-color-primary);\n --border-color: transparent;\n --background-color: transparent;\n --hover-text-color: var(--solid-ui-color-tertiary);\n --hover-border-color: var(--solid-ui-color-tertiary);\n --hover-background-color: transparent;\n\n padding: 0;\n border-radius: 0;\n border-width: 0;\n border-bottom-width: 1px;\n}\n\n:host([variant='outline']) button {\n --text-color: currentColor;\n --border-color: currentColor;\n --background-color: transparent;\n --hover-text-color: currentColor;\n --hover-border-color: currentColor;\n --hover-background-color: color-mix(in srgb, currentColor 25%, transparent);\n}\n\n:host([variant='ghost']) button {\n --text-color: currentColor;\n --border-color: transparent;\n --background-color: transparent;\n --hover-text-color: currentColor;\n --hover-border-color: transparent;\n --hover-background-color: color-mix(in srgb, currentColor 25%, transparent);\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\n\nimport '~icons/svg-spinners/180-ring'\n\nimport styles from './Button.styles.css'\n\nexport const BUTTON_VARIANTS = ['primary', 'secondary', 'tertiary', 'outline', 'ghost'] as const\nexport type ButtonVariant = typeof BUTTON_VARIANTS[number]\n\n@customElement('solid-ui-button')\nexport default class Button extends WebComponent {\n static styles = styles\n static formAssociated = true\n\n @property({ type: String, reflect: true })\n accessor variant: ButtonVariant = 'primary'\n\n @property({ type: String, reflect: true })\n accessor type = 'button'\n\n @property({ type: Boolean })\n accessor disabled: boolean | undefined = undefined\n\n @property({ type: Boolean })\n accessor loading = false\n\n render () {\n const disabled = this.disabled ?? this.loading\n\n return html`\n <button type=${this.type} ?disabled=${disabled} @click=${this.onClick}>\n ${this.loading ? html`<icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>` : nothing}\n <slot name=\"left-icon\"></slot>\n <slot name=\"icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </button>\n `\n }\n\n private onClick () {\n switch (this.type) {\n case 'submit':\n this.getInternals().form?.requestSubmit()\n break\n case 'reset':\n this.getInternals().form?.reset()\n break\n }\n }\n}\n","import Button, { BUTTON_VARIANTS, type ButtonVariant } from './Button'\n\nexport { Button, BUTTON_VARIANTS, type ButtonVariant }\nexport default Button\n"],"mappings":"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"}