solid-ui 3.1.3-11 → 3.1.3-12

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 (153) hide show
  1. package/README.md +2 -0
  2. package/dist/chunks/{account-CdqIoTsl.js → account-Bb818bGF.js} +20 -15
  3. package/dist/chunks/account-Bb818bGF.js.map +1 -0
  4. package/dist/chunks/{auth-D8B5yczR.js → auth-ClVI18ss.js} +90 -79
  5. package/dist/chunks/auth-ClVI18ss.js.map +1 -0
  6. package/dist/chunks/{avatar-DNGFKkhm.js → avatar-DGu_PX5y.js} +12 -4
  7. package/dist/chunks/avatar-DGu_PX5y.js.map +1 -0
  8. package/dist/chunks/{button-oanBb_ha.js → button-B9-nlEpz.js} +2 -2
  9. package/dist/chunks/{button-oanBb_ha.js.map → button-B9-nlEpz.js.map} +1 -1
  10. package/dist/chunks/{combobox-Dav1bNHS.js → combobox-DrT0Nb-A.js} +3 -3
  11. package/dist/chunks/combobox-DrT0Nb-A.js.map +1 -0
  12. package/dist/chunks/{dialog-Ujvm11_B.js → dialog-kyHgc-uy.js} +2 -2
  13. package/dist/chunks/{dialog-Ujvm11_B.js.map → dialog-kyHgc-uy.js.map} +1 -1
  14. package/dist/chunks/{guard-DZGvf4tS.js → guard-DEqOFEs4.js} +78 -52
  15. package/dist/chunks/guard-DEqOFEs4.js.map +1 -0
  16. package/dist/chunks/{login-button-Ta3tkpn4.js → login-button-Czm-E9Na.js} +4 -4
  17. package/dist/chunks/{login-button-Ta3tkpn4.js.map → login-button-Czm-E9Na.js.map} +1 -1
  18. package/dist/chunks/{logout-button-Db6VmUmJ.js → logout-button-BrR_jOhK.js} +4 -4
  19. package/dist/chunks/{logout-button-Db6VmUmJ.js.map → logout-button-BrR_jOhK.js.map} +1 -1
  20. package/dist/chunks/{menu-CQEXqNO6.js → menu-1PG19fCC.js} +3 -3
  21. package/dist/chunks/{menu-CQEXqNO6.js.map → menu-1PG19fCC.js.map} +1 -1
  22. package/dist/chunks/{menu-item-BHJ4xljI.js → menu-item-C9uErV38.js} +71 -54
  23. package/dist/chunks/menu-item-C9uErV38.js.map +1 -0
  24. package/dist/chunks/{provider-CoVkCkMs.js → provider-qd_4VaKB.js} +5 -2
  25. package/dist/chunks/provider-qd_4VaKB.js.map +1 -0
  26. package/dist/chunks/{signup-button-wO4uoqUi.js → signup-button-BnA5p-uJ.js} +4 -4
  27. package/dist/chunks/{signup-button-wO4uoqUi.js.map → signup-button-BnA5p-uJ.js.map} +1 -1
  28. package/dist/chunks/{src-B9CXYA44.js → src-DJOb1wMf.js} +2 -2
  29. package/dist/chunks/{src-B9CXYA44.js.map → src-DJOb1wMf.js.map} +1 -1
  30. package/dist/components/account/Account.cjs.js +6 -4
  31. package/dist/components/account/Account.cjs.js.map +1 -1
  32. package/dist/components/account/Account.d.ts +2 -0
  33. package/dist/components/account/Account.d.ts.map +1 -1
  34. package/dist/components/account/Account.esm.js +10 -4
  35. package/dist/components/account/Account.esm.js.map +1 -1
  36. package/dist/components/account/Account.stories.d.ts +10 -2
  37. package/dist/components/account/Account.stories.d.ts.map +1 -1
  38. package/dist/components/account/Account.styles.cjs.js +1 -1
  39. package/dist/components/account/Account.styles.cjs.js.map +1 -1
  40. package/dist/components/account/Account.styles.esm.js +1 -1
  41. package/dist/components/account/Account.styles.esm.js.map +1 -1
  42. package/dist/components/account.js +1 -1
  43. package/dist/components/all.cjs.js +1 -0
  44. package/dist/components/all.d.ts +2 -0
  45. package/dist/components/all.d.ts.map +1 -0
  46. package/dist/components/all.esm.js +24 -0
  47. package/dist/components/avatar/Avatar.cjs.js +1 -1
  48. package/dist/components/avatar/Avatar.cjs.js.map +1 -1
  49. package/dist/components/avatar/Avatar.d.ts +3 -0
  50. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  51. package/dist/components/avatar/Avatar.esm.js +9 -1
  52. package/dist/components/avatar/Avatar.esm.js.map +1 -1
  53. package/dist/components/avatar/Avatar.stories.d.ts +4 -4
  54. package/dist/components/avatar.js +1 -1
  55. package/dist/components/button/Button.styles.cjs.js +1 -1
  56. package/dist/components/button/Button.styles.cjs.js.map +1 -1
  57. package/dist/components/button/Button.styles.esm.js +1 -1
  58. package/dist/components/button/Button.styles.esm.js.map +1 -1
  59. package/dist/components/button.js +1 -1
  60. package/dist/components/combobox/Combobox.cjs.js +1 -1
  61. package/dist/components/combobox/Combobox.cjs.js.map +1 -1
  62. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  63. package/dist/components/combobox/Combobox.esm.js +1 -1
  64. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  65. package/dist/components/combobox/Combobox.styles.cjs.js +1 -1
  66. package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -1
  67. package/dist/components/combobox/Combobox.styles.esm.js +1 -1
  68. package/dist/components/combobox/Combobox.styles.esm.js.map +1 -1
  69. package/dist/components/combobox.js +1 -1
  70. package/dist/components/dialog.js +1 -1
  71. package/dist/components/guard/Guard.cjs.js +4 -2
  72. package/dist/components/guard/Guard.cjs.js.map +1 -1
  73. package/dist/components/guard/Guard.d.ts +7 -0
  74. package/dist/components/guard/Guard.d.ts.map +1 -1
  75. package/dist/components/guard/Guard.esm.js +74 -48
  76. package/dist/components/guard/Guard.esm.js.map +1 -1
  77. package/dist/components/guard/Guard.stories.d.ts +14 -3
  78. package/dist/components/guard/Guard.stories.d.ts.map +1 -1
  79. package/dist/components/guard.js +1 -1
  80. package/dist/components/index.cjs.js +1 -1
  81. package/dist/components/index.d.ts +0 -1
  82. package/dist/components/index.d.ts.map +1 -1
  83. package/dist/components/index.esm.js +1 -24
  84. package/dist/components/login-button.js +1 -1
  85. package/dist/components/login-modal.js +1 -1
  86. package/dist/components/logout-button.js +1 -1
  87. package/dist/components/menu/Menu.cjs.js +1 -1
  88. package/dist/components/menu/Menu.cjs.js.map +1 -1
  89. package/dist/components/menu/Menu.esm.js +1 -1
  90. package/dist/components/menu/Menu.esm.js.map +1 -1
  91. package/dist/components/menu/Menu.stories.d.ts.map +1 -1
  92. package/dist/components/menu/Menu.styles.cjs.js +1 -1
  93. package/dist/components/menu/Menu.styles.cjs.js.map +1 -1
  94. package/dist/components/menu/Menu.styles.esm.js +1 -1
  95. package/dist/components/menu/Menu.styles.esm.js.map +1 -1
  96. package/dist/components/menu-item/MenuItem.cjs.js +4 -4
  97. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
  98. package/dist/components/menu-item/MenuItem.d.ts +1 -0
  99. package/dist/components/menu-item/MenuItem.d.ts.map +1 -1
  100. package/dist/components/menu-item/MenuItem.esm.js +72 -55
  101. package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
  102. package/dist/components/menu-item/MenuItem.styles.cjs.js +1 -1
  103. package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -1
  104. package/dist/components/menu-item/MenuItem.styles.esm.js +1 -1
  105. package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -1
  106. package/dist/components/menu-item.js +1 -1
  107. package/dist/components/menu.js +1 -1
  108. package/dist/components/provider/Provider.cjs.js +1 -1
  109. package/dist/components/provider/Provider.cjs.js.map +1 -1
  110. package/dist/components/provider/Provider.d.ts +1 -0
  111. package/dist/components/provider/Provider.d.ts.map +1 -1
  112. package/dist/components/provider/Provider.esm.js +3 -0
  113. package/dist/components/provider/Provider.esm.js.map +1 -1
  114. package/dist/components/provider.js +1 -1
  115. package/dist/components/signup-button.js +1 -1
  116. package/dist/components.js +14 -14
  117. package/dist/index.js +3 -3
  118. package/dist/lib/auth/NoopAuth.cjs.js +1 -1
  119. package/dist/lib/auth/NoopAuth.cjs.js.map +1 -1
  120. package/dist/lib/auth/NoopAuth.d.ts +2 -2
  121. package/dist/lib/auth/NoopAuth.d.ts.map +1 -1
  122. package/dist/lib/auth/NoopAuth.esm.js +2 -3
  123. package/dist/lib/auth/NoopAuth.esm.js.map +1 -1
  124. package/dist/lib/auth/SolidAuth.cjs.js +1 -1
  125. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  126. package/dist/lib/auth/SolidAuth.d.ts +6 -0
  127. package/dist/lib/auth/SolidAuth.d.ts.map +1 -1
  128. package/dist/lib/auth/SolidAuth.esm.js +28 -16
  129. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  130. package/dist/lib/auth/context.cjs.js.map +1 -1
  131. package/dist/lib/auth/context.d.ts +2 -0
  132. package/dist/lib/auth/context.d.ts.map +1 -1
  133. package/dist/lib/auth/context.esm.js.map +1 -1
  134. package/dist/loader.js +3 -3
  135. package/dist/solid-ui.js +92 -88
  136. package/dist/solid-ui.min.js +92 -88
  137. package/dist/solid-ui.min.js.map +1 -1
  138. package/dist/storybook/auth/StorybookAuth.d.ts +1 -0
  139. package/dist/storybook/auth/StorybookAuth.d.ts.map +1 -1
  140. package/dist/storybook/components/StorybookProvider.d.ts +1 -0
  141. package/dist/storybook/components/StorybookProvider.d.ts.map +1 -1
  142. package/dist/storybook/helpers.d.ts.map +1 -1
  143. package/dist/storybook/stubs.d.ts +7 -3
  144. package/dist/storybook/stubs.d.ts.map +1 -1
  145. package/dist/theme.css +1 -1
  146. package/package.json +1 -1
  147. package/dist/chunks/account-CdqIoTsl.js.map +0 -1
  148. package/dist/chunks/auth-D8B5yczR.js.map +0 -1
  149. package/dist/chunks/avatar-DNGFKkhm.js.map +0 -1
  150. package/dist/chunks/combobox-Dav1bNHS.js.map +0 -1
  151. package/dist/chunks/guard-DZGvf4tS.js.map +0 -1
  152. package/dist/chunks/menu-item-BHJ4xljI.js.map +0 -1
  153. package/dist/chunks/provider-CoVkCkMs.js.map +0 -1
@@ -1,12 +1,12 @@
1
- const e=require("../../lib/auth/context.cjs.js"),t=require("../../lib/components/decorators.cjs.js"),n=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../_virtual/~icons/lucide/chevron-down.cjs.js"),require("../button/index.cjs.js"),require("../../lib/auth/index.cjs.js"),require("../avatar/index.cjs.js"),require("../login-button/index.cjs.js"),require("../logout-button/index.cjs.js"),require("../menu-item/index.cjs.js"),require("../menu/index.cjs.js"),require("../signup-button/index.cjs.js"),require("../../_virtual/~icons/lucide/log-in.cjs.js"),require("../../_virtual/~icons/lucide/log-out.cjs.js"),require("../../_virtual/~icons/lucide/user.cjs.js");const r=require("./Account.styles.cjs.js");let i=require("@lit/context"),a=require("lit"),o=require("lit/decorators.js");var s,c,l,u,d,f,p,m,h,g,_,v,y;function b(e,t,n){x(e,t),t.set(e,n)}function x(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function S(e,t,n){return e.set(w(e,t),n),n}function C(e,t){return e.get(w(e,t))}function w(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function T(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:k(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||k(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var A,j;O.static=u,O.private=d,d?i===2?A=function(e){return h(e),b.value}:(i<4&&(A=o(b,`get`,h)),i!==3&&(j=o(b,`set`,h))):(A=function(e){return e[r]},(i<2||i===4)&&(j=function(e,t){e[r]=t}));var M=O.access={has:d?m.bind():function(e){return r in e}};if(A&&(M.get=A),j&&(M.set=j),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return A(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);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);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:D(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function D(e){var t=O(e,`string`);return typeof t==`symbol`?t:t+``}function O(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function k(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function A(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function j(e){return e}p=[t.customElement(`solid-ui-account`)];var M;new(v=(l=new WeakMap,u=new WeakMap,y=(m=(0,o.property)({type:Array}),g=(0,i.consume)({context:e.authContext,subscribe:!0}),`menuItems`),c=class extends n.default{constructor(...t){super(...t),b(this,l,(d(this),h(this,[]))),b(this,u,_(this,e.DEFAULT_AUTH_CONTEXT)),T(this,`unsubscribeSessionUpdated`,void 0)}get[y](){return C(l,this)}set menuItems(e){S(l,this,e)}get auth(){return C(u,this)}set auth(e){S(u,this,e)}connectedCallback(){super.connectedCallback(),this.unsubscribeSessionUpdated=this.auth.onSessionUpdated(()=>this.requestUpdate())}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeSessionUpdated?.()}render(){return this.auth.account?a.html`
2
- <solid-ui-menu placement="bottom-end" distance="5">
1
+ const e=require("../../lib/auth/context.cjs.js"),t=require("../../lib/components/decorators.cjs.js"),n=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../_virtual/~icons/lucide/chevron-down.cjs.js"),require("../../_virtual/~icons/svg-spinners/180-ring.cjs.js"),require("../button/index.cjs.js"),require("../../lib/auth/index.cjs.js"),require("../avatar/index.cjs.js"),require("../login-button/index.cjs.js"),require("../logout-button/index.cjs.js"),require("../menu-item/index.cjs.js"),require("../menu/index.cjs.js"),require("../signup-button/index.cjs.js"),require("../../_virtual/~icons/lucide/log-in.cjs.js"),require("../../_virtual/~icons/lucide/log-out.cjs.js"),require("../../_virtual/~icons/lucide/user.cjs.js");const r=require("./Account.styles.cjs.js");let i=require("@lit/context"),a=require("lit"),o=require("lit/decorators.js");var s,c,l,u,d,f,p,m,h,g,_,v,y;function b(e,t,n){x(e,t),t.set(e,n)}function x(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function S(e,t,n){return e.set(w(e,t),n),n}function C(e,t){return e.get(w(e,t))}function w(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function T(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:k(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||k(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var A,j;O.static=u,O.private=d,d?i===2?A=function(e){return h(e),b.value}:(i<4&&(A=o(b,`get`,h)),i!==3&&(j=o(b,`set`,h))):(A=function(e){return e[r]},(i<2||i===4)&&(j=function(e,t){e[r]=t}));var M=O.access={has:d?m.bind():function(e){return r in e}};if(A&&(M.get=A),j&&(M.set=j),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return A(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);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);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:D(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function D(e){var t=O(e,`string`);return typeof t==`symbol`?t:t+``}function O(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function k(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function A(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function j(e){return e}p=[t.customElement(`solid-ui-account`)];var M;new(v=(l=new WeakMap,u=new WeakMap,y=(m=(0,o.property)({type:Array}),g=(0,i.consume)({context:e.authContext,subscribe:!0}),`menuItems`),c=class extends n.default{constructor(...t){super(...t),b(this,l,(d(this),h(this,[]))),b(this,u,_(this,e.DEFAULT_AUTH_CONTEXT)),T(this,`unsubscribeSessionUpdated`,void 0)}get[y](){return C(l,this)}set menuItems(e){S(l,this,e)}get auth(){return C(u,this)}set auth(e){S(u,this,e)}connectedCallback(){super.connectedCallback(),this.unsubscribeSessionUpdated=this.auth.onSessionUpdated(()=>this.requestUpdate())}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeSessionUpdated?.()}render(){return this.auth.initialized?this.auth.account?a.html`
2
+ <solid-ui-menu placement="bottom-end">
3
3
  <button type="button" slot="trigger">
4
4
  <solid-ui-avatar></solid-ui-avatar>
5
5
  <icon-lucide-chevron-down slot="right-icon"></icon-lucide-chevron-down>
6
6
  </button>
7
7
 
8
8
  ${this.menuItems.map(e=>a.html`
9
- <solid-ui-menu-item .href=${e.href??a.nothing} @solid-ui-select=${()=>e.onSelected?.()}>
9
+ <solid-ui-menu-item .href=${e.href??a.nothing} ?selected=${e.selected} @solid-ui-select=${()=>e.onSelected?.()}>
10
10
  ${e.label}
11
11
  </solid-ui-menu-item>
12
12
  `)}
@@ -30,5 +30,7 @@ const e=require("../../lib/auth/context.cjs.js"),t=require("../../lib/components
30
30
  Sign Up
31
31
  </solid-ui-button>
32
32
  </solid-ui-signup-button>
33
- `}},{e:[h,_,d],c:[M,f]}=E(c,[[m,1,`menuItems`],[g,1,`auth`]],p,0,void 0,n.default),c),s=class extends j{constructor(){super(M),T(this,`styles`,r.default),T(this,`states`,{loggedIn:e=>!!e.auth.account}),f()}},T(s,v,void 0),s),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return M}});
33
+ `:a.html`
34
+ <icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>
35
+ `}},{e:[h,_,d],c:[M,f]}=E(c,[[m,1,`menuItems`],[g,1,`auth`]],p,0,void 0,n.default),c),s=class extends j{constructor(){super(M),T(this,`styles`,r.default),T(this,`states`,{initializing:e=>!e.auth.initialized,loggedIn:e=>!!e.auth.account}),f()}},T(s,v,void 0),s),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return M}});
34
36
  //# sourceMappingURL=Account.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Account.cjs.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"],"sources":["../../../src/components/account/Account.ts"],"sourcesContent":["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"],"mappings":"w6JAkByCS,EAAA,CAQxCL,EAAAA,cAAc,kBAAkB,CAAC,EAAA,IAAAM,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,GAAAC,GAAAA,EAAAA,EAAAA,SAAAA,CAOtB,CAAEC,KAAMC,KAAM,CAAC,EAACC,GAAAA,EAAAA,EAAAA,QAAAA,CAGjB,CAAEC,QAASd,EAAAA,YAAae,UAAW,EAAK,CAAC,EAAC,aAAAC,EAVrD,cACqCjB,EAAAA,OAAa,CAAAmB,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KAAAd,GAAAe,EAAA,IAAA,EAAAC,EAAA,KAOR,CAAA,CAAE,EAAA,EAAAF,EAAA,KAAAZ,EAAAe,EAAA,KAGLtB,EAAAA,oBAAoB,CAAA,EAAAuB,EAAA,KAAA,4BAAA,IAAA,EAAA,CAAA,CAAA,IAAAf,IAAA,CAAA,OAAAgB,EAAAnB,EAAA,IAAA,CAAA,CAAA,IAHhDoB,UAASC,EAAA,CAAAC,EAAAtB,EAAA,KAAAqB,CAAA,CAAA,CAAA,IAGDE,MAAI,CAAA,OAAAJ,EAAAjB,EAAA,IAAA,CAAA,CAAA,IAAJqB,KAAIF,EAAA,CAAAC,EAAApB,EAAA,KAAAmB,CAAA,CAAA,CAIrBG,mBAAqB,CACnB,MAAMA,kBAAkB,EAExB,KAAKC,0BAA4B,KAAKF,KAAKG,qBAAuB,KAAKC,cAAc,CAAC,CACxF,CAEAC,sBAAwB,CACtB,MAAMA,qBAAqB,EAE3B,KAAKH,4BAA4B,CACnC,CAEUI,QAAU,CAkBlB,OAjBK,KAAKN,KAAKO,QAiBRzC,EAAAA,IAAI;;;;;;;cAOD,KAAK+B,UAAUW,IAAIC,GAAY3C,EAAAA,IAAI;4CACL2C,EAASC,MAAQ3C,EAAAA,QAAO,wBAA2B0C,EAASE,aAAa,EAAC;sBAChGF,EAASG,MAAK;;aAEvB,EAAC;;;;;;;;MA3BD9C,EAAAA,IAAI;;;;;;;;;;;;;OAoCf,CACF,EAAC,CAAA+C,EAAA,CAAApB,EAAAC,EAAAF,GAAAsB,EAAA,CAAAvC,EAAAwC,IAAAC,EAAA7B,EAAA,CAAA,CAAAN,EAAA,EAAA,WAAA,EAAA,CAAAG,EAAA,EAAA,MAAA,CAAA,EAAAV,EAAA,EAAA,IAAA,GAjEoCJ,EAAAA,OAAY,EAAAiB,GAAA8B,EAAA,cAAAC,CAAA,CAAA7B,aAAA,CAAA,MAAAd,CAAA,EAAAoB,EAAA,KAAA,SAC/BtB,EAAAA,OAAM,EAAAsB,EAAA,KAAA,SACN,CACdwB,SAAWC,GAAuB,CAAC,CAACA,EAAUpB,KAAKO,OACrD,CAAC,EAAAQ,EAAA,CAAA,CAAA,EAAApB,EAAAsB,EAAAzC,EAAA,IAAA,EAAA,EAAAyC"}
1
+ {"version":3,"file":"Account.cjs.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","initialized","account","map","menuItem","href","selected","onSelected","label","e","c","_initClass","_applyDecs","_Class","_identity","initializing","component","loggedIn","default"],"sources":["../../../src/components/account/Account.ts"],"sourcesContent":["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'\nimport '~icons/svg-spinners/180-ring'\n\nimport styles from './Account.styles.css'\n\nexport interface AccountMenuItem {\n label: string | TemplateResult\n href?: string\n selected?: boolean\n onSelected?(): void\n}\n\n@customElement('solid-ui-account')\nexport default class Account extends WebComponent {\n static styles = styles\n static states = {\n initializing: (component: Account) => !component.auth.initialized,\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.initialized) {\n return html`\n <icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>\n `\n }\n\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\">\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} ?selected=${menuItem.selected} @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"],"mappings":"s+JAmByCS,EAAA,CASxCL,EAAAA,cAAc,kBAAkB,CAAC,EAAA,IAAAM,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,GAAAC,GAAAA,EAAAA,EAAAA,SAAAA,CAQtB,CAAEC,KAAMC,KAAM,CAAC,EAACC,GAAAA,EAAAA,EAAAA,QAAAA,CAGjB,CAAEC,QAASd,EAAAA,YAAae,UAAW,EAAK,CAAC,EAAC,aAAAC,EAXrD,cACqCjB,EAAAA,OAAa,CAAAmB,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KAAAd,GAAAe,EAAA,IAAA,EAAAC,EAAA,KAQR,CAAA,CAAE,EAAA,EAAAF,EAAA,KAAAZ,EAAAe,EAAA,KAGLtB,EAAAA,oBAAoB,CAAA,EAAAuB,EAAA,KAAA,4BAAA,IAAA,EAAA,CAAA,CAAA,IAAAf,IAAA,CAAA,OAAAgB,EAAAnB,EAAA,IAAA,CAAA,CAAA,IAHhDoB,UAASC,EAAA,CAAAC,EAAAtB,EAAA,KAAAqB,CAAA,CAAA,CAAA,IAGDE,MAAI,CAAA,OAAAJ,EAAAjB,EAAA,IAAA,CAAA,CAAA,IAAJqB,KAAIF,EAAA,CAAAC,EAAApB,EAAA,KAAAmB,CAAA,CAAA,CAIrBG,mBAAqB,CACnB,MAAMA,kBAAkB,EAExB,KAAKC,0BAA4B,KAAKF,KAAKG,qBAAuB,KAAKC,cAAc,CAAC,CACxF,CAEAC,sBAAwB,CACtB,MAAMA,qBAAqB,EAE3B,KAAKH,4BAA4B,CACnC,CAEUI,QAAU,CAwBlB,OAvBK,KAAKN,KAAKO,YAMV,KAAKP,KAAKQ,QAiBR1C,EAAAA,IAAI;;;;;;;cAOD,KAAK+B,UAAUY,IAAIC,GAAY5C,EAAAA,IAAI;4CACL4C,EAASC,MAAQ5C,EAAAA,QAAO,aAAc2C,EAASE,SAAQ,wBAA2BF,EAASG,aAAa,EAAC;sBAC/HH,EAASI,MAAK;;aAEvB,EAAC;;;;;;;;MA3BDhD,EAAAA,IAAI;;;;;;;;;;;;;QANJA,EAAAA,IAAI;;OA0Cf,CACF,EAAC,CAAAiD,EAAA,CAAAtB,EAAAC,EAAAF,GAAAwB,EAAA,CAAAzC,EAAA0C,IAAAC,EAAA/B,EAAA,CAAA,CAAAN,EAAA,EAAA,WAAA,EAAA,CAAAG,EAAA,EAAA,MAAA,CAAA,EAAAV,EAAA,EAAA,IAAA,GAxEoCJ,EAAAA,OAAY,EAAAiB,GAAAgC,EAAA,cAAAC,CAAA,CAAA/B,aAAA,CAAA,MAAAd,CAAA,EAAAoB,EAAA,KAAA,SAC/BtB,EAAAA,OAAM,EAAAsB,EAAA,KAAA,SACN,CACd0B,aAAeC,GAAuB,CAACA,EAAUtB,KAAKO,YACtDgB,SAAWD,GAAuB,CAAC,CAACA,EAAUtB,KAAKQ,OACrD,CAAC,EAAAS,EAAA,CAAA,CAAA,EAAAtB,EAAAwB,EAAA3C,EAAA,IAAA,EAAA,EAAA2C"}
@@ -3,11 +3,13 @@ import { WebComponent } from '../../lib/components';
3
3
  export interface AccountMenuItem {
4
4
  label: string | TemplateResult;
5
5
  href?: string;
6
+ selected?: boolean;
6
7
  onSelected?(): void;
7
8
  }
8
9
  export default class Account extends WebComponent {
9
10
  static styles: import('lit').CSSResult;
10
11
  static states: {
12
+ initializing: (component: Account) => boolean;
11
13
  loggedIn: (component: Account) => boolean;
12
14
  };
13
15
  accessor menuItems: AccountMenuItem[];
@@ -1 +1 @@
1
- {"version":3,"file":"Account.d.ts","sourceRoot":"","sources":["../../../src/components/account/Account.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAA;AAEnD,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAG9D,OAAO,qBAAqB,CAAA;AAC5B,OAAO,qBAAqB,CAAA;AAC5B,OAAO,2BAA2B,CAAA;AAClC,OAAO,4BAA4B,CAAA;AACnC,OAAO,wBAAwB,CAAA;AAC/B,OAAO,mBAAmB,CAAA;AAC1B,OAAO,4BAA4B,CAAA;AACnC,OAAO,4BAA4B,CAAA;AACnC,OAAO,sBAAsB,CAAA;AAC7B,OAAO,uBAAuB,CAAA;AAC9B,OAAO,oBAAoB,CAAA;AAI3B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,GAAG,cAAc,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,IAAI,IAAI,CAAA;CACpB;AAGD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,YAAY;IAC/C,MAAM,CAAC,MAAM,0BAAS;IACtB,MAAM,CAAC,MAAM;8BACW,OAAO;MAC9B;IAGD,QAAQ,CAAC,SAAS,EAAE,eAAe,EAAE,CAAK;IAG1C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IAEzD,OAAO,CAAC,yBAAyB,CAAC,CAAY;IAE9C,iBAAiB;IAMjB,oBAAoB;IAMpB,SAAS,CAAC,MAAM;CAuCjB"}
1
+ {"version":3,"file":"Account.d.ts","sourceRoot":"","sources":["../../../src/components/account/Account.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAA;AAEnD,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAG9D,OAAO,qBAAqB,CAAA;AAC5B,OAAO,qBAAqB,CAAA;AAC5B,OAAO,2BAA2B,CAAA;AAClC,OAAO,4BAA4B,CAAA;AACnC,OAAO,wBAAwB,CAAA;AAC/B,OAAO,mBAAmB,CAAA;AAC1B,OAAO,4BAA4B,CAAA;AACnC,OAAO,4BAA4B,CAAA;AACnC,OAAO,sBAAsB,CAAA;AAC7B,OAAO,uBAAuB,CAAA;AAC9B,OAAO,oBAAoB,CAAA;AAC3B,OAAO,8BAA8B,CAAA;AAIrC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,GAAG,cAAc,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,IAAI,IAAI,CAAA;CACpB;AAGD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,YAAY;IAC/C,MAAM,CAAC,MAAM,0BAAS;IACtB,MAAM,CAAC,MAAM;kCACe,OAAO;8BACX,OAAO;MAC9B;IAGD,QAAQ,CAAC,SAAS,EAAE,eAAe,EAAE,CAAK;IAG1C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IAEzD,OAAO,CAAC,yBAAyB,CAAC,CAAY;IAE9C,iBAAiB;IAMjB,oBAAoB;IAMpB,SAAS,CAAC,MAAM;CA6CjB"}
@@ -3,6 +3,7 @@ import { customElement as n } from "../../lib/components/decorators.esm.js";
3
3
  import r from "../../lib/components/web-component/WebComponent.esm.js";
4
4
  import "../../lib/components/index.esm.js";
5
5
  import "../../_virtual/~icons/lucide/chevron-down.esm.js";
6
+ import "../../_virtual/~icons/svg-spinners/180-ring.esm.js";
6
7
  import "../button/index.esm.js";
7
8
  import "../../lib/auth/index.esm.js";
8
9
  import "../avatar/index.esm.js";
@@ -219,15 +220,15 @@ new (b = (d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), x =
219
220
  super.disconnectedCallback(), this.unsubscribeSessionUpdated?.();
220
221
  }
221
222
  render() {
222
- return this.auth.account ? o`
223
- <solid-ui-menu placement="bottom-end" distance="5">
223
+ return this.auth.initialized ? this.auth.account ? o`
224
+ <solid-ui-menu placement="bottom-end">
224
225
  <button type="button" slot="trigger">
225
226
  <solid-ui-avatar></solid-ui-avatar>
226
227
  <icon-lucide-chevron-down slot="right-icon"></icon-lucide-chevron-down>
227
228
  </button>
228
229
 
229
230
  ${this.menuItems.map((e) => o`
230
- <solid-ui-menu-item .href=${e.href ?? s} @solid-ui-select=${() => e.onSelected?.()}>
231
+ <solid-ui-menu-item .href=${e.href ?? s} ?selected=${e.selected} @solid-ui-select=${() => e.onSelected?.()}>
231
232
  ${e.label}
232
233
  </solid-ui-menu-item>
233
234
  `)}
@@ -251,6 +252,8 @@ new (b = (d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), x =
251
252
  Sign Up
252
253
  </solid-ui-button>
253
254
  </solid-ui-signup-button>
255
+ ` : o`
256
+ <icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>
254
257
  `;
255
258
  }
256
259
  }, {e: [_, y, p], c: [P, m]} = O(u, [[
@@ -263,7 +266,10 @@ new (b = (d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), x =
263
266
  "auth"
264
267
  ]], h, 0, void 0, r), u), l = class extends N {
265
268
  constructor() {
266
- super(P), D(this, "styles", i), D(this, "states", { loggedIn: (e) => !!e.auth.account }), m();
269
+ super(P), D(this, "styles", i), D(this, "states", {
270
+ initializing: (e) => !e.auth.initialized,
271
+ loggedIn: (e) => !!e.auth.account
272
+ }), m();
267
273
  }
268
274
  }, D(l, b, void 0), l)();
269
275
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"Account.esm.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"],"sources":["../../../src/components/account/Account.ts"],"sourcesContent":["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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkByCS,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"}
1
+ {"version":3,"file":"Account.esm.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","initialized","account","map","menuItem","href","selected","onSelected","label","e","c","_initClass","_applyDecs","_Class","_identity","initializing","component","loggedIn","default"],"sources":["../../../src/components/account/Account.ts"],"sourcesContent":["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'\nimport '~icons/svg-spinners/180-ring'\n\nimport styles from './Account.styles.css'\n\nexport interface AccountMenuItem {\n label: string | TemplateResult\n href?: string\n selected?: boolean\n onSelected?(): void\n}\n\n@customElement('solid-ui-account')\nexport default class Account extends WebComponent {\n static styles = styles\n static states = {\n initializing: (component: Account) => !component.auth.initialized,\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.initialized) {\n return html`\n <icon-svg-spinners-180-ring></icon-svg-spinners-180-ring>\n `\n }\n\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\">\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} ?selected=${menuItem.selected} @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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmByCS,IAAA,CASxCL,EAAc,kBAAkB,CAAC;AAAA,IAAAM;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,KAAAC,IAQ/Bb,EAAS,EAAEc,MAAMC,MAAM,CAAC,GAACC,IAGzBnB,EAAQ;CAAEoB,SAASd;CAAae,WAAW;AAAK,CAAC,GAAC,cAAAC,IAXrD,cACqCjB,EAAa;CAAAmB,YAAA,GAAAC,GAAA;EAWSK,AAXT,MAAA,GAAAL,CAAA,GAAAC,EAAA,MAAAd,IAAAe,EAAA,IAAA,GAAAC,EAAA,MAQR,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;EAwBlB,OAvBK,KAAKN,KAAKO,cAMV,KAAKP,KAAKQ,UAiBR1C,CAAI;;;;;;;cAOD,KAAK+B,UAAUY,KAAIC,MAAY5C,CAAI;4CACL4C,EAASC,QAAQ5C,EAAO,aAAc2C,EAASE,SAAQ,0BAA2BF,EAASG,aAAa,EAAC;sBAC/HH,EAASI,MAAK;;aAEvB,EAAC;;;;;;;;QA3BDhD,CAAI;;;;;;;;;;;;;UANJA,CAAI;;;CA0Cf;AACF,GAAC,CAAAiD,GAAA,CAAAtB,GAAAC,GAAAF,IAAAwB,GAAA,CAAAzC,GAAA0C,MAAAC,EAAA/B,GAAA,CAAA;CAAAN;CAAA;CAAA;AAAA,GAAA;CAAAG;CAAA;CAAA;AAAA,CAAA,GAAAV,GAAA,GAAA,KAAA,GAxEoCJ,CAAY,GAAAiB,IAAAgC,IAAA,cAAAC,EAAA;CAAA/B,cAAA;EAAA,MAAAd,CAAA,GAAAoB,EAAA,MAAA,UAC/BtB,CAAM,GAAAsB,EAAA,MAAA,UACN;GACd0B,eAAeC,MAAuB,CAACA,EAAUtB,KAAKO;GACtDgB,WAAWD,MAAuB,CAAC,CAACA,EAAUtB,KAAKQ;EACrD,CAAC,GAAAS,EAAA;CAAA;AAAA,GAAAtB,EAAAwB,GAAA3C,GAAA,KAAA,CAAA,GAAA2C,GAAA"}
@@ -7,11 +7,10 @@ declare const meta: {
7
7
  readonly argTypes: {
8
8
  readonly user: {
9
9
  type: string;
10
- options: ("Alice" | "Bob" | "Guest")[];
10
+ options: ("Alice" | "Bob" | "Guest" | "Initializing")[];
11
11
  };
12
12
  };
13
13
  };
14
- export default meta;
15
14
  export declare const Primary: {
16
15
  render: (args: import('../../storybook').GetStoryArgs<{
17
16
  user: typeof USER_OPTIONS.control;
@@ -25,4 +24,13 @@ export declare const Guest: {
25
24
  user: string;
26
25
  };
27
26
  };
27
+ export declare const Initializing: {
28
+ render: (args: import('../../storybook').GetStoryArgs<{
29
+ user: typeof USER_OPTIONS.control;
30
+ }>) => HTMLDivElement;
31
+ args: {
32
+ user: string;
33
+ };
34
+ };
35
+ export default meta;
28
36
  //# sourceMappingURL=Account.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Account.stories.d.ts","sourceRoot":"","sources":["../../../src/components/account/Account.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAA;AAEjE,OAAO,WAAW,CAAA;AAElB,QAAA,MAAM,IAAI;;;;;;;;;;;CAQA,CAAA;AAIV,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO;;;;CAAa,CAAA;AACjC,eAAO,MAAM,KAAK;;;;;;;CAKjB,CAAA"}
1
+ {"version":3,"file":"Account.stories.d.ts","sourceRoot":"","sources":["../../../src/components/account/Account.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAA;AAEjE,OAAO,WAAW,CAAA;AAElB,QAAA,MAAM,IAAI;;;;;;;;;;;CAQA,CAAA;AAIV,eAAO,MAAM,OAAO;;;;CAAa,CAAA;AACjC,eAAO,MAAM,KAAK;;;;;;;CAAsC,CAAA;AACxD,eAAO,MAAM,YAAY;;;;;;;CAA6C,CAAA;AAEtE,eAAe,IAAI,CAAA"}
@@ -1,2 +1,2 @@
1
- var e=require("lit").css`:host{flex-direction:row;gap:10px;display:inline-flex}:host([data-state-loggedIn]){--padding:4px;--border-width:1px;--image-size:1.875rem}:host([data-state-loggedIn]) 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}:host([data-state-loggedIn]) button solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}:host([data-state-loggedIn]) button icon-lucide-chevron-down{width:16px;height:16px}`;exports.default=e;
1
+ var e=require("lit").css`:host{--image-size:1.875rem;flex-direction:row;gap:10px;display:inline-flex}:host([data-state-initializing]) icon-svg-spinners-180-ring{width:var(--image-size);height:var(--image-size)}:host([data-state-loggedIn]){--padding:4px;--border-width:1px}:host([data-state-loggedIn]) 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}:host([data-state-loggedIn]) button solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}:host([data-state-loggedIn]) button icon-lucide-chevron-down{width:16px;height:16px}`;exports.default=e;
2
2
  //# sourceMappingURL=Account.styles.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Account.styles.cjs.js","names":[],"sources":["../../../src/components/account/Account.styles.css"],"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"],"mappings":""}
1
+ {"version":3,"file":"Account.styles.cjs.js","names":[],"sources":["../../../src/components/account/Account.styles.css"],"sourcesContent":[":host {\n --image-size: 1.875rem; /* 30px */\n\n display: inline-flex;\n flex-direction: row;\n gap: 10px;\n}\n\n:host([data-state-initializing]) {\n icon-svg-spinners-180-ring {\n width: var(--image-size);\n height: var(--image-size);\n }\n}\n\n:host([data-state-loggedIn]) {\n --padding: 4px;\n --border-width: 1px;\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"],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  import { css as e } from "lit";
2
2
  //#region src/components/account/Account.styles.css
3
- var t = e`:host{flex-direction:row;gap:10px;display:inline-flex}:host([data-state-loggedIn]){--padding:4px;--border-width:1px;--image-size:1.875rem}:host([data-state-loggedIn]) 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}:host([data-state-loggedIn]) button solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}:host([data-state-loggedIn]) button icon-lucide-chevron-down{width:16px;height:16px}`;
3
+ var t = e`:host{--image-size:1.875rem;flex-direction:row;gap:10px;display:inline-flex}:host([data-state-initializing]) icon-svg-spinners-180-ring{width:var(--image-size);height:var(--image-size)}:host([data-state-loggedIn]){--padding:4px;--border-width:1px}:host([data-state-loggedIn]) 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}:host([data-state-loggedIn]) button solid-ui-avatar{width:var(--image-size);height:var(--image-size);border:var(--border-width) solid var(--solid-ui-color-white);border-radius:50%}:host([data-state-loggedIn]) button icon-lucide-chevron-down{width:16px;height:16px}`;
4
4
  //#endregion
5
5
  export { t as default };
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"Account.styles.esm.js","names":[],"sources":["../../../src/components/account/Account.styles.css"],"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"],"mappings":""}
1
+ {"version":3,"file":"Account.styles.esm.js","names":[],"sources":["../../../src/components/account/Account.styles.css"],"sourcesContent":[":host {\n --image-size: 1.875rem; /* 30px */\n\n display: inline-flex;\n flex-direction: row;\n gap: 10px;\n}\n\n:host([data-state-initializing]) {\n icon-svg-spinners-180-ring {\n width: var(--image-size);\n height: var(--image-size);\n }\n}\n\n:host([data-state-loggedIn]) {\n --padding: 4px;\n --border-width: 1px;\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"],"mappings":""}
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../chunks/account-CdqIoTsl.js";
1
+ import { n as e, t } from "../chunks/account-Bb818bGF.js";
2
2
  export { e as Account, t as default };
@@ -0,0 +1 @@
1
+ require("./dialog-header/index.cjs.js"),require("./button/index.cjs.js"),require("./dialog/index.cjs.js"),require("./dialog-content/index.cjs.js"),require("./dialog-footer/index.cjs.js"),require("./combobox/index.cjs.js"),require("./combobox-option/index.cjs.js"),require("./login-modal/index.cjs.js"),require("./dialogs-root/index.cjs.js"),require("./avatar/index.cjs.js"),require("./login-button/index.cjs.js"),require("./logout-button/index.cjs.js"),require("./menu-item/index.cjs.js"),require("./menu/index.cjs.js"),require("./signup-button/index.cjs.js"),require("./account/index.cjs.js"),require("./dialog-provider/index.cjs.js"),require("./footer/index.cjs.js"),require("./guard/index.cjs.js"),require("./input/index.cjs.js"),require("./photo-capture/index.cjs.js"),require("./select/index.cjs.js"),require("./select-option/index.cjs.js"),require("./solid-emblem/index.cjs.js");
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=all.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/components/all.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import "./dialog-header/index.esm.js";
2
+ import "./button/index.esm.js";
3
+ import "./dialog/index.esm.js";
4
+ import "./dialog-content/index.esm.js";
5
+ import "./dialog-footer/index.esm.js";
6
+ import "./combobox/index.esm.js";
7
+ import "./combobox-option/index.esm.js";
8
+ import "./login-modal/index.esm.js";
9
+ import "./dialogs-root/index.esm.js";
10
+ import "./avatar/index.esm.js";
11
+ import "./login-button/index.esm.js";
12
+ import "./logout-button/index.esm.js";
13
+ import "./menu-item/index.esm.js";
14
+ import "./menu/index.esm.js";
15
+ import "./signup-button/index.esm.js";
16
+ import "./account/index.esm.js";
17
+ import "./dialog-provider/index.esm.js";
18
+ import "./footer/index.esm.js";
19
+ import "./guard/index.esm.js";
20
+ import "./input/index.esm.js";
21
+ import "./photo-capture/index.esm.js";
22
+ import "./select/index.esm.js";
23
+ import "./select-option/index.esm.js";
24
+ import "./solid-emblem/index.esm.js";
@@ -1,4 +1,4 @@
1
- const e=require("../../lib/auth/context.cjs.js"),t=require("../../lib/components/decorators.cjs.js"),n=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../lib/auth/index.cjs.js"),require("../../_virtual/~icons/lucide/circle-user.cjs.js");const r=require("./Avatar.styles.cjs.js");let i=require("@lit/context"),a=require("lit");var o,s,c,l,u,d,f,p,m,h;function g(e,t,n){_(e,t),t.set(e,n)}function _(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function v(e,t,n){return e.set(b(e,t),n),n}function y(e,t){return e.get(b(e,t))}function b(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function x(e,t,n){return(t=C(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:T(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||T(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var E=_[w],D=n?_[w-1]:void 0,O={},k={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,O)};try{if(y)(g=c(E.call(D,C,k),`class decorators`,`return`))&&(C=g);else{var A,j;k.static=u,k.private=d,d?i===2?A=function(e){return h(e),b.value}:(i<4&&(A=o(b,`get`,h)),i!==3&&(j=o(b,`set`,h))):(A=function(e){return e[r]},(i<2||i===4)&&(j=function(e,t){e[r]=t}));var M=k.access={has:d?m.bind():function(e){return r in e}};if(A&&(M.get=A),j&&(M.set=j),C=E.call(D,p?{get:b.get,set:b.set}:b[S],k),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{O.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return E(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);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);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:C(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function C(e){var t=w(e,`string`);return typeof t==`symbol`?t:t+``}function w(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function T(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function E(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function D(e){return e}d=[t.customElement(`solid-ui-avatar`)];var O;new(m=(c=new WeakMap,h=(f=(0,i.consume)({context:e.authContext,subscribe:!0}),`auth`),s=class extends n.default{constructor(...t){super(...t),g(this,c,(l(this),p(this,e.DEFAULT_AUTH_CONTEXT)))}get[h](){return y(c,this)}set auth(e){v(c,this,e)}render(){return this.auth.account?.avatarUrl?a.html`
1
+ const e=require("../../lib/auth/context.cjs.js"),t=require("../../lib/components/decorators.cjs.js"),n=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../lib/auth/index.cjs.js"),require("../../_virtual/~icons/lucide/circle-user.cjs.js");const r=require("./Avatar.styles.cjs.js");let i=require("@lit/context"),a=require("lit");var o,s,c,l,u,d,f,p,m,h;function g(e,t,n){_(e,t),t.set(e,n)}function _(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function v(e,t,n){return e.set(b(e,t),n),n}function y(e,t){return e.get(b(e,t))}function b(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function x(e,t,n){return(t=C(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:T(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||T(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var E=_[w],D=n?_[w-1]:void 0,O={},k={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,O)};try{if(y)(g=c(E.call(D,C,k),`class decorators`,`return`))&&(C=g);else{var A,j;k.static=u,k.private=d,d?i===2?A=function(e){return h(e),b.value}:(i<4&&(A=o(b,`get`,h)),i!==3&&(j=o(b,`set`,h))):(A=function(e){return e[r]},(i<2||i===4)&&(j=function(e,t){e[r]=t}));var M=k.access={has:d?m.bind():function(e){return r in e}};if(A&&(M.get=A),j&&(M.set=j),C=E.call(D,p?{get:b.get,set:b.set}:b[S],k),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{O.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return E(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);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);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:C(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function C(e){var t=w(e,`string`);return typeof t==`symbol`?t:t+``}function w(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function T(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function E(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function D(e){return e}d=[t.customElement(`solid-ui-avatar`)];var O;new(m=(c=new WeakMap,h=(f=(0,i.consume)({context:e.authContext,subscribe:!0}),`auth`),s=class extends n.default{constructor(...t){super(...t),g(this,c,(l(this),p(this,e.DEFAULT_AUTH_CONTEXT))),x(this,`unsubscribeSessionUpdated`,void 0)}get[h](){return y(c,this)}set auth(e){v(c,this,e)}connectedCallback(){super.connectedCallback(),this.auth.loadProfile?.(),this.unsubscribeSessionUpdated=this.auth.onSessionUpdated(()=>{this.auth.loadProfile?.(),this.requestUpdate()})}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeSessionUpdated?.()}render(){return this.auth.account?.avatarUrl?a.html`
2
2
  <img src="${this.auth.account?.avatarUrl}" alt="" />
3
3
  `:a.html`
4
4
  <icon-lucide-circle-user></icon-lucide-circle-user>
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.cjs.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"],"sources":["../../../src/components/avatar/Avatar.ts"],"sourcesContent":["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"],"mappings":"69IAOwCO,EAAA,CAEvCP,EAAAA,cAAc,iBAAiB,CAAC,EAAA,IAAAQ,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,GAAAC,GAAAA,EAAAA,EAAAA,QAAAA,CAOtB,CAAEC,QAASV,EAAAA,YAAaW,UAAW,EAAK,CAAC,EAAC,QAAAC,EAPrD,cACoCf,EAAAA,OAAa,CAAAiB,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KAAAV,GAAAW,EAAA,IAAA,EAAAC,EAAA,KAOVjB,EAAAA,oBAAoB,EAAA,CAAA,CAAA,IAAAO,IAAA,CAAA,OAAAW,EAAAb,EAAA,IAAA,CAAA,CAAA,IAAxCc,KAAIC,EAAA,CAAAC,EAAAhB,EAAA,KAAAe,CAAA,CAAA,CAEXE,QAAU,CAOlB,OANK,KAAKH,KAAKI,SAASC,UAMjB1B,EAAAA,IAAI;oBACK,KAAKqB,KAAKI,SAASC,UAAS;MANnC1B,EAAAA,IAAI;;OAQf,CACF,EAAC,CAAA2B,EAAA,CAAAR,EAAAD,GAAAU,EAAA,CAAAvB,EAAAwB,IAAAC,EAAAjB,EAAA,CAAA,CAAAH,EAAA,EAAA,MAAA,CAAA,EAAAN,EAAA,EAAA,IAAA,GApBmCN,EAAAA,OAAY,EAAAe,GAAAkB,EAAA,cAAAC,CAAA,CAAAjB,aAAA,CAAA,MAAAV,CAAA,EAAA4B,EAAA,KAAA,SAC9B9B,EAAAA,OAAM,EAAA8B,EAAA,KAAA,SACN,CACdC,SAAWC,GAAsB,CAACA,EAAUd,KAAKI,SAASC,SAC5D,CAAC,EAAAG,EAAA,CAAA,CAAA,EAAAI,EAAAF,EAAAzB,EAAA,IAAA,EAAA,EAAAyB"}
1
+ {"version":3,"file":"Avatar.cjs.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","_defineProperty","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","connectedCallback","loadProfile","unsubscribeSessionUpdated","onSessionUpdated","requestUpdate","disconnectedCallback","render","account","avatarUrl","e","c","_initClass","_applyDecs","_Class","_identity","fallback","component","default"],"sources":["../../../src/components/avatar/Avatar.ts"],"sourcesContent":["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 private unsubscribeSessionUpdated?: () => void\n\n connectedCallback () {\n super.connectedCallback()\n\n this.auth.loadProfile?.()\n\n this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => {\n this.auth.loadProfile?.()\n this.requestUpdate()\n })\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.unsubscribeSessionUpdated?.()\n }\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"],"mappings":"69IAOwCO,EAAA,CAEvCP,EAAAA,cAAc,iBAAiB,CAAC,EAAA,IAAAQ,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,GAAAC,GAAAA,EAAAA,EAAAA,QAAAA,CAOtB,CAAEC,QAASV,EAAAA,YAAaW,UAAW,EAAK,CAAC,EAAC,QAAAC,EAPrD,cACoCf,EAAAA,OAAa,CAAAiB,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KAAAV,GAAAW,EAAA,IAAA,EAAAC,EAAA,KAOVjB,EAAAA,oBAAoB,EAAA,EAAAkB,EAAA,KAAA,4BAAA,IAAA,EAAA,CAAA,CAAA,IAAAX,IAAA,CAAA,OAAAY,EAAAd,EAAA,IAAA,CAAA,CAAA,IAAxCe,KAAIC,EAAA,CAAAC,EAAAjB,EAAA,KAAAgB,CAAA,CAAA,CAIrBE,mBAAqB,CACnB,MAAMA,kBAAkB,EAExB,KAAKH,KAAKI,cAAc,EAExB,KAAKC,0BAA4B,KAAKL,KAAKM,qBAAuB,CAChE,KAAKN,KAAKI,cAAc,EACxB,KAAKG,cAAc,CACrB,CAAC,CACH,CAEAC,sBAAwB,CACtB,MAAMA,qBAAqB,EAE3B,KAAKH,4BAA4B,CACnC,CAEUI,QAAU,CAOlB,OANK,KAAKT,KAAKU,SAASC,UAMjBjC,EAAAA,IAAI;oBACK,KAAKsB,KAAKU,SAASC,UAAS;MANnCjC,EAAAA,IAAI;;OAQf,CACF,EAAC,CAAAkC,EAAA,CAAAf,EAAAD,GAAAiB,EAAA,CAAA9B,EAAA+B,IAAAC,EAAAxB,EAAA,CAAA,CAAAH,EAAA,EAAA,MAAA,CAAA,EAAAN,EAAA,EAAA,IAAA,GAvCmCN,EAAAA,OAAY,EAAAe,GAAAyB,EAAA,cAAAC,CAAA,CAAAxB,aAAA,CAAA,MAAAV,CAAA,EAAAe,EAAA,KAAA,SAC9BjB,EAAAA,OAAM,EAAAiB,EAAA,KAAA,SACN,CACdoB,SAAWC,GAAsB,CAACA,EAAUnB,KAAKU,SAASC,SAC5D,CAAC,EAAAG,EAAA,CAAA,CAAA,EAAAhB,EAAAkB,EAAAhC,EAAA,IAAA,EAAA,EAAAgC"}
@@ -5,6 +5,9 @@ export default class Avatar extends WebComponent {
5
5
  fallback: (component: Avatar) => boolean;
6
6
  };
7
7
  private accessor auth;
8
+ private unsubscribeSessionUpdated?;
9
+ connectedCallback(): void;
10
+ disconnectedCallback(): void;
8
11
  protected render(): import('lit-html').TemplateResult<1>;
9
12
  }
10
13
  //# sourceMappingURL=Avatar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAK9D,OAAO,2BAA2B,CAAA;AAKlC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;IAC9C,MAAM,CAAC,MAAM,0BAAS;IACtB,MAAM,CAAC,MAAM;8BACW,MAAM;MAC7B;IAGD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IAEzD,SAAS,CAAC,MAAM;CAWjB"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAK9D,OAAO,2BAA2B,CAAA;AAKlC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;IAC9C,MAAM,CAAC,MAAM,0BAAS;IACtB,MAAM,CAAC,MAAM;8BACW,MAAM;MAC7B;IAGD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IAEzD,OAAO,CAAC,yBAAyB,CAAC,CAAY;IAE9C,iBAAiB;IAWjB,oBAAoB;IAMpB,SAAS,CAAC,MAAM;CAWjB"}
@@ -187,7 +187,7 @@ new (h = (l = /*#__PURE__*/ new WeakMap(), g = (p = a({
187
187
  subscribe: !0
188
188
  }), "auth"), c = class extends r {
189
189
  constructor(...t) {
190
- super(...t), _(this, l, (u(this), m(this, e)));
190
+ super(...t), _(this, l, (u(this), m(this, e))), S(this, "unsubscribeSessionUpdated", void 0);
191
191
  }
192
192
  get [g]() {
193
193
  return b(l, this);
@@ -195,6 +195,14 @@ new (h = (l = /*#__PURE__*/ new WeakMap(), g = (p = a({
195
195
  set auth(e) {
196
196
  y(l, this, e);
197
197
  }
198
+ connectedCallback() {
199
+ super.connectedCallback(), this.auth.loadProfile?.(), this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => {
200
+ this.auth.loadProfile?.(), this.requestUpdate();
201
+ });
202
+ }
203
+ disconnectedCallback() {
204
+ super.disconnectedCallback(), this.unsubscribeSessionUpdated?.();
205
+ }
198
206
  render() {
199
207
  return this.auth.account?.avatarUrl ? o`
200
208
  <img src="${this.auth.account?.avatarUrl}" alt="" />
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.esm.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"],"sources":["../../../src/components/avatar/Avatar.ts"],"sourcesContent":["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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOwCO,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"}
1
+ {"version":3,"file":"Avatar.esm.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","_defineProperty","_classPrivateFieldGet","auth","v","_classPrivateFieldSet","connectedCallback","loadProfile","unsubscribeSessionUpdated","onSessionUpdated","requestUpdate","disconnectedCallback","render","account","avatarUrl","e","c","_initClass","_applyDecs","_Class","_identity","fallback","component","default"],"sources":["../../../src/components/avatar/Avatar.ts"],"sourcesContent":["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 private unsubscribeSessionUpdated?: () => void\n\n connectedCallback () {\n super.connectedCallback()\n\n this.auth.loadProfile?.()\n\n this.unsubscribeSessionUpdated = this.auth.onSessionUpdated(() => {\n this.auth.loadProfile?.()\n this.requestUpdate()\n })\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.unsubscribeSessionUpdated?.()\n }\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOwCO,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;EAOUI,AAPV,MAAA,GAAAJ,CAAA,GAAAC,EAAA,MAAAV,IAAAW,EAAA,IAAA,GAAAC,EAAA,MAOVjB,CAAoB,EAAA,GAAAkB,EAAA,MAAA,6BAAA,KAAA,CAAA;CAAA;CAAA,KAAAX,KAAA;EAAA,OAAAY,EAAAd,GAAA,IAAA;CAAA;CAAA,IAAxCe,KAAIC,GAAA;EAAAC,EAAAjB,GAAA,MAAAgB,CAAA;CAAA;CAIrBE,oBAAqB;EAKnB,AAJA,MAAMA,kBAAkB,GAExB,KAAKH,KAAKI,cAAc,GAExB,KAAKC,4BAA4B,KAAKL,KAAKM,uBAAuB;GAEhE,AADA,KAAKN,KAAKI,cAAc,GACxB,KAAKG,cAAc;EACrB,CAAC;CACH;CAEAC,uBAAwB;EAGtB,AAFA,MAAMA,qBAAqB,GAE3B,KAAKH,4BAA4B;CACnC;CAEUI,SAAU;EAOlB,OANK,KAAKT,KAAKU,SAASC,YAMjBjC,CAAI;oBACK,KAAKsB,KAAKU,SAASC,UAAS;QANnCjC,CAAI;;;CAQf;AACF,GAAC,CAAAkC,GAAA,CAAAf,GAAAD,IAAAiB,GAAA,CAAA9B,GAAA+B,MAAAC,EAAAxB,GAAA,CAAA;CAAAH;CAAA;CAAA;AAAA,CAAA,GAAAN,GAAA,GAAA,KAAA,GAvCmCN,CAAY,GAAAe,IAAAyB,IAAA,cAAAC,EAAA;CAAAxB,cAAA;EAAA,MAAAV,CAAA,GAAAe,EAAA,MAAA,UAC9BjB,CAAM,GAAAiB,EAAA,MAAA,UACN,EACdoB,WAAWC,MAAsB,CAACA,EAAUnB,KAAKU,SAASC,UAC5D,CAAC,GAAAG,EAAA;CAAA;AAAA,GAAAhB,EAAAkB,GAAAhC,GAAA,KAAA,CAAA,GAAAgC,GAAA"}
@@ -6,7 +6,7 @@ declare const meta: {
6
6
  readonly argTypes: {
7
7
  readonly user: {
8
8
  type: string;
9
- options: ("Alice" | "Bob" | "Guest")[];
9
+ options: ("Alice" | "Bob" | "Guest" | "Initializing")[];
10
10
  };
11
11
  };
12
12
  };
@@ -14,7 +14,7 @@ export declare const Primary: {
14
14
  render: (args: import('../../storybook').GetStoryArgs<{
15
15
  readonly user: {
16
16
  type: string;
17
- options: ("Alice" | "Bob" | "Guest")[];
17
+ options: ("Alice" | "Bob" | "Guest" | "Initializing")[];
18
18
  };
19
19
  }>) => HTMLDivElement;
20
20
  };
@@ -22,7 +22,7 @@ export declare const Fallback: {
22
22
  render: (args: import('../../storybook').GetStoryArgs<{
23
23
  readonly user: {
24
24
  type: string;
25
- options: ("Alice" | "Bob" | "Guest")[];
25
+ options: ("Alice" | "Bob" | "Guest" | "Initializing")[];
26
26
  };
27
27
  }>) => HTMLDivElement;
28
28
  args: {
@@ -33,7 +33,7 @@ export declare const Guest: {
33
33
  render: (args: import('../../storybook').GetStoryArgs<{
34
34
  readonly user: {
35
35
  type: string;
36
- options: ("Alice" | "Bob" | "Guest")[];
36
+ options: ("Alice" | "Bob" | "Guest" | "Initializing")[];
37
37
  };
38
38
  }>) => HTMLDivElement;
39
39
  args: {
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../chunks/avatar-DNGFKkhm.js";
1
+ import { n as e, t } from "../chunks/avatar-DGu_PX5y.js";
2
2
  export { e as Avatar, t as default };
@@ -1,2 +1,2 @@
1
- var e=require("lit").css`:host{--text-color:var(--solid-ui-color-white);--border-color:var(--solid-ui-color-primary);--background-color:var(--solid-ui-color-primary);--hover-text-color:var(--text-color);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:var(--solid-ui-color-tertiary);display:inline-flex}:host button{font-size:var(--solid-ui-font-size-md);color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:5px;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 12px;font-weight:600;display:flex;position:relative}:host button:disabled{opacity:.5;cursor:not-allowed}:host button:hover:not(:disabled){color:var(--hover-text-color);background:var(--hover-background-color);border-color:var(--hover-border-color)}:host button icon-svg-spinners-180-ring,:host button ::slotted([slot=left-icon]),:host button ::slotted([slot=right-icon]){width:var(--solid-ui-font-size-md);height:var(--solid-ui-font-size-md)}:host button:after{content:\"\";width:var(--solid-ui-clickable-area);height:var(--solid-ui-clickable-area);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:host([data-has-icon-slot]) button{padding:4px}:host([data-has-icon-slot]) button ::slotted([slot=icon]){width:var(--solid-ui-font-size-2xl);height:var(--solid-ui-font-size-2xl)}:host([variant=secondary]) button{--text-color:var(--solid-ui-color-gray-800);--border-color:var(--solid-ui-color-slate-400);--background-color:var(--solid-ui-color-white);--hover-text-color:var(--solid-ui-color-white);--hover-background-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary)}:host([variant=tertiary]) button{--text-color:var(--solid-ui-color-primary);--border-color:transparent;--background-color:transparent;--hover-text-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:transparent;border-width:0 0 1px;border-radius:0;padding:0}:host([variant=outline]) button{--text-color:currentColor;--border-color:currentColor;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:currentColor;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}:host([variant=ghost]) button{--text-color:currentColor;--border-color:transparent;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:transparent;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}`;exports.default=e;
1
+ var e=require("lit").css`:host{--text-color:var(--solid-ui-color-white);--border-color:var(--solid-ui-color-primary);--background-color:var(--solid-ui-color-primary);--hover-text-color:var(--text-color);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:var(--solid-ui-color-tertiary);display:inline-flex}:host button{font-size:var(--solid-ui-font-size-md);color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:5px;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 12px;font-weight:600;display:flex;position:relative}:host button:disabled{opacity:.5;cursor:not-allowed}:host button:hover:not(:disabled){color:var(--hover-text-color);background:var(--hover-background-color);border-color:var(--hover-border-color)}:host button icon-svg-spinners-180-ring,:host button ::slotted([slot=left-icon]),:host button ::slotted([slot=right-icon]){width:var(--solid-ui-font-size-md);height:var(--solid-ui-font-size-md)}:host button:after{content:\"\";width:var(--solid-ui-clickable-area);height:var(--solid-ui-clickable-area);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:host([data-has-icon-slot]) button{padding:4px}:host([data-has-icon-slot]) button ::slotted([slot=icon]){width:var(--solid-ui-font-size-2xl);height:var(--solid-ui-font-size-2xl)}:host([variant=secondary]) button{--text-color:var(--solid-ui-color-gray-800);--border-color:var(--solid-ui-color-slate-400);--background-color:var(--solid-ui-color-white);--hover-text-color:var(--solid-ui-color-white);--hover-background-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary)}:host([variant=tertiary]) button{--text-color:var(--solid-ui-color-primary);--border-color:transparent;--background-color:transparent;--hover-text-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:transparent;border-width:0 0 1px;border-radius:0;padding:0}:host([variant=outline]) button{--text-color:currentColor;--border-color:currentColor;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:currentColor;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}:host([variant=ghost]) button{--text-color:currentColor;--border-color:transparent;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:transparent;--hover-background-color:var(--solid-ui-color-primary-hover)}`;exports.default=e;
2
2
  //# sourceMappingURL=Button.styles.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.styles.cjs.js","names":[],"sources":["../../../src/components/button/Button.styles.css"],"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([data-has-icon-slot]) 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"],"mappings":""}
1
+ {"version":3,"file":"Button.styles.cjs.js","names":[],"sources":["../../../src/components/button/Button.styles.css"],"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([data-has-icon-slot]) 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: var(--solid-ui-color-primary-hover);\n}\n"],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  import { css as e } from "lit";
2
2
  //#region src/components/button/Button.styles.css
3
- var t = e`:host{--text-color:var(--solid-ui-color-white);--border-color:var(--solid-ui-color-primary);--background-color:var(--solid-ui-color-primary);--hover-text-color:var(--text-color);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:var(--solid-ui-color-tertiary);display:inline-flex}:host button{font-size:var(--solid-ui-font-size-md);color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:5px;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 12px;font-weight:600;display:flex;position:relative}:host button:disabled{opacity:.5;cursor:not-allowed}:host button:hover:not(:disabled){color:var(--hover-text-color);background:var(--hover-background-color);border-color:var(--hover-border-color)}:host button icon-svg-spinners-180-ring,:host button ::slotted([slot=left-icon]),:host button ::slotted([slot=right-icon]){width:var(--solid-ui-font-size-md);height:var(--solid-ui-font-size-md)}:host button:after{content:\"\";width:var(--solid-ui-clickable-area);height:var(--solid-ui-clickable-area);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:host([data-has-icon-slot]) button{padding:4px}:host([data-has-icon-slot]) button ::slotted([slot=icon]){width:var(--solid-ui-font-size-2xl);height:var(--solid-ui-font-size-2xl)}:host([variant=secondary]) button{--text-color:var(--solid-ui-color-gray-800);--border-color:var(--solid-ui-color-slate-400);--background-color:var(--solid-ui-color-white);--hover-text-color:var(--solid-ui-color-white);--hover-background-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary)}:host([variant=tertiary]) button{--text-color:var(--solid-ui-color-primary);--border-color:transparent;--background-color:transparent;--hover-text-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:transparent;border-width:0 0 1px;border-radius:0;padding:0}:host([variant=outline]) button{--text-color:currentColor;--border-color:currentColor;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:currentColor;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}:host([variant=ghost]) button{--text-color:currentColor;--border-color:transparent;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:transparent;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}`;
3
+ var t = e`:host{--text-color:var(--solid-ui-color-white);--border-color:var(--solid-ui-color-primary);--background-color:var(--solid-ui-color-primary);--hover-text-color:var(--text-color);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:var(--solid-ui-color-tertiary);display:inline-flex}:host button{font-size:var(--solid-ui-font-size-md);color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:5px;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 12px;font-weight:600;display:flex;position:relative}:host button:disabled{opacity:.5;cursor:not-allowed}:host button:hover:not(:disabled){color:var(--hover-text-color);background:var(--hover-background-color);border-color:var(--hover-border-color)}:host button icon-svg-spinners-180-ring,:host button ::slotted([slot=left-icon]),:host button ::slotted([slot=right-icon]){width:var(--solid-ui-font-size-md);height:var(--solid-ui-font-size-md)}:host button:after{content:\"\";width:var(--solid-ui-clickable-area);height:var(--solid-ui-clickable-area);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:host([data-has-icon-slot]) button{padding:4px}:host([data-has-icon-slot]) button ::slotted([slot=icon]){width:var(--solid-ui-font-size-2xl);height:var(--solid-ui-font-size-2xl)}:host([variant=secondary]) button{--text-color:var(--solid-ui-color-gray-800);--border-color:var(--solid-ui-color-slate-400);--background-color:var(--solid-ui-color-white);--hover-text-color:var(--solid-ui-color-white);--hover-background-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary)}:host([variant=tertiary]) button{--text-color:var(--solid-ui-color-primary);--border-color:transparent;--background-color:transparent;--hover-text-color:var(--solid-ui-color-tertiary);--hover-border-color:var(--solid-ui-color-tertiary);--hover-background-color:transparent;border-width:0 0 1px;border-radius:0;padding:0}:host([variant=outline]) button{--text-color:currentColor;--border-color:currentColor;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:currentColor;--hover-background-color:color-mix(in srgb, currentColor 25%, transparent)}:host([variant=ghost]) button{--text-color:currentColor;--border-color:transparent;--background-color:transparent;--hover-text-color:currentColor;--hover-border-color:transparent;--hover-background-color:var(--solid-ui-color-primary-hover)}`;
4
4
  //#endregion
5
5
  export { t as default };
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"Button.styles.esm.js","names":[],"sources":["../../../src/components/button/Button.styles.css"],"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([data-has-icon-slot]) 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"],"mappings":""}
1
+ {"version":3,"file":"Button.styles.esm.js","names":[],"sources":["../../../src/components/button/Button.styles.css"],"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([data-has-icon-slot]) 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: var(--solid-ui-color-primary-hover);\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../chunks/button-oanBb_ha.js";
1
+ import { n as e, r as t, t as n } from "../chunks/button-B9-nlEpz.js";
2
2
  export { e as BUTTON_VARIANTS, t as Button, n as default };
@@ -47,7 +47,7 @@ const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/c
47
47
  ${e.map((e,t)=>e.selectable===!1?a.html`<div class="non-selectable-option">${e.template??e.label}</div>`:a.html`<div
48
48
  id=${this.getOptionId(t)}
49
49
  role="option"
50
- aria-selected=${this.open&&t===this.activeIndex?`true`:`false`}
50
+ aria-selected=${e.value===this.value?`true`:`false`}
51
51
  data-active=${t===this.activeIndex||a.nothing}
52
52
  @mousemove=${()=>this.setActiveIndex(t)}
53
53
  >